Enigma ehttpd
-
- Einsteiger
- Beiträge: 141
- Registriert: Mittwoch 24. März 2004, 21:32
Enigma ehttpd
Ich habe mich am Wochenende damit beschaeftigt XMG Enigma-tauglich zu bauen. Es sieht soweit ganz gut aus. Das Tool ist bis auf einige Punkte Neutrino-kompatibel. Ein paar essentielle Sachen fehlen aber noch, oder sind wohl noch etwas "buggy". Ich habe mich zum grossen Teil an das Enigma-WiKi zum ehttpd gehalten. Getestet habe ich mit dem JtG-Image.
http://wiki.tuxbox-cvs.sourceforge.net/Ehttp_api_doku
- der Aufruf "/xml/boxstatus" liefert mir das Jahr 2038. Es ist auch immer die gleiche Uhrzeit, egal wann ich den Aufruf mache.
- /xml/imageinfo liefert einen 404
- /cgi-bin/streaminfo liefert einen 404
- der Aufruf "/channels/getcurrent" liefert nur den Sendernamen. Waere schoen, wenn hier die Channel-Id mitgegeben wuerde.
- im Aufruf "/xml/currentservicedata" fehlt der Video-Pid
- Es fehlt ein Aufruf zum Aufräumen der Timer
- wie ändert und löscht man einen Timer?
Ein weiteres Problem ist der SPTS-Modus. Ich habe diesen in einer Telnet-Session gesetzt. Das Setzen war wohl erfolgreich, das sagte zumindest die daraufhin erfolgte Status-Abfrage. Es wurde aber weiterhin PES aufgenommen, eine Wiedergabe mit VLC, mplayer funktionierte auch nicht.
http://wiki.tuxbox-cvs.sourceforge.net/Ehttp_api_doku
- der Aufruf "/xml/boxstatus" liefert mir das Jahr 2038. Es ist auch immer die gleiche Uhrzeit, egal wann ich den Aufruf mache.
- /xml/imageinfo liefert einen 404
- /cgi-bin/streaminfo liefert einen 404
- der Aufruf "/channels/getcurrent" liefert nur den Sendernamen. Waere schoen, wenn hier die Channel-Id mitgegeben wuerde.
- im Aufruf "/xml/currentservicedata" fehlt der Video-Pid
- Es fehlt ein Aufruf zum Aufräumen der Timer
- wie ändert und löscht man einen Timer?
Ein weiteres Problem ist der SPTS-Modus. Ich habe diesen in einer Telnet-Session gesetzt. Das Setzen war wohl erfolgreich, das sagte zumindest die daraufhin erfolgte Status-Abfrage. Es wurde aber weiterhin PES aufgenommen, eine Wiedergabe mit VLC, mplayer funktionierte auch nicht.
Re: Enigma ehttpd
das is wohl ein bug, den ich mal fixen muss.z3r0 hat geschrieben:I
- der Aufruf "/xml/boxstatus" liefert mir das Jahr 2038. Es ist auch immer die gleiche Uhrzeit, egal wann ich den Aufruf mache
dieser aufruf ist ersetzt worden durch: /xml/boxinfo
- /xml/imageinfo liefert einen 404
muss /xml/streaminfo heissen- /cgi-bin/streaminfo liefert einen 404
das ist eine funktion fuer dreamtv gewesen... vielleicht fragst du mal lazyt, wie er die benutzt hat. da gibts noch /cgi-bin/getServices?listcontent=true- der Aufruf "/channels/getcurrent" liefert nur den Sendernamen. Waere schoen, wenn hier die Channel-Id mitgegeben wuerde.
die video pid passt da nicht dazu. wenn du die pids brauchst musst du noch /xml/streaminfo aufrufen, da stehen alle drin.- im Aufruf "/xml/currentservicedata" fehlt der Video-Pid
die gibts: /cleanupTimerList- Es fehlt ein Aufruf zum Aufräumen der Timer
da muss ich mal nachschauen.. weiss ich jetzt nicht auswendig.- wie ändert und löscht man einen Timer?
-
- Einsteiger
- Beiträge: 141
- Registriert: Mittwoch 24. März 2004, 21:32
Wieso passt er da nicht dazu? Die Audio-Pids sind doch auch drin, sowie alle möglichen weiteren Parameter. Es duerfte auf jeden Fall nicht schaden, wenn hier noch der Video-Pid zurückgegeben wird. Es werden fuer die Sofort-Aufnahme alle Pids + Beschreibung (AC3, Stereo) benötigt. Waere schade, wenn dafür zwei Aufrufe noetig waren.Zitat:
- im Aufruf "/xml/currentservicedata" fehlt der Video-Pid
die video pid passt da nicht dazu. wenn du die pids brauchst musst du noch /xml/streaminfo aufrufen, da stehen alle drin.
Gibt es alternativ einen Aufruf um die aktuelle Channel-ID abufragen? Oder einen Aufrum um den aktuellen EPG zu erfragen? Also den EPG der gerade läuft, und nicht den des ganzen Tages.Zitat:
- der Aufruf "/channels/getcurrent" liefert nur den Sendernamen. Waere schoen, wenn hier die Channel-Id mitgegeben wuerde.
das ist eine funktion fuer dreamtv gewesen... vielleicht fragst du mal lazyt, wie er die benutzt hat.
-
- Einsteiger
- Beiträge: 141
- Registriert: Mittwoch 24. März 2004, 21:32
Der Aufruf "/channels/getcurrend" hat sich erledigt.
Den laufenden Sender + die Channel-Id bekommt man auch aus /xml/streaminfo
Den laufenden Sender + die Channel-Id bekommt man auch aus /xml/streaminfo
Fehlen momentan nur noch die kompletten Pids, Ändern/Löschen der Timer, sowie eine korrekte Box-ZeitService Provider ProSiebenSat.1
Service Reference 1:0:1:382:21:85:c00000:0:0:0:
zum umschalten der audio tracks braucht man halt die pids... zum umschalten der video channels nur die service references.
und bei den untervideokanaelen weiss ich gar net, wie man da an die video pids rankommen soll...
wieso brauchst du fuer direktaufnahme die video pid? die service reference sollte da doch reichen...
ne, geht sogar ganz ohne:
/cgi-bin/videocontrol?command=record
und bei den untervideokanaelen weiss ich gar net, wie man da an die video pids rankommen soll...
wieso brauchst du fuer direktaufnahme die video pid? die service reference sollte da doch reichen...
ne, geht sogar ganz ohne:
/cgi-bin/videocontrol?command=record
-
- Einsteiger
- Beiträge: 141
- Registriert: Mittwoch 24. März 2004, 21:32
Irgendwie sind die ganzen Pid-Aufrufe so nicht brauchbar. Es fehlt ein Aufruf der nur die Pids, sowie die Beschreibung zurückgibt. Die Viedo-Pid brauche ich nicht fuer die Direktaufnahme, sondern fuer udrec(Sofortaufnahme oder Timeraufnahme). Es wird ein Dialog angezeigt, in dem der User die gewünschten Pids selektiert. Ich brauche die Video-Pid (+Audio-Pids mit Beschreibung) auch fuer die Wiedergabe (ähnlicher Dialog wie Aufnahme). Klar kann ich mir die ganzen Pids mit 2-3 Aufrufen zusammensammeln. Sinnvoll waere es aber auf alle Faelle alle Pids mit nur einem Aufruf zu holen.
/xml/streaminfo liefert nur einen Audio-Pid, ohne Beschreibung
/xml/currentservicedata liefert alles, nur keinen Video-Pid
Die Pids der Unterkanäle sind für mich nicht interessant, sondern nur der Video-Pid des gerade laufenden Senders.
Es gibt da noch einen Aufruf video.pls. Koenntest du einen ähnlichen Aufruf basteln, der die gleichen Pids wie hier zurückgibt + Beschreibung fuer die Audio-Pids??
/xml/streaminfo liefert nur einen Audio-Pid, ohne Beschreibung
/xml/currentservicedata liefert alles, nur keinen Video-Pid
Die Pids der Unterkanäle sind für mich nicht interessant, sondern nur der Video-Pid des gerade laufenden Senders.
Es gibt da noch einen Aufruf video.pls. Koenntest du einen ähnlichen Aufruf basteln, der die gleichen Pids wie hier zurückgibt + Beschreibung fuer die Audio-Pids??
Zuletzt geändert von z3r0 am Montag 25. Juli 2005, 16:17, insgesamt 1-mal geändert.
-
- Developer
- Beiträge: 245
- Registriert: Mittwoch 13. März 2002, 21:19
-
- Einsteiger
- Beiträge: 141
- Registriert: Mittwoch 24. März 2004, 21:32
/deleteTimerEvent?ref=#REFERENCE#&start=#START#&type=#TIMERTYPE#&force=no/yes
/editTimerEvent?<dieselben parameter wie addtimerevent> plus old_type=...&old_stime=...
zur identifikation des timers.
bei old_data muss der parameter <typedata> (habe ich erst kuerzlich reingemacht) aus der timerliste uebernommen werden
und old_stime ist die alte startzeit <start>
/editTimerEvent?<dieselben parameter wie addtimerevent> plus old_type=...&old_stime=...
zur identifikation des timers.
bei old_data muss der parameter <typedata> (habe ich erst kuerzlich reingemacht) aus der timerliste uebernommen werden
und old_stime ist die alte startzeit <start>
-
- Einsteiger
- Beiträge: 141
- Registriert: Mittwoch 24. März 2004, 21:32
-
- Interessierter
- Beiträge: 73
- Registriert: Freitag 14. Juni 2002, 19:44
-
- Einsteiger
- Beiträge: 141
- Registriert: Mittwoch 24. März 2004, 21:32
-
- Interessierter
- Beiträge: 73
- Registriert: Freitag 14. Juni 2002, 19:44
-
- Interessierter
- Beiträge: 73
- Registriert: Freitag 14. Juni 2002, 19:44
-
- Einsteiger
- Beiträge: 351
- Registriert: Donnerstag 24. Oktober 2002, 20:14
Also mit dem letzten Image für die 7020 vom 29.06.2005, wird noch das richtige Datum angezeigt. Der Fehler muss sich also seit diesem Datum eingeschlichen haben.digi_casi hat geschrieben:also ich habe auch den 18. januar... aber ich meine, auch schon mal die richtige gesehen zu haben...
Mfg Sat_Man
-
- Einsteiger
- Beiträge: 141
- Registriert: Mittwoch 24. März 2004, 21:32
Danke, mit dem CVS-Stand von heute funktioniert nun die Uhrzeit. Leider bin ich auf 2 weitere Probleme gestossen.
1. Beim Schreiben des Timers bleibt der Parameter "after_event" unberücksichtigt. Probiert habe ich es mit:
after_event=shutdown oder
afterevent=shutdown
2.
edit1:
Es heisst "/changeTimerEvent?<...>" und nicht "editTimerEvent". Damit hat sich mein 2. Problem erledigt.
edit2: aber einen weitern Bug(oder ist das grundsätzlich nicht möglich?) gefunden. Es ist nicht möglich den Sender zu ändern.
edit3: Im WebIF lassen sich keine Wiederhol-Tage einstellen. Die Einstellungen bleiben beim Speichern unberücksichtigt.
1. Beim Schreiben des Timers bleibt der Parameter "after_event" unberücksichtigt. Probiert habe ich es mit:
after_event=shutdown oder
afterevent=shutdown
2.
edit1:
Es heisst "/changeTimerEvent?<...>" und nicht "editTimerEvent". Damit hat sich mein 2. Problem erledigt.
edit2: aber einen weitern Bug(oder ist das grundsätzlich nicht möglich?) gefunden. Es ist nicht möglich den Sender zu ändern.
edit3: Im WebIF lassen sich keine Wiederhol-Tage einstellen. Die Einstellungen bleiben beim Speichern unberücksichtigt.
den sender kann man (wenn ich mich recht erinnere) nicht aendern. da muss man den timer loeschen und einen neuen erstellen.
die wochentage kann man angeben mit: mo=on&tu=on.... etc.
der parameter fuer after_event heisst after_event und die werte sind numerisch... z.b. ePlaylistEntry::doShutdown (da musst mal gucken, welchen wert der hat).
die wochentage kann man angeben mit: mo=on&tu=on.... etc.
der parameter fuer after_event heisst after_event und die werte sind numerisch... z.b. ePlaylistEntry::doShutdown (da musst mal gucken, welchen wert der hat).
-
- Einsteiger
- Beiträge: 141
- Registriert: Mittwoch 24. März 2004, 21:32
-
- Einsteiger
- Beiträge: 141
- Registriert: Mittwoch 24. März 2004, 21:32
Mit dem CVS-Stand von gestern funktioniert die ngrab-Aufnahme nicht mehr.
Um eine Aufnahme zu starten wird normalerweise uber den TCP-Port 31340 der Request an die Box abgeschickt. Die Box sollte in diesem Fall auf den Request antworten. Tut sie aber nicht, sie schliesst den Socket einfach.
Hier ein Beispiel mit udrec
Um eine Aufnahme zu starten wird normalerweise uber den TCP-Port 31340 der Request an die Box abgeschickt. Die Box sollte in diesem Fall auf den Request antworten. Tut sie aber nicht, sie schliesst den Socket einfach.
Hier ein Beispiel mit udrec
Vor dem Update gestern funktionierte das definitiv mal.F:\Java\workspace\XMediaGrabber>udrec.exe
15:32:27 listening to any host on port 4000
15:33:01 wait xml
15:33:01 to DBox: VIDEO 31341 16 0 1 vaa 4ff 500 501
Unbehandelte Ausnahme: System.Net.Sockets.SocketException: Eine vorhandene Verbi
ndung wurde vom Remotehost geschlossen
at System.Net.Sockets.Socket.Receive(Byte[] buffer, Int32 offset, Int32 size,
SocketFlags socketFlags)
at System.Net.Sockets.Socket.Receive(Byte[] buffer)
at Record.Start()
at DBoxRecordControl.Start()
at udrec.Main(String[] args)
F:\Java\workspace\XMediaGrabber>