DaSiWa RTX Upscaler & Refiner
NVIDIA's RTX Video SDK as a 3-pass node
- images
- images
This node wraps NVIDIA's RTX Video SDK - the same tech behind RTX Video Super Resolution in the NVIDIA app and browser - into a 3-pass ComfyUI node: Denoise, Deblur, and Upscale, run frame by frame so VRAM stays flat no matter how long your clip is. If you've tried a bare RTX VSR node before and come away unimpressed, that's a known result, not user error, and it's exactly why this node doesn't stop at Upscale alone.
Why the multi-pass design, specifically
RTX VSR-only nodes have a reputation problem in the ComfyUI community: run VSR by itself and it can look like it's barely doing anything compared to the same SDK's output inside the NVIDIA app. The reason, once someone dug into the underlying nvidia-vfx module, is that a meaningful chunk of what the native app's "VSR" actually looks like is deblur layered on top of the upscale, not the upscale alone. This node treats Denoise and Deblur as their own independent passes you run before the Upscale pass, which is the two-step method that gets you results people expect from "RTX upscaling" instead of a flat resize with a marketing name on it.
How it works
Three stages, each toggleable independently and each processed frame-by-frame to keep memory use predictable on video batches:
- Refine -
denoiseanddeblurare separate booleans, each with its own_qualitytier (Low/Medium/High/Ultra). Turn on Deblur if your source is soft or AI-generated and looks smeared; turn on Denoise if it's grainy. - Upscale -
upscalepicks the mode:Off,VSR(the standard RTX super-resolution path), orHigh Bitrate(tuned for cleaner source video rather than restoring detail).upscale_qualityis the same four-tier scale. - Resize -
resize_type(Scale/Manual/Keep Ratio/Preset Ratio/Same Size) decides how the target dimensions are derived, backed byscale(1–4x),megapixels,width/height,divisible_by, andratio_presetdepending on which mode you pick.resize_methodchooses Center Crop or Letterbox when the source aspect doesn't match the target.
device_id picks which GPU runs the SDK if you have more than one NVIDIA card in the box.
The inputs and outputs that matter
Beyond the toggles above: images in, single images output - this is a mid-pipeline node, not a saver, so chain it into your Video Combine or Save node afterward.
How to install it
This is the one node in the pack with a real hardware requirement. Per the README: NVIDIA RTX GPU with drivers 530+. Windows users may additionally need the NVIDIA Broadcast SDK; Linux generally works out of the box once the pip package is installed.
ComfyUI Manager - search DaSiWa-Nodes, install, restart.
Manual:
cd ComfyUI/custom_nodes
git clone https://github.com/darksidewalker/ComfyUI-DaSiWa-Nodes
pip install -r ComfyUI-DaSiWa-Nodes/requirements.txt
The RTX implementation itself is credited to Deno2026/comfyui-deno-custom-nodes - worth knowing if you've seen a similar "Deno RTX" node floating around; this is a different pack building on the same underlying approach, alongside Comfy-Org's own official RTX nodes package. Several implementations of the same NVIDIA SDK exist; don't be surprised if workflows online reference a different one.
Common issues & troubleshooting
Upscale looks like it did almost nothing. This is the exact community complaint above - bare VSR can be underwhelming. Turn on deblur (Medium or higher) before judging the Upscale pass; the combination is where the quality actually shows up.
It errors or silently no-ops on non-NVIDIA hardware. The RTX Video SDK is NVIDIA-only by definition - there's no CPU or AMD/Intel fallback for this specific node, unlike DaSiWa's Torch Resize, which is deliberately hardware-agnostic.
Older driver, weird behavior or install failure. Confirm you're at 530+ first; this is the single most common gate for any RTX-SDK-based tool, and it's worth checking before assuming the node itself is broken.
Inputs (16)
| Name | Type | Default | Description |
|---|---|---|---|
| images | IMAGE | — | |
| denoise | BOOLEAN | false | — |
| denoise_quality | COMBO | Ultra | 4 options: Low, Medium, High, Ultra |
| deblur | BOOLEAN | false | — |
| deblur_quality | COMBO | Ultra | 4 options: Low, Medium, High, Ultra |
| upscale | COMBO | VSR | 3 options: Off, VSR, High Bitrate |
| upscale_quality | COMBO | Ultra | 4 options: Low, Medium, High, Ultra |
| resize_type | COMBO | Scale | 5 options: Keep Ratio, Manual, Preset Ratio, Scale, Same Size |
| scale | FLOAT | 2.001–4 | — |
| megapixels | FLOAT | 2.000.01–64 | — |
| width | INT | 192064–8192 | — |
| height | INT | 108064–8192 | — |
| divisible_by | COMBO | 8 | 5 options: 8, 16, 32, 64, 128 |
| ratio_preset | COMBO | 16:9 | 5 options: 1:1, 4:3, 3:2, 16:9, 21:9 |
| resize_method | COMBO | Center Crop (Fill) | 2 options: Center Crop (Fill), Letterbox (Fit) |
| device_id | INT | 00–8 | — |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| images | IMAGE | — |