633af43ec92836a0eb28556237e6af33df40441c
🎥 YTSage
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
✨ Features
| 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 |
🚀 Installation
Quick Install (Recommended)
pip install ytsage
# Run the application
ytsage
📦 Other Installation Methods
Pre-built Executables
- 🪟 Windows:
YTSage.exe - 🪟 Windows:
YTSage-ffmpeg.exe(Includes FFmpeg) - 🐧 Linux:
YTSage-x86_64.AppImage - 🍎 macOS:
YTSage-macOS-app.zip - 🍎 macOS:
YTSage.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
📸 Screenshots
📖 Usage
🎯 Basic Usage
- Launch YTSage
- Paste YouTube URL (or use "Paste URL" button)
- Click "Analyze"
- Select Format:
Videofor video downloadsAudio Onlyfor 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)
🛠️ Troubleshooting
- When the app doesn't display the format table: Update yt-dlp
🧩 Requirements
Python 3.7+
PySide6
yt-dlp
Pillow
requests
FFmpeg
packaging
markdown
👥 Contributing
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
📊 Star History
📜 License
This project is licensed under the MIT License - see the LICENSE file for details.
🙏 Acknowledgments
| Technology | Purpose |
|---|---|
| yt-dlp | Download Engine |
| PySide6 | GUI Framework |
| FFmpeg | Media Processing |
| Pillow | Image Processing |
| requests | HTTP Requests |
| packaging | Packaging |
| markdown | Markdown Processing |
⚠️ Disclaimer
This tool is for personal use only. Please respect YouTube's terms of service and content creators' rights.
Made with ❤️ by oop7