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)
Unofficial API wrapper for seedr.cc

Seedr API Unofficial API wrapper for seedr.cc Inspired by theabbie's seedr-api Powered by @harp_tech (Telegram) How to use You can install lib via git

Anjana Madu 49 Oct 24, 2022
Davide Gallitelli 3 Dec 21, 2021
A simple, infinitely scalable, SQS based queue.

SimpleQ A simple, infinitely scalable, SQS based queue. Meta Author: Randall Degges Email: [emai

Randall Degges 162 Dec 21, 2022
Check AWS S3 instances for read/write/delete access

s3sec Test AWS S3 buckets for read/write/delete access This tool was developed to quickly test a list of s3 buckets for public read, write and delete

0xmoot 114 Dec 06, 2022
Utilizing the freqtrade high-frequency cryptocurrency trading framework to build and optimize trading strategies. The bot runs nonstop on a Rasberry Pi.

Freqtrade Strategy Repository Please test all scripts and dry run them before using them in live mode Contact me on discord if you have any questions!

Michael Fourie 90 Jan 01, 2023
Visualize size of directories, s3 buckets.

Dir Sizer This is a work in progress, right now consider this an Alpha or Proof of Concept level. dir_sizer is a utility to visualize the size of a di

Scott Seligman 13 Dec 08, 2022
A Python Module That Uses ANN To Predict A Stocks Price And Also Provides Accurate Technical Analysis With Many High Potential Implementations!

Stox ⚡ A Python Module For The Stock Market ⚡ A Module to predict the "close price" for the next day and give "technical analysis". It uses a Neural N

Dopevog 31 Dec 16, 2022
Morpy Bot Linux - Morpy Bot Linux With Python

Morpy_Bot_Linux Guide to using the robot : 🔸 Lsmod = to identify admins and st

2 Jan 20, 2022
A GitHub Follower Bot that is a WIP.

GitHub Follower Bot (WIP) Work In Progress This bot is a WIP. There are still many features I plan to add and code I need to improve (I'm still fairly

Christian Deacon 71 Dec 29, 2022
Sends messages to a Discord webhook whenever you make a new commit to your local git repository.

Git-Notif Sends messages to a Discord webhook whenever you make a new commit to your local git repository. Usage Just drop notifier.py into your git h

1 May 29, 2022
ELiza music is a telegram music bot project, allow you to play music on voice chat group telegram.

❤️ 𝗘𝗹𝗶𝘇𝗮 𝗠𝘂𝘀𝗶𝗰 ❤️ Unmaintained. The new repo of @MrsElizaRobot is private. (It is no longer based on this source code. The completely rewrit

Team Eliza 2 Dec 08, 2022
A MassDM selfbot which is working in 2021

mass-dm-discord - Little preview of the Logger and the Spammer Features Logging User IDS Sending DMs to the logged IDs Blacklist IDs (add the ID of th

karma.meme 88 Dec 26, 2022
A python package to fetch results of various national examinations done in Tanzania.

Necta-API Get a formated data of examination results scrapped from necta results website. Note this is not an official NECTA API and is still in devel

vincent laizer 16 Dec 23, 2022
Exchange indicators & Basic functions for Binance API.

binance-ema Exchange indicators & Basic functions for Binance API. This python library has been written to calculate SMA, EMA, MACD etc. functions wit

Emre MENTEŞE 24 Jan 06, 2023
A multipurpose Telegram Bot written in Python for mirroring files on the Internet to Google Drive

Mirror Leech Bot Mirror Leech Bot is a multipurpose Telegram Bot written in Python for mirroring files on the Internet to our beloved Google Drive. Ba

1 Jan 01, 2022
A play store search telegram bot

Play-Store-Bot A play store search telegram bot Made with Python3 (C) @FayasNoushad Copyright permission under MIT License License - https://github.c

Fayas Noushad 17 Oct 28, 2022
Faux is a chatbot bridge between urbit and discord.

Faux Faux is a chatbot bridge between urbit and discord. Whenever a member posts in your discord group, a bot will echo their message in your urbit gr

10 Dec 27, 2022
The Sue Gray Alert System was a 5 minute project that just beeps every time a new article is updated or published on Gov.UK's news pages.

The Sue Gray Alert System was a 5 minute project that just beeps every time a new article is updated or published on Gov.UK's news pages.

Dafydd 1 Jan 31, 2022
The most fresh and updateable Telegram userbot. By one of the most active contibutors to GeekTG

Installation Script installation: Simply run this command out of root: . (wget -qO- http://gg.gg/get_hikka) Manual installation: apt update && apt in

Dan Gazizullin 150 Jan 04, 2023
Robot Swerve Test Public With Python

Robot-Swerve-Test-Public The codebase for our swerve drivetrain prototype robot.

1 Jan 09, 2022