Звуковой эффект в Windows Phone 7 - PullRequest
5 голосов
/ 06 августа 2011

Я пытаюсь воспроизвести музыку из телефонной коллекции песен .

Поддерживает ли свойства звукового эффекта воспроизведение из коллекции песен ?

Ранее Я использовал медиаплеер для воспроизведения песни, но я хочу, чтобы музыка не поддерживала паузу .

Код звукового эффекта: эффект SoundEffect;Экземпляр SoundEffectInstance;

        effect = SoundEffect.FromStream(ml.Songs[songSelectedIndex]);
        instance = effect.CreateInstance();
        instance.IsLooped = true;
        instance.Volume = 1.0f;
        instance.Pitch = 1.0f;
        instance.Play();

Код для библиотеки мультимедиа:

        using (var ml = new MediaLibrary())

        {
            FrameworkDispatcher.Update();
            MediaPlayer.Play(ml.Songs[songSelectedIndex]);
            MediaPlayer.IsRepeating = true;
        }

1 Ответ

1 голос
/ 06 августа 2011

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();
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...