Latest version: v1.0.11 (x64 & ARM64) |
Other versions |
Changelog
β οΈ Warning: This project is created for educational purposes only. Use of this software for downloading videos is at your own risk and responsibility. Please respect copyright laws and terms of service of the platforms you download from.
β οΈ Technical Note: Muxed streams are deprecated by YouTube and are not guaranteed to be available for every video. If possible, avoid relying on them too much and instead perform muxing manually using the provided audio-only and video-only streams.
Note: Subtitle and metadata features are disabled by default for speed. Use the "Download Video with Subtitles" option when subtitles are needed.
- π Overview
- π Features
- β‘ Quick Start
- π¬ Demo
- π Usage
- βοΈ Configuration
- π οΈ Building from Source
- π€ Contributing
- β FAQ
- π License
- π Acknowledgements
- π οΈ Troubleshooting
VideoDownloader is a PowerToys Run plugin that lets you download videos from the internet instantly from your keyboard. Just type dl [URL]
in PowerToys Run (replace [URL]
with the video URL) and start the download, no browser required!
- Plugin ID:
B8F9B9F5C3E44A8B9F1F2E3D4C5B6A7B
- Action Keyword:
dl
- Platform: Windows 10/11 (x64, ARM64)
- Tech: C#/.NET, WPF, PowerToys Run API
- π One-Click Downloads - Download videos with a single command
- π₯ Multiple Formats - Supports both video (MP4) and audio-only (MP3) downloads
- π Smart URL Detection - Automatically recognizes video URLs from various platforms
- β‘ Lightning Fast - Built with performance in mind
- π¨ Dark/Light Theme - Seamlessly integrates with your system theme
- π Custom Download Folder - Choose where to save your downloads
- π οΈ No Dependencies - Auto-downloads required components
- π 1000+ Sites - Works with YouTube, Vimeo, and many more via yt-dlp
- Download the latest release from the Releases page
- Extract the ZIP file
- Copy the extracted folder to
%LOCALAPPDATA%\Microsoft\PowerToys\PowerToys Run\Plugins\
- Restart PowerToys
- Press
Alt+Space
to open PowerToys Run - Type
dl [URL]
to download a video URL, and hit Enter!
dl https://www.youtube.com/watch?v=dQw4w9WgXcQ
Access settings through PowerToys Settings β PowerToys Run β Plugin Manager β Video Downloader
- Action Keyword: Change from default
dl
if desired - Default Download Location: Set your preferred download folder
- Audio Format: Choose between MP3, M4A, etc.
- Video Format: Choose between MP4, MKV, etc.
- Auto-Open Folder: Open download folder after completion
git clone https://github.com/ruslanlap/PowerToysRun-VideoDownloader.git
cd PowerToysRun-VideoDownloader
dotnet restore
dotnet build -c Release
The built plugin will be in bin\Release\net9.0-windows10.0.22621.0
Contributions are welcome! Please submit a pull request to suggest changes.
This project is licensed under the MIT License - see the LICENSE file for details.
- Microsoft PowerToys team
- yt-dlp for the amazing video downloader
- YoutubeExplode for YouTube support
- Plugin not showing up: Ensure you've extracted to the correct folder and restarted PowerToys
- Download fails: Check your internet connection and try again
- Video not supported: Some sites may have restrictions
- yt-dlp not found: The plugin will automatically download yt-dlp on first use. Make sure you have internet access
- Slow downloads: Try a lower quality setting or check your internet connection
If you encounter any issues, please open an issue with the following information:
- Video URL you're trying to download
- Command you used (if any)
- Any error messages received
- Screenshots if applicable
All assets are available in the assets/
directory of this repository.
VideoDownloader is a PowerToys Run plugin that lets you download videos from YouTube and 1000+ other sites instantly from your keyboard. Just type dl
followed by a video URL in PowerToys Run to start downloadingβno browser required!
- Plugin ID:
9B6621426ABD46EC9C8B30F165866711
- Action Keyword:
dl
- Platform: Windows 10/11 (x64, ARM64)
- Tech: C#/.NET, WPF, PowerToys Run API
- β‘ One-command video downloads from PowerToys Run
- π Supports YouTube and 1000+ other video sites
- πΌοΈ Modern WPF UI with real-time progress and results
- π¨ Theme-aware (dark/light icons, adapts to system theme)
- π Copy/share results instantly
- π οΈ Robust error handling and informative messages
- π§ͺ Automated tests and CI/CD (GitHub Actions)
- Download the release (x64)
- Download the release (ARM64)
- Extract to
%LOCALAPPDATA%\Microsoft\PowerToys\PowerToys Run\Plugins\
- Restart PowerToys
- Open PowerToys Run (
Alt+Space
) - Type
dl
followed by a video URL and select the download option - View real-time progress and detailed results
- Click the result URL to view/share your result online
- Requires .NET 9.0 SDK and Windows 10/11
- Clone the repo and open
VideoDownloader.sln
in Visual Studio - Build the
Community.PowerToys.Run.Plugin.VideoDownloader
project (x64 or ARM64) - Output:
VideoDownloader-x64.zip
orVideoDownloader-arm64.zip
in thepublish
directory
VideoDownloader/
βββ Community.PowerToys.Run.Plugin.VideoDownloader/ # Plugin source code
βββ tests/ # Unit & integration tests
βββ publish/ # Build output
βββ screenshots/ # Demo and documentation assets
βββ .github/workflows/ # CI/CD workflows
Thank you to all the amazing people who have contributed to this project and create issues for bug reports and feature requests!
How do I change the download location?
You can set a custom download folder in the plugin settings. Access it through PowerToys Settings β PowerToys Run β Plugin Manager β Video Downloader.
Which video platforms are supported?
The plugin supports YouTube, Vimeo, and 1000+ other sites through yt-dlp. See the full list of supported sites.
Does it work offline?
No, an internet connection is required to download videos.
Can I download videos in 4K quality?
Yes, if the source video is available in 4K and the platform allows it. Use the --quality 2160p
parameter.
What are the advantages of using yt-dlp over youtube-dl?
yt-dlp offers additional features and options not available in youtube-dl. It also has an active development community that ensures that bugs are quickly fixed and new features are added.
How do I install yt-dlp?
The plugin includes yt-dlp and will automatically download it on first use. For manual installation, you can download the binary from the official releases page.
Can I download videos in different formats?
Yes, you can download videos in different formats using yt-dlp. You can specify the format using command-line options or by editing the configuration file.
Is it legal to use yt-dlp to download YouTube videos?
Some content on YouTube may be copyrighted, and downloading it without permission may be illegal. Downloading videos from YouTube is against YouTube's Terms of Service. Users are responsible for ensuring they have the right to download and use the content.
Can I download entire playlists with yt-dlp?
Yes, yt-dlp lets you download entire playlists by simply pasting the playlist URL. The plugin supports this functionality automatically.
Can I download audio-only files?
Yes, use the --audio
flag to download audio-only files in MP3 format.]
Is yt-dlp actively maintained?
Yes, yt-dlp is actively maintained by a team of developers who regularly release updates and bug fixes. The plugin automatically checks for yt-dlp updates.
Is there a GUI for yt-dlp?
This plugin serves as a GUI for yt-dlp, integrated directly into PowerToys Run. For standalone GUI options, consider: - yt-dlp-gui - youtube-dl-gui - yt-dlp Web UI
Can I use yt-dlp on mobile?
This plugin is designed for Windows via PowerToys Run. For mobile use, you'll need to use the command-line version of yt-dlp with a terminal emulator like Termux on Android or a-Shell on iOS.
Enjoying Video Downloader? β Buy me a coffee to support development:
MIT License. See LICENSE.
- Microsoft PowerToys team
- yt-dlp - The best YouTube/Video downloader
- YoutubeExplode - YouTube video/playlist parsing
- All contributors and users!
- Plugin not showing up
Make sure you extracted the plugin to the correct folder and restarted PowerToys. - Download fails
Check your internet connection and try again. Some videos may have restrictions. - yt-dlp not found
The plugin will automatically download yt-dlp on first use. Make sure you have internet access. - Slow downloads
Try a lower quality setting or check your internet connection.
- The plugin does not store your download history.
- All downloads are performed directly by yt-dlp.
- No third-party APIs or data collection beyond what yt-dlp requires.
- C# / .NET 9.0
- WPF (UI)
- PowerToys Run API
- yt-dlp (video downloading)
- YoutubeExplode
- GitHub Actions (CI/CD)
- Added option to download videos with subtitles on demand
- Metadata features remain disabled to improve speed and reliability
- π§ Fixed: All PowerToys Run linting issues (PTRUN1301, PTRUN1303, PTRUN1401, PTRUN1402)
- π¦ Improved: Package naming follows
<name>-<version>-<platform>.zip
convention (removed 'v' prefix) - π Added: SHA256 checksums for all release packages
- βοΈ Enhanced: Automatic version synchronization between plugin.json and releases
- ποΈ Removed: Unnecessary PowerToys dependencies from packages
- π― Optimized: Reduced package size and improved compatibility
- π Enhanced: CI/CD pipeline with proper artifact validation
- π Bug Fix: Resolved setup timeout issues
- β±οΈ Improved: Extended download timeout to 10 minutes
- π± Enhanced: Better user messaging during setup
- π§ Fixed: ARM64 build compatibility
- New Feature: Added support for viewing available video formats before downloading
- Click on "βΉοΈ Video Information" to see all available formats and qualities
- View detailed information about each available stream
- Choose the exact format/quality you want to download
- Added support for ARM64 architecture
- Improved plugin settings validation
- Fixed issues with special characters in download paths
- Added more detailed error messages for download failures
- Fixed build issues by replacing problematic
Community.PowerToys.Run.Plugin.Dependencies
package with standard PowerToys dependencies:- Added
Microsoft.PowerToys.Settings.UI.Library
(v0.75.0) - Added
Wox.Plugin
(v1.4.0)
- Added
- Updated GitHub Actions workflow for proper artifact naming and build process:
- Fixed all references from "SpeedTest" to "VideoDownloader"
- Corrected project paths and build directories
- Added explicit NuGet source configuration
- Added dedicated restore step before building
- Added proper support for both x64 and ARM64 builds
- Fixed NuGet package references for better compatibility with PowerToys v0.75+
- Enhanced README with additional badges, better documentation, and improved formatting
- Updated UnitTests project to target .NET 9.0 to match the main project
- Fixed all links and references to ensure consistency across the project
Currently, the plugin UI is in English. Localization support is planned for future releases.
Contributions for translations are welcome! If you'd like to help translate the plugin to your language, please check the Contributing Guidelines.