私は簡単なスタジオ録音アプリケーションを作ろうとしています。 私は複数のサウンド入力デバイスを持っており、それらを同時にすべて録音したいと思います。物理オーディオ入力チャンネルのリストを見つけるには?
すべての物理オーディオ入力を検出するにはどうすればよいですか?
私はsounddevice.query_devices()
を使用する場合、私は仮想デバイスとデータを含まない仮想入力チャンネル、多くのの多くを得る:
>>> sd.query_devices()
0 HDA Intel PCH: HDMI 0 (hw:0,3), ALSA (0 in, 8 out)
1 HDA Intel PCH: HDMI 1 (hw:0,7), ALSA (0 in, 8 out)
2 HDA Intel PCH: HDMI 2 (hw:0,8), ALSA (0 in, 8 out)
3 hdmi, ALSA (0 in, 8 out)
4 pulse, ALSA (32 in, 32 out)
* 5 default, ALSA (32 in, 32 out)
6 /dev/dsp, OSS (16 in, 16 out)
私は実際のデバイスに興味を持って、そして本当の思い入力チャンネル。にPulseAudioは、またはPortAudioを照会するためのいずれかの方法があります
$ pacmd
>>> list-sources
...
channel map: front-left,front-right
Stereo
:
私はpacmd
とマイクデバイスを照会して、list-sources
私は、デバイスはモノラルであっても、偽ステレオを与える2つのチャネルが取得する場合入力チャンネルを物理的に取得しますか?そしてそれらのパラメータ(サンプルレートなどを選ぶことができるように)
PortAudioでは可能ではないと思います。デバイス名で '(hw:X、Y)'をスキャンしようとすることもできますが、表示したいデバイスと正確に一致するかどうかはわかりません。 – Matthias
ありがとう!それを簡単にする他のAPIがあるのだろうか? –
私はそれがPulseAudioで可能であることが分かった。 –