Я пытаюсь написать сценарий для записи звука USB с 4-канального аудиоустройства. Я использую Python 3.7 и библиотеку «звуковое устройство». После компиляции код выдает ошибку.
Используя следующий код, я нашел номер устройства, которое хотел записать:
>>>sounddevice.query_devices()
Это распечатает список всех аудиоустройств. Я хочу записать устройство 20:
20 Microphone (USB Device Audio), Windows WASAPI (4 in, 0 out)
Затем я использовал этот код для записи с этого устройства:
sounddevice.default.device = 20
myrecording = sounddevice.rec(int(duration*fs), samplerate=fs, channels=4, blocking=True)
Однако я получаю эту ошибку всякий раз, когда пытаюсь записать с нее звук:
line 18, in <module>
myrecording = sounddevice.rec(int(duration*fs), samplerate=fs, channels=4, blocking=True)
sounddevice.PortAudioError: Error opening InputStream: Invalid device [PaErrorCode -9996]
Я тестировал этот код на 2-канальном устройстве MME и 2-канальном устройстве Windows DirectSound. Он работает с ними обоими. Но это не будет работать с моим 4-канальным устройством WASAPI.