PulseAudio-server

De PulseAudio-server draait op ZEVEN.

Gebruik

CLI

  1. Zorg dat je verbonden bent met het Zeus-netwerk.
  2. PULSE_SERVER=ZEVEN muziek_spelend_programma

GUI

  1. Zorg dat er een network discovery daemon zoals Avahi draait.
  2. pacman -Sy pulseaudio-zeroconf
  3. Kopieer /etc/pulse/default.pa naar ~/.config/pulse/default.pa
  4. Voeg load-module module-zeroconf-discover toe aan ~/.config/pulse/default.pa
  5. Herstart Pulseaudio service om nieuwe config te laden.

ZEVEN zou nu te kiezen moeten zijn in dropdownmenu's van programma's zoals pavucontrol.

Server setup

daemon.conf wordt altijd uitgevoerd door de pulseaudio daemon, client.conf door clients die met de daemon willen verbinden, default.pa door user instanties van de daemon en system.pa door system instanties van de daemon

Configureer PulseAudio

  1. Installeer PulseAudio: pacman -Sy pulseaudio pulseaudio-alsa
  2. /etc/pulse/client.conf
    1. Stel default-sink en default-source in.
    2. Zet autospawn op yes.
  3. /etc/pulse/daemon.conf
    1. Zet system-instance op yes.
  4. /etc/pulse/system.pa
    1. Stuur line in door naar line out. Voeg load-module module-loopback source=“alsa_input.pci-0000_00_1b.0.analog-stereo” sink=“alsa_output.pci-0000_00_1b.0.analog-stereo” toe.

Start PulseAudio daemon on boot

  1. Creëer pulse user en groep en voeg toe aan audio-groep.
    1. groupadd –system pulse
    2. useradd –system -g pulse -G audio –home-dir /var/run/pulse pulse
  2. Geef pulse user toegang tot D-Bus. Zie /etc/dbus-1/system.d/pulseaudio.conf.
  3. Creëer systemd service file. Zie /etc/systemd/system/pulseaudio.service.
  4. systemctl –system start pulseaudio
  5. systemctl –system enable pulseaudio

/etc/systemd/system/pulseaudio.service

[Unit]
Description=Sound Service
After=sound.target

[Service]
Type=notify
PrivateTmp=true
ExecStart=/usr/bin/pulseaudio --system --disallow-exit --disallow-module-loading
Restart=on-failure

[Install]
WantedBy=multi-user.target

/etc/dbus-1/system.d/pulseaudio.conf

<!DOCTYPE busconfig PUBLIC
  "-//freedesktop//DTD D-BUS Bus Configuration 1.0//EN"
  "http://www.freedesktop.org/standards/dbus/1.0/busconfig.dtd">
<busconfig>
    <policy user="pulse">
        <allow own="org.pulseaudio.Server"/>
        <allow send_destination="org.pulseaudio.Server"/>
        <allow receive_sender="org.pulseaudio.Server"/>
    </policy>
</busconfig>

Network access enablen

Voeg load-module module-native-protocol-tcp auth-anonymous=true toe aan /etc/pulse/system.pa. Eventueel kan er een IP-whitelist als optie worden meegegeven: auth-ip-acl=10.1.2.42,10.1.2.50.

Network publishing enablen

Installeer Zeroconf modules voor Pulseaudio en draai Avahi.

  1. systemctl –system enable avahi-daemon
  2. pacman -Sy pulseaudio-zeroconf
  3. Voeg load-module module-zeroconf-publish toe aan /etc/pulse/system.pa

Nuttige commando's

  • amixer
  • pacmd list-cards
  • pacmd list-sources
  • pacmd list-sinks
  • pactl load-module …
Print/export
Nuttige links