Nodes/ComfyUI-SplatKit/4DAnyone Load View
ComfyUI Node

4DAnyone Load View

Look at one camera angle before you spend hours training

By mickmumpitz·Created about a month ago·Updated 2 days ago· 18
4DAnyone Load View
  • views
  • images
  • camera_info
view_index0
sourcegenerated

The generator finished and the console says it made 32 views. Great - but are they any good? A contact sheet of 32 tiny tiles will tell you whether something went wrong; it will not tell you whether the back of the head is a smear of noise, because at 200 pixels wide everything looks fine. Load View is the node you reach for when you want one angle at full resolution.

What it does

It takes the views bundle Generate Views produced and decodes one video out of it into a ComfyUI IMAGE batch - the whole clip, all frames, at whatever resolution the generator wrote. Wire that into Preview Image to scrub it, or into Create Video to watch it, or into a Save node if you want the raw generated view on disk.

There are two sources, and both are genuinely useful:

  • generated gives you one of the invented camera angles.
  • skeleton gives you the skeleton conditioning video for the same index - the pose SAM 3D Body estimated from your input clip. ComfyUI's own splat previews and the skeleton render are different things, and when a view comes out with an arm in the wrong place, seeing the pose the generator was conditioned on is how you work out whether the pose was wrong or the generation was.

The camera_info output is a plain string naming the view: its yaw and pitch from the generation's camera metadata, plus the filename. It's not a camera socket - nothing downstream consumes it as one. Read it, log it, or stick it in a note.

The three inputs

views from Generate Views. view_index picks which one - 0 upward, capped at 143 in the UI, which is roomier than any preset (the largest stock preset is 48 views) but covers hand-built custom ring layouts. Either way, if you ask for an index past the end, the node raises rather than silently wrapping, and the error tells you the valid range. source is the generated / skeleton switch described above.

The camera_info string uses ? for yaw and pitch when the index has no entry in the camera metadata - which happens when the views bundle was written without cameras.json. It still loads fine.

Installing it

Same pack, same two steps:

cd ComfyUI/custom_nodes
git clone https://github.com/mickmumpitz/ComfyUI-SplatKit
python_embeded/python.exe -m pip install -r ComfyUI-SplatKit/requirements.txt

Restart, or use ComfyUI Manager and search for "ComfyUI-SplatKit". This node itself is light - it decodes video through PyAV, which ComfyUI already ships - but it needs an existing views bundle, so you'll have installed the backend and the 4DAnyone weights anyway. There's nothing to download for Load View specifically.

When it breaks

  • "The views bundle has no skeleton videos." You asked for source: skeleton on a result that didn't store them. Switch back to generated, or regenerate.
  • "view_index N out of range (0..M-1)." You're picking from a preset that made fewer views than you assumed. The camera preset you ran tells you the count: 16, 24, 32 or 48.
  • Silent frame-rate weirdness. The batch is whatever frames exist in the generated mp4. If you set target_fps on Generate Views, that's the rate you're looking at - don't compare a downsampled view against your original 60fps source and conclude the timing drifted.
  • Memory. You just loaded a full-resolution video into a ComfyUI IMAGE batch. A 48-view job decoded one view at a time is fine; queueing several Load View nodes that each hold thousands of frames is how you find your RAM ceiling.

The workflow this node fits is the cheap loop: validate the clip, generate views once, then eyeball a couple of angles - one facing, one from behind - before committing to exporting 121 frames and training a splat per frame.

CategorySplatKit/4DAnyone

Inputs (3)

NameTypeDefaultDescription
viewsSPLATKIT_4DANYONE_VIEWS
view_indexINT00–143
sourceCOMBOgenerated2 options: generated, skeleton

Outputs (2)

NameTypeDescription
imagesIMAGE
camera_infoSTRING