ytdl-sub logo

ytdl-sub

Website

Declarative yt-dlp wrapper to download and prepare media libraries

2.9k stars 104 forks last commit first released GPL-3.0

Actively maintained

Last commit 26 Aug 2026.

ytdl-sub screenshot

ytdl-sub is a command-line tool that orchestrates yt-dlp to download media and prepare it for media servers and players. It uses a declarative YAML configuration and preset system to control what to download and how files and metadata are produced.

Key Features

  • Declarative subscriptions and presets written in YAML to describe channels, playlists, formats, and destination library layouts.
  • Wraps and runs yt-dlp for downloads and can remux/transcode using FFmpeg/ffprobe when needed.
  • Rich plugin system (audio_extract, chapters, subtitles, file_convert, embed_thumbnail, music_tags, nfo_tags, video_tags, etc.) to control metadata, tagging, thumbnails, and post-processing.
  • Presets for media server targets and media types (Plex, Jellyfin, Emby, Kodi, music players) to produce naming, NFO files, and metadata formats those servers expect.
  • Scripting and template functions for conditional filtering, custom variables, and fine-grained automation of downloads.
  • Docker images provided (headless and GUI/code-server variant) plus a standalone executable and PyPI package; recommended deployment via Docker Compose or cron for automation.

Use Cases

  • Archive YouTube channels or playlists as TV shows or seasons for Plex/Jellyfin/Emby with server-compatible metadata.
  • Build and tag local music/video libraries (music videos, concerts, SoundCloud/Bandcamp imports) with embedded tags and external NFOs.
  • Automate periodic downloads via scheduled runs (cron/container) to keep a local media library in sync.

Limitations and Considerations

  • Requires external dependencies: Python 3.10+ and FFmpeg/ffprobe; these are mandatory for post-processing and packaging tasks.
  • CLI-first tool aimed at power users; configuration is flexible but has a steeper learning curve than polished web-UIs.
  • Relies on yt-dlp for site extractor correctness; changes to source sites may require updating yt-dlp and the tool's dependencies.

ytdl-sub is focused on providing flexible, reproducible control over media download and metadata generation rather than a one-click consumer UI. It is well-suited for users who need precise filename/metadata control and integration with media servers.

Categories:

Tags:

Tech Stack:

Share:

Similar to ytdl-sub

TubeSync logo

TubeSync

PVR for syncing YouTube channels to your media server

2.8k
170
Last commit

TubeSync is a YouTube PVR that automatically indexes channels or playlists, downloads new videos, and updates Plex or Jellyfin with organized local media.

AGPL-3.0Actively maintained
Alternative to:
iTubeGo logo
iTubeGo
+2

Mydia

Self-hosted media management for movies and TV shows

783
21
Last commit

Mydia is a Phoenix LiveView-based media manager for tracking, organizing, and automating downloads of movies and TV shows with TMDB/TVDB metadata.

AGPL-3.0Actively maintained
Alternative to:
Simkl logo
Simkl
+2
BookBounty logo

BookBounty

Finds missing Readarr books by searching Library Genesis

292
14
Last commit

Automates retrieval of missing books tracked by Readarr by searching Library Genesis and downloading matched files into a configured downloads path.

MPL-2.0Actively maintained
Alternative to:
Scribd logo
Scribd
MeTube logo

MeTube

Web GUI for yt-dlp to download videos from YouTube and other sites

14.5k
1.1k
Last commit

A lightweight web interface for yt-dlp (youtube-dl fork) that manages queued downloads, playlists, and filename templates via Docker or local Python/Angular setup.

AGPL-3.0Actively maintained
Alternative to:
4K Video Downloader logo
4K Video Downloader
+10
SoulSync logo

SoulSync

Automated music discovery and collection manager for self-hosted libraries

2.2k
108
Last commit

SoulSync automates music discovery, playlist curation, downloads, and library organization, syncing results to media servers like Plex, Jellyfin, and Navidrome.

MITActively maintained
Alternative to:
Spotify logo
Spotify
+8
Tdarr logo

Tdarr

Distributed media transcoding automation and library analytics

4.3k
120
Last commit

Self-hosted distributed transcoding and remux automation for media libraries using FFmpeg or HandBrake, with health checks, scheduling, and plugin-based processing rules.

Actively maintained
Alternative to:
Encoding.com logo
Encoding.com
+2