Wan 2.1 ControlNet - After
Wan 2.1 ControlNet - Before

The Wan 2.1 ControlNet workflow is designed to generate videos that are guided by pose, depth, and edge controls. This workflow leverages the capabilities of the Wan2.1 model, which is known for its robust handling of video-to-video transformations. The core of the workflow is built around several key nodes such as KSampler, CLIPTextEncode, and VAEDecode, which work together to process input video frames and apply stylistic transformations based on user-defined prompts. The use of ControlNet allows for precise control over video characteristics, making it possible to manipulate aspects like pose and depth with high accuracy.

Technically, the workflow begins by loading models and preparing the initial frame using nodes like CLIPVisionLoader and LoadImage. The WanFunControlToVideo node is crucial as it integrates ControlNet's functionalities to guide the video transformation process. The Sampling & Decode group, which includes nodes like ModelSamplingSD3 and UNetTemporalAttentionMultiply, ensures that the output video maintains high quality and coherence across frames. This workflow is particularly useful for creators looking to produce stylized videos with specific visual effects, offering a high degree of customization and control over the final output.

API

Use this workflow from code

Every Comfy workflow is a JSON graph. The payload below is this workflow, exactly as ComfyUI runs it — fetch it from the URL, keep it in version control, or load it in ComfyUI and run it node by node.

GET https://comfy.org/workflows/download/524727db7cac.json
Fetching workflow JSON…

Run it from Python or TypeScript with the Comfy SDK. The same code targets Comfy Cloud or a ComfyUI you host yourself — only the base URL changes.

# Install (beta)
pip install comfy-sdk        # Python
npm i @comfyorg/sdk          # TypeScript

# Run "Wan 2.1 ControlNet" (Python)
from comfy_sdk import Comfy

client = Comfy(api_key="comfyui-...")

# This workflow, exported in API format (see note below)
wf = client.workflows.from_file("wan2.1_fun_control_api.json")

asset = client.assets.from_file("input.png")
wf.set_input("52", "image", asset)  # LoadImage

wf.set_input("6", "text", "a women sticking out her toungue while mkaing wierd faces,(clay style:1.1)")  # CLIPTextEncode

job = client.run(wf)
for output in job.get_outputs("78"):  # SaveVideo
    output.to_file(output.name)

The SDK takes a workflow in API format: open this workflow in ComfyUI and use File → Export Workflow (API). API access requires a Comfy Cloud plan with an API key. SDK docs · Get an API key

FAQ

Frequently Asked Questions

View all workflows
Character
Cinematic
Image to Video
Lip Sync
Multiple Angles
Portrait
Style Reference
Style Transfer
Text to Video
Video Generation
Video
Showing 30 of 30 templates