Features • Installation • Usage • Configuration • FAQ
- Multi-platform support (Windows, Linux, macOS, Android)
- Concurrent downloads with queue management
- Multiple quality presets (480p, 720p, 1080p)
- Progress tracking with detailed statistics
- Download resume capability
- Playlist support
- Video processing (compression, watermark, trim)
- Audio extraction
- Subtitle download
- Thumbnail download
- Format conversion
- Archive management
- Favorites system
- Rich terminal interface
- Real-time progress tracking
- Download statistics
- Custom themes
- Notifications
- Python 3.8 or higher
- FFmpeg
- Internet connection
- Clone Repository
git clone https://github.com/DV64/CatchStream.git
cd CatchStream- Install Dependencies
pip install -r requirements.txt- Run Application
python CatchStream.py# Install FFmpeg using winget or chocolatey
winget install FFmpeg
# OR
choco install ffmpegsudo apt update
sudo apt install python3 python3-pip ffmpeg# Using Homebrew
brew install python ffmpegpkg update
pkg install python ffmpeg- Launch CatchStream
- Select option 1 (Single Video)
- Enter video URL
- Choose quality preset
- Wait for download to complete
- Select option 2 (Playlist)
- Enter playlist URL
- Choose videos to download
- Select quality preset
- Select option 3 (Batch)
- Enter multiple URLs
- Set quality preferences
Edit config.json to customize:
{
"theme": "cyan",
"auto_cleanup": true,
"log_retention_days": 30,
"audio_bitrate": "192k",
"compression_preset": "medium",
"download_path": "~/Downloads",
"default_quality": "high",
"max_concurrent_downloads": 3,
"auto_archive": false,
"notifications": true,
"thumbnail_quality": "high",
"interface": {
"show_file_size": true,
"show_eta": true,
"progress_bar_style": "detailed",
"auto_clear_completed": true
},
"performance": {
"cache_size": 100,
"chunk_size": 1024,
"buffer_size": 8192,
"max_retries": 5
},
"downloads": {
"auto_resume": true,
"verify_ssl": true,
"timeout": 30,
"rate_limit": 0
}
}-
Basic Settings
theme: UI color theme (default: "cyan")auto_cleanup: Automatically clean temporary files (default: true)log_retention_days: Days to keep log files (default: 30)download_path: Default download locationdefault_quality: Default video quality (low/medium/high)max_concurrent_downloads: Maximum parallel downloads
-
Media Settings
audio_bitrate: Audio quality for extractionscompression_preset: Video compression levelthumbnail_quality: Quality of downloaded thumbnails
-
Interface Options
show_file_size: Display file sizesshow_eta: Show estimated time remainingprogress_bar_style: Progress bar appearanceauto_clear_completed: Remove completed downloads from view
-
Performance Tuning
cache_size: Size of video info cachechunk_size: Download chunk sizebuffer_size: Buffer size for processingmax_retries: Maximum retry attempts
-
Download Settings
auto_resume: Resume interrupted downloadsverify_ssl: Verify SSL certificatestimeout: Connection timeout in secondsrate_limit: Download speed limit (0 for unlimited)
CatchStream/
├── CatchStream.py # Main application file
├── config.json # Application configuration
├── requirements.txt # Python dependencies
├── VERSION # Version information
├── CHANGELOG.md # Version history and changes
├── LICENSE # MIT License
├── README.md # Documentation
├── downloads/ # Downloaded videos directory
├── temp/ # Temporary files
├── cache/ # Cache directory
├── archive/ # Archived downloads
└── logs/ # Application logs
└── catchstream_YYYYMMDD.log
downloads/: Storage for downloaded videostemp/: Temporary files during processingcache/: Cached video informationarchive/: Long-term storage for completed downloadslogs/: Application logs with daily rotation
CatchStream.py: Main application logic and UIconfig.json: User configuration and settingsVERSION: Current version numberCHANGELOG.md: Version history and feature updatesrequirements.txt: Required Python packages
- Fork repository
- Create feature branch
- Commit changes
- Push to branch
- Open Pull Request
This project is licensed under the MIT License - see the LICENSE file for details.
DV64 - @DV64
Project Link: https://github.com/DV64/CatchStream
Made by DV64
```