Metadata-Version: 2.2
Name: YTSage
Version: 3.0.0
Summary: Modern YouTube downloader with a clean PySide6 interface. Download videos in any quality, extract audio, fetch subtitles (including auto-generated), and view video metadata. Built with yt-dlp for reliable performance.
Home-page: https://github.com/oop7/YTSage
Author: oop7
Author-email: oop7 <oop7_support@proton.me>
License: MIT License
Project-URL: Homepage, https://github.com/oop7/YTSage
Classifier: Programming Language :: Python :: 3
Classifier: License :: OSI Approved :: MIT License
Classifier: Operating System :: OS Independent
Requires-Python: >=3.7
Description-Content-Type: text/markdown
License-File: LICENSE
Requires-Dist: yt-dlp
Requires-Dist: PySide6
Requires-Dist: requests
Requires-Dist: Pillow
Requires-Dist: packaging
Dynamic: author
Dynamic: home-page
Dynamic: requires-python

# YTSage

A modern YouTube downloader with a clean PySide6 interface. Download videos in any quality, extract audio, fetch subtitles (including auto-generated), and view video metadata. Built with yt-dlp for reliable performance.

## Features

- 🎥 Smart video quality selection with automatic audio merging
- 🎵 Audio-only extraction
- 📝 Manual and auto-generated subtitle support with language filtering
- ℹ️ Video metadata display (views, upload date, duration)
- 🖼️ Thumbnail preview
- 🎨 Clean, modern PySide6 interface
- 🚀 Built on yt-dlp for robust downloading
- ⏯️ Download control (pause, resume, and cancel)
- 📊 Real-time progress tracking (speed, ETA, percentage)
- 📝 Built-in yt-dlp log viewer
- ⚙️ Custom yt-dlp command support with real-time output
- 📋 Playlist download support with auto-detection
- 💾 Save download path memory
- 🔄 One-click yt-dlp updater
- ⚠️ User-friendly error messages
- 🛠️ FFmpeg installation checker and guide
- 📎 Quick URL paste button
- 🎯 Smart format filtering (Video/Audio)

## Installation

### Prerequisites
* FFmpeg is required to be installed separately. You can find instructions on how to install FFmpeg [here](https://github.com/oop7/ffmpeg-install-guide).

### From PyPI
YTSage can be installed via pip:
```bash
pip install YTSage
```

- This will also install the required dependencies (yt-dlp, PyQt6, requests, Pillow, packaging)

## Usage

After installation, you can run YTSage from your terminal:

```bash
YTSage
```

1. **Run the application**  
2. **Paste a YouTube URL** into the input field  
3. **Click "Analyze"** to load video information  
4. **Select your desired format**:  
   - Choose **"Video"** for video downloads (will automatically merge with best audio)  
   - Choose **"Audio Only"** for audio extraction  
5. **Enable subtitle download** if needed  
6. **Select the output directory**  
7. **Click "Download"** to start  

## Requirements

- Python 3.7+
- PySide6
- yt-dlp
- Pillow
- requests
- ffmpeg
- packaging


## Contributing

Contributions are welcome! If you find a bug or want to suggest a new feature, please open an issue or submit a pull request on the [GitHub repository](https://github.com/oop7/YTSage).

## License

This project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.

## Acknowledgments

- [yt-dlp](https://github.com/yt-dlp/yt-dlp) for the powerful downloading engine
- [PySide6](../3.0.0/[text](https:/en.wikipedia.org/wiki/PySide)) for the GUI framework
- [FFmpeg](https://ffmpeg.org/) for the audio and video processing
- [Pillow](https://pypi.org/project/Pillow/) for the image processing
- [requests](https://pypi.org/project/requests/) for the HTTP requests
- [packaging](https://pypi.org/project/packaging/) for the package management
- [PyInstaller](https://pypi.org/project/PyInstaller/) for the executable creation

## Disclaimer

This tool is for personal use only. Please respect YouTube's terms of service and content creators' rights.
