web-dev-qa-db-ja.com

反転サラウンドチャンネル

Ubuntu 11.04でサラウンドサウンドの問題が発生しています。 HDMIでサウンドを再生することはできましたが、チャンネルが逆になっています。たとえば、Pulse Audioがセンタースピーカーで再生されると、LFEを通過します。サウンド設定チャンネルに含まれるスピーカーテストについても同じことが言えます。

この問題に関するトピックを検索しているときに、チャネルマップ設定を変更して/etc/Pulse/daemon.confを編集しようとしました-使用できません。たぶん私はそれを正しく使用しなかったのでしょうか?

これらのチャンネルを交換して5.1を正常に機能させるアイデアはありますか?

System specs :
Ubuntu 11.04
AsRock aion330
HDMI amp

前もって感謝します!


aplay -Lはこの結果を与えます:

default
    Playback/recording through the PulseAudio sound server
Pulse
    Playback/recording through the PulseAudio sound server
front:CARD=NVidia,DEV=0
    HDA NVidia, VT1708S Analog
    Front speakers
surround40:CARD=NVidia,DEV=0
    HDA NVidia, VT1708S Analog
    4.0 Surround output to Front and Rear speakers
surround41:CARD=NVidia,DEV=0
    HDA NVidia, VT1708S Analog
    4.1 Surround output to Front, Rear and Subwoofer speakers
surround50:CARD=NVidia,DEV=0
    HDA NVidia, VT1708S Analog
    5.0 Surround output to Front, Center and Rear speakers
surround51:CARD=NVidia,DEV=0
    HDA NVidia, VT1708S Analog
    5.1 Surround output to Front, Center, Rear and Subwoofer speakers
surround71:CARD=NVidia,DEV=0
    HDA NVidia, VT1708S Analog
    7.1 Surround output to Front, Center, Side, Rear and Woofer speakers
iec958:CARD=NVidia,DEV=0
    HDA NVidia, VT1708S Digital
    IEC958 (S/PDIF) Digital Audio Output
hdmi:CARD=NVidia,DEV=0
    HDA NVidia, HDMI 0
    HDMI Audio Output
dmix:CARD=NVidia,DEV=0
    HDA NVidia, VT1708S Analog
    Direct sample mixing device
dmix:CARD=NVidia,DEV=1
    HDA NVidia, VT1708S Digital
    Direct sample mixing device
dmix:CARD=NVidia,DEV=3
    HDA NVidia, HDMI 0
    Direct sample mixing device
dsnoop:CARD=NVidia,DEV=0
    HDA NVidia, VT1708S Analog
    Direct sample snooping device
dsnoop:CARD=NVidia,DEV=1
    HDA NVidia, VT1708S Digital
    Direct sample snooping device
dsnoop:CARD=NVidia,DEV=3
    HDA NVidia, HDMI 0
    Direct sample snooping device
hw:CARD=NVidia,DEV=0
    HDA NVidia, VT1708S Analog
    Direct hardware device without any conversions
hw:CARD=NVidia,DEV=1
    HDA NVidia, VT1708S Digital
    Direct hardware device without any conversions
hw:CARD=NVidia,DEV=3
    HDA NVidia, HDMI 0
    Direct hardware device without any conversions
plughw:CARD=NVidia,DEV=0
    HDA NVidia, VT1708S Analog
    Hardware device with all software conversions
plughw:CARD=NVidia,DEV=1
    HDA NVidia, VT1708S Digital
    Hardware device with all software conversions
plughw:CARD=NVidia,DEV=3
    HDA NVidia, HDMI 0
    Hardware device with all software conversions

gnome-volume-controlは確かにDigital Surround 5.1 HDMI Outputに設定されています。ただし、スピーカーテストはチャネルの問題の影響を受けます。

1
letraitplat

チャンネルが正しく構成されていない場合にHDMI 5.1サウンドで正しいマッピングを設定するには、コマンドラインで次のことを試してください。

  1. pulseaudio -k
  2. gksu gedit /usr/share/pulseaudio/alsa-mixer/profile-sets/extra-hdmi.conf
  3. そのファイルのHDMIサラウンドセクションを見つけます。 channel-mappingで誤ったスピーカーを切り替えて、ファイルを保存します。
  4. 実行speaker-test -c6 -twav
  5. それでも正しくない場合は、手順1に戻ります。

NVIDIA ION(zotacマザーボード)を搭載したUbuntu 12.04でテスト済み。

2
mmalmeida

現在のALSAとPulseAudioの設定に関する知識がなければ、ここで何が間違っているのか推測することしかできません。

音声出力のトラブルシューティングを行うには

  • aLSAマッピングが正しいかどうかを確認します(ターミナルでaplay -Lを呼び出して)
  • ハードウェアプロファイルが5.1に設定されていることを確認してください。 gnome-volume-controlでオーディオ設定->ハードウェア
  • /etc/Pulse/daemon.confのリミックス設定を次のように変更してください:

    enable-remixing = yesnoも試してください

    enable-lfe-remixing = noyesも試してください

daemon.confのチャネルマッピングは、他にチャネルマップが存在しない場合にのみ機能しますチャネルマップ( pulseaudio ticket#825も参照 )。

ALSA HDMIサウンド出力はデジタルである可能性があるため、アナログチャンネルとは異なり、5.1でミキシングします。サラウンド出力は、接続されているハードウェアによって行われます。

1
Takkat

@Takkat:NVM解決策を見つけました。

私はあなたの提案を役に立たないように試みました...それから、私はカードのconfファイルの詳細を探しました。結局、pulseaudioによって読み込まれたプリセットファイルを見てしまいました。nvidia.confから読み込まれたNvidiaプロファイルがあることがわかりました。

このnvidia.confファイルには、多くのhdmiサラウンド5.1プリセットが見つかりました。

いくつかのチャンネルを反転し(例:lfeと左前)、ファイルを保存し、pulseaudioを削除し、魅力のように機能しました。

助けてくれてありがとう :)

0
letraitplat

このようにアナログカードのチャネルを再マッピングできました

cp /usr/share/pulseaudio/alsa-mixer/profile-sets/default.conf ~/.Pulse/rotatedProfile.conf

構成のチャネルマップが希望どおりになるように、そのファイルを編集しました

[Mapping analog-surround-51]
device-strings = surround51:%f
channel-map = front-right,rear-right,front-left,rear-left,front-center,lfe
paths-output = analog-output analog-output-speaker analog-output-desktop-speaker   analog-output-lfe-on-mono
priority = 8
direction = output

その後、pulseaudioにalsaカードを自動ではなく手動でロードさせ、作成したファイルにプロファイルを設定する必要がありました。プロファイルを自動検出されたカードに強制する方法があるのか​​、手動で検出されるカードを1つだけ強制する方法があるのか​​はわかりません。 #load-module module-udev-detect#load-module module-detect/etc/Pulse/default.paをコメントアウトし、次の行をファイルの最後に追加しました

load-module module-alsa-card device_id=Intel profile_set=/home/silent/.Pulse/rotatedProfile.conf

ここで、device_idは数値または文字列のいずれかです。あなたはあなたのカード名とIDを見ることができます

cat /proc/asound/cards

参考のために、私の出力はこのようでした

  0 [Intel          ]: HDA-Intel - HDA Intel
                       HDA Intel at 0xf9ff8000 irq 44

device_id=0device_id=Intelと同様に機能しました

再起動後に数値IDが切り替わるというレポートを見たことがあります。同じ名前の別のカードがない場合は、文字列を表示します。

編集:13.04で、extra-hdmi.confを変更せずにdefault.confの代わりにdefault.paを変更すると、トリックが行われました。一方、これには、アップグレード中に上書きされるリスクがありますか(行われますか?)。

0
qwazix