{"record":{"id":"722bf4002d99fc07","repo":"Comfy-Org/ComfyUI","slug":"reference-audio-i-is-too-short-dur-1f-s-mini","errorCode":null,"errorMessage":"Reference audio {i} is too short: {dur:.1f}s. Minimum duration is 1.8 seconds.","messagePattern":"Reference audio (.+?) is too short: (.+?)s\\. Minimum duration is 1\\.8 seconds\\.","errorType":"validation","errorClass":"ValueError","httpStatus":null,"severity":"error","filePath":"comfy_api_nodes/nodes_bytedance.py","lineNumber":2813,"sourceCode":"                if dur < 1.8:\n                    raise ValueError(f\"Reference video {i} is too short: {dur:.1f}s. Minimum duration is 1.8 seconds.\")\n                total_video_duration += dur\n            except ValueError:\n                raise\n            except Exception:\n                pass\n        if total_video_duration > limits[\"max_total_seconds\"]:\n            raise ValueError(\n                f\"Total reference video duration is {total_video_duration:.1f}s. \"\n                f\"Maximum is {limits['max_total_seconds']} seconds.\"\n            )\n\n        total_audio_duration = 0.0\n        for i, key in enumerate(reference_audios, 1):\n            audio = reference_audios[key]\n            dur = int(audio[\"waveform\"].shape[-1]) / int(audio[\"sample_rate\"])\n            if dur < 1.8:\n                raise ValueError(f\"Reference audio {i} is too short: {dur:.1f}s. Minimum duration is 1.8 seconds.\")\n            total_audio_duration += dur\n        if total_audio_duration > limits[\"max_total_seconds\"]:\n            raise ValueError(\n                f\"Total reference audio duration is {total_audio_duration:.1f}s. \"\n                f\"Maximum is {limits['max_total_seconds']} seconds.\"\n            )\n\n        asset_labels = _build_asset_labels(\n            reference_assets,\n            reference_image_assets,\n            reference_video_assets,\n            reference_audio_assets,\n            len(reference_images),\n            len(reference_videos),\n            len(reference_audios),\n        )\n        prompt_text = _rewrite_asset_refs(model[\"prompt\"], asset_labels)\n","sourceCodeStart":2795,"sourceCodeEnd":2831,"githubUrl":"https://github.com/Comfy-Org/ComfyUI/blob/1c6d8d45b3693bfbb32385b410d813a7fd6be216/comfy_api_nodes/nodes_bytedance.py#L2795-L2831","documentation":"Each reference audio on the Seedance 2.5 reference node must be at least 1.8 seconds. Duration is computed locally as waveform length / sample_rate from the ComfyUI AUDIO dict, and clips shorter than the provider minimum are rejected during pre-flight, enumerated by 1-based position.","triggerScenarios":"A reference_audios input whose waveform duration in seconds is under 1.8 (very short voice snippet, truncated load, or mis-typed sample_rate in a hand-built AUDIO dict).","commonSituations":"Slicing a syllable from a voice track as a timbre reference; upstream trim nodes producing sub-2s outputs; AUDIO dicts constructed manually with a wrong sample_rate.","solutions":["Use a longer, cleaner voice sample of at least 2 seconds.","Pad or re-slice the audio so the waveform spans at least 1.8s at the declared sample_rate."],"exampleFix":null,"handlingStrategy":"validation","validationCode":"dur = int(audio[\"waveform\"].shape[-1]) / int(audio[\"sample_rate\"])\nif dur < 1.8:\n    raise ValueError(\"reference audio under 1.8s minimum\")","typeGuard":null,"tryCatchPattern":null,"preventionTips":["Slice voice references to at least 2 seconds of clean speech.","Verify sample_rate is correct in hand-built AUDIO dicts."],"tags":["bytedance","seedance","audio","validation","duration","api-nodes"],"backgroundTag":null,"analyzedSha":"1c6d8d45b3693bfbb32385b410d813a7fd6be216","analyzedAt":"2026-08-14T19:37:18.893Z","schemaVersion":2},"datasetVersion":"2026-08-15T22:17:37.221Z"}