Dreambox - RemoteTV v0.4

  • Hallo,


    nach einigen Versuchen hab ich's nun endlich geschafft etwas zu basteln mit dem man das TV Programm von einer DreamBox zu einer anderen Dreambox streamen und wiedergeben kann.


    Da meine DM800 eine SingleTuner Box ist kann ich dort nur eingeschränkt TV gucken wenn eine Aufnahme läuft, da ich aber noch eine 2te DM7025 im Schlafzimmer habe, kann ich mir jetzt bequem von der Schlafzimmer Box was auf meine DM800 streamen und somit auch TV gucken auf meiner DM800 wenn dort kein Tuner verfügbar ist. Alternativ könnte man es auch dazu benutzen um mit seiner DreamBox TV zu gucken ohne dabei nen SAT-Kabel angeschlossen zu haben, zB im Sommer draussen im Garten TV schauen ohne dabei das SAT Kabel anschliessen zu müssen. Man könnte es sich dann da über WLAN streamen das TV Programm.


    Es ist die erste Betaversion! Also noch nicht allzuviel erwarten!


    Ihr könnt das Plugin über den PluginBrowser starten und dann seht ihr eine Senderliste mit euren Bouquets. Dort könnt ihr euch nen Sender aussuchen und durch drücken der OKAY Taste startet der Stream! Dazu müsst ihr vorher lediglich mit der MENU Taste im Settings Menu die IP Addresse eurer Remote Dreambox eingeben von der gestreamed werden soll.


    Beachtet bitte:
    - VLC Player von VOC muss installiert sein, da dieser das Engima² um einen benötigten Service erweitert!
    - In der Bouquetliste geht im Moment nur die "Favoriten Liste" mit der blauen taste.
    - Auf der RemoteBox wird ein ZAP durchgeführt, sprich der Kanal umgeschaltet. Anders kann ich die vPID und aPID leider noch nicht auslesen, kann sich in zukunft aber ändern!




    Versions History:
    Version 0.4:
    - Fixed "ZapError" Error


    Version 0.3:
    - Removed unneeded Import from getExif() Function. Causing BlueScreen on newer Images
    - Added maintainer.info File to Plugin, like suggested by DMM Developers


    Version 0.2:
    - Support for Enigma1 Remote Box
    - WebInterface Port changeable in Settings
    - Stream Port changeable in Settings (not required for Enigma1)


    Version 0.1:
    - First Public Release


    ---
    INSTALLATION:
    Nachdem Ihr das IPKG Paket via FTP in euren /tmp Ordner kopiert habt, könnt Ihr dieses PlugIn installieren über Geminis Blue Panel oder via Telnet mit folgenden Befehlen:

    Quote

    ipkg install /tmp/enigma2-plugin-extensions-remotetv_0.2_mipsel.ipk


    Deinstallieren könnt Ihr es über den plugin browser oder per telnet mit:

    Quote

    ipkg remove enigma2-plugin-extensions-remotetv


    downloads +57

  • Hört sich gut an, gleich mal testen.


    Das ist das gleiche wie im LT-Image wenn ich das richtig verstehe...



    *EDIT*


    Habs gerade ausprobiert, auf meiner 7025, aber der Zugriff auf meine
    600er geht nicht, evtl. ein Problem wegen Enigma1 oder?


    Der Port ist auf 8001 gestellt, der Standardport ist aber 8080 oder?


  • Wie sehen die URLs aus bei ner E1 Box ?


    Müsste wissen wie man zappen und wo man stream empfängt.


    Bei E2 ist das die Zap URL:
    http://192.168.178.20/web/zap?…:2EE3:441:1:C00000:0:0:0:


    und das ne stream url:
    http://192.168.178.20:8001/1:0…3:441:1:C00000:0:0:0:&.ts


    achja ... die blöden PIDs muss ich auch noch auslesen:
    http://192.168.178.20/web/getpid

  • Das weis ich leider auch nicht, wo kann ich da nachschauen?


    P.S. Man muss auch aufpassen das das WebIF Auth ausgeschaltet ist!
    Und der Standardport ist nicht 8080 sondern 80, hatte mich verschrieben oben...

  • Hmmm ich weiss auch nich wie man die da raus findet, hab so ne Box nich. Im WebIF vlt !?


    Im Wiki hab ich folgende Beispiele gefunden:


    http://dbox/cgi-bin/zapTo?path=4097:7:0:1:0:0:0:0:0:0:


    Damit müsste man zappen können ...


    Mit "/control/zapto?getpids" gibts wohl die PID's


    Fehlt nur noch ne Stream URL :rolleyes:


    Kannst ja mal ausprobieren ob du mit o.g. URLs zappen kannst und/oder ne Ausgabe im browser bekommst ...


    Dann musst nur noch rausfinden wie so ne URL aussieht zum streamen für VLC oder so ...


    Quote

    P.S. Man muss auch aufpassen das das WebIF Auth ausgeschaltet ist!
    Und der Standardport ist nicht 8080 sondern 80, hatte mich verschrieben oben...


    Ja hab keine Support drin für PW geschützte WebIfs im Moment. Sollte möglich sein denke ich.


    Bei mir in den Settings ist der Port zum Streamen nur einzustellen. Das ist bei E2 Boxen der 8001 Port. Denke ne Option auch für den WebIf port wäre nicht schlecht, weils nicht bei jedem der standard port 80 ist

  • Kannst du mal posten wie diese ausgabe im browser bei deiner e1 box aussieht:


    http://192.168.178.100/control/zapto?getpids


    Ansicht - Quelltext und hier posten ...


    Und was passiert wenn du das eingibst:
    http://192.168.178.100/video.m3u


    bekommst du da ne m3u datei oder vlc startet ? Wenn ja kannst du den inhalt der datei oder die ganze datei mal hier posten?


    Eventuell ist da schon die ganze Stream URL drin die ich brauche ...

  • Hier mal ne blind gecodete Datei für Enigma1 RemoteBoxen ...


    Geht mit sicherheit noch nicht, aber ihr müsst halt testen.


    Bitte einfach die Datei mit der angehängten austauschen und GUI Rebooten:
    /usr/lib/enigma2/python/Plugins/Extensions/RemoteTV/plugin.py


    Dann in den RTV-Settings (menu taste) mal auf Enigma1 umstellen ...


    Testen müsst ihr dann folgendes:


    1.) Funktioniert das zappen auf der remote box? Wechselt sie den Kanal wenn ihr auf der anderen box mit diesem plugin hier nen Sender auswählt?


    2.) Werden die PIDs richtig ausgelesen? Es geht ein kleines popup auf der dreambox auf nachdem ihr den Sender angeklickt habt wo vPID und aPID angezeigt werden sollten. Geht das oder gibts da error oder so?


    3.) Funktioniert das streamen und erscheint Bild auf eurer Box ?


    *edit*
    attachment entfernt. weiter unten gibts ne neue datei!

  • Die PID's befinden sich bei E1-Boxen bereits in der URL...


    Beispiel:
    http://IP:PORT/0,PMTPID,VPID,APID


    Wie das Zappen usw. geht kannst du ja im anderen Thread meiner LTStreamClient.py entnehmen ;-)

    <b>MfG Ali</b>
    <p />
    <select OnChange="window.open(this.options[this.selectedIndex].value, 'New')">
    <option value="/wbb2">Aus meinem Labor:</option>
    <option value="/wbb2/thread.php?threadid=127480">ARD Mediathek</option>
    <option value="/wbb2/thread.php?threadid=105590">CCcam Info</option>
    <option value="/wbb2/thread.php?threadid=99943">CS-Manager</option>
    <option value="/wbb2/thread.php?threadid=117478">DVD Backup</option>
    <option value="/wbb2/thread.php?threadid=90957">Extended Service Info</option>
    <option value="/wbb2/thread.php?threadid=92153">Mosaic</option>
    <option value="/wbb2/thread.php?threadid=114726">Movie Jukebox</option>
    <option value="/wbb2/thread.php?threadid=127314">Movielist Preview</option>
    <option value="/wbb2/thread.php?threadid=107501">ORF.at</option>
    <option value="/wbb2/thread.php?threadid=99478">Permanent Clock</option>
    <option value="/wbb2/thread.php?threadid=111496">Podcast</option>
    <option value="/wbb2/thread.php?threadid=125382">Porn Center</option>
    <option value="/wbb2/thread.php?threadid=89009">RS Downloader</option>
    <option value="/wbb2/thread.php?threadid=118188">Seekbar</option>
    <option value="/wbb2/thread.php?threadid=92584">Zap-History Browser</option>
    <option value="/wbb2/thread.php?threadid=127065">Zap Statistic</option>
    <option value="/wbb2/thread.php?threadid=125298">ZDF Mediathek</option>
    </select>

  • Yo ich hab jetzt einfach mal probiert die datei http://192.168.178.100/video.m3u runtzuladen und hoffe das ich da die PIDs richtig ausgelesen habe ...


    Denke schon, kanns aber nicht testen!


    Die URL die ich in der m3u datei finde rufe ich nun auch zum streamen auf, einzigstes problem hierbei dürfte noch sein das ich unbedingt ein .ts hinten an die URL dran hängen muss, da enigma² sonst nicht schnallt das es sich hier um nen TS Stream handelt ...


    Bei E2 boxen kann man zum glück einfach ein "&.ts" hinten an die URL dran hängen und die Box streamed immernoch und auch meine Box denkt dann es ist nen *.ts stream. Alles andere was man hinten dran hängt (zB #.ts oder ?.ts) funktioniert leider nicht und dann klappt das streamen nicht weil die RemoteBox mit dieser URL nix anfangen kann.


    Sprich man muss also noch rausfinden wie und ob man bei Enigma1 auch die URL irgendwie ändern kann ohne dabei was kaputt zu machen.


    Also an http://IP:PORT/0,PMTPID,VPID,APID .ts oder #.ts oder ?.ts oder /.ts oder so hinten dran hängen und hoffen das die URL dann immernoch akzeptiert wird von der remotebox. Is zwar dirty, aber halt die einzigste möglichekeit meiner DM800 klarzumachen das es sich um nen TS Stream handelt. Ohne *.ts hinten an der URL schnall das meine Box nich

  • Quote

    plugin.rar (4,44 KB, 7 mal heruntergeladen)


    Und nich einer kann mal berichten ?(


    Kommt schon E1 User, sagt mir ob es geht oder was nich geht, damit ich es gehend machen kann und ihr euren E1 Support habt.


    Ich kanns doch nich testen ohne E1 Box ?(

  • Mann, jetzt schreib ich einen Text und dann kackt der Rechner weg.


    Nochmal kurzfassung:


    Plugin.py gewechselt, auf Enigma1 gestellt, streamport auf 8001 und webif port auf 80.


    Geht nix, kommt kein Bouquet, wenn ich auf Alle drücke bleibt die Liste leer, wenn ich auf Favoriten drücke kommt das eigene Bouquet von der 7025er.



    Bei dem hier:


    http://192.168.178.100/control/zapto?getpids



    kommt eine Ausgabe mit 2x 3 Zahlen.



    Was soll ich noch testen?



    *EDIT*


    Der Stream bei E1 für ARD schaut so aus:


    http://192.168.2.150:31339/0,0065,0065,0066,0067,006a


    Das heißt der Streamport ist 31339 bei E1 !!!


    Das erste Problem ist aber erstmal, dass das Bouquet nicht zum lesen geht...


  • bin gerade darauf gestossen ;)
    werde es mal mit der kombi 7000er und 800er testen :)

    dau bleibt dau, daran kann der beste dev nichts ändern<br><br>

  • wenn ich bei mir bei ZDF auf der Konsole folgendes eingebe, 192.168.0.100 ist IP von meiner Box
    wget -q -O - http://root:dbox2@192.168.0.100/video.m3u
    erhalte ich als Ausgabe:
    http://192.168.0.100:31339/0,0064,006e,0078,0079,007d
    wenn ich folgendes bei mir eingebe:
    wget -q -O - http://192.168.0.100/control/zapto?getpids
    erhalte ich:
    110
    120


    bekomme nur Video und Audio PID in dezimal, oben ist alles in hex und vlc gerecht


    mrvica

  • ich habe eine Kombination DM800 und DM500.


    Teste gerne.

  • Quote

    Geht nix, kommt kein Bouquet, wenn ich auf Alle drücke bleibt die Liste leer, wenn ich auf Favoriten drücke kommt das eigene Bouquet von der 7025er.


    Ja, es geht auch nur BLAU / Favoriten im moment. Steht auch in den release notes oben im ersten posting. Auch ists korrekt das die Bouquets von der lokalen Box ausgelesen werden und nicht von der remote box. Das wird sich erst in Zukunft ändern.


    Quote

    Was soll ich noch testen?


    Ob der erste von 3 benötigten Schritten schonmal funktioniert. Funktioniert der ZAP, sprich wenn du auf deiner DM7025 nen Kanal wie RTL anklickst, springt dann deine andere Remote Box um auf den ausgewählten Kanal?


    Der 2te Schritt wäre dann die PIDs richtig auszulesen und der dritte dann den stream zu starten.


    Schritt 2 und 3 kann ich aber erst machen wenn das zappen wenigstens schonmal funktioniert! Dazu müsst ihr mir halt sagen ob das zappen auf der remote box wenigstens schonmal funktioniert, dann sind wir auf dem richtigen Weg.


    mrvica2
    Viele dank! Das hab ich gesucht.


    Scheint etwas anders auszusehen der string in der m3u datei bei euch. Daher werden wohl die falschen PIDs ausgelesen ...


    hier mal ne neue *.py datei in der die PIDs hoffentlich richtig ausgelesen werden? Wenn ihr im Plugin den Sender ZDF auswählt sollte nen Popup aufgehen und dort die aPID "0x6e" und vPID "0x64" angezeigt werden !?


    Bitte einfach die Datei mit der angehängten austauschen und GUI Rebooten:
    /usr/lib/enigma2/python/Plugins/Extensions/RemoteTV/plugin.py

  • so ich bekomme nun diesen fehler


    Error 2:
    [Failure instance:Traceback (failure with no frames):<class`twisdet.web.error.Error´>:401 Unauthorized]

    dau bleibt dau, daran kann der beste dev nichts ändern<br><br>