
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-Update yt-dlp |
✨ 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
- 🪟 Windows:
YTSage.exe
- 🪟 Windows:
YTSage-ffmpeg.exe
(Includes FFmpeg) - 🐧 Linux:
YTSage_{version}_amd64.deb
- 🐧 Linux:
YTSage-x86_64.AppImage
- 🍎 macOS:
YTSage-macOS-app.zip
- 🍎 macOS:
YTSage-{version}.dmg
🛠️ Manual Installation from Source
# 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 to YouTube using cookies to access private content
How to use it:- Extract cookies from your browser using an extension like cookie-editor
- Copy the cookies in Netscape format
- Create a file named
cookies.txt
and paste the cookies into it - Select the
cookies.txt
file in the app
- Save Download Path: Save the download path
- Update yt-dlp: Update yt-dlp
- 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)
🛠️ Troubleshooting
- Format table not displaying: Update yt-dlp to the latest version
- Download fails: Check your internet connection and ensure the video is available
- Audio extraction issues: Verify FFmpeg is properly installed
- Python: 3.7 or higher
- GUI Framework: PySide6
- Download Engine: yt-dlp
- Media Processing: FFmpeg
- Additional Libraries: Pillow, requests, packaging, markdown, pygame
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 |
pygame | Audio Playback |
New Notification 09 by Universfield | Notification Sound |
This tool is for personal use only. Please respect YouTube's terms of service and content creators' rights.
Made with ❤️ by oop7