Microsoft对传统音频应用程序的主题有以下说法:
在Windows Vista中,Sndvol会立即反映出的音量变化 应用程序通过调用IDirectSoundBuffer :: SetVolume 方法或waveOutSetVolume函数。
我发现waveOutSetVolume函数确实如此,但对于IDirectSoundBuffer8 :: SetVolume()则不然。直接声音缓冲器似乎有自己的增益阶段,与SndVol混音器中设置的应用程序音量相乘。
任何人都可以确认是这种情况,还是我在某处做错了什么?也许错过一面旗帜或类似的东西?
答案 0 :(得分:0)
请记住,IDirectSoundBuffer :: SetVolume是100 dB的衰减,而waveOutSetVolume是线性比例。根据您要同时输入的值,您可能无法获得预期的结果。