Skip to content

v0.4.0 — 多源剪辑与 QC · 可携带剪映草稿 · 内容驱动创作流程 · 深度审查修复

Latest

Choose a tag to compare

@worldwonderer worldwonderer released this 26 Jul 16:29
dc59020

汇总 v0.3.3 之后的全部工作。完整条目见 CHANGELOG

新增

  • 贴合原片字幕带。 tools/measure_subtitle.py 抽帧检测原片字幕区并输出红框预览;--subtitle-y-top/--subtitle-y-bot 把新字幕基线与字号适配到测得坐标。
  • 半透明、解说时段遮罩。 默认 SUBTITLE_MASK_OPACITY=0.6 + SOURCE_SUBTITLE_MASK_TIMING=narration,原声留白不再常驻黑条。
  • 参考音色解说。 recap / voiceover 新增 --voice-ref,通过 mimo-v2.5-tts-voiceclone 克隆音色。
  • 建议性 MiMo QC。 --mimo-qc pre-assemble|post-render|both,观察聚合进 mimo_qc.json,全程不阻断交付。
  • 可携带剪映草稿。 素材默认打包进 Resources/local;timeline v2 支持变速、倒放、transform、富文本、转场/mask/LUT、绿幕复合。

内容驱动的创作流程

Agent 在剪辑或写稿前先比较剪辑假设,记录 POV、戏剧问题、change-based beats、audio_ownernarration_job。旁白比例改由素材决定,7:3 降级为粗略回退而非配额。

本轮深度审查修复的正确性问题

  • 画面锚点整体偏移 1/fps 秒。 ffmpeg 的 fps 滤镜首帧在源时间 0,而文件编号从 1 起——frame_00001.jpgt=0,第 n 帧是 (n-1)/fps。此前按 n/fps 计算,把 frame_facts、场景归属与 storyboard 标签整体推后 1/fps 秒(>5min 视频默认 fps=1,即整整一秒)。这些时间戳会作为权威画面锚点交给写稿 Agent。
  • 带封面图的素材渲染直接失败。 组装映射 0:v 会匹配到 attached_pic 那一路视频流,ffmpeg 报 Could not write header 并留下损坏文件——发生在整条流程的最后一步。
  • --clip-padding 非零时相邻片段被误判为重复素材,任意两个背靠背片段都会硬失败。
  • CLIP_PADDING 环境变量此前完全无效。

性能

file_fingerprint 按进程记忆化:一次理解流程原本要对源视频做 8–10 次全量 sha256、对整套抽帧做 2–3 遍(40 分钟视频约 2400 张全分辨率 JPEG)。另有 VLM 逐帧 base64 缓存改 LRU、续传缓存批量落盘、TTS 响度归一单遍化、缓存命中不再 ffprobe、黑白帧过滤并行。

配置面

每个配置旋钮只声明在读它的技能里,删除 583 条无效声明;新增不变量「任何技能不得声明自身从不读取的配置」。


升级提示

帧时间修复会提升帧/VLM 缓存版本,已有 work_dir 会重跑 VLM 分析(旧结果里烧进了偏移的时间戳)。ASR 与场景检测缓存不受影响,最耗时的转写结果得以保留。

环境要求

ffmpeg(烧录字幕需带 libass)+ 一个小米 MiMo API key。macOS / Linux / Windows。