##序
モニターHDMI接続、ヘッドホーンジャックから音声出力してましたが、kernel が5系になったころから(2020.5上旬?)、音が出せなくなってしまいました。omxplayerやaplayでは出力先を設定し実行すれば音が出るのですが、それ以外では音がでないという状況になってしまいました。ようやく音が出るようになったので、防備録として残しておきます。
##確認環境
・Raspberry Pi 3B (初期の+のつかない方)
・2.5inch sata HDDをUSB2.0で接続し起動(microSD無し)
・USB 日本語キーボード/マウス
・WQHDモニター(HDMI接続)
・電源 5V 2.5A、USB-MicroB端子より給電
・ヘッドホーンジャックからアナログ音声出力
・OS Arch Linux ARM 32bit版(armv7)
・音声系のインストール済みパッケージは後述。
##設定
参考サイトのArch Linux ALSA wikiページ「デフォルトのサウンドカード設定→その他の方法」を確認して、/etc/asound.conf
を作成しました。記述内容は以下の通りです。「card」部分の記述は各環境で確認したものを記述して下さい。
pcm.!default {
type hw
card Headphones
}
ctl.!default {
type hw
card Headphones
}
個別のログインユーザーに設定するなら、そのユーザーのホームディレクトリに.asoundrc
を作成し上記内容を記述してください。この場合は/etc/asound.conf
を作成する必要はありません。
##補足
・/boot/config.txt
に音声設定がされていることが前提です。その上で$ amixer controls
で確認してもnumid=3,・・・
が表示されず、$ amixer cset numid=3 1
が出来なくなった場合の設定です。又、後述のようにPulseAudioは入れてませんので、それらを使っている場合には当てはまらないかもしれません。
・上記設定で「card」部分で記述する内容は、/proc/asound
ディレクトリにある各ファイルの中を見て確認しました。詳細は参考サイトを確認してください。
##インストールしている音声関係パッケージ一覧
alsa-firmware, alsa-lib, alsa-plugins, alsa-topology-conf,alsa-ucm-conf, alsa-utils, zita-alsa-pcmi, libpulse
※バージョンは省略
##参考サイト
Arch Linux ALSA wikiページ:https://wiki.archlinux.jp/index.php/Advanced_Linux_Sound_Architecture
Raspberry Piで遊ぶ 音を鳴らす編:http://www.yam-web.net/raspberry-pi/music.html