Sal*_*n V 5 python windows audio
我希望能够在 Python 中控制主音量(不是针对应用程序,而是针对当前活跃的演讲者)。这似乎是一个棘手的话题;我尝试在 C# 中做它,但我什至无法让它在那里工作。有没有办法做到这一点?(Windows 7 x64)
请注意,这个问题之前没有回答过,因为我的问题是专门关于Python 的。此外,VonC 所指的项目在 Windows 7 上不起作用。
做到这一点的简单方法是通过ISimpleAudioVolume.
如果您使用项目中的 Win32 COM 包装器pywin32,那么在 Python 中访问应该非常容易。
正如文档所解释的,有多种方法可以获取对ISimpleAudioVolume. 您需要获得跨进程会话,方法sndvol.exe就是如此。有关详细信息,请参阅WASAPI的顶级文档。
伪代码看起来像这样:
mmde = CoCreateInstance(CLSID_MMDeviceEnumerator, None,
CLSCTX_ALL, IID_IMMDeviceEnumerator)
mmd = mmde.GetDefaultAudioEndpoint(eRender, eMultimedia)
mgr = mmd.Activate(IID_IAudioSessionManager)
sav = mgr.GetSimpleAudioVolume(None, True)
sav.SetMasterVolume(0.5)
Run Code Online (Sandbox Code Playgroud)