Skip to main content

yt-dlp-tldv

A yt-dlp extractor plugin for downloading tldv.io meeting recordings.

Installation

pip install yt-dlp-tldv

Or install from source:

git clone https://github.com/nichochar/yt-dlp-tldv.git
cd yt-dlp-tldv
pip install -e .

Usage

1. Get your auth token

Open tldv.io in your browser, press F12, go to the Console tab, and run:

JSON.parse(localStorage.getItem("_cap_jwt")).token

Copy the token value.

2. Download a meeting

yt-dlp --extractor-args "tldv:token=YOUR_JWT_TOKEN" "https://tldv.io/app/meetings/MEETING_ID"

With a custom output filename:

yt-dlp --extractor-args "tldv:token=YOUR_JWT_TOKEN" \
  -o "%(title)s.%(ext)s" \
  "https://tldv.io/app/meetings/MEETING_ID"

Alternative: username/password (experimental)

Note: Username/password authentication uses tldv's /auth/login API endpoint, which has not been fully verified. If it doesn't work, use the token method above instead.

yt-dlp -u your@email.com -p yourpassword "https://tldv.io/app/meetings/MEETING_ID"

How it works

tldv.io serves meeting recordings as HLS streams with a custom obfuscation layer (Caesar cipher on the m3u8 playlist URLs). This plugin:

  1. Authenticates with the tldv API
  2. Downloads the obfuscated m3u8 playlist
  3. Decodes the Caesar cipher to recover the real segment URLs
  4. Hands the decoded playlist to yt-dlp's HLS downloader

License

MIT

Metadata

Release files for yt-dlp-tldv 0.1.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for yt-dlp-tldv 0.1.0
File Size Uploaded
yt_dlp_tldv-0.1.0.tar.gz 4.6 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for yt-dlp-tldv 0.1.0
File Interpreter ABI Platform
yt_dlp_tldv-0.1.0-py3-none-any.whl Python 3 none any Details

Total release size: 9.7 kB

Release files / yt_dlp_tldv-0.1.0.tar.gz

Download URL yt_dlp_tldv-0.1.0.tar.gz
Size 4.6 kB
Tags Source
SHA-256 checksum
How to use checksums
1a507d35c8e9fe3bd69e697fe7c52bef275a5c76017f70502723e7631c9f1a00
BLAKE2b-256 checksum
How to use checksums
2e15e854410569127eea6165f5f795dabb21818c247cb1a459e21e726a436bb2
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.13.11

Release files / yt_dlp_tldv-0.1.0-py3-none-any.whl

Download URL yt_dlp_tldv-0.1.0-py3-none-any.whl
Size 5.1 kB
Tags Python 3
SHA-256 checksum
How to use checksums
b1f4228cc191bd9751de088ee041504dcdf78edd020d7c9f5efc323eaabc1c74
BLAKE2b-256 checksum
How to use checksums
872b3de046ccd7783909c9dda13db1049ea5c93eb6cd93ec0f2040e38fcb08d6
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.13.11

Release history Release notifications | RSS feed

This release

0.1.0 This release

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page