パルスオーディオの問題 - pavucontrolとpacmdがパルスオーディオに接続されていません。

パルスオーディオの問題 - pavucontrolとpacmdがパルスオーディオに接続されていません。

私はpulseaudio次のパッケージでDebian Jessie(8.3)を実行しています。私が知る限り、サウンドに関連するすべて(含まれているpulseaudio)は基本的なJessieパッケージに対応しています。私は何もカスタマイズしませんでした。私も何もしなかったしsystemd、それについて知らない。

dpkg -l | grep pulseaudio
ii  gstreamer1.0-pulseaudio:amd64    1.4.4-2               amd64                 GStreamer plugin for PulseAudio
ii  pulseaudio                       5.0-13                amd64                 PulseAudio sound server
ii  pulseaudio-esound-compat         5.0-13                amd64                 PulseAudio ESD compatibility layer
ii  pulseaudio-module-gconf          5.0-13                amd64                 GConf module for PulseAudio sound server
ii  pulseaudio-module-x11            5.0-13                amd64                 X11 module for PulseAudio sound server
ii  pulseaudio-utils                 5.0-13                amd64                 Command line tools for the PulseAudio sound server

ただ古いSound Blaster Live!カードを最新のAsus Xonar DXカードに交換しました。音が聞こえますが、マイクは機能しません。また、パルスオーディオの使用に問題があります。パルスオーディオの問題(少なくとも部分的に)はカードの交換前に発生しましたが、マイクの問題を解決する前にまず問題を解決する必要があるようです。したがって、この質問はPulseaudioについてです。

新しいサウンドカードを再インストールした後、今日再起動するまではしばらく私を悩ませましたが、少なくともうまくいきpavucontrolました。pacmd

これは部分的に一種の権限の問題のようですが、何かを知りません。グループpulseaudioにユーザーを追加する以外は、pulse手動で変更したり関連した内容を適用したりしませんでしたpulse-connect。私はそれがどのような変化をもたらすとは思わなかったし、何も気づかなかった。

問題を説明するために、以下のさまざまなコマンドの出力をrootとユーザーとして追加しました。標準ルールによれば、前のコマンドは$ユーザが実行するコマンドを表し、前のコマンドはルートが実行するコマンドを表します。#

$ pulseaudio -vv
I: [pulseaudio] main.c: setrlimit(RLIMIT_NICE, (31, 31)) failed: Operation not permitted
I: [pulseaudio] main.c: setrlimit(RLIMIT_RTPRIO, (9, 9)) failed: Operation not permitted
D: [pulseaudio] core-rtclock.c: Timer slack is set to 50 us.
D: [pulseaudio] core-util.c: RealtimeKit worked.
I: [pulseaudio] core-util.c: Successfully gained nice level -11.
I: [pulseaudio] main.c: This is PulseAudio 5.0
D: [pulseaudio] main.c: Compilation host: x86_64-pc-linux-gnu
D: [pulseaudio] main.c: Compilation CFLAGS: -g -O2 -fstack-protector-strong -Wformat -Werror=format-security -Wall -W -Wextra -pipe -Wno-long-long -Wno-overlength-strings -Wunsafe-loop-optimizations -Wundef -Wformat=2 -Wlogical-op -Wsign-compare -Wformat-security -Wmissing-include-dirs -Wformat-nonliteral -Wpointer-arith -Winit-self -Wdeclaration-after-statement -Wfloat-equal -Wmissing-prototypes -Wredundant-decls -Wmissing-declarations -Wmissing-noreturn -Wshadow -Wendif-labels -Wcast-align -Wstrict-aliasing -Wwrite-strings -Wno-unused-parameter -ffast-math -fno-common -fdiagnostics-show-option
D: [pulseaudio] main.c: Running on host: Linux x86_64 3.16.0-4-amd64 #1 SMP Debian 3.16.7-ckt20-1+deb8u3 (2016-01-17)
D: [pulseaudio] main.c: Found 6 CPUs.
I: [pulseaudio] main.c: Page size is 4096 bytes
D: [pulseaudio] main.c: Compiled with Valgrind support: no
D: [pulseaudio] main.c: Running in valgrind mode: no
D: [pulseaudio] main.c: Running in VM: no
D: [pulseaudio] main.c: Optimized build: yes
D: [pulseaudio] main.c: FASTPATH defined, only fast path asserts disabled.
I: [pulseaudio] main.c: Machine ID is 501a8b6f724c87677a6f6bb351f93f66.
I: [pulseaudio] main.c: Session ID is 55.
E: [pulseaudio] core-util.c: Failed to create secure directory (/run/user/1000/pulse): Permission denied

rootユーザーとしてこのコマンドを実行すると、出力は同じになります。

$ pacmd
Failed to create secure directory (/run/user/1000/pulse): Permission denied
No PulseAudio daemon running, or not running as session daemon

# pacmd
Daemon not responding.

Pavucontrolは(最初に端末から)提供します。

$ pavucontrol 
Failed to create secure directory (/run/user/1000/pulse): Permission denied
Failed to create secure directory (/run/user/1000/pulse): Permission denied

そして、次のボックスが表示されます。 (この写真はterdonからのものです。ArchでPulseaudioが破損しています:pa_stream_writable_size()失敗:接続が終了しました、私が見たのと同じです。 ) Pavucontrolポップアップボックスの表示

# pavucontrol 

[A popup box appears with]
Establishing connection to PulseAudio. Please wait.

findディレクトリに 'ulse'と一致するものが見つかりません~/.config

~/.config$ find . -name '*ulse*'

何も返しません。

Pulseaudio走っているようです。

# ps aux | grep pulse
faheem    5057  0.1  0.0 376208 10432 ?        S<l  13:54   0:35 /usr/bin/pulseaudio --start --log-target=syslog
faheem    5065  0.0  0.0 122904  5164 ?        S    13:54   0:00 /usr/lib/pulseaudio/pulse/gconf-helper

同じsystemd

# ps aux | grep systemd
root       273  0.0  0.0  33092  6864 ?        Ss   13:50   0:00 /lib/systemd/systemd-journald
root       290  0.0  0.0  41644  3864 ?        Ss   13:50   0:00 /lib/systemd/systemd-udevd
root      1067  0.0  0.0  28268  2968 ?        Ss   13:50   0:00 /lib/systemd/systemd-logind
message+  1100  0.0  0.0  43160  4432 ?        Ss   13:50   0:00 /usr/bin/dbus-daemon --system --address=systemd: --nofork --nopidfile --systemd-activation
faheem    4435  0.0  0.0  36432  4544 ?        Ss   13:51   0:00 /lib/systemd/systemd --user

ファイルの権限は/run/user/1000/pulse次のとおりです。

/run/user/1000/pulse# ls -laR
.:
total 4
drwx------ 2 root   root    80 Feb 22 13:54 .
drwx------ 6 faheem faheem 120 Feb 22 13:54 ..
srwxrwxrwx 1 faheem faheem   0 Feb 22 13:54 native
-rw------- 1 faheem faheem   5 Feb 22 13:54 pid

ベストアンサー1

Pulseaudioこの問題は、rootで特定のコマンドを実行すると発生するようです。これは明らかに変更されました/run/user/1000/pulse。再起動すると問題が解決しました。

これらは今

$ ls  -lah /run/user/1000/pulse/
total 4.0K
drwx------ 2 faheem faheem 100 Feb 22 21:50 .
drwx------ 6 faheem faheem 120 Feb 22 21:41 ..
srwxrwxrwx 1 faheem faheem   0 Feb 22 21:50 cli
srwxrwxrwx 1 faheem faheem   0 Feb 22 21:41 native
-rw------- 1 faheem faheem   5 Feb 22 21:41 pid

私の質問に提示された結果との違いに注意してください。

/run/user/1000/pulse# ls -laR
.:
total 4
drwx------ 2 root   root    80 Feb 22 13:54 .
drwx------ 6 faheem faheem 120 Feb 22 13:54 ..
srwxrwxrwx 1 faheem faheem   0 Feb 22 13:54 native
-rw------- 1 faheem faheem   5 Feb 22 13:54 pid

つまり、/run/user/1000/pulseルートが所有します。

しかし、それが簡単に壊れることができれば弱すぎるでしょう。

おすすめ記事