如何解决pyaudio可以使用错误的maxinputchannels识别音频接口,但是sounddevice可以正常工作
我有一个TASCAM US16x08音频接口,具有16个输入。 我确保将窗口US16x08设置为默认驱动程序,并且确实录制了来自不同通道的声音。
我运行我的代码并返回OSError: [Errno -9998] Invalid number of channels
因此,我使用以下代码检查我连接的设备,并返回US16x08驱动程序只有2个maxInputChannels。奇怪的是声音设备识别接口有16个输入。
import pyaudio
p = pyaudio.PyAudio()
for x in x range(0,p.get_device_count()):
print (p.get_device_info_by_index(x))
{'index': 1,'structVersion': 2,'name': 'Microphone (US-16x08)','hostApi': 0,'maxInputChannels': 2,'maxOutputChannels': 0,'defaultLowInputLatency': 0.09,'defaultLowOutputLatency': 0.09,'defaultHighInputLatency': 0.18,'defaultHighOutputLatency': 0.18,'defaultSampleRate': 44100.0}
####sounddevice result####
0 Microsoft Sound Mapper - Input,MME (2 in,0 out)
> 1 Microphone (US-16x08),MME (16 in,0 out)
2 Stereo Mix (Realtek High Defini,0 out)
3 Microsoft Sound Mapper - Output,MME (0 in,2 out)
< 4 Speakers (US-16x08),8 out)
5 Speakers (Realtek High Definiti,2 out)
6 Speakers (Realtek HD Audio output),Windows WDM-KS (0 in,2 out)
7 Stereo Mix (Realtek HD Audio Stereo input),Windows WDM-KS (2 in,0 out)
8 Microphone (Realtek HD Audio Mic input),0 out)
9 Speakers (US-16x08 Audio),8 out)
10 Microphone (US-16x08 Audio),Windows WDM-KS (16 in,0 out)
我在另一台机器上尝试了我的python代码,它可以正常工作,所以我不认为我的代码是问题所在,但是更多关于pyaudio的问题,(因为sounddevice可以正常工作,所以portaudio应该没有关系?) 而且我想继续使用pyaudio,否则我将需要删除大量的代码
有人知道哪里出问题了吗?
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。