Bei Bedarf können Sie mpd-, pulseaudio- und raop2-Module verwenden:
- mpd zum Verwalten von Wiedergabelisten, Bibliotheken usw. (
sudo apt-get install mpd
)
- pulseaudio zum Verwalten von Audioausgängen: raop für AirPlay oder jedes andere Ausgabegerät wie Analogbuchse, HDMI, HTTP-Streaming-Dienst usw. (
sudo apt-get install pulseaudio
)
- raop2 modul für pulseaudio wenn das in pulseaudio eingebaute original raop modul nicht funktioniert
Ich musste pulseaudio aus dem Quellcode erstellen, um eine aktualisierte Version des RAOP-Moduls für pulseaudio zu erhalten.
Hier ist, was ich getan habe, um es zum Laufen zu bringen (es kann sich über fehlende Pakete beschweren, nur über sudo apt-get install
diese):
Installieren Sie MPD
sudo apt-get install mpd
Installieren Sie PulseAudio
Wahl A: Sie haben ein altes AirPlay-Gerät oder benötigen kein UDP-Streaming.
Es ist einfacher, aber weniger kompatibel.
sudo apt-get install pulseaudio
Wahl B: Sie möchten eine bessere Kompatibilität und Unterstützung für TCP- und UDP-Streaming
Dann benötigen Sie das raop2-Modul für pulseaudio, was bedeutet, dass Sie PA aus dem Quellcode erstellen.
Installiere git, falls du es noch nicht getan hast, und erstelle pulseaudio (siehe offizielle Anleitung ):
sudo apt-get install git intltool autoconf build-essential
cd
git clone https://github.com/hfujita/pulseaudio-raop2
cd pulseaudio-raop2
./bootstrap.sh
make
sudo make install
Bei meinem Setup musste ich libpulse.so.0 manuell symlinken:
cd ~/pulseaudio-raop2
sudo rm /usr/lib/arm-linux-gnueabi/libpulse.so.0
sudo ln -s `cd;pwd`/pulseaudio-raop2/src/.libs/libpulse.so.0 /usr/lib/arm-linux-gnueabi/libpulse.so.0
sudo chown root.root /usr/lib/arm-linux-gnueabi/libpulse.so.0.16.2
sudo chmod 744 /usr/lib/arm-linux-gnueabi/libpulse.so.0
oder nach Ihren Wünschen:
cd ~/pulseaudio-raop2
sudo rm /usr/lib/arm-linux-gnueabi/libpulse.so.0.16.2
sudo mv pulseaudio-raop2/src/.libs/libpulse.so.0 /usr/lib/arm-linux-gnueabi/libpulse.so.0.16.2
sudo chown root.root /usr/lib/arm-linux-gnueabi/libpulse.so.0.16.2
sudo chmod 744 /usr/lib/arm-linux-gnueabi/libpulse.so.0.16.2
Alles konfigurieren
MPD-Ersteinrichtung
Jetzt müssen wir MPD einrichten:
sudo vi /etc/mpd.conf
Legen Sie in dieser Datei Folgendes fest:
music_directory "/path/to/your/music"
user "mpd"
bind_to_address "127.0.0.1"
bind_to_address "192.168.x.y"
bind_to_address "2a01:xzy....your IPv6 if you want"
Wir müssen die Ausgabe bearbeiten, aber wir müssen zuerst den Namen der pulseaudio-Senke eingeben.
PulseAudio sinkt
Avahi / zeroconf ist nett zu haben, weil es die Erkennung von AirPlay-Geräten ermöglicht (über zeroconf / mDNS / Bonjour):
sudo apt-get install avahi
Jetzt können wir pulseaudio starten und versuchen, die RAOP-Module zu laden:
pulseaudio --start --log-target=syslog -vvvv --log-level=debug
pacmd load-module module-raop-discover
pacmd list-sinks | grep name:
Hier ist die Ausgabe zu meinem Setup:
name: <raop_output.Freebox-Player.local>
name: <raop_output.Freebox-Server.local>
name: <raop_output.Freebox-Player.local.2>
name: <raop_output.Freebox-Server.local.2>
Sie müssen dann /etc/mpd.conf
erneut bearbeiten und die folgenden Ausgaben hinzufügen:
audio_output {
type "pulse"
name "Freebox Player"
sink "raop_output.Freebox-Player.local"
format "44100:24:1"
}
Fügen Sie für jedes AirPlay-Gerät, zu dem Sie Musik streamen möchten, einen dieser Blöcke hinzu.
PulseAudio Konfiguration
Der letzte Teil ist das Einrichten von PA:
sudo vi /etc/pulse/client.conf
Unkommentiert autospawn = yes
lässt dies pulseaudio automatisch starten, wenn es benötigt wird.
sudo vi /etc/pulse/default.pa
Fügen Sie die folgende Zeile unten hinzu:
load-module module-raop-discover
Dadurch wird pulseaudio veranlasst, das RAOP-Erkennungsmodul beim Start zu laden.
Letzter Schritt
Es sollte jetzt funktionieren. Starten Sie MPD (stoppen Sie es zuerst, wenn es ausgeführt wird):
sudo /etc/init.d/mpd start
Warten Sie ein wenig, es dauert mindestens 10-15 Sekunden auf meinem RasPI, bis der Daemon ordnungsgemäß funktionieren kann.
Aktualisieren Sie Ihre Musikbibliothek (und warten Sie, bis sie fertig ist):
sudo apt-get install mpc
mpc update
Aktivieren Sie die Ausgänge nach Belieben (im Folgenden werden die konfigurierten MPD-Ausgänge aufgelistet und der erste aktiviert):
mpc outputs
mpc enable 1
Verwenden Sie jetzt Ihren bevorzugten MPD-Client, um Musik abzuspielen. Ich benutze ncmpcpp
auf der Kommandozeile und MPDroid auf meinem Handy / Tablet.
Fehlerbehebung
Starten Sie mpd in Verbose, pulseaudio mit maximaler Protokollierungsstufe und überwachen Sie die Protokolle:
mpd --verbose
pulseaudio --start --log-target=syslog --log-level=debug -vvvv
tail -f /var/log/mpd/mpd.log
tail -f /var/log/syslog
Versuchen Sie zuerst, pulseaudio zum Laufen zu bringen. Laden Sie einfach pulseaudio, laden Sie das RAOP-Erkennungsmodul, listen Sie die Senken auf, richten Sie die Standardsenke ein und versuchen Sie, etwas zu spielen:
paplay /usr/share/sounds/alsa/Front_Center.wav
Sobald Sie pulseaudio zum Laufen gebracht haben, versuchen Sie, MPD zum Laufen zu bringen.