如何解决所有操作系统的默认扬声器输出
我以前一直在使用pyaudio从系统(非麦克风)音频输出中获取声音,但是必须手动指定系统输出设备ID。是否有默认 设备名称,用于所有操作系统的内部系统音频输出?
例如,从Record speakers output with PyAudio,我看到用户macost建议使用:“ Stereo Mix(Realtek(R)Audio)”,但是该ID是否适用于所有操作系统?
for i in range(p.get_device_count()):
dev = p.get_device_info_by_index(i)
if (dev['name'] == 'Stereo Mix (Realtek(R) Audio)' and dev['hostApi'] == 0): # THIS LINE
dev_index = dev['index'];
print('dev_index',dev_index)
找到了Record speakers output with PyAudio中的代码, 但是想知道,Realtek ID是否对所有东西都通用。
谢谢!
解决方法
在获得更多经验后,我明白要求 PC 在任何操作系统上选择默认扬声器太多了。 更好的方法是让您的用户通过提供可用设备列表来选择麦克风和扬声器,并让他们检查它是否按预期工作:
- 首先,让他们通过从用户选择的可能扬声器设备发出 ping 或任何其他声音来检查扬声器
- 对于麦克风,让他们自己录音并听到输出(如果正确)
这很容易做到,并且可以在任何常见的视频通话应用程序(例如 Zoom)中看到它的演示。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。