Ankündigung

Einklappen
Keine Ankündigung bisher.

LBS(Sammlung) Squeeze

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

    wintermute Kannst du etwas dazu sagen? Der LBS bietet diese Funktion nicht an, wäre das überhaupt möglich?

    Kommentar


      Zitat von Andreas1 Beitrag anzeigen
      wintermute Kannst du etwas dazu sagen?
      Wozu was sagen? Zum Syncen?
      Ja, das ist prinzipiell moeglich. Ich hatte damit auch schonmal angefangen (der Client-LBS hat bereits Ausgaenge an er zumindest den Status zeigt), bin aber aufgrund diverser Huerden nicht weiter gekommen. Das Hauptproblem ist, dass die Familie mir zu selten genug Player zur Verfuegung stellt um das auszuprobieren

      Kommentar


        Ja genau, ich meinte zum Syncen. :-)
        Was könnten wir denn tun, um die Familie zu überzeugen?

        Kommentar


          Gute Frage

          Also wie gesagt, das ist ja momentan aufm Weg (auch wenn das scheinbar ein recht langer Weg wird)... wenn Du bastelwillig bist, kannste ja mal das Folgende probieren:
          • Client-LBS (19000201) fuer "Player A" hernehmen (den muesstest ja schon irgendwo im Logikeditor haben)
          • Dort an E3 den String "sync 00:01:02:03:04:05" anlegen, wobei "00:...:05" die PlayerID des gewuenschten Sync-Masters ("Player B") ist
          • Damit sollte Player A mit Player B synchronisiert werden. Es entsteht intern eine sog. Sync-Group und Player B ist der Master dieser Gruppe
          • Es werden dabei im LMS temporaere Play-Listen angelegt, damit der gesyncte Player spaeter wieder normal weiterdudeln kann
          • Legst Du an E3 "sync -" an, fliegt der entsprechende Player aus der Sync-Gruppe und sollte mit dem weitermachen was auch immer er vorher getan hat
          • Machst du mit dem Master der Gruppe ein "sync -" wird vermutlich (?) irgendein anderer Player der Gruppe neuer Sync-Master, ich schaetze mal der Player mit der hoechsten ID. Wer Master ist und welche ID (hier nicht MAC, sondern numerischer Gruppen-bezogener-Index) ist nur intern verfuegbar und fuer den normalen Betrieb - denke ich - nicht notwendig.
          • Trotzdem kann der aktuelle Sync-Master eines Players an A19 des Client-LBS abgegriffen werden, eine Liste der Clients (falls der aktuelle Player der Master ist) an A20.
          Das ist jetzt aus der Huefte heraus geschossen, so ganz genau hab ich die interne Funktionsweise nicht mehr im Kopf... aber es koennte funktionieren
          Sollte das klappen ist das schon die halbe Miete, das dann noch in den LBS zu dengeln duerfte ein Klax sein. Zumindest kann dann auch jemand anderes den Testaufbau stellen

          Kommentar


            Hi wintermute,

            Zitat von wintermute Beitrag anzeigen
            [*]Client-LBS (19000201) fuer "Player A" hernehmen (den muesstest ja schon irgendwo im Logikeditor haben)[*]Dort an E3 den String "sync 00:01:02:03:04:05" anlegen, wobei "00:...:05" die PlayerID des gewuenschten Sync-Masters ("Player B") ist[*]Damit sollte Player A mit Player B synchronisiert werden.
            Klappt. Allerdings wird die Wiedergabe des Player B angehalten und an den Anfang des aktuellen Tracks gesprungen. Mit "Play" beginnt dann die synchrone Wiedergabe.

            Zitat von wintermute Beitrag anzeigen
            [*]Legst Du an E3 "sync -" an, fliegt der entsprechende Player aus der Sync-Gruppe und sollte mit dem weitermachen was auch immer er vorher getan hat.
            Er fliegt raus, pausiert dann aber, er macht nicht mit dem weiter, was er vorher gespielt hat.

            Ich verwende:
            Logitech Media Server Version: 7.9.0 (auf piCorePlayer)
            2 x piCorePlayer 3.11

            Kommentar


              Hmmm.... also zum besseren Verstaendnis: du sagst zu "Player A"
              Code:
              sync PlayerID-B
              Und das fuehrt dann dazu, dass Player B sich eigentlich mit A synchronisiert? Also A spielt weiter und B steigt nach Play darauf ein? Das ist genau andersrum als ich es erwartet haette

              Und wenn Du einen "sync -" und danach ein "play" schickst, steigt der Player dann wieder da ein wo er aufgehoert hat?

              Kommentar


                Zitat von wintermute Beitrag anzeigen
                Mal sehen ob ich die Woche ueber irgendwo im Zug fest hocke oder so, dann kann ich mal drueber nachdenken ob sich sowas sinnvoll umsetzen laesst.
                Prima! Bin auch bereit etwas Input dazu zu steuern, falls irgendwo möglich.

                Kommentar


                  Also hier auch noch meine Erkenntnisse:

                  Mittels "sync Player-ID" also zB "sync c4:34:6b:77:ae:1c" wird der Player mit der eingegebenen ID, also c4:34:6b:77:ae:1c mit dem Player auf welchem der Befehl ausgeführt wird gesynct. Sync-Master wird jedoch der Player auf welchem man den Befehl ausführt.

                  Mit "sync -" fällt der Client aus der Sync Gruppe und stoppt die Wiedergabe (vorherige Playlist wird nicht wieder aufgenommen). Mit einem Play Command startet der Client die Playlist welche in der Sync Gruppe wiedergegeben wurde und nicht die Ursprünglich Playlist.

                  Was mich etwas stört, am Client LBS (19000201) werden SyncMaster (A19) sowie SyncSlaves (A20) nur dann aktualisiert, wenn ich am Server-LBS (19000200) E1 auf 0 und dann wieder auf 1 setze. Also den Server LBS erneute "starte". Ein Refresh am Client LBS aktualisierte diese Werte leider nicht, wintermute hast du dafür eine Erklärung?

                  Kommentar


                    Ich aktualisiere erstmal meine Komponenten und melde mich dann wieder.

                    Kommentar


                      Danke@all fuers Rumtesten!

                      Zitat von gspsteve Beitrag anzeigen
                      Mittels "sync Player-ID" also zB "sync c4:34:6b:77:ae:1c" wird der Player mit der eingegebenen ID, also c4:34:6b:77:ae:1c mit dem Player auf welchem der Befehl ausgeführt wird gesynct. Sync-Master wird jedoch der Player auf welchem man den Befehl ausführt.
                      Ist halt nur genau andersrum als ich mir das vorgestellt hatte. Aber das ist ja nun kein prinzipielles Problem oder gar Show-Stopper
                      Die Doku ist da uebrigens recht eindeutig - falls man auf den irrigen Gedanken kommt, die wirklich zu lesen
                      Wenn man A ein "sync B" schickt, dann wird davon ausgegangen, dass A bereits Mitglied einer Sync-Gruppe ist oder es wird eine neue Gruppe fuer A angelegt. B wird dann Mitglied dieser Sync-Gruppe und vorher ggbnflls aus bereits bestehenden Sync-Gruppen entfernt.
                      So wie es beobachtet wurde ist es also tatsaechlich korrekt und beabsichtigt

                      Zitat von gspsteve Beitrag anzeigen
                      Mit "sync -" fällt der Client aus der Sync Gruppe und stoppt die Wiedergabe (vorherige Playlist wird nicht wieder aufgenommen). Mit einem Play Command startet der Client die Playlist welche in der Sync Gruppe wiedergegeben wurde und nicht die Ursprünglich Playlist.
                      Kann mal jemand schauen ob im Wiedergabelisten-Verzeichnis des LMS nach dem Syncen Dateien auftauchen, die in etwa so aussehen:
                      Code:
                      SyncOptions-PlayerName-PlayerIDmitUnderscores
                      Falls ja, was genau enthaelt die Playlist? Also die Playlist vor oder nach dem Sync und von welchem Player?
                      Wenn das die vorherige Playlist ist, dann stellt das LMS die aus irgendwelchen Gruenden bloss nicht wieder her, das muesste man dann halt den LBS machen lassen. Im schlimmsten Fall erzeugt man vorm Syncen eine temporaere Playlist, das macht der Durchsage-LBS ja auch so.

                      Zitat von gspsteve Beitrag anzeigen
                      Was mich etwas stört, am Client LBS (19000201) werden SyncMaster (A19) sowie SyncSlaves (A20) nur dann aktualisiert, wenn ich am Server-LBS (19000200) E1 auf 0 und dann wieder auf 1 setze. Also den Server LBS erneute "starte". Ein Refresh am Client LBS aktualisierte diese Werte leider nicht, wintermute hast du dafür eine Erklärung?
                      Ist wohl ein Bug oder etwas euphemistischer formuliert: so nicht vorgesehen...
                      Eigentlich sollten die Sachen vom LMS bestaendig aktualisiert werden, kann aber sein, dass der Server-LBS (der ist tatsaechlich fuer dieses Problem zustaendig) das entweder nicht interpretiert, diese Daten gar nicht abfragt, vielleicht aber der LMS die Daten auch tatsaechlich nicht schickt. Das laesst sich aber korrigieren, auf die eine oder andere Weise. Wird dann im Zuge der weiteren Sync-Entwicklung mit reingebaut.

                      Also zusammenfassend:
                      • Schickt man A ein "sync B", so wird B der Sync-Gruppe zugefuegt in der sich A befindet. Befindet sich A noch nicht in einer Gruppe, wird eine neue Gruppe mit A als Master angelegt. Befindet sich B vorher in einer anderen SyncGruppe, so wird er aus dieser entfernt.
                      • Die Wiedergabe auf B startet nicht automatisch, sondern muss manuell gestartet werden (kann mal bitte jemand testen ob das vom aktuellen Play/Stop/Pause Status von A&B abhaengig oder generell der Fall ist?)
                      • Schickt man B ein "sync -" so wird B wieder aus der Sync-Gruppe entfernt, die vorherigen Playlist wird dabei nicht wieder hergestellt.
                      • Die Sync-Master und Sync-Member Ausgaenge vom Client LBS werden nicht automatisch aktualisiert -> Bug.
                      Soweit erstmal richtig?

                      Und fuer die Akten bzgl. der von Andreas1 erwaehnten Aktualisierungen hier mal die von mir momentan verwendeten Versionen, also die an denen ich entwickle und teste:

                      LMS Version:
                      Logitech Media Server Version: 7.9.0 - 1454057025 @ Fri Jan 29 08:48:01 UTC 2016
                      Betriebssystem: Red Hat - DE - utf8
                      Plattformarchitektur: x86_64-linux
                      Perl-Version: 5.10.1 - x86_64-linux-thread-multi
                      Audio::Scan: 0.95
                      Datenbankversion: DBD::SQLite 1.34_01 (sqlite 3.7.7.1)

                      PiCore-Player:
                      Version: 3.02
                      Squeezelite-Version: Squeezelite v1.8.4-762
                      Hardware: Raspberry Pi 1 Model B+, selbstgebauter I2S-DAC mit integriertem Class-D Mono-Verstaerker, ueber Ethernet angebunden
                      (spaeter kommt da an einer Stelle noch ein Pi3B mit Touch und so zu, aber erst wenn ich mal Zeit finden sollte )

                      Software-Player:
                      SqueezePlay 7.8.0r719 unter OS X

                      Hardware-Player:
                      Squeezebox Radio (Baby), alle auf Firmware-Version 7.7.3-r16676, jeweils ueber WLAN angebunden

                      Kommentar


                        Erstmal vielen Dank für Euren Einsatz das Squeeze Thema weiter voranzutreiben. Ich würde mich auch daran beteiligen wollen.
                        Ich habe den aktuellen picoreplayer V3.22 mit Squeezelite 1.8.7-1001 im Einsatz und bisher keinerlei Probleme mit dem Text2Speech LBS. In dieser Squeezeliteversion sollte das Problem, das die Vorgängerversionen mit dem Text2Speech LBS hatten gelöst sein. Wäre es denkbar vielleicht mit der neuen Squeezeliteversion die LBS-Weiterentwicklung voranzutreiben?

                        Kommentar


                          wintermute

                          Zu deiner Zusammenfassung:
                          Der zweite Punkt ist nicht korrekt

                          Zitat: "Die Wiedergabe auf B startet nicht automatisch, sondern muss manuell gestartet werden (kann mal bitte jemand testen ob das vom aktuellen Play/Stop/Pause Status von A&B abhaengig oder generell der Fall ist?)"

                          Dies funktioniert bereits erwartungsgemäß, sync man also einen Player startet die Wiedergabe ohne erneute Interaktion.
                          Der Rest ist ansonsten soweit korrekt.

                          Und bezüglich der Frage der Temporären Playlists, bei mir wurde keine Playlist erstellt.


                          Falls auch meine Aufstellung jemanden interessiert:
                          LMS auf Synology NAS V 7.9.0
                          Datenbankversion: DBD::SQLite 1.34_01 (sqlite 3.7.7.1)

                          Player:
                          SqueezePlay 7.8.0r719 auf Windows 10

                          piCorePlayer auf Raspberry 3 mit 3,5" TouchDisplay

                          Pioneer AVR einbebunden über AirPlay Bridge

                          Im Aufbau ist ein Raspberry 3 mit 6 piCorePlayer Instanzen und 12-Kanal Verstärker.


                          Und zu meinem Post #458 Ich wollte meine Zusammenfassung nicht als Problem oder gar Show-Stopper darstellen sondern lediglich die Kenntnisse erläutern.

                          Kommentar


                            Ich mach mir gerade gedanken wie ich man die Sync Thematik am besten und vor allem auch flexibel abbilden kann. Das einfachste wäre wahrscheinlich für jeden Player eine eigene Sync Page in welcher alle anderen Player (welche online sind) dargestellt werden und mit einem Klick werden diese gesynct. Somit müsste man jedoch für jeden Player eine eigene SyncPage basteln und diese immer anpassen sollte ein Player dazu- bzw. wegkommen.

                            Was wäre euer Ansatz?

                            Kommentar


                              Zitat von Marha Beitrag anzeigen
                              Wäre es denkbar vielleicht mit der neuen Squeezeliteversion die LBS-Weiterentwicklung voranzutreiben?
                              Welchen LBS meinst Du jetzt genau, den Text2Speech LBS von jonofe? Weil fuer den gibts ja nen eigenen Fred...

                              Zitat von gspsteve Beitrag anzeigen
                              Dies funktioniert bereits erwartungsgemäß, sync man also einen Player startet die Wiedergabe ohne erneute Interaktion.
                              Ich bezog mich da auf einen Post von Andreas1 in dem er schrieb:
                              Zitat von Andreas1 Beitrag anzeigen
                              Allerdings wird die Wiedergabe des Player B angehalten und an den Anfang des aktuellen Tracks gesprungen. Mit "Play" beginnt dann die synchrone Wiedergabe.
                              Irgendwer vertut sich grad. Ich bin es nicht, ich hab das ja noch gar nicht getestet Aber vllt hat das auch mit Folgendem zu tun:

                              Zitat von gspsteve Beitrag anzeigen
                              Und bezüglich der Frage der Temporären Playlists, bei mir wurde keine Playlist erstellt.
                              Ok, mein Fehler... die Playlists werden von einem Plugin erstellt. Das Plugin heisst SyncOptions und erledigt allerlei praktische Dinge im Zusammenhang mit dem Syncen, unter anderem das Wiederherstellen der vorherigen Playlist beim Verlassen einer Sync-Gruppe.
                              Da diese Funktionalitaet also bereits mit frei verfuegbaren LMS-Plugins umgesetzt werden kann, werde ich das nicht im LBS verbauen.

                              Zitat von gspsteve Beitrag anzeigen
                              Was wäre euer Ansatz?
                              Ich wuerde fuer jeden Player ein PopUp erstellen in dem die sinnvollen "Sync Ziele" hart in der Visu verdrahtet sind. Also alles statisch, nix dynamisches und zwar aus 3 Gruenden:
                              1. es ist einfacher
                              2. es macht keinen Sinn alle Player zum Syncen aufzulisten (Was habe ich davon wenn ich den Garten mit dem Waschraum synchronisiere? Da reichen auch identische Playlists.)
                              3. wenn das Haus einmal steht aendert man an seiner LMS-Infrastruktur vermutlich weniger als an der Beleuchtung und fuer letzteres muss man auch die Visu umbauen
                              Das ist aber nur meine Meinung...

                              Kommentar


                                Ja, den meine ich. Das Thema Text2Speech wird in einem anderen Thread behandelt, aber letztlich geht's auch dort um Squeezelite. Dachte, es wäre naheliegend, mit einer neuen Squeezeliteversion zu testen.

                                Kommentar

                                Lädt...
                                X