处理特定应用程序的卷级别

时间:2013-06-21 01:53:19

标签: c++ visual-studio-2008 audio wasapi

使用WASAPI,我可以控制系统音量。 我想知道,我可以通过编程方式控制特定应用程序的音量级别。 (当然,这只是在windows7之后)是否可能?

1 个答案:

答案 0 :(得分:1)

您可以控制应用程序(会话)卷,就像标准的Volume Mixer一样。请在Session Volume Controls中详细说明,详细解释如下:

  

WASAPI客户端可以单独控制每个音频会话的音量级别。   [...]

     

为了支持这种行为,WASAPI实现了ISimpleAudioVolume   接口。当用户移动应用程序滑块时,应用程序   调用ISimpleAudioVolume :: SetMasterVolume方法来调整   会话音量水平相应。 Sndvol监控所做的音量变化   通过这种方法并反映了音量滑块的变化   它会显示出来。

要发现正在运行的会话,您可以使用IAudioSessionEnumerator界面。请查看实现发现的代码段/应用程序:AudioSessionVolumeNotification