Using Widevine CDM

Having problems with building or using CEF's C/C++ APIs? This forum is here to help. Please do not post bug reports or feature requests here.

Using Widevine CDM

Postby djst3rios2 » Thu Jun 14, 2018 3:07 pm

I am trying to integrate Widevine CDM so I can view streams from sites like Twitch. I am using Cefsharp for Winforms version 63, I copied the folder "WidevineCdm" from my google chrome into my release folder, and I am using these settings:
Code: Select all
var settings = new CefSettings();
settings.CefCommandLineArgs["enable-widevine-cdm"] = "1";
Cef.Initialize(settings, performDependencyCheck: false, browserProcessHandler: null);
Cef.RegisterWidevineCdm(@".\WidevineCdm");


However, I am still unable to watch a twitch stream. I am not sure what I am doing wrong. Can someone shed some light on the matter?

debug.log contains this:
Code: Select all
[0614/234514.281:ERROR:widevine_loader.cc(263)] Widevine CDM registration failed;


EDIT: I did some debugging, the error code is "Incompatible". I tried getting widevine CDM from chrome version 54 (older version), but no luck.
djst3rios2
Techie
 
Posts: 18
Joined: Mon Jun 11, 2018 4:22 am

Re: Using Widevine CDM

Postby magreenblatt » Thu Jun 14, 2018 9:52 pm

Are you using widevinecdmadapter.dll from the correct build/version of CEF?
magreenblatt
Site Admin
 
Posts: 12383
Joined: Fri May 29, 2009 6:57 pm

Re: Using Widevine CDM

Postby djst3rios2 » Fri Jun 15, 2018 1:41 am

magreenblatt wrote:Are you using widevinecdmadapter.dll from the correct build/version of CEF?

Thanks for the reply, I took it from google chrome. Is there another one in CEF? If yes where can I find it?

EDIT: Found it in packages\cef.redist.x86.3.3359.1772\CEF, unfortunately I still get an "Incompatible" error code :(
djst3rios2
Techie
 
Posts: 18
Joined: Mon Jun 11, 2018 4:22 am

Re: Using Widevine CDM

Postby ndesktop » Fri Jun 15, 2018 5:19 am

I think you need to specify the exact branch of CEF to determine what widevine you can use. I'm not sure on how compatibility works between CEF and widevine, but I suppose they need to be compatible at least at branch level.
ndesktop
Master
 
Posts: 750
Joined: Thu Dec 03, 2015 10:10 am

Re: Using Widevine CDM

Postby djst3rios2 » Fri Jun 15, 2018 6:02 am

ndesktop wrote:I think you need to specify the exact branch of CEF to determine what widevine you can use. I'm not sure on how compatibility works between CEF and widevine, but I suppose they need to be compatible at least at branch level.

Thanks for your reply, I am using "CefSharp.WinForms 66.0.0-CI2633", I think it's the master branch, CEF version 3359. How would I go about finding the correct widevine? maybe it would be easier if I used stable branch version 63 (CEF version 3239) ?
djst3rios2
Techie
 
Posts: 18
Joined: Mon Jun 11, 2018 4:22 am

Re: Using Widevine CDM

Postby Czarek » Fri Jun 15, 2018 11:03 am

Download the correct version from Spotify builds: http://opensource.spotify.com/cefbuilds/index.html
Maintainer of the CEF Python, PHP Desktop and CEF C API projects. My LinkedIn.
User avatar
Czarek
Virtuoso
 
Posts: 1927
Joined: Sun Nov 06, 2011 2:12 am

Re: Using Widevine CDM

Postby djst3rios2 » Fri Jun 15, 2018 11:54 am

Czarek wrote:Download the correct version from Spotify builds: http://opensource.spotify.com/cefbuilds/index.html


Thanks for the link but I am still a bit lost. I think the correct version is this:
05/05/2018 - CEF 3.3359.1772 (that's my cef.redist.x86 version), I downloaded the source, standard distribution and release symbols aswell but I don't find any DLLs related to CDM in there.
djst3rios2
Techie
 
Posts: 18
Joined: Mon Jun 11, 2018 4:22 am

Re: Using Widevine CDM

Postby magreenblatt » Fri Jun 15, 2018 1:24 pm

I downloaded http://opensource.spotify.com/cefbuilds ... 32.tar.bz2. It contains widevinecdmadapter.dll. You then need to get manifest.json and widevinecdm.dll from a 32-bit Google Chrome installation and put all three files in the same directory.
magreenblatt
Site Admin
 
Posts: 12383
Joined: Fri May 29, 2009 6:57 pm

Re: Using Widevine CDM

Postby djst3rios2 » Fri Jun 15, 2018 5:59 pm

magreenblatt wrote:I downloaded http://opensource.spotify.com/cefbuilds ... 32.tar.bz2. It contains widevinecdmadapter.dll. You then need to get manifest.json and widevinecdm.dll from a 32-bit Google Chrome installation and put all three files in the same directory.


Thanks, however I am still getting an incompatible error code :(
djst3rios2
Techie
 
Posts: 18
Joined: Mon Jun 11, 2018 4:22 am

Re: Using Widevine CDM

Postby djst3rios2 » Sat Jun 16, 2018 3:45 pm

Something weird happened. I placed "widevinecdmadapter.dll" in the same folder as my executable, and now twitch works! I don't call RegisterCDM function at all.
djst3rios2
Techie
 
Posts: 18
Joined: Mon Jun 11, 2018 4:22 am


Return to Support Forum

Who is online

Users browsing this forum: Google [Bot] and 55 guests