A modern YouTube downloader with a clean PySide6 interface.
Download videos in any quality, extract audio, fetch subtitles, and more.
Installation β’ Features β’ Usage β’ Screenshots β’ Contributing
Core Features | Advanced Features | Extra Features |
---|---|---|
π₯ Format Table | π« SponsorBlock Integration | πΎ Save Download Path |
π΅ Audio Extraction | π Multi-Subtitle Select & Merge | π Auto-Updates |
β¨ Simple UI | πΎ Save Description | π οΈ FFmpeg/yt-dlp Detection |
π Playlist Support | πΌοΈ Save thumbnail | βοΈ Custom Commands |
πΌοΈ Playlist Selector | π Speed Limiter | πͺ Login with Cookies |
βοΈ Trim Video Sections |
pip install ytsage
# Run the application
ytsage
π¦ Other Installation Methods
- πͺ Windows:
YTSage.exe
- πͺ Windows:
YTSage-ffmpeg.exe
(Includes FFmpeg) - π§ Linux:
YTSage-x86_64.AppImage
- π macOS:
YTSage-macOS-app.zip
- π macOS:
YTSage.dmg
# Clone repository
git clone https://github.com/oop7/YTSage.git
# Navigate to directory
cd YTSage
# Install dependencies
pip install -r requirements.txt
# Run application
python main.py
π― Basic Usage
- Launch YTSage
- Paste YouTube URL (or use "Paste URL" button)
- Click "Analyze"
- Select Format:
Video
for video downloadsAudio Only
for audio extraction
- Choose Options:
- Enable subtitles & select language
- Enable subtitle merge
- Save thumbnail
- Remove sponsor segments
- Save description
- Select Output Directory
- Click "Download"
π Playlist Download
- Paste Playlist URL
- Click "Analyze"
- Select videos from the playlist selector (optional, defaults to all)
- Choose desired format/quality
- Click "Download"
π‘ The application automatically handles the download queue
βοΈ Advanced Options
- Quality Selection: Choose the highest resolution for best quality
- Subtitle Options: Filter languages and embed into video
- Custom Commands: Access advanced yt-dlp features
- Save Description: Save the description of the video
- Save Thumbnail: Save the thumbnail of the video
- Remove Sponsor Segments: Remove sponsor segments from the video
- Speed Limiter: Limit the download speed
- Login with Cookies: Login with cookies
- Save Download Path: Save the download path
- Update yt-dlp: Updates yt-dlp (works if installed via PyPI or when running from source using
main.py
) - FFmpeg/yt-dlp Detection: Automatically detect FFmpeg/yt-dlp
- Custom Commands: Access advanced yt-dlp features
- Trim Video: Download only specific parts of a video by specifying time ranges (HH:MM:SS format)
- When the app doesn't display the format table, update yt-dlp
Python 3.7+
PySide6
yt-dlp
Pillow
requests
FFmpeg
packaging
markdown
We welcome contributions! Here's how you can help:
- π΄ Fork the repository
- πΏ Create your feature branch:
git checkout -b feature/AmazingFeature
- πΎ Commit your changes:
git commit -m 'Add some AmazingFeature'
- π€ Push to the branch:
git push origin feature/AmazingFeature
- π Open a Pull Request
This project is licensed under the MIT License - see the LICENSE file for details.
Technology | Purpose |
---|---|
yt-dlp | Download Engine |
PySide6 | GUI Framework |
FFmpeg | Media Processing |
Pillow | Image Processing |
requests | HTTP Requests |
packaging | Packaging |
markdown | Markdown Processing |
This tool is for personal use only. Please respect YouTube's terms of service and content creators' rights.
Made with β€οΈ by oop7