Beiträge von Ceres

    @peak: Danke für die Klarstellung.
    Jetzt muss der Sch... einfach erst einmal laufen. Egal auf welche Art.
    Stimmt: Im Source code rumfummeln ist kritisch. Aber wird bei einer neuen Synchronisierung nicht auch das gyp-file upgedated und man muss die Änderungen wieder einführen, die man schon bei der letzten Version vornehmen musste?
    Außerdem kenne ich mich mit gyp null aus und mir fehlt leider auch die Zeit mich dort intensiver reinzuarbeiten.

    Sollte ich mal zu einem Erfolg komme, werde ich versuchen den Prozess wie ich dorthin gekommen bin zu reproduzieren und zu dokumentieren. Kochrezepte sind gut und funktionieren dann, wenn sie vollständig sind. :D
    Wenn etwas fehlt fängt das Gefrickel an ?(

    Ich habe jetzt noch einmal mit widevine-enable=1 flag gebaut.
    Außerdem den gesamten Kommentar von widevine_cdm_version.h gelesen (auf piets anreten :) ) . Da steht ja auch drin, dass man dort widevine_cdm_common.h includen muss. Ansonsten fliegt der Compiler wegen dem fehlendem widevine Adapter Namen irgendwo auf die Schnautze.

    Jetzt ist er aber durchgelaufen.
    Der Timestamp vom Adapter ist aktuell. Also wurde er auch gebaut.
    Sobald ich Zeit finde teste ich das aus und berichte

    Jetzt habe ich chromium mal mit --ppapi-flash-path=path/to/PepperFlash/libpepflashplayer.so gestartet. Flash kann ich nun in den plugins sehen aber widevine immer noch nicht. :(

    Aber die neue Hypothese ist: Daddurch, dass ich den Adapter in das Release-Verzeichnis gelegt habe, wurde kein Compilat-bezogener Adapter gebaut. und der, den ich vom chrome-book Image genommen habe funktioniert dann nicht.

    Ich probier's noch mal

    Aber: bist du sicher, dass du enable-widevine=1 wirklich in den buld GYPT Parametern angegeben hast?
    Haat dein build die libwidevinecdmadapter.so erzeugt?

    Meine GYP_DEFINES sehen so aus:
    GYP_DEFINES="target_arch=arm arm_float_abi=hard component=shared_library linux_use_gold_flags=1 ffmpeg_branding='Chrome' proprietary_codecs=1 enable_pepper_cdms=1 enable_webrtc=1"
    Es gibt während des Compilierens verschiedene Fehler in Bezug auf Widevine. Einer ist, dass er die .so vermisst. Ich habe dann beide (libwidevinecdmadapter.so und libwidevinecdm.so) in den Release-Ordner gelegt. Dann ist der Compiler durchgelaufen. Ich habe nun keinen Parameter enable-widevine=1 drin. Ich dachte, das ist mit proprietary_codecs=1 abgedeckt

    Die Dateigröße deiner Datei lässt mich vermuten, dass sie nur funktioniert, wenn du das pepperflash plugin ebenfalls installierst

    Das probiere ich mal aus.

    @peak, piet: Was habt Ihr mit der Version gemacht? In der Datei widevine_version.h (oder so) wirid gequatscht von wegen dass die Version 4 Teile hat. Ist ja im Kommentar an der Stelle auch ein Beispiel gegeben. Ist aber Käse, wei die Konstante ja ein int ist. Habt Ihr die Version dann ohne Punkte reingeschrieben?

    also ich hab aus dem out/Release ordner ein tar.gz archive gemacht

    piet: Habe ich genauso gemacht. Und auch mit no-sandbox gestartet. Ich bekomme da allerdings dann oben im Browser einen gelben Balken
    "You are using an unsupported command-line flag: --no-sandbox. Stability and security will suffer" Bekommst Du das auch?
    Ich starte den Browser im Entpack-Verzeichnis mit ./chrome --no-sandbox
    In den Plugins habe ich internal-nacl-plugin und Chromium PDF Viewer. Aber kein widevine. Obwohl die Libs auch im Release-Ordner schlummern.
    Bei mir heißen die libs libwidevinecdmadapter.so und libwidevinecdm.so 117k bzw. 4,9M

    @peak: Könntest Du mir die ganze Commandozeile des ninja-befehls schreiben und welche Dateien bzw. Verzeichnisse Du dann auf die Runtime-Maschine legst?

    Jetzt war ich doch zu neugierig und habe das Compilat mal auf den raspi kopiert.
    Die gute Nachricht: Es läuft und zeigt auch youTube Videos.
    Die schlechte Nachricht: Er zeigt kein widevine plugin an und startet mit Fehlern, die wollen, dass ich das Teil in einer Sandbox laufen lasse. Chromium startet aber trotzdem.

    @peak und @piet: Wie habt Ihr Euer Compilat gestartet und wo habt Ihr die widevine libs hingelegt?

    Gestern ist der Compiler durchgekommen nachdem meine VM aus unerfindlichen Gründen ein paar Mal abgeraucht ist.
    Jetzt brauche ich nur noch Zeit den ganzen Käse auf meinen Raspi zu nudeln und zu schauen ob das Ergebnis irgendeinen Wert hat.

    piet: Wie hast Du die Installation gemacht? Die ganze Filestruktur auf der Maschine abgelegt und entsprechend zu PATH und LD_LIBRARY_PATH hinzugefügt?

    Wenn du das Ergebnis auch zum Testen für andere Hochladen könntest, wäre das natürlich prima

    Klaro. Sofern das Ergebnis den Anschein von etwas halbwegs brauchbaren hat lege ich es auf irgendeine Dropbox.
    Ich erwarte mir aber erst einmal nicht zuviel. Was geht schon beim ersten Versuch glatt? :S
    Ich würde mich schon freuen, wenn das Teil erst einmal startet. Dann eine Anzeige von widevine in chrome://plugins. Und wenn ich dann auch ein Video starten kann und das 5 Minuten nicht runterfällt hätte sich die Mühe für's erste gelohnt

    @piet
    Vielen Dank für die Tips
    Das war mal wieder ein typischer Fall von Tomaten auf den Augen und rtfm
    Beim ersten Link ist vor den GYP-flags kein export. Gestern hatte ich dran gedacht. Heute nicht :whistling:
    Und den eigentlichen Clou (widevine.h einfach kopieren) in Punkt 4. des zweiten Links hatte ich schlicht übersehen.
    Jetzt compiliert er erst einmal. Ich schätze ich bin erst um 22Uhr damit fertig.
    Ich berichte was herausgekommen ist.

    notfalls nen großen swap anlegen

    Jetzt habe ich den swap meiner VM auf 10GB erhöht und das linken klappt jetzt :)

    Ich hatte ja geschrieben, dass ich das Original-Rezept ausprobiert habe um es als solches erst einmal zu testen.
    Nun habe ich die widevine Dateien verändert.
    Und bekomme ich folgenden Fehler wenn ich ninja starte:
    [infobox]
    ninja -C out/[definition='1','3']Debug[/definition] chrome
    ninja: Entering directory `out/[definition='1','3']Debug[/definition]'
    ninja: error: '../../third_party/widevine/cdm/linux/x64/widevine_cdm_version.h', needed by 'gen/widevine_cdm_version.h', missing and no known rule to make it
    [/infobox]
    Ich kan mich erinnern, dass ich diesen Fehler gestern schon mal hatte nur mit arm anstat x64. Warum das heute x64 ist: Keine Ahnung.
    @piet: Kommt Dir der Fehler bekannt vor? Und wenn ja, was war Dein Gegenmittel?

    Sind auf der Google- Seite nur die .deb- Pakete von Chrome zu haben, oder gibt es auch Binaries zum Selbstkompilieren.

    Binaries zum selbstcompilieren ist ein Widerspruch in sich. Binaries sind schon compiliert.
    Wenn Du aus den Chrome Sourcen compilieren willst, dann verwende am besten die zwei Links, die ich in meinem vorigen Post ganz am Anfang genannt habe. Da werden die Sourcen direkt aus git geholt. Mein Host hat auch nur 4GB RAM. Ich muss mal sehen, wieviel meine VM hatte. Dann vergrößere ich den swap und probier es noch einmal.

    hab chromium mit widevine support und EGL hardwareunterstützung für den iMX6 ARM ans laufen bekommen

    Heißt das, dass Deine Hardwarebeschleunigungsexperimente erfolgreich waren? Gratuliere!

    Jemand beschäftigt sich aber mit der Kompilierung mit Chromium für den Pi, sodass dort auf eine Lösung zu hoffen ist

    Stimmt. Nur leider mit mäßigem Erfolg :(
    Basierend auf den zwei Links, die piet hier gepostet hat
    http://%20http//unix.stackexc…hromium-for-arm
    und
    https://code.google.com/p/chromium/iss…l?id=429452#c16
    versuche ich seit Freitag den Chromium zu compilieren.
    Wenn ich aus dem ersten Link Schritt 16
    ./build/install-build-deps.sh --arm
    ausführen will, dann bekomme ich gesagt, dass ich nur einige Versionen von Ubuntu verwenden kann. Ich habe Debian Jessie.
    Also flugs eine VM in kvm mit Ubuntu 14.04 installiert.
    Dann nehme ich in Schritt 18 die Gyp-flags aus dem zweiten Link hinzu sodass ich dann die Zeile
    GYP_DEFINES="target_arch=arm arm_float_abi=hard component=shared_library linux_use_gold_flags=1 ffmpeg_branding='Chrome' proprietary_codecs=1 enable_pepper_cdms=1 enable_webrtc=1"
    verwende.
    Außerdem führe ich noch Schritt 2 und 3 des zweiten links aus.
    Als Versionsnummer setze ich das ein was ich unter Linux in Chrome als widevine Versionsnummer bei chrome://plugins angezeigt bekomme: nämlich 1.4.8.824
    Leider bekomme ich unter Schritt 20 des ersten Links dann ziemlich bald die Fehlermeldung
    [infobox] src/third_party/widevine/test/license_server/license_server.gyp not found [/infobox]
    Stimmt. Gibt es nicht. Ich habe ja auch im dritten Schritt des zweiten Links zuviel Chrome durch Chromium ersetzt.
    Wenn ich nur an zwei Stellen, die in der Nähe der bezeichneten Zeilen sich befinden die Ersetzung vornehme bekomme ich einen anderen Fehler. Und zwar eigenartigerweise den, der als Ausgang des Threads vom ersten Link moniert wurde.
    Nervt.
    Frage: Compiliert Chrome überhaupt ohne irgendwelche Abänderungen original so wie im ersten Link beschrieben?
    Ja. Tadellos. Dauert mit meiner VM Konfig ca. 5,5 Stunden.
    Leider bekomme ich dann beim Linken den Fehler
    [infobox]
    clang: error: unable to execute command: Killed
    clang: error: linker command failed due to signal (use -v to see invocation)
    ninja: build stopped: subcommand failed.
    [/infobox]
    Ich glaube, das hängt mit den nur knapp 3GB RAM zusammen, die ich meiner VM geben kann (weil der Rechner nur 4GB hat). Ist aber eine Vermuting
    Ich hatte mal so etwas gelesen, dass eine Maschine, die Chromium compilieren will ca. 8GB RAM braucht.

    Soweit meine dürftigen Ergebnisse für Raspi ;(
    Falls jemand eine potentere Maschine mit Ubuntu hat, kann er es ja mal versuchen.
    piet: Wie sind Deine Hardware Specs? Nachdem Du Chromium ja für ARMv7 mal compiliert hast mußt Du ja ähnliche Probleme gehabt haben, wenn Deine Maschine ähnlich schmalbrüstig war wie meine.

    Übrigens an alle die Amazon Prime unter Linux (x86(_64)) anschauen wollen: Wer nicht die Silverlight Version nehemn will kann auch einfach das original Chrome von Google für Linux verwenden. Da ist das Widevine plugin enthalten.
    https://www.google.com/chrome/browser/desktop/
    Hier "Chrome für ein anderes Betriebssystem herunterladen" anklicken und das entsprechende Linux Paket anklicken.

    Wo kann ich denn die dummen build flags angeben? soviel ich verstanden habe ersetzt ./build/install-build-deps.sh das make configure wie ich das normalerweise kenne und das ninja das make.
    Dann müsste es doch irgendwo ein file geben wo ich die flags

    ffmpeg_branding='Chrome', proprietary_codecs=1, enable_pepper_cdms=1, enable_webrtc=1reinschreiben muss. Oder bin ich auf der falschen Spur?

    Hallo piet,
    Das sieht nach einem guten Kochrezept aus. Ich bin schon dabei es auszuführen. Vielen Dank für die Links :thumbup:
    An Cross-compiling hatte ich gar nicht gedacht bzw. gar nicht in Erwägung gezogen, dass es entsprechende .deb-pakete gibt.
    Eher hatte ich an Compilieren in einer arm-VM in qemu gedacht. Aber da waren mir einfach zu viele Unbekannte drin.

    Dein zweiter Link ist mir auch schon über den Weg gelaufen. Leider endet der Thread damit, dass hier nur der Wunsch geäußert wird, dass es schön wäre, wenn es ein Chromium mit widevine auch für arm als fertiges Package gäbe. ;(

    In #16 desselben Threads steht, dass man eine Versionsnummer für widevine in src/third_party/widevine/cdm/widevine_cdm_common.h angeben soll. Ich glaube, dass ich meine libs aus einem Chrome mit Version 37 geklaut habe. Bin aber nicht sicher. Geschweige denn, dass ich weiß welche Version die widevine Files haben. Der Hex-Editor auf die libs sagt leider auch nix.
    Welche Version hast Du dort hinein geschrieben? Woher hast Du Deine widevine libs? Auch aus dem Link auf das ARM Chrome-book Image der hier in diesem Thread gepostet wurde?

    habe da zum testen jetzt mal debian installiert und ein aktuelles chromium mit ein paar änderungen bezüglich widevine support kompiliert

    Hallo piet,
    Das klingt ja echt super! Ich habe auch ein bisschen in der Richtung geforscht (für meinen RasPi2) aber bin aus Zeitgründen nicht weit gekommen. Eigenartig war, dasss es gar nicht so leicht ist die Chromium Sourcen (für Raspian, was ja ähnlich Debian ist) zu finden. Könntest Du einen Link posten wo Du die Sourcen her hast?
    Welche Änderungen genau hast Du vorgenommen um die beiden libwidevine.so anzusprechen? Wäre super, wenn Du da auch einen Link hättest.

    Ich habe mich auch vom Chromium compilieren abschrecken lassen weil ich auf einer Chromium Seite gelesen habe, dass man mindestens 20GB für das Compilieren braucht. Kannst Du das bestätigen? Oder wie sehen Deine Hardware-Eckdaten aus?

    Danke schon mal

    Ich erwähnte es bereits hier: [RELEASE] Amazon Prime Instant Video (US/UK/DE)

    Und ja, es geht. Leider nur schlecht als recht und nur auf x86-64 systemen.

    Danke für die Info. Dann erübrigt es sich, dass ich da noch mit meienm Raspi rumprobiere.
    Ich befürchte, dass ich doch am Wochenende mal versuchen muss Chrome mit den widevine libs zu compilieren.
    Immerhin hat das, nach meinen Erfahrungen mit den ARM-Flash libs aus dem Chrome-book-Image, eine leichte Aussicht auf Erfolg

    Ich habe hier in diesem OpenElec Forum
    http://openelec.tv/forum/128-addo…le?limitstart=0
    einen Link zu einer Dropbox
    http://www.dropbox.com/sh/7rwud8jv5xu…ZiYiEjlxOa?dl=0
    gefunden in dem verschiedene Versionen mit einem Chromium addon lagern.

    Dummerweise habe ich mir gestern in der Eile die älteste Version heruntergeladen und versucht zum laufen zu bringen. Ohne Erfolg.
    Ich habe mir aber auch nicht die Zeit genommen die Bemerkungen im Forum genauer zu studieren. Vielleicht ist da ja noch etwas bzgl. Gebrauchsanweisung drin.
    Ach ja: Das besondere: Da ist ein libwidevineadapter enthalten. Man darf also gespannt sein.

    Ich bin bis Ende der Woche Land unter. Aber vielleicht kann ja einer hier aus dem Forum sich der Sache annehmen und checken inwiefern erstens der Chromium Browser in OpenElec läuft.
    Und zweitens ob evtl. damit auch Amazon wieder zum sprechen gebracht wird 8o

    Ich habe jetzt ein bisschen rumprobiert.

    Zuerst habe ich Chromium auf meinen Raspi installiert. Und zwar ungefähr so wie in
    http://conoroneill.net/running-the-la…raspberry-pi-2/
    beschrieben. Nur habe ich Pakete von einer Canonical site verwendet.
    Raspi hat zwar immer gemeckert wegen fehlenden ffmpeg-extras, wenn ich chromium-browser installiert habe und über fehlenden chromium-browser, wenn ich ffmpeg-extras installieren wollte ?(
    Aber trotzdem war das Icon von Chromium dann im Auswahlmenü und ließ sich sogar starten.

    Dann habe ich mir das gesamte /opt/google/chrome-Verzeichnis aus dem Chrome-Image aus dem Link von skatulskijean
    stackoverflow.com/questions/30…chromebook-recovery-image
    auf den Raspi kopiert um alles zum Experimentieren verfügbar zu haben.

    Zuerst habe ich versucht libwidevinecdmadapter.so und libwidevinecdm.so einfach in /usr/lib/chromium-browser/ zu kopieren, wie in
    http://unix.stackexchange.com/questions/1723…m/199980#199980
    (ganz unten, letzter Beitrag) beschrieben.

    Vielleicht geht das auf x86. Auf ARM geht's nicht :(
    Das heiß, wenn ich mit dem Chromium auf Amazon Prime gehe, wird mir geraten einen anderen Browser zu verwenden.
    Bei Amazon habe ich etwas gefunden, dass Chrome ab Version 42 verwendet werden kann. Mein Chromium war aber 37.
    Wenn ich einen userAgent switcher verwende und dort auf Chrome 47 switche, merkt Amazon, dass ich kein CDM habe

    Weil ich schon dabei war, habe ich das pepper Verzeichnis vom chromebook chrome-browser auf mein raspi chromium Verzeichnis kompiert.
    Und siehe da...Beim Start von chromium aus der Kommando-Zeile vermeldet dieser, dass ein Flash-Plugin gefunden wurde.
    Und wenn ich auf die Adobe-Seite gehe, heißt es, dass ich Flash 17.irgendwas installiert habe (aktuell ist 19.irgendwas). Wenn ich auf eine Flash-Testseite gehe, kann ich tatsächlich den Flash-Film abspielen. :D

    Und die Moral von der Geschichte: Offenbar gibt es Flash für ARM. was ja schon mal eine gute Nachricht ist.

    Dann habe ich versucht mich als Firefox/Windows oder Firefox/Ubuntu gegenüber Amazon auszugeben in der Erwartung, dass Amazon dann einfach Flash abspielt.
    Das ging leider nicht :( und mir wurde geraten doch Silverlight zu installieren.

    So ganz aussichtslos scheint die Sache aber nicht zu sein. Nur wie man Chromium beibringt die widevine libs als Plugins anzuerkennen oder sonstwie zu verwenden ist noch schleierhaft.
    Ich schrecke ein wenig davon zurück Chromium zu compilieren, da es erstens nirgendwo dediziert brandaktuelle Sourcen für raspian gibt zweitens heißt, das die Compilierung kein Sonntsgaspaziergang ist.

    Aber viellecht kann ja jemand, der sich mit der ganzen Sache besser als ich auskennt hier anknüpfen und hieraus evtl. eine Forward-Strategie für Kodi ableiten (und realisieren)