cef-osr-browser und vdr-plugin-htmlskin/vdr-plugin-hbbtv

  • Hi,


    in den Sourcen zu app mgr hbbtv finde ich für HbbTV zwar includes, aber nicht die Sourcen. Das Repository scheint z.T. Verweise auf closed Source zu beinhalten.


    Aber zum Thema: Der AppManager ist genau in dem Javascript-Teil (siehe hbbtv.js bzw. die anderen js-Dateien) implementiert, der dem Browser beiliegt und der aus HybridTvViewer bzw. aus meiner leicht gepatchten Version des HybridTvViewer erzeugt wurde. Viele Klassen sind leer und ich weiß nicht, welchen Sinn die haben oder ob sie für unsere Zwecke überhaupt benötigt werden.


    Wenn du die Meldung siehst, nehme ich an, du konntest durch die Applikation wandern und hast ein Video zur Ansicht ausgesucht? Die spannende Frage wäre, welche Codecs das Video verwendet. Bisher sind mir nur mp4 (mit h.264 / aac) untergekommen und mit der libcef aus dem PPA hatte ich noch kein Video, das nicht dargestellt wurde. Was natürlich nicht drin ist, ist h.265. Ich habe dazu zwar eine Anleitung gefunden, wie man das interne ffmpeg patchen und modifizieren müsste, um es zu aktivieren, aber das war mir zu heikel.


    Kannst du im Log-Spam des Browsers den Link auf das eigentliche Video finden? Mich würde interessieren, was "ffprobe <link>" an Codecs ausgibt.


    Ein Beispielausgabe wäre


    Ich habe noch ein wenig weiter geforscht und habe eine Idee, wie ich das Video sinnvoll ausgeben könnte. Vielleicht bräuEin paar Experimente müssen noch folgen.


    Zabrimus



  • Hi,

    the log from vdrosrbrowser

    Es ist eagl in wlehcer Reiehnfogle die Bchustebaen in Woeretrn vokrmomen. Huapstache der estre und leztte Bchustbae sitmmen.

  • Hi,

    wenn ich die URL direkt mit dem vdrosrclient sende kommt der Fehler auch sofort

    Code
    1. DevTools listening on ws://127.0.0.1:9222/devtools/browser/cbb52224-9808-49ec-a9ff-1180077306f4
    2. [0304/213703.927267:ERROR:sandbox_linux.cc(372)] InitializeSandbox() called with multiple threads in process gpu-process.
    3. URL: http://tvdl.zdf.de/none/zdf/20/03/200305_2015_sendung_dbd/1/200305_2015_sendung_dbd_3360k_p36v15.mp4
    4. -- Load: http://tvdl.zdf.de/none/zdf/20/03/200305_2015_sendung_dbd/1/200305_2015_sendung_dbd_3360k_p36v15.mp4
    5. ON LOAD END
    6. -- Load: http://tvdl.zdf.de/none/zdf/20/03/200305_2015_sendung_dbd/1/200305_2015_sendung_dbd_3360k_p36v15.mp4
    7. -- Load: http://tvdl.zdf.de/none/zdf/20/03/200305_2015_sendung_dbd/1/200305_2015_sendung_dbd_3360k_p36v15.mp4
    8. [0304/213716.391100:ERROR:batching_media_log.cc(26)] MediaEvent: MEDIA_ERROR_LOG_ENTRY {"error":"FFmpegDemuxer: no supported streams"}
    9. [0304/213716.391851:ERROR:batching_media_log.cc(26)] MediaEvent: PIPELINE_ERROR DEMUXER_ERROR_NO_SUPPORTED_STREAMS

    CU

    9000h

    Es ist eagl in wlehcer Reiehnfogle die Bchustebaen in Woeretrn vokrmomen. Huapstache der estre und leztte Bchustbae sitmmen.

  • Was du immer alles findest... :huh:


    Bei der URL tippe ich auf die ZDF Mediathek. Das ist genau die Seite, dich ich auch immer zum Test verwende, solange die Bookmarks im Plugin nicht verfügbar sind (noch gar nicht angefangen).

    Die Codecs aus dem Video sind h.264/aac und die sollten drin sein. Im Moment verstehe ich das nicht.


    Es ist auch kein eigentliches HbbTV Problem. Die Meldung "MediaEvent: MEDIA_ERROR_LOG_ENTRY {"error":"FFmpegDemuxer: no supported streams"}" kommt direkt aus ffmpeg und damit hat der Transport des Videos über libcef an chromium an ffmpeg schon funktioniert. Leider meldet dann ffmpeg, daß das Video nicht decodiert werden kann. An das interne ffmpeg kommt man leider nicht ran.

    Hattest du mal eine andere cef-Version installiert? Was steht denn in der Config "vdr-osr-browser.config"? Nach einem frischen Build und der Installation von libcef aus dem PPA sollte das so aussehen:

    Code
    1. resourcepath = /usr/share/cef/Resources
    2. localespath = /usr/share/cef/Resources/locales

    Und "ldd vdrosrbrowser | grep cef" sollte sowas ausgeben:

    Code
    1. libcef.so => /usr/lib/x86_64-linux-gnu/libcef.so (0x00007fa79e331000)

    Hmm. Hast Du auch libcef-dev installiert? Und 'pkg-config --libs cef' gibt nichts aus?


    Zabrimus

  • Hi,

    hmm,

    ldd ./vdrosrbrowser |grep cef

    libcef.so => /opt/cef/lib/libcef.so (0x00007f2aec5d6000)


    pkg-config --libs cef

    -L/opt/cef/lib -lcef -lcef_dll_wrapper -lX11


    CU

    9000h

    Es ist eagl in wlehcer Reiehnfogle die Bchustebaen in Woeretrn vokrmomen. Huapstache der estre und leztte Bchustbae sitmmen.

  • Ah okay. Also hast du tatsächlich mal die Spotify Builds installiert und bei denen fehlt eben einiges.


    libcef-dev installieren und den Browser neu kompilieren sollte reichen. Aber besser vielleicht ein make clean vorher. Ich habe bei mir /opt/cef und die /usr/local/lib/pkgconfig/cef.pc komplett gelöscht um ganz sicher zu gehen, daß die richtige Version verwendet wird.


    Zabrimus

  • I have committed the changes into both branches (master and develop). Thanks for finding.


    The develop branches are highly experimental and i often reverse changes, because of undesired behaviour or because of walking into a dead end.

    Both develop branches for the browser and the plugin should fit together - hopefully.


    I wanted to play with the audio handler in CEF and used the documented API until i was not able to find the API anymore and also the include file was not findable. In some branch, the complete AudioHandler was removed, because of internal Chromium changes and incompabilities.

    But there exists some hope if the developers of CEF are able to decide which pull request shall be used or to be able to merge them suitable.


    Bitbucket Pull Request

  • Hi,


    this is exactly the main ticket which then resulted in the mentioned pull requests.

    There exists currently two choices:

    - wait for one of the pull requests to be merged into the branches, or

    - grab one of the pull requests and build a new libcef


    But before deciding this, i have to fix (or enhance) the currently existing video problem. I'm struggling with cPlayer and closing OSD and so on.


    Zabrimus