Squeezebox Modul - erste Version

Begonnen von bugster_de, 17 Dezember 2013, 22:12:10

Vorheriges Thema - Nächstes Thema

ChrisD

Hallo,

Ich habe aktualisierte Versionen für Server und Player auf Github gesetzt. Änderungen:

SB_SERVER 0011
- weitere Zeichen aus Favoriten und Playlisten ausfiltern da sie zu Problemen in FHEM führen
- Alarm-Playlisten zentral verteilen

SB_PLAYER 0027
- Alarm-Playlisten vom Server übernehmen
- Coverart für LMS 7.8 und 7.9 angepasst
- MAC-Adresse immer in Lowercase knovertieren
- volDown und volUp aus der Dokumentation entfernt

Wichtig ist dass nach einem reload der beiden Module ein
set meinLMSServer statusRequestgemacht wird.

@Dirk: Ich habe den Fehler in der Version 0026 korrigiert der dazu führt dass Cover Art nicht mehr aktualisiert wird. Kannst du mit 0027 testen ? Was die Favoriten betrifft ist mir nicht klar was passiert, in dem Log das du mir geschickt hast sieht alles korrekt aus. Ich muss mir das nochmal genauer ansehen. Bei meinen Tests wurden die Favoriten korrekt aktualisiert. Was nicht funktioniert ist das Erkennen der 'zufälligen' Favoriten nach einem FHEM-Neustart da der LMS diese Information nicht herausgibt.

@Olivier: I added code for LMS 7.8/7.9, can you test it ?

@aeronaut: Das kann funktionieren, Voraussetzung ist aber dass der SqueezeServer permanent läuft und nicht erst 5 Minuten vor dem Alarm durch das Radio per WOL geweckt wird.

@mrbeil: Für die Sprachausgabe wird die aktuelle Playlist zwischengespeichert, der Text wird ausgegeben und die Playlist wird danach fortgesetzt, zumindest in der Theorie. Es scheint aber nicht immer zu funktionieren, allerdings hatte ich noch keine Zeit mir das im Detail anzusehen, es fehlen mir auch Rückmeldungen was genau nicht funktioniert. Die von dir beschriebene Variante (neue Gruppe, Ansage auf allen Playern parallel, alte Gruppe wieder herstellen) muss im Moment von Hand gemacht werden. Ich bin aber offen für Vorschläge was die Sprachausgabe betrifft (und brauche danach Tester).

Grüße,

ChrisD

mrbreil

Danke, das war ja erstmal eine theoretische Frage. Hatte noch nie ne Squeezebox, aber durch diesen Thread, bin ich sofort los gerannt und habe mir zwei pi besorgt. Leider klappt das Abspielen im Moment (hoffentlich bleibt es beim Moment) nur mit dem PiCorePlayer Image gut, alle anderen Lösungen klingen ja grausam und ich gehöre nicht zu den Audiophilen. Leider kann man bei diesen Image keine weiteren Pakete einspielen, wenn schon so ein pi in jedem Zimmer ist kann er auch gleich die Temperatur messen oder per Bluetooth die Anwesenheit feststellen.  Aber das soll hier nicht das Thema sein.
Zum testen bin ich gerne bereit, sobald ich die Hardware im Griff habe. Aber die Idee ist schon mal Genial, auch meine Regierung ;) war begeistert und stellt mir Fördermittel ;D.

schönen Abend noch

aeronaut

Danke, ChrisD. Der Server kann, wenn ich es richtig verstanden habe, problemlos unter Linux laufen, also auch parallel zum FHEM auf Cubie/Raspi. Dann könnte es also klappen :)

Nutzt das Wecker-Szenario mit Steuerung der Weckzeiten über FHEM schon jemand erfolgreich und/oder kann ggf. über Probleme berichten? Ich frage, weil eine Squeezebox zu teuer für Experimente ist ...

lg
aeronaut

oliv06

Zitat von: ChrisD am 10 Februar 2015, 19:25:18
@Olivier: I added code for LMS 7.8/7.9, can you test it ?
It works fine, thanks !

oliv06

@ChrisD
About voice : one year ago I had written some code in order to try to make it work like this :
set SBP save
set SBP talk bla-bla
set SBP talk bla-bla
set SBP recall

The idea was to stack talks while there are not finished, then recall the previous playlist at current position. My first attempt (published) was really buggy but second one was working better on my setup. If you are interested I can send it to you if you want to look at it.

mrbreil

@oliv06
Yes, you upload it please . Everyone wants to read it and test it.

sponsored by google translator because although I can read a little English , but of writing I am not powerful

ChrisD

Hi,

If you send me the code I'll try to integrate it. I added already my own version as bugster removed the code (yours ?) for save/recall in his last version. My version does not support stacking and lacks some other features (split if string is longer than 100 characters, handle Google blacklist, make sure that the playlist is really played, separate volume for talk, talk only on one player in a sync-group, restoration of favorite an playlistnames, ...).

Regards,

ChrisD


oliv06

@ChrisD
I tried my old code this evening with no luck ! I even had to restart LMS to let it play something... It is probably better to continue on your own which is very promising. Your save/recall function is nicer than Logitech's save playlist function I had simply integrated ...

One idea you could perheaps keep is saving state and playStatus as well in readings (e.g. savedState and SavedPlayStatus) and restore it at recall.

ChrisD

Hi,

Can you nevertheless send me your code, it could help me implement the talk function in a clean way. The current code is a quick hack i did for my own need.

ChrisD

oliv06

I sent you a PM with code (I am not proud of it at all  :-[ )
Hope it can give you ideas.

siggi85

Gibt es einen neuen Stand zum "talk" Thema? Falls nicht ist das ok, wollte aber mal nachfragen weil ich nun schon einige Zeit nichts neues dazu gelesen habe. :)

ChrisD

Hallo,

Ich bin noch mit dem talk beschäftigt. Im Moment habe ich leider noch keine Version die alle meine Tests bestanden hat. Solange das nicht der Fall ist möchte ich sie nur ungern veröffentlichen.

Grüße,

ChrisD

siggi85

Zitat von: ChrisD am 24 Februar 2015, 14:22:34
Hallo,

Ich bin noch mit dem talk beschäftigt. Im Moment habe ich leider noch keine Version die alle meine Tests bestanden hat. Solange das nicht der Fall ist möchte ich sie nur ungern veröffentlichen.

Grüße,

ChrisD

Danke für die Info!
Mach dir keinen Stress. Ist aber schön zu hören, dass es weiter geht.  :)

Rince

T´schuldigung wenn ich mich hier so einmische.

Aber imho ist es unpraktisch in zig Modulen jeweils die (letztlich) gleiche Funktionalität nachzubilden. In diesem Fall Talk im Squeezebox Modul.

Wäre es nicht wesentlich schlauer und einfacher, das vorhandene Text2Speech-Modul zu nehmen? Letztlich produziert es, bevor die Sprachausgabe kommt, ja nichts weiter als eine Audio Datei. Selbige wird eindeutig referenziert und landet in einem Cacher Verzeichnis, für wenn man sie mal wieder brauchen sollte.

Vielleicht wäre es einfacher, sich mal mit Tobias kurzzuschließen, ob man nicht noch ein anderes Attribut setzen kann, so dass ein auswertbares Reading rauskommt wenn die Datei fertig ist, ohne dass das Modul noch versucht, die Datei selber zu Gehör zu bringen.
Wer zu meinen Posts eine Frage schreibt und auf eine Antwort wartet, ist hiermit herzlich eingeladen mich per PN darauf aufmerksam zu machen. (Bitte mit Link zum betreffenden Thread)

marvin78

#599
Zumal Text2Speech auch mit längeren Sätzen und anderen Besonderheiten umgehen kann.

Allerdings ist es aktuell sehr praktisch, auf einem Tablet einfach "SqueezePlayer" zu installieren und es mit diesem Modul für die Sprachausgabe zu verwenden. Aktuell fällt mir kein leichterer Weg dafür (außer Webviewcontrol, das aber nur in Verbindung mit FHEMWEB als Frontend TTS kann) ein. Da hilft dann das Text2Speech Modul auch nicht. Man kann eben nicht auf jedem Device, das man zur Sprachausgabe verwenden möchte, FHEM installieren und Text2Speech verwenden. Und wenn ein Device vorhanden ist (Squeezebox, Sonos..), stellt man sich ungern noch einen Rapsi o.ä. mit Boxen hin.