Nodes/ComfyUI_Wan/Wan Text-to-Video Generator
ComfyUI Node

Wan Text-to-Video Generator

Text-to-video, no GPU, no weights, no waiting on a render queue

By ru4ls·Created 12 months ago·Updated 11 months ago· 3
Wan Text-to-Video Generator
    • video_file_path
    • video_url
    modelwan2.2-t2v-plus
    promptA kitten running in the moonlight
    regioninternational
    negative_prompt
    resolution1080P
    prompt_extendtrue
    watermarkfalse
    seed0
    output_dir./videos

    Pure text-to-video is the honest-to-God hardest mode in video generation: no anchor image, no fixed first frame - just your words and the model's imagination. WanT2VGenerator ("Wan Text-to-Video Generator") from the ru4ls/ComfyUI_Wan pack gives you that over Alibaba's DashScope API, on your pick of the hosted Wan text-to-video models. Prompt in, 5-second mp4 out, billed per job.

    It's the sibling of the pack's I2V node, and worth saying plainly: T2V is usually the weaker sibling. Without a start image, consistency and composition rest entirely on the model, and the same prompt that nails an I2V clip can drift in T2V. Reach for this when you have no source image - you're generating from pure description, which is a real use case, just a less forgiving one.

    How it works

    Same async dance as the rest of the pack: POST your prompt to the DashScope video-synthesis endpoint with X-DashScope-Async: enable, get a task_id, poll every 10 seconds up to 60 attempts, then download the finished clip to output_dir. Outputs are video_file_path and video_url; preview by feeding the path into a "Load Video (Path)" node from ComfyUI-VideoHelperSuite - the README's standard tip for every video node here.

    Inputs that matter

    • model - four hosted options: wan2.5-t2v-preview, wan2.2-t2v-plus (default), and the wanx2.1-t2v-turbo / wanx2.1-t2v-plus editions. Wan 2.2 was the last open-weights release, so the 2.5 preview is API-only; this node is the way to touch it.
    • prompt - required, multiline. Write action-forward prose: "a kitten running in the moonlight, camera tracks alongside." Wan wants motion described, not vibes.
    • resolution - 480P, 720P, 1080P. Note the default here is 1080P, not 720P like the other video nodes - a heavier (and pricier) default, so drop it to 720P for iteration.
    • negative_prompt - optional; useful for banning artifacts.
    • prompt_extend - on by default. This is the one node where it earns its keep: T2V has nothing to anchor to, so Alibaba's prompt rewriting can meaningfully improve adherence. Turn it off only if you need your exact words.
    • seed, watermark, output_dir - the usual. Seed 0 is random.

    Install and setup

    ComfyUI Manager, search ComfyUI_Wan, or:

    cd ComfyUI/custom_nodes
    git clone https://github.com/ru4ls/ComfyUI_Wan.git
    pip install -r ComfyUI_Wan/requirements.txt
    

    Restart, then copy config/.env.template to config/.env in the pack folder and set DASHSCOPE_API_KEY (plus DASHSCOPE_API_KEY_CHINA for the mainland China region). Dependencies are light - requests, Pillow, numpy, python-dotenv - because generation happens on Alibaba's hardware. Paid per job, flagged in the README.

    Where it fits

    The realistic play is to use T2V for discovery - moodboards, style tests, "what does this scene even look like moving" - and switch to I2V once you have a frame you like. The pack's I2V node anchors that frame and gives you the consistency T2V can't promise. If you have a GPU and the patience, local Wan 2.2 T2V is the free, open-weight alternative; this node is the no-VRAM path to the newer hosted models. Just set your resolution to 720P while you iterate, or your bill will tell the story.

    CategoryRu4ls/Wan

    Inputs (9)

    NameTypeDefaultDescription
    modelCOMBOwan2.2-t2v-plus4 options: wan2.5-t2v-preview, wan2.2-t2v-plus, wanx2.1-t2v-turbo, wanx2.1-t2v-plus
    promptSTRINGA kitten running in the moonlight
    regionCOMBOinternational2 options: international, mainland_china
    negative_promptoptSTRING
    resolutionoptCOMBO1080P3 options: 480P, 720P, 1080P
    prompt_extendoptBOOLEANtrue
    watermarkoptBOOLEANfalse
    seedoptINT00–2147483647
    output_diroptSTRING./videosDirectory where the generated video will be saved. Browse to select a custom directory.

    Outputs (2)

    NameTypeDescription
    video_file_pathSTRING
    video_urlSTRING