🐙

Archlinuxにて、HDMIから音を出したい

2022/09/26に公開約1,700字

やったこと

~/.asoundrcを書いた。

どのように書いた?

pcm.!default {
  type hw
  card 0
  device 3
}
defaults.pcm.card 0
defaults.pcm.device 3
defaults.ctl.card 0

こうだったり、こうだったりする。

読み方

まず最初の方から。"type"は、aplayコマンドを使うときにデバイスを指定するときに"plughw"と書くからその"hw"じゃねぇかなぁと解釈している。そして"card"はサウンドカードを指定、"device"は接続先のデバイスの番号なのではないかと解釈している。

書き方

aplayコマンドを使う。多くの場合alsa-utilsパッケージに入っているはず。ディストリビューションごとに各々確認してくれ。

aplay -l
実行結果
card 0: NVidia [HDA NVidia], device 3: HDMI 0 [HDMI 0]
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 0: NVidia [HDA NVidia], device 7: HDMI 1 [VZ239        ]
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 0: NVidia [HDA NVidia], device 8: HDMI 2 [HDMI 2]
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 0: NVidia [HDA NVidia], device 9: HDMI 3 [HDMI 3]
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 0: NVidia [HDA NVidia], device 10: HDMI 4 [HDMI 4]
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 1: Generic [HD-Audio Generic], device 0: ALCS1200A Analog [ALCS1200A Analog]
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 1: Generic [HD-Audio Generic], device 1: ALCS1200A Digital [ALCS1200A Digital]
  Subdevices: 1/1
  Subdevice #0: subdevice #0

実行結果は自分の場合を載せた。私はVZ239を使用しているのですぐにわかった。この場合はcardが0、deviceが7だ。もしもデバイスの名前とかついてなかったら一個一個試していくしかないのかも…?
そうしたら.asoundrcを書く。

~/.asoundrc
defaults.pcm.card 0
defaults.pcm.device 7
defaults.ctl.card 0

なぜか自分の環境だと以下の記法は動作しなかった。

pcm.!default {
  type hw
  card 0
  device 7
}

参考サイト

https://wiki.archlinux.jp/index.php/Advanced_Linux_Sound_Architecture/トラブルシューティング#HDMI_.E3.81.8B.E3.82.89.E5.87.BA.E5.8A.9B.E3.81.A7.E3.81.8D.E3.81.AA.E3.81.84

Discussion

ログインするとコメントできます