Updated: Aug 9, 2026
toolRTX Video Super Resolution Upscaler workflow for videos

RTX Video Super Resolution (4x, non-diffusion)
GPU-accelerated upscale using NVIDIA's Video Effects SDK (nvidia-vfx), wrapped by the RTX Video Super Resolution ComfyUI node. No diffusion, no frame interpolation, no denoise step - it is a dedicated super-resolution model that runs frame-by-frame on the GPU.
Requires an RTX GPU + the comfyui-rtx-simple custom node (installs the nvidia-vfx Python wheel). See the install notes shipped alongside this file for exact versions.
Node-by-node
Load Video - pick the source MP4.
Get Video Components - demuxes the video into frames (IMAGE batch), audio (AUDIO, untouched), fps (FLOAT), and bit depth (INT). fps and audio are piped straight through to the encoder later, unmodified - that's what preserves original frame rate/duration/audio.
Get Image Size - reads the width of the first decoded frame, used below to decide whether upscaling is even needed.
Primitive Int (1920) - the "already large enough" width threshold. Change this value if you want a different skip cutoff.
ImpactCompare (a > b) - outputs
trueif width > 1920px. 6/8. VRAM Debug (before / after) - passes frames through unchanged; logs free VRAM to the ComfyUI console at each point (empty_cache/gc_collectleft off so it only reports, it doesn't force a cleanup mid-pipeline). This is how VRAM usage gets surfaced - there's no in-graph VRAM gauge node, but ComfyUI-Crystools (if enabled) also shows a live VRAM/RAM bar in the top toolbar during the whole run.RTX Video Super Resolution - the actual upscale.
scale= upscale factor (default 2.0x).quality= LOW/MEDIUM/HIGH/ULTRA (default ULTRA, prioritizes quality per the brief). Internally this node auto-batches frames to stay under a fixed ~16.7-megapixel-per-batch VRAM budget - see the install notes for why there's no separate tile-size widget on this node.If/Else Switch - if the source was already >1920px wide, passes the original decoded frames straight through (upscale branch never executes - lazy-evaluated, so this really does skip the work, not just discard its result). Otherwise passes the upscaled frames.
Create Video - reassembles frames into a VIDEO using the ORIGINAL fps and ORIGINAL audio pulled from step 2.
Save Video - encodes to MP4/H.264, re-encode mode, CRF 17 (mid-point of the requested 16-18 visually-lossless range). Edit
filename_prefixto set both the output subfolder and filename, e.g.upscaled/my_clipsaves tooutput/upscaled/my_clip_00001.mp4.
What's intentionally NOT here
No diffusion/KSampler anywhere - this is a pure CNN super-res pass.
No frame interpolation - frame count in equals frame count out.
No denoise/sharpen node - the RTX SR model's own internal processing is the only thing touching pixel content; nothing extra layered on top.
No explicit color-space conversion node - ComfyUI's IMAGE tensors and video codec path use standard sRGB/Rec.709; there's no core node to force a different color space. See troubleshooting notes if your source uses HDR/Rec.2020.
