openSUSE13.1で、Yastで設定しても、nvidiaのカード経由で、音が鳴らない時の対処法
ハードウエア環境:マザーボードの音源はBIOSにてOFFにし、音源カードはNVIDIAのカードだけの前提
$ aplay -l **** ハードウェアデバイス PLAYBACK のリスト **** [#t7971c9f] カード 0: NVidia [HDA NVidia], デバイス 3: HDMI 0 [HDMI 0] サブデバイス: 1/1 サブデバイス #0: subdevice #0 カード 0: NVidia [HDA NVidia], デバイス 7: HDMI 0 [HDMI 0] サブデバイス: 1/1 サブデバイス #0: subdevice #0 カード 0: NVidia [HDA NVidia], デバイス 8: HDMI 0 [HDMI 0] サブデバイス: 1/1 サブデバイス #0: subdevice #0 カード 0: NVidia [HDA NVidia], デバイス 9: HDMI 0 [HDMI 0] サブデバイス: 1/1 サブデバイス #0: subdevice #0
ここで、デバイス番号が、3,7,8,9の4通りがある事がわかった。
順番にデバイスに接続し、音が鳴るかチェック
$ speaker-test -c 2 -r 48000 -D hw:0,3 speaker-test 1.0.27.2 再生デバイス: hw:0,3 ストリームパラメータ: 48000Hz, S16_LE, 2 チャネル 16 オクターブのピンクノイズを使用 レート 48000Hz (要求値 48000Hz) バッファサイズ範囲 64 〜 262144 ピリオドサイズ範囲 32 〜 131072 最大バッファサイズ 262144 を使用 ピリオド数 = 4 period_size = 65536 で設定 buffer_size = 262144 で設定 0 - Front Left 1 - Front Right ピリオド時間 = 4.228354 .... ....
のような表示が出るが、音が鳴らなければ対象デバイス番号は無効なので、
Ctrl + D のキーで終了し、さっさと次の番号を指定する
$ speaker-test -c 2 -r 48000 -D hw:0,7 $ speaker-test -c 2 -r 48000 -D hw:0,8 $ speaker-test -c 2 -r 48000 -D hw:0,9
スピーカーから 「ザーーーー」という音が聞こえたら、そのデバイス番号が当たり!
# vi /etc/asound.conf
pcm.!default { type hw card 0 device 9 <==ここの番号に、当たりの番号を指定する }
ctl.!default { type hw card 0 device 9 <==ここの番号に、当たりの番号を指定する }
# vi /etc/pulse/defaut.pa 以下のコマンドが有効になっていなければ、有効にする
load-module module-alsa-sink device=hw:0,9
ここで、hw:0,9 の ”9” は、当たりのデバイス番号を指定。 ちなみに、hw:0,9の "0"は、1つ目のカードという意味なので、オンボードの音源を 有効にしている場合では、NVIDIAのカードは1などになるかもしれない・・・。
設定が終了したら、再起動して何か鳴らしてみる。
カテゴリ: ハードウェア