Nodes/Protoface/Protoface Seedance 2.5 · Text to Video
ComfyUI Node

Protoface Seedance 2.5 · Text to Video

Thirty seconds from a prompt, at flagship prices

By protoface-ai·Created 22 days ago·Updated 13 days ago· 0
Protoface Seedance 2.5 · Text to Video
    • video
    • files
    • run id
    ◄prompt►
    ◄resolution720p►
    ◄duration5►
    ◄aspect_ratio16:9►
    ◄generate_audiotrue►
    ◄reference_audios▾►
    ◄reference_images▾►
    ◄reference_videos▾►
    ◄generation_id0►
    ◄request_scope►

    The pitch and the catch

    Seedance 2.5 is the current flagship of a line ByteDance has never released as weights. Text in, up to 30 seconds of 4K video with native audio out, aspect_ratio included, reference images/videos/audio as optional inputs. If you want the best-looking generated video the pack can produce from a prompt alone, it's this node.

    The catch is the same one the subreddit raised the moment Seedance showed up in ComfyUI, and it hasn't softened with a version number: this is metered, per second, at rates that make iteration a budgeting exercise. The catalog that ships with the pack prices output at roughly 10 credits a second at 480p, 23 at 720p, 59 at 1080p and 180 at 4K, with a four-second minimum. Five seconds at 1080p is a few hundred credits; thirty seconds at 4K is a very deliberate purchase. Nobody is wrong to find that steep - and nobody is wrong that it's simply what frontier video costs when the subsidy ends.

    How the node works

    Protoface is a third-party aggregator; the pack is one shared implementation wearing per-model controls generated from the provider's public request schema. This node builds the request, uploads any references, submits an async job, polls it (two seconds by default, two hours max), downloads the result, and returns a native ComfyUI VIDEO. Your prompts and reference media go to their servers. That's the whole design.

    The controls

    prompt: scene, action, camera movement, mood. With a 30-second run, structure helps - describe the shot as two or three phases rather than a single frozen moment, because the model has time to do more than one thing.

    resolution (480p/720p/1080p/4K), aspect_ratio (16:9, 9:16, 4:3, 3:4, 1:1, 21:9), duration (4–30). These three determine the bill more than anything you type.

    generate_audio defaults true. Native audio is the family's signature; leave it on unless you're scoring elsewhere.

    reference_images, reference_videos, reference_audios are dynamic list inputs - native media nodes, asset ids, public URLs. This is secretly a reference-to-video node: a character sheet, a location and a voice, wired in, turns a prompt into direction. Attach a reference video and its input seconds are metered on top of your output, capped at 30 seconds.

    generation_id: paid-job handle. Keep it fixed and requeue with identical inputs to resume; increment for a genuinely new generation. request_scope: auto-assigned, non-secret, and only your headless script needs to care.

    Outputs: video (list), files (all originals), run id (feeds Resume Run).

    Install

    ComfyUI 0.41.0+ and Python 3.10+.

    cd ComfyUI
    git clone --branch v0.1.0 --depth 1 https://github.com/protoface-ai/protoface-comfyui.git custom_nodes/protoface
    python -m pip install -r custom_nodes/protoface/requirements.txt
    

    Or Manager: Extensions → Protoface → install protoface-nodes → restart, reload browser. Use ComfyUI's interpreter for pip. Then click Protoface in the lower-right and paste a key from your Protoface account, or export PROTOFACE_API_KEY on a headless box. Four small dependencies, no models, no torch risk.

    Where people get burned

    Discovering the price at 4K. The usual sequence: prompt, default 720p, looks good, bump to 4K, queue thirty seconds, wince. Draft at 480p, short. Then pay once for the keeper.

    30 seconds when 8 would do. Most shots don't need it. Long generations are also harder to steer - more time for the model to invent something you didn't ask for.

    Bumping generation_id to retry. That's a second paid job. A poll timeout is a recoverable job; requeue unchanged or recover with the run id in Resume Run.

    Wiping ~/.cache/protoface-comfyui. That directory is the request journal - deleting it destroys your recovery path for unresolved paid submissions. Move it with PROTOFACE_STATE_DIR, don't delete it.

    Shared servers. Interactive keys stay out of exported workflows, but anyone who can queue on the instance can spend them.

    Should you use it?

    Yes, for the one shot per project that has to look expensive. No, as a default - the tier structure exists precisely so you don't have to run every idea through the flagship, and this node is the reason Seedance 2.0 Mini and Fast exist.

    CategoryProtoface/Video/bytedance

    Inputs (10)

    NameTypeDefaultDescription
    promptSTRINGDescribe the scene, action, camera movement, and mood for the video.
    resolutionCOMBO720pThe output video resolution.
    durationINT54–30The duration of the generated video in seconds (4-30s).
    aspect_ratioCOMBO16:9The aspect ratio of the generated video.
    generate_audioBOOLEANtrueWhether to generate native audio synchronized with the output video. Defaults to true.
    reference_audiosCOMBOPublic URLs, data URIs, or asset ids.
    reference_imagesCOMBOPublic URLs, data URIs, or asset ids.
    reference_videosCOMBOPublic URLs, data URIs, or asset ids.
    generation_idINT00–9007199254740991Keep fixed to reuse/resume this paid job. Increment for a fresh paid generation; independent of the model seed.
    request_scopeSTRINGAutomatically assigned per node. Headless clients must supply a stable unique workflow/node ID. This is not a secret.

    Outputs (3)

    NameTypeDescription
    videoVIDEO—
    filesPROTOFACE_FILE—
    run idSTRING—