MS4H Clients / Soundkarten Management / Squeezelite

Autor
Logo

Status

BETA

Version0.2.5
Min. LB Version

LB 2.0.0

DownloadLoxBerry-Plugin-MS4H_Client_v0.2.5.zip
ZweckStellt Squeezelite Clients für MusicServer4Home zur Verfügung incl. Soundkarten-Management wie Equalizer und Kanal-Splitting
Das Plugin kann auch für nicht MS4H Anwendungen wie das Squeezelite Player Plugin oder andere LMS Installationen verwendet werden.  
LanguagesDE, EN
DiskussionPlugin: MS4H Clients (Squeezelite) + Soundkarten-Setup für andere Plugins - loxforum.com
 Version History...

Version 0.1.4

  • erste geschlossene Beta Version

Version 0.1.5

  • improve → verbesserte Anzeige der Soundkarten bei Verwendung des Squeezelite Player Plugin

Version 0.1.6

  • fix → Checkboxen im Setup haben nicht sauber funktioniert.

Version 0.2.0

  • erste öffentliche Beta Version
  • improve → min. Versionsprüfung des MS4H
  • improve → interne Soundkarte wird bei der Installation abgeschaltet da diese keinen EQ unterstützt und keinen Ton ausgibt
  • improve → Lautstärken-Steuerung der Soundkarten unterstützt jetzt auch Audio-DACs wie HifiBerry
  • new → Squeezelite Binarys Update-Funktion
  • fix → viele kleine Fehler (Zwinkern)

Version 0.2.1

  • fix → Update hat die Version nicht immer angezeigt
  • improve → IP und Hostname kann im Setup verwendet werden
  • improve → Player-Kanalzuordnung mit anzeige auf welcher Soundkarte sich die Kanäle befinden

Version 0.2.2

  • fix → update-skript
  • fix → kleinere unwichtige Fehler
  • improve → Equalizer ist bei MS4H als Basis ausgeblendet, der Text weist jetzt darauf hin das die Bedienung über MS4H Webui oder Loxone App erfolgen muss 

Version 0.2.3

  • new → Erkennung beim anlegen/speichern einer externen Zonen im MS4H (1.4.1.3) ob es sich um ein Loxberry Plugin handelt. Player muss bereits laufen
  • MS4H min. Version auf 1.4.1.3 (beta) gestellt. Wenn man keine internen Zonen hat kann es sonst zu Fehlern kommen.

Version 0.2.4

  • fix → Equalizer arbeitet nicht immer aus der Loxone App/WebUI

Version 0.2.5

  • new → GPIO als Gruppe schalten
  • new → Unterstützung von Soundkarten Volume die nur PCM können z.B. Dynaudio Hub (Iluminatus23)
  • new → HATS: Pomodori - Pirate Audio DAC und Audio SHIM / Hifiberry AMP 100

Inhalt




Raspberry Soundkarte

Wichtig!
Bei der Installation wird die interne, auf dem Rasapiberry verbaute Soundkarte anschaltet.
Diese ist nicht kompatibel mit den Equalizer-Pakten. 
Bei der Deinstallation des Plugin wird die Karte wieder aktiviert, und ist nach einem Neustart des Loxberry wieder verfügbar.


MusicServer4Home min. Version

Wichtig!
Um das Plugin mit dem MS4H nutzen zu können muss dieser mindestens in der Version 1.4.1.3 (aktuell nur Beta) installiert sein.
Die interne Soundkarten des Raspberry wird nicht unterstützt da diese keinen EQ unterstützt und keinen Ton ausgibt wenn der EQ installiert ist. 


Funktion des Plugins

Das Plugin stellt in erster Line die Möglichkeit bereit mit dem Loxberry Squeezelite Clients und das dazu benötigte Soundkarten-Management für den MS4H bereit zustellen.
Zusätzlich kann das Plugin für andere Anwendungen wie das Squeezelite Player Plugin genutzt werden

Möglichkeiten

  • Soundkarten und Raspberry Audio HATs verwalten und einbinden
  • Player mit Soundkarten oder nur Soundkarten für andere Anwendungen anlegen
    • Splitting von Kanälen möglich Stereo-Downmix (wenn von Hardware unterstützt)
      So können zB aus einer 7.1 Soundkarte bis zu 8 Zonen erzeugt werden, oder aus einer Hifiberry Amp2 bis zu 2 Zonen usw.
    • Basis-Volume von Hardware- und Player Soundkarte ist im WebUI einstellbar.
    • Equalizer mit 10 Bändern, der bei der Verwendung des MS4H über die Loxone-App oder das MS4H WebUI gesteuert werden kann
  •  Über den MS4H-PowerManager kann auch ein GPIO je Zone geschaltet werden.

Installation

Wie jedes Plugin wird es über die Plugin-Verwaltung des Loxberry installiert.

Konfigurationsoptionen

Step 1 - Setup des Plugin

  • Wählen des Basis-System 

    • Kein System gewählt -  wird genutzt wenn ihr eine LMS installiert habt und kein Squeezelite Player Plugin oder MS4H nutzt.
      Ihr könnt die Player und Soundkarten incl. dem Equalizer je Player nutzen
    • MusicServer4Home - wird gewählt wenn ihr eine MS4H installation nutzt.
      Ihr könnt die Player incl. dem Equalizer nutzen, EQ wird per Loxone-App oder MS4H WebUI gesteuert.
      Zusätzlich kann je Player ein GPIO geschaltet werden, der direkt vom PowerManager des MS4H geschaltet wird.
    • Squeezelite Player Plugin -  Wird genutzt wenn ihr zusätzlich auf dem gleichen Loxberry wie das MS4H Client Plugin auch das Squeezelite Player Plugin installiert habt.
      Ihr könnt die Player-Soundkarten und den Equalizer im Squeezelite Player Plugin nutzen.

  • IP des MusicServer4Home oder Logitech Media Server eingeben.
    Hier gebt ihr einfach die IP ein, wird an der eingegeben IP ein MS4H gefunden, wird das Basis-System automatisch auf auf umgestellt.
    Wird das Squeeze Player Plugin als Basis gewählt wird gesucht ob es bereits installiert ist.


  • Soundkarte konfigurieren
    • Übersicht zeigt die bereits gefunden Soundkarten an
    • Soundkarten wählen
      Ist eure noch nicht dabei wählt unten die Soundkarte 1 und 2 aus. Die Reihenfolge ob zuerst HAT oder USB spielt keine Rolle
      Sollte ihr hier eine Änderung vornehmen, speichert diese ab und führt eine Neustart des System durch.
      Dann sollte auch zB HATs angezeigt werden.
    • Nach dem Neustart sollt dann auch alle Karten angezeigt werden wie in diesem Beispiel.
    • Jetzt könnt ihr die Soundkarten-Werte anlegen

      Als erstes muss die entsprechende Karte aktivieren und die Device Nummer angeben, diese Nummer sehr ihr an erster stelle in der Übersicht.
      Danach die Anzahl der Kanäle angeben, hier zB 2 für den DAC und 8 für die 7.1 USB Soundkarte.
      Jetzt fehlt noch die Samplingrate, die in den Spezifikationen der Hardware zu finden sind. USB meist 48000 Hz bei HATs kann es bis zu 192000Hz sein.
      Wenn ihr eine USB und ein HAT gleichzeitig einsetzt musste ich fast bei allen getesteten HATs die gleiche Rate wie beim USB einstellen, also beide auf 48000 Hz.

Step 2 - Player anlegen

  • Neuen Player erstellen


    • Zone aktivieren
    • Namen vergeben, dieser Name wird im LMS als Player-Name erscheinen und bei Verwendung der MS4H sollte dieser auch für die externe Zone genutzt werden.
    • Mac-Adresse wird automatisch vom System vergeben, kann aber später auch noch geändert werden
    • Alsa Parameter die als Standard mit 80:4:: angegeben sind, können angepasst werden. (eher was für Profis oder bei Problemen)
    • Soundkarte wird vom System vergeben
    • Kanal-Nummer 1 für links und rechts angeben, bei Stereo zb 0 und 1 bei Stereo-Downmix 0 und 0 oder 1und 1.
      Ihr könnt insgesamt je Player 4 Kanäle nutzen.
    •  Lautstärke je Kanal, bei jedem Kanal kann die Lautstärke angegeben werden um zB einen Kanal lauter zu spielen als einen anderen. Ich habe das zB im Bad / Sauna so das die Kanäle der Sauna leiser spielen als im Bad selber.
    • GPIO Nummer angeben wenn ein MS4H genutzt wird. Achtung, HATs nutzen auch GPIO Ports, schaut im Datenblatt welche belegt sind und welche frei sind um Probleme zu vermeiden.
  • GPIO Gruppe

Voraussetzung 

    • Plugin Version >= 0.2.5 / MS4H Version >= 1.4.1.5
    • Bei allen Playern muss der gleiche GPIO verwendet werden
    • Bei allen Playern die zur Gruppe gehören sollen muss der Haken bei GPIO Gruppe gesetzt sein.
    • Alle Player müssen als externe Zonen im MS4H angelegt sein
    • Es kann nur eine Gruppe gebildet werden, die Player ohne Gruppe können aber andere GPIOs verwenden und unabhängig schalten

Funktionsweise
Wird eine Gruppe gebildet wird der GPIO erst abgeschaltet wenn alle Player aus sind.
Der GPIO wird mit dem Start des ersten Player der Gruppe eingeschaltet.
So kann zB eine gemeinsame Amp verwendet werden.


  • Player ändern
  • Alle Werte können nach der Anlage eines Players geändert werden
  • Löschen einer Zone ist immer möglich, egal an welcher Reihe der Player steht.
    Wird ein wieder ein neuer Player angelegt wird die nächste freie Nummer verwendet. 


Step 3 - Player oder Soundkarten nutzen

  • MS4H - die angelten Zonen müssen als externe Zone im MS4H WebUI angelt werden
    Wenn der Player im Plugin bereits läuft erkennt der MS4H beim anlegen/speichern der externe Zone das es sich um das Plugin handelt und stellt die Werte ein.


  • Squeezelite Player Plugin - Es muss ein Player angelegt werden und die jeweilige Soundkarte zb zone_1_eq gewählt werden. 


  • LMS direkt - es muss nichts weiter gemacht werden, die Player werden im LMS angezeigt und können verwendet werden.


Equalizer

  • Für jede Zone steht ein EQ bereit, es gibt Presents und die Möglichkeit Settings zu speichern. Im Grund genau wie im MS4H für interne Zonen.

Hinweise

  • Wird der MS4H als Basis-System ausgewählt ist der Equalizer nur über das WebUI des MS4H oder die Loxone App änderbar.
    Er ist im Dashboard des Plugin ausgegraut, und nicht anwählbar.

  • Es wird zB in Systemdateien wie der /boot/config.txt geschreiben. Ich habe das ganze so gebaut das es eigentlich keine Änderungen von bestehenden Werten gibt.
    Sollte es denoch Probleme geben und das System nach Änderung der Soundkarten zB nicht mehr booten, sendet mir bitte die config.txt um den Fehler zu analysieren. 

  • Kanal-Splitting wird nicht von jedem HAT unterstützt zB Hifiberry AMP kann es nicht Hifiberry AMP2 kann es dagegen.
    Es verstehen sich nicht alle HATs mit USB Soundkarten.
    Dazu werde ich eine Unterseite anlegen bei dem man angeben kann ober ein HAT Kanal-Splitting unterstützt und sich mit USB verträgt.

  • Wird das Basissystem nachträglich geändert werden zB alle Zonen deaktiviert oder aktiviert

  • Ist ein HAT nicht in der Liste, postet im loxforum im Plugin Thread bitte den Namen des HAT und ggf eine Link zum Hersteller.

  • Es gibt keine Begrenzung der Player-Anzahl, nur die Hardware ist die Begrenzung. Raspi 4 kann nach wie vor nur eine USB-Karte.


EQ verwenden mit Squeezelite Player Plugin (ohne MS4H Server)

Wenn du keinen MS4H Server nutzt, aber mit dem Squeezelite Player Plugin den Equalizer nutzen möchtest, gehe folgendermaßen vor:

  

Wähle beim Basis-System: Squeezelite Player Plugin und gib die IP deines LMS-Servers an.

Aktiviere deine Soundkarte(n) und gib an, wie viele Kanäle die Soundkarte insgesamt hat (z.B. eine USB-Soundkarte 7.1 hat 8 Kanäle). Das MS4H Client Plugin kann dir damit im weiteren Verlauf entsprechend die Kanäle aufteilen.

Speichere die Änderungen! Dies kann einen Augenblick dauern, eventuell ist ein Neustart von LoxBerry erforderlich.

Im nächsten Schritt geh auf den Tab "Player" und konfiguriere die Zonen. Gib der Zone den gleichen Namen wie im Squeezelite Player Plugin, und stelle bei Kanal 1 links/rechts die Zuordnung 0/1 an. Wenn du mehrere Zonen an der Soundkarte hast, speichere und klick oben auf "Neue Zone" und wiederhole das für die weiteren Zonen. Vergib jeweils die richtigen Kanäle (z.B. bei der zweiten Zone 2/3 usw.), sodass jede Zone eigene Kanäle der Soundkarte benutzt. Die MAC-Adresse ist in diesem Fall egal, weil dies im Squeezelite Player Plugin definiert ist.

Ohne MS4H Server kannst du die Zonen nicht Aktiviert setzen - das ist ok, weil die Zonen vom Squeezelite Player Plugin betrieben werden. 


Als nächsten Schritt wechsle ins Squeezelite Player Plugin:

Hier gibt es nun die im MS4H Client Plugin definierten Zonen - wähle für jede Zone im Squeezelite Player Plugin den Output aus, den das MS4H Client Plugin erzeugt hat, z.B. zone_1_eq - Vorraum (MS4H Client).  

Danach wähle "Speichern und ausführen". Sollte oben angezeigt werden, dass deine Zonen nicht starten, reboote LoxBerry nochmal. 

Nun kannst du ins MS4H Client Dashboard wechseln. Da du keinen MS4H Server hast, werden die Zonen hier als inaktiv angezeigt, das ist OK

Mit dem Equalizer-Button kannst du nun aber den Equalizer für diese Squeezelite Player Plugin Zonen definieren!


Roadmap

  • Overlay für Events, um wie beim Navi die Musik in den Hintergrund zu legen und das Event im Vordergrund abzuspielen