{"record":{"id":"553c47d178547610","repo":"Comfy-Org/ComfyUI","slug":"seedance-read-this-prompt-as-editing-the-reference","errorCode":null,"errorMessage":"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.","messagePattern":"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\\.","errorType":"validation","errorClass":"ValueError","httpStatus":null,"severity":"error","filePath":"comfy_api_nodes/nodes_bytedance.py","lineNumber":2292,"sourceCode":"        return await poll_op(\n            cls,\n            ApiEndpoint(path=f\"{BYTEPLUS_SEEDANCE2_TASK_STATUS_ENDPOINT}/{task_id}\"),\n            response_model=TaskStatusResponse,\n            status_extractor=lambda r: r.status,\n            price_extractor=_seedance2_price_extractor(\n                model_id, has_video_input=has_video_input, resolution=resolution\n            ),\n            poll_interval=9,\n        )\n    except Exception as exc:\n        if _SEEDANCE_AUDIO_POLICY_CODE in str(exc):\n            raise ValueError(\n                \"The provider rejected the audio track this model generated for the video \"\n                \"(possible copyright match). The video itself was fine. Turn off generate_audio \"\n                \"to get a silent video, or adjust the prompt and try again.\"\n            ) from exc\n        if _SEEDANCE_TASK_TYPE_CONSTRAINT_CODE in str(exc):\n            raise ValueError(\n                \"Seedance read this prompt as editing the reference video, and an edit always \"\n                \"takes its duration and aspect ratio from that video. Enable video_editing on \"\n                \"this node and run again, or reword the prompt so it describes a new video \"\n                \"rather than a change to the reference one.\"\n            ) from exc\n        raise\n\n\ndef _seedance2_price_badge(with_reference_videos: bool) -> IO.PriceBadge:\n    widgets = [\"model\", \"model.resolution\", \"model.ratio\", \"model.duration\"]\n    if with_reference_videos:\n        widgets.append(\"model.video_editing\")\n    has_video = (\n        '$exists(inputGroups) and $lookup(inputGroups, \"model.reference_videos\") > 0'\n        if with_reference_videos\n        else \"false\"\n    )\n    return IO.PriceBadge(","sourceCodeStart":2274,"sourceCodeEnd":2310,"githubUrl":"https://github.com/Comfy-Org/ComfyUI/blob/1c6d8d45b3693bfbb32385b410d813a7fd6be216/comfy_api_nodes/nodes_bytedance.py#L2274-L2310","documentation":"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.","triggerScenarios":"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.","commonSituations":"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.","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."],"exampleFix":null,"handlingStrategy":"validation","validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":["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."],"tags":["bytedance","seedance","video-editing","prompt","api-nodes"],"backgroundTag":null,"analyzedSha":"1c6d8d45b3693bfbb32385b410d813a7fd6be216","analyzedAt":"2026-08-14T19:37:18.893Z","schemaVersion":2},"datasetVersion":"2026-08-15T22:17:37.221Z"}