🎉 Update: Version 2.0
Upgraded with redesigned systems for image loading and overall accessibility.
🌟 What's New
🖼️ Image Loading System
The workflow now features a flexible dual-mode image loading system:
Batch Image Loader: Automatically processes entire folders of images sequentially
Single Image Loader: Traditional manual image upload
Smart Switch Node: Seamlessly toggle between both modes without rewiring
How to use Batch Mode:
Set the PrimitiveInt value to
0with control set toincrementSpecify your source folder path in node LoadImagesFromFolderKJ
Run the workflow once per image - it auto-increments and loads the next image each time
Perfect for processing 10, 20, or 100+ images without manual intervention
To switch back to single image mode: Use the Fast Groups Bypasser to disable the batch loader and enable the standard Load Image node. No need for manual rewiring.
🎨 Upscaling Approach
After testing various upscaling methods, I've kept the upscaling workflow:
Kept the reliable ImageScaleBy node with Lanczos
2.5x upscaling factor maintained
Why Lanczos? Testing showed that AI upscaling models like RealESRGAN can over-sharpen video frames, creating an artificial look. Lanczos provides a more natural, balanced result that's better suited for my video content.
⚡ Optimized Speed LoRAs
Updated for better performance with the latest distillation models:
High Noise LoRA changed:
OLD: Wan2.2-Lightning_I2V-A14B-4steps-lora_HIGH_fp16 @ 0.5NEW: Wan_2_2_I2V_A14B_HIGH_lightx2v_MoE_distill_lora_rank_64_bf16 @ 1.5
Important: If you're using SmoothMix Wan 2.2, disable the Speed LoRAs node - SmoothMix doesn't require speed LoRAs.
📚 Enhanced Documentation
Added comprehensive new guide notes directly in the workflow:
"Load Wan 2.2 Models" - Explains GGUF option for diffusion models
"SmoothMix Wan 2.2" - Critical reminder about Speed LoRAs compatibility
"Batch Image Loader" - Complete setup instructions with examples
"Dynamic Prompts Text Box" - Improved guide with alternative setup options
All notes use proper markdown formatting for better readability!
đź”§ Technical Changes
GGUF Support Prepared
Two new UnetLoaderGGUF nodes added (disabled by default) for optional GGUF quantized models:
High Noise:
Wan2.2-I2V-A14B-HighNoise-Q8_0.ggufLow Noise:
Wan2.2-I2V-A14B-HighNoise-Q8_0.gguf
Enable these if you want to use GGUF models instead of the standard safetensors.
Nodes Added:
Any Switch (rgthree)- Intelligent image source switchingUnetLoaderGGUF(x2) - GGUF model support
Nodes Removed:
PathchSageAttentionKJ(x2) - RemovedModelPatchTorchSettings(x2) - Removed
Layout Improvements:
Better node organization for clearer workflow visualization
New groups added: "Load Image" and "Batch Image Loader"
Changed group layout: Now you can only enable and disable groups where it actually makes sense
⚠️ Migration Notes
If you're upgrading from v1.0:
Speed LoRA settings have changed - if you customized these, please review
Batch loader can now be disabled via Fast Groups Bypasser
All your existing prompts and LoRAs will work without changes
🎯 Recommended Workflow
For Batch Processing:
Prepare a folder with your input images
Set PrimitiveInt to 0, control to "increment"
Enter folder path in LoadImagesFromFolderKJ node
Set your dimensions (portrait/landscape) (don't forget to set them in the Wan Image to Video node as well!)
Run workflow N times for N images - cool stuff.
For Single Images:
Use Fast Groups Bypasser to disable batch loader
Enable standard Load Image node
Upload your image manually
Run workflow as usual
🙏 Credits & Thanks
Thanks to you for supporting my endeavor on Civitai. It's just so much fun making videos for you and reading your comments. You're awesome.
Thanks to all the talented and knowledgeable LoRA creators. Without your work I wouldn't be able to do any of this.
Enjoy the new workflow! Let me know if you encounter any issues or have suggestions for v2.1! 🚀
Release notes v1.0:
My ComfyUI Image 2 Video Workflows
I’ve been asked a few times about my workflow, so here it is.
Some people had issues loading the workflow from my videos, so I decided to upload them directly.
These are the setups I use to create my I2V videos.
You’ll find notes inside the workflows explaining what some of the nodes do.
You’ll probably need SageAttention and Triton installed.
It might still work without them if you rewire a few nodes. I left a note about that in the workflow, but I can’t guarantee it’ll run properly.
I didn’t build these workflows completely from scratch. I started with an existing one (don't know which one exactly) and just added whatever seemed useful for my setup.
I’m not an expert, so please keep in mind that I can only offer limited support if something doesn’t work right.
A Little Disclaimer
Before you ask - there’s no magic combination of settings I’m using to create my videos.
It’s honestly more trial and error than you’d expect. Sometimes I let my PC run overnight and wake up to 40 clips…
Out of those, maybe 2-3 are worth keeping. The rest are either hilarious, nightmare fuel, or just plain trash.
So don’t be discouraged if your first results look weird. That’s part of the fun.
Missing Files?
If you get a message about missing files when loading the workflow, don’t panic.
You can usually find those files just by googling their exact file names and downloading them into the matching folders inside your ComfyUI installation. Missing custom nodes can be installed via ComfyUI Manager.
Please don’t ask me where to get the files — I can’t provide help with that.
About “missing unet/clip” Warnings
You might see messages like this when running the workflow:
clip missing: ['encoder.block.0.layer.0.SelfAttention.q.scale_weight', ...]
That’s normal. It just means the checkpoint you’re using contains extra parameters (e.g. from a slightly different CLIP/T5 variant or a weight-normed build) that don’t have a 1:1 spot in your current text encoder/UNet. ComfyUI logs them as “missing,” but the model still loads and runs fine. If your outputs look normal, you can safely ignore these messages.
The Workflows
There are two versions:
I2V WAN MoEKsampler
I2V WAN Ksampler
I mainly use the WAN MoEKsampler workflow.
If you want to know exactly what it does, check out the GitHub page:
In short: it automatically splits the two samplers based on sigma values from the tensor.
So you don’t have to do any manual splitting. Just set your steps and hit Run.
If you can’t or don’t want to use the WAN MoEKsampler, there’s also a version with the standard KSampler Advanced.
That one works the same way, except you’ll need to handle the step splitting yourself.
Output Info
Both workflows:
Save the last frame after VAE decode, before any upscaling — this gives you a clean base image for the next run.
Export both a 16 fps version and an upscaled + interpolated 32 fps version.
Just make sure to set your save paths on those nodes before running.
Description
🎉 Update: Version 2.0
Upgraded with redesigned systems for image loading and overall accessibility.
🌟 What's New
🖼️ Image Loading System
The workflow now features a flexible dual-mode image loading system:
Batch Image Loader: Automatically processes entire folders of images sequentially
Single Image Loader: Traditional manual image upload
Smart Switch Node: Seamlessly toggle between both modes without rewiring
How to use Batch Mode:
Set the PrimitiveInt value to
0with control set toincrementSpecify your source folder path in node LoadImagesFromFolderKJ
Run the workflow once per image - it auto-increments and loads the next image each time
Perfect for processing 10, 20, or 100+ images without manual intervention
To switch back to single image mode: Use the Fast Groups Bypasser to disable the batch loader and enable the standard Load Image node. No need for manual rewiring.
🎨 Upscaling Approach
After testing various upscaling methods, I've kept the upscaling workflow:
Kept the reliable ImageScaleBy node with Lanczos
2.5x upscaling factor maintained
Why Lanczos? Testing showed that AI upscaling models like RealESRGAN can over-sharpen video frames, creating an artificial look. Lanczos provides a more natural, balanced result that's better suited for my video content.
⚡ Optimized Speed LoRAs
Updated for better performance with the latest distillation models:
High Noise LoRA changed:
OLD: Wan2.2-Lightning_I2V-A14B-4steps-lora_HIGH_fp16 @ 0.5NEW: Wan_2_2_I2V_A14B_HIGH_lightx2v_MoE_distill_lora_rank_64_bf16 @ 1.5
Important: If you're using SmoothMix Wan 2.2, disable the Speed LoRAs node - SmoothMix doesn't require speed LoRAs.
📚 Enhanced Documentation
Added comprehensive new guide notes directly in the workflow:
"Load Wan 2.2 Models" - Explains GGUF option for diffusion models
"SmoothMix Wan 2.2" - Critical reminder about Speed LoRAs compatibility
"Batch Image Loader" - Complete setup instructions with examples
"Dynamic Prompts Text Box" - Improved guide with alternative setup options
All notes use proper markdown formatting for better readability!
đź”§ Technical Changes
GGUF Support Prepared
Two new UnetLoaderGGUF nodes added (disabled by default) for optional GGUF quantized models:
High Noise:
Wan2.2-I2V-A14B-HighNoise-Q8_0.ggufLow Noise:
Wan2.2-I2V-A14B-HighNoise-Q8_0.gguf
Enable these if you want to use GGUF models instead of the standard safetensors.
Nodes Added:
Any Switch (rgthree)- Intelligent image source switchingUnetLoaderGGUF(x2) - GGUF model support
Nodes Removed:
PathchSageAttentionKJ(x2) - RemovedModelPatchTorchSettings(x2) - Removed
Layout Improvements:
Better node organization for clearer workflow visualization
New groups added: "Load Image" and "Batch Image Loader"
Changed group layout: Now you can only enable and disable groups where it actually makes sense
⚠️ Migration Notes
If you're upgrading from v1.0:
Speed LoRA settings have changed - if you customized these, please review
Batch loader can now be disabled via Fast Groups Bypasser
All your existing prompts and LoRAs will work without changes
🎯 Recommended Workflow
For Batch Processing:
Prepare a folder with your input images
Set PrimitiveInt to 0, control to "increment"
Enter folder path in LoadImagesFromFolderKJ node
Set your dimensions (portrait/landscape) (don't forget to set them in the Wan Image to Video node as well!)
Run workflow N times for N images - cool stuff.
For Single Images:
Use Fast Groups Bypasser to disable batch loader
Enable standard Load Image node
Upload your image manually
Run workflow as usual
🙏 Credits & Thanks
Thanks to you for supporting my endeavor on Civitai. It's just so much fun making videos for you and reading your comments. You're awesome.
Thanks to all the talented and knowledgeable LoRA creators. Without your work I wouldn't be able to do any of this.
Enjoy the new workflow! Let me know if you encounter any issues or have suggestions for v2.1! 🚀
FAQ
Comments (33)
Never fails.. I wake up to "Today I'm going to finish assembling that curated LoRA data" or whatever and end up chasing the shiny new workflow and "Triton" like what is this? I must have it.
Hey. Good to see you. Actually you don't need Triton or Sage for the workflow. That was a misconception on my part with the release of v1.0. I've wrote about it in the update notes you can find on the right side of the page under "About this version". edit: Updated main model text, change notes added.
I don't why i can't make a video, i can't augment the step, and the "video" just move a little and that's all and it's vague (ps im new with comfy)
I'm sorry but I can't really help you with an issue like this. What do you mean augment the step?
very interesting and good work on your workflow thank you for sharing other things and it can have a longer video on the same image without editing ???
You have to use the last frame to generate a new video and then manually stitch them together. This workflow has no automatic continueation build in.
Absolutely fantastic workflow, it just flat out works. Now we just need to know your T2I workflow and we'll all die from dehydration within a week!
That comment made my day. Hahaha. I'm glad you like it.
Really awesome workflow! Any way you can share how you produce videos that are 10 or 15 seconds longer? and/or how to seamlessly loop? Thank you!
10-15 seconds videos are pretty easy to do. You just use the save Last frame group, save that image and use it for the next run.
Loops are a bit different and not yet supported in the workflow as is. I'm working on a workflow for exactly this. Stay tuned.
@fatberg_slim Thank you for your response. I see, I've been trying to incorporate this by splicing other workflows, but I am still quite new at this. Looking forward to your next releases!
@fatberg_slim hey i am using your workflow 2.0 and i like it but i can't get the next run images to keep a consistent quality. by the time i am on the 3rd run the quality loss is bad - not artifacting or anything but just loses all texture consistency and is smoothed out. this isn't your workflow only, but i saw long vids even 40s or so with your workflow and there was no noticeable degradation. how can i fix this to keep the quality for much longer sequences?
@CosmicTelephone There’s no way around the quality loss and degradation. It simply adds up because of the VAE encode and decode steps. There’s no way to completely eliminate this. The only options I’m aware of are:
You get lucky with the last frame (not blurry, no artifacts, as clean as possible), which might allow you to get away with one more video generation.
You rely on clever editing and use very similar base images across your runs.
In the Version 3.0 I’m currently testing, I’ll add a node that lets you select which frame you want to save instead of always using the last frame. That way, you can choose a better starting frame. You’d still need to use a video editing tool afterward to stitch the clips together, though.
@fatberg_slim gotcha. thanks. idk why the samples i see on your page don't have the degradation i have. i was just using the defaults in the setup. i found a save/load latent node pack that you can run thru the sampler after the first run, you just switch the latent input for subsequent runs after the first and use the load latent button: https://github.com/eric183/ComfyUI-Only
and you can use an extra save last frame output and output it alongside the latent saves to keep track of the previous latent end frameÂ
@CosmicTelephone Thanks for the info, I'll look into the node you mentioned. My samples/videos do have the degradation when I do more than 2 off of a last frame, just as in your case. But I manually edit sometimes in Davinci Resolve so maybe a video seems like it's been made from last frames only but actually isn't. Which video specifically are you refering to?
How does this video achieve the duration of 30s through this workflow?
Well, part of the workflow is the node which saves the last frame. You take that saved last frame png-image and use it as the starting image for the next run and stitch together the parts with a editing software or ffmpeg. Usually you can do that to extend the video up to 15 or 20 seconds. After that, the quality starts to drop massively.
This workflow in combination with my FLF and Loop Workflows is the one I use most of the time for my extended videos because I Iike to iterate on prompts and also I like to edit manually.
Thank you for your reply, but there is a question. With the length of the video and the actions of the characters, the characters will gradually lose their consistency. How do you overcome this?
@ggw19880307 There’s no way around the quality loss and degradation. It simply adds up because of the VAE encode and decode steps. There’s no way to completely eliminate this. The only options I’m aware of are:
1. You get lucky with the last frame (not blurry, no artifacts, as clean as possible), which might allow you to get away with one more video generation.
2. You rely on clever editing and use very similar base images across your runs.
3. You go back to a starting image with better quality with my (or any other) FLF workflow and move on from that frame. That way you can more or less reset degredation and branch into another direction.
@fatberg_slim Yes, it's a helpless move. I tried to set the length to 178, and the video action will appear obvious cycle repetition, ah...
@ggw19880307Â Yeah, that's not possible with WAN Video in general. 81 frames is the sweet spot, 112 works too but it tends to loop.
If you want to extend without manual editing and fiddling around I'd suggest a SVI or similar workflow which has a video extend feature.
@fatberg_slim Thank you for your advice, but I still think that the effect of human intervention is the best, because human beings understand human beings better
@fatberg_slim Recently, I've noticed another thing, if a video is longer than 81 frames, it gets a little darker. because of this, the transition between videos is more noticeable. if they have different lengths. for example 5s+7s
@MixFixer Good eye! I noticed a color shift just now while editing a video. Now I know where that came from. Thank you. ❤️
I usually use 6-8s for looping video's and use 5 seconds when I want the last scene to change...
For example if you want a extended dance scene first to last frame can be the same and pasted after each other, only use extract last frame to generate further when you want to change the scene.
This significantly reduces quality loss since in a loop you can use the same first to last image over and over.
For example F2LF (loops 6-8s):
Dance slow
Dance
Dance fast
Then extract last frame (5s):
Dance turn
Continue the loop with the last frame (now starting from the back) F2LF (6-8s):
Dance slow
...
In this example you only lost quality one time but was able to generate longer video's.
Like fatberg said, the quality degrades over time but you can be lucky with a last frame being sharp enough to continue longer.
@Setian91Â That's useful information! Thanks for sharing and for the thorough explanation. Combining loops, F2LF, and extended last frame videos, you can create significantly longer videos.
My new favorite workflow. Great work!
Hey man, thank you. I'm glad you like the workflow. Should you have any suggestions for improvements, feel free to drop them.
What dimensions are your base images? since the upscale is set to scale_by 2.50. wondering what dimensions i should make the images since there is not a scale image node in this work flow. and dont want my pc to blow up since i only have 10gb or v ram.
My base images are almost always 832 x 1216. I render either at 480 x 720 and upscale by 2.5, or 480 x 832 and upscale by 1.5, or 720 x 1280 directly without upscale. With 10 GB Vram you should be fine with rendering at 480 x 720 and upscale by 1.5 or 2.
@fatberg_slim greatly appreciate the help. Thank you. Thanks for sharing.
Thanks for your awesome creations. Beautiful work
awesome and easy to use workflow, Thanks!!!