ブログパーツ Twitter

« スーパームーンを撮った | トップページ | Olasonic TW-S7(白)を買った »

2012.05.07

Virtualbox 上の Ubuntu 12.04LTS の音が出るようになった

今日は午前中から来客があって、いろいろな情報が聞けました。
でも何か最近やたらやらなくちゃならない事が多くて、撮り貯めたTV番組をなかなか消化できません。


----------
先日の記事「Ubuntu 12.04LTS Precise Pangolin が来た」に書いたように、Ubuntu 12.04LTS を Virtualbox に新規インストールしました。
そしてその時から悩まされているのが、「音が出ない」問題。
 

「他の音は出るのにログイン直後のサウンド(起動音)が鳴らない」という方が大勢いらっしゃるでしょうが、それで正常です。
ログイン直後のサウンドは将来廃止される予定らしく、12.04 では default で鳴らないようになっているはずです。
(5月8日 記事下に起動音の出し方を追記しました。)

 
同じ Virtualbox にインストールしている 11.10 ではちゃんと音が出ています。
12.04 のリリースノート(Desktop版)に音に関する記載があるかどうかを確認しましたが、何も無いようです。


そこでまず参照したのが、Ubuntu 道場の第44回「~師範、PCから音が出ません!~」。
(基礎知識としてその前の第43回「~師範、サウンドまわりがよく分かりません!~」を先に読んでおくことを(色々な意味で)お勧めします。)
 
チェックポイントその1:ボリュームがミュートになっていないか
 → OK
 
チェックポイントその2:「alsamixer」コマンドの表示でボリューム最低になっていないか
 → 異常発見
 
alsamixerコマンドの結果
(左から3番目のSpeaker。ミュートを解除しても何かの拍子に勝手にミュートに戻ってしまう。)
※クリックすると拡大します(724x462)
 
チェックポイントその3:PC にある3.5mmステレオミニ端子全てに順にイヤフォンを差して、音が出る物があるか
 → どれも音出ない
 
チェックポイントその4:/etc/modprobe.d/alsa-base.conf の最後に「options snd-hda-intel model=auto」と書いて再起動したらどうなるか
 → やはり音出ない
 
内部で「Speaker」のボリュームが0になったままになっていることはわかりました。
しかし明示的にミュートを解除してもまた戻ってしまうところから、ミュートになっている原因が OS 内部にありそう。


次に参照したのが Ubuntu Japanese Team Wiki から「音が出ない場合の対処について」。
 
記事の対象バージョンが 9.10 とか 10.04 とか古いですが、気にせずチェック。
 
チェックポイントその5:「lspci | egrep -i multimedia\|audio」でサウンドデバイスが表示されるか
 → OK
 
チェックポイントその6:「lspci -v -s `lspci | grep -i audio | sed -e 's/\(\w*\)\s.*/\1/'`」で表示される内容は
 → 11.10 と違う表示を発見
 
チェック用コマンドの結果
(黄色で囲ったところが 11.10 と違う箇所。11.10 では「HDA Intel」と出る。)
※クリックすると拡大します(727x465)
 
チェックポイントその7:「cat /proc/asound/cards」でデバイス名とチップ名が表示されるか
 → OK
 
チェックポイントその8:「cat /proc/asound/card0/codec* | grep -i codec」で表示される内容は
 → 「Codec: SigmaTel STAC9221 A1」と表示。
 
チェックポイントその9:「aplay -L」として PulseAudio 関係の表示が出るか
 → OK
 
チェックポイントその6の表示を見る限り、間違った Kernel Driver が組み込まれているようにも見えます。
正しいドライバーに入れ替えれれば...って、どうやるんだろう?


と、ここで思いついたのが「Virtualbox のバージョンを上げてみよう」。
 
その時点で使用していたVirtualbox のバージョンは「4.1.10」。
その時点の最新バージョンが「4.1.14」。
(「4.1.12」に何か大きなバグがあるという情報を得ていたので「4.1.12」に上げないままにしていた。)
 
しかも Changelog を見てみると、4.1.12 でオーディオ関係のバグフィックスが行われているみたいだし(この問題に関係しているかは不明)。

Audio: fixed a crash in the NUL audio backend (bug #10374; 4.1.10 regression)

 
ということで、4.1.12 に上げてみたのですが...結果は変わらず。


Virtualbox のバージョンアップは効果がなく、カーネルドライバーの入れ替え方もわかりません。
 
どうにもこうにも行き詰ってしまったので、Ubuntu 日本語フォーラムにここまで得られた情報を提示して助けを求めました。
(フォーラム投稿は6日の0時。質問と回答はこちら。)
 
するとその日中に2名の方から、「Virtualboxのオーディオの設定を変えてみては」「設定を変えてみると自分の所では音が出た」という返答がありました。
(makopi さん、hmatsue さん、回答ありがとうございました。)
 
そこで私のところでも Virtualbox のオーディオの設定を変えて試して見ることに。
 
Virtualboxマネージャーのオーディオタブ
(オーディオコントローラの種類を「Intel HD オーディオ」から「ICH AC97」に変更しました。)
 
ドキドキしながら 12.04LTS を起動してみると...
 
ログイン画面が表示されるときに、あの聞きなれた「ポコポン」の音が!
 
ログイン後、サウンド設定画面からスピーカーのテストを行うと、「Front Left」「Front Right」の音声が!


いやあ、一時はどうしようかと悩みましたが、これにて無事解決。
ただ、音が出なくなった原因はよくわからないままなんですけどね。
 
これで安心してかねてから計画中の「USB スピーカー」を購入できるぞ!


結論:自分より優れた人を見つけて、どんどん吸収しなくっちゃ


・5月8日 追記
記事内でも書いたように、12.04 から default で起動音が鳴らないようになっています。
「default で」ということは鳴らす方法がある、ということです。
 
1.Dash に「自動」と入力して、「自動起動するアプリケーションの設定」を選択し起動する。
2.「自動起動するアプリケーションの設定」画面で「追加」ボタンをクリックする。
3.「自動起動するプログラムの編集」画面で、以下のように入力する。
 名前:起動音 ※自分がわかりやすい名前をつける
 コマンド:/usr/bin/canberra-gtk-play --id="desktop-login" --description="GNOME Login"
 説明:ログインサウンドを鳴らす ※適当に
入力できたら「保存」ボタンを押す。
4.「閉じる」ボタンを押す。
 
これでログアウトして再度ログインしてみてください。
聞きなれたあの起動音が鳴るはずです。
ただこの方法が 12.10 以降も使用できるかどうかは不明です。

« スーパームーンを撮った | トップページ | Olasonic TW-S7(白)を買った »

コメント

コメントを書く

コメントは記事投稿者が公開するまで表示されません。

(ウェブ上には掲載しません)

« スーパームーンを撮った | トップページ | Olasonic TW-S7(白)を買った »

2017年6月
        1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30  

お気に入り

無料ブログはココログ