Comfy-Org/ComfyUI · error · ValueError

Minimum supported duration for Seedance 1.5 Pro is 4 seconds

Error message

Minimum supported duration for Seedance 1.5 Pro is 4 seconds.

What it means

Raised by ByteDanceTextToVideoNode when model is 'seedance-1-5-pro-251215' and the duration widget is below 4. Seedance 1.5 Pro cannot generate clips shorter than 4 seconds; the node validates this before building the '--duration' prompt suffix and calling the video API.

Source

Thrown at comfy_api_nodes/nodes_bytedance.py:1520

            is_api_node=True,
            price_badge=PRICE_BADGE_VIDEO,
        )

    @classmethod
    async def execute(
        cls,
        model: str,
        prompt: str,
        resolution: str,
        aspect_ratio: str,
        duration: int,
        seed: int,
        camera_fixed: bool,
        watermark: bool,
        generate_audio: bool = False,
    ) -> IO.NodeOutput:
        if model == "seedance-1-5-pro-251215" and duration < 4:
            raise ValueError("Minimum supported duration for Seedance 1.5 Pro is 4 seconds.")
        validate_string(prompt, strip_whitespace=True, min_length=1)
        raise_if_text_params(prompt, ["resolution", "ratio", "duration", "seed", "camerafixed", "watermark"])

        prompt = (
            f"{prompt} "
            f"--resolution {resolution} "
            f"--ratio {aspect_ratio} "
            f"--duration {duration} "
            f"--seed {seed} "
            f"--camerafixed {str(camera_fixed).lower()} "
            f"--watermark {str(watermark).lower()}"
        )
        return await process_video_task(
            cls,
            payload=Text2VideoTaskCreationRequest(
                model=model,
                content=[TaskTextContent(text=prompt)],
                generate_audio=generate_audio if model == "seedance-1-5-pro-251215" else None,

View on GitHub (pinned to 1c6d8d45b3)

Solutions

  1. Set duration to at least 4 seconds for seedance-1-5-pro-251215.
  2. Switch to a non-1.5-Pro model if a 3-second clip is a hard requirement.

Example fix

// before
model: seedance-1-5-pro-251215
duration: 3 // -> raises

// after
duration: 4 // passes
Defensive patterns

Strategy: validation

Validate before calling

if model == 'seedance-1-5-pro-251215':
    duration = max(duration, 4)  # or raise, per your policy

Prevention

When it happens

Trigger: Selecting seedance-1-5-pro-251215 with duration=3 (or lower) on the text-to-video node; durations are otherwise constrained by the widget but 3s is valid for older Seedance models.

Common situations: Reusing a workflow tuned for Seedance 1.0 (which allows 3-12s) after switching the model dropdown to 1.5 Pro; trying to save credits with a short clip.

Related errors


AI-assisted analysis of Comfy-Org/ComfyUI@1c6d8d45b3 (2026-08-14). Data as JSON: /api/errors/e24cb6e00118067b. Report an issue: GitHub.