A powerful and user-friendly desktop application for downloading media from various online platforms.
- Features
- Supported Platforms
- Installation
- Usage
- Configuration
- Batch Downloading
- Playlist Support
- Update Management
- Notification System
- Download History
- Troubleshooting
- Building from Source
- Android Version
- License
- Multi-format Downloads: Download videos and audio in various quality options
- Batch Processing: Download multiple URLs simultaneously
- Playlist Support: Select specific videos from playlists for download
- User-Friendly Interface: Intuitive GUI built with PyQt6
- Progress Tracking: Real-time download progress with speed and ETA
- Pause/Resume: Control downloads with pause and resume functionality
- Error Handling: Intelligent error classification and user-friendly messages
- Update Management: Automatic checking and updating of media engine
- Notification System: Desktop notifications for download events
- Download History: Track and manage your download history
- Cross-Platform: Works on Windows (with potential for macOS/Linux)
Media Downloader supports downloading from a wide range of platforms including:
- YouTube
- TikTok
- Vimeo
- And hundreds more supported by yt-dlp
- Download the latest installer from the releases page
- Run the installer and follow the setup wizard
- Launch Media Downloader from your desktop or start menu
- Windows 7 or later
- At least 100MB of free disk space
- Internet connection for downloading media
- Launch Media Downloader
- Paste the URL of the media you want to download
- Select the download type:
- Download Video: Downloads video with both audio
- Download Audio: Extracts and downloads audio only
- Download Playlist: Downloads an entire playlist or selected videos
- Click the appropriate download button
- Monitor progress in the progress bar
- Find your downloaded files in the specified output directory
- URL Input: Paste one or multiple URLs (one per line for batch downloads)
- Download Buttons: Choose video, audio, or playlist download
- Output Directory: Shows where files will be saved (click "Change Folder" to modify)
- Progress Bar: Visual indicator of download progress
- Controls: Pause, Resume, and Cancel buttons for active downloads
- Settings: Access configuration options
- History: View download history
- Check Updates: Manually check for media engine updates
Access settings through the "Settings" button in the top-right corner:
- Video Quality: Choose from Best, 1080p, 720p, 480p, or 360p
- Audio Format: Select output format (m4a, mp3, wav)
- Max Retries: Set number of retry attempts for failed downloads
- Proxy Support: Configure proxy settings if needed
Settings are automatically saved and persist between sessions.
To download multiple files at once:
- Paste multiple URLs in the text area (one per line)
- Select either "Download Video" or "Download Audio"
- The application will download all URLs concurrently (up to 3 simultaneous downloads)
When downloading playlists:
- Paste the playlist URL and click "Download Playlist"
- A dialog will appear showing all videos in the playlist
- Select which videos you want to download
- Click "Download Selected" to begin downloading
For automatic playlist detection, if you paste a playlist URL and select "Download Video" or "Download Audio", the application will detect it's a playlist and ask if you want to select specific videos or download the entire playlist.
Media Downloader uses yt-dlp as its media engine and automatically checks for updates:
- Automatic Checks: Updates are checked on application startup
- Manual Checks: Use the "Check Updates" button to manually check
- One-Click Updates: Update the media engine with a single click
The application provides desktop notifications for:
- Download completion
- Download errors
- Update availability
- Application events
Notifications can be viewed in the Notification Center accessible through the system tray.
Track your downloads through the History feature:
- View all past downloads with status information
- Filter by successful downloads or errors
- Clear history when needed
- Double-click entries to open the download location
Common issues and solutions:
- Check your internet connection
- Verify the URL is correct and accessible
- Try a different quality setting
- Update the media engine through the update feature
- This should not occur with the installed version as ffmpeg is bundled
- If encountered, please report as a bug
- Try a lower quality setting
- Check your internet connection speed
- Ensure no other bandwidth-intensive applications are running
- Configure proxy settings in the Settings dialog
- Ensure proxy credentials are correct if required
- Python 3.8 or later
- Required Python packages (see requirements.txt)
-
Clone the repository:
git clone https://github.com/wish628/MediaDownloader.git cd MediaDownloader -
Install dependencies:
pip install -r requirements.txt -
Run the application:
python app.py
- Install Inno Setup 6
- Run create_installer.bat to create the Windows installer
Media Downloader is also available for Android devices. You can build the Android APK using GitHub Actions without needing Linux locally.
- Fork this repository or push it to your own GitHub account
- GitHub Actions will automatically build the APK
- Download the APK from the Actions tab
For detailed instructions, see ANDROID_BUILD_INSTRUCTIONS.md.
- Download videos and audio from supported platforms
- Simple and intuitive touch interface
- Download history tracking
- Settings customization
- Progress tracking with pause/resume support
- Android 5.0 (Lollipop) or higher
- At least 100MB of free storage space
- Internet connection for downloading media
This project is licensed under the MIT License - see the LICENSE file for details.
- yt-dlp - Media engine for downloading
- PyQt6 - GUI framework (Desktop)
- Kivy - GUI framework (Android)
- PyInstaller - Application bundling (Desktop)
- Buildozer - APK building tool (Android)
- FFmpeg - Media processing (bundled)
Note: This application is for personal use only. Please respect the terms of service of the platforms you download from and only download content you have the right to access.