A Song
- это класс, который содержит музыкальный поток и может воспроизводиться только с помощью Media Player. Причина, по которой ваш код не работает, заключается в том, что метод FromStream требует, чтобы поток был:
- Волновой файл PCM
- Моно или стерео
- 8 или 16 бит
- Частота дискретизации от 8000 Гц до 48000 Гц
Я не пробовал этого и не знаю, что из этого следует в инструкциях по сертификации, но вы, возможно, сможете сделать музыку безостановочной с MediaPlayer
. Обработайте событие MediaStateChanged и проверьте, не приостановлена ли музыка. Если это так, вызовите метод Resume , чтобы продолжить воспроизведение.
Редактировать - Обновление с кодом:
Обработка события MediaStageChanged такая же, как и любого другого события.
MediaPlayer.MediaStateChanged += new EventHandler<EventArgs>(MediaPlayer_MediaStateChanged);
В вашем обработчике событий сделайте следующее:
void MediaPlayer_MediaStateChanged(object sender, EventArgs e)
{
if (MediaPlayer.State == MediaState.Paused) MediaPlayer.Resume();
}