使用pycaw库
- 安装
pip3 install pycaw -i https://pypi.douban.com/simple
- Demo
from ctypes import cast, POINTER
from comtypes import CLSCTX_ALL
from pycaw.pycaw import AudioUtilities, IAudioEndpointVolume
devices = AudioUtilities.GetSpeakers()
interface = devices.Activate(IAudioEndpointVolume._iid_, CLSCTX_ALL, None)
volume = cast(interface, POINTER(IAudioEndpointVolume))
# 获取音量值,0.0代表最大,-65.25代表最小
vl = volume.GetMasterVolumeLevel()
print(vl)
# 设置静音,mute为1代表是静音,为0代表不是静音
volume.SetMute(0, None)
volume.SetMasterVolumeLevel(-65.25 + 8.26, None)
# 设置音量大小为60%
volume.SetMasterVolumeLevel(-7.63, None)
注:实际设置的音量大小和设置值之间有个对应关系
0% 对应 -65.25
55% 对应 -8.92
{0: -65.25, 1: -56.99, 2: -51.67, 3: -47.74, 4: -44.62, 5: -42.03, 6: -39.82, 7: -37.89, 8: -36.17, 9: -34.63, 10: -33.24,
11: -31.96, 12: -30.78, 13: -29.6