
Ubuntu日本語フォーラム

ログインしていません。
いろいろ調べて試してみましたが、HDMIポートから出力した信号が AQUOUS LC-42RX1Wで音声が出ません。助けてください。
設定状況
①「システム」→ 「設定」→ 「サウンド」
ハードウェア : Digital Stereo (HDMI)Output
出力 : Internal Audio Digital Stereo(HDMI)
②alsamixer で 再生の MM → 00 に(すべて)
③linux-backports-module-alsa-lucid-genericはエラーが出て適応できず
④boot設定の確認
構成
Ubuntu 11.04 (natty)
kernel 2.6.38-8-generic-pae
M/B H67M-GE
~$ lspci -v -s `lspci | grep -i audio | sed -e 's/\(\w*\)\s.*/\1/'`
00:1b.0 Audio device: Intel Corporation 6 Series Chipset Family High Definition Audio Controller (rev 05)
Subsystem: ASRock Incorporation Device 1892
Flags: bus master, fast devsel, latency 0, IRQ 22
Memory at fe500000 (64-bit, non-prefetchable) [size=16K]
Capabilities: <access denied>
Kernel driver in use: HDA Intel
Kernel modules: snd-hda-inte:~$ lsmod | grep snd snd_hda_codec_hdmi 27479 1 snd_hda_codec_realtek 255820 1 snd_hda_intel 24140 0 snd_hda_codec 90901 3 snd_hda_codec_hdmi,snd_hda_codec_realtek,snd_hda_intel snd_hwdep 13274 1 snd_hda_codec snd_pcm 80244 3 snd_hda_codec_hdmi,snd_hda_intel,snd_hda_codec snd_seq_midi 13132 0 snd_rawmidi 25269 1 snd_seq_midi snd_seq_midi_event 14475 1 snd_seq_midi snd_seq 51291 2 snd_seq_midi,snd_seq_midi_event snd_timer 28659 2 snd_pcm,snd_seq snd_seq_device 14110 3 snd_seq_midi,snd_rawmidi,snd_seq snd 55295 10 snd_hda_codec_hdmi,snd_hda_codec_realtek,snd_hda_intel,snd_hda_codec,snd_hwdep,snd_pcm,snd_rawmidi,snd_seq,snd_timer,snd_seq_device soundcore 12600 1 snd snd_page_alloc 14073 2 snd_hda_intel,snd_pcm
:~$ pacmd list-cards
Welcome to PulseAudio! Use "help" for usage information.
>>> 1 card(s) available.
index: 0
name: <alsa_card.pci-0000_00_1b.0>
driver: <module-alsa-card.c>
owner module: 4
properties:
alsa.card = "0"
alsa.card_name = "HDA Intel PCH"
alsa.long_card_name = "HDA Intel PCH at 0xfe500000 irq 46"
alsa.driver_name = "snd_hda_intel"
device.bus_path = "pci-0000:00:1b.0"
sysfs.path = "/devices/pci0000:00/0000:00:1b.0/sound/card0"
device.bus = "pci"
device.vendor.id = "8086"
device.vendor.name = "Intel Corporation"
device.product.id = "1c20"
device.product.name = "6 Series Chipset Family High Definition Audio Controller"
device.form_factor = "internal"
device.string = "0"
device.description = "Internal Audio"
module-udev-detect.discovered = "1"
device.icon_name = "audio-card-pci"
profiles:
output:analog-stereo: Analog Stereo Output (priority 6000)
output:analog-stereo+input:analog-stereo: Analog Stereo Duplex (priority 6060)
output:analog-surround-40: Analog Surround 4.0 Output (priority 700)
output:analog-surround-40+input:analog-stereo: Analog Surround 4.0 Output + Analog Stereo Input (priority 760)
output:analog-surround-41: Analog Surround 4.1 Output (priority 800)
output:analog-surround-41+input:analog-stereo: Analog Surround 4.1 Output + Analog Stereo Input (priority 860)
output:analog-surround-50: Analog Surround 5.0 Output (priority 700)
output:analog-surround-50+input:analog-stereo: Analog Surround 5.0 Output + Analog Stereo Input (priority 760)
output:analog-surround-51: Analog Surround 5.1 Output (priority 800)
output:analog-surround-51+input:analog-stereo: Analog Surround 5.1 Output + Analog Stereo Input (priority 860)
output:iec958-stereo: Digital Stereo Duplex (IEC958) (priority 5500)
output:iec958-stereo+input:analog-stereo: Digital Stereo (IEC958) Output + Analog Stereo Input (priority 5560)
output:hdmi-stereo: Digital Stereo (HDMI) Output (priority 5400)
output:hdmi-stereo+input:analog-stereo: Digital Stereo (HDMI) Output + Analog Stereo Input (priority 5460)
input:analog-stereo: Analog Stereo Input (priority 60)
off: オフ (priority 0)
active profile: <output:hdmi-stereo>
sinks:
alsa_output.pci-0000_00_1b.0.hdmi-stereo/#0: Internal Audio Digital Stereo (HDMI)
sources:
alsa_output.pci-0000_00_1b.0.hdmi-stereo.monitor/#0: Monitor of Internal Audio Digital Stereo (HDMI):~$ pacmd stat Welcome to PulseAudio! Use "help" for usage information. >>> Memory blocks currently allocated: 1, size: 64.0 KiB. Memory blocks allocated during the whole lifetime: 236, size: 12.0 MiB. Memory blocks imported from other processes: 0, size: 0 B. Memory blocks exported to other processes: 0, size: 0 B. Total sample cache size: 0 B. Default sample spec: s16le 2ch 44100Hz Default channel map: front-left,front-right Default sink name: alsa_output.pci-0000_00_1b.0.hdmi-stereo Default source name: alsa_output.pci-0000_00_1b.0.hdmi-stereo.monitor Memory blocks of type POOL: 1 allocated/21 accumulated. Memory blocks of type POOL_EXTERNAL: 0 allocated/0 accumulated. Memory blocks of type APPENDED: 0 allocated/0 accumulated. Memory blocks of type USER: 0 allocated/0 accumulated. Memory blocks of type FIXED: 0 allocated/209 accumulated. Memory blocks of type IMPORTED: 0 allocated/6 accumulated.
:~$ amixer -c 0 scontents Simple mixer control 'Master',0 Capabilities: pvolume pvolume-joined pswitch pswitch-joined penum Playback channels: Mono Limits: Playback 0 - 64 Mono: Playback 52 [81%] [-12.00dB] [on] Simple mixer control 'Headphone',0 Capabilities: pvolume pswitch penum Playback channels: Front Left - Front Right Limits: Playback 0 - 64 Mono: Front Left: Playback 64 [100%] [0.00dB] [on] Front Right: Playback 64 [100%] [0.00dB] [on] Simple mixer control 'PCM',0 Capabilities: pvolume penum Playback channels: Front Left - Front Right Limits: Playback 0 - 255 Mono: Front Left: Playback 255 [100%] [0.00dB] Front Right: Playback 255 [100%] [0.00dB] Simple mixer control 'Front',0 Capabilities: pvolume pswitch penum Playback channels: Front Left - Front Right Limits: Playback 0 - 64 Mono: Front Left: Playback 52 [81%] [-12.00dB] [on] Front Right: Playback 52 [81%] [-12.00dB] [on] Simple mixer control 'Front Mic',0 Capabilities: pvolume pswitch penum Playback channels: Front Left - Front Right Limits: Playback 0 - 31 Mono: Front Left: Playback 23 [74%] [0.00dB] [on] Front Right: Playback 23 [74%] [0.00dB] [on] Simple mixer control 'Front Mic Boost',0 Capabilities: volume penum Playback channels: Front Left - Front Right Capture channels: Front Left - Front Right Limits: 0 - 3 Front Left: 3 [100%] [30.00dB] Front Right: 3 [100%] [30.00dB] Simple mixer control 'Surround',0 Capabilities: pvolume pswitch penum Playback channels: Front Left - Front Right Limits: Playback 0 - 64 Mono: Front Left: Playback 64 [100%] [0.00dB] [on] Front Right: Playback 64 [100%] [0.00dB] [on] Simple mixer control 'Center',0 Capabilities: pvolume pvolume-joined pswitch pswitch-joined penum Playback channels: Mono Limits: Playback 0 - 64 Mono: Playback 64 [100%] [0.00dB] [on] Simple mixer control 'LFE',0 Capabilities: pvolume pvolume-joined pswitch pswitch-joined penum Playback channels: Mono Limits: Playback 0 - 64 Mono: Playback 64 [100%] [0.00dB] [on] Simple mixer control 'Line',0 Capabilities: pvolume pswitch penum Playback channels: Front Left - Front Right Limits: Playback 0 - 31 Mono: Front Left: Playback 0 [0%] [-34.50dB] [off] Front Right: Playback 0 [0%] [-34.50dB] [off] Simple mixer control 'IEC958',0 Capabilities: pswitch pswitch-joined penum Playback channels: Mono Mono: Playback [on] Simple mixer control 'IEC958 Default PCM',0 Capabilities: pswitch pswitch-joined penum Playback channels: Mono Mono: Playback [on] Simple mixer control 'IEC958',1 Capabilities: pswitch pswitch-joined penum Playback channels: Mono Mono: Playback [on] Simple mixer control 'IEC958',2 Capabilities: pswitch pswitch-joined penum Playback channels: Mono Mono: Playback [on] Simple mixer control 'Capture',0 Capabilities: cvolume cswitch penum Capture channels: Front Left - Front Right Limits: Capture 0 - 46 Front Left: Capture 28 [61%] [12.00dB] [on] Front Right: Capture 28 [61%] [12.00dB] [on] Simple mixer control 'Capture',1 Capabilities: cvolume cswitch penum Capture channels: Front Left - Front Right Limits: Capture 0 - 46 Front Left: Capture 16 [35%] [0.00dB] [off] Front Right: Capture 16 [35%] [0.00dB] [off] Simple mixer control 'Input Source',0 Capabilities: cenum Items: 'Rear Mic' 'Front Mic' 'Line' Item0: 'Front Mic' Simple mixer control 'Input Source',1 Capabilities: cenum Items: 'Rear Mic' 'Front Mic' 'Line' Item0: 'Rear Mic' Simple mixer control 'Rear Mic',0 Capabilities: pvolume pswitch penum Playback channels: Front Left - Front Right Limits: Playback 0 - 31 Mono: Front Left: Playback 0 [0%] [-34.50dB] [off] Front Right: Playback 0 [0%] [-34.50dB] [off] Simple mixer control 'Rear Mic Boost',0 Capabilities: volume penum Playback channels: Front Left - Front Right Capture channels: Front Left - Front Right Limits: 0 - 3 Front Left: 0 [0%] [0.00dB] Front Right: 0 [0%] [0.00dB]
:~$ lspci -vnns 03:00.1 :~$ cat /proc/asound/version Advanced Linux Sound Architecture Driver Version 1.0.23. :~$
:~$ aplay -l **** ハードウェアデバイス PLAYBACK のリスト **** カード 0: PCH [HDA Intel PCH], デバイス 0: ALC892 Analog [ALC892 Analog] サブデバイス: 1/1 サブデバイス #0: subdevice #0 カード 0: PCH [HDA Intel PCH], デバイス 1: ALC892 Digital [ALC892 Digital] サブデバイス: 1/1 サブデバイス #0: subdevice #0 カード 0: PCH [HDA Intel PCH], デバイス 3: HDMI 0 [HDMI 0] サブデバイス: 1/1 サブデバイス #0: subdevice #0 カード 0: PCH [HDA Intel PCH], デバイス 7: HDMI 1 [HDMI 1] サブデバイス: 1/1 サブデバイス #0: subdevice #0
よろしくお願いします
オフライン
以下のコマンドに失敗します。
:~$ sudo apt-get install linux-backports-modules-alsa-`uname -r` linux-backports-modules-alsa-lucid-generic
パッケージリストを読み込んでいます... 完了
依存関係ツリーを作成しています
状態情報を読み取っています... 完了
E: パッケージ linux-backports-modules-alsa-2.6.38-8-generic が見つかりません
E: 正規表現 'linux-backports-modules-alsa-2.6.38-8-generic' ではパッケージは見つかりませんでした
E: パッケージ linux-backports-modules-alsa-lucid-generic が見つかりません
このインストールを成功させるにはどうしたら良いでしょうか?
よろしくお願いします
オフライン
ken121830 による投稿:
構成
Ubuntu 11.04 (natty)
kernel 2.6.38-8-generic-pae
M/B H67M-GE
Nattu (Ubuntu 11.04) に対して
ken121830 による投稿:
E: パッケージ linux-backports-modules-alsa-lucid-generic が見つかりません
Lucid (Ubuntu 10.04) のパッケージを入れようとしているからです。基本、異なるバージョン間でのパッケージの融通はできません。
オフライン
Mocchi様
回答ありがとうございます。モジュールに命名規則があったのですね。知りませんでした。 とりあえず、alsaドライバをバージョンアップしてみます。
オフライン
ken121830 による投稿:
とりあえず、alsaドライバをバージョンアップしてみます。
現在、Linuxのドライバはカーネルモジュールの形でLinuxカーネルに組み込まれています。システムのコアの部分に組み込まれていると考えていただいて差し支えありません。サウンドドライバであるALSAのカーネルモジュールも例外ではありません。
SynapticパッケージマネジャーでALSAを検索すると、「alsa-base」とか「alsa-oss」、「libasound2」などが表示されますが、これらは総じて、ALSAのライブラリです。そのため、これらをインストールしたり、更新しても、カーネルモジュールは更新されません。そして、Nattyの場合、ALSAのライブラリはすべてバージョン1.0.24に基づいています。
しかしNattyでコマンド「$ cat /proc/asound/version;」の実行結果をみていただくとわかるとおり、ALSAのカーネルモジュールは1.0.23相当のものが入っています。これは先述のとおり、カーネルそのものにALSAが含まれているためです。
コマンド「$ uname -a;」を実行していただけると、Nattyが現在利用しているLinuxカーネルのバージョンが表示されます。私の環境では「2.6.38」となっています。Nattyで採用しているLinuxカーネルでは、ALSAのカーネルモジュールのの新バージョンは利用できないということになります。
この場合、例えばコマンド「module-assistant」でカーネルモジュールを更新したり、パッケージ「alsa-source」で最新のソースコードを取得して自分でコンパイルとインストールをする、といった感じとなります。またはALSAのウェブサイトからカーネルモジュールのソースコードである「alsa-drivers」を取得してコンパイルとインストールをします。
しかし私の確認する限り、Maverick以降、上記の方法はエラーを起こします。2007年あたりにLinuxカーネル内のファイルの配置が変更され、その影響が出ているというところまで調べはついているのですが、そこから先がまだちょっと理解できていません。いずれバグとして報告しようと思って材料を集めているところです。
こんな感じなので、アドバイスとなっていませんが、NattyでALSAカーネルモジュールを更新する際はお気をつけになってください。
オフライン
Mocchi様
とても丁寧な説明ありがとうございます。おっしゃる通り、最新のドライバを無理やりインストールしようとしても難しいですね。解決はしなかったもののご協力頂き、本当にありがとうございます。
オフライン
また、お世話になります。
あれから、
speaker-test -D plughw:0,7 -c2
などで、カード0のデバイス7から音がでることがわかったので
/etc/asound.conf
pcm.!default{
type hw
card 0
device 7
}
ctl.!default{
type hw
card 0
device 7
}
と追加したところ、youtubeなどのflashアプリケーションの音声は出るのですが、システムの音やweb上のtest.wavファイルを再生しても音が出ません。どなたか、お知恵を拝借したく思います。
よろしくお願いします
オフライン
ken121830 による投稿:
あれから、
speaker-test -D plughw:0,7 -c2
などで、カード0のデバイス7から音がでることがわかったので
なるほど!!私もちょうどALSAのメーリングリストでいま交わされているHDMI関連の議論を追いかけていたのですが、そこで見つけたヒントとぴったり符合します。
どういうことかと言いますと、PulseAudioのデバイス自動認識の仕組みには問題点が報告されていて、HDMIデバイスを利用する際に、ALSAのカード設定で利用できるデバイスのうち、はじめのデバイス、すなわち今回ならhw(0.0)を利用するようになっています。今回、HDMIのサウンドデバイスが認識されているのに音が出ないのは、hw(0,0)を利用してしまっているからかもしれません。これをhw(0,7)を利用するように設定を変更すれば、なんとかなるかもしれません。
1. まずはファイル「/etc/asound.conf」を削除してください。ここらへんがどうなっているのかは後述します。
2. 端末を起動して、以下を実行してください。
$ pacmd load-module module-alsa-sink device=hw:0,7 sink_properties=device.description=MyHDMI;
3. 「サウンドの設定」のタブ「出力」に、出力デバイスとしてMyHDMIが登場します
MyHDMIに出力を切り替えて、音が出るかどうか試してみてください。
情報源:
[alsa-devel] HDA HDMI pin to converter mapping @ mailman.alsa-project.org
12. Issues In PulseAudio @ download.nvidia.com
[pulseaudio-discuss] ALSA sink enumeration and multiple devices/subdevices @ tango.0pointer.de
######
以下は少々ややこしい話となりますが、どうかお付き合い下さい。
ken121830 による投稿:
youtubeなどのflashアプリケーションの音声は出るのですが、システムの音やweb上のtest.wavファイルを再生しても音が出ません。
通常、「pcm.!default」はPulseAudioが指定されています。この設定は、ファイル「/usr/share/alsa/pulse-alsa.conf」に記述されています。
どうしてこうなっているのかと言いますと、「PulseAudioは、ALSAサウンドデバイスのフリができる」+「そこで受け取った音を、本物のALSAサウンドデバイスに投げる」(以上、以下の5ページ目から引用)という仕組みになっているからです。
行っとけ! Ubuntu道場! ― 第43回~師範、サウンドまわりがよく分かりません!~ @ ascii.jp
こうすることで、Adobe Flash Player(Youtubeが利用)と言ったALSAライブラリのアプリケーションの音声データを、PulseAudioがコントロールできるようになります。
今回の設定変更は、このALSAライブラリのデフォルトの出力先を変更したことになります。ちょうど、以下の図のような感じです。
今回の設定変更により、ALSAライブラリはPulseAudioを経由しないで直接サウンドデバイスに音声データを届けるようになりました。そのため、ALSAライブラリのアプリケーションであるAdobe Flash Playerの音声はサウンドデバイスに届きます。しかし、PulseAudioの設定は変わらないため、こちらのアプリケーションは相変わらず音がでないと言うことになります。
オフライン
Mocchi様
適確なアドバイスありがとうございます。Flashアプリケーションで音が出て、他のアプリケーションで音が出ない件ですが、親切丁寧な説明で興味深く読ませていただき、自分としては納得しました。そこで、アドバイス通り、
$ pacmd load-module module-alsa-sink device=hw:0,7 sink_properties=device.description=MyHDMI;
を実行し、色々なアプリケーションで試したところ、大半のアプリケーションでは音がでることを確認しました。しかし、新たに2つの問題が発生しました。
1、サウンドの設定 → ハードウェアタブ → スピーカーのテスト で 音が出ない。
2、再起動後、MyHDMI設定値が見えなくなる。これは、root権限でコマンドを実行したとき、エラーになるので、通常のアカウントで行ったためかもしれません。
エラー表示
Home directory /home/アカウント not ours.
No PulseAudio daemon running, or not running as session daemon.
なんとか、毎回、コマンドを実行しなくても良い方法はないでしょうか?
何度も図々しく質問して申し訳ありませんが、何卒よろしくお願いします。
オフライン
ken121830 による投稿:
なんとか、毎回、コマンドを実行しなくても良い方法はないでしょうか?
PulseAudioのマニュアルを参照すると、ファイル「~/.pulse/default.pa」にpacmdのコマンドを記述することで、PulseAudioのユーザーセッションが開始された際に、スクリプトを実行できるようです。先のmodule-alsa-sinkをロードする記述をこのファイルに追加すると、自動でMyHDMIを設けることができそうです。
パス「~/」というのはユーザのホームディレクトリを示します。例えばログインユーザー「Mocchi」であれば、パス「/home/mocchi」となるでしょう。
$ man default.pa;
default.pa(5) default.pa(5)
NAME
default.pa - PulseAudio Sound Server Startup Script
SYNOPSIS
~/.pulse/default.pa
/etc/pulse/default.pa
DESCRIPTION
The PulseAudio sound server interprets the file ~/.pulse/default.pa on
startup, and when that file doesn't exist /etc/pulse/default.pa. It
should contain directives in the PulseAudio CLI languages, as docu‐
mented on http://pulseaudio.org/wiki/CLI.
The same commands can also be entered during runtime in the pacmd(1)
tool, allowing flexible runtime reconfiguration.
AUTHORS
The PulseAudio Developers <mzchyfrnhqvb (at) 0pointer (dot) net>;
PulseAudio is available from http://pulseaudio.org/
SEE ALSO
pulse-daemon.conf(5), pulseaudio(1), pacmd(1)
Manuals User default.pa(5)もしUbuntuにアカウントを持つすべてのユーザに適用したければ、ファイル「/etc/pulse/default.pa」の末尾に記述するとよいでしょう。今回はユーザーのホームディレクトリの方に記述して、安全を確認したらすべてのユーザーに適用というプロセスを経るのをおすすめします。
PulseAudioの設計思想はおそらくこんな感じ。
0. PulseAudio自体は、自動でサウンドデバイスへの経路を設定しない。
1. 各ユーザーはプラグインによって、PulseAudioにサウンドデバイスへの経路を設ける
2. PulseAudioは、各ユーザーの実行するソフトウェアのそれぞれに、それらの経路を提供する
3. もし複数のソフトウェアが同一のサウンドデバイスへの経路を利用したら、それらをPulseAudioがまとめて(=ミックスして)出力する
ルート権限でプラグインを有効化しても、おそらく"ユーザとしての"ルートが設けた経路ですので、一般ユーザーは利用できないのでしょう。
オフライン
Mocchi様
丁寧な対応ありがとうございました。無事、音声が出ることを確認しました。ただ、自分は初心者なので、 ~/.pulse/default.pa に まるまる
pacmd load-module module-alsa-sink device=hw:0,7 sink_properties=device.description=MyHDMI;
と記述して、はまってしまいました。default.pa自体、pulseaudioのスクリプトなので、
load-module module-alsa-sink device=hw:0,7 sink_properties=device.description=MyHDMI;
でよかったのですね。勉強になりました。
最後にいろいろアドバイス頂き、本当にありがとうございました。
オフライン
ken121830 による投稿:
default.pa自体、pulseaudioのスクリプトなので、
load-module module-alsa-sink device=hw:0,7 sink_properties=device.description=MyHDMI;
でよかったのですね。勉強になりました。
すみません。そのようにちゃんとお伝えするべきでした。。。
今回の件でHDMIをめぐる謎がひとつ解消されたので、他のユーザの助けになったかなぁと思います。こちらこそ、どうもありがとうございます。
########
蛇足ですが、PulseAudioに関してもうちょっと調べてたら、先の「PulseAudioの設計思想」が間違えていることに気づきました。。。
PulseAudioはログインユーザーごとにデーモンが走るのを基本としていて、マルチユーザーを想定してないっぽいです[1] [2]。そのため、ひとつのシステムに複数のユーザがログインして同一のサウンドデバイスにアクセスすると、衝突が起こって最初にアクセスしたユーザが優先となります。
PulseAudioの設計思想はおそらくこんな感じ。
0. PulseAudioはログインユーザーごとにデーモンが走る。
1. PulseAudio自体は、自動でサウンドデバイスへの経路を設定しない。
2. ユーザーはプラグインによって、PulseAudioにサウンドデバイスへの経路を設ける
3. PulseAudioはソフトウェアのそれぞれに、それらの経路を提供する
4. もし複数のソフトウェアが同一のサウンドデバイスへの経路を利用したら、それらをPulseAudioがまとめて(=ミックスして)出力する
5. 標準の設定では複数のユーザが同時に同一のサウンドデバイスを使うことは出来ず、先に使い出したユーザが優先される
[1] Running PulseAudio as System-Wide Daemon @ pulseaudio.org
[2] What is wrong with system mode @ pulseaudio.org
蛇足ですが参考まで。
オフライン