0

所以我想让用户从他们的媒体库中选择一首歌曲并以可变音量播放。据我了解,以下情况属实:

  • 通过 MediaLibrary 的实例访问歌曲
  • 可以使用 MediaPlayer.Play() 播放歌曲
  • 更改 MediaPlayer.Volume 对 MediaLibrary 中的歌曲没有影响(从 XNA 4.0 开始)
  • 有一个 System.Windows.Controls.MediaElement 控件,但它的源是流或 Uri

有没有人找到解决这些限制的方法,以不同的音量播放 MediaLibary 中的歌曲?我只能想到两种可能的方法。一,以某种方式将 Stream 包裹在 Song 周围并将其提供给 MediaElement(直接或通过将 Song 复制到隔离存储并从那里流式传输),或者二,使用 Uri 访问 MediaLibary。有谁知道这是否可能?

另外,我还没有看过 Microsoft.Phone.BackgroundAudio,那里有什么有用的吗?

谢谢。

4

1 回答 1

1

用户可以完全控制手机发出的音量。

的值MediaPlayer.Volume与用户设置的音量有关。(我总是将其设置为 1,但还没有发现现实生活需要将其设置为其他任何值。)

是的,这意味着你不能做你想做的事。
如果可以的话,这意味着即使用户将设备上的音量调到非常安静,您的应用程序也会突然发出更大的声音。这不是可预测的用户体验,也可能不是用户想要的。

不,背景音频别无选择,不,您无法获取 MediaLibrary 中项目的 URI。

于 2012-05-01T00:28:56.097 回答