Themabewertung:
  • 0 Bewertung(en) - 0 im Durchschnitt
  • 1
  • 2
  • 3
  • 4
  • 5
Line in, Bluetooth, etc. mit PulseAudio
#1
Music 
Hier sammel ich mal ein paar informationen wie man den Pi dazu bringen kann sich besser mit seinem Handy oder iPod zu verbinden.


Das ganze beruht auf PulseAudio und wurde so mit dem Raspberry Pi 4 unter LibreElec 9.1.001 getestet, ob es woanders funktioniert weis ich nicht, aber solange PulseAudio installiert ist sollte es gehen.

Autostart Script: Viele Befehle müssen bei jedem Start ausgeführt werden. Dazu müssen sie in einem Autostart script eingetragen sein.
Unter LibreElec ist das unter /storage/.config/autostart.sh
Unter osmc ist das /etc/rc.local (siehe hier https://osmc.tv/wiki/general/running-scr...-shutdown/)

Befehle: Die gegebenen Befehle müssen in ein Terminal, zB mit SSH eingegeben werden, ggf. mit sudo davor.


PulseAudio aktivieren

Für die meisten hier beschriebenen Sachen muss PulseAudio die installierten Soundkarten erkennen und übernehmen. Der Befehl 
Code:
pactl list modules short
listet die aktivierten Module. Hier sollte "module-udev-detect" enthalten sein. Wenn nicht muss in das autostart script diese Zeile eingefügt werden:
Code:
pactl load-module module-udev-detect
danach ein Neustart.



Audio Line In

Wenn eine Soundkarte mit Line-In installiert ist, kann man hier einen Player anschließen und die Musik dann über den Pi ausgeben lassen, man hat also effektiv einen Aux-Anschluss.
Zu sehen welcher Anschluss der Line-In ist:
Code:
pactl list sources short
Dort sollten jetzt ein paar Audioquellen erscheinen, bei mir ist es zB "alsa_input.usb-0d8c_C-Media_USB_Audio_Device-00.analog-mono"
Diesen Namen kopieren und mit folgendem Befehl in das autostart script einfügen:
Code:
pactl load-module module-loopback source=NAME_HIER latency_msec=50



Bluetooth Audio

Dadurch dass wir im ersten Befehl, zumindest unter LibreElec notwendig PulseAudio aktiviert haben, funktioniert nun auch Bluetooth Audio von einem verbundenen Gerät.

Um Bluetooth Auto-Connect einzurichten, kann man das gerät auch in das autostart script eintragen.
Achtung, dies verlangsamt das Hochfahren so lange bis das Gerät verbunden ist, also sollte lieber ein cron-task oder etwas anderes genutzt werden!
Mit bluetoothctl paired-devices die Mac-Addresse des Gerätes herausfinden.
Diese Addresse im gewünschten Autostart-Script mit
Code:
bluetoothctl connect ADRESSE
einfügen



Bluetooth Audio übersteuern verhindern

Falls der Sound über Bluetooth viel zu laut ist und somit stark übersteuert, so kann der Bluetooth eingang im Soundtreiber auf 80% Lautstärke gestellt werden.
Dies braucht nur einmal ausgeführt werden und wird im Soundtreiber gespeichert.
Bluetooth Audio Geräte auflisten:
Code:
pactl list short sources | grep a2dp_source
Dort sollte dann nur eins stehen mit einer Nummer (NR) davor. Für dieses setzen wir jetzt die Lautstärke auf 80%
Code:
pactl set-source-volume NR 80%





Bluetooth Audio über Kodi wiedergeben

Normalerweise, zumindest mit LibreElec, wird Bluetooth Audio einfach über den Soundtreiber wiedergegeben. Kodi bekommt davon nichts mit, zeigt also davon auch nichts an.
Wenn man es lieber über Kodi laufen lassen möchte, zB um eine Visualisierung zu haben etc geht das auch.
Dazu in das Autostart Script eintragen:
Code:
pactl load-module module-null-sink sink_name=bt_sink
pactl set-default-sink bt_sink
pactl load-module module-rtp-send source=bt_sink.monitor destination=127.0.0.1 port=7777 source_ip=127.0.0.1
Um nun Bluetooth Audio in Kodi wiederzugeben brauchen wir einen Eintrag in den Favoriten, dazu die Datei kodi/userdata/favourites.xml bearbeiten und diese Zeile in die Mitte einfügen: (Falls die Datei nicht existiert kann eine neue erstellt und das Beispiel unten eingefügt werden)
Code:
<favourite name="Bluetooth">PlayMedia(rtp://127.0.0.1:7777)</favourite>
Die Datei favourites.xml sieht dann zB so aus:
Code:
<favourites>
   <favourite name="IBusCommunicator" thumb="/storage/.kodi/addons/plugin.script.ibuscommunicator/icon.png">RunAddon(plugin.script.ibuscommunicator)</favourite>
   <favourite name="Digitale Service Anzeige für BMW" thumb="/storage/.kodi/addons/script.bmwdsa/icon.png">RunAddon(script.bmwdsa)</favourite>
   <favourite name="Bluetooth">PlayMedia(rtp://127.0.0.1:7777)</favourite>
</favourites>

Jetzt kann über die Favoriten der Bluetooth Stream geöffnet werden.



Airplay über Wifi, aber trotzdem 4G am Handy benutzen

Wenn man den Wifi Hotspot in den Pi-Einstellungen aktiviert kann man sich mit dem Handy mit dem Pi verbinden und über Airplay komfortabel Musik hören. Zumindest bei mir funktioniert dann aber das 4G auf dem Handy nicht mehr.
Um trotzdem noch das 4G benutzen zu können kann man in den Einstellungen vom iPhone neben dem Wlan Netzwerk auf das i klicken und sich die IP-Adresse und die Netzmaske merken. Dann das IP konfigurieren auf Manuell stellen und dort die IP und Maske eintragen, aber Router leer lassen.
Nun wird oben in der Leiste wieder 4G angezeigt aber Airplay und andere Apps wie die Kodi Remote funktionieren trotzdem noch.




Alle Änderungen, bis auf die Lautstärke Änderung, können wieder rückgängig gemacht werden, in dem die jeweiligen Zeilen aus den jeweiligen Dateien wieder entfernt oder auskommentiert werden.
Antworten


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste