【发布时间】:2013-01-21 22:01:56
【问题描述】:
我有一个c#/xaml 应用程序。我想播放指令声音,但如果用户正在播放背景音乐,我想将其静音,或者在播放声音时暂时降低音量。
目前,我正在使用 xaudio2 在 C++ 中播放我的音频,并使用一些委托来调用 C#,我使用来自 xna framework 的 MediaPlayer 类来静音背景媒体。
但是,在暂停音乐后,当我通过xaudio2 播放我的指令时,我从xna 框架中得到System.InvalidOperationException 异常。如果我注释掉播放声音的那行,也不例外。
我想值得注意的是,这并没有发生在 UI 线程上......
我这样做的方式是否正确?我找不到任何有关如何完成此操作的信息的链接 - 我正在抓紧救命稻草。
【问题讨论】:
-
我认为这样做是非常不可取的。如果我在手机上播放音乐,我希望应用程序做的最后 件事就是以any 的方式对其进行处理,包括在其上播放声音。我希望我在播放音乐时使用的应用程序静音。任何违反此规定的行为都会立即引起愤怒,如果它们不能快速轻松地被静音(请注意,此时它们可能会永远被静音),那么它们会立即被卸载。我拥有我的手机。不是应用程序。我强烈建议您等待用户选择加入任何类似的声音行为。
-
好的 - 那么如果我让用户选择这种行为,那么正确的方法是什么?
-
这就是为什么我没有发表我的评论作为答案......其他人将不得不帮助你。 :)
标签: c# c++ windows-phone-8