kusti8 / chromium-build

A script to generate a deb package from a standard Chromium build for RPi
78 stars 20 forks source link

It stopped working #10

Closed pglez82 closed 6 years ago

pglez82 commented 6 years ago

I have been watching netflix in my pi for a few weeks but today it stopped working. The error code shown is C7121-1331-P7. It only me or it is happening to more people?

pdo-smith commented 6 years ago

Yes, the same thing has just happened to me. In an attempt to fix the problem I have reinstalled Raspbian from scratch. I have reinstalled Chromium from this site. But none of this is helping. I keep getting the above error message.

search-tool commented 6 years ago

my guess would be this version of chrome is not supported anymore by netflix

https://help.netflix.com/en/node/62404

alexandreseris commented 6 years ago

Hi everyone,

same for me, I get the C7121-1331-P7 error code (see the attached file bellow) i did try to completly remove then reinstall chromium-browser with the following commands: _apt-get remove -y --purge chromium-browser apt-get autoremove rm -Rf /etc/chromium-browser rm -Rf /home/myprofil/.config/chromium wget https://github.com/kusti8/chromium-build/releases/download/netflix-1.0.0/chromium-browser_56.0.2924.84-0ubuntu0.14.04.1.1011.deb dpkg -i ./chromium-browser56.0.2924.84-0ubuntu0.14.04.1.1011.deb reboot

but as you might guess this did not work.

For information I run a Raspberry Pi 3B with the following: OS: Raspbian GNU/Linux 9.4 (stretch) Kernel: Linux 4.14.62-v7+

capture d ecran_2018-09-07_23-51-53

stealz0ne commented 6 years ago

I tried the same as boumabcd with the same results. While looking for solutions to get I stumbled upon the netflix addon for kodi 18 at https://github.com/asciidisco/plugin.video.netflix/wiki/Installation which contains a link to http://nmacleod.com/public/libreelec/getwidevine.sh - a script to extract widevine from the current linux release of chromium and https://www.raspberrypi.org/forums/viewtopic.php?f=35&t=98559&sid=f30936f91d683f79f95c7614b163be8a&start=150 where krusti8 announced his chromium release compiled with that widewine.

Not sure where to go from there, maybe it will work when installing widevine to raspbian directly but someone more technically apt might be to figure it out from here or make an updated chromium build.

janm84 commented 6 years ago

The same here. first of all I thought the problem comes from a another change on my system, but there seems to be a change at Netflix or something. ....I have the problem already since last week.

nrapin71 commented 6 years ago

The same for me ( I thought the problem comes from a another change on my system, but there seems to be a change at Netflix) I looked at https://gist.github.com/jesstelford/eded5fe8c2611f332648 but this seems to be outdated (based on chromium 47)

BruneXX commented 6 years ago

Hi guys!, same problem here, has stopped work since September 7, 2018. I don't know what could be the cause.. Do you know if is there any plan to release a new chromium build for raspberry pi 3? like chromium 60 or something like that? Thanks!

alexandreseris commented 6 years ago

Hello again, after som search, i found that the Vivaldi browser wrote an article about use of Netflix on their browser. Fortunately the browser if chromium/chrome based so the procedure given is some sort of equivalent i guess for us. So i did a little script WHICH I DID NOT TEST YET so please be careful and don't complain if anything goes wrong. I will test that right away and keep you informed, if anybody wants to test it in the meantime, no problemo but please consider again this has not been tested. if anybody has high skill in bash (or is just better than me, basically anyone), feel free to make some improvement!

here's the script (sorry for the misspellings, bad english and probably the poor writing of the script, but that's the way it is <3 ) Seeya!

EDIT: I first copy past the text here but that came pretty badly, so i'll just attach a file as txt. EDIT: /!\ /!\ /!\ /!\ /!\ /!\ /!\ /!\ /!\ /!\ /!\ /!\ /!\ /!\ /!\ /!\ /!\ /!\ /!\ /!\ /!\ /!\ /!\ /!\ /!\ /!\ /!\ /!\ /!\ /!\ THE SCRIPT IS NOT WORKING, PLEASE DO NOT USE IT UNTIL IT'S FULLY OPERATIONAL OPERATIONAL /!\ /!\ /!\ /!\ /!\ /!\ /!\ /!\ /!\ /!\ /!\ /!\ /!\ /!\ /!\ /!\ /!\ /!\ /!\ /!\ /!\ /!\ /!\ /!\ /!\ /!\ /!\ /!\ /!\ /!\

janm84 commented 6 years ago

Hello boumabcd,

does this script works for you? can you play Netflix videos again?

BR, jan

alexandreseris commented 6 years ago

ok so i did test the script i's not working (plus there's some major faults) i'll see tomorow if i can find something else or if Vivaldi is able to get netflix working

BruneXX commented 6 years ago

Just wondering.. anyone has installed firefox and tried with that? https://www.raspberrypi.org/forums/viewtopic.php?t=188037 maybe that can work until the chromium isse get solved..

janm84 commented 6 years ago

i have tried with Firefox. There seems to be no DRM support in armhf Version.

BruneXX commented 6 years ago

@boumabcd I think we can go directly to: https://help.vivaldi.com/article/raspberry-pi/ and try to follow the steps, I'll review tomorrow on my raspberry and I'll let you know the progress and issues. I hope to have no issues :)

alexandreseris commented 6 years ago

As my script is not working, please do not use it (i did not figure out how to delete the attached file :/ ), if i succeed with anything, i will of course post something right away.

Firefox is in deed not delivering drm support for linux arm (see https://support.mozilla.org/fr/kb/support-drm-firefox )

@BruneXX the script is basically following the procedure of Vivaldi programmatically. I did try to follow the steps "by hand" without success. It seems that the Widevine installation is a success but the requiered part "Playing a wider range of audio and video" fail: after the installation of the deb file, launching chromium-browser on a terminal print the following message: _"/usr/lib/chromium-browser/chromium-browser: error while loading shared libraries: libffmpegchrome.so.65: cannot open shared object file: No such file or directory"

i guess the installation delete the lib libffmpegchrome.so.65 ... maybe there's a tweak to do here like copy the file before the installation of deb file and paste it after, dunno i'll try that As the instructions given by Vivaldi on this part are not really clear and precise, ("Go to http://ports.ubuntu.com/ubuntu-ports/pool/universe/c/chromium-browser/ and find an armhf “chromium-codecs-ffmpeg-extra” package from a recent Ubuntu version"_) I tried to download and install a different deb file but still matching my chromium version, but it did not work either (for information, I tried theses two files: _http://ports.ubuntu.com/ubuntu-ports/pool/universe/c/chromium-browser/chromium-chromedriver_65.0.3325.181-0ubuntu0.14.04.1_armhf.deb http://ports.ubuntu.com/ubuntu-ports/pool/universe/c/chromium-browser/chromium-chromedriver_65.0.3325.181-0ubuntu1_armhf.deb_

I think it would be also a good idea to start testing netflix with Vivaldi (which is by the way a decent browser), if it could work this way, that would be fine, at least for me. I did try some thing yesterday with no success but i will keep on trying

Also i'll post a file gathering some informations i found around the internet if some people want to search deeper or write some scripts.

@kusti8 : I read a bit your posts and some procedures. One thing I do not understand is how did you choose the number 14 image on the recovery_os script ? Also I don't see any reference to a step corresponding to the part "Playing a wider range of audio and video" on the Vivaldi procedure, did you do something equivalent? Also, I modified a bit the script and ran it on my pc, which gave me the info that number 14 is currently "Lenovo N20 Chromebook", was it the case at the time of your post? (original post here: https://www.raspberrypi.org/forums/viewtopic.php?f=35&t=98559&start=50#p1007497 , and here's the recovery script: https://dl.google.com/dl/edgedl/chromeos/recovery/linux_recovery.sh)

janm84 commented 6 years ago

now... i have tried several things to get vivaldi and chromium running. everything is fine and i can play h.264 videos with vivaldi. but if i try to play a netflix video it still ends in the same error as above.

vivaldi tried to open "libwidevinecdmadapter.so". i copied it from kustis 56x release to the vivaldi dir. ...still same error.

maybe this two files "libwidevinecdm.so" and "libwidevinecdmadapter.so" are to old and not longer supported?

i tried it with the new "libwidevinecdm.so" from chromeos.... same error. ...but in the chromeos release, there is no "libwidevinecdmadapter.so"...

does anybody have a mac with an recent chrome installation and can have a look for this to files?

best regards

jan

janm84 commented 6 years ago

the File isn't included in chromeos, so i have tried it with both files (libwidevinecdm.so and libwidevinecdmadapter.so) from kustis 56x and also with kustis libwidevinecdmadapter.so and the recent libwidevine.so from chromeos.

the adapter lib is not named in the vivaldi howto, but vivaldi asks for it when running from the console and trying to play a Netflix video.

pglez82 commented 6 years ago

I think I am stuck in the same place. Vivaldi and chromium look for this file and there is no sign of it in the chrome os image. I have also tried to download another chrome os version just to see if I could get the two files but I coudn't find where to get older chromeos recovery versions. I was thinking about installing kodi 18 to see if they I could find the files there but I am not sure if they would be there or if they would be accessible. Pablo

zroach commented 6 years ago

macaOS High Sierra Version 10.13.6

Chrome Version 68.0.3440.106 (Official Build) (64-bit)

$for x in libwidevinecdmadapter.so libwidevinecdm.so; do printf "$x:\n"; sudo find / -name $x 2> /dev/null; done
libwidevinecdmadapter.so:
libwidevinecdm.so:
$

Chrome Version 69.0.3497.81 (Official Build) (64-bit)

$for x in libwidevinecdmadapter.so libwidevinecdm.so; do printf "$x:\n"; sudo find / -name $x 2> /dev/null; done
libwidevinecdmadapter.so:
libwidevinecdm.so:
$
janm84 commented 6 years ago

hm sh*t ;)

...I thought this can be a solution to get an ARM version of the libs...

thank you zroach

janm84 commented 6 years ago

https://chromium-review.googlesource.com/c/chromium/src/+/1211974

alexandreseris commented 6 years ago

@janm84: but ain't raspbian and others os for the rpi on 32 bits? (i saw although the cpu is 64)

zroach commented 6 years ago

experimental 64 bit os repo here, but I don't think all pi cpus like my BCM2835 rev a22082 (raspberry pi 3 model B) are 64 bit. I can't specifically find that cpu architecture in the datasheet though...

alexandreseris commented 6 years ago

@zroach basing on that thread https://www.raspberrypi.org/forums/viewtopic.php?t=190329 it seems like me that your cpu is BCM2837 (which is 64 bits) and not BCM2835 you can check the specs here: https://www.raspberrypi.org/products/raspberry-pi-3-model-b/

BruneXX commented 6 years ago

Hi @boumabcd I don't understand "BCM2837 and not BCM2837" same is not the same?

glorifyday commented 6 years ago

I was successfully using the v1.0.0 release (from https://github.com/kusti8/chromium-build/releases) for a long time to run Spotify web player. It worked like a charm until... somewhat like a few days ago. The player started omitting tracks and playing up to 9 first seconds.

I'm not sure what is the reason, but I suspect it is connected with the problems most of you have now with Netflix or Amazon Video.

Is it possible to build a new release based on newest chromium and deps?

alexandreseris commented 6 years ago

Hi @boumabcd I don't understand "BCM2837 and not BCM2837" same is not the same?

lol i just mistyped sorry ^^ i meant rpi 3 has BCM2837 instead of BCM2835

janm84 commented 6 years ago

any solution right now?

zroach commented 6 years ago

@boumabcd good thought, but BCM2837 is the newest SOC (as of fall 2016, or thereabouts), and I got the information from directly querying my hardware ('cat /proc/cpuinfo') to ensure it is correct. @janm84 not atm it seems, except to install 64-bit os on compatible versions as you suggested.

alexandreseris commented 6 years ago

@boumabcd good thought, but BCM2837 is the newest SOC (as of fall 2016, or thereabouts), and I got the information from directly querying my hardware ('cat /proc/cpuinfo') to ensure it is correct. @janm84 not atm it seems, except to install 64-bit os on compatible versions as you suggested.

@zroach same for me, but read the post in my link of my previous response https://www.raspberrypi.org/forums/viewtopic.php?t=190329 "I can see : Raspberry-pi 3 Model B BCM2837 But on my Raspberry-pi 3 Model B v1.2, dmesg, /proc/cpuinfo: Hardware name: BCM2835 And on the real physical chip i can see : BCM2837

response: It's a known problem with how the software reports the name of the chip. It's related to upstreaming some of the code. Same thing happens with the Pi3B. One thing to think about...if you do cat /proc/cpuinfo, you'll see 4 cores. The BCM2835 has only one core. "

some others links if you want infos: https://www.raspberrypi.org/documentation/hardware/raspberrypi/bcm2837/README.md https://www.raspberrypi.org/forums/viewtopic.php?t=188544

zroach commented 6 years ago

@boumabcd my apologies for not looking at your post closer. It seems that you are correct, as I do see four cores. Thanks for correcting me!

Warday commented 6 years ago

Hi, the problem is the browser version, I could fix it on vivaldi changing Chrome/68.0.3440.106 in user agent (before that it doesn’t work with the same error but cheating the system with newer version it worked). I'm sure that if the same modification is done in chromium it will work. Unfortunely Netflix is not working well in Vivaldi., if the video is heavy or in hi resolution it use to get blocked for a wile and you have to go back to make it work again.

BruneXX commented 6 years ago

@Warday Do you have a guide to follow the steps in order to make this work ? or just using the documentation provided by Vivaldi this will work? thanks

pglez82 commented 6 years ago

I got vivaldi working following this tutorial (its in spanish but I think it is quite easy to follow). Anyway, it doesn't perform as well as chromium did. It is watchable but a bit laggy. At least I can use spotify web again. I hope they fix chromium soon.

Warday commented 6 years ago

Hi, I use the same tutorial but with the modification that I explained. I will translate it: 1º preprocess. Increase swapfile going to sudo nano /etc/dphys-swapfile and changing CONF_SWAPSIZE to 2048Then retar it with:

sudo /etc/init.d/dphys-swapfile stop sudo /etc/init.d/dphys-swapfile start

then increase gpu memory to 128 (I use 256) in configure go to settings to find it

2º install Vivaldi and required libraries. First install old Vivaldi version vivaldi-stable_1.13.1008.44-1_armhf.deb go to Vivaldi and then older versions. Then download the libraries from here

http://ports.ubuntu.com/ubuntu-ports/pool/universe/c/chromium-browser/ find chromium-codecs-ffmpeg-extra_61.0.3163.100-0ubuntu1.1378_armhf.deb

then the DRM libraries from here

http://raspberryparanovatos.com/descargas/drm.zip

3º moving files

Use sudo pcmanfm Copy the files libwidevinecdm.so and libpepflashplayer.so then go to /opt create a folder called google inside create a folder called chrome, inside it copi the file libwidevinecdm.so then make a new foldier called PepperFlash (it must be called like that) inside it copy the file libpepflashplayer.so. Finely copy the file libffmpeg.so inside /usr/lib/chromium-browser into /opt/Vivaldi/lib overwrite it

4º finely configurations. Install user agent

https://chrome.google.com/webstore/detail/user-agent-switcher-for-c/djflhoibgkdhkhhcedjiklpkjnoahfmg?hl=es

insert the next configuration on it

New User-agent name: Netflix New User-Agent String: Mozilla/5.0 (X11; CrOS armv7l 9901.77.0) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/62.0.3202.97 Safari/537.36 Group: Chrome Append?: Replace Indicator Flag: NFX

If you do it like that it will give you the same error than chromium, to avoid it change

Mozilla/5.0 (X11; CrOS armv7l 9901.77.0) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/68.0.3440.106 Safari/537.36

In resume chrome 61.0.3163.100 for chrome 68.0.3440.106 AND FIXED!!!!

To improve performance do the next (this is not in the Spanish guide) Go to your profile, go to playback setting and use medium instead of auto It will fix some blocks if your internet is not working property.

nateg5 commented 6 years ago

Hey everyone! I was able to get Chromium working again for Netflix and Amazon on the RPi3. You can follow the "Install Chromium with Widevine" instructions here, https://github.com/nateg5/Android/blob/master/NateCast/README.md. If you previously had it working using kusti8's build then you can probably skip step 1. Let me know if you have questions.

BruneXX commented 6 years ago

@nateg5 really? that requires to install apache and create static IP?

nateg5 commented 6 years ago

@nateg5 really? that requires to install apache and create static IP?

No, you can ignore the rest of the instructions as those are to get my android casting app working. To get Netflix/Amazon working you only need to follow the "Install Chromium with Widevine" section. Just those 9 steps.

BruneXX commented 6 years ago

@nateg5 Excellent I’ll try that today and I’ll share the results, thanks!

DenisMirandaJ commented 6 years ago

@nateg5 Just tested your solution, it works again

janm84 commented 6 years ago

it doesn't work here. I will copy my last working image to the sd and then I will try it again...

janm84 commented 6 years ago

...same thing. Netflix is telling me that it's missing the player (widevine)

nateg5 commented 6 years ago

...same thing. Netflix is telling me that it's missing the player (widevine)

@janm84 Did you try completely removing chromium and then going through the install steps? You may want to uninstall chromium and then manually delete any chromium left overs. I will be curious to see if it works for most other people or if I just got lucky. sudo apt-get remove chromium-browser sudo find * | grep -i chromium-browser then, sudo rm -rf all of the directories/files from the search results and reinstall

nrapin71 commented 6 years ago

I have just tested the libwidevinecdm.so contained in the drm.zip provided on the repo of @nateg5 keeeping my previous install (chromium package of kusti8). Netflix works again !

So the simplified procedure should be:

1/ erase chromium (if you have tried other version than the kusti8's one) sudo -i (in order to keep root privilege at each command ... so be carefull with rm -Rf !!) dpkg -r chromium-browser rm -Rf /etc/chromium-browser rm -Rf ~/.config/chromium exit (to return as standard user i.e. "pi") cd ~/Downloads wget https://github.com/kusti8/chromium-build/releases/download/netflix-1.0.0/chromium-browser_56.0.2924.84-0ubuntu0.14.04.1.1011.deb sudo dpkg -i ./chromium-browser_56.0.2924.84-0ubuntu0.14.04.1.1011.deb

2/ get and copy libwidevinecdm.so at the right place

Download and extract DRM zip wget https://github.com/nateg5/Android/releases/download/NateCast/drm.zip unzip drm.zip Copy libwidevinecdm.so: sudo cp libwidevinecdm.so /usr/lib/chromium-browser/libwidevinecdm.so

3/ Add the user agent extension Open Chromium

Go to user agent extension site:

https://chrome.google.com/webstore/detail/user-agent-switcher-for-c/djflhoibgkdhkhhcedjiklpkjnoahfmg

Install User-Agent Switcher for Chrome

4/ launch chromium 4.1 graphically ... /menu/internet/Netflix (menu created by the package of kusti8) or 4.2 using command line (all on one single line) chromium-browser --user-agent="Mozilla/5.0 (X11; CrOS armv7l 6946.86.0) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/56.0.2924.84 Safari/537.36" http://netflix.com

PS: i didn't mentioned the ffmpeg package of chromium, I have supposed it is installed

janm84 commented 6 years ago

ok it's working now. I've changed the permissions on libwide* to 755 like the other libs in /usr/bin/chromium-browser.

maybe that was also the problem before in my first tries with new libs... omg

...thank you! :)

BruneXX commented 6 years ago

@nateg5 just wondering, is it necessary to reinstall chromium? I think that will be enough just updating the library, right?

I think that with steps 2, 3 and 8 should also work.

I'm thinking on that since I've already installed that chromium version and agent switcher too.

Anyway, works like a charm, thanks @nateg5 !

glorifyday commented 6 years ago

I got vivaldi working following this tutorial (its in spanish but I think it is quite easy to follow). Anyway, it doesn't perform as well as chromium did. It is watchable but a bit laggy. At least I can use spotify web again. I hope they fix chromium soon.

The same here.

I could not get the chromium working as described by nrapin71. My priority was spotify web and it would complain about... incompatible browser.

nateg5 commented 6 years ago

@nateg5 just wondering, is it necessary to reinstall chromium? I think that will be enough just updating the library, right?

I think that with steps 2, 3 and 8 should also work.

I'm thinking on that since I've already installed that chromium version and agent switcher too.

Anyway, works like a charm, thanks @nateg5 !

@BruneXX The widevine library and user-agent switcher settings are all that change from the original install steps. So yes, if you already had the kusti8 deb installed then there was no need to reinstall chromium.

nateg5 commented 6 years ago

I got vivaldi working following this tutorial (its in spanish but I think it is quite easy to follow). Anyway, it doesn't perform as well as chromium did. It is watchable but a bit laggy. At least I can use spotify web again. I hope they fix chromium soon.

The same here.

I could not get the chromium working as described by nrapin71. My priority was spotify web and it would complain about... incompatible browser.

@glorifyday I just tested the spotify web player and that works for me as well. Give the new widevine library and user-agent settings a try and see if that gets it working. https://github.com/nateg5/Android/blob/master/NateCast/README.md

glorifyday commented 6 years ago

@nateg5: did you use kusti8's build (chromium 56)? It didn't work for me, no matter which user agent setting I chose. I have no idea why. I tried chmod 755, too.

On the other hand, spotify web does not complain about incompatible browser in case of the newest chromium installed by apt-get. But then it complains about DRM and copying widevine libraries doesn't help.

Btw: in order to install chromium 56 i had to remove rpi-chromium-mods and scratch2, because they depend on the newest chromium.

nrapin71 commented 6 years ago

It seems that increasing swap space improves playback with chromium. To do this (copied from https://help.vivaldi.com/article/raspberry-pi/) use the following commands:

sudo nano /etc/dphys-swapfile

By default Raspbian has 100MB of swap. Please change it to 2048MB in the following line of the configuration file:

CONF_SWAPSIZE=2048

Press Ctrl+X and hit Enter to save the changes. Then restart the swap service to apply the changes:

sudo /etc/init.d/dphys-swapfile stop sudo /etc/init.d/dphys-swapfile start