В настоящее время у меня есть 2 аудиокодека, подходящих для ввода, и я хочу записывать с них одновременно, а не последовательно.
Вот как я вижу свои устройства:
import sounddevice as sd
sd.querydevices()
вывод:
< 0 DisplayPort, Core Audio (0 in, 2 out)
1 USB AUDIO CODEC, Core Audio (0 in, 2 out)
2 USB AUDIO CODEC, Core Audio (2 in, 0 out)
3 USB AUDIO CODEC, Core Audio (0 in, 2 out)
> 4 USB AUDIO CODEC, Core Audio (2 in, 0 out)
5 USB Advanced Audio Device, Core Audio (0 in, 2 out)
6 USB Advanced Audio Device, Core Audio (1 in, 0 out)
7 MacBook Pro Microphone, Core Audio (1 in, 0 out)
8 MacBook Pro Speakers, Core Audio (0 in, 2 out)
В настоящее время я могу записывать только с одного устройства одновременно. Приведенные выше входные аудиоустройства - это 2 и 4, при этом по умолчанию выбрано значение 4 и отмечено каратой '>'.
Теперь я знаю, как записывать на канале по умолчанию в течение 4 секунд:
recording = sd.rec(int(4 * 44100), samplerate=44100, channels=1)
Я также знаю, как изменить канал по умолчанию, например, установить его на 2:
sd.default.device = [2,0]
Что я хотел бы сделать, это одновременно выполнять запись с каналов [4,0] и [2,0] одновременно.