当ブログでも何度かご紹介しているネイティブ 32bit PC VersaPro VY12M/C-3
ですが、ふとした拍子にイヤホンジャックから音楽を聴けないことに気が付きました。
現象
音楽は鳴る。
しかし、本体内蔵スピーカーから出力される。
*イヤホンジャックにイヤホンを挿しても、本体内蔵スピーカーから流れる…
目標
このページで達成する目標は(イヤホンジャックにイヤホンを挿したら)イヤホンで音楽を聴きたい。
環境
ハードウェア
NEC VersaPro VY12M/C-3
OS
$ cat /etc/issue
Debian GNU/Linux 10 \n \l
$ cat /proc/version
Linux version 4.19.0-16-686-pae (debian-kernel@lists.debian.org) (gcc version 8.3.0 (Debian 8.3.0-6)) #1 SMP Debian 4.19.181-1 (2021-03-19)
$ uname -a
Linux vy12m 4.19.0-16-686-pae #1 SMP Debian 4.19.181-1 (2021-03-19) i686 GNU/Linux
$ hostnamectl
Static hostname: vy12m
Chassis: laptop
Operating System: Debian GNU/Linux 10 (buster)
Kernel: Linux 4.19.0-16-686-pae
Architecture: x86
設定
確認
現状を確認していきます。
-
オーディオのハードウェア情報を調べる
ハードウェア自体は認識されているようです。
(スピーカーは使えているので…)。$ aplay -l **** ハードウェアデバイス PLAYBACK のリスト **** カード 0: Intel [HDA Intel], デバイス 0: ALC262 Analog [ALC262 Analog] サブデバイス: 1/1 サブデバイス #0: subdevice #0 カード 0: Intel [HDA Intel], デバイス 6: Si3054 Modem [Si3054 Modem] サブデバイス: 1/1 サブデバイス #0: subdevice #0
-
サウンドカードをチェック
試しに /proc ディレクトリから、サウンドカードの認識状況をチェックしてみます。
*aplay コマンドと同じ結果が得られました。
*以下は皆同じなので、どれを使っても OK なはず。$ grep -i codec /proc/asound/card*/codec#* /proc/asound/card0/codec#0:Codec: Realtek ALC262 /proc/asound/card0/codec#1:Codec: LSI Si3054
$ cat /proc/asound/card0/codec#0 | grep Codec Codec: Realtek ALC262
$ cat /proc/asound/card0/codec#0 | head -n 1 Codec: Realtek ALC262
VY12M/C-3 はインテルチップセットが使われているため、以下のように確認することもできるようです。
$ lsmod | grep -E 'snd_hda_intel|snd-hda-intel' snd_hda_intel 32768 4 snd_hda_codec 94208 4 snd_hda_intel,snd_hda_codec_generic,snd_hda_codec_si3054,snd_hda_codec_realtek snd_hda_core 57344 5 snd_hda_intel,snd_hda_codec,snd_hda_codec_generic,snd_hda_codec_si3054,snd_hda_codec_realtek snd_pcm 81920 4 snd_hda_intel,snd_hda_codec,snd_hda_core,snd_hda_codec_si3054 snd 61440 16 snd_hda_intel,snd_hwdep,snd_hda_codec,snd_timer,snd_hda_codec_generic,snd_hda_codec_si3054,snd_hda_codec_realtek,snd_pcm
設定
一通りチェックしたところで、起動時にモジュールのロードをするように設定していきます。
-
modprobe.d ディレクイトリを確認する
私の環境では空っぽでした。$ sudo ls /etc/modprobe.d/
-
modprobe.d ディレクイトリに conf ファイルを作成する
/etc/modprobe.d/ ディレクトリに conf ファイルを用意しておくと、起動時に modprobe コマンドで対象モジュールをロードしてくれます。$ sudo cat /etc/modprobe.d/alc262 #options snd-hda-intel model=fujitsu #options snd-hda-intel model=basic options snd-hda-intel index=0 model=basic
*設定がうまく行かない場合は、上記コメント部分も試してみてください。
-
再起動
conf ファイル作成後に再起動して、設定が反映されることを確認します。$ reboot