无法设置媒体播放器音量

本文关键字:媒体播放器 设置 | 更新日期: 2023-09-27 18:31:06

我正在研究控制音量的不同方法,但我似乎无法在我的Windows Phone 7.1应用程序中设置MediaPlayer.Volume。基本上,调用

MediaPlayer.Volume = value;

没有效果,调用 MediaPlayer.IsMuted = TRUE 不起作用。

例:

public MainPage()
{
    InitializeComponent();
    //Play a song from the collection
    FrameworkDispatcher.Update(); 
    MediaPlayer.Play(ml.Artists[0].Songs[0]);
}
private void Button_Click(object sender, RoutedEventArgs e)
{
    //Reduce volume to 0
    FrameworkDispatcher.Update(); 
    MediaPlayer.Volume = 0.0f;
    //If I set a breakpoint here, MediaPlayer.Volume is 1.0
}
private void Button_Click_1(object sender, RoutedEventArgs e)
{
    //This also has no effect...
    FrameworkDispatcher.Update(); 
    MediaPlayer.IsMuted = !MediaPlayer.IsMuted;
}

有谁知道我误解了什么简单的明显事实?

无法设置媒体播放器音量

我不熟悉 MediaPlayer,但看起来在从 Zune 库播放时不再允许您设置音量和静音属性。XNA Studio 4.0 中的更改

我假设您的ml变量引用了 Zune 媒体库,这就是您遇到此问题的原因。如果您停止播放歌曲,然后调整音量或事先调整音量,那么问题应该会消失。

您还可以查看MediaElement,看看它是否适合你的方案。

或者您的设备只是不支持媒体播放器卷 API。

寄件人:给XNA WP7开发人员的提示

音频

·永远不要依赖声音作为你向玩家发出的唯一信号,即游戏中正在发生某些事情。他们可能会关闭声音。他们可能在某个大声的地方玩耍。等。

·您必须提供控件来禁用声音和音乐。这些应该是分开的。

·在至少一种型号的手机上,音量控制 API 当前不起作用。玩家可以使用硬件音量按钮调整声音,但在游戏中选择器根本不起作用。因此,除了为声音和音乐提供开/关开关之外的任何努力可能不值得。