LINUX.ORG.RU

Bluez не запускает pulseaudio

 , , ,


0

1

Как я понимаю, сервер pulseaudio запускается автоматически при каком либо звуковом вызове. Так как у меня нет всяких de и вообще графики, pulseaudio не стартует при чистом запуске системы. По крайней мере в процессах мне его не удалось обнаружить. Включаю, к примеру, mocp - pulseaudio запускается, звук идет, всё отлично.

Теперь, собственно, к проблеме. У меня настроен bluetooth (Bluez) таким образом, что система работает в режиме приемника звука. Подключение устройства не проходит из-за незапущенного pulseaudio. Запускаю, к примеру, mocp - и вуаля, подключение идет и звук тоже. Запускать каждый раз mocp или mpd при перезапуках - неудобно и костыльно как то.

Хотелось бы, чтобы pulseadio стартовал при попытке подключения устройства, либо вообще при запуске системы и не пропадал.

P.S. Armbian (Ubuntu 16.04 ветка)



Последнее исправление: dargod (всего исправлений: 2)

сервер pulseaudio запускается автоматически при каком либо звуковом вызове

Только на сессионной шине.

intelfx ★★★★★
()

либо вообще при запуске системы

Это можно. Разработчики PA такой режим не рекомендуют, но если правильно приготовить, то можно.

https://www.freedesktop.org/wiki/Software/PulseAudio/Documentation/User/Syste...

Не забудь скопипастить нужные куски из default.pa в system.pa, а то обнаружишь, что запущенный таким образом PA вообще не хочет никаких дел иметь с bluez.

intelfx ★★★★★
()
Последнее исправление: intelfx (всего исправлений: 1)
Ответ на: комментарий от intelfx

Про запуск pulseaudio в системном режиме знаю. Но у меня он таким образом жалуется на dbus и не работает:

journalctl | grep bluetoothd

Apr 08 22:26:34 zeropi dbus[510]: [system] Rejected send message, 2 matched rules; type="method_call", sender=":1.10" (uid=115 pid=509 comm="/usr/bin/pulseaudio --daemonize=no --system --real") interface="org.freedesktop.DBus.ObjectManager" member="GetManagedObjects" error name="(unset)" requested_reply="0" destination="org.bluez" (uid=0 pid=507 comm="/usr/lib/bluetooth/bluetoothd ")
Apr 08 22:26:34 zeropi pulseaudio[509]: GetManagedObjects() failed: org.freedesktop.DBus.Error.AccessDenied: Rejected send message, 2 matched rules; type="method_call", sender=":1.10" (uid=115 pid=509 comm="/usr/bin/pulseaudio --daemonize=no --system --real") interface="org.freedesktop.DBus.ObjectManager" member="GetManagedObjects" error name="(unset)" requested_reply="0" destination="org.bluez" (uid=0 pid=507 comm="/usr/lib/bluetooth/bluetoothd ")

dargod
() автор топика
Ответ на: комментарий от dargod

Удалось решить проблему с dbus путем добавления

<policy user="pulse">
  <allow own="org.bluez"/>
  <allow send_destination="org.bluez"/>
  <allow send_interface="org.bluez.GattCharacteristic1"/>
  <allow send_interface="org.bluez.GattDescriptor1"/>
  <allow send_interface="org.freedesktop.DBus.ObjectManager"/>
  <allow send_interface="org.freedesktop.DBus.Properties"/>
</policy>
в /etc/dbus-1/system.d/bluetooth.conf

Действительно, системный режим pulseaudio оказался полезен в данном случае.

dargod
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.