Puppy Linux Discussion Forum Forum Index Puppy Linux Discussion Forum
Puppy HOME page : puppylinux.com
"THE" alternative forum : puppylinux.info
 
 FAQFAQ   SearchSearch   MemberlistMemberlist   UsergroupsUsergroups   RegisterRegister 
 ProfileProfile   Log in to check your private messagesLog in to check your private messages   Log inLog in 

The time now is Thu 12 Dec 2019, 02:27
All times are UTC - 4
 Forum index » House Training » HOWTO ( Solutions )
Updating Widevine for Puppy - a guide
Moderators: Flash, Ian, JohnMurga
Post new topic   Reply to topic View previous topic :: View next topic
Page 1 of 1 [6 Posts]  
Author Message
Mike Walsh


Joined: 28 Jun 2014
Posts: 5656
Location: King's Lynn, UK.

PostPosted: Wed 02 Oct 2019, 21:25    Post subject:  Updating Widevine for Puppy - a guide
Subject description: A streaming media how-to guide for the major browsers.....
 

Evening, boys & girls.

Streaming media services are becoming more & more commonplace on the world-wide web these days. Many well-known services exist:_

- NetFlix
- Amazon Prime
- Hulu
- BBC iPlayer (UK)
- ITV Player (UK)


.....to name but a few. Doubtless there are many others I haven't mentioned.

Many of these require the Widevine Content Decryption Module (libwidevinecdm.so) for use with the DRM (Digital Rights Management) system, which 'protects' providers content from being 'illegally' accessed - read viewed for free, when providers wish to make you pay for the privilege of viewing it..!

One facet of this modern requirement I've noticed is that the players provided by many of these content providers are incredibly 'fussy' about the very newest version always being in use. This being the case, I thought I'd just provide a quick guide to keeping your Widevine module(s) 'up-to-date'.

-------------------------------------------

This can be broadly sub-divided into 2 sections; the Chromium-based 'clones', and the Mozilla-based browsers (where this is supported).

Chromium-based browsers

- Chrome

Linux Chrome has caught up pretty much to its Windows counterpart, with both PepperFlash & Widevine being regularly auto-updated from within the browser process.....without the user needing to lift a finger. Good news for Chrome users!

The others - Chromium itself, Slimjet & Iron - are rather more 'hands-on', unfortunately.

- Chromium

Easiest way to obtain the Widevine module is to visit AlienBob's website, here:-

http://www.slackware.com/~alien/slackbuilds/chromium-widevine-plugin/

.....and download the appropriate 32- or 64-bit .txz package. Best one to use is the 14.2 package. Unzip them with SFR's UExtract, then place the libwidevinecdm.so module inside the main chromium directory; this may vary in location, so you can't install the package direct (only works in the Slackos, anyway). Chromium will automatically pick it up when required.

- SlimJet

Same procedure as above. The Widevine module wants to be placed inside the main slimjet directory, wherever it's located. You may find it necessary to sym-link it to /spot/.local/lib as well (Slimjet will only run as user 'spot' these days, as is the case with Chrome, so you'll probably need to create these directories yourself, then place the symlink manually within it. It's another location where Widevine is looked-for.)

- Iron

Iron, unfortunately, is a real PITA these days. From experience, I've discovered that as of Iron 70 and onwards, the Widevine module simply isn't recognised. If you try to access DRM-controlled content with Iron, you get a message telling you to visit

chrome://components

.....access the Widevine entry in the list, then manually 'Check for update'. Which would be fine if that entry in fact existed.....but in Iron, there's no sign of it, and it appears that Iron has been coded to expect Widevine to be accessed this way only..!

The SRWare Forums remain resolutely 'schtum' on the matter. I've posed this question at least 3 times during the last 12 months, and to date, haven't received one single response yet.....so don't use Iron if you want to access the likes of NetFlix.

Iron 69 (and earlier) are trouble-free in this respect, luckily.

---------------------------------------

Mozilla-based browsers

Accessing DRM-controlled content is a much more recent prospect for the Mozilla-based browsers. To the best of my knowledge, only Firefox itself (and possibly the Palemoon derived Basilisk browser) are capable of playing such. Palemoon never will support it (I've been told that in no uncertain terms on the Palemoon Forum), and neither will Seamonkey.

Fortunately, the Mozilla DRM mechanism is a lot easier to administer. To enable it, all you need to do is go into 'Preferences' in the menu (the 'hamburger' symbol, top-right). Under 'General', scroll down to the section titled 'Digital Rights Management (DRM) Content', and tick the checkbox for 'Play DRM-controlled content'. This will download, and install, the Widevine module. After a re-start of the browser, the DRM stuff is up-and-running.

I'm not certain whether the Widevine module is auto-updated during the frequent browser updates or not. In Quantum itself, these occur fairly regularly; in the ESR (Extended Support Release) versions, not so often.

It's perfectly possible to force a manual 'update' of Widevine yourself. (You can watch this in action, if you want to. Go into your profile, and enter the 'gmp-widevine-cdm' directory. Within, you'll find another directory, marked with a number - currently, 4.10.1440.19. Inside this, you'll find libwidevinecdm.so, and a couple of text documents.)

As you untick the DRM checkbox, this numbered directory will disappear. Shut the browser down, either re-boot, or restart 'X' (I do the former. but the latter will probably do what's necessary), then open Firefox, go into 'Preferences' again, and re-tick that checkbox. Doing so will cause the browser to search for, download and install the most up-to-date version of the Widevine module. Simples! Smile

This same procedure works identically for Firefox ESR, too.

Here in the UK, the BBC iPlayer is accessed purely and simply via HTML5, with no DRM in sight. You do, however, need an up-to-date TV licence. The ITV Player, on the other hand, like NetFlix requires Widevine, since it's DRM-controlled.

I opened an account for this just a couple of days ago, and earlier today it quit working on me. By carrying-out the above Mozilla 'workaround', access was restored.....just like that. So it obviously wanted a newer version of Widevine to be present on the system.

-------------------------------------------------------

Hopefully, this short guide will help those of you who access DRM-controlled content to remain up-to-date, and a wee bit more secure into the bargain.....as well as allowing you to continue enjoying your chosen media streams. Very Happy


Mike. Wink

_________________
MY 'PUPPY' PACKAGES

Back to top
View user's profile Send private message 
666philb


Joined: 07 Feb 2010
Posts: 3510
Location: wales

PostPosted: Thu 03 Oct 2019, 13:10    Post subject:  

hi mike,

i've never had any luck getting chromium to run netflix. after putting libwidevinecdm.so in my chromium-browser folder and restarting it still doesn't work.

it does work with vivaldi though.

any ideas?

cheers

_________________
Bionicpup64 built with bionic beaver packages http://murga-linux.com/puppy/viewtopic.php?t=114311
Xenialpup64, built with xenial xerus packages http://murga-linux.com/puppy/viewtopic.php?t=107331
Back to top
View user's profile Send private message 
Mike Walsh


Joined: 28 Jun 2014
Posts: 5656
Location: King's Lynn, UK.

PostPosted: Thu 03 Oct 2019, 17:40    Post subject:  

Hiya, Phil.

Hmm.... You might get more joy from Peter - he's the Chromium 'guru' for Puppy!

I started a thread, a few years ago, all about testing out the Widevine modules in Chromium.....this was around the Chromium 49/50 time-frame:-

http://www.murga-linux.com/puppy/viewtopic.php?t=106339

.....but most of the procedures don't really hold water any more, unfortunately. From what I can gather, the Chromium code-base has undergone a lot of radical changes since those far-off days. I can't get Widevine to function in any of the current Chromium-based 'clones' at all; AFAICT, the browser is now set-up to expect to obtain the Widevine module via an internal process. You're supposed to visit

Code:
chromium://components


.....and 'update' Widevine from an entry in the list, but in Puppy, at least, that entry doesn't exist. And the browser won't recognise Widevine via any other method, it seems.

There's a ton of 'flags' that can be used in the launch-wrapper to alter browser behaviour; Peter would definitely know more about that than me. Personally, I suspect it's an 'option' at build-time..... (*shrug*) Either that, or Google have 'requested' The Chromium Project to tighten-up on security procedures with regard to Widevine/DRM-related stuff. Can't say.....and it seems that even those who know about these things are no longer talking.

Sorry I can't be of more help.


Mike.

_________________
MY 'PUPPY' PACKAGES

Back to top
View user's profile Send private message 
technosaurus


Joined: 18 May 2008
Posts: 4872
Location: Blue Springs, MO

PostPosted: Sat 05 Oct 2019, 17:05    Post subject:  

Back when flash player was a thing, I wrote a script to replace the version number in the plugin module to trick the players into thinking they had the latest version 99% of the time it still worked fine.

Something like that could be useful for the 32bit version of chromium.

_________________
Check out my github repositories. I may eventually get around to updating my blogspot.
Back to top
View user's profile Send private message Visit poster's website 
Mike Walsh


Joined: 28 Jun 2014
Posts: 5656
Location: King's Lynn, UK.

PostPosted: Sat 05 Oct 2019, 19:35    Post subject:  

@ technosaurus:-

That's certainly a possibility.....though I get the impression, from experimentation, that there's a bit more to it than just the version number. Widevine's a rather different beast to Flash/PepperFlash, and I believe that sites look for certain 'internal' WideVine components in addition to the version.

It's worth a try, though.


Mike. Wink

_________________
MY 'PUPPY' PACKAGES

Back to top
View user's profile Send private message 
technosaurus


Joined: 18 May 2008
Posts: 4872
Location: Blue Springs, MO

PostPosted: Sat 05 Oct 2019, 20:17    Post subject:  

That's what LD_PRELOAD is for... once you reverse engineer what functions they are looking for. There's a similar project that adds GNU libc stuff to musl - I don't recall the name.
_________________
Check out my github repositories. I may eventually get around to updating my blogspot.
Back to top
View user's profile Send private message Visit poster's website 
Display posts from previous:   Sort by:   
Page 1 of 1 [6 Posts]  
Post new topic   Reply to topic View previous topic :: View next topic
 Forum index » House Training » HOWTO ( Solutions )
Jump to:  

You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum
You cannot attach files in this forum
You can download files in this forum


Powered by phpBB © 2001, 2005 phpBB Group
[ Time: 0.0458s ][ Queries: 11 (0.0051s) ][ GZIP on ]