This workflow focused on ease of use and powerful features for creating segmented videos.
Features:
Create unlimited videos beyond Wan 2.2 capabilities, thanks to SVI 2.0 pro. Easily add new sections to continue your video further, all in single continuous workflow
Automated save/loads. Continue your video from where you stopped, even after comfy restart. No quality degradation on video compression
Change base models for each section as well as LoRa. Find which ones work best for your idea
GGUF support for low VRAM systems. Use your GGUF clip and diffusion models like usual models at unified fields
Separable upscale/interpolation at the end. You can stitch a full video purely from saved data, preserving RAM and VRAM, or just generate from the beginning to upscaled video in one go
RAM optimizations. If your system can generate 1 segment, you should be able to do them all!
Chose different reference images for each video segment. It can introduce model to hidden assets/characters, that aren't visible on the start image. No LoRa required!
Precisely control every video segment: prompt, length, seed. Check for perfect stitch with previous generation only, no need to search through entire video
You can find guide for the workflow inside Options subgraph (v3.0), it's your starting point.
Feedback is appreciated! Share your thoughts
Version 3.0
See changes in version history
For this version you'll need my new custom nodes. If comfy manager can't recognize them automatically, you can find them manually by name:
ComfyUI-HeresyNodes
Or download them using git repository link
https://github.com/heresyCoder/ComfyUI-HeresyNodes
Remove old nodes ComfyUI-WanVideo-LatentIO used in V2 if they cause conflicts, they are added in the new node pack with some changes
April and Kit example was made using multiple input images. You can find them in the image gallery of v3.0
Note that workflow in this example was upscaled separately from generation, that's why all sections are bypassed.
If you want to use it, uncheck full_video_only parameter on options subgraph, unbypass sections and turn off upscale/interpolation/save on full video subgraph.
Or just download as JSON file
Version 2.0
See changes in version history
Based on kijai's SVI 2.0 workflow:
https://github.com/user-attachments/files/24359648/wan22_SVI_Pro_native_example_KJ.json
New custom nodes were made for saving latents of a video (Save Wan Video Latent) and loading from "output" folder (Load Wan Video Latent).
If you can't install them with comfy manager, you can get them manually:
https://github.com/heresyCoder/ComfyUI-WanVideo-LatentIO
Frieren with a mimic example was made using multiple input images. You can find them in the image gallery of v2.0
Description
FAQ
Comments (17)
When loading the graph, the following node types were not found:
LoadWanVideoLatent
SaveWanVideoLatent
Comfy manager can't download them automatically? I uploaded custom nodes for a first time, something may be wrong. Here is github repo
ComfyUI-WanVideo-LatentIO
Came across same issue. It shows in Comfy Manager, but not in missing nodes for some reason. You can still manually search for it in Comfy Manager and install.
Excellent workflow. But there is one thing: uploading videos to preview nodes is loaded only after processing all segments. I would like the created video to be uploaded immediately after the segment is created.
Thanks! I know about this issue, maybe even potential solution. But after using this workflow for a while, I came to conclusion that it doesn't really matter. If you want to make a good quality video, you still need to iterate through each segment, until you're ok with the result, and then you unbypass the next one. Or if you're generating again using saved metadata, you already know what segments will be like, and just need to wait until it's done. Let me know, if there is different use cases, that could benefit from proper previews
@vamorand I've mitigated the issue in my own WF by doing the following:
- Use an integer node in the segment group, I call it Flow Signal.
- Create a Math (int) node and a Length Any node both from Easy-Use. Turn these into a subgraph. I call it Flow Control.
- The first input in the subgraph connects to a in the Math node.
- The second input in the subgraph connects to the Length Any node > which outputs to the b in the Math node.
- The subgraph outputs the new total from the math operation.
From outside the subgraph your Flow Signal connects to input1, and then **the output from whatever step you want to wait on** connects to input2. This creates an artificial dependency as it must add these two values to make a result. Now you just duplicate the subgraph at every critical stage of the WF and pass the "flow signal" along with the output from the next step.
@altoiddealer, I found this repo that contains flow control nodes
GitHub - StableLlama/ComfyUI-basic_data_handling: Basic Python functions for manipulating data that every programmer is used to
"force execution order" implements roughly the same logic as you suggested, so I'll just use it in the new version. Making logic with common nodes is good, but I need other node from this pack anyway
WOW!!! You had to do all that much work!!
Looks really good!
Thanks, Jeshua
It took longer than it should have 😄
First of all thank you for sharing your workflow! "Add individual LoRa for each new video segment"---This is the function I want, but I can't achieve this effect. I turned on "New generation" and "section1" and "section2" and uploaded images and lora respectively. I turned off "Load raw" and "Save raw". The actual generated "Full video" was only 5 seconds. I don't know what went wrong. Moreover, the preview videos generated by "section1" and "section2" are the same, but in fact, the lora and prompt words of "section1" and "section2" I uploaded are different.
I have no clue on what can cause this, unfortunately. Your comfy and custom nodes are up to date? Node connections are the same, and you didn't moved anything outside of their groups, so bypass logic is not changed? If you're willing to share your exact workflow and used images, you can DM me on civitai, so I can try this case on my side
Video Combine node not working perfectly all the time. Sometimes you have to pause/unpause or sync preview to update it. But I've never seen that it can duplicate result between sections
@vamorand Hi bro, I found what the problem is! Haha! When I turned on "Section 2", all the subgraph nodes in "Extension" were turned off. I'm a rookie so I forgot to turn them on.When they were all turned on they functioned fine.Thanks again for your workflow and wish you a good life!
@57209259300, now I remember, that happened to me as well. Fast bypasser node works with all group content, including subgraph content. While manual bypass/activation works only on first layer of interface
first group generates fine but enabling the second group (using same image as first) I get the error "ImageResizeKJv2
unsupported operand type(s) for /: 'NoneType' and 'NoneType'"
Seems to be because i turned off the New Gen node. What is the purpose of being able to disable new gen node? I'm not understanding that one :)
@markharper80266, there is 2 modes: start with start image (New generation), or load previously saved video and continue generating over it (Load raw). One of them should be active, other one should be bypassed. I'll try to make a switch between them
