Portál AbcLinuxu, 5. května 2025 19:00

Dotaz: pulseaudio server: nefunkční dva zdroje zvuju

Skeletonix avatar 30.6.2017 21:37 Skeletonix | skóre: 18 | Praha
pulseaudio server: nefunkční dva zdroje zvuju
Přečteno: 419×
Odpovědět | Admin

Ahoj Udělal jsem si z Raspberry (Rasbian) Pulseaudio server pro přehrávání zvuku. K Rasberry jsou připojeny reproduktory. Na server posílá přes síť zvuk ještě openSuse (Leap 42.2). Pokud přehrávám soubor lokálně na Raspberry, tak vše funguje. Pokud přehrávám zvuk jen na openSuse, tak se zvuk přehraje přes Raspbery také v pořádku. Pokud chci přehrát zvuk lokálně i vzdáleně zároveň, tak se přehraje zvuk jen ze zařízení, kde bylo přehrávání aktivováno první. V logu se objevují chyby :

Jun 30 19:18:58 raspberrypi pulseaudio[30822]: [pulseaudio] module-zeroconf-publish.c: avahi_entry_group_add_service_strlst() failed: Local name collision
Jun 30 19:18:58 raspberrypi pulseaudio[30822]: [avahi-ml] module-zeroconf-publish.c: avahi_entry_group_add_service_strlst(): Local name collision
Jun 30 19:19:06 raspberrypi pulseaudio[16152]: Error opening PCM device hw:0: Device or resource busy
...
Jun 30 19:19:48 raspberrypi pulseaudio[16152]: Error opening PCM device hw:0: Device or resource busy
...
Jun 30 19:20:52 raspberrypi pulseaudio[16152]: Error opening PCM device hw:0: Device or resource busy
...
Jun 30 19:24:50 raspberrypi pulseaudio[31706]: [pulseaudio] main.c: D-Bus name org.PulseAudio1 already taken.
Jun 30 19:24:50 raspberrypi pulseaudio[31703]: [pulseaudio] main.c: Daemon startup failed.

Pulseaudio spouštím ručně (bez služby systemd) přes příkaz:

pulseaudio --start

1. Mělo by být možné přehrávat zvuk na obou zařízení zároveň? 2. Pokud ano, nevíte kde mám chybu, že se u mě tak neděje?

Nástroje: Začni sledovat (0) ?Zašle upozornění na váš email při vložení nového komentáře.

Odpovědi

Pavel 'TIGER' Růžička avatar 30.6.2017 21:50 Pavel 'TIGER' Růžička | skóre: 54
Rozbalit Rozbalit vše Re: pulseaudio server: nefunkční dva zdroje zvuju
Odpovědět | | Sbalit | Link | Blokovat | Admin
Takže pokud to chápu správně, tak vše funguje, pokud není nutné mixovat zdroje. V takovém případě je upřednostněn zdroj, který byl spuštěn jako první. Samozřejmě, že by měl mix fungovat. Ovšem, když se podívám na ty chyby v logu, tak ty poslední dvě považuji za dost závažné, obzvláště tu poslední. Ale proč se tak děje netuším. Jsi si jist, že máš nainstalované, všechny potřebné závislosti?
30.6.2017 21:58 dustin | skóre: 63 | blog: dustin
Rozbalit Rozbalit vše Re: pulseaudio server: nefunkční dva zdroje zvuju
Odpovědět | | Sbalit | Link | Blokovat | Admin
Tipuju si, že se ti snaží pustit druhou instanci pulseaudia - proto už jsou lokální zvukovka i jméno v dbusu obsazené. Provozuješ PA v system-wide režimu? To je IMO pro tohle použití potřeba.
Skeletonix avatar 1.7.2017 15:46 Skeletonix | skóre: 18 | Praha
Rozbalit Rozbalit vše Re: pulseaudio server: nefunkční dva zdroje zvuju
Nastavil jsem pulse audio do režimu SystemWide, ale teď se nemohu na server připojit z openSuse. Na serveru se v logu objevuje:
Jul 01 13:39:13 raspberrypi pulseaudio[3112]: [pulseaudio] protocol-native.c: Denied access to client with invalid authentication data.
Jul 01 13:39:20 raspberrypi pulseaudio[3112]: [pulseaudio] protocol-native.c: Denied access to client with invalid authentication data.
Uživ oprávnění jsem dělal podle návodu:
addgroup --system pulse
adduser --system --ingroup pulse --home /var/run/pulse pulse
addgroup --system pulse-access

# Some distributions restrict access to the sound devices to a group audio
adduser pulse audio

# Add a user to the pulse-access group
adduser pi pulse-access
Skeletonix avatar 1.7.2017 15:47 Skeletonix | skóre: 18 | Praha
Rozbalit Rozbalit vše Re: pulseaudio server: nefunkční dva zdroje zvuju
Pulseadio spouštím jako službu systemd:
# systemd service spec for pulseaudio running in system mode -- not recommended though!
# on arch, put it under /etc/systemd/system/pulseaudio.service
# start with: systemctl start pulseaudio.service
# enable on boot: systemctl enable pulseaudio.service 
[Unit]
Description=Pulseaudio sound server
After=avahi-daemon.service network.target

[Service]
ExecStart=/usr/bin/pulseaudio --system --disallow-exit --disallow-module-loading --log-target=syslog
ExecReload=/bin/kill -HUP $MAINPID

[Install]
WantedBy=multi-user.target

1.7.2017 15:55 dustin | skóre: 63 | blog: dustin
Rozbalit Rozbalit vše Re: pulseaudio server: nefunkční dva zdroje zvuju
A zkoušel jsi auth-anonymous?
Skeletonix avatar 1.7.2017 21:49 Skeletonix | skóre: 18 | Praha
Rozbalit Rozbalit vše Re: pulseaudio server: nefunkční dva zdroje zvuju
V /etc/pulse/default.pa mám:

load-module module-native-protocol-tcp auth-ip-acl=127.0.0.1;10.0.0.0/24 auth-anonymous=1
a nepřipojí se to.
Skeletonix avatar 1.7.2017 22:04 Skeletonix | skóre: 18 | Praha
Rozbalit Rozbalit vše Re: pulseaudio server: nefunkční dva zdroje zvuju
Chyba :-), bylo to potřeba povolit v /etc/pulse/system.pa. Teď se to připojí, ale mixování stále nefunguje, v logu je:
Jul 01 20:01:15 raspberrypi pulseaudio[692]: [alsa-sink-HiFiBerry DAC+ HiFi pcm512x-hifi-0] alsa-sink.c: Error opening PCM device hw:0: Device or resource busy
Jul 01 20:01:15 raspberrypi pulseaudio[692]: [alsa-sink-HiFiBerry DAC+ HiFi pcm512x-hifi-0] alsa-sink.c: Error opening PCM device hw:0: Device or resource busy
Skeletonix avatar 1.7.2017 22:41 Skeletonix | skóre: 18 | Praha
Rozbalit Rozbalit vše Re: pulseaudio server: nefunkční dva zdroje zvuju
Už to "mám", při startu kodi se automaticky spustí pulseaudio pod uživatelem pod kterým běží. Pokud tuto instanci kodi killnu, tak mixování funguje korektně. Jen se mi nedaří přijít na to proč když se spustí Kori (systemd):
ExecStart = /usr/bin/xinit /usr/bin/dbus-launch --exit-with-session /usr/bin/kodi -- :0 -nolisten tcp vt7
tak se spustí pod uživatelem znovu Pulseaudio.

Založit nové vláknoNahoru

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.