[Announce] HbbTV plugin / offscreen browser v0.0.9

  • Der Build von nng schlägt fehlt wenn es mit make mit -j2 oder höher aufgerufen wird, was beim debhelper compat-Level >=10 automatisch der Fall ist. Eventuell kann man das noch im Makefile bzw. den CMAKE-Dateien der inkludierten nng-Version festzurren, damit es da keine unschönen Überraschungen gibt.


    Ich habe das Plugin gerade in einer ersten Fassung für focal nach ppa:yavdr/experimental-vdr hochgeladen. Wenn ich das richtig verstehe, muss man ansonsten nur noch das PPA von Zabrimus einbinden und das Plugin konfigurieren, dann sollte alles nötige vorhanden sein.

    yaVDR-Dokumentation (Ceterum censeo enchiridia esse lectitanda.)

  • Ich habe das Plugin gerade in einer ersten Fassung für focal nach ppa:yavdr/experimental-vdr hochgeladen. Wenn ich das richtig verstehe, muss man ansonsten nur noch das PPA von Zabrimus einbinden und das Plugin konfigurieren, dann sollte alles nötige vorhanden sein.

    Das PPA ist nicht aktuell. Die CEF-Binaries werden für den Browser mit make prepare_release geladen und lokal bereitgestellt. Die Binaries für CEF könnten klappen, aber der Browser ist komplett veraltet.


    Ich werde bei Gelegenheit beides aktualisieren. Aber im Moment würde ich von einer Nutzung eher abraten.

  • Ich habe das PPA aufgeräumt und den Browser hochgeladen: vdr-osr-browser - 0.0.2-prerelease-ppa6~focal

    Zumindest wird das Paket gebaut und der Browser samt Abhängigkeiten installiert.


    Die Probleme mit nng hatte ich auch hier (und noch andere aus thirdparty). Aber das scheint irgenwie mit dem Paketbau zusammenzuhängen. Meine Lösung bestand darin, in debian/rules unter

    override_dh_auto_configure

    erst die die thirdparty libraries zu bauen (ähnlich wie im Makefile).

    Das normale Build fand dann die bereits vorhandenen Libraries und hat dann nur noch den eigentlichen Browser gebaut.

  • Betrifft das auch Nicht-Debian Nutzer?


    vdr-User-# 755 to_h264 chk_r vdr-transcode github

  • Danke an Seahawk und Zabrimus, nach etwas basteln läuft es auch bei mir.


    Mal so eine allgemeine Interessensfrage - wäre es mit dieser Methode auch theoretisch möglich z.B. ein Netflix oder Amazon plugin zu entwickeln?

  • Die Probleme mit nng hatte ich auch hier (und noch andere aus thirdparty). Aber das scheint irgenwie mit dem Paketbau zusammenzuhängen.

    Ab debhelper 10 versucht er den Paketbau zu parallelisieren und da scheint die Reihenfolge der Build-Operationen nicht zu stimmen, weil die libnng.a nicht rechtzeitig fertig ist. Ich habe für das vdr-plugin-hbbtv erst mal das compat-Level 9 gesetzt, damit baut er noch nicht parallel.

    yaVDR-Dokumentation (Ceterum censeo enchiridia esse lectitanda.)

  • Ich habe versucht es unter yavdr zum laufen zu bringen:


    50-hbbtv.conf

    Code
    1. #
    2. # hbbtv VDR plugin arguments
    3. #
    4. [hbbtv]
    5. -s
    6. -p "/opt/vdr-osr-browser/vdrosrbrowser"
    7. #-c "--debug"
    8. -l /var/lib/vdr/browser.log


    Im browser.log steht diese Fehlermeldung:


    Code
    1. [2020-06-13 15:47:13.039] [vdrosrbrowser] [info] In Main, argc=1, Parameter:
    2. [2020-06-13 15:47:13.039] [vdrosrbrowser] [info] ./vdrosrbrowser
    3. Unable to bind nanomsg socket to ipc:///tmp/vdrosr_tovdr.ipc. Please check the file permissions. Aborting...


    Wie setze ich diese Rechte?


    Gruß


    Murry

  • Ich habe das Gefühl das der vdr als root laufen muss:


    Code
    1. [2020-06-13 16:16:53.377] [vdrosrbrowser] [info] In Main, argc=1, Parameter:
    2. [2020-06-13 16:16:53.377] [vdrosrbrowser] [info] /opt/vdr-osr-browser/vdrosrbrowser
    3. Unable to create pipe ffmpeg_putput.ts. Aborting...
  • So hat es bei mir funktioniert:

    Code
    1. sudo chown 666:666 /opt/vdr-osr-browser/ -R
    2. sudo chown 666:666 /tmp/vdrosr_tovdr.ipc

    Tolle Arbeit.


    Gruß

    Murry

  • Hab’s gestern unter yavdr ansible (Bionic) installiert und es läuft auch. Allerdings ist der VDR unbedienbar. Sender umschalten geht nicht (Es kommt kein Bild/Ton) hbbtv bleibt aber bedienbar und liefert auch den red Button; Mediatheken usw. laufen auch...

    Wenn das behoben wäre fände ich es auch als Mehrwert im VDR ?


    P.S. Ich nutze softhdcuvid

  • Betrifft das auch Nicht-Debian Nutzer?

    Nein. Überhaupt nicht. Es hat nur etwas mit dem Package-Build von Debian zu tun.


    Wie seahawk1986 ausgeführt hat, läuft der Build wohl zu "parallel". Aber das würde es erklären, warum ich Probleme mit dem ppa und dem Browser hatte.

    Ab debhelper 10 versucht er den Paketbau zu parallelisieren


    sudo chown 666:666 /tmp/vdrosr_tovdr.ipc

    Dabei bekomme ich etwas Gänsehaut.


    Im Github-Ticket wurde das Problem schon angesprochen und ich hatte es auch. Allerdings nur dann, wenn ich den Browser und VDR versehentlich mit verschiedenen Nutzern (vorzugsweise root :rolleyes:) gestartet hatte. Dann konnte die andere Applikation nicht mehr lesend/schreibend auf die Sockets zugreifen.

    Aber so langsam interessiert mich, wie das Problem überhaupt auftauchten kann, wenn der Browser intern gestartet wird.

    - VDR wird gestartet und wechselt evt. den User?

    - Es wird geforkt und dann der Browser gestartet. Unter welchem User läuft denn dann der Browser? Der Ursprungliche, mit dem VDR gestartet wurde oder der Login-User oder der neue mit weniger Capabilities?

    Irgendeinen Grund muss es doch für das Problem geben?


    Unable to create pipe ffmpeg_putput.ts

    Der Browser (bzw. der User) braucht Schreibrechte auf das Verzeichnis. Die Pipe muss angelegt werden und zumindest das Cache-Verzeichnis wird genutzt. Vielleicht müsste man mal schauen, ob die File-Permissions nicht auf ein Minimum beschränkt werden kann.

    Allerdings ist der VDR unbedienbar. Sender umschalten geht nicht (Es kommt kein Bild/Ton) hbbtv bleibt aber bedienbar und liefert auch den red Button; Mediatheken usw. laufen auch...

    Ja. Das hatte ich schon öfter angesprochen. Wenn man einmal im HbbTV-Modus ist, dann bleibt man solange da drin, bis entweder der Zurück-Button (back) oder das Menu aufgerufen wird, so daß wieder der normale Modus aktiviert wird.

    Aber Sender umschalten. Wenn ich im Plugin an den Button komme, wäre das auch eine zusätzliche Variante, den Modus zu beenden. Für ein gutes/besseres Bedienkonzept fehlen mir die Ideen.


    Mal so eine allgemeine Interessensfrage - wäre es mit dieser Methode auch theoretisch möglich z.B. ein Netflix oder Amazon plugin zu entwickeln?

    Das Plugin stellt nur das OSD dar und liest TS-Daten vom Browser (Videos) und gibt die Key-Events an den Browser. Der Browser selbst macht für HbbTV etwas mehr, damit die Seite überhaupt gerendert wird. Reine HTML-Pages sollten direkt angezeigt werden können. Die Keys unterscheiden sich zwischen HbbTV und der normalen Bedienung, aber das sollte kein Problem sein. Ob allerdings DRM-Zeugs funktioniert? CEF und damit der Browser basieren auf Chromium und da fürchte ich DRM wird nicht so das Thema sein. Chrome selbst hat zwar Libs dabei, aber dann wäre die Lizenzfrage problematisch.

  • Ja. Das hatte ich schon öfter angesprochen. Wenn man einmal im HbbTV-Modus ist, dann bleibt man solange da drin, bis entweder der Zurück-Button (back) oder das Menu aufgerufen wird, so daß wieder der normale Modus aktiviert wird.

    Aber Sender umschalten. Wenn ich im Plugin an den Button komme, wäre das auch eine zusätzliche Variante, den Modus zu beenden. Für ein gutes/besseres Bedienkonzept fehlen mir die Ideen.

    1. Beim Samsung Fernseher gibt es eine Return Taste auf der FB. Die springt in den Hbbtv Menues immer eins zurück (so als ob man den Menüeintrag "zurück" ausgewählt hat. Es wäre prima wenn das hier aus so klappen würde. Daneben braucht es dann noch eine Exit Taste um hbbtv abzubrechen. Die VDR-Menütaste würde mir da auch genügen (so wie das ja derzeit auch geht).


    2. Wenn man bei ARD auf den Punkt tagesschau geht dann bricht der browser ab und es kommt nichts mehr (leider). Das war schonmal anders. Nur fehlte dann das Streambild im Fenster, Wenn du keine Möglichkeit hast den Stream in ein Fenstern zu positionieren dann lass es mich wissen. Dann stelle ich dir eine Funktion dafür zur Verfügung. Die skins können das ja schon.


    3. Sender umschalten wenn man im hbbtv Modus ist kann kein normaler Fernseher und dann sind ja auch die Links weg. Deswegen halte ich das für eine schlechte Idee.


    4. Evtl. könnte man den hbbtv Modus nach einem Senderwechsel automatisch für ein paar Sekunden aktivieren. Das machen die Fernseher ja auch so.

    Dann könnte man die Rote taste drücken ohne das vorher übers Menü auszuwählen (evtl. als Option ein-/ausschaltbar). Aber das würde sich dann u.U. mit der Kanalanzeige beissen. Im Prinzip bräuchte man für das hbbtv ein eigenes OSD. Da könnte ich wohl auch etwas machen.


    jojo61

  • Hallo zabrimus,

    svdrpsend plug hbbtv GETURL liefert auch nach verlassen des hbbtv Modus noch die URL. Lässt sich da noch ein rücksetzen/löschen der URL einbauen?

    So könnte ich über GETURL den Status des hbbtv Modus erkennen.


    machtnix

  • Fände ich nicht gut, denn es dient ja zur Fehlersuche nach einem Problem mit dem Browser.


    vdr-User-# 755 to_h264 chk_r vdr-transcode github