Поскольку XNA SoundEffect
больше не доступен в Windows Runtime API (для разработки универсального приложения), мне нужно что-то подобное, чтобы воспроизводить несколько аудиопотоков одновременно ,Несколько аудиопотоков в универсальном приложении (Runtime API), замена XNA SoundEffect
Требования: Воспроизведение одного и того же аудиофайла несколько раз, одновременно.
Предыдущая Silverlight реализация с SoundEffect
:
// Play sound 10 times, sound can be played together.
// i.e. First sound continues playing while second sound starts playing.
for(int i=0; i++; i < 10)
{
Stream stream = TitleContainer.OpenStream("sounds/Ding.wav");
SoundEffect effect = SoundEffect.FromStream(stream);
FrameworkDispatcher.Update();
effect.Play();
// Wait a while before playing again.
Thread.Sleep(500);
}
SoundEffect
поддерживает несколько (до 16 я думаю) SoundEffectInstance
воспроизводится одновременно.
Стандарт MediaElement
API поддерживает только 1 аудиопоток для Windows Phone 8.1.
Я столкнулся с этим: https://github.com/rajenki/audiohelper, который использует API XAudio2, но он, похоже, не поддерживает одновременный звук.