みんな。自分の物理的な場所によっては、システムに存在する場合と存在しない可能性がある外部USBサウンドカードがあります。以前は、このカードをデフォルトで使用していたため、次の設定が正しく機能していました。
defaults.ctl.card 1
defaults.pcm.card 1
defaults.pcm.dmix.rate 176400
defaults.pcm.dmix.format S32_LE
defaults.timer.card 1
ただし、そのカードがまったくない可能性があるため、これをデフォルトとして定義することはもう機能しません。pcm.dmix.rate
内蔵カード0(何でも)のカード固有のpcm.dmix.format
ライフシステムデフォルトを再定義する必要があります。
簡単な検索をしましたが、仮想PCMS魔女を定義する例だけが見つかりましたが、これは私が探しているものではありません。
aplay -l 出力:
card 0: PCH [HDA Intel PCH], device 0: Generic Analog [Generic Analog]
Subdevices: 0/1
Subdevice #0: subdevice #0
card 0: PCH [HDA Intel PCH], device 3: HDMI 0 [HDMI 0]
Subdevices: 1/1
Subdevice #0: subdevice #0
card 0: PCH [HDA Intel PCH], device 7: HDMI 1 [HDMI 1]
Subdevices: 1/1
Subdevice #0: subdevice #0
card 0: PCH [HDA Intel PCH], device 8: HDMI 2 [HDMI 2]
Subdevices: 1/1
Subdevice #0: subdevice #0
card 1: Pro [DX3 Pro], device 0: USB Audio [USB Audio] <- optional card of interest
Subdevices: 0/1
Subdevice #0: subdevice #0
以下は、正しいサンプルレートとフォーマットを使用して完全に機能するdmix「デバイス」で構成された外部カードです。
pcm.dx3proDM {
type dmix
ipc_key_add_uid true
ipc_key 2048 # mandatory, mast be unique
ipc_perm 0660
ipc_gid audio
slave {
pcm "hw:1"
rate 176400
format "S32_LE"
channels 2
period_time 0
period_size 1024
buffer_size 8192 # mandatory parameter
}
bindings {
0 0
1 1
}
}
問題は、システムでdx3proDMを使用できないことです(たとえば、Audcousではiiを出力デバイスとして選択できない)。
これを指すようにデフォルト値を再定義する必要があります。
pcm.!default{
type plug
slave.pcm "dx3proDM"
}
もう一度デフォルトに設定 - 私が望むものとは正反対です。
ここにアイデアがありますか?
答え1
まだ問題を理解していない可能性がありますが、Webカメラを次のように設定します。
pcm.webcam {
type plug
slave {
pcm "front:U0x46d0x809"
rate 48000
format "S16_LE"
}
}
を使用する代わりに必要な名前を使用し、この方法で必要なaplay -L
パラメータを設定するなど、オプションの外部カードをこのように設定できない理由はありますか?plug
defaults
設定カードを具体的に作成し、webcam
必要に応じてプラグインを出力として手動で選択した場合defaults
。
問題は、システムでdx3proDMを使用できないことです(たとえば、Audcousではiiを出力デバイスとして選択できない)。
完全に利用できますが(同様のことを試してみてくださいaplay -D dx3proDM some_file.wav
)、一部のアプリではプラグインを一覧表示せずにデバイス名を入力できません。これはALSAではなくアプリケーションの制限です。
それでもそれを指すようにデフォルト値を再定義する必要があります[...]
udev
次に、(1)スクリプトを使用して変更するか、(2)Pulseaudioを使用してすぐに機能させる方法に戻ります。