What does VACE conditioning being "stackable" mean? #10431
-
|
I've been experimenting with Wan 2.1 VACE workflows, and digging into its implementations to better understand how I can construct and manipulate the control data that is encoded by the WanVaceToVideo node for more complex workflows. I came across this PR #8240 which seems to refactor the vace_strength property in the conditioning to be a list instead of a single value, though the node seems to wrap the given strength as a list with a length of one anyways. I don't think that passing in a list of FLOATs would work, though maybe I'm wrong? My first guess is that this has something to do with supporting the conditioning concat/average/combine etc. nodes. From my understanding the CONDITIONING type is a tuple with latents and a dict with additional parameters, and I'm not sure if/how those nodes interact with the extra params. I guess I need a better mental model for what those nodes do in general. Or maybe this PR is implemented for another use case I'm entirely unaware of? |
Beta Was this translation helpful? Give feedback.
Replies: 2 comments
-
|
Good question — you’re on the right track. The “stackable” aspect of VACE conditioning refers to the ability to combine or layer multiple conditioning inputs (each with its own Before that PR ( After the change, the So, to summarize:
You don’t need to manually pass a list right now — existing nodes handle it automatically — but this change opens the door for advanced control workflows where several VACE conditionings interact. |
Beta Was this translation helpful? Give feedback.
-
|
Ok, after much scratching my head I figured it out, and it's much simpler than I had anticipated. The mentioned PR made it so that you can chain WanVaceToVideo nodes. I failed to notice when I was first looking that it wasn't just Each of these parameters are applied in sequence during the inference. In theory this means you could have a different weight for the reference image and the control video data, or apply two different control videos simultaneously. I'll have to experiment and see what kind of results this can achieve, now. |
Beta Was this translation helpful? Give feedback.
Ok, after much scratching my head I figured it out, and it's much simpler than I had anticipated.
The mentioned PR made it so that you can chain WanVaceToVideo nodes. I failed to notice when I was first looking that it wasn't just
strengthwrapped in a list, but all of the extra parameters for VACE. The addition ofappend=Trueshould have tipped me off sooner, but hey, at least I had a reason to dig in and understand data flow in ComfyUI.Each of these parameters are applied in sequence during the inference. In theory this means you could have a different weight for the reference image and the control video data, or apply two different control videos simultaneously. I'll have to experimen…