DreamSqueeze - Der Squeezeboxclient für die Dreambox

  • Hi Clang,


    wen dich im IRC (Netzwerk: freenode, Kanal: #enigma2) zeigst kann ich dir gerne etwas helfen. PN und Forum sind ziemlich unkomfortable für soetwas ;).
    Dann hätte ich ich gleich noch was ;).


    Meines wissens ist die telnetlib "blocking" (also nicht Event-basiert).
    Das ist in enigma2 ein Problem.
    Ich denke du solltet direkt von Beginn an mit twisted arbeiten.
    twisted.conch.client sollte bei telnet weiterhelfen (glaube ich jedenfalls).

    Gruß,


    Reichi

    Einmal editiert, zuletzt von Reichi ()

  • Hallo Reichi!
    Ich glaube du hast leider Recht, spätestens bei den Alben dauert es einfach unheimlich lange bis sich das nächste Menü aufbaut.


    Auf IRC werd ich wohl eher am Wochenende mal zurück kommen.
    Unter der Woche ist es mir fast schon zuviel, da hab ich nicht so die Geduld was neues zu lernen.


    Werd mich noch ne Weile durchwuseln. Danke für dein Angebot.

  • Auf die schnelle würd mir schon ein Beispiel reichen wie man Sinnvoll Parameter von einem Screen zum nächsten übergibt.
    Den neuen Screen rufe ich mit self.session.open(AlbumScreen) auf.
    Wie muss man den Aufruf gestalten um einen Parameter/Variable mit an AlbumScreen zu übergeben?


    in __init__(self,session,args=0) bzw. bei AlbumScreen(self.session,5) fliegt mir bislang alles um die Ohren.


    Aber mittlerweile wird der MP3 Stream gespielt. Juhuu.

  • Not macht erfinderisch und so hab ichs nun selbst raus.


    Versucht mal bitte das IPK mit Ver15.
    Mich interessiert erstmal ob euch alles um die Ohren fliegt, beim initialstart.
    Ansonsten kann man schonmal Interpreten -> Alben und "alle" Alben anzeigen lassen.


    Die Squeezebox-Kenner sollten sich einigermaßen heimisch fühlen im Menü.
    Wird aber alles noch überarbeitet.
    Wenn das mit der "Grundkonfiguration" nun hinhaut, werde ich als nächstes die letzten Daten (Title-Infos) sammeln und dann anfangen den Stream zu manipulieren.


    Nicht wundern wenn ihr nix hört, ihr müsstet dazu über das Squeezebox-Server WebIf den Stream manipulieren. Dann kommt auch Ton.


    http://code.google.com/p/dreamsqueeze/downloads/list

  • Beim Aufruf von Interpreten oder Album bekomme ich einen Greenscreen....


  • Ich hab noch gar keine Prüfung eingebaut ob auch Host und der WebIf Port sowie der CLI-Port gesetzt sind.
    Das werd ich als allernächstes machen.
    Sowie dann im Telnet-Bereich ein Prüfung ob eine Verbindung aufgebaut werden kann.
    Momentan funktionierts nur im Idealfall, wenn Host und die 2 Ports in der Config gesetzt sind.


    Aber Danke dir für den Test! Find ich super!



    Edit:
    Ver. 17 ist nun als IPK vorhanden.
    Ich hab noch Probleme die Einstellungen zu sichern. Keine Ahnung im Moment woran es da hakt.


    Man setzt die Einstellungen, bei "OK" sollte alles gespeichert werden und Fenster schliesst sich. Wenn man wieder zurück in die Einstellungen geht ist auch noch alles da.
    Verlasse ich das Plugin nun und rufe es erneut auf, sind wieder alle Einstellungen weg.

  • So, also die Einstellungen werden schon gespeichert, sind aber erst verfügbar wenn man das GUI einmal neu startet.
    Gefällt mir mal überhaupt nicht! Scheint aber überall so zu sein, oder?

  • thx für das PlugIn.


    Einstellungen vornehmen - ok
    GUI-restart - Einstellungen ok


    abspielen geht gar nicht. Ich gehe auf Interpreten - ok . Neues Fenster welches nur "zurück" enthält.
    Internetradio funzt.(Am Server für den Player den Sender aussuchen und starten, anschließend an der Dream auf I-Net-Radio)


    cu
    LN

  • Brauchst du ein Passwort für deinen Server?


    Unter /hdd/log ist auch ein Logfile, da könnte was stehen wenn es Verbindungsprobleme gibt.


    Das URL des Streams mit User/Password sieht so aus:
    http://user:password@server:port/stream.mp3


    Bei der Anmdelung an das CLI muss man sich ebenfalls einloggen mit
    login user password
    Möglicherweise ist das noch nicht richtig eingebaut.

  • nur als kleiner bericht,


    hatte versprochen auch zu testen,
    ich muss allerdings zuerst mein Syno-NAS mal aufräumen, aktualisieren und den Sueeze-Box server wieder einrichten


    ich weiss noch nicht wann ich das hinkriege :winking_face:


    ich lese aber mit und melde mich dan wenns so weit ist


    gruss,


    Bernd

  • Zitat

    Original von LukaNoah
    Für den Server brauch ich keinen User und Passwort (Squeezbox-Server auf QNAP-212TS). Anbei mal das Log-File.


    cu
    LN


    Ok, das sagt mir das er keine Verbindung zum CLI aufbauen konnte.
    Stimmt der Port?
    Vielleicht kannst du ja mal selber testen ob du mit telnet auf das CLI kommst.



    Einfach auf der Dreambox (bitte Host und Port anpassen) mal

    Code
    root@dm500hd:~# telnet ts439-pro-ii 9090
    login user pass


    Wenn alles gut ist kommt als Antwort:

    Code
    login user ******


    (egal ob du Kennwortschutz aktiviert hast)
    Wenn als Antwort allerdings:

    Code
    login user ******
    Connection closed by foreign host


    kommt, stimmt dein User/Passwort nicht und die Verbindung wurde getrennt.


    Andererseits kann auch deine Sicherheitseinstellung im Server dazu führen das du dich nicht verbinden darfst (siehe PNG im Anhang).
    Wie sehen bei dir die Sicherheitseinstellungen unter "Eingehende Verbindungen blockieren" aus?
    Du gelangst über das WebIf des SB-Server -> Einstellungen -> Erweitert -> In der Listbox (bei mir Oben-Links) "Sicherheit" dorthin.


    Hoffe das hilft irgendwie.

  • Neue Version ist da.
    Login wurde getestet und funktioniert bei mir.
    Titel werden nun nach "tracknum" sortiert.
    "Alle Titel abspielen" hat keine Funktion, sowie manche Menü Elemente.


    Bei manchen Alben friert bei mir die Box ein, beim Titel-Suchen.
    Scheint an Telnet zu liegen.


    Wiedergabe wurde zu Testzwecken auf 96 kBit/s begrenzt um den "Drop Off" zu kompensieren.


    Danke für euer Feedback.


    Als nächstes schau ich ob es mit twisted.telnet besser läuft.
    Dann wird das GUI in Squeezebox marnier neu aufgebaut.



    Danke an alle Tester für eure Geduld!

  • Hi Clang,


    ich bekomme keine Telnet-Verbindung zum Server. Server blockiert keine eingehenden Verbindungen.


    telnet 192.168.178.2 9099
    dann kommt die Fehlermeldung, welche Du beschreibst.


    Im Server sehe ich den Player und kann ihn "fernsteuern". Wiedergabe erfolgt dann problemlos.


    cu
    LN

  • sicher das es port 9099 ist?
    Standard wäre ja 9090.


    Ich bin gerade etwas unsicher, aber muss man das CLI noch irgendwo in den Server-Einstellungen (Weboberfäche) aktivieren?

  • Hi clang


    nicht das ich dein Engagement runtermachen will, und für Squeezebox-Nutzer ist das sicherlich sehr wertvoll


    Aber wäre es nicht einfacher, und würde einen größeren Interessentenkreis erreichen, ein WebIF für iDream und Shoutcast-Plugin zu schreiben?
    Und das müßte sich doch dann recht einfach auf Android und iPhone etc portieren lassen?


    Wie gesagt will ich deine Arbeit nicht schlecht machen, und auch den Thread hier nicht entern. Mich würde nur mal die Machbarkeit des WebIF interessieren und warum sich da bisher noch niemand ranbegeben hat

  • Ich denke das ist wieder etwas ganz anderes.
    Ich persönliche Nutze weder IDream noch Shoutcast-Plugin. Und ich habe weder IPhone noch ein Android Multimedia Gerät.
    Daher wär ich da wohl nicht der richtige.
    Für mich ist das Ziel von DreamSqueeze einen HardwarePlayer in meinem privaten Squeezebox Netzwerk einszusparen. So hätte ich schonmal meinen "Transporter" vom Fernseher weg und könnte den in der Gartenhütte anschliessen.


    Ein großes Problem wird wohl die Latenz werden, mit der auf Änderungen in der Playlist vom MP3-Stream aus reagiert wird. Aber soweit bin ich noch nicht.


    DreamSqueeze wird erstmal so weiter gebaut wie von mir geplant.

  • Ich finde die Idee klasse, da ich mein Heimnetzwerk demnächst auch mit den Squeezebox-Sachen betreiben möchte. Mir würde es schon reichen, wenn die Drembox über die Web-Oberfläche des Squeezebox-Servers oder über ein Android-App für die Squeezeboxen steuerbar ist (quasi der Ersatz des Squeezebox Receiver).


    Leider habe ich von der Plugin-Programmierung überhaupt keine Ahnung...