Nodes/FlowState-Creator-Nodes/🌊🍿 FlowState WAN Studio
ComfyUI Node

🌊🍿 FlowState WAN Studio

All-in-one Wan 2.2 video β€” including the two-expert MoE dance

By flowstatelabsΒ·Created 2 years agoΒ·Updated 11 months agoΒ· 25
🌊🍿 FlowState WAN Studio
  • starting_frame
  • audio
  • video
β—„model_label --- πŸ€– Model Settings --- β–Ί
β—„high_noise_model_nameβ–Ύβ–Ί
β—„low_noise_model_nameβ–Ύβ–Ί
β—„aumentation_label --- πŸ”₯ Augmentation Settings --- β–Ί
β—„high_noise_loraβ–Ύβ–Ί
β—„low_noise_loraβ–Ύβ–Ί
β—„style_loraβ–Ύβ–Ί
β—„encoders_label --- πŸ”£ Encoder Settings --- β–Ί
β—„clip_nameβ–Ύβ–Ί
β—„vae_nameβ–Ύβ–Ί
β—„video_label --- πŸŽ₯ Video Settings --- β–Ί
β—„resolutionβ–Ύβ–Ί
β—„orientationβ–Ύβ–Ί
β—„custom_width1024β–Ί
β—„custom_height1024β–Ί
β—„num_video_frames25β–Ί
β—„fixed_outputtrueβ–Ί
β—„save_label --- πŸ’Ύ File Save Settings --- β–Ί
β—„fps12β–Ί
β—„save_videofalseβ–Ί
β—„filename_prefixvideo/FlowState_WANStudioβ–Ί
β—„prompt_label --- πŸ“ Prompt(s) --- β–Ί
β—„pos_promptβœ… Describe the video you want WAN to create.β–Ί

Wan is where local video generation consolidated - Alibaba's open Apache 2.0 family, frozen at 2.2, and still the base most open video work sits on. FlowState WAN Studio is the pack's flagship: a single node that loads the models, runs the two-stage MoE sampling, decodes, and hands you a playable video. No graph of loaders, schedulers, and latent nodes to build. Type a prompt, optionally drop in a starting frame, and hit run.

The mechanism, and why it needs two models

Wan 2.2 is a mixture-of-experts video model: denoising is split between a high-noise expert that handles motion and composition and a low-noise expert that handles detail. That's why this node asks for two diffusion models - high_noise_model_name and low_noise_model_name - where you'd expect one. Internally it runs the high-noise model through the first half of the steps (KSamplerAdvanced, from step 0 to the midpoint) with noise added, then hands the partially-denoised latents to the low-noise model for the second half with add_noise disabled. It's the same split the community exploits with speed LoRAs on the low-noise pass only, just baked in so you never have to orchestrate it.

The node also:

  • Uses ComfyUI's WanImageToVideo to encode your prompt and prepare the latent batch (it handles text-to-video and image-to-video via the optional starting_frame).
  • Applies a fixed baked-in negative prompt - blurring, warping, blurred, morphing - so there's no negative field to fiddle with.
  • Decodes with tiled VAE decode (512px tiles, temporal overlap) because decoding a full video in one pass will OOM a mid-range card.
  • Assembles the frames with CreateVideo and optionally saves via SaveVideo, all internally.

Inputs that matter

  • high_noise_model_name / low_noise_model_name - the two Wan 2.2 expert checkpoints. On constrained hardware, Wan's 5B dense model runs in both slots; on a bigger card you use the 14B/27B MoE pair.
  • num_video_frames (25 default), fps (12 default) - length and playback speed. Keep fps near 12–16 for Wan.
  • fixed_output - this one's easy to misread. True means same output every run (the seed is pinned); False means it rolls a fresh random seed each run so you get variations. It's a seed-lock toggle wearing a confusing name.
  • resolution - presets plus a "Use Starting Frame Resolution" option that reads the dims off your starting_frame image, which is the sane way to do image-to-video.
  • save_video (False default) - if off, the node still hands back a video output you can route into FlowState_VideoPreview; flip it on and it writes to output/video/FlowState_WANStudio (the filename_prefix supports %date%-style tags).
  • pos_prompt - the whole text input. There's no negative prompt because the author hardcoded one.
  • audio (optional) - mux an audio track into the saved file.

Outputs

video (VIDEO). That's it - wire it to FlowState_VideoPreview to watch, or FlowState_VideoCreator if you want to control the container yourself.

Install

Pack install is the easy half:

cd ComfyUI/custom_nodes
git clone https://github.com/flowstateeng/FlowState-Creator-Nodes

then restart, or search FlowState-Creator-Nodes in ComfyUI Manager. No pip dependencies. The heavy half is the model files: two Wan diffusion models (high + low noise), the Wan text encoder (clip_name), and the Wan VAE (vae_name). Those are multi-gigabyte downloads, and unlike the pack they're non-negotiable.

Where people get burned

The #1 mistake is loading only one diffusion model and wondering why the dropdown for the other is empty - you need both populated. Second: if fixed_output is on and you change the prompt but get suspiciously similar motion, you're seeing seed-lock, not a bug; flip it off for variety. And sage_attention will sit on "disabled" until you install Sage Attention plus KJNodes - the suite's startup log tells you which is missing. Video is also just hungry: 25 frames at 1280Γ—720 on a 14B model will test a mid-range card, which is exactly why the tiled decode and the 5B dense option exist.

CategoryFlowState Creator Suite/Video

Inputs (25)

NameTypeDefaultDescription
model_labelSTRING --- πŸ€– Model Settings --- Label -------------------------------- - This field is not functional. It is just a label for the group of settings below.
high_noise_model_nameCOMBO Diffusion Model List -------------------------------- - List of available diffusion models.
low_noise_model_nameCOMBO Diffusion Model List -------------------------------- - List of available diffusion models.
aumentation_labelSTRING --- πŸ”₯ Augmentation Settings --- Label -------------------------------- - This field is not functional. It is just a label for the group of settings below.
high_noise_loraCOMBO LoRA List -------------------------------- - List of available Low-Rank Adaptation models. - Used to transfer a pre-trained style (cyberpunk, anime, photorealism, disney, etc.) to a generated output image.
low_noise_loraCOMBO LoRA List -------------------------------- - List of available Low-Rank Adaptation models. - Used to transfer a pre-trained style (cyberpunk, anime, photorealism, disney, etc.) to a generated output image.
style_loraCOMBO LoRA List -------------------------------- - List of available Low-Rank Adaptation models. - Used to transfer a pre-trained style (cyberpunk, anime, photorealism, disney, etc.) to a generated output image.
encoders_labelSTRING --- πŸ”£ Encoder Settings --- Label -------------------------------- - This field is not functional. It is just a label for the group of settings below.
clip_nameCOMBO CLIP / Text Encoder List -------------------------------- - List of available Text Encoders and CLIP models. - Used to convert your text prompts into semantic attention vectors (i.e., numbers) that the model can process. - Contrastive Language-Image Pre-training (CLIP)
vae_nameCOMBO VAE List -------------------------------- - List of available Variational Autoencoders (VAE). - Used to encode and decode images.
video_labelSTRING --- πŸŽ₯ Video Settings --- Label -------------------------------- - This field is not functional. It is just a label for the group of settings below.
resolutionCOMBO Resolution Selector -------------------------------- - Select "Custom" to use the entered custom_width & custom_height. - Select "Use Starting Frame Resolution" to use the resolution of the input image. - Select a preset resolution & orientation.
orientationCOMBO Orientaion Selector -------------------------------- - Resolutions given in horizontal orientation. Select vertical to swap resolution aspect ratio.
custom_widthINT102416–16384 Width -------------------------------- - Defines the width of the image.
custom_heightINT102416–16384 Height -------------------------------- - Defines the height of the image.
num_video_framesINT251–16384 Number of Video Frames -------------------------------- - The number of frames you want in your final video.
fixed_outputBOOLEANtrue Fixed Output -------------------------------- - Choose to get the same output every time or get variations.
save_labelSTRING --- πŸ’Ύ File Save Settings --- Label -------------------------------- - This field is not functional. It is just a label for the group of settings below.
fpsINT121–120 Frames Per Second -------------------------------- - The number of frames per second in the created video.
save_videoBOOLEANfalse Save Video -------------------------------- - Choose whether to save the video.
filename_prefixSTRINGvideo/FlowState_WANStudio Filename Prefix -------------------------------- - The prefix for the file to save. - This may include formatting information such as %date:yyyy-MM-dd% or %Empty Latent Image.width% to include values from nodes. - This is ignored if you choose not to save the video.
prompt_labelSTRING --- πŸ“ Prompt(s) --- Label -------------------------------- - This field is not functional. It is just a label for the group of settings below.
pos_promptSTRINGβœ… Describe the video you want WAN to create. Positive Prompt -------------------------------- - βœ… Describe the video you want WAN to create.
starting_frameoptIMAGE Starting Frame -------------------------------- - Optionally, select an input image to use as the starting frame.
audiooptAUDIO Video Audio -------------------------------- - Optional audio to be added to the video.

Outputs (1)

NameTypeDescription
videoVIDEOThe created video.