または

または

PulseAudioは常に私のシステムで実行されており、競合が発生したり閉じられたときは常にすぐに再起動されます。しかし、私は実際に一度もスタートパルスオーディオ。

確認し/etc/init.d/てもう一度/etc/X11/Xsession.d/確認しましたが、systemctl list-units -aPulseAudioが見つかりませんでした。

PulseAudioを実行しなくても魔法のように自然に始まるように見えるのはなぜですか。

私はxinitとi3ウィンドウマネージャでPulseAudio 5と一緒にDebian 8(jessie)を使用しています。

ベストアンサー1

共有オブジェクトのlibpulse *ファミリに接続するすべてのプロセス(Xおよびi3ウィンドウマネージャを実行する前または後)と対話しようとする副産物で、ユーザープロセスからPulseAudioサーバーを暗黙的に自動生成できます。オーディオサブシステムPulseAudioの創設者であるLennart Poetteringは、これを確認しているようです。2015-05-29 systemd-develメーリングリストにEメールを送信する:

"pulseaudioは通常システムサービスではなくユーザーサービスです。ユーザーセッションがsystemdによって管理されるように完全に変換されない限り(可能性は低い)、systemdはこれを開始するのにまったく関与しません。

「PAは通常、セッション設定スクリプトまたはサービスで起動されます。たとえば、Gnomeではgnome-sessionです。ライブラリを使用している場合は、リクエスト時に自動的に生成されるため、欠落していることに注意してください。」

たとえば、Debian Stretch(テスト)では、WebブラウザIceWeaselは2つのlibpulse *共有オブジェクトにリンクされています。1)libpulsecommon-7.1.so; 2) libpulse.so.0.18.2:

k@bucket:~$ ps -ef | grep iceweasel
k        17318     1  5 18:58 tty2     00:00:15 iceweasel
k        17498  1879  0 19:03 pts/0    00:00:00 grep iceweasel
k@bucket:~$ sudo pmap 17318 | grep -i pulse
00007fee08377000  65540K rw-s- pulse-shm-2442253193
00007fee0c378000  65540K rw-s- pulse-shm-3156287926
00007fee11d24000    500K r-x-- libpulsecommon-7.1.so
00007fee11da1000   2048K ----- libpulsecommon-7.1.so
00007fee11fa1000      4K r---- libpulsecommon-7.1.so
00007fee11fa2000      8K rw--- libpulsecommon-7.1.so
00007fee121af000    316K r-x-- libpulse.so.0.18.2
00007fee121fe000   2044K ----- libpulse.so.0.18.2
00007fee123fd000      4K r---- libpulse.so.0.18.2
00007fee123fe000      4K rw--- libpulse.so.0.18.2

libpulse*に接続されている実行中のプロセスを確認できます。たとえば、最初にlibpulse *共有オブジェクトのリストをインポートしてから、各オブジェクトに対してlsofを実行します(注:これはDebian Stretch(テスト)からインポートされたため、出力が異なる場合があります)。

sudo find / -type f -name "*libpulse*"
*snip*
/usr/lib/x86_64-linux-gnu/pulseaudio/libpulsedsp.so
/usr/lib/x86_64-linux-gnu/pulseaudio/libpulsecommon-7.1.so
/usr/lib/x86_64-linux-gnu/libpulse.so.0.18.2
/usr/lib/x86_64-linux-gnu/libpulse-simple.so.0.1.0
/usr/lib/x86_64-linux-gnu/libpulse-mainloop-glib.so.0.0.5
/usr/lib/libpulsecore-7.1.so
/usr/lib/ao/plugins-4/libpulse.so

sudo lsof /usr/lib/x86_64-linux-gnu/pulseaudio/libpulsecommon-7.1.so
COMMAND     PID       USER  FD   TYPE DEVICE SIZE/OFF   NODE NAME
gnome-she   864 Debian-gdm mem    REG  252,1   524312 274980 /usr/lib/x86_64-linux-gnu/pulseaudio/libpulsecommon-7.1.so
gnome-set   965 Debian-gdm mem    REG  252,1   524312 274980 /usr/lib/x86_64-linux-gnu/pulseaudio/libpulsecommon-7.1.so
gnome-set  1232          k mem    REG  252,1   524312 274980 /usr/lib/x86_64-linux-gnu/pulseaudio/libpulsecommon-7.1.so
gnome-she  1286          k mem    REG  252,1   524312 274980 /usr/lib/x86_64-linux-gnu/pulseaudio/libpulsecommon-7.1.so
chrome     2730          k mem    REG  252,1   524312 274980 /usr/lib/x86_64-linux-gnu/pulseaudio/libpulsecommon-7.1.so
pulseaudi 18356          k mem    REG  252,1   524312 274980 /usr/lib/x86_64-linux-gnu/pulseaudio/libpulsecommon-7.1.so

これらのプロセスがPulseAudioを自動的に生成しないようにするには、~/.config/pulse/client.confを編集して次の行を追加します。

autospawn = no

通常、PulseAudioとそのライブラリはこの設定に従います。

実行中のプロセスを介してlibpulse *を接続すると、PulseAudioがそれほど早く再生成される理由を示すこともできます。 FreeDesktop.org ページ、「実行パルスオーディオ」、これを確認するようです:

「...通常、一部のバックグラウンドアプリケーションはすぐに再接続され、サーバーはすぐに再起動されます。」

コンソールから(xinitを実行して)i3ウィンドウマネージャを起動し、ディスプレイマネージャやデスクトップ環境を使用していないようです。この回答の残りの部分は、GNOME、KDEなどを使用している人のための詳細情報です。

GNOME/KDE 自動起動に関する追加情報

Debian Jessie(安定版)amd64のPulseAudioパッケージ(5.0-13)は、次の4つをインストールします。システムファイル:

  1. /etc/xdg/autostart/pulseaudio-kde.desktop
  2. /etc/xdg/autostart/pulseaudio.desktop
  3. /usr/bin/start-pulseaudio-x11
  4. /usr/bin/start-pulseaudio-kde

一部のグラフィカルセッションマネージャは自動的に実行されます。FreeDesktop.org自動起動スクリプトユーザーがログインしたとき。 PulseAudio自動起動スクリプトは、グラフィカルセッションマネージャに適切なPulseAudio起動スクリプトを実行するように指示します。

/usr/bin/start-pulseaudio-x11
/usr/bin/start-pulseaudio-kde

このスクリプトはPulseAudioクライアント/usr/bin/pactlを呼び出してPulseAudioサーバーを副産物として生成するPulseAudioモジュールをロードします(注:autospawnを "no"に設定すると、pactlはそれを尊重します。いいえPulseAudio サーバーを自動的に作成します。

詳細については、FreeDesktop.orgのページをご覧ください。」実行パルスオーディオ」。

さらに、他のディストリビューションでは、一部のディスプレイマネージャがPulseAudioを起動することがあります。ArchLinuxのSDDM。管理者が今までこの問題を解決している可能性があります。

おすすめ記事