Воспроизведение фонового аудио и видео одновременно - PullRequest
0 голосов
/ 10 января 2012

Мне нужно разработать приложение для Windows Phone. На этой странице мне нужно непрерывно запускать фоновое аудио и видео (в режиме повтора).

Для аудио я нашел этот пример .

Теперь, как мне добавить фоновое видео на страницу? На странице мне нужно показать несколько текстовых полей и кнопок, а в фоновом режиме будут воспроизводиться видео и аудио.

Аудио- и видеофайл будет включен в приложение, т. Е. Пропаривание не требуется.

Ответы [ 3 ]

2 голосов
/ 10 января 2012

Я сделал это для своего рабочего задания несколько месяцев назад.Я обнаружил, что Silverlight для WP7 не позволяет воспроизводить два MediaElements одновременно.Я создал приложение для Windows Phone Silverlight и XNA .(Теперь Silverlight для WP7 наконец-то создал фоновый аудиоплеер, так что вы можете сделать это таким образом, если хотите)

Ваше приложение может быть полностью в Silverlight, но затем вы можете использовать ссылку на XNA (также вы можете иметьдоступ к циклу обновления, который действительно хорош)

XNA имеет SoundEffect и SoundEffectInstance class

Затем для загрузкизвук просто сделайте следующее:

Globals в вашем классе оболочки Sound.cs

private SoundEffect Sound = null;
private SoundEffectInstance Instance = null;

Воспроизведение звукового эффекта в Sound.cs

Sound = ContentManager.Load<SoundEffect>(fileName); //ContentManager will have to be instantiated from wherever you create it.
Instance = Sound.CreateInstance();
Instance.Play();

Затем просто используйтеSilverlight MediaElement для воспроизведения вашего видеофайла.

XAML

<MediaElement x:Name="VideoPlayer" AutoPlay="False" Width="320" Height="220"/>

CodeBehind

VideoPlayer.Source = = new Uri("fileName", UriKind.Relative);
VideoPlayer.Play();
0 голосов
/ 10 января 2012

Если вы заботитесь о воспроизведении звука только тогда, когда ваше приложение видно, то вам не нужно использовать фоновый звук и просто использовать MediaElement для его воспроизведения. Однако если вы хотите, чтобы аудио и видео были вместе - вам может понадобиться использовать XNA для аудио, как упомянул Пол, ИЛИ вы можете отображать видео в виде последовательности изображений / спрайтов вместо воспроизведения обычного видеофайла.

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

0 голосов
/ 10 января 2012

Этого можно добиться, заполнив элемент Silverlight с помощью VideoBrush, который указывает на ваше видео, воспроизводимое в невидимом MediaElement. Это позволило бы воспроизводить видео и показывать другие элементы пользовательского интерфейса сверху или вокруг него.

См. Документацию VideoBrush на MSDN , которая содержит пример того, как это сделать.

Однако имейте в виду, что одновременно может существовать только один MediaElement. Поэтому, если вам нужно воспроизводить отдельные аудио и видео одновременно, вам нужно будет воспроизводить аудио, используя класс XNA SoundEffect.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...