Comfy-Org/ComfyUI · error · ValueError
Seedance read this prompt as editing the reference video, an
Error message
Seedance read this prompt as editing the reference video, and an edit always takes its duration and aspect ratio from that video. Enable video_editing on this node and run again, or reword the prompt so it describes a new video rather than a change to the reference one.
What it means
Raised when the BytePlus task fails with 'InvalidParameter.TaskTypeConstraint': Seedance classified the prompt as a video EDIT of the reference video rather than a new generation. Edits take duration and aspect ratio from the reference clip, so the requested duration/ratio widgets conflict with the task type. The node maps this provider code to an actionable ValueError telling the user to either enable video_editing mode or reword the prompt.
Source
Thrown at comfy_api_nodes/nodes_bytedance.py:2292
return await poll_op(
cls,
ApiEndpoint(path=f"{BYTEPLUS_SEEDANCE2_TASK_STATUS_ENDPOINT}/{task_id}"),
response_model=TaskStatusResponse,
status_extractor=lambda r: r.status,
price_extractor=_seedance2_price_extractor(
model_id, has_video_input=has_video_input, resolution=resolution
),
poll_interval=9,
)
except Exception as exc:
if _SEEDANCE_AUDIO_POLICY_CODE in str(exc):
raise ValueError(
"The provider rejected the audio track this model generated for the video "
"(possible copyright match). The video itself was fine. Turn off generate_audio "
"to get a silent video, or adjust the prompt and try again."
) from exc
if _SEEDANCE_TASK_TYPE_CONSTRAINT_CODE in str(exc):
raise ValueError(
"Seedance read this prompt as editing the reference video, and an edit always "
"takes its duration and aspect ratio from that video. Enable video_editing on "
"this node and run again, or reword the prompt so it describes a new video "
"rather than a change to the reference one."
) from exc
raise
def _seedance2_price_badge(with_reference_videos: bool) -> IO.PriceBadge:
widgets = ["model", "model.resolution", "model.ratio", "model.duration"]
if with_reference_videos:
widgets.append("model.video_editing")
has_video = (
'$exists(inputGroups) and $lookup(inputGroups, "model.reference_videos") > 0'
if with_reference_videos
else "false"
)
return IO.PriceBadge(View on GitHub (pinned to 1c6d8d45b3)
Solutions
- Enable the video_editing option on the node so the edit task type is requested deliberately.
- Reword the prompt so it describes a new video (subject/action/scene) rather than a modification of the reference video.
- If editing was intended, accept that duration and ratio come from the reference video and remove conflicting settings.
Defensive patterns
Strategy: validation
Prevention
- Enable video_editing whenever a reference video is connected and the prompt modifies it.
- Phrase reference-video prompts as new content ('a video of X doing Y') rather than edits ('change X in this video').
- Remember edits inherit duration and ratio from the reference clip; do not set conflicting widgets.
When it happens
Trigger: A reference video is connected and the prompt reads like an edit ("make the sky in this video red", "add a hat to the person"), but the node was not set to video_editing mode, or duration/ratio were set explicitly while the provider inferred an edit task type.
Common situations: Using i2v-style edit prompts with the generate node; new users unaware that Seedance does prompt-based task classification; switching from Seedance 1 to 2 workflows where edit handling differs.
Related errors
- Reference asset {i} (Id={asset_id}) is not Active (Status={r
- Seedance session {session.session_id} completed without a gr
- Minimum supported duration for Seedance 1.5 Pro is 4 seconds
- --{i} is not allowed in the prompt, use the appropriated wid
- The provider rejected the audio track this model generated f
AI-assisted analysis of Comfy-Org/ComfyUI@1c6d8d45b3 (2026-08-14).
Data as JSON: /api/errors/553c47d178547610.
Report an issue: GitHub.