Put any video through NVIDIA's DLSS 5 neural renderer, and check every frame against the original.
Watch the 25-second video (1080p, no sound): 007 First Light and GTA VI Trailer 2 rendered at default settings on an RTX 4080 SUPER, then the Difference, Side by side and loupe views.
A free, open-source player for Windows and RTX cards. Open a video, photo or
GIF and press D: within seconds the render plays while the rest of the video
renders behind you, and the original is one key away on the same frame. Other
DLSS 5 tools convert files or filter the desktop live; this one renders the
whole video progressively, keeps every frame, and shows you what the model
changed, and where it didn't help.
How it compares.
Website · Download · First run · Usage guide · Troubleshooting
One source frame (left) and the same frame of the player's render (right), unscaled. Four more, including one where the model makes the picture worse.
Important
Community project, not an NVIDIA product. The neural runtime is a modified, unsigned community build. Neural rendering needs an NVIDIA RTX card and driver 610.47 or newer. Notices: THIRD_PARTY.md.
v0.30.0 (2026-11-01): release page
| Package | What is in it | Size |
|---|---|---|
dlss5-video-player-v0.30.0-win64.zip |
Player plus the neural runtime and RTX VSR. This is the one you want. | 588 MB |
DLSSVideoPlayer-v0.30.0-core-win64.zip |
Player only, no neural runtime or RTX VSR. | 36 MB |
Each zip has a .sha256 beside it. GitHub's "Source code" zip won't run: it
has no runtime.
The only official download location is https://github.com/2600th/dlss5-video-player/releases. Copies anywhere else, including other GitHub accounts, are not this project's.
The checksum shows the file arrived intact; the attestation shows this repository built it.
sha256sum -c DLSSVideoPlayer-v0.30.0-core-win64.zip.sha256
gh attestation verify DLSSVideoPlayer-v0.30.0-core-win64.zip --repo 2600th/dlss5-video-playerOnly the core zip has build provenance. CI can't fetch the neural runtime, so
the complete zip is assembled on the maintainer's machine. Once it is uploaded,
the attest-release-asset workflow signs its digest, and gh attestation verify on it shows that this repository vouches for those exact bytes, not
that CI built them. Either zip's PACKAGE_MANIFEST.txt names the commit it was
built from, and the packager refuses a tree with uncommitted changes or a
release that is not built from its tag. If you would rather not trust the
maintainer's machine, take the core zip and add the runtime yourself:
docs/BUILDING.md.
Before the first run, verify_package.ps1 (in the zip) checks every unpacked
file against the package manifest and shows which binaries are signed. From the
unpacked folder:
powershell -NoProfile -ExecutionPolicy Bypass -File .\verify_package.ps1- Unzip into a new, empty folder. Keep
neural-runtime/next to the exe. - Run
DLSSVideoPlayer.exe. The player is not code-signed, so Windows may say "Windows protected your PC": choose More info > Run anyway, after checking the download if you want to be sure it is this project's. - Open a file (
Ctrl+O), paste a public YouTube link (Ctrl+L), or pick something from File > Game trailers. - Press
D. It buffers for a few seconds, then plays the render. - The compare bar under the picture switches between DLSS 5, Original, Split, Wipe, Difference, Side by side and 2 × 2. It shows the chosen view's own controls, and ⋯ opens the rest of the Compare menu.
- File > Export (
Ctrl+S, or Export on the toolbar) saves it as a file.
File > Recent videos reopens a video with its render, if the render covers
the whole video. Press D at the start to get one.
- Renders while you watch. Playback moves onto rendered frames a few
seconds after you press
D, while the rest of the video fills in behind you, nearest first. - Seeks anywhere. Rendered frames play wherever they are; elsewhere the original plays while the render catches up.
- Shows you what the model did. Split, Wipe, Difference (the change, amplified), Side by side and 2 × 2 views, a Mix slider, zoom to 8x, a 4x loupe, a mask that limits DLSS 5 to part of the frame, and press-and-hold for the original. Switching views never moves the playhead.
- Compares against NVIDIA's own upscaler.
Rshows RTX Video Super Resolution of the original as a view of its own and in the 2 × 2;Shift+Rcompares the other views against it. In the complete download, or a build made with the RTX Video SDK. - Saves the evidence. File > Save comparison image writes exactly what the picture shows, with a footer recording the video, frame, view, neural settings and runtime.
- Subtitles and HDR. SRT, ASS, WebVTT, PGS and VobSub are drawn over the render, so the model never warps the text. HDR10 and HLG are tone mapped to SDR for the model; on an HDR display the original still shows in HDR.
- Keeps your renders. A whole-video render is reused while the source, runtime and settings still match, at Standard, High (10-bit) or Lossless quality. Tools > Render report shows the flicker, grain and colour shift a render added.
- Works on screenshots and GIFs. A photo renders once and stays on its frame; an animated GIF renders frame by frame, keeping its timing. See Screenshots and GIFs too.
- Saves the result as a file. MP4 or MKV for a video, GIF for an animation, PNG or JPEG for a photo, from the player or the command line. See Save the result.
- Tunes the model. Change a setting in the Picture panel (
Ctrl+N) while paused and that frame re-renders. Enhance > Processing scale runs the model at 75% or 50% of the source, for speed. Where the window shows a video larger than it is, NVIDIA's RTX Video Super Resolution upscales it, on by default: it measured well above a plain scaler and DLSS Super Resolution on video (measurement). DLSS Super Resolution can still upscale playback to 1080p, 1440p or 2160p; it is off by default (see Limits). - Plays like a player. AC-3, E-AC-3 and DTS passthrough to a receiver, and Windows media controls with taskbar thumbnail buttons.
- Comes with test material. Seven official game trailers, chosen for faces, skin and light, under File > Game trailers and on the start screen.
Open a PNG, JPEG, BMP, TIFF or static WebP and press D. It renders once, the
compare views work as they do on a video, and it saves back as a PNG or JPEG
at full size. Above, a frame of Grand Theft Auto VI: An Extended Look saved
as a 2560x1440 PNG, at default settings, the divider down the face. From the
command line it took 12 seconds on an RTX 5090, launch to exit. Animated GIFs
render frame by frame and keep their timing.
Everything you can watch rendered, you can keep as a file.
| Source | Saved as |
|---|---|
| Video, local or YouTube | MKV (default) or MP4. MKV keeps the source audio, subtitles and chapters without re-encoding them. |
| Animated GIF | GIF (default), MP4 or MKV |
| Photo: PNG, JPEG, BMP, TIFF or static WebP | PNG (default) or JPEG, at the source size |
Two ways under File, and one from the command line:
-
Save rendered video writes the render you already have, without rendering again. It needs a render of the whole video, or of the clip you marked and converted with
Ctrl+R. -
Export (
Ctrl+S) renders a new file with any of Super Resolution, neural rendering and frame generation (2x to 5x the frame rate), in NVIDIA's order. Super Resolution on its own runs on RTX VSR by default - the upscaler that measured best - or on DLSS Super Resolution if you choose it under Upscaler. It opens on what you are watching: DLSS 5 ticked if it is on, and the upscaler playing, at the size it plays at. -
From the command line,
dlss5-convertruns the same export without opening the player, waits for it and shows its progress. Give it files, folders or wildcards; this writesclip-dlss.mkvbeside the input:dlss5-convert clip.mp4
Every stage and Neural setting is an option. Three stacked neural passes of the strong look, frame generation at 3x, a folder upscaled to 4K with RTX VSR (the default upscaler;
--sr-engine dlsspicks DLSS), and a folder rendered and upscaled together:dlss5-convert clip.mp4 --preset strong --passes 3 dlss5-convert clip.mp4 --stages fg --multiplier 3 dlss5-convert clips -r --stages sr --height 2160 --out-dir clips-4k dlss5-convert clips -r --stages sr,nr --height 2160 --out-dir clips-nr-4k
dlss5-convert probe clip.mp4says what a file is and which stages this machine can run on it.--range,--encode,--reportand the rest are in the usage guide.
Several open-source projects put DLSS 5's neural pass on video. This one is built to watch the result and check it: it renders the whole video while you watch, keeps the render, and shows the original beside it on the same frame. As of 2026-10-16, from each project's README, releases and issues (details in RELATED_PROJECTS.md; corrections welcome):
| DLSS 5 Video Player (this) | Visual Enhancer v16.0 | NeuralScreen v2.4.0 | Veyra 2.0.8 | DLSS5Tool v3.0.0 | |
|---|---|---|---|---|---|
| What it is | A player that renders the whole video in the background, plus export | A converter with a stage pipeline; its Live mode was removed in v16.0 | An overlay on the whole desktop, plus file conversion | A real-time player for files, capture cards and game streams | A converter with a preview; since v3.0.0 also enhances a running window live |
| Neural render you can keep, seek and re-watch | Yes: rendered frames are cached and reused | Export only; previews cache a short range | No: real time | No: real time | Export only; the preview can pre-render ahead |
| Compare tools | Split, Wipe, Difference, Side by side, 2×2, loupe, hold for original, against RTX VSR | Split, 2-Up | Before/after wipe | Original/enhanced toggle | Wipe, side by side |
| Upscaling | RTX VSR by default in playback and export, DLSS SR on request; measured | RTX VSR, DLSS SR and Video Effects SDK VSR stages, off by default | None (by design) | DLSS SR, RTX VSR or FSR | RTX VSR 2× or 4× |
| Frame generation | DLSS-G 2–5× as a conversion; RTX 20/30 through an offered, hash-checked add-on | DLSS-G or NVIDIA Video Frame Generation, as a conversion | DLSS-G 2–4×, live | DLSS-G, XeSS or FSR up to 6×, live | 2–4× interpolation, export |
| Inputs | Local video, public YouTube, photos, GIFs | Images, including camera RAW, and video | Anything on screen, files | Files, images, capture cards, PS5, PC and Xbox streams | Images, video, image sequences; a running window live |
| Keeps audio / subtitles / chapters on export | Yes / yes / yes | Yes / on some paths / yes | Audio yes | Audio and subtitles yes | Audio yes |
| HDR | HDR shown on HDR displays; exports are SDR | 10-bit HDR export, SDR→HDR | HDR10 recording (experimental capture) | HDR kept, HEVC Main10 export | HDR10/HLG export |
| Command line | dlss5-convert: files, folders, JSON report |
VE_CLI.exe |
No; a GUI queue | Not documented | Not documented |
| Download | 588 MB (36 MB without the neural runtime) | 531 MB (.7z) | 229 MB | 719 MB (NVIDIA) | 588 MB lite |
| Verifying the download | SHA-256, GitHub attestations, a file manifest and a verifier script | GitHub's per-file digest | SHA256SUMS and a runtime manifest | SHA-256 files | Runtime hashes |
| Licence | MIT | Source-available, its own terms | PolyForm Strict (non-commercial) | GPL-3.0 (AGPL for its streaming part) | GPL-3.0 since v3.0.0; MIT before |
Of the five, only this player keeps the render, so a seek lands on rendered frames and a video you come back to is already done. It compares the render with the original on the same frame in more ways than any of the others, RTX VSR included; its export keeps subtitles and chapters as well as audio, which of the others only Visual Enhancer does, and subtitles only on some paths; and only its downloads carry GitHub attestations of what this repository built. Its upscaler was chosen by measurement, and the report is public.
None of these projects is an NVIDIA product, and each runs the neural pass on a runtime build NVIDIA has not published for this use, this one included (see Check what you downloaded). This player is published only on its releases page; re-uploads of DLSS 5 tools under other accounts have been reported carrying malware.
0.30.0 (2026-11-01). The menus, settings and toolbar are rearranged around what you do, RTX 50 cards get DLSS-NR 310.9.16 with a lighter network to choose, and YouTube sound no longer stops a minute in. Every earlier render is made again once, because the neural runtime changed; the default picture is the same frames as 0.28.3's.
- Menus named for jobs: File, Playback, View, Compare, Enhance, Tools, Help. Where each 0.28 row went.
- One Picture panel (
Ctrl+N) for Neural settings and Image adjustments, split into what re-renders and what is instant. - DLSS-NR 310.9.16 on RTX 50. Network A, the default, renders 0.28.3's frames exactly; network B is milder and 36 % faster. Other GPUs keep 310.8.SF-v2. Both are still modified, unsigned community builds.
- RenoDX 10.8.0, pinned to keep the picture within a tenth of a level of 0.28.3's.
- YouTube sound keeps playing past the first minute, YouTube's own captions are listed under Playback > Subtitles, and yt-dlp is the stable 2026.10.26, past certifi's certificate fix.
- Resume where you left off,
PgDn/PgUpfor the next file in the folder,Ctrl+Shift+Cto copy the comparison andCtrl+Vto open what you copied. - Every key can be changed in
input.conf, and the interface can be translated. Simplified Chinese ships first, drafted with an AI model and not yet reviewed by a native speaker.
Earlier releases are in CHANGELOG.md; 0.28.3 kept Windows awake
under a render, 0.28.2 made the neural
settings do what they say, 0.28.1 made RTX VSR the upscaler in playback and
exports, 0.27.2 offered the
dlssg_sm86 add-on for Frame Generation on RTX 20 and 30, 0.27.0 added
dlss5-convert, the command-line converter, 0.26.2 fixed GPU decoding of
untagged HD video, and 0.26.0 added the compare views, RTX VSR beside DLSS 5,
subtitles, HDR, the render quality ladder and --render.
| What | Key |
|---|---|
| Open a file / a YouTube URL | Ctrl+O / Ctrl+L |
| Play or pause | Space |
| DLSS 5 on or off | D, or the toolbar's DLSS 5 pill |
| Compare views | C / Shift+C step the mode; X swaps sides; [ and ] change the Mix; double-click the Mix for 100% |
| RTX VSR view; compare against it | R; Shift+R |
| Zoom, loupe | Z / Shift+Z zoom in and out at the pointer; L loupe |
| Save the view as a PNG | Ctrl+Shift+S |
| Subtitles; earlier, later | V; H, J |
| Every shortcut | ? or F1 |
| Seek ten seconds / step one frame | Left / Right; . |
| Mark In / Out; clear; go to time | I / O; Shift+I; Ctrl+G |
| Render one frame / four seconds / the marked clip | F / Shift+F / Ctrl+R |
| Generate frames; cancel a conversion | Enhance > Generate frames; Esc |
| Picture (the render's look) | Ctrl+N; in the panel, Ctrl+Z reverts and a double-click on a setting's name resets it |
| Viewing adjustments (instant) | Ctrl+E |
| Re-render from here; pause the background render | Enhance > Re-render from here; P |
| Export | Ctrl+S |
| What you can do to the picture | Right-click it, or Shift+F10 |
| Volume, mute | Mouse wheel; M |
| Fit or fill; fullscreen | A; F11 |
| Stop | S |
Every key can be changed: Help > Edit key bindings opens input.conf, one
KEY command per line as in mpv, and the menus, tooltips and the ? sheet
show the keys it gives (USAGE.md).
Settings persist between launches. A fresh install starts with neural rendering on, RTX VSR the upscaler (DLSS Super Resolution not chosen), and DLSS SR's output and YouTube quality on Auto: the largest resolution your monitor can show, and the best YouTube stream up to 1440p.
The usage guide covers the rest, including frame generation and the cache. The trailer list is in EXAMPLE_VIDEOS.md.
The player paused on one frame of Grand Theft Auto VI: An Extended Look rendered at default settings, on an RTX 5090 at 100% display scaling. The RTX VSR crop and the saved comparison file are from an earlier round, on a frame of 007 First Light. Click any image for full size.
One 540p frame shown at 1.51x: the player's plain scaling left of the divider, RTX VSR right, unscaled crop (the same comparison on the GTA VI frame, whole window). The measured comparison is the RTX VSR quality report, not this frame.
A file that save wrote, footer and all, from the earlier round on 007 First
Light: saved-comparison-2x2.png.
One paused frame with only the view switched, at default settings. It shows how the toggle works, not what every source will gain.
Capture details and footage attribution.
-
Speed. On an RTX 5090 a live session costs about 6.8 ms a frame at 1080p30, 9.9 ms at 1440p30 and 23 ms at 4K30, all faster than the video plays. An RTX 4080 SUPER measured 15.3 ms at 1080p30 on 0.16.0 and has not been re-measured since. 4K depends on the file. After your first session the player knows your GPU and warns you before a video it expects to fall behind on.
-
Driver 610.47 or newer. Older drivers refuse neural rendering on any card, and the player tells you up front. See troubleshooting. On Windows 10, NVIDIA's last Game Ready and Studio drivers are October 2026's, with quarterly security updates only after that (NVIDIA), so a future runtime that needs a newer driver will need Windows 11.
-
Which GPU does what:
GPU Neural rendering RTX VSR upscaling DLSS Super Resolution Frame generation RTX 50 Yes; tested on an RTX 5090 Yes; measured on an RTX 5090 Yes Yes, up to 5x here RTX 40 Yes; tested on an RTX 4080 SUPER Yes Yes Yes, 2x RTX 30 Untested, and expected several times slower without native FP8 Yes Yes Only with the community dlssg_sm86 add-on; a user ran 4x on an RTX 3060 (#14) RTX 20 As RTX 30, untested Yes Yes Only with the add-on; untested NVIDIA's own DLSS 5 support is RTX 50 only, and this player runs neural rendering on a modified community runtime on every generation, RTX 50 included. RTX VSR costs about 1.5 ms for a 1080p frame and 2.7 ms for a 1440p one at High on an RTX 5090; slower cards pay more, and the player lowers its quality for a video it cannot keep up with.
-
Depth is estimated from the picture, and so is motion on cards without the optical flow engine. Expect some artifacts.
-
DLSS Super Resolution doesn't beat a plain scaler on video. Against bicubic on six clips, it scored lower on all of them. It is built for games; use it for its look, not for detail. RTX VSR, the default upscaler, is the one that adds detail: 87.5 VMAF against bicubic's 80.5 and DLSS's 74.9 over the same kind of test.
-
Frame generation writes a new file. It takes time and disk space, and a stream has to be copied locally first. NVIDIA supports it on RTX 40 and 50 cards; on RTX 20 and 30 the player offers to download the community dlssg_sm86 add-on, which is unofficial and not bundled.
-
Save rendered video copies the cached render as it is: 8-bit at the default Standard quality, 10-bit at High or Lossless, without adjustments, upscaling or HDR. Use File > Export… to bake in a larger size.
-
Not supported: burning subtitles into an export, a render queue in the player (
dlss5-convertconverts a list or a folder in turn), or resuming an interrupted render after a restart. -
YouTube: public, non-DRM videos only, no login. Age-restricted videos can arrive as a 640x360 stream, and the status line tells you when that happens.
-
Disk space. The cache keeps renders until the drive falls below 20 GB free, then deletes the least recently used first. Tools > Clear neural cache shows how much it will free before it does.
-
Partial renders aren't joined. A session started partway into a video leaves separate renders of the parts it covered, so reopening that video renders it again.
-
Network use. Besides YouTube links, the player checks GitHub once a day for a new release (the menu bar then shows
↑ Update <version>), and the start screen fetches the trailers' thumbnails fromi.ytimg.com, again only when a cached one is a month old.[Updates] Enabled=0and[Start] ThumbnailFetch=0inDLSSVideoPlayer.initurn these off. On an RTX 20 or 30 card, the dlssg_sm86 add-on is downloaded only if you accept the offer.
C++20, Win32, Direct3D 12, FFmpeg and NVIDIA NGX.
- Build and test, runtime setup
- Architecture, technical overview
- Hardware test records: the
VERIFICATION-*.mdfiles in docs - Contributing: the checks a pull request must pass
Reporting a bug: open an issue with the version, GPU, driver, the video's size and frame rate, steps to reproduce, and log excerpts. Remove private paths and signed media URLs from logs first.
Started from DLSS 5 Video Player by Jessica Natalia Mods.
Project source is MIT. Third-party binaries, game footage and trademarks keep their own terms; see THIRD_PARTY.md.













