Link: https://stream-video-downloader.streamlit.app/
StreamVideo Downloader is a web app built with Streamlit and yt-dlp, designed to let you download videos directly from the web (e.g., YouTube, Vimeo, etc.) with just a link — no command-line, no setup hassles.
It wraps the power of yt-dlp
in a clean, intuitive web interface, enabling users to paste any video URL and instantly start the download process right from their browser.
- Paste any video URL — works with major platforms like YouTube, Vimeo, and others supported by
yt-dlp
. - Smart format selection — automatically downloads the best available video and audio quality (merged as MP4).
- Fast and reliable — powered by
yt-dlp
, one of the most efficient open-source video downloaders. - Automatic file naming — organizes your downloads by playlist index and title.
- Works directly on the cloud — no need to install anything locally.
- Lightweight and portable — just a few lines of Python and Streamlit.
You can access the app right now:
👉 Stream Video Downloader - Live on Streamlit Cloud
Simply paste a video URL (like a YouTube link) and click Download.
Layer | Technology | Description |
---|---|---|
Backend | Python 3.10+ | Core language for logic and processing |
Web Framework | Streamlit | Fast, lightweight web UI for data and ML apps |
Video Engine | yt-dlp | Handles video extraction, merging, and conversion |
System Dependency | ffmpeg | Merges video/audio streams into MP4 format |
stream-video-downloader/
│
├── app.py # Streamlit frontend
├── downloader.py # Core download logic using yt-dlp
├── requirements.txt # Python dependencies
├── packages.txt # OS-level dependency (ffmpeg)
├── README.md # Project documentation
└── .streamlit/
└── config.toml # Optional Streamlit settings
- The user pastes a video URL into the Streamlit app.
- The backend calls a helper function (
download_video
) that:- Uses yt-dlp to fetch video metadata and formats.
- Downloads both the best video and best audio tracks.
- Merges them automatically into a single MP4 file using ffmpeg.
- The final file is saved and made available locally (on Streamlit Cloud, it’s stored temporarily).
- Add download progress tracking.
- Allow user to choose resolution or format (e.g., MP3, 720p, etc.).
- Store downloaded files temporarily and provide a direct download link.
- Add validation for unsupported links or restricted content.
Adan Siqueira
🔗 GitHub Profile
If you like this project, don’t forget to ⭐ star the repository to show your support!