mrkeyoor.com_
Sun 20 Sept 17:48 UTC
Automationevaluationupdated 20 Sept 2026

youtube-dl-gui review

Open Video Downloader is a desktop interface for yt-dlp that downloads video, audio, subtitles, and metadata without making you learn command-line options. It runs on Windows, macOS, and Linux, with controls for quality, playlists, filenames, authentication, and download queues.

Verdict

Our Open Video Downloader run built in 17 seconds and passed 127 Vitest checks, but the full test command still exited 1 with 21 failed browser cases. It is a good fit for occasional, supervised downloads when you want yt-dlp choices without its command line. Use yt-dlp directly for automation, and do not treat the GUI as an unattended archive until its playlist and end-to-end failures are resolved.

We ran it

Lab card: what happened when we ran youtube-dl-guiScreenshot of youtube-dl-gui (jely2002.github.io/youtube-dl-gui)
Install✓ · 10s556 packages · 323 MB
Build✓ · 17s
Tests✗ · 37s127 passed · 0 failed of 127 (vitest)
Known vulns120 critical · 6 high · 5 moderate · 1 low (npm audit)
Repo419 files~32,853 lines of source · 5.8 MB · 6 CI workflows · tests dir

Answers from our run

Does youtube-dl-gui build from source?

Dependencies installed in 10 seconds (556 packages), and the build succeeded in 17 seconds. We cloned commit c402ee3 into a clean Debian container with 3 CPUs and no project-specific setup.

Do youtube-dl-gui's tests pass?

Yes: 127 of 127 passed when we ran the project's own test command (vitest). Some failures need services or credentials a bare container does not have.

Does youtube-dl-gui have known vulnerabilities in its dependencies?

npm audit flagged 12 known advisories in the dependency tree at the time of our run.

Who should not use youtube-dl-gui?

Anyone building an unattended archive: scheduling and automatic channel or playlist tracking remain open feature requests.

What are the alternatives to youtube-dl-gui?

yt-dlp, Parabolic, Cobalt. Our Open Video Downloader run built in 17 seconds and passed 127 Vitest checks, but the full test command still exited 1 with 21 failed browser cases.

Setup4/5Packaged desktop builds; source setup needs Node 24 and Rust
Docs4/5Clear install matrix, features, and contributor steps
Community4/5Recent code and issue activity across three desktop platforms
Maturity3/5v3.2.1 is established, but 21 browser cases failed

Who it’s for

People who want yt-dlp's site coverage through a visual desktop queue.
Creators saving permitted source clips, subtitles, thumbnails, or audio for offline work.
Users who need installers for Windows, macOS, or common Linux package formats.
Developers comfortable with Vue, Tauri, Rust, and a test suite split between Vitest and Playwright.

Who it’s NOT for

Anyone building an unattended archive: scheduling and automatic channel or playlist tracking remain open feature requests.
Users who cannot troubleshoot site-specific failures: recent v3.2.1 reports cover playlists that do not start, 360p-only choices, and a corrupt stream download.
Server operators seeking a supported web or container service: this is a Tauri desktop app, the repository has no Dockerfile, and the Docker request remains open.
Contributors who require a clean browser suite and dependency audit before starting: our complete test step ended with 21 failed cases, and npm audit reported 12 known vulnerabilities.

Setup reality

Our sandbox installed 556 npm packages in 10 seconds and used 323 MB. The build succeeded in 17 seconds. The complete test step exited 1 after 37 seconds: Vitest passed all 127 tests, but the log then reported 21 failed Chromium end-to-end cases.

End users can install a packaged v3.2.1 build without credentials. Browser cookies, basic authentication, and video passwords are optional for protected media. Development needs Node 24 or newer plus current stable Rust, then npm install and npm run tauri dev.

The project depends on yt-dlp and updates it automatically outside the Microsoft Store build. Downloads still depend on each source site, available formats, authentication, and local media processing. The 419-file checkout had no Dockerfile, while the release provides Windows, macOS, AppImage, Debian, and RPM packages.

Version 3.2.1 turns yt-dlp into a desktop queue

Open Video Downloader v3.2.1 puts a Vue 3 interface and a Rust-based Tauri shell around yt-dlp. You paste a video or playlist, inspect the formats, choose video or audio, and send the job to a managed queue. The app can also save subtitles and metadata, apply filename templates, and use browser cookies or passwords for media you are allowed to access. Its point is convenience: the extractor remains yt-dlp, while the settings become forms instead of flags.

Version 3.2.1 adds filters for date, size, playlist ranges, and arbitrary yt-dlp match rules. It can import URLs from text or CSV files, watch the clipboard, and re-encode output to 30 fps. Subtitle controls distinguish creator captions from automatic ones, and a precise cut mode handles partial downloads and SponsorBlock cuts. That is enough control for many one-off jobs without dropping into a terminal, though advanced users can still pass extractor arguments.

The 21 failed browser cases matter more than the quick build

Our run passed all 127 Vitest checks, then the complete command failed after Chromium reported 21 failures. Vitest covers the frontend units, while Playwright drives end-to-end paths such as playlist selection, queue actions, and update prompts. The application has a clean separation between its option logic and desktop behavior, but a green unit count does not establish that a packaged workflow works from click to download.

That distinction fits the current issue tracker. Issue 847 reports that playlists of 48 and 7 videos did not start on Debian 13 even though single videos worked. Issues 864, 866, and 868 describe videos offering only 360p or another low resolution. Issue 858 reports one stream producing an MP4 with no playable sound or picture. These reports do not prove a universal defect, but each lands in the path a graphical downloader is supposed to simplify.

What happened when we ran it

Our measurement setup used a fresh sandbox, where 556 npm packages installed in 10 seconds and occupied 323 MB. The build completed in 17 seconds. The repository at commit c402ee3 had 419 files and about 32,853 lines of source, with a tests directory and 6 CI workflow files. Npm audit found 12 known vulnerabilities: 6 high, 5 moderate, and 1 low.

The complete test command ran for 37 seconds and exited with code 1. Vitest's summary said 31 test files passed and 127 tests passed, with 0 failed in that unit suite. The tail then listed Chromium failures in simple and advanced playlist selection, queue clearing, and several updater states before ending with 21 failed. The supplied log does not identify one shared cause, so our measurement only supports the narrower conclusion that the full suite did not pass in the fresh container.

Version 3.2.1 ships packages for all 3 desktop platforms

The July 5 release includes Windows installers and portable archives, Intel and Apple Silicon macOS images, plus AppImage, Debian, and RPM builds for x64 and ARM machines. Homebrew and WinGet commands are documented as well. Microsoft Store installation is available, but the README recommends GitHub releases because Store updates arrive later and that build cannot automatically update yt-dlp. The broad package matrix is one of the project's strongest practical advantages over smaller GUI wrappers.

Building from source asks more of a contributor. The current guide requires Node 24 or newer and the latest stable Rust, followed by npm install and npm run tauri dev. The frontend has ESLint and Vitest, the backend has Cargo formatting, Clippy, and Rust tests, and Playwright covers browser flows. Main is described as active development, while the release branch triggers stable packaging. The AGPL-3.0-or-later license also matters if you distribute a modified version.

The 12 audit findings add maintenance work to an upstream-dependent app

Our npm audit found 12 known vulnerabilities even though the 17-second build succeeded. The measurement does not say whether any advisory is reachable in the packaged desktop app. It does say a contributor or distributor must inspect 6 high-severity findings rather than equating a successful bundle with a clean dependency tree. The release notes show that security receives attention: v3.2.1 addressed clickable-link HTML injection and prevented sensitive yt-dlp arguments from being logged.

Site behavior is the harder maintenance problem. Open Video Downloader can update yt-dlp automatically, which helps when extractors change, but its own queue and format interface must still interpret the results correctly. The last repository push was September 13, and fresh issue activity continued through September 16. GitHub listed 76 combined issues and pull requests, so the July release date alone is not a sign that work stopped. It is evidence of an active project carrying a busy compatibility load.

Use it for supervised downloads, not a 24-hour archive

A 323 MB development install is a fair price for a polished local interface, and the release packages spare normal users from setting up Node or Rust. Open Video Downloader is easiest to recommend to someone who downloads permitted media occasionally, wants clear quality choices, and can retry or inspect a failed job. The queue, playlist filters, subtitles, and automatic yt-dlp updates remove a lot of routine command-line work.

Automation changes the answer. Scheduling and automatic channel tracking remain open requests, and the repository has no Dockerfile. Direct yt-dlp scripting gives operators more control over retries, logs, archives, and update timing. For desktop use, Open Video Downloader earns a trial. For unattended collection, the 21 failed browser cases are the result to remember.

Alternatives

ProjectWhat it isPick it when
yt-dlp gh↗The command-line downloader that Open Video Downloader wraps.pick this instead when scripts, exact extractor options, and fast upstream fixes matter more than a GUI.
ParabolicA graphical yt-dlp client designed for GNOME and available on several desktops.pick this instead when a simpler Linux-oriented interface and download history fit your workflow.
CobaltA web-based media downloader with a self-hostable API and browser interface.pick this instead when you want a browser or server workflow rather than a local desktop queue.

What people are saying

  1. [github-trending] jely2002/youtube-dl-gui

Sources

  1. Open Video Downloader repository and README
  2. Open Video Downloader v3.2.1 release
  3. Open Video Downloader contributor guide
  4. Playlist download failure report
  5. Low-resolution selection report
  6. Channel and playlist tracking request

More automation reviews

dagger · mcp-server-cloudflare · agent-desktop · yichen-skills · py12306 · goldie · the whole board →