Ejemplo n.º 1
0
        void iTunes_OnPlayerPlayEvent(object iTrack)
        {
            string text = "";
            iTunesApp app = new iTunesLib.iTunesApp();
            IITTrack track = app.CurrentTrack;
            if (track != null && track.Enabled)
            {
                text = string.Format("「{0} - {1}」 by {2}", track.Name, track.Album, track.Artist);
            }
            Marshal.ReleaseComObject(app);

        }
Ejemplo n.º 2
0
 private void button1_Click(object sender, EventArgs e)
 {
     iTunesApp app = new iTunesLib.iTunesApp();
     app.Play();
     IITTrack track = app.CurrentTrack;
     if (track != null && track.Enabled)
     {
         label1.Text = track.Name;
         label2.Text = track.Album;
         label3.Text = track.Artist;
     }
     Marshal.ReleaseComObject(app);
     nowstatus = "start";
     StreamWriter writer = new StreamWriter(@"C:\\xampp\\htdocs\\music\\now.txt", false, Encoding.Default);
     writer.WriteLine("start");
     writer.Close();
 }
Ejemplo n.º 3
0
        private void Find_iTunes()
        {
            try
            {
                iTunesApp iTSong = new iTunesLib.iTunesApp();
                lblArtist.Content = iTSong.CurrentTrack.Artist;
                lblSong.Content   = iTSong.CurrentTrack.Name;
                if (var_Song == lblSong.Content.ToString())
                {
                    //MessageBox.Show("Doing nothing");
                    return;
                }

                var_Song = lblSong.Content.ToString();
                Check_XML();
            }
            catch (NullReferenceException)
            {
                txtLyrics.Text    = "No Song is playing";
                lblArtist.Content = "Artist";
                lblSong.Content   = "Song";
            }
        }
Ejemplo n.º 4
0
        private void deleteDeadTracks()
        {
            iTunesLib.iTunesApp objApp = new iTunesLib.iTunesApp();
            iTunesLib.IITLibraryPlaylist objLibrary = objApp.LibraryPlaylist;

            var colTracks = objLibrary.Tracks;
            List<string> songsToDelete = new List<string>();

            //using invoke to show message on a diff thread
            showMessage("Processing... dead tracks");
            foreach (IITTrack track in colTracks)
            {
               // Debug.WriteLine("runnung... "+track.Name);
                iTunesLib.IITFileOrCDTrack objSong = (iTunesLib.IITFileOrCDTrack)track;

                if (String.IsNullOrEmpty(objSong.Location))
                {
                    Debug.WriteLine("name: " + objSong.Name);
                    songsToDelete.Add(objSong.Name);

                }

              //System.Threading.Thread.Sleep(50);
            }

            foreach (string song in songsToDelete)
            {
                System.Threading.Thread.Sleep(1000);
                var objSong = colTracks.ItemByName[song];
                objSong.Delete();
            }

            string result = String.Format("Total: {0} Track(s) Deleted.", songsToDelete.Count);
            Debug.WriteLine(result);
            showMessage(result);
            objApp = null;
        }
Ejemplo n.º 5
0
        private void timer1_Tick(object sender, EventArgs e)
        {
            iTunesApp app = new iTunesLib.iTunesApp();
            IITTrack track = app.CurrentTrack;

            if (track != null && track.Enabled)
            {
                if (music != track.Name)
                {
                    music = track.Name;
                    album = track.Album;
                    artist = track.Artist;
                    label1.Text = track.Name;
                    label2.Text = track.Album;
                    label3.Text = track.Artist;
                    StreamWriter writer = new StreamWriter(@"C:\\xampp\\htdocs\\music\\music.txt", false, Encoding.Default);
                    writer.WriteLine(track.Name);
                    writer.Close();
                    writer = new StreamWriter(@"C:\\xampp\\htdocs\\music\\album.txt", false, Encoding.Default);
                    writer.WriteLine(track.Album);
                    writer.Close();
                    writer = new StreamWriter(@"C:\\xampp\\htdocs\\music\\artist.txt", false, Encoding.Default);
                    writer.WriteLine(track.Artist);
                    writer.Close();
                    
                }

            }
            else
            {
                label1.Text = "null";
                label2.Text = "null";
                label3.Text = "null";
            }
            Marshal.ReleaseComObject(app);

            string strs = "";
            StreamReader srs = new StreamReader("C:\\xampp\\htdocs\\music\\now.txt", Encoding.Default);
            if (File.Exists("C:\\xampp\\htdocs\\music\\now.txt"))
            {
                strs = srs.ReadLine();
                //Console.Write(str);

                srs.Close();
                iTunesApp apps = new iTunesLib.iTunesApp();
                
                if (strs == "start" && nowstatus != "start")
                {
                    apps.Play();
                    nowstatus = "start";
                }
                else if (strs == "stop" && nowstatus != "stop")
                {
                    apps.Pause();
                    nowstatus = "stop";
                }
                else if (strs == "back")
                {
                    apps.BackTrack();
                    StreamWriter writer = new StreamWriter(@"C:\\xampp\\htdocs\\music\\now.txt", false, Encoding.Default);
                    writer.WriteLine(nowstatus);
                    writer.Close();
                }
                else if (strs == "next")
                {
                    apps.NextTrack();
                    StreamWriter writer = new StreamWriter(@"C:\\xampp\\htdocs\\music\\now.txt", false, Encoding.Default);
                    writer.WriteLine(nowstatus);
                    writer.Close();
                }
                StreamReader sr = new StreamReader("C:\\xampp\\htdocs\\music\\voice.txt", Encoding.Default);
                string str = sr.ReadLine();
                int voice = int.Parse(str);
                if (voice != apps.SoundVolume || progressBar1.Value == 0)
                {
                    apps.SoundVolume = voice;
                    progressBar1.Value = voice;
                }
                sr.Close();
                
            }
        }
Ejemplo n.º 6
0
        private void Form1_Load(object sender, EventArgs e)
        {

            iTunesApp app = new iTunesLib.iTunesApp();
            IITTrack track = app.CurrentTrack;
            if (track != null && track.Enabled)
            {
                label1.Text = track.Name;
                label2.Text = track.Album;
                label3.Text = track.Artist;
                StreamWriter writer = new StreamWriter(@"C:\\xampp\\htdocs\\music\\music.txt", false, Encoding.Default);
                writer.WriteLine(track.Name);
                writer.Close();
                writer = new StreamWriter(@"C:\\xampp\\htdocs\\music\\album.txt", false, Encoding.Default);
                writer.WriteLine(track.Album);
                writer.Close();
                writer = new StreamWriter(@"C:\\xampp\\htdocs\\music\\artist.txt", false, Encoding.Default);
                writer.WriteLine(track.Artist);
                writer.Close();
                
            }
            else {
                label1.Text = "null";
                label2.Text = "null";
                label3.Text = "null";
            }
            Marshal.ReleaseComObject(app);
            StreamReader sr = new StreamReader("C:\\xampp\\htdocs\\music\\now.txt", Encoding.Default);
            if (File.Exists("C:\\xampp\\htdocs\\music\\now.txt"))
            {
                nowstatus = sr.ReadLine();

            }
            sr.Close();
        }
Ejemplo n.º 7
0
        private void findMissingArtTracks()
        {
            /** This code makes use of the ITunes SDK to find tracks missing the artwork (cd cover)
            and add those tracks to a playlist, so I could later go add the artwork to them
            Remember! to add a reference to iTunes <version #> Type Library
            Adding the reference on Visual Studio- Go to menu Project>Add Reference.. >> COM and search for 'iTunes <version #> Type Library'
            <version #> = 1.13 for me.
            This COM is added to your computer when you install iTunes. If you can't find it re-installing itunes might help.
            */

            //Create the itunes object
            iTunesLib.iTunesApp oItunes = new iTunesLib.iTunesApp();
            //optional: minimize itunes
            oItunes.BrowserWindow.Minimized = true;

            iTunesLib.IITSourceCollection sources = oItunes.Sources;

            //get all the playlists from itunes' library
            iTunesLib.IITPlaylistCollection playlists = sources.ItemByName["Library"].Playlists;
            string libName = "Missing Artwork";
            //get playlist with specific name
            iTunesLib.IITPlaylist lib = playlists.ItemByName[libName];

            //delete playlist if it already exists
            //note: itunes allows several playlists with same name, this aprach only deletes one of them
            //create a while loop to delete all of them
            if (lib != null) lib.Delete();

            //create a empty playlist
            lib = oItunes.CreatePlaylist(libName);

            //get all the tracks in the itunes' library
            iTunesLib.IITLibraryPlaylist library = oItunes.LibraryPlaylist;
            //using 'var' to show we don't need to remember the object type.
            var tracks = library.Tracks;
            int counter = 0;
            showMessage("Processing..." + libName);
            foreach (IITTrack track in tracks)
            {
                //add to the playlist tracks that don't have artwork
                //we can use the same technique to find other proprieties, song's name, artist, album, etc.
                if (track.Artwork.Count == 0)
                {
                    counter++;
                    Debug.WriteLine("Adding: {0} ", track.Name);
                    /* IITPlaylist doesn't have the AddTrack so we need to cast to UserPlayList
                    I could have created another variable outside the loop for performance like:
                    IITUserPlaylist userLib = (IITUserPlaylist) objApp.CreatePlaylist(libName);
                    but wanted this way to cast and assign
                     */
                    (lib as IITUserPlaylist).AddTrack(track);
                }
            }

            string result = String.Format("Total: {0} Track(s) found.", counter);
            Debug.WriteLine(result);
            showMessage(result);
            //oItunes.Quit();
            //oItunes = null;
        }