Widevine MPD Content Downloader & Decryptor

Overview

Widevine-DL

made-with-python Github All Releases License

Encrypted MPD Manifest Content Downloader + Decryptor (not a Widevine Key Extractor!)

Requirements

  • ffmpeg, yt-dlp, aria2, widevine-l3-decryptor
$ pip install ffmpeg yt-dlp aria2p
  • For Linux Users, it is recommended to install aria2 with apt.
$ sudo apt-get install aria2

Installation & Run

  1. Download and Extract ZIP from Releases
  2. Install Requirements
  3. Run widevine-dl.py
$ python3 widevine-dl.py

Inputs

  • WideVineDecryptor Prompt - Copy from widevine-l3-decryptor extension (exactly like the format below)
WidevineDecryptor: Found key: 100b6c20940f779a4589152b57d2dacb (KID=eb676abbcb345e96bbcf616630f1a3da)
  • MPD URL - MPD URL of Widevine Content
  • VIDEO_ID - Video Track ID Shown in Stream Info (Leave blank for best)
  • AUDIO_ID - Audio Track ID Shown in Stream Info (Leave blank for best)
  • FILENAME - Desired File Name of Final Decrypted File (with extension!)
  • If you only want to download the encrypted content from the MPD File not decrypt it, simply leave the WideVineDecryptor Prompt empty.

Legal Notice

Educational purposes only. Downloading DRM'ed materials may violate their Terms of Service.

If you enjoyed using the script, a star or a follow will be highly appreciated! 😎

Comments
  • ERROR: invalid key id

    ERROR: invalid key id

    hallo, i tried with the srf1 live stream and get invalid key id:

    stream: https://srf1-euwe.akamaized.net/4beefc53-c227-43c0-94eb-8f757547d6ed/srf1.ism/manifest(format=mpd-time-csf,encryption=cenc,filter=nodvr)

    ENTER VIDEO_ID (Press Enter for Best): 1_V_video_9402236402929338845 ENTER AUDIO_ID (Press Enter for Best): 1_V_video_9402236402929338845

    Downloading Encrypted Video from CDN.. [generic] Extracting URL: https://srf1-euwe.akamaized.net/4beefc53-c227-43c0-94eb-8f757547d6ed/srf1.ism/manifest(format=mpd...n=cenc,filter=nodvr) [generic] manifest(format=mpd-time-csf,encryption=cenc,filter=nodvr): Downloading webpage [generic] manifest(format=mpd-time-csf,encryption=cenc,filter=nodvr): Extracting information [info] manifest(format=mpd-time-csf,encryption=cenc,filter=nodvr): Downloading 1 format(s): 1_V_video_9402236402929338845 [dashsegments] Total fragments: 30 [download] Destination: /home/alex/tmp/widevine-dl/cache/encrypted_video.mp4 [download] 100% of 1.77MiB in 00:00:04 at 371.27KiB/s Downloading Encrypted Audio from CDN.. [generic] Extracting URL: https://srf1-euwe.akamaized.net/4beefc53-c227-43c0-94eb-8f757547d6ed/srf1.ism/manifest(format=mpd...n=cenc,filter=nodvr) [generic] manifest(format=mpd-time-csf,encryption=cenc,filter=nodvr): Downloading webpage [generic] manifest(format=mpd-time-csf,encryption=cenc,filter=nodvr): Extracting information [info] manifest(format=mpd-time-csf,encryption=cenc,filter=nodvr): Downloading 1 format(s): 1_V_video_9402236402929338845 [dashsegments] Total fragments: 30 [download] Destination: /home/alex/tmp/widevine-dl/cache/encrypted_audio.mp4 [download] 100% of 1.77MiB in 00:00:04 at 448.27KiB/s

    Decrypting WideVine DRM.. (Takes some time) ERROR: invalid key id ERROR: invalid key id Decryption Complete!

    what can i do to make it worke? thanks anan

    opened by atuctuc 0
  • Cannot find

    Cannot find "mp4decrypt" on mac os

    Issue

    When we execute the script python widevine-dl.py from a terminal, then we got this error on mac

    Decrypting WideVine DRM.. (Takes some time)
    sh: mp4decrypt: command not found
    sh: mp4decrypt: command not found
    

    Question: How do we get such a key ?

    Enter WideVineDecryptor Prompt: 
    > 
    
    opened by cmoulliard 1
  • Python error

    Python error

    I'm on windows 10 and when I try to run the script I get the following.

    Processing Video Info.. Python path configuration: PYTHONHOME = 'C:\widevine-dl' PYTHONPATH = (not set) program name = 'C:\widevine-dl\yt-dlp.exe' isolated = 0 environment = 0 user site = 0 import site = 0 sys._base_executable = 'C:\widevine-dl\yt-dlp.exe' sys.base_prefix = '' sys.base_exec_prefix = '' sys.executable = 'C:\widevine-dl\yt-dlp.exe' sys.prefix = '' sys.exec_prefix = '' sys.path = [ 'C:\widevine-dl\base_library.zip', 'C:\widevine-dl\lib-dynload', 'C:\widevine-dl', ] Fatal Python error: init_fs_encoding: failed to get the Python codec of the filesystem encoding Python runtime state: core initialized ModuleNotFoundError: No module named 'encodings'

    Current thread 0x000026c0 (most recent call first):

    Any ideas?

    opened by Khopon 0
  • no video

    no video

    Hello, i tried to download using this mode everything success fully downloaded but there is no video in mp4 and audio can you please check and let me know where did i go wrong Screenshot-2

    opened by snowywish 1
  • I can't figure out how to get the proper keys anymore since the chrome extension no longer works for me

    I can't figure out how to get the proper keys anymore since the chrome extension no longer works for me

    master_2.txt from the mpd file I thought the KID was 44d7aa5d9631940220b6687933b5ce96 and I used AES-FINDER on the firefox tab to get the key not sure how I could have screwed that up otherwise

    opened by num421337 1
  • You're my Hero! Fuck AnyStream, Fuck FlixGrab, Fuck AnyPaidSHIT

    You're my Hero! Fuck AnyStream, Fuck FlixGrab, Fuck AnyPaidSHIT

    <3 <3 <3

    ❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️

    opened by d3417 5
Releases(1.1.1)
Owner
Vank0n (SJJeon)
Mostly Developing Automation Scripts & DRM Related Tools 🇰🇷
Vank0n (SJJeon)
Pack up to 3MB of data into a tweetable PNG polyglot file.

tweetable-polyglot-png Pack up to 3MB of data into a tweetable PNG polyglot file. See it in action here: https://twitter.com/David3141593/status/13719

David Buchanan 2.4k Dec 29, 2022
Bot for Telegram data Analysis

Bot Scraper for telegram This bot use an AI to Work powered by BOG Team you must do the following steps to make the bot functional: Install the requir

8 Nov 28, 2022
Technical Test - Python Programmer Grupo Nexxera

Technical Test Nexxera Group Teste Técnico - Grupo de Programadores Python Nexxera 📍 Prepare-se para usar a API Nossa API de transações de contas dig

Raul dos Santos Moraes 1 Mar 16, 2022
Bootstrapping your personal Web3 info hub from more than 500 RSS Feeds.

RSS Aggregator for Web3 (or 🥩 RAW for short) Bootstrapping your personal Web3 info hub from more than 500 RSS Feeds. What is RSS or Reader Services?

ChainFeeds 1.8k Dec 29, 2022
Python functions to run WASS stereo wave processing executables, and load and post process WASS output files.

wass-pyfuns Python functions to run the WASS stereo wave processing executables, and load and post process the WASS output files. General WASS (Waves

Mika Malila 3 May 13, 2022
See GitHub API on terminal

gitbees About gitbees uses the GitHub API to show user data and ``repos` Using Make sure you have a python interpreter and then python gitbees.py Lice

Marcello Belanda 1 Nov 29, 2021
Picot - A discord bot made to fetch images from Pexels and unsplash API and provide raw images directly in channels

Picot A discord bot made to fetch images from Pexels and unsplash API and provid

Ayush Chandwani 5 Jan 12, 2022
The modern Lavalink wrapper designed for discord.py

Pomice The modern Lavalink wrapper designed for discord.py This library is heavily based off of/uses code from the following libraries: Wavelink Slate

Gstone 1 Feb 02, 2022
Discord py bot that plays magic the gathering.

Klunker Discord py bot that can play magic the gathering Bug Hunter Hello Bug Hunters. To help out with production of this bot, we need help catching

Aiden Castillo 0 Apr 25, 2022
DDoS Script (DDoS Panel) with Multiple Bypass ( Cloudflare UAM,CAPTCHA,BFM,NOSEC / DDoS Guard / Google Shield / V Shield / Amazon / etc.. )

KARMA DDoS DDoS Script (DDoS Panel) with Multiple Bypass ( Cloudflare UAM,CAPTCHA,BFM,NOSEC / DDoS Guard / Google Shield / V Shield / Amazon / etc.. )

Hyuk 256 Jan 02, 2023
This is a discord token generator(requests) which works and makes 200 tokens per minute

Discord Email verified token generator Creates email verified discord accounts (unlocked) Report Bug · Discord server Features Profile pictures and na

131 Dec 10, 2022
✨ A simple project to automate some stuffs in Habbo with G-Earth ✨

⚡️ Habbo G-Earth extensions ⚡️ ✨ A simple project to automate some stuffs in Habbo with G-Earth ✨ About | Getting Started | Authors ➤ Getting Started

Lucca Pessoa 1 Jan 09, 2022
Support for Competitive Coding badges to add in Github readme or portfolio websites.

Support for Competitive Coding badges to add in Github readme or portfolio websites.

Akshat Aggarwal 2 Feb 14, 2022
Freqtrade is a free and open source crypto trading bot written in Python.

Freqtrade is a free and open source crypto trading bot written in Python. It is designed to support all major exchanges and be controlled via Telegram. It contains backtesting, plotting and money man

Kazune Takeda 5 Dec 30, 2021
A Python Library to interface with Flickr REST API, OAuth & JSON Responses

Python-Flickr Python-Flickr is A Python library to interface with Flickr REST API & OAuth Features Photo Uploading Retrieve user information Common Fl

Mike Helmick 40 Sep 25, 2021
🤖 The bot that runs the official Fairfield Programming Association Discord server.

🤖 The bot that runs the official Fairfield Programming Association Discord server.

Fairfield Programming Association 1 Jan 07, 2022
Fast and small Discord-Toolset.

Mooncord 🌙 Discord server: https://discord.gg/frnpk2rg Fast and small Discord-Toolset. Enjoy? Star this repo ⭐ (Main file in Mooncord/Moon-1.0.1/vers

7ua 9 Dec 11, 2021
Telegram Google Translater Bot Can Translate Any Language To Your Selected Language

🔰 TELEGRAM GOOGLE TRANSLATER 🔰 • ⚡ INSTALLING ⚡ • • ✅ OFFICIAL SUPPORTS ✅ •

⚝ANKIT KUMAR⚝ 2 Jan 16, 2022
A (probably) working Kik name checker

KikNameChecker !THIS ONLY CHECKS WS2.KIK.COM ENDPOINT! \ Will add user inputted endpoints thing \ A (probably) working Kik name checker Started as a s

insert edgy and cool name 1 Dec 17, 2022
Public Mirror of Team 15's Code and Reports for RBE 3002 B21

RBE3002 Team 15 Lab Repository Team 15's Repository for all code written for RBE 3002 using the Robotis TurtleBot3 Written By Matthew Haahr, Leo Morri

Matthew Haahr 3 Mar 21, 2022