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); }
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(); }
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"; } }
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; }
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(); } }
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(); }
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; }