Nodes/AetherScale/AetherScale • Neural Rendering
ComfyUI Node

AetherScale • Neural Rendering

DLSS 5 Neural Rendering inside ComfyUI — very cool, very experimental

By vizart-vj·Created 11 days ago·Updated 11 days ago· 76
AetherScale • Neural Rendering
  • images
  • motion
  • image
  • stats
styleauto
strength0.75
local_tone1.00
local_structure1.00
skin_structure1.00
reset_on_scene_cuttrue
history_frames2
safety_margin_mb2048
cuda_device0
effect_cachesingle
cuda_streamcurrent
memory_policyperformance
vram_guardauto
min_free_vram_mb2048
output_devicecpu_safe
auto_bootstraptrue
preset3
auto_maskfalse
channel_orderauto
runtime_path
temporal_mode_overridelegacy_auto
output_precisionauto
output_storageauto
clean_cachetrue
backendcarrier
upscale_modenative_1x
motion_sourceauto
carrier_warmup_frames120
carrier_scene_cut_threshold0.24
carrier_gpuwindows_high_performance

This is the node the whole pack is dressed around, and it deserves the hype and the caveats in equal measure. AetherScale's Neural Rendering node applies NVIDIA's DLSS 5 "Neural Rendering" to your own frame batches - upscaling and enhancement driven by the same neural-rendering family that made the RTX 50-series launch trailers, but running as a ComfyUI node on whatever RTX card you point at it. The pack author's own version history is the tell: DLSS 5 support arrived in 0.4.x, got re-architected in 0.5.0 into a "carrier" design, and the README is frank that it's experimental, hardware/driver/runtime-dependent, and expected to evolve. Treat it like a frontier demo you can run, not a stable production tool.

How it works

There are two backends. The default, backend = carrier, bootstraps a pinned third-party DLSS 5 "visual enhancer" release (Merserk/dlss5-visual-enhancer v1.0) - downloaded at runtime, verified against a hard-coded SHA-256 before anything is extracted, and run through a D3D12 worker. That's the key architectural detail: the carrier path follows Windows' graphics adapter routing (the pack even sets a per-app "High Performance" GPU preference), not PyTorch's CUDA device index. The legacy_direct backend, which calls the raw DLSS feature directly, is retained only for diagnostics and reproducibility - the README is explicit that it's not the recommended path. The temporal motion packet from Motion Analysis feeds the whole thing so the neural rendering knows what moved and where shots cut.

The inputs that actually matter

  • images + motion - the frame batch and its matching motion packet. Motion packet resolution must equal the input resolution or the node throws a hard error.
  • upscale_mode - start at native_1x (the default) to validate the whole path works before you try quality_1_5x, balanced_1_724x, performance_2x, or ultra_performance_3x. This is genuinely the README's advice and it's good advice - a broken pipeline at 1x costs you nothing to discover.
  • backend - leave carrier. legacy_direct is for debugging and reproducing old experiments.
  • style - auto picks natural; the named looks and raw preset numbers map onto the runtime.
  • strength, local_tone, local_structure, skin_structure - the creative dials, all defaulting to neutral-ish values.
  • carrier_warmup_frames (default 120) - lets the carrier settle before you judge its output; lower it to test faster, raise it for long takes.
  • clean_cache - the mmap-cleanup switch from Super Resolution, same semantics here.

Outputs are image and a stats JSON. The stats also carry a compatibility_contract field noting which workflow schema the node honors - that's the pack protecting older saved graphs.

Installing it

Same as the rest of the pack: Manager → search AetherScale, or clone into custom_nodes and restart. First Neural Rendering run downloads the carrier archive (and the NVIDIA VFX runtime) - internet required, and it's hash-verified, so a failed download just errors out cleanly rather than running something unverified. No runtime DLLs ship inside the Git repo.

The reality check

Primary target is RTX 50-series hardware for the stock Neural Rendering runtime; whether older generations work depends on which runtime path you land on. When it doesn't work, the author's bug-report checklist is your template: GPU model, driver version, AetherScale version, the full ComfyUI traceback, and the stats output. Get that collection before you post anywhere - it's exactly the info that turns "doesn't work" into "fixed in 0.5.6." And if Neural Rendering is a no-go on your card, don't write the pack off: the Super Resolution and Restoration nodes are the stable, practical half and need none of this.

CategoryAetherScale/Neural

Inputs (32)

NameTypeDefaultDescription
imagesIMAGE
motionAETHERSCALE_MOTION
styleCOMBOauto9 options: auto, natural, cinematic, material_detail, default, 3, +3
strengthFLOAT0.750–2
local_toneFLOAT1.000–2
local_structureFLOAT1.000–2
skin_structureFLOAT1.000–2
reset_on_scene_cutBOOLEANtrue
history_framesINT20–8
safety_margin_mbINT2048256–16384
cuda_deviceINT00–0
effect_cacheCOMBOsingle3 options: single, persistent, none
cuda_streamCOMBOcurrent2 options: current, dedicated
memory_policyCOMBOperformance3 options: performance, balanced, aggressive
vram_guardCOMBOauto3 options: auto, release_models, preserve_models
min_free_vram_mbINT20480–24576
output_deviceCOMBOcpu_safe2 options: cpu_safe, same_as_input
auto_bootstrapBOOLEANtrue
presetoptINT30–3
auto_maskoptBOOLEANfalse
channel_orderoptCOMBOauto3 options: auto, RGBA, BGRA
runtime_pathoptSTRING
temporal_mode_overrideoptCOMBOlegacy_auto4 options: legacy_auto, scene_cut_aware, temporal_sequence, still_images
output_precisionoptCOMBOauto3 options: auto, float16, float32
output_storageoptCOMBOauto3 options: auto, mmap, ram
clean_cacheoptBOOLEANtrue
backendoptCOMBOcarrier2 options: carrier, legacy_direct
upscale_modeoptCOMBOnative_1x5 options: native_1x, quality_1_5x, balanced_1_724x, performance_2x, ultra_performance_3x
motion_sourceoptCOMBOauto4 options: auto, connected_motion, internal_dis, zero_motion
carrier_warmup_framesoptINT1200–240
carrier_scene_cut_thresholdoptFLOAT0.240.01–1
carrier_gpuoptCOMBOwindows_high_performance1 options: windows_high_performance

Outputs (2)

NameTypeDescription
imageIMAGE
statsSTRING