this post was submitted on 26 Mar 2025
20 points (100.0% liked)

DRM

144 readers
6 users here now

A community for the discussion of topics surrounding DRM, Digital Rights Management.

All media that DRM can be applied on can be discussed here, for example books, movies, music or games.

Digital rights management (DRM) is the management of legal access to digital content. Various tools or technological protection measures, such as access control technologies, can restrict the use of proprietary hardware and copyrighted works. DRM technologies govern the use, modification and distribution of copyrighted works (e.g. software, multimedia content) and of systems that enforce these policies within devices. DRM technologies include licensing agreements and encryption.

Wikipedia

Guides and useful tools

Quick and dirty way to rip an eBook from Android

2025 Guide for freeing books from Amazon (after D&T was removed)

Guide to Removing DRM From Amazon Kindle E-Books

Liberate your Kindle books before leaving Amazon (Tutorial)

How to setup Calibre to remove DRM from ebooks on Linux/Archive mirror

Guide on removing DRM from Kobo & Kindle eBooks (reddit mirror, Archive link)

Extracting content from an LCP "protected" ePub

DeDRM tools for eBooks: a plugin for Calibre for removing Adobe DRM, Obok etc.

Calibre eBook Management

Miscellaneous links

DRM - Frequently Asked Questions by DefectiveByDesign

Guide to DRM-Free Living by DefectiveByDesign

founded 1 week ago
MODERATORS
top 1 comments
sorted by: hot top controversial new old
[–] [email protected] 6 points 1 week ago

In summary, YouTube is A/B testing a change where specific clients receive only DRM-locked video streams. This is notable because yt-dlp impersonates those clients during normal operation. Since yt-dlp won't support decrypting DRM-locked videos, this change breaks yt-dlp's ability to download any videos.

To respond to your specific questions:

  • innertube is the name for private YouTube APIs. (Here's a library that talks to innertube https://github.com/tombulled/innertube/, although yt-dlp has its own separate client code.) These APIs are intended for consumption by the various types of YouTube client software.
  • TVHTML5 is the specific client (as opposed to e.g. TVLITE or TVANDROID)... presumably different TVs run different specific TV clients, with consumption of different specific TV APIs.
  • When yt-dlp downloads a video, it roughly performs this sequence of steps: pretend to be one of the types of clients supported by innertube; download the top-level video object; parse out the list of possible formats. These formats are like "MP4, 1080p, with AAC audio" or "Ogg, audio only". (The original issue report shows a better example in the verbose output dump.) By default, yt-dlp just grabs the best quality audio and best quality video stream, downloads them, and muxes them together into a single file, but you can configure this behavior. DRM formats are formats that are protected by (presumably) Widevine: https://en.wikipedia.org/wiki/Widevine, the decryption of which yt-dlp has stated will not be supported.
  • Available means they're an option for our yt-dlp client to download. Videos don't necessarily have all formats for all clients; for instance, a video might not have a 4K option, because it was never uploaded in 4K. Or it might have a 4K upload, but YouTube won't show 4K options to a client that doesn't support 4K decoding.
  • In this case, it means this specific internal client type can't download the video, because when yt-dlp reaches out, it gets ONLY formats that are DRM-locked. This is of note, I think, because the TV client is a way to get high-quality video from the YouTube API without having to pass it a valid YouTube login token (further down the issue, the reporter says providing a token allows the "web" innertube client to work).