get l3 cdm from Here
Support our site by donate $5 directly to us Thanks!!!
Try StreamFab Downloader and download streaming video from Netflix, Amazon!
Try StreamFab Downloader and download streaming video from Netflix, Amazon!
+ Reply to Thread
Results 271 to 300 of 1612
-
both must rename device_client_id_blob and device_private_key
put it in
freevine-main\pywidevine\L3\cdm\devices\android_generic
inside freevine_main folder
Last edited by iamghost; 8th Nov 2023 at 16:38.
-
Thanks!
That got rid of one error. Next I uninstalled the PIP version of pywidevine and that got rid of another error. I can now fetch show info without issues.
Unfortunately when trying to download a show (I have only tried from BBC, Ch5 and Ch4) I now get:
"Download failed or was interrupted"
Traceback (most recent call last):
File "/home/00kell/freevine/services/channel4.py", line 337, in download
subprocess.run(args, check=True)
File "/usr/lib/python3.10/subprocess.py", line 503, in run
with Popen(*popenargs, **kwargs) as process:
File "/usr/lib/python3.10/subprocess.py", line 971, in __init__
self._execute_child(args, executable, preexec_fn, close_fds,
File "/usr/lib/python3.10/subprocess.py", line 1738, in _execute_child
and os.path.dirname(executable)
File "/usr/lib/python3.10/posixpath.py", line 152, in dirname
p = os.fspath(p)
TypeError: expected str, bytes or os.PathLike object, not NoneType
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/home/00kell/freevine/freevine.py", line 46, in <module>
main()
File "/home/00kell/.local/lib/python3.10/site-packages/click/core.py", line 1157, in __call__
return self.main(*args, **kwargs)
File "/home/00kell/.local/lib/python3.10/site-packages/click/core.py", line 1078, in main
rv = self.invoke(ctx)
File "/home/00kell/.local/lib/python3.10/site-packages/click/core.py", line 1434, in invoke
return ctx.invoke(self.callback, **ctx.params)
File "/home/00kell/.local/lib/python3.10/site-packages/click/core.py", line 783, in invoke
return __callback(*args, **kwargs)
File "/home/00kell/freevine/freevine.py", line 40, in main
Service(config, **kwargs)
File "/home/00kell/freevine/services/channel4.py", line 51, in __init__
self.get_options()
File "/home/00kell/freevine/services/channel4.py", line 307, in get_options
self.download(download, title)
File "/home/00kell/freevine/services/channel4.py", line 339, in download
raise ValueError("Download failed or was interrupted")
ValueError: Download failed or was interrupted -
Just a heads-up (or two):
For the next version, I'll move over to use the pip installation of pywidevine instead of the older portable version. It's a cleaner setup and it's in active development, which is a nice bonus. I liked the smaller footprint of the portable version, but it's pretty damn ancient at this point. And having it linked remotely on the repo page is kind of ugly.
The switch won't change much performance-wise, but you'll need to convert your client blob and key to a .wvd file:
Code:pywidevine create-device -t ANDROID -l 3 -k PATH_TO_KEY -c PATH_TO_BLOB
------------------------------------------
I'll also be removing support for remote CDM. You can't throw a rock in here without hitting a CDM, and having a remote version feels unnecessary. -
-
Hello All,
I love the look and sound of this, but i have no idea how to set it up, and get it to work. I really want to download and watch https://www.channel4.com/programmes/sex-traffic both episodes. Could anyone help talk me through what to do? Thanks in advance. -
-
@Trevnal At the end of the previous page I listed everything that I have done to try and get it working. I am happy to update the post with more detail if it is required. Unfortunately, some aspects of this feels like jumping in at the deep end when you only know the basics so I have not got it right yet despite lots of reading. For example, it wasn't clear to me just exactly what L3 was and how to produce valid files because all the instructions I found were for other programs and Android devices (it turns out that isn't relevant). Fortunately @iamghost kindly put me straight on that but downloads are now blocked by another issue that I cannot fathom...
Also, I am using Ubuntu rather than Windows so your mileage will vary. -
Cannot basic installation problems be done via a brand new thread specifically to deal with that? Then when you're up and running come back here to join the rest of us. We are losing the rhythm with regard to members' feedback with finding faults with specific webplayers and other ideas which stabbedbybrick can make use of to help all members.
Also, it was suggested using cdms that are available free for all elsewhere in the forum. Since they're in the public domain for anybody to use, they're not going to last too long before Google revokes them due to overuse. You need to create your own set using: https://forum.videohelp.com/threads/408031-Dumping-Your-own-L3-CDM-with-Android-Studio -
Please leave it in. I do have an L3 but I use the remote one sometimes as well. If you remove it, I suppose I can just add the code back in. But I don't see the point in removing it.
If it works and not causing any issues, functionality should not be removed. That's just my own software philosophy but I am sure is shared by many others. Features should always be improving. Easier to use, faster, more flexibility. Ideally, it shouldn't go backwards. -
Removing a remote access method in favor of a local one can enhance reliability and reduce dependencies on external factors. I am wholly in support of removing a remote access method when it can be done locally instead. Dependency on a remote CDM unnecessarily may break functionality even if there is a slight delay in accessing the remote site i.e. a timeout or if the remote site shuts down completely at a future date. Implementing it as a fallback could be a good compromise, ensuring that users have local options while still providing a remote option for specific use cases.
-
-
See this post
Last edited by stabbedbybrick; 12th Nov 2023 at 09:38.
-
The new version works great! The new options is a great addition and the wvd creator was a nice touch.
Appreciate the hard work. -
Hi Stabbedbybrick,
Hoping you could point me to where i may be going wrong.
1: installed freevine-0.6.2-beta folder
2: added pywidevine folder
3 : added client_id_bin and private_key.pem into C:\Users\xxxx\freevine-0.6.2-beta\pywidevine\L3\cdm\devices\android_generic folder
4: added requirments. ffmpeg.exe, ffprobe.exe mkvmerge.exe mp4decrypt.exe N_m3u8DL-RE.exe all into freevine-0.6.2-beta folder
5: added wvd folder to C:\Users\xxxx\freevine-0.6.2-beta\utils\wvd
5: added client_id.bin and private_key.pem to wvd folder
As A quick test from elevated command prompt i just gave it freevine.py
outcome was
C:\Users\xxxx\freevine-0.6.2-beta>freevine.py
03:24:06.379 INFO : Freevine v0.6.2-beta (20231031)
03:24:06.385 ERROR : Service is not supported
6:
Any pointers to where I may be going wrong please. -
-
File "D:\Freevine\freevine.py", line 66, in <module>
main()
File "C:\Users\******\AppData\Roaming\Python\Python310\ site-packages\click\core.py", line 1157, in __call__
return self.main(*args, **kwargs)
File "C:\Users\******\AppData\Roaming\Python\Python310\ site-packages\click\core.py", line 1078, in main
rv = self.invoke(ctx)
File "C:\Users\******\AppData\Roaming\Python\Python310\ site-packages\click\core.py", line 1434, in invoke
return ctx.invoke(self.callback, **ctx.params)
File "C:\Users\defr0w\AppData\Roaming\Python\Python310\ site-packages\click\core.py", line 783, in invoke
return __callback(*args, **kwargs)
File "D:\Freevine\freevine.py", line 60, in main
Service(main_config, srvc_api, srvc_config, wvd, **kwargs)
File "D:\Freevine\services\bbciplayer\bbciplayer.py ", line 47, in __init__
self.get_options()
File "D:\Freevine\services\bbciplayer\bbciplayer.py ", line 327, in get_options
self.download(download, title)
File "D:\Freevine\services\bbciplayer\bbciplayer.py ", line 382, in download
args, file_path = get_args(self)
File "D:\Freevine\utils\args.py", line 92, in get_args
threads, format, muxer, packager = format_settings(service)
File "D:\Freevine\utils\args.py", line 64, in format_settings
if service.use_shaka_packager:
AttributeError: 'BBC' object has no attribute 'use_shaka_packager'. Did you mean: 'shaka_packager'?
I seem to get this issue when trying to download from BBC Iplayer using the new Beta, anyone have any suggestions? -
@stabbedbybrick
Line 64 in args.py needs to be fixed.
Remove this part.
HTML Code:use_
-
For anyone who's a bit confused, do this.
Copy your existing freevine script folder to something called this.
Code:fv_v0.6.2-beta
Make sure you are running a virtual environment. Now is the time to fix this.
Pull from GitHub or download and extract the new zip file.
You'll notice the folder structure now has less files and is overall a lot cleaner.
First run a this command.Code:pip install -r requirements.txt
In the new sub folder call wvd, place your device_private_key and device_client_id_blob files.
Nothing more to do regarding this.
Here are some examples of the change and how you can achieve the same result via different configs.
Option 1. No further config, all command line tags
I ran this command without creating a service specific config.yaml file.
Code:freevine.py -e S18E69 -sv res=576:for=worst https://www.channel4.com/programmes/four-in-a-bed/
Option 2. Service config (essentially hard coding the output format)
If I then copy config.yaml and place it into the \services\channel4 folder and edit the video section to this.
Code:select: "res=576:for=worst"
Code:freevine.py -e S18E68 https://www.channel4.com/programmes/four-in-a-bed/
In other words, if you only ever want to download a very specific format of video (and audio), then it's easier to just hard code this in the relevant service config.yaml file. Saves you typing a few extra characters.
Note: On first freevine.py xxx run, the new wvd file will be created so if you don't see that being generated, something is wrong.
Code:INFO : WVD file is missing. Attempting to create a new one...
Code:Required RSA key pair not available
-
I also seem to be getting this error as well
File "D:\Freevine\freevine.py", line 66, in <module>
main()
File "C:\Users\******\AppData\Roaming\Python\Python310\ site-packages\click\core.py", line 1157, in __call__
return self.main(*args, **kwargs)
File "C:\Users\******\AppData\Roaming\Python\Python310\ site-packages\click\core.py", line 1078, in main
rv = self.invoke(ctx)
File "C:\Users\******\AppData\Roaming\Python\Python310\ site-packages\click\core.py", line 1434, in invoke
return ctx.invoke(self.callback, **ctx.params)
File "C:\Users\******\AppData\Roaming\Python\Python310\ site-packages\click\core.py", line 783, in invoke
return __callback(*args, **kwargs)
File "D:\Freevine\freevine.py", line 60, in main
Service(main_config, srvc_api, srvc_config, wvd, **kwargs)
File "D:\Freevine\services\bbciplayer\bbciplayer.py ", line 47, in __init__
self.get_options()
File "D:\Freevine\services\bbciplayer\bbciplayer.py ", line 327, in get_options
self.download(download, title)
File "D:\Freevine\services\bbciplayer\bbciplayer.py ", line 388, in download
raise ValueError(f"{e}")
ValueError: [WinError 216] This version of %1 is not compatible with the version of Windows you're running. Check your computer's system information and then contact the software publisher -
It's supposed to be there, I just messed up when creating the class and I have no idea how I managed to do it since it worked fine right before I uploaded. Stupid branches. Either way, it's been fixed.
Originally Posted by Koas -
I know this is probably off topic, but I've looked at these threads for awhile and I find the whole process of downloading free streaming videos very hard to understand. Having to find keys and use complicated programs to decypt videos that the average person would never understand just shows the measures the broadcast and streaming outlets put on their content so that noone can download them, and many uploads to youtube will get removed because they just want people paying for their service or paying for TV license. Also, services like the ITVHub (or ITVX as it's called now) have a habit of cutting scenes or trimming scenes, so you're not seeing an episode of a particular show the way it was originally broadcast. I've seen this lots with Heartbeat that ITV3 are currently showing, they have cut out every minor swear word and even cut scenes by a few seconds which wouldn't make any difference to the timeslot (the usual reason why scenes often get cut). I have been recording episodes to try and redub the original songs used on the original broadcast that ITV/ITV3 show with the DVD versions which use, for the majority of episodes, what are poor cover versions of Beatles songs. But the cut scenes on ITV3 make it abit of a problem editing the songs when partial scenes have been cut. Streaming sites can also delete scenes for political correctness.
-
-
All right, I decided to just push the v1.0.0 update to main and calling the beta phase over.
I've used this thread to beta test a ton of different setups and features, and the base feels solid enough. No more majorly disruptive changes in the near future. If you've avoided the last few beta versions because I keep messing around, I'd suggest getting this one. Future updates should be relatively seamless.
To make it easy, just treat it as a new installation and checkout the README and --help documentation for steps and usage.
If you prefer the older setup, they'll still be available in the releases section. They won't be updated, but they should continue to work for the forseeable future. -
@stabbedbybrick
For your (and others) information, I've been helping to set up a colleague who has only Windows 7 and Python 8 installed. Your 'older' setup works as it should. No compatibility issues. And that's with using protobuf 4.24.3 and the WKS-KEYS pywidevine that's compatible with that. -
Testing out 1.0.0 in a sandbox thanks @stabbedbybrick.
Working ok for me so far for BBC, All4 and C5. Have an issue with ABC iView https://iview.abc.net.au/show/joanna-lumley-s-spice-trail-adventure
[Attachment 74826 - Click to enlarge]
Same episode downloads fine using 0.6.2 beta
[Attachment 74827 - Click to enlarge] -
looks like just a typo - it should be "get_keys" not "get.keys"
you can modify the file as below if you want it working now, or wait for stabbed to fix it up.
[Attachment 74828 - Click to enlarge]
Similar Threads
-
UK Free to Air Downloader
By A_n_g_e_l_a in forum Video Streaming DownloadingReplies: 613Last Post: 27th Jun 2025, 08:20 -
Video/Screenshot Guide to Freevine/N_m3u8DL-RE downloader for MacOS
By gwilliams1996 in forum Video Streaming DownloadingReplies: 16Last Post: 15th May 2024, 06:14 -
Forcing quality on streaming services
By qnufc in forum Video Streaming DownloadingReplies: 10Last Post: 8th Mar 2024, 17:27 -
Are we going to see all streaming services switching to L1 completely
By Loryanam2 in forum Video Streaming DownloadingReplies: 7Last Post: 5th Mar 2023, 07:37 -
Portable Streaming DownLoader for XMovies8?
By KermitJ in forum Video Streaming DownloadingReplies: 0Last Post: 27th Sep 2019, 10:44