WMP M3U Радиопоток - Событие смены трека? - PullRequest
0 голосов
/ 30 декабря 2018

Это скорее вопрос, а не проблема с моим кодом.В настоящее время я использую фантастическую WMPLib для воспроизведения интернет-радио в своем приложении, оно работает безупречно, но я хочу поднять его на другой уровень.

В настоящее время я не уверен, как определить текущую воспроизводимую песню RADIO,все вдохновение для этого проекта было от VLC Media Player, который был в состоянии красиво отобразить, когда была изменена текущая песня радио (проверено с этим точным URL-адресом m3u)

Я мог бы быть совершенно тупым (я никогда не работалс WMP раньше) или это может быть даже невозможно.

Я пытался посмотреть маленький бит в источнике VLC, но это довольно большой проект, и у меня нет абсолютно никакого опытас C, что затрудняет мне поиск того, что я ищу.

Я пробовал такие события, как CurrentItemChange, PlayStateChangeEvent, PlaylistChange и т. д., ни один из них не сработал.

Небольшой фрагментмоей текущей загрузки m3u (возможно, мне нужно изменить, чтобы она работала правильно)

private const string StreamUrl = "http://194.16.21.227/mix_se_mp3.m3u";

private void Main_Load(object sender, EventArgs e)
{

    timer1.Start();

    MediaPlayer.URL = StreamUrl;
    MediaPlayer.uiMode = "none";
    MediaPlayer.settings.volume = 100;

}

private void timer1_Tick(object sender, EventArgs e)
{
    Console.WriteLine(MediaPlayer.currentMedia.name);
    Console.WriteLine(MediaPlayer.currentPlaylist.name);

    if (MediaPlayer.currentMedia.name.Equals("MM STO"))
    {
        MediaPlayer.settings.volume = 0;
    } else if(MediaPlayer.settings.volume != 100)
    {
        MediaPlayer.settings.volume = 100;
    }

} 

Как видно из моего тикового события, я хочу «приостановить» звук во время рекламного пауза и возобновить его при воспроизведении реальных песен.

...