web-dev-qa-db-ja.com

Raspberry Piがデフォルトとして外部USBサウンドカードを使用するようにする方法

サウンドカードの起動優先順位を変更する方法を誰かが知っていますか?

すべてのチュートリアルで/etc/modprobe.d/alsa-base.confを編集するように指示されていますが、ファイルがRaspbian Jesseにありません。

16
Carl Hudson

あなたが探しているファイルは/usr/share/alsa/alsa.confにあります。そのalsa-base.confと呼ばれていないだけでalsa.conf

Sudo nano /usr/share/alsa/alsa.confを実行するだけで、デフォルトのサウンドカードを1に変更することができます。または0から始まることをお勧めします。load card-specific configuration filesと書かれている行から#を削除しないでください。今私はras pi2でdebian 8 jessieを実行している私のcirrusオーディオカードから来る音を持っています

10
Breeskeeper

これは私にとってRaspbian Jessieに効きました。

オンボードのオーディオチップ(アナログ出力やHDMIオーディオなど)が必要ない場合は、無効にしてからUSBオーディオデバイスをプライマリデバイスにすることができます。

  1. オンボードオーディオを無効にします。
    • /etc/modprobe.d/raspi-blacklist.confを開き、blacklist snd_bcm2835を追加してください。
  2. USBオーディオデバイスをデフォルトのデバイスにします。
    • /lib/modprobe.d/aliases.confを開き、options snd-usb-audio index=-2行をコメントアウトします
  3. リブート
    • Sudo reboot
  4. テストしてください。
    • $ aplay /usr/share/sounds/alsa/Front_Center.wav
12
leif81

Raspbian(Jessie)の最近のバージョンではこれに問題がありました。

aliases.confには、/lib/modprobe.dという行を含むoptions snd-usb-audio index=-2というファイルがあります。その行は/etc/modprobe.d/ファイルをオーバーライドするので、それを変更する必要があります。 #options snd-usb-audio index=-2行でコメントアウト

/usr/share/alsa/alsa.confでは、“ load card-specific configuration files(要望に応じて)”のコメントを外し、また、ホームフォルダの隠しファイルである.asoundrcの内容を次のように置き換えました。

pcm.!default plughw:Device
ctl.!default plughw:Device

この解決策の欠点はデスクトップサウンドアプレットが表示されないことです。そのため、音量を制御するにはalsamixerアプリケーションまたはUSBサウンドドングルの物理的なサウンドレベルボタンを使用してください。

これに関する参照:

  1. https://www.raspberrypi.org/forums/viewtopic.php?f=28&t=124016&p=857433&hilit=usb+audio#p857433
  2. http://alsa.opensrc.org/Asoundrc#Default_PCM_device
3
Digitalfix

ここで Raspberry Pi StackExchange で説明されている方法が私のために働きました。私はRaspian Jessieを経営しています。

新しい情報は、.confを編集するのではなく、新しい/usr/share/alsa/alsa.confファイルを作成しなければならなかったことです。

私のカードを並べ替えるために、私は最初に/etc/modprobe.d/alsa base.conf.という名前のファイルを作成します。それから私は以下を加えました:

# This sets the index value of the cards but doesn't reorder.
options snd_usb_audio index=0   
options snd_bcm2835 index=1

# Does the reordering.
options snd slots=snd_usb_audio,snd_bcm2835
2
Lennart Hennigs

少しあいまいな指示を与える前の答えに満足していなかったので、私はもっと明確な解決策を文書化することにしました。

良い投稿 はこちら にどのデバイスとカードを使用しようとしているかをテストする方法を示しています。

USBデバイスを接続する前後にaplay -lを使用してハードウェアデバイス番号とカード番号を見つけます。

私のシステムでは、usbデバイスはcard 1: CODEC [USB Audio CODEC], device 0 ...としてリストされています。

あなたはデバイスが動作していることを確認することができます

aplay -D hw:1,0 InsertYourWavFileHere.wav

必ず有効なwavオーディオファイルを現在のディレクトリにコピーして、適切な名前に変更してください。これがうまくいけば、alsaによって扱われる他のすべてのオーディオの中でそれらがデフォルトのプレイになるようにこれらの値をハードコードすることができます(ほとんどの場合)

デフォルト値を編集するには、他の人が言っているように設定ファイルを使用します。

Sudo nano /usr/share/alsa/alsa.conf

変更したい特定の行は数ページ下です。あなたはCntl + Wで検索するか、単に下にスクロールすることができます。

変化する:

defaults.pcm.card 0 defaults.pcm.device 0

に:

defaults.pcm.card 1 defaults.pcm.device 0

Control + xを押して設定ファイルを保存すると、nanoは編集内容の確認を求め、YとEnterを押します。

2
TopherBuckley

私はここで 完全な記事 を書きました。 ALSA設定ファイルの誤解や落とし穴を片付けることを含みます。

関連する重要事項は、snd_bcm2835と呼ばれるBroadcomオーディオモジュールを無効にして、snd_usb_audioが最初からロードされていることを確認することです。これは2つの方法のいずれかで行うことができます。

  • /boot/config.txtファイル内
  • モジュールブラックリストファイル内。

それからsnd_usb_audioインデックスを指すようにALSA configを設定します。

0
not2qubit

Alsa.conf(defaults.ctl.card 1 defaults.pcm.card 1)と(load card-specific configuration files (on request))を変更したら、asoundrcファイルを修正して次の場所に入れます。

pcm.!default { type hw card 0 }
pcm.default.card 1.

大丈夫でしょう

0
bouziat jacques