SuperAPI AI 工具集

video-sync

设计与创作

查看项目

更新于 10-15 21:39

技能介绍

用途:将拉片数据(shots.json)与原片合成为一条带分镜信息面板的视频,画面与当前镜头信息并排显示,镜头切换时信息同步切换,镜头表自动滚动并高亮当前镜。

主要能力:版式按原片宽高比决定——横版/方版画面在上、信息在下(vstack),竖版画面在左、信息在右(hstack),画面原样缩放不裁不拉。面板只截三张图(底板、压暗长图、全亮长图),滚动与高亮由 ffmpeg 的 sendcmd 在切点驱动,53 镜约 12 秒完成截图。当前镜头钉在第二行,第 1、2 镜不滚,第 3 镜起每切一次上滚一行,切点处滚动 --ease(默认 0.45)秒到位后静止。行高由内容决定,高亮条按行高分层。

使用方式:脚本位于 {baseDir}/scripts/video-sync.mjs,零依赖,node 直接运行。先执行 plan 查看版式、画面区、面板区与输出尺寸;再执行 panels 渲染面板,产出 static.png、list-dim.png、list-lit.png、layout.json 及可预览的 panel.html;然后执行 compose 合成,音轨照搬原片(无声片自动不接音轨);也可用 export 一条龙完成。常用参数包括 --panel、--width、--height、--scale、--frames、--lang、--crf、--ease。改布局可编辑 {baseDir}/scripts/panel.css 后重跑 panels。合成后需抽帧验收,确认画面所属镜头、面板镜号与高亮行一致。自测命令为 node {baseDir}/scripts/selftest.mjs。

适用场景:需要把拉片结果与原片对照观看、检查分镜信息与画面是否对应的场合。

限制:不做拉片(需 video-shots 产出的 shots.json)、不剪辑不转场不配乐、不烧字幕到画面、不做逐帧渲染;shots.json 的 meta.durationSeconds 必须与原片一致;需要无头浏览器(Chrome/Chromium/Edge);词表在本 skill 内自带,不跨目录 import;滚动只发生在切点,镜头内面板静止。具体收费、价格与平台信息暂未提供。