我正在编写自己的API来执行SndVol系统实用程序的一些功能.我希望这个API的一部分能够设置给定的
audio session的音量级别.
SndVol在“设备”面板上显示一个滑块,用户可以使用该滑块更改音频设备的主音量级别以及每个音频会话的滑块(在“应用程序”面板上),用于更改会话的音量级别:
如果我拖动其中一个音频会话的滑块手柄,则SndVol可以更改音频会话的音量级别.它是如何做到的?
我认为可以使用Windows Vista的Core Audio API,但我遇到的问题是虽然我能够使用IAudioSessionEnumerator
迭代设备的音频会话,但IAudioSessionEnumerator只允许我访问IAudioSessionControl
对象,但我需要获取IAudioClient
对象我可以用来设置音频会话音量级别的ISimpleAudioVolume
对象.是否可以获取与IAudioSessionControl对象关联的IAudioClient对象?