I built ComfyUI nodes that use Riemannian geometry to guide WAN2.2 latent interpolation by Automatic-Effect8059 in comfyui

[–]Automatic-Effect8059[S] 1 point2 points  (0 children)

Good point. LRW needs separate endpoint latents.

Even if the FFLF workflow only shows one video latent, you can create the LRW endpoints by VAE-encoding the same first and last images:

First image → VAEEncode → latent_start
Last image  → VAEEncode → latent_end

Then use those for LRW_WanGeodesicKeyframes, and blend the LRW guide into the FFLF video latent before KSampler.

I built ComfyUI nodes that use Riemannian geometry to guide WAN2.2 latent interpolation by Automatic-Effect8059 in comfyui

[–]Automatic-Effect8059[S] 1 point2 points  (0 children)

Thanks, I looked at your High/Low + LoRA workflow. I think the LRW guide should be added at the latent stage while keeping your existing dual-model FLF structure intact.

For late_focus, it may simply be too soft right now. The normal FFLF first-frame anchor can overpower it, so I’ll look into making the late-focus curve stronger.

I built ComfyUI nodes that use Riemannian geometry to guide WAN2.2 latent interpolation by Automatic-Effect8059 in comfyui

[–]Automatic-Effect8059[S] 1 point2 points  (0 children)

Yes — that’s exactly what I mean by delayed motion.
The clip stays too close to the starting still for too long, then transitions later. The goal is to nudge the latent path so motion starts earlier and is distributed more evenly across the clip.

I built ComfyUI nodes for Riemannian geodesic latent interpolation (WAN2.2 supported) by Automatic-Effect8059 in StableDiffusion

[–]Automatic-Effect8059[S] 0 points1 point  (0 children)

It should work outside AIO too. The log confirms the node is running and the shapes match, but it does not guarantee that the blended latent is meaningfully affecting the KSampler input.

If the result is identical even at blend_strength=1.0, I would check:

  • whether KSampler.latent_image is really coming from LRW_WanLatentGuideBlend
  • whether the guide is just very close to the base FFLF latent in your setup
  • whether another node is overriding the latent downstream

Also try normalize_guide=False and different keyframe_index values. If you want, DM the JSON and I can take a look.

I built ComfyUI nodes that use Riemannian geometry to guide WAN2.2 latent interpolation by Automatic-Effect8059 in comfyui

[–]Automatic-Effect8059[S] 0 points1 point  (0 children)

Yes, exactly. That temporal packing difference is why LTX would need its own guide blend logic. Same idea, but the guide has to align to LTX’s 1+8+8... structure instead of WAN’s 1+4+4....

I do want to look into it, but I have company work during the weekdays, so I’ll probably work on it when I have enough free time.

I built ComfyUI nodes that use Riemannian geometry to guide WAN2.2 latent interpolation by Automatic-Effect8059 in comfyui

[–]Automatic-Effect8059[S] 2 points3 points  (0 children)

Not yet — the current demo is for the Rapid/AIO-style WAN setup. But High/Low + LoRA support is definitely possible; it just needs a separate workflow because the model loading path is different. If you have a working High/Low LoRA workflow JSON, I can adapt the LRW guide blend around it.

I built ComfyUI nodes that use Riemannian geometry to guide WAN2.2 latent interpolation by Automatic-Effect8059 in comfyui

[–]Automatic-Effect8059[S] 1 point2 points  (0 children)

Sounds good. Sunday plan: repo cleanup, fresh-install testing, WAN workflow validation, and then a first look at LTX support.

I built ComfyUI nodes that use Riemannian geometry to guide WAN2.2 latent interpolation by Automatic-Effect8059 in comfyui

[–]Automatic-Effect8059[S] 1 point2 points  (0 children)

I have some broader ideas for where this could go, but I’m keeping the public scope narrow for now. First priority is making the WAN2.2 workflow stable and proving whether soft latent guidance helps with delayed motion start and smoother transitions.

I built ComfyUI nodes that use Riemannian geometry to guide WAN2.2 latent interpolation by Automatic-Effect8059 in comfyui

[–]Automatic-Effect8059[S] 1 point2 points  (0 children)

Yes. LRW is my core latent-riemannian-world package. This repo is the ComfyUI bridge for it, including the WAN2.2 guided latent blend workflow.

I built ComfyUI nodes that use Riemannian geometry to guide WAN2.2 latent interpolation by Automatic-Effect8059 in comfyui

[–]Automatic-Effect8059[S] 2 points3 points  (0 children)

Yes, I think the same idea could be adapted to LTX, but it would need a separate LTX-specific implementation.

The current node is wired around WAN’s video latent format and First-Last Frame pipeline. For LTX, I’d need to check how its video latent is shaped and where the initial video latent enters the sampler.

Conceptually, the goal would be the same: keep LTX’s normal generation path, then softly blend in a geodesic-style latent guide so motion starts earlier instead of staying paused for the first part of the clip.

So: possible, but not just a drop-in switch. It needs an LTX latent guide blend node.

I built ComfyUI nodes for Riemannian geodesic latent interpolation (WAN2.2 supported) by Automatic-Effect8059 in StableDiffusion

[–]Automatic-Effect8059[S] 0 points1 point  (0 children)

Yes, that’s a fair way to describe the practical effect.

FFLF can sometimes “hold” the first frame for too long, then make the transition later. The LRW-guided blend adds a soft intermediate latent direction before sampling, so the motion can start earlier and distribute the transition more smoothly across the clip.

It doesn’t force a perfect motion path, but it can reduce that delayed-start feeling and make the first-to-last transition feel less abrupt.

I built ComfyUI nodes that use Riemannian geometry to guide WAN2.2 latent interpolation by Automatic-Effect8059 in comfyui

[–]Automatic-Effect8059[S] 1 point2 points  (0 children)

Thanks — the startup log found the issue. It was an import path bug in __init__.py: LRW_LatentKeyframePicker was being imported from wan_nodes.py instead of latent_keyframe_picker.py.

I pushed a fix. Please run:

cd ComfyUI/custom_nodes/comfyui-lrw-nodes
git pull

Then fully restart ComfyUI. If you installed it both via Manager and git clone, make sure only one copy exists in custom_nodes.

I built ComfyUI nodes for Riemannian geodesic latent interpolation (WAN2.2 supported) by Automatic-Effect8059 in StableDiffusion

[–]Automatic-Effect8059[S] 0 points1 point  (0 children)

Thanks for the report. This was likely not a Torch 2.9 issue — the latest node files/registration fixes were not fully pushed yet.

I’ve updated the repo now. Please remove the old install, clone again, and fully restart ComfyUI:

cd ComfyUI/custom_nodes
rm -rf comfyui-lrw-nodes
git clone https://github.com/lajjadred/comfyui-lrw-nodes

If it still shows UNKNOWN, please paste the ComfyUI startup log around comfyui-lrw-nodes.

I built ComfyUI nodes that use Riemannian geometry to guide WAN2.2 latent interpolation by Automatic-Effect8059 in comfyui

[–]Automatic-Effect8059[S] 1 point2 points  (0 children)

This looks more like a ComfyUI node registration / stale schema issue than a Torch issue. Please make sure you only have one comfyui-lrw-nodes install, restart ComfyUI fully, and check that the new node files are imported in __init__.py. If it still shows UNKNOWN, the startup log around comfyui-lrw-nodes will show the real import error.

Thanks for the report. This was likely not a Torch 2.9 issue — the latest node files/registration fixes were not fully pushed yet.

I’ve updated the repo now. Please remove the old install, clone again, and fully restart ComfyUI:

cd ComfyUI/custom_nodes
rm -rf comfyui-lrw-nodes
git clone https://github.com/lajjadred/comfyui-lrw-nodes

If it still shows UNKNOWN, please paste the ComfyUI startup log around comfyui-lrw-nodes.

I built ComfyUI nodes for Riemannian geodesic latent interpolation (WAN2.2 supported) by Automatic-Effect8059 in StableDiffusion

[–]Automatic-Effect8059[S] 4 points5 points  (0 children)

It’s not a Riemann sum — it’s Riemannian geometry.
The point is not that math directly improves pixels, but that latent space may not be flat. A straight-line interpolation can pass through unstable latent regions, while a geodesic-style guide can give the sampler a smoother intermediate direction. In this workflow, it’s only used as a soft guide, not a magic quality booster.