このシングルユーザーFreeBSDデスクトップでは、さまざまなデスクトップコンポーネントが独自のdbus
インスタンスを使用して通信します。
しかし、pulseaudio
返品システム全体と会話しようとしましたがdbus
(アクティブではありません)、アクセスできず、次のメッセージでログをスパムしました。
Failed to connect to system bus: Failed to connect to socket /var/run/dbus/system_bus_socket: No such file or directory
dbus
-serviceを手動で起動すると、pulseaudio
次のように記録されます。
... : [(null)] oss-util.c: '/dev/dsp0' doesn't support full duplex
... : [(null)] oss-util.c: '/dev/dsp1' doesn't support full duplex
... : [(null)] oss-util.c: '/dev/dsp2' doesn't support full duplex
... : [(null)] oss-util.c: '/dev/dsp3' doesn't support full duplex
それから黙って。なぜシステム全体と通信するのですかdbus
?システム全体のサービスを有効にすると、何が得られますか?
ベストアンサー1
システム全体のdbusと通信する必要があるのはなぜですか?
高い優先順位とリアルタイム設定のために、システム全体のdbusと通信を試みます。
望むより:
https://github.com/pulseaudio/pulseaudio/blob/v13.0/src/pulsecore/core-util.c#L706-L717
https://github.com/pulseaudio/pulseaudio/blob/v13.0/src/pulse/util.c#L406-L417
https://github.com/pulseaudio/pulseaudio/blob/v13.0/src/pulsecore/rtkit.c
システム全体のサービスを有効にすると、何が得られますか?
FreeBSDには何もありません。私が知っている限り、RealTimeKitはFreeBSDでは利用できません。 (コードではそうしようとしますが、実際には「必要」はありません。)追加情報にはLinuxが必要であることがわかります。
https://git.0pointer.net/rtkit.git/tree/README#n217
dbusに接続できない場合は再試行しているように見えますが、dbusに接続できず、優先順位/リアルタイムを設定できない場合はエラーを返して再試行しません。