Chromium Browser 63.0.3239.108 LE8

  • Morgen zusammen,

    angeregt durch einen Thread im LibreELEC Forum fummel ich seit ein paar Tagen an dem Chromium Plugin von LibreELEC rum und hab mal die (AUR) VAAPI Patches von Arch Linux portiert.
    Damit geht GPU Hardware Decoding auf meinem NUC5CPYH (h264 und VP8). Die im nomalen LibreELEC enthaltenen Patches bringen Chromium lediglich dazu anzuzeigen er könnte HW decoding. Chrome://media-internals zeigt den wirklichen Status an.

    Mein Versuch zum testen wenn jemand will:

    Chromium 63.0.3239.108 x86_64 LibreELEC 8

    Gibts einen Grund den ich übersehen habe warum die nicht im Source sind?

    Klar, Kodi und LibreELEC sind Mediaplayer und können/sollten Streams direkt abspielen und nicht über einen Browser.

    Aber das funktioniert so echt ziemlich gut auch mit LibreELEC 8 und meine bescheuerte Dualboot Installation mit Windows wird Geschichte. Patches um VP9 hardwaredecoding für z.B Braswell zu ermöglichen hab ich auch noch in den Tiefen der ARCH Linux Respositories gefunden. Dort such ich noch den offensichtlich hardgecodeten Path /var/lib/dri irgendwo im hybrid wrapper (oder ich hab den im Chromium Source übersehen). Ich weiß jetzt aber auch nicht wirklich ob das funktioniert und ob es die Arbeit wert ist bzw. das schon jemand anderes gemacht hat. Das bauen von Chromium und den ganzen Treibern dauert Stunden auf meiner Entwicklerkiste.

    Und vieleicht weiß noch jemand was mit dem Mauszeiger los ist und warum bei "Twitch" die Videowerbeanzeigen einfach stehen bleiben :cursing:

    Mit h264ify und 'nem vernünftigen AdBlocker läufts prima auch bei Twitch und Youtube. 1080p60 flüssig.

  • Hast du schon mal versucht das im LibreELEC Forum zu kommunizieren?

    Ich meine....wenn du Verbesserungsvorschläge hast, dann würden wir uns über einen PR sehr freuen. Ist dein Code auf Github? Wenn ja, dann wäre ein Link nett. Vielleicht können wir es einbauen und dann hätte ggf. jeder was davon.

  • Nein, habe ich noch nicht, weil ich fast nicht glauben kann, dass das vor mir noch keiner versucht hat.

    Ist nicht auf Github zurzeit. Ich muß den Kram noch aufräumen, in Patches packen und dann mach ich mal einen Fork vom Original Plugin auf Github.
    Schauen wir mal was draus wird.

  • wenn du das geschafft hast immer her damit :)

    https://github.com/LibreELEC/LibreELEC.tv/pull/1730 <- letzte update

    Ich kenn mich mit github nur rudimentär (also pull und checkout) aus und fummel ein bisschen für mich selbst am Code rum wenn ich Zeit hab.

    Ich kann hier aber gerne posten was ich gemacht haben. Dann kann ja irgendjemand ein PR erstellen. Die komplette Doku hab ich zu Hause. Ausm Kopf so ungefähr:

    Im Prinzip ist das Problem die hardcodeten Pfade in

    Code
    content/common/sandbox_linux/bpf_gpu_policy_linux.cc


    also hab ich die als Postpatch in der package.mk per sed angepaßt (als Pfade das Plugin lib dir, damit sichs nicht mit LibreELEC System ins Gehege kommt)

    Bash
    sed -e 's|/usr/lib/va/drivers|/storage/.kodi/addons/browser.chromium/lib|g' \
          -e 's|/usr/lib64/va/drivers|/storage/.kodi/addons/browser.chromium/lib|g' \
          -i content/common/sandbox_linux/bpf_gpu_policy_linux.cc


    dann noch https://aur.archlinux.org/packages/libva…river-g45-h264/ hier als neues package in LE eingefügt, gebaut, ins lib Verzeichnis rein, die anderen Treiber die Chromium angemeckert hat hinterher gebaut und eingefügt und fertig.

    Das hier https://wiki.archlinux.org/index.php/Inte…ing_on_GMA_4500 kann ich nicht unbedingt bestätigen. Das ging sofort in 1080p. Aber BIOS Limit hoch schadet ja nicht.

  • Und als nächstes will ich noch das hier: https://aur.archlinux.org/cgit/aur.git/t…id-codec-driver
    Die libva enthält das Compiler Flag --enable-hybrid und im Chrome ist das auch drin. Ich habe positive Meldungen bzgl. VP9 gefunden und wenn ich das richtig verstanden habe auch ohne Hybrid System.

    Da fehlt mir nur noch ne Kleinigkeit. Der sucht in /usr/lib/va , also noch irgendwo was von Arch hardcoded drin, schätze ich. Sollte aber zu finden sein.
    Nur jedesmal den Chromium zu bauen zum probieren ist zeitlich gesehen ein Albtraum ;)

  • Hi cabal2k,

    willkommen in Tal der Tränen.
    Ich hab auch versucht Chromium zu bauen, nachdem wir (LibreElec) auf gcc7 gewechselt sind.
    Leider war es bei mir ein schmerzhafter und steiniger Weg. Obwohl ich auf die Arbeit von lrusak aufbauen konnte.

    Ergebnis kannst du hier sehen:
    https://github.com/LibreELEC/Libr…rowser/chromium

    Dein Ansatz Arch als Basis zu nutzen, habe ich übrigens auch verfolgt.
    Leider sind sie jetzt auf clang umgestiegen. (Mal sehen wie lange es noch gut geht).

    Probleme lagen bei primär in zwei Dingen:
    1. jede neue Version bringt neue Schmerzen...
    2. die Hardware-Accelaration für AMD & NVidia zum fliegen zu bekommen (besonders da ich nur Intel zu hause hab)

    Hast du irgendwo dein Build-Code?
    Vielleicht können wir es kombinieren, das alte Addon in LE ersetzen...


    Grüße,
    Sascha

  • Oh je ... Tal der Tränen? Ich hab gestern fast vor Freude geweint, als da plötzlich GPU decode stand


    AMD und NVIDIA hab ich nicht recherchiert. Mein Mediaplayer ist halt der kleine NUC.
    Auf dem Gaming Rechner hab ich ne AMD. Wenn deren Support für die integrierte Grafik genauso ist wie für Desktop, dann wird das nix mit Hardware Acceleration.
    Ich hab 7 Monate mit denen rumdiskutiert um anschließend zu erfahren, das h264 HW ENcoding mit Media Foundation nicht wirklich funktioniert. Und das war Windows...

    Ich hab von ARCH nur geschaut warum das in deren Community Builds funktioniert.
    Build lief komplett im LibreELEC Buildsystem, also meine Patches passen.
    Sollte einfach zu übernehmen sein. Der vaapi 15 patch ist ja auch schon drin in master.

    Den Build Code hab ich nur lokal.
    Ich hab nichtmal einen github Account :whistling:

    Ich komme heute nicht mehr dazu, aber ich räum den Kram den ich hab mal auf und schick dir das wenn ich kann.
    Wär halt cool, wenn wir VP9 auch noch hinbekommen könnten.

  • Hallo cabal2k,

    Vielen dank für deine Arbeit. Der Browser funktioniert wirklich gut. Ich schaue Amazon Prime darüber.
    Das einzige was jetzt nicht mehr funktioniert, ist das Bedienen mit der Fernbedienung. Wird normalerweise mit (marv 's remote script) erledigt.
    Hast du eine Idee wieso?

    gruss
    dirk

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!