私の組み込みシステムには次の設定ファイルがあります/etc/asound.conf
。
pcm_slave.sl2 {
pcm "hw:0,0"
rate 48000
channels 2
format S16_LE
}
pcm.rate_convert {
type plug
slave sl2
}
pcm.!default rate_convert
ファイルがシステムに配置されたため、PCM デバイスがリストされなくなったことaplay -L
がわかりました。代わりに期待どおりに動作します。arecord -L
aplay -l
arecord -l
ファイルがここに配置されない場合、リストは正しく返されます。これは正確に何をするのですか?なぜPCMデバイスがaplay
表示されないのですか?arecord
答え1
拡張ウラジミールの答え、私のファイル/etc/asound.conf
に具体的に以下を設定しました。
defaults.namehint.showall on
defaults.namehint.extended on
または、hint
カスタムPCMコントロールユニットに以下を追加します。
pcm.rate_convert {
# snip
hint.description "Describe your device here"
}
これに関するドキュメントが見つかりませんでしたが、例を見つけることができます。
alsa.conf
あなたのシステムに(私にあります/usr/share/alsa/alsa.conf
)alsa.conf
内部にalsa GitHubリポジトリ
答え2
ファイルのとがdefaults.namehint.showall
ondefaults.namehint.extended
に設定されていることを確認してください/usr/share/alsa/alsa.conf
。
答え3
からman aplay
:
-l, --list-devices List all soundcards and digital audio devices -L, --list-pcms List all PCMs defined
ALSA Wikiから:
PCMデバイスは抽象サウンドカードに似ています。ハードウェアデバイスでもPCMプラグインレイヤデバイスでもかまいません。詳細については、alsa-libのドキュメントを参照してください。この抽象化レイヤーの使い方については、.asoundrcとdmixのページをご覧ください。
.asoundrc は、システムフォルダ /etc/asound.conf ではなく、ユーザのホームフォルダで使用される ALSA 設定ファイルです。これらのファイルはすべてPCMを再構成できます。
https://alsa.opensrc.org/Asoundrc