Skip to main content

⚡ ydlx (yt-dlp eXtended)

PyPI version Python License

A modern, fast, interactive CLI dashboard and downloader built on top of yt-dlp.

ydlx eliminates complex parameter strings and brings an intuitive interactive menu, universal codec compatibility presets, automated SponsorBlock skipping, browser cookie integration, and smart platform-agnostic output organization.


✨ Features

  • 🎮 Interactive Dashboard: Run ydlx without arguments to launch a guided terminal menu.
  • 📁 Smart Output Routing:
    • Audio files automatically save to ~/Downloads/audio
    • Videos automatically save to ~/Downloads/video
  • 🎬 Universal MP4 Mode: Automatically selects and muxes compatible H.264 + AAC streams that play everywhere.
  • 🎵 Dedicated Audio Extraction: One-command audio downloading with format conversion (M4A, MP3, WAV, FLAC).
  • 💬 Subtitles & Closed Captions: Download separate .srt files, embed subtitles into video files, or download subtitles only without fetching the video.
  • 🛡️ SponsorBlock Integration: Seamlessly skip sponsors and self-promotions with --sponsorblock / -s.
  • 🍪 Browser Cookie Extraction: Avoid 403 Forbidden / bot-detection errors by loading cookies directly from Chrome, Firefox, Edge, Brave, Safari, or Opera.
  • 🎨 Rich UI: Beautiful formatted metadata tables and download progress bars with native UTF-8 support.

📦 Installation

Prerequisites

Make sure FFmpeg is installed and accessible on your system PATH.

Deno is optional but recommended: it lets yt-dlp solve YouTube's JavaScript challenges, so downloads run at full speed and all formats stay available.

# with uv
uv tool install ydlx

# or with pip
pip install ydlx

# or with pipx
pipx install ydlx

Install from source (requires uv)

Clone this repository and install it as an isolated tool:

git clone git@github.com:yousefmrashad/ydlx.git
cd ydlx
uv tool install .

This installs the ydlx command globally while keeping dependencies isolated from your system Python.

To upgrade after pulling new changes:

git pull
uv tool install . --force

To uninstall:

uv tool uninstall ydlx

🚀 Usage

1. Interactive Wizard (Default)

Simply run:

ydlx

This opens the interactive dashboard where you can inspect metadata, choose resolutions, extract audio, download subtitles, and manage cookies.

2. Download Video / Playlist

# Download best quality to ~/Downloads/video
ydlx download "https://www.youtube.com/watch?v=..."

# Download and embed subtitles directly into the video
ydlx download "https://www.youtube.com/watch?v=..." --embed-subs --sub-langs en,ar

# Download subtitles as separate .srt file alongside the video
ydlx download "https://www.youtube.com/watch?v=..." --subs --auto-subs

# Force Universal MP4 (H.264 + AAC)
ydlx download "https://www.youtube.com/watch?v=..." --custom-selector

# Skip sponsor segments
ydlx download "https://www.youtube.com/watch?v=..." -s

# Custom output destination
ydlx download "https://www.youtube.com/watch?v=..." -o "./custom_folder"

3. Download Subtitles Only

# Download English subtitles (.srt) to ~/Downloads/video without downloading the video
ydlx subs "https://www.youtube.com/watch?v=..."

# Download specific languages with auto-caption fallback
ydlx subs "https://www.youtube.com/watch?v=..." --langs en,es,ar

4. Extract Audio

# Extract M4A audio to ~/Downloads/audio
ydlx audio "https://www.youtube.com/watch?v=..."

# Convert to MP3
ydlx audio "https://www.youtube.com/watch?v=..." --codec mp3

5. Inspect Metadata & Available Subtitles

# View metadata, formats, and available subtitle languages
ydlx info "https://www.youtube.com/watch?v=..."

# Save metadata to .info.json
ydlx info "https://www.youtube.com/watch?v=..." --save

📄 License

GPL-3.0 — see LICENSE

Metadata

Release files for ydlx 0.2.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 ydlx 0.2.0
File Size Uploaded
ydlx-0.2.0.tar.gz 28.8 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for ydlx 0.2.0
File Interpreter ABI Platform
ydlx-0.2.0-py3-none-any.whl Python 3 none any Details

Total release size: 58.0 kB

Release files / ydlx-0.2.0.tar.gz

Download URL ydlx-0.2.0.tar.gz
Size 28.8 kB
Tags Source
SHA-256 checksum
How to use checksums
ac0c8ec3eee774db69eefc7848e17d724c4a08d32d6ad39916f22a29458bd6be
BLAKE2b-256 checksum
How to use checksums
7d15ca9556fd191f3977f5d476a68f9f697d08d0026055878e430ac75ae16381
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 15, 2026.

Transparency log

Release files / ydlx-0.2.0-py3-none-any.whl

Download URL ydlx-0.2.0-py3-none-any.whl
Size 29.2 kB
Tags Python 3
SHA-256 checksum
How to use checksums
e503489e4d13966ca6b8ad6ab5f34d60107e1f379f9efc87951a60f4ac6f03a1
BLAKE2b-256 checksum
How to use checksums
ecc070778be016b67719e519bd35790076f1e03076061225d0f5b7720d4ec990
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 15, 2026.

Transparency log

Release history Release notifications | RSS feed

0.7.0

2 release files

0.6.0

2 release files

0.5.4

2 release files

0.5.3

2 release files

0.5.2

2 release files

0.5.1

2 release files

0.5.0

2 release files

0.4.0

2 release files

0.3.0

2 release files

This release

0.2.0 This release

2 release files

0.1.2

2 release files

0.1.1

2 release files

0.1.0

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