web (HbbTV, VDR*ELEC), Milestone 1 erreicht

  • PS: Könnte man die Werbung nicht anhand der Auflösung überspringen ?

    Anhand der Auflösung vielleicht nicht, aber vielleicht anhand der URL. Es gibt da verschiedene Werbung-Content-Provider die ihre Werbevideos so ausliefern. Ich fürchte nur, daß Werbung auch plötzlich innerhalb einer Sendung eingeblendet wird und da könnte es schwierig werden. Aber soweit habe ich bisher nicht schauen können :) Deshalb habe ich erst einmal nicht viele Versuche unternommen, die Werbung zu unterbinden, da der Wechsel Werbung/Sendung unvorhersehbar ist und das auch irgendwie funktionieren sollte.

  • Anhand der Auflösung vielleicht nicht, aber vielleicht anhand der URL.

    Ich transportiere jetzt die Video Informationen vom Transcoder zum VDR. Dort kann ich jetzt entscheiden, ob ein cPlayer::DeviceClear ausreicht oder ob noch mehr erforderlich ist.

    Der entsprechende Code fehlt an der Stelle noch, aber die Informationen sind alle gesammelt.


    Ich musste dazu alle 3 Komponenten ändern und es ist sinnvoll, bei einem Update den Browser, das Plugin und den Transcoder zu aktualisieren, damit das Zusammenspiel noch passt und es keine seltsamen Fehler gibt.


    Ich weiß noch nicht wann, aber ich werde demnächst CEF (chromium embedded framework) aktualisieren. Leider gab es da ein paar API Changes, so daß ich das noch verschoben habe. In der bestehenden Version bekomme ich hin und wieder und nicht reproduzierbar, Exceptions, die tief aus Chromium kommen und leider den Browser weniger bis gar nicht mehr bedienbar machen. Ob das Problem in den neueren Version gefixed ist, weiß ich nicht, aber probieren will ich es.

  • RE: Unverschlüsselte Sendung bei MagentaSport aufzeichnen? hat mich auf eine Idee gebracht. Wäre es theoretisch möglich, den Stream, den man vom transcoder bekommt aufzuzeichnen? Unabhängig davon, dass ich nicht weiß, ob man das mit Inhalten aus den Mediatheken überhaupt dürfte.

  • Wäre es theoretisch möglich, den Stream, den man vom transcoder bekommt aufzuzeichnen?

    Das ist nicht nur theoretisch möglich. Wird der entsprechende Plugin-Parameter gesetzt, dann werden alle eingehenden Streams (getrennt nach Video) in das Aufnahmeverzeichnis gespeichert.

    Das habe ich mal zu Debug-Zwecken eingebaut und man kann nicht situativ entscheiden, ob man jetzt aufnehmen will oder nicht. Aber da dies nur ein Flag ist, sollte man das auch zur Laufzeit ändern können - theoretisch.

    Code
    { "savets",      optional_argument, nullptr, 's' },
  • Ich habe nun mal alle 3 Programme (cefbroweser, remotrans, web plugin) updated und nun geht schon die ARD nicht mehr :(

    Es kommt zwar noch die Startseite, aber wenn ich dann in die Mediathek gehe, dann kommt kurz die Seite in 1080x720

    dann geht sie aber sofort wieder weg und die skalierte Seite kommt nicht mehr und das TV Bild läuft sichtbar weiter.

  • Äh was? Es geht noch gar nicht um ein Video, sondern nur um die Seite selbst?


    Ich bin gerade mal die Git Logs durchgegangen und kann nichts finden, daß das Verhalten erklären könnte. Betätigt habe ich mich Wesentlichen nur mit dem Video-Handling oder es zumindest versucht.


    Gibt es Hinweise in den Logs? Weisst du denn ungefähr den letzten Stand, der noch funktioniert hat?

  • Scheisse. Es hat doch etwas mit den Video-Änderungen zu tun, auch wenn kein Video angezeigt wird.

    Hardcoded width/height (als Attribute) beim HTML object (broadcast, also TV) fallen mir in den Rücken, weil der zoom nicht berücksichtigt wird.

    Das Broadcast-Element hat die Größe 1280x720, die Seite 1920x1080 und das sollte nicht sein. Die Mischung aus css + html attributen ist hier echt ungünstig.


    Wenn du den Browser mit -z 1280 startest, dann sollte es wieder funktionieren.

  • Ich habe oft im Video den Lautstärkebalken oben im Bild und er geht nicht weg.

    Dann habe ich versucht bei RTL mal Werbung und Film anzuschauen aber beim laden der Werbung bleibt er hängen .

    Im Log sehe ich zwar das wohl ein Film startet aber es kommt kein Bild, vermutlich also keine weiteren Daten.

    Ich sehe leider nichts mehr im Log vom web plugin.


    Edit:

    Jetzt habe ich mal auf ARD einen Film gestreamt und der bricht nach wenigen Minuten ab mit folgender Meldung:

    Code
    Sep 21 13:43:29 Odroid vdr[6062]: [6104] [vdrweb] Error playing ts saving : 56
    Sep 21 13:43:29 Odroid vdr[6062]: [6104] [vdrweb] Delete Player...
  • Aber ich denke du behebst den Fehler noch :)

    Es gibt einen "Fix" für den Browser. Mir ist da keine bessere Lösung eingefallen. Irgendwas stimmt nicht mit den Werten, die der Browser für die einzelnen Element zurückgibt.

    Ich habe oft im Video den Lautstärkebalken oben im Bild und er geht nicht weg.

    Der Balken wird mittlerweile durch das Plugin erzeugt. Das Video startet ohne Balken, dann spielst du mit der Lautstärke, aber der Balken verschwindet nicht spätestens nach 3 Sekunden wieder?

    Findest du im syslog die Meldung "WebOSDPage::DeleteVolume"? Einfach, mehrfach, gar nicht?

    Dann habe ich versucht bei RTL mal Werbung und Film anzuschauen aber beim laden der Werbung bleibt er hängen .

    Da gibt es 2 potentielle Probleme.
    1. Das Video ist DRM geschützt und der Transcoder steigt relativ schnell aus. Ich habe bisher vergeblich versucht, den Fall zu erkennen, aber gelungen ist es mir nicht.


    2. Es findet ein Wechsel der Auflösung zwischen Werbung und Film statt.

    Im syslog kann man so etwas finden (ich habe gerade noch einen Fix für das Plugin gepushed):

    Code
    vdr: [2705147] [vdrweb] ResetVideo received: Coords x=0, y=0, w=0, h=0
    vdr: [2705147] [vdrweb] video change from h264/avc1/640/360 to h264/avc1/768/432
    vdr: [2705147] [vdrweb] Device Reset requested
    vdr: [2705147] [vdrweb] SetVideoSize in video player: x=0, y=0, width=0, height=0
    vdr: [2705148] [vdrweb] Error playing ts: 17296 13912
    vdr: [2705148] [vdrweb] Error playing ts, abort: 3384 0

    Ein DeviceClear reicht nicht aus, leider. Ich habe schon versucht mit StopVideo/StartVideo statt einem ResetVideo zu arbeiten. Allerdings habe ich ziemliche Probleme mit dem Sync. Wann ist der Stop wirklich durch, wann darf ich wieder starten? Das OSD geht an/aus.

    Versuche mit deta/susp habe ich schnell wieder aufgegeben, das wird nix.


    Moment. Der bleibt beim Laden der Werbung selbst hängen? Was sagt denn der Transcoder? Arbeitet der?

  • Findest du im syslog die Meldung "WebOSDPage::DeleteVolume"?

    Ja das sehe ich. Aber ich glaube das Problem liegt woanders. Wenn der Film abbricht (warum auch immer) dann kommt der Volumebalken und das normale TV Bild wird wieder angezeigt. Dann bleibt der Balken stehen. Ich denke wir sollten erstmal das Problem finden warum der Stream einfach abbricht. Mir ist RTL und Co. nicht wichtig, Hauptsache die Mediatheken gehen. Und da sieht es bis auf die Abbrüche schon super aus.

    Es findet ein Wechsel der Auflösung zwischen Werbung und Film statt

    Das will ich im softhdodroid plugin abfangen und dann den Decoder neu starten. Nur ist es mir bisher halt nicht gelungen das Testszenario zum laufen zu bringen :)

  • Zum Streamabbruch:

    Du setzt in PlayPacket bei jedem "Problem" tsError = true. Das ist m.E. falsch weil ja TeilPakete richtig gehändelt werden und keinen Fehler darstellen.

    Derzeit bricht der Stream dann aber ab weil du den Player dann stoppst. Das habe ich bei mir zum testen mal geändert und dann laufen auch die Streams.

    Der einzige Grund tsError auf true zu setzen wäre evtl. wenn du die Daten längere Zeit (>2s) nicht los wirst. Weil dann entweder der Stream Pausiert ist oder ein anderes Problem vorliegt.


    Nun zum Problem mit dem laden der Werbung bei RTL:

    Da ist es tatsächlich so das er beim laden hängen bleibt und der Stream überhaupt nicht losläuft. Könnte evtl. an meinem Pi-Hole liegen, aber da ist der testvdr eigentlich freigeschaltet. Da suche ich nun mal weiter.


    Edit:

    Also so wie es aussieht ist es kein Problem mit dem Stream sondern wohl ein Timing Problem. Ich habe mal das Log von remotrans angehängt wo versucht wird ein Stream von RTL zu starten. Da erst immer Werbung kommt dachte ich das es daran liegt. Scheint aber generell zu sein. Manchmal klappt es ja auch .

Participate now!

Don’t have an account yet? Register yourself now and be a part of our community!