2013-02-24 2 views
2

Я пытаюсь создать медиаплеер, используя компонент Windows Media Player в C# .net. это мой код, по которому я могу составить список воспроизведения и добавить песни в список воспроизведения, а имя списка воспроизведения будет показано в списке с именем «playlistviewbar», а затем я установил этот плейлист в текущий список воспроизведения.Как создать и сохранить плейлист

, но когда я запускаю проект, а нынешний пловский настроит его, попросите сыграть медиа, которое не соответствует игроку. он показывает, что он имеет расширение "." и он не может играть СМИ

может любой помочь мне решить эту проблему, а также помочь мне для сохранения списка воспроизведения ..

WMPLib.IWMPPlaylist pl; 
public WMPLib.IWMPMedia files1,paths1; 
string playListName; 

    private void toolStripButton3_Click(object sender, EventArgs e) 
    { 
     if (listnametxt.Text == "") 
     { 
      playListName = "Untitled playlist"; 
     } 
     else 
     { 
      playListName = listnametxt.Text; 
     } 
     pl = axWindowsMediaPlayer1.playlistCollection.newPlaylist(playListName); 
     playlistviewbar.Items.Add(playListName); 

    } 

    private void toolStripButton2_Click(object sender, EventArgs e) 
    { 
     if (openFileDialog1.ShowDialog() == System.Windows.Forms.DialogResult.OK) 
     { 
      string[] filestring=openFileDialog2.SafeFileNames; 
      string[] pathstring=openFileDialog2.FileNames; 
      for (int i = 0; i < filestring.Length; i++) 
      { 
      files1 = axWindowsMediaPlayer1.newMedia(filestring[i]); 
      paths1 = axWindowsMediaPlayer1.newMedia(pathstring[i]); 
      pl.appendItem(paths1); 
      axWindowsMediaPlayer1.currentPlaylist =pl; 
      } 


     } 
    } 

ответ

3

вот код, который работает для меня:

private void button1_Click(object sender, EventArgs e) 
     { 
      var pl = axWindowsMediaPlayer1.playlistCollection.newPlaylist("plList"); 
      pl.appendItem(axWindowsMediaPlayer1.newMedia(@"D:\nosazi.wmv")); 
      pl.appendItem(axWindowsMediaPlayer1.newMedia(@"D:\tasadof.mp4")); 

      axWindowsMediaPlayer1.currentPlaylist = pl; 
      axWindowsMediaPlayer1.Ctlcontrols.play();    
     } 
+0

При использовании этого решения я узнал, что следующий элемент в плейлисте воспроизводится за 2 секунды до предыдущего. Затем он снова играет второй с самого начала. Есть ли способ, по которому я могу отложить игру следующего пункта в плейлисте на 2-3 секунды? –

+0

На самом деле я знаю, что есть что-то вроде crossfading, если бы вы могли найти способ сделать эти настройки для своего объекта, я думаю, что это трюк. используя плеер, вы сами можете установить время перекрытия ... –

Смежные вопросы