0

我读到 Windows Phone 7 提供了许多用于播放音频的类

媒体元素

音效

媒体播放器

背景音频播放器

它们之间有什么区别?我应该选择什么

4

1 回答 1

3

MediaElement是一个位于可视化树中的控件(这意味着您需要将它放在页面上的某个位置,即使它被隐藏,否则它不会播放)。您可以从独立存储、您的 XAP 文件或网络上流式传输歌曲。可以在此处查看支持的文件类型。

SoundEffect是一个XNA组件,通常用于循环背景音乐或枪声。这类似于MediaElement它不会改变用户的MediaPlayer设置,但两者之间的区别在于MediaElementSoundEffect可以同时进行多个SoundEffects播放,而您只能MediaElement在页面上拥有一个控件。另外,我相信只WAV支持文件。即使它是一个 XNA 组件,它也可以在 Silverlight 中使用

MediaPlayer是系统范围的播放器。它是您从 播放曲目时使用的那个Music and Video Hub,以及当您按下手机的音量按钮并查看时您控制的那个Universal Volume Control(覆盖层与播放、暂停、下一个和上一个按钮一起下降)。如果用户当前正在收听曲目并且他们运行您的应用程序,该应用程序将接管MediaPlayer,则用户的曲目将停止并替换为您的曲目。

BackgroundAudioPlayer旨在让用户离开您的应用但继续播放应用的音乐。这就是主音乐播放器所做的事情,这就是为什么您可以关闭Music and Video hub,但仍继续播放音乐的原因。

您使用什么取决于您的应用程序是什么以及您需要什么。没有一刀切的推荐。此外,您应该阅读应用指南,以确保您的应用不会对无法通过市场提交的音频进行任何处理。

于 2012-10-09T13:02:11.157 回答