SAOS-3624/dsh-video-storyboard
AI 工程把一段视频压成一张分镜宫格图加带时间码的文本清单,供大模型快速看懂视频内容。
dsh-video-storyboard 是一个插件:让能读文字的模型通过「一张编号宫格图 + 一份按时间对齐的文本清单」来"看"视频。每格给出起止时间、切了几刀、这一格的台词。它面向的是想先搞清楚"这段片子讲了什么"的 Agent,而不是逐帧辨字。
工作方式
它不走"逐帧抽图"(README 说 10 分钟片子按 1 fps 抽就是 600 张图),也不只喂字幕,而是把画面缩到 64×36 逐帧比 HSV(色相按环形距离、按饱和度降权)来检测切点,再对每个 2 秒窗口用一帧间隔重判快闪,最后按"密度积分"等分格位。单图上限 384 token,README 报告一次调用总量约 1,900 token。文本清单只给原材料——时间、刀数、台词——数字不可信时直接标注 cut count unreliable here,不写"这是高潮"之类结论。
四个工具与典型流程
文档列出四个工具:video_probe 只读容器头、不花图片 token;video_storyboard 出宫格图加清单;video_zoom 对某段用更小时间窗、更密格;video_locate 纯文本从一句话定位时间码。典型流程是先 probe,再 storyboard,觉得某段重要再 zoom。每次保存还会写一份 <name>.evidence.json,记录每格起止时间与取帧时刻,便于人和脚本对着原片复核——这也回应了宫格图本身细节不足的问题。
依赖条件
- ffmpeg + ffprobe 必须装,不装第一步就报错;插件不打包它们。
- yt-dlp 可选,只有贴 B 站/YouTube 链接才需要;本地文件不用它。
- ASR 可选:不配也能出图,只是清单里没有台词。转写按优先级取:视频自带字幕轨 →
transcriptFile提供的 SRT/VTT/JSON → ASR(本地 sherpa/funasr 服务,或任何 OpenAI 兼容云端,配置写在~/.dsh/asr.json)。云端 ASR 不填 key 会静默跳过。 - B 站需要登录的视频(HTTP 567、1080P+)可能需要导出 cookies 文件;先下载成本地文件再传路径可以绕开。README 提醒 cookies 里的
SESSDATA等同登录凭证。
文档写明的限制
画面小于约 1% 的改动(比如 PPT 上多一行字)在 64×36 上看不见;连续运镜密集时 cuts=N 会失真;极暗素材的取帧锐度判断不稳;分格摊开后子帧最小约 100×56。说话人分离和烧时间码是明确不做的。格子分辨率约 331×184,远低于整帧,想读小字要再花一次 video_zoom 的成本。README 的对比表也列出了它自认不如别人的场景:多轮追问、可复核结论、逐帧辨字。
HotRepo 点评
该项目仅在 2026-10-29 的新项目榜(javascript)上被观察到一次(106 总星,#22),没有可比的每日榜历史,无法据此判断热度走向。适合用它做"这段视频讲了什么"的廉价第一遍;如果需要逐帧辨字或对同一片子反复追问,就不合适。
本文由 AI 根据项目 README 生成,更新于 2026年10月29日,以项目官方文档为准。