oop7

YTSage: Download YouTube Videos with a Desktop App

YTSage is a cross-platform Python desktop downloader built around yt-dlp. Its PySide6 interface helps users download video, audio, subtitles, and playlists, with options such as SponsorBlock and format selection.

Stars
4.7k
Forks
336
Stars, last 8 days
+15

Our take

Health score

51/100

How it is scored
Activity
84
Community
21
Issues
63
Pull requests
35

+15 stars in the last 8 days

  • Releases more often than 82% of the projects we track

Overview

YTSage provides a graphical way to use yt-dlp for downloading YouTube videos and playlists, extracting audio, and fetching subtitles. It is aimed at people who want configurable downloads without building commands by hand.

It also offers a Generic Mode for other sites supported by yt-dlp. Use it when you want a desktop workflow for selecting formats and download options, rather than a command-line-only tool.

Key Features

  • Analyze video and playlist URLs, then select available formats and quality.
  • Extract audio and convert it to supported audio formats.
  • Choose subtitles, merge them, and embed chapters and metadata in downloads.
  • Select playlist entries and export playlist data.
  • Remove sponsored segments with SponsorBlock and trim video to chosen time ranges.
  • Configure cookies, proxies, download speed, output naming, and other yt-dlp options.
  • Manage yt-dlp, FFmpeg, and Deno from the app, and view download history.

Use Cases

  • A YouTube viewer who wants to choose video quality or save audio without using terminal commands.
  • Someone archiving a playlist who needs to select particular entries or export its listing.
  • A language learner who wants subtitles or multiple audio tracks included with downloaded media.
  • A user working with a yt-dlp-supported site beyond YouTube who prefers a graphical interface.

Getting Started

Python 3.11 or newer is required for the Python installation. Install and launch with:

pip install ytsage
ytsage

Pre-built installers are also available from the GitHub releases page. See the README for platform-specific setup and usage details.

Considerations

YTSage depends on yt-dlp for site support, so supported URLs and download behavior depend on the installed yt-dlp version. FFmpeg is needed for merging separate audio and video streams and for some media processing; Deno may be required for yt-dlp plugins. Some sites or restricted content may require cookies, authentication, or a proxy. Respect applicable platform terms and creator rights when downloading media.

Found this useful?

Share it with someone who would like YTSage.