public static int Push(Song song) { queue.Enqueue(song); if (wmp.playState == WMPPlayState.wmppsStopped || wmp.playState == WMPPlayState.wmppsUndefined) { Next(); } else { Console.WriteLine("Queued {0}", song.ToString()); } return queue.Count; }
private static void Play(Song song) { // update the song info song.PlayCount += 1; song.LastPlayed = DateTime.Now; // stop the media player wmp.controls.stop(); wmp.PlayStateChange -= new _WMPOCXEvents_PlayStateChangeEventHandler(wmp_PlayStateChange); wmp.close(); // create a new media player for the next song wmp = new WindowsMediaPlayer(); wmp.PlayStateChange += new _WMPOCXEvents_PlayStateChangeEventHandler(wmp_PlayStateChange); wmp.URL = song.Location; wmp.controls.play(); Console.WriteLine("Playing {0}", song.ToString()); }