私はいくつかのpythonサウンドに関連するプログラムを書いているので、SoundDevice python PortAudioライブラリを使用するモジュールを使用しました。私はArch Linuxのディープデスクトップを使用しています。
コンピューターを開いて利用可能なデバイスを印刷したところ、次のようになります。
0 HDA Intel PCH: ALC887-VD Analog (hw:0,0), ALSA (2 in, 2 out)
1 HDA Intel PCH: ALC887-VD Digital (hw:0,1), ALSA (0 in, 2 out)
2 HDA Intel PCH: ALC887-VD Alt Analog (hw:0,2), ALSA (2 in, 0 out)
3 HDA ATI HDMI: 0 (hw:1,3), ALSA (0 in, 8 out)
4 sysdefault, ALSA (128 in, 128 out)
5 front, ALSA (0 in, 2 out)
6 surround40, ALSA (0 in, 2 out)
7 surround51, ALSA (0 in, 2 out)
8 surround71, ALSA (0 in, 2 out)
9 iec958, ALSA (0 in, 2 out)
10 spdif, ALSA (0 in, 2 out)
11 Pulse, ALSA (32 in, 32 out)
12 dmixed, ALSA (0 in, 2 out)
13 dsnooped, ALSA (2 in, 0 out)
14 duplex, ALSA (2 in, 2 out)
15 dmix, ALSA (0 in, 2 out)
* 16 default, ALSA (128 in, 128 out)
ALSA(128入力、128出力)を使用していると表示されます。次に、アプリを開いて(Chromiumとしましょう)、音楽を再生してから、インターネットを閲覧します。利用可能なデバイスを印刷すると、次のようになります。
0 HDA Intel PCH: ALC887-VD Analog (hw:0,0), ALSA (2 in, 0 out)
< 1 HDA Intel PCH: ALC887-VD Digital (hw:0,1), ALSA (0 in, 2 out)
2 HDA Intel PCH: ALC887-VD Alt Analog (hw:0,2), ALSA (2 in, 0 out)
3 HDA ATI HDMI: 0 (hw:1,3), ALSA (0 in, 8 out)
4 sysdefault, ALSA (128 in, 0 out)
5 iec958, ALSA (0 in, 2 out)
6 spdif, ALSA (0 in, 2 out)
7 Pulse, ALSA (32 in, 32 out)
8 dsnooped, ALSA (2 in, 0 out)
9 duplex, ALSA (2 in, 0 out)
> 10 default, ALSA (128 in, 0 out)
Intelを出力として使用し、ALSA(128インチ、0)を入力として使用していることがわかります。以前のようにALSAの入力と出力がないのはなぜですか?
これは、Audacityを含むサウンドを使用するすべてのアプリケーションで発生します。
現在pluseを代替として使用していますが、ALSAの方が良いと言われているので、複数のアプリケーションを同時に開いても使いたいです。
設定を編集した後のリストは次のとおりです。
> 0 HDA Intel PCH: ALC887-VD Analog (hw:0,0), ALSA (2 in, 2 out)
1 HDA Intel PCH: ALC887-VD Digital (hw:0,1), ALSA (0 in, 2 out)
2 HDA Intel PCH: ALC887-VD Alt Analog (hw:0,2), ALSA (2 in, 0 out)
3 HDA ATI HDMI: 0 (hw:1,3), ALSA (0 in, 8 out)
4 sysdefault, ALSA (128 in, 128 out)
5 front, ALSA (0 in, 2 out)
6 surround40, ALSA (0 in, 2 out)
7 surround51, ALSA (0 in, 2 out)
8 surround71, ALSA (0 in, 2 out)
9 iec958, ALSA (0 in, 2 out)
10 spdif, ALSA (0 in, 2 out)
11 Pulse, ALSA (32 in, 32 out)
12 dmix, ALSA (0 in, 2 out)
< 13 default, ALSA (0 in, 128 out)
デフォルトのデバイスではなく、dmix
ALSAデバイスに出力する必要があります。複数のストリームを混合してサウンドカードに出力できます。ハードウェアミキシングをサポートしていないサウンドデバイスに自動的に設定されます。ご覧のとおり、システムに設定されています。
詳細については、 ALSA wiki をご覧ください。
dmix
をデフォルトとして構成するには、次のような構成を使用します。
pcm.!default {
type plug
slave.pcm "dmix"
}
ALSAを使用するようにすべてのアプリケーションを構成する必要があります。 dmix
は単なる出力デバイスであることに注意してください。複数の入力を管理する場合は、dsnoop
を使用する必要があります。 ALSA wikiには、特定の設定(特に、デフォルトの基盤となるハードウェアデバイス)に適応できる両方の詳細 構成例 があります。