New issue
Advanced search Search tips
Starred by 15 users

Issue metadata

Status: WontFix
Owner: ----
Closed: Nov 2014
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Linux
Pri: 2
Type: Bug



Sign in to add a comment
link

Issue 429452: Purchased youtube video plays in chrome but not in chromium (correct .gyp settings & identical version)

Reported by fabian.r...@gmail.com, Nov 1 2014

Issue description

UserAgent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/38.0.2125.111 Safari/537.36

Example URL:
https://www.youtube.com/watch?v=AW9b6unX_wo

Steps to reproduce the problem:
1. Compile chromium with ffmpeg_branding='Chrome' and proprietary_codecs=1 and using Ubuntu Developer keys
2. Use built chromium to open any purchased youtube video
3. Video doesn't play as youtube says that the video is not supported: "This video format is not supported."

What is the expected behavior?
Video plays

What went wrong?

Video doesn't play as apparently no suitable format was found, however, the same video plays in "branded" Chrome 38. 

Did this work before? N/A 

Is it a problem with Flash or HTML5? HTML5

Does this work in other browsers? Yes 

Chrome version: 40.0.2207.0  Channel: stable
OS Version: Ubuntu trusty
Flash Version: 

Both chrome and chromium give identical results for supported codecs on this page http://www.leanbackplayer.com/test/h5mt.html and both chrome and chromium play all videos from this page: http://www.quirksmode.org/html5/tests/video.html
However, google purchased videos seem to fail only in chromium.

Debug info of video is:

{"ns":"yt","el":"detailpage","cpn":"mVblzx-AcsNWmP_s","docid":"AW9b6unX_wo","ver":2,"referrer":null,"cmt":"0","plid":"AAUG0dQGLs-gdl03","ei":"RkBVVJbZF9aAcri9gmA","fmt":null,"fs":"0","rt":"22.512","c":"WEB","cver":"html5","of":"u36okRSnNXSWR-L64kAC0Q","adformat":null,"content_v":null,"euri":"","subscribed":null,"lact":11,"live":null,"cplatform":null,"cbrand":null,"cmodel":null,"cnetwork":null,"cbr":"Chrome","cbrver":"40.0.2207.0","cos":"X11","cosver":null,"cl":"78947767","mos":0,"q":null,"osid":"OGY0YTE0:AOeUNAbYgEzVNzbLVjO1J_5hphQ47cy3OQ","state":null,"volume":100,"hl":"en_GB","cr":"GB","len":"4868","fexp":"912134,916943,930663,932404,934040,947209,947215,948802,948909,950608,952302,952901,953912,957103,957201,958602","vct":"0.000","vd":"NaN","vpl":"","vbu":"","vpa":true,"vsk":false,"vpr":1,"vrs":0,"vns":0,"vec":null,"debug_error":{"errorCode":"fmt.noneavailable","errorDetail":null,"message":"This video format is not supported.","messageKey":"YTP_HTML5_NO_AVAILABLE_FORMATS_FALLBACK"},"debug_videoId":"AW9b6unX_wo","debug_playbackQuality":"unknown","debug_date":"Sat Nov 01 2014 20:19:43 GMT+0000 (GMT)"}
 

Comment 1 by fabian.r...@gmail.com, Nov 1 2014

I should add that I have opted-in to the html5 player and that I have de-activated flash on both chrome and chromium

Comment 2 by durga.behera@chromium.org, Nov 3 2014

Labels: TE-NeedsFurtherTriage
Adding the label "TE-NeedsFurtherTriage" as QA can't do this(label internal to QA).

Comment 3 by durga.behera@chromium.org, Nov 3 2014

Labels: Needs-Feedback
fabian.renn@ : Is the purchased video is related to Flash, if so Chromium does not support Flash, anyhow chrome supports.

Comment 4 Deleted

Comment 5 by fabian.r...@gmail.com, Nov 3 2014

No Chrome is not using flash, it uses the html5 player. Debug info of the video on Chrome is:

{"ns":"yt","el":"detailpage","cpn":"eCEqV5VrLuXgIZWt","docid":"AW9b6unX_wo","ver":2,"referrer":"https://www.youtube.com/purchases","cmt":"14.28","plid":"AAUG888Z2DeUBuG5","ei":"YHpXVLrWLMn_iQbu64DoBg","fmt":"280","fs":"0","rt":"13.215","c":"WEB","cver":"html5","of":"u36okRSnNXSWR-L64kAC0Q","adformat":null,"content_v":null,"euri":"","subscribed":null,"lact":5,"live":null,"cplatform":null,"cbrand":null,"cmodel":null,"cnetwork":null,"cbr":"Chrome","cbrver":"38.0.2125.111","cos":"X11","cosver":null,"cl":"78947767","mos":0,"q":null,"osid":"OGY0YTE0:AOeUNAYIGhXyi195bhh_8wisjQtFn7xK-Q","state":null,"volume":100,"hl":"en_GB","cr":"GB","len":"4867","fexp":"3300117,3300130,3300137,3312478,905644,922243,930666,932404,934040,947209,947215,950608,952302,952901,953912,957103,957201","afmt":"149","cc":".en-US","vct":"14.284","vd":"4867.000","vpl":"13.000-14.284,","vbu":"10.010-70.008,","vpa":false,"vsk":false,"vpr":1,"vrs":4,"vns":2,"vec":null,"lct":"14.134","lsk":false,"lmf":false,"lbw":"144861.645","lhd":"0.478","ltd":"301.530","laa":"i=149,s=6,r=994937-1160401,t=60.0,70.0","lva":"i=280,s=26,r=2562136-2673904,t=130.1,135.1","lar":"i=149,s=6,r=994937-1160401,t=60.0,70.0","lvr":"i=280,s=26,r=2562136-2673904,t=130.1,135.1","lab":"10.008-70.008,","lvb":"10.010-135.134,","debug_videoId":"AW9b6unX_wo","debug_playbackQuality":"medium","debug_date":"Mon Nov 03 2014 12:51:59 GMT+0000 (GMT)"}

video: webm codec: vp9

I think google gives you a free video if you sign up to google play movies (Ice Age for me), so it should be easy to test.

P.S: I edited this comment as I originally included the debug info from a windows machine.

Comment 6 by fabian.r...@gmail.com, Nov 3 2014

I think the issue is described here:

https://bugs.launchpad.net/ubuntu/+source/chromium-browser/+bug/1371274

So, I guess there isn't a way to completely compile chromium from open source to be able to play google purchased videos :-(.

Thanks anyway!

Comment 7 by ericde@chromium.org, Nov 3 2014

Cc: ddorwin@chromium.org
Status: WontFix
resolving as WONTFIX per link Fabian found (#6) - which is correct.  you need the Widevine CDM, which is only part of the Chrome build & not part of the Chromium build.

Comment 8 by fabian.r...@gmail.com, Nov 4 2014

I know this is beyond fixing this issue, but is there a hint for the guys over at launchpad on how to get the closed-source widevine cdm to play nice with an open-source chromium build. Seems like branding=Chrome is not enough. Any pointers to get them going in the right direction?

Comment 9 by cont...@ekimia.fr, Nov 4 2014

Whow , Making this bug Won'tFix is quite ridiculous.

Chromium can obviously load external plugins like Flash and Widevine. Widevine will be packaged just like peopper flash is.

We need help from the chrome team to make Widevine work with any chromium build.

Comment 10 by fabian.r...@gmail.com, Nov 4 2014

I believe that chromium doesn't load widevine belongs in a separate bug report. My original bug report was 'chromium' not playing purchased videos, and as widevine CDM is technically not part of chromium so I think the WontFix flag makes sense.

I'm working on a complete open-source distro so my journey ends here, but I suggest that someone files a new issue that chromium has trouble loading the closed-sourced wide vine pepper plugin. This is clearly a bug, chromium should load any pepper-based CDM plugin as long as the plugin adheres to the CDM interface (which widevine obviously does)

Comment 11 by avn6...@gmail.com, Nov 20 2014

Even i have to say marking this as wontfix is kinda asinine.
Some if not all of flash is closed source and it works fine in chromium why are we playing favorites here ?

Comment 12 by cont...@ekimia.fr, Dec 14 2014

We need chromium to be able to load the widevine plugin if available on the system, even if not bundled.

Please reopen this bug as we need to fix this to enable people to play HTML5 EME DRM from netflix without having to download chrome which is not available on all platform anyway and is not an opensource product ( and as other important problems as we all know) 

This is getting ridiculous, it seems chromium cannot leave its life like a real open source project.

Comment 13 by avn6...@gmail.com, Dec 14 2014

Agreed, please re-open this bug.

Comment 14 by Deleted ...@, Dec 14 2014

If your project's mission is to create a full libre product, you just forget about creating interfaces specially intended for proprietary plug-ins.

Comment 15 by cont...@ekimia.fr, Dec 14 2014

Yes you're right. We should even forbid any runtime loading of binary plugins like Flash ! 

Are you serious ?

Comment 16 by fabian.r...@gmail.com, Dec 14 2014

I am the original person filing the bug: I've fixed it in the mean time. It's just a few gyp flag changes and simple modifications to the gyp files. It will take some time until I can post a clean diff but here are the things I remember:

1) build with the following gyp flags:
ffmpeg_branding='Chrome', proprietary_codecs=1, enable_pepper_cdms=1, enable_webrtc=1

2) Uncomment the version number and strings in src/third_party/widevine/cdm/widevine_cdm_common.h and change it to which ever binary version you have available. I installed the vanilla google-chrome debian package from Google and used the version string and number found in chrome://plugins/

3) in the same folder modify widevine_cdm.gyp. Change 'branding == "Chrome"' to 'branding == "Chromium" in line 10 and 88 (not sure if this is really necessary)

4) When compiling Chromium it will complain about a missing widevine binaries folder (can't remember where it was meant to be located). Create it and copy the binaries over from chrome. It will also complain about missing widevine_cdm_version.h and/or widevine_cdm_common.h. Just copy widevine_cdm_common.h you edited above to the location expected by the build system.

5) after building, test by watching purchased video on youtube and/or netflix. If we are packaging this as open source (for debian for example), remove the widevine binaries from the out/Release folder and create another non-free package just for the widevine binaries as is being done for pepperflash.

I'm sorry for not providing a patch for this but I am travelling on a netbook with limited resources and creating a patch and testing it would take weeks of compiling.

Hope this helps!

Comment 17 by Deleted ...@, Dec 17 2014

Comment 18 by cont...@ekimia.fr, Dec 18 2014

@Fabian : Can you give me some quicks directive on compiling chromium ( first time from me ) , I guess I can take the default master branch ?

Comment 19 by ddorwin@chromium.org, Dec 18 2014

Although CDMs are currently hosted in a Pepper process on desktop, they are not “Pepper plugins” so simply registering a CDM adapter as a Pepper plugin is not sufficient for the media stack to use it. Key Systems must be registered with the media stack on all platforms.

For platforms, such as Android, where the CDM is part of the platform, the Widevine registration code is compiled in all builds, including Chromium. For other platforms, which require a CDM binary, the Widevine registration code is not compiled by default because the CDM binary is not part of Chromium.

If you would like to use a Widevine CDM binary on such platforms (e.g. desktop and Chrome OS), please contact Widevine via https://www.widevine.com/contact.html.

Comment 20 by fabian.r...@gmail.com, Dec 18 2014

This is not correct! I have a working chromium currently playing purchased
YouTube content right now on ubuntu with widevine. Please see my previous
post on how to get it working. I find it surprising that it actually works
with my patch as, by looking through the chromium source code, the widevine
plugin "verifies" the host it is loaded into and it will refuse to load if
it is a browser that it does not know about. For some reason widevine is OK
with chromium though.

Comment 21 by cont...@ekimia.fr, Dec 19 2014

And when you think that all this EME has been sold like 'html5' ... From my point of view it's just as difficult to make it work as plugins.

Comment 22 by Deleted ...@, Feb 4 2015

I have successfully followed @fabian's steps on a windows build and Widevine now properly(?) installs itself in the AppData directory but fails to play Netflix and other DRM'ed videos. Not a high priority for me but If I figure anything out I'll update everyone.

Comment 23 by cont...@ekimia.fr, Feb 15 2015

Does anybody from chromium work on this. 

This seems pretty simple to enable chromium to be able to use widevine as a default and thus any GNU/linux to play netflix after installing the small widevine binary which is WAY better than being forced to install non free chrome browser.

Comment 24 by mikes...@gmail.com, Apr 16 2015

@Ekimia - I don't understand why you think that. To the best of my knowledge, chrome is an adapted chromium - essentially, it is chromium w/ additional plugins. And the most non-free of these is probably the Widevine module - but it also packages pdf, something like flash, and google talk. The point of these plugins - particularly Widevine and flash - is digital rights management - and so the addition of any amounts to a values compromise for a free package (and for the drm, probably, but i cant say that concerns me overmuch). 

The process fabian recommends is essentially the same I recommended http://unix.stackexchange.com/a/172366/52934 at that link and for apparently the same reasons.

Anyway, as it seems to me, relying on some Debianer to package a build is a lot less sure than relying on the devs that build it on the same system the Debianer would do to package it - which is basically what the binary provided at the chrome download page is. So you can download a precompiled binary package from google or you can download one from Debian - and the primary differences between either is the non-free component for which you ask.

Comment 25 by michel.m...@gmail.com, Apr 16 2015

Mike you do not get it. Your post says nothing as chromium needs patch to be able to load the plugin.  That is what we talk about here. 
This is why we need a patched version currently. 
Chrome is not free software. 
The plugin is packaged in a different Debian package like it was does for pepper flash plugin.

Comment 26 by mikes...@gmail.com, Apr 16 2015

@michel:

Yes. I do not get it. chromium is free software. chrome is not free software. chrome is a package built on chromium which includes some very few non-free plugins - every one of which invalidates chromium's free status. You can have the precompiled free package, compile your own package, or download a precompiled non-free package. This is not a bug. Debianers are weird.

Comment 27 by cont...@ekimia.fr, Apr 16 2015

I don't get what you mean or if you ask a question.

Simple : 
we want chromium to be able to load the widevine plugin.
We need some patchs.
We don't want to bundle non Free plugins with chromium.

Comment 28 by mikes...@gmail.com, Apr 17 2015

@fabian - I think above where the commenter noted that your *media stack must be registered* he/she is referencing the media stack on your machine *(such as your video/audio drivers)*. I could be wrong about this, but it would seem contrary to the point of DRM if they were to allow it to play protected video out to a driver stack that would permit duping the video. I'm going to hazard a guess and posit that you're playing said video on nvidia/ati binaries - or else some other registered, HDMI-compliant hardware.

Comment 29 by cont...@ekimia.fr, Apr 17 2015

Mike FYI , we are playing netflix with 100% opensource drivers stack with chrome...

Certified for HDMI does not mean closed source. Yes we can dump the content but what's the point ?

Comment 30 by fabian.r...@gmail.com, Apr 17 2015

I don't think my media stack is registered. I tried this on the framebuffer
video driver on linux and my videos played.

Comment 31 by cont...@ekimia.fr, Apr 23 2015

Hi Fabian, can you format a patch for this ? I will try to contact  
Saikrishna Arcot to merge your patch with his GPU patch which would be the first GPU accelerated netflix solution for Linux !

I don't even have any hope that the chromium team (shall I say google ..) will do anything that would make GNU/linux a good platform ...

Comment 32 by cont...@ekimia.fr, May 2 2015

We now have a working solution ! thanks to the great work of saiarcot895  and fabian.r ) 

You can use this PPA for Ubuntu/debian

https://launchpad.net/~saiarcot895/+archive/ubuntu/chromium-beta

Extract the libwidevinecdmadapter.so and libwidevinecdm.so from the /opt/google/chrome beta 43 directory ( we will package this later.) 

And copy both files to /usr/lib/chromium-browser/

Launch chromium and you're done ! 

The great point is that saiarcot895 has enable VAAPI support  in these chromium builds so now you can watch SUPERHD netflix on low end Intel Soc like Baytrail ( you couldn't even with chrome ....) 

Please confirm it works on your side.

PS: Fabian.r : I don't even know your name ...

Comment 33 by fabian.r...@gmail.com, May 17 2015

Now if there would only be an ARMv6 version of libwidevinecdmadapter.so and libwidevinecdm.so. Then we would have native Netflix support on raspberry pi in no time :-).

Comment 34 by dave.cha...@gmail.com, Nov 15 2015

if you are like me and followed the directions in comment #16 but could not get wide_vine_cdm to work try the following:
add to GYP_DEFINES "enable_pepper_cdms=1 enable_webrtc=1 enable_widevine=1"
then, if your build is successful do the following 
go to chrome://components/ and update the WidevineCdm component.
You do not have to modify widevine_cdm_common.h  or widevine_cdm.gyp.

Comment 35 by Deleted ...@, Nov 17 2015

@dave and @fabian. I tried to exactly follow the instructions at comment #16 but still I cannot get it to work. Where exactly shall I add "enable_pepper_cdms=1 enable_webrtc=1 enable_widevine=1"? Where is the GYP_DEFINES defined?

Comment 36 by Deleted ...@, Nov 20 2015

Dunno if this helps, but GYP_DEFINES may just be a variable. Use 'export GYP_DEFINES="enable....". Maybe?

Comment 38 by Deleted ...@, Nov 21 2015

Hi guys, thanks for the kind reply. I managed to get my Chromium on my Freebsd to compile with the required flags, but almost at the end of the process I get an error. The main issue is that I do not have any:

"comment the version number and strings in src/third_party/widevine/cdm/widevine_cdm_common.h and change it to which ever binary version you have available. I installed the vanilla google-chrome debian package from Google and used the version string and number found in chrome://plugins/"

therefore I tried to patch the source code with this one;

diff -upr chromium-42.0.2311.90.orig/third_party/widevine/cdm/widevine_cdm_version.h chromium-42.0.2311.90/third_party/widevine/cdm/widevine_cdm_version.h
--- chromium-42.0.2311.90.orig/third_party/widevine/cdm/widevine_cdm_version.h	2015-04-15 01:18:59.000000000 +0300
+++ chromium-42.0.2311.90/third_party/widevine/cdm/widevine_cdm_version.h	2015-04-15 09:09:49.157260050 +0300
@@ -14,4 +14,8 @@
 //  - WIDEVINE_CDM_VERSION_STRING (with the version of the CDM that's available
 //    as a string, e.g., "1.0.123.456").
 
+#include "third_party/widevine/cdm/widevine_cdm_common.h"
+#define WIDEVINE_CDM_AVAILABLE
+#define WIDEVINE_CDM_VERSION_STRING "@WIDEVINE_VERSION@"
+
 #endif  // WIDEVINE_CDM_VERSION_H_

but almost at the end I get a message that says variable WIDEVINE_CDM_VERSION_STRING is never defined.  think I can post the output as soon I will compile it again. In the meanwhile has anyone of you ever had the same issue?

Regards,
Daniele

Comment 39 by dave.cha...@gmail.com, Nov 21 2015

I do not believe you need to patch files as of Chromium 46.0.2490.86. I did not have to.
	export GYP_DEFINES="ffmpeg_branding=Chrome proprietary_codecs=1 component=static_library clang=1 branding=Chromium buildtype=Official  enable_pepper_cdms=1 enable_webrtc=1 enable_widevine=1" 

exporting the above variable worked for me.

Comment 40 by Deleted ...@, Nov 22 2015

Thanks Dave. I could not get it to work with the buildtype=Official, therefore I had to remove it and build Chromium without it. In my case (freebsd) I had to use the setenv variable instead of export but that is not relevant. This time I fixed the issue:

FAILED: c++ -MMD -MF obj/chrome/common/common.chrome_content_client.o.d -DV8_DEPRECATION_WARNINGS -DCLD_VERSION=2 -D_FILE_OFFSET_BITS=64 -DNO_TCMALLOC -DDISABLE_NACL -DCHROMIUM_BUILD -DCR_CLANG_REVISION=245402-1 -DUSE_AURA=1 -DUSE_ASH=1 -DUSE_PANGO=1 -DUSE_CAIRO=1 -DUSE_DEFAULT_RENDER_THEME=1 -DUSE_LIBJPEG_TURBO=1 -DUSE_X11=1 -DUSE_CLIPBOARD_AURAX11=1 -DENABLE_ONE_CLICK_SIGNIN -DENABLE_WEBRTC=1 -DENABLE_MEDIA_ROUTER=1 -DUSE_PROPRIETARY_CODECS -DENABLE_PEPPER_CDMS -DENABLE_CONFIGURATION_POLICY -DENABLE_NOTIFICATIONS -DDONT_EMBED_BUILD_METADATA -DFIELDTRIAL_TESTING_ENABLED -DENABLE_TASK_MANAGER=1 -DENABLE_EXTENSIONS=1 -DENABLE_PLUGINS=1 -DENABLE_SESSION_SERVICE=1 -DENABLE_THEMES=1 -DENABLE_AUTOFILL_DIALOG=1 -DENABLE_BACKGROUND=1 -DENABLE_GOOGLE_NOW=1 -DENABLE_PRINTING=1 -DENABLE_BASIC_PRINTING=1 -DENABLE_PRINT_PREVIEW=1 -DENABLE_SPELLCHECK=1 -DENABLE_CAPTIVE_PORTAL_DETECTION=1 -DENABLE_APP_LIST=1 -DENABLE_SETTINGS_APP=1 -DENABLE_SUPERVISED_USERS=1 -DENABLE_MDNS=1 -DENABLE_SERVICE_DISCOVERY=1 -DFULL_SAFE_BROWSING -DSAFE_BROWSING_CSD -DSAFE_BROWSING_DB_LOCAL -DSAFE_BROWSING_SERVICE -DGL_GLEXT_PROTOTYPES -DMOJO_USE_SYSTEM_IMPL -DPROTOBUF_USE_DLLS -DGOOGLE_PROTOBUF_NO_RTTI -DGOOGLE_PROTOBUF_NO_STATIC_INITIALIZER -DSK_SUPPORT_GPU=1 -DSK_IGNORE_LINEONLY_AA_CONVEX_PATH_OPTS -DU_USING_ICU_NAMESPACE=0 -DUSE_LIBPCI=1 -DUSE_OPENSSL=1 -DUSE_GLIB=1 -DUSE_NSS_CERTS=1 -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -DNDEBUG -DNVALGRIND -DDYNAMIC_ANNOTATIONS_ENABLED=0 -D_FORTIFY_SOURCE=2 -Igen/shim_headers/snappy/target -Igen/shim_headers/re2/target -Igen/shim_headers/libpng/target -Igen/shim_headers/harfbuzz-ng/target -Igen/shim_headers/icuuc/target -Igen/shim_headers/icui18n/target -Igen/shim_headers/libevent/target -Igen -I../.. -I../../skia/config -I../../third_party/khronos -I../../gpu -I/usr/local/include -Igen/angle -I../../third_party/WebKit/Source -Igen/protoc_out -I../../third_party/protobuf -I../../third_party/protobuf/src -Igen/chrome -I../../third_party/WebKit -I../../third_party/mojo/src -Igen/third_party/mojo/src -I../../skia/ext -I../../third_party/skia/include/core -I../../third_party/skia/include/effects -I../../third_party/skia/include/pdf -I../../third_party/skia/include/gpu -I../../third_party/skia/include/lazy -I../../third_party/skia/include/pathops -I../../third_party/skia/include/pipe -I../../third_party/skia/include/ports -I../../third_party/skia/include/utils -Igen/ui/resources -Igen/extensions -Igen/extensions/strings -Igen/policy -fstack-protector --param=ssp-buffer-size=4  -pthread -fno-strict-aliasing -Wall -Wno-unused-parameter -Wno-missing-field-initializers -fvisibility=hidden -pipe -fPIC -Wno-reserved-user-defined-literal -fcolor-diagnostics -Wheader-hygiene -Wno-char-subscripts -Wno-unneeded-internal-declaration -Wno-covered-switch-default -Wstring-conversion -Wno-c++11-narrowing -Wno-deprecated-register -Wno-inconsistent-missing-override -Wno-shift-negative-value -Wexit-time-destructors -I/usr/local/include/glib-2.0 -I/usr/local/lib/glib-2.0/include -I/usr/local/include -pthread -I/usr/local/include/nss -I/usr/local/include/nss/nss -I/usr/local/include/nspr -Wno-header-guard -I/usr/local/include -I/usr/local/include -m64 -march=x86-64 -O2 -fno-ident -fdata-sections -ffunction-sections -funwind-tables -O2 -pipe -isystem/usr/local/include -I/usr/local/include/atk-1.0 -Wno-unknown-warning-option -fstack-protector -fno-strict-aliasing -fno-exceptions -fno-rtti -fno-threadsafe-statics -fvisibility-inlines-hidden -Wsign-compare -std=gnu++11  -c ../../chrome/common/chrome_content_client.cc -o obj/chrome/common/common.chrome_content_client.o
../../chrome/common/chrome_content_client.cc:164:34: error: use of undeclared identifier 'WIDEVINE_CDM_VERSION_STRING'
                                 WIDEVINE_CDM_VERSION_STRING + ")";
                                 ^
../../chrome/common/chrome_content_client.cc:165:30: error: use of undeclared identifier 'WIDEVINE_CDM_VERSION_STRING'
      widevine_cdm.version = WIDEVINE_CDM_VERSION_STRING;
                             ^
2 errors generated.
ninja: build stopped: subcommand failed.
===> Compilation failed unexpectedly.
Try to set MAKE_JOBS_UNSAFE=yes and rebuild before reporting the failure to
the maintainer.
*** Error code 1

Stop.
make[1]: stopped in /usr/ports/www/chromium
*** Error code 1

Stop.
make: stopped in /usr/ports/www/chromium

by adding the #define WIDEVINE_CDM_VERSION_STRING "@WIDEVINE_VERSION@" inside the widevine_cdm_constants.h. Once recompiled everything run smoothly. However I cannot still see the plugin under the chrome://plugins. I also tried to create a folder under /usr/lib/chromium-browser/ as described in comment #32 and pasted the two *.so which I extracted from the deb package, but still I cannot load the plugin. Is there anything I am overlooking here? 

Is there anybody who is having my same issue?

Regards,
Daniele.

Comment 41 by dave.cha...@gmail.com, Nov 24 2015

Type chrome://components/ in the address bar, and check if WidevineCdm shows up there.

Comment 42 by Deleted ...@, Nov 24 2015

Hello Dave,

unfortunately the list of components is only limited to:

CRLSet
recovery
EV Certs CT whitelist

It is actually a bit overwhelming as I assumed that the component got compiled. In order to have a bit more details I also started chromium with some deep logging which you can find here http://pastebin.com/0p57TR3q, but as you can see there no trace for Widevine.

Any other ideas or useful pieces of information I can look into?

Regards,
Daniele.

Comment 43 by Deleted ...@, Nov 28 2015

Hello there! I think I know what the problem is. Looking at the various classes for Widevine I have noticed that Unix does not seem to be supported. I think that even extending the implementation trying to make Chromium install Widevine will result in a no go, as the *.so needed to run this component should not be compatible for Unix.

Comment 44 by dave.cha...@gmail.com, Dec 1 2015

Sorry I am out of Ideas.

Comment 45 by rdragonr...@gmail.com, Jun 15 2016

This should be possible to solve. The .so files can be extracted from the google chrome packages for installing Chrome. Unix versions thus do exist.

Sign in to add a comment