实测旁白时长匹配表
只核对当前已实测声音能否放进已批准的时间预算。不会生成语音、重排镜头、改写既有口播,或建议偷偷加速配音。
输入
每段必须提供:narration_measured_ms(实测旁白毫秒)、approved_shot_ms(已批准镜头毫秒)、start_offset_ms(起播偏移毫秒)、allowed_pause_after_ms(段后允许停顿毫秒),并提供镜头版本号。最多 30 段,全部数值为非负整数毫秒。
若用户只给字数、文案或估算语速,先请求实测音频时长;若停顿或偏移缺失,说明无法确认合入,不能报通过。
核对与交付
逐段计算:可用时长 = 已批准镜头时长 − 起播偏移;所需时长 = 实测旁白时长 + 允许段后停顿;超出 = 所需时长 − 可用时长。段后停顿占用已批准镜头预算,不能增加旁白可用时长;正数即超出。输出逐段可用/所需/超出毫秒、结论、可执行待办,以及总计。超出小于当前旁白时长时,可建议缩稿后重新实测至少减少超出毫秒数,或申请延长镜头同等毫秒数。若起播偏移与停顿之和已大于镜头时长,即使删除全部旁白仍不能满足:明确列出剩余超出毫秒,只建议申请延长镜头;若二者恰好占满镜头,则保留本段旁白也只能申请延长,删除整段旁白另需确认。任何改稿都必须重新实测;不得自行缩短起播偏移、停顿或改变批准镜头。
可直接运行:python3 scripts/check_duration.py fixtures/within-budget-input.json。完整输入和交付示例见 成功样例、成功报告、段后停顿超时样例、失败样例 与 失败报告。