web-dev-qa-db-ja.com

Pulseaudioは内蔵のアナログオーディオを検出せず、NVidiaのHDMIのみを検出します

buntu 16.04 LTSにいます

この問題を回避するには、ホームディレクトリで/tmpに移動し、chownを使用してpulsaudio一時フォルダーをユーザー名の下に配置します。しかし、明らかに、これらのフォルダーはsystem/rootによって作成されたため、chownされるべきではありません。

誰もがこの問題に対する適切な解決策やより良い提案を知っていますか?

どうもありがとう!

更新:

alsamixer -c 1を実行すると、HDA Intelがカードとして、Realtek ALC1150がチップとして提供されます。どちらも正しいです。マスターの電源がオンになり、音量が73になります。ヘッドフォンがミュートされます。 S/PDIFはミュートされています。

lspci -nnk | grep -A2 Audioの結果:

00:03.0 Audio device [0403]: Intel Corporation Xeon E3-1200 v3/4th Gen Core Processor HD Audio Controller [8086:0c0c] (rev 06)
  Subsystem: Intel Corporation Xeon E3-1200 v3/4th Gen Core Processor HD Audio Controller [8086:2010]
  Kernel driver in use: snd_hda_intel
  Kernel modules: snd_hda_intel
00:1b.0 Audio device [0403]: Intel Corporation 9 Series Chipset Family HD Audio Controller [8086:8ca0]
  Subsystem: Gigabyte Technology Co., Ltd 9 Series Chipset Family HD Audio Controller [1458:a0b2]
  Kernel driver in use: snd_hda_intel
  Kernel modules: snd_hda_intel
01:00.1 Audio device [0403]: NVIDIA Corporation Device [10de:0fba] (rev a1)
   Subsystem: Gigabyte Technology Co., Ltd Device [1458:368e]
   Kernel driver in use: snd_hda_intel

aplay -lの結果:

**** List of PLAYBACK Hardware Devices ****

card 1: PCH [HDA Intel PCH], device 0: ALC1150 Analog [ALC1150 Analog]
  Subdevices: 0/1
  Subdevice #0: subdevice #0

card 1: PCH [HDA Intel PCH], device 1: ALC1150 Digital [ALC1150 Digital]
  Subdevices: 1/1
  Subdevice #0: subdevice #0

card 2: NVidia [HDA NVidia], device 3: HDMI 0 [HDMI 0]
  Subdevices: 1/1
  Subdevice #0: subdevice #0

card 2: NVidia [HDA NVidia], device 7: HDMI 1 [HDMI 1]
  Subdevices: 1/1
  Subdevice #0: subdevice #0

card 2: NVidia [HDA NVidia], device 8: HDMI 2 [HDMI 2]
  Subdevices: 1/1
  Subdevice #0: subdevice #0

card 2: NVidia [HDA NVidia], device 9: HDMI 3 [HDMI 3]
  Subdevices: 1/1
  Subdevice #0: subdevice #0

pactl list short sinksの結果:

0   auto_null   module-null-sink.c  s16le 2ch 44100Hz   RUNNING
1
stucash

解決できない場合、これはハック(一時的な解決策)です。

編集してpulseaudioを無効にする/etc/Pulse/client.conf(再起動を続けるため、殺すだけでは十分ではありません。)

コメントを外し(#を前から削除)、編集します

autospawn = no

これでpulseaudioを殺すことができます。

$ pulseaudio --kill

それでおしまい。

次のコマンドを実行して自動生成されていないことを再確認します:

$ ps cax | grep pulseaudio

まだ実行中の場合、実行

$ systemctl --user stop pulseaudio.socket && systemctl --user stop pulseaudio.service

これでアナログオーディオが機能し始めます。

ボリュームを変更するには、ボリュームキー(または任意のkbdショートカット)を次の場所に再割り当てします。

amixer set Master 5%+    
amixer set Master 5%-

Bluetoothヘッドフォンを使用するときなど、pulseaudioを再度有効にしてオーディオを他の場所にリダイレクトする必要があるときはいつでも行います。

$ pulseaudio --start

そして、使用していたメディアアプリを再起動します。これで、マザーボードからのオーディオが停止し、bluetoothが再生を開始します(pavucontrolを使用して確認してください)。

「pas」や「pak」またはkbdショートカットなどのエイリアスを作成して、Pulseをすばやく開始および停止します。

1
music

最近、Radeon GPUに統合されたHDMIサウンドカードが原因で、Xonarサウンドカードに問題が発生しました。

私にとっては、Intelおよびhdmiモジュールをブラックリストに載せ、ALSAによってロードされないようにして、問題を修正しました。

これを行うには、/etc/modprobe.d/alsa-base.confファイルの先頭に次の2行を追加します。

blacklist snd_hda_intel
blacklist snd_hda_codec_hdmi

その後、PCを再起動し、それが役立つかどうかを確認します。

1
Szponiasty

テストでは、ハードウェアとドライバーモジュールが正常に動作しており、オーディオを使用する準備ができていることが示されています。しかし、pulseaudioが要求する前に、他の何かがアナログカードを単独で制御しているように見えます。

使用して確認してください:

Sudo fuser -v /dev/snd/*
Sudo fuser -v /dev/dsp

それをアンインストールし、再起動して確認します。

何も見つからなかった場合、一般的な犯人は「tim病」です(kde-fullがインストールすると思います)。デーモンのみを削除します(依存関係としてti病自体を削除することはできません)。

Sudo aptitude purge timidity-daemon

再起動して確認します。

それでも解決しない場合は、オーディオを使用している可能性のあるインストールしたものを思い出し、アンインストールして再起動してみてください。

この種のPulse/alsaの問題は、トラブルシューティングに多くの時間を費やし、問題を「理解」しない限り、単純に思えますが、解決するのは非常に困難です。そのため、時間があるまで持続するか、一時的なハックを使用してください。

0
music