Skip to main content

ai-videos

AI 短剧「首尾帧接缝」一键调优+拼接+评分工具。当用户说"调优/拼接 epN""用 seam_tune 拼 epN""给 epN 接缝调参/评分""seam 调优""拼接 ep2""出 ep3 的片"或想对某集出片并优化承接缝平滑度时触发。它对指定 ep 跑 tools/seam_tune.py(扫 裁切/交叉融帧/RIFE直采补帧/光流变速重排 候选为每个承接缝找最平滑接法·写回 seam_plan.json·拼出 ep{NN}.mp4)+ tools/seam_metrics.py(光流+SSIM 打分·存 dashboard sidecar),报告每缝最优接法/分数/秒数区间;帧差>40 的缝扫 trim/blend/外部桥接救援集并报 prompt 问题。参数=ep 编号(如 ep2、3)。

معلومات المصدر

المستودع
finalde/spec_coding
آخر نشاط في المصدر
٢٥ يوليو ٢٠٢٦ في ٠٧:٢٧
لغة SKILL.md المكتشفة
الصينية
النجوم
٠
التفرعات
٠

خيارات التثبيت

يُحدَّد Prompt الذي يراجع المصدر أولًا بشكل افتراضي. يمكنك التبديل إلى أمر مباشر أو تنزيل نسخة محلية.

مراجعة ملفات المصدر

اقرأ SKILL.md وأي ملفات مرافقة يعرضها SkillsMP قبل أن تقرر التثبيت.

عرض SKILL.md

SKILL.md
تعليمات المصدر · معاينة للقراءة فقط
name
ai_videos__拼接调优
description
AI 短剧「首尾帧接缝」一键调优+拼接+评分工具。当用户说"调优/拼接 epN""用 seam_tune 拼 epN""给 epN 接缝调参/评分""seam 调优""拼接 ep2""出 ep3 的片"或想对某集出片并优化承接缝平滑度时触发。它对指定 ep 跑 tools/seam_tune.py(扫 裁切/交叉融帧/RIFE直采补帧/光流变速重排 候选为每个承接缝找最平滑接法·写回 seam_plan.json·拼出 ep{NN}.mp4)+ tools/seam_metrics.py(光流+SSIM 打分·存 dashboard sidecar),报告每缝最优接法/分数/秒数区间;帧差>40 的缝扫 trim/blend/外部桥接救援集并报 prompt 问题。参数=ep 编号(如 ep2、3)。
# 首尾帧接缝调优 + 拼接 + 评分(seam tune / stitch / score) 把「找最优裁切&补帧参数 → 用最优方案拼成片 → 客观打分存 dashboard」串成一条命令工序,对**任意一集**反复调用。底层是两个仓库工具:`tools/seam_tune.py`(调优+拼接)与 `tools/seam_metrics.py`(评分),本 skill 只是按标准流程驱动它们并把结果讲清楚。 ## 何时用 用户给一个 ep 编号要「调优 / 拼接 / 出片 / 接缝评分」时。典型:「调优 ep2」「拼接 ep3」「给 ep2 接缝调参并出片」「ep5 接缝评分」「seam_tune 跑一下 ep4」。 ## 入参 **唯一参数 = ep 编号**(`ep2` / `2` / `ep02` 都接受)。可选:用户指定 drama(默认 `wushen_juexing`)、是否只调不出片、是否要多接法对比。 ## 步骤 ### 1. 解析 ep 目录 把编号零补到两位(`2`→`ep02`),用 Glob 找含 `seam_plan.json` 的 ep 目录: `ai_videos/**/episodes/ep{NN}/seam_plan.json` - 命中唯一 → 用它。 - 命中多个(多个 drama)→ 用 `AskUserQuestion` 问哪个 drama(AUTONOMOUS 模式则选 `wushen_juexing` 并在结尾注明)。 - 命中 0 个 → 报「ep{NN} 没有 seam_plan.json / 该集还没分镜」,停。 记 `EPDIR` = 该 ep 目录(路径含中文 `5_6_分镜与prompt`,下面命令务必整段加引号)。 ### 2. 调优 + 拼接(seam_tune) 从仓库根 `C:\workspace\spec_coding` 跑(**必须** `PYTHONIOENCODING=utf-8`,否则中文路径的 print 在 Windows cp1252 stdout 上会崩): ```bash PYTHONIOENCODING=utf-8 python -u tools/seam_tune.py "<EPDIR>" --apply --build ``` - 它对每个**首尾帧承接缝**(由 shot 的 `衔接=承接` 决定,与当前 plan 方法无关,故已调过的缝仍会被重调)扫**四类候选**(2026-07-05 智能补帧升级,follow-up 155):`trim`(裁切平接)、`blend`(交叉融帧=剪映帧融合,`--blends 2,4,6` × 全裁切网格——2026-07-08 起与 rife 同等采样,旧版只在 trim=0.10 一个点上扫、3 个候选 vs RIFE 18 个,是「全选 RIFE」的采样偏置来源之一)、`rife`(RIFE **直接时间步**补帧 `-s t`,`--frames 3,5,7` × 全裁切网格;旧 `--depths` 二分法默认关闭、opt-in)、`retime`(**光流变速**重排——不裁内容、按光流运动量把减速-加速曲线拉平,`--windows 0.35,0.5,0.65`)。RIFE 一律带 `-m` 模型(默认自动选 exe 旁最新 v4 模型,如 rife-v4.25;老代码不传 `-m` 等于在用 2021 年的 v2.3)。每缝还测一次 **LAB 色差**(A 尾窗 vs B 头窗,follow-up 156):≥5 自动开**色彩对齐**(对 B 头部 ~0.6s 做衰减式色彩迁移、接缝处对齐 A、时长不变),全部候选统一施加后再比。每个候选用与 dashboard **同一套 cv2 四指标**打分,按**「无短板」分层规则**选最优(2026-07-07 用户指示「让四个面向没有短板——91/91/91/91 比 100/100/100/90 好」):**先比四项是否全 ≥80(达标的优先);两档内均按 leximin(字典序 maximin——先最大化最短板,再比次短板,依次类推),不是按加权平均**——达标档用整数桶(1 分的最短板优势即胜,故均衡的 91/91/91/91 胜过尖峰的 100/100/100/90),未达标档用 5 分死区(低分硬伤板往往结构性无法修复、其 13.2-vs-13.7 噪声不该左右选择,跨过持平最短板去比下一档);**加权分仅在指标向量并列时做最后 tiebreak**;仍不达标时走**方法公平的升级阶梯**(2026-07-08 补齐最短板指示——救援不许只喂 RIFE):① 深裁切 0.24/0.30/0.40(越带缝也可用)→ ② 大融帧 8/12(最优融帧裁切上;越带缝也可用)→ ③ 更长直采桥 11/15 帧(难缝的接缝突变随桥变长而摊薄,实测 ep01 shot10→11 15f 优于 blend)→ ④ 备选 RIFE 模型轴 → ⑤ 更长变速窗 0.7/0.9s;**基础扫描不达标就整梯全跑、无级间早停**(早停会让「谁先擦过及格线谁赢」取决于梯级顺序而非 leximin 优劣),跑完对全部候选统一按 leximin 选优;候选按参数签名全局去重、不重复构建。每缝结尾打印**「各方法最优」对比行**,RIFE 赢/输一眼可审计。`--apply` 写回 `seam_plan.json`,`--build` 拼出 **`ep{NN}.mp4`**(默认正式名)。承接缝不会被选成裸硬切(至少裁切)。 - 该命令较慢(每缝建多个临时拼接 + RIFE 试桥),用 `run_in_background` 跑、跑完读输出。 - 变体:用户只想看参数不出片 → 去掉 `--build`;只想试不写盘 → 去掉 `--apply`。 **prompt 问题识别与救援**:输出里若有 `seam ...: ... PROMPT problem`(承接帧差 >40,首尾帧根本不匹配)→ 光流补帧会糊,该缝只扫**救援集**(trim / blend / external),**如实报给用户这是该 shot 的 prompt/承接帧问题**(建议重锁首尾帧或改运镜对齐景别)。临时出路:把两张接缝帧喂给 即梦/Kling「首尾帧」生成过渡段,命名 `bridge_{前镜}_{后镜}.mp4` 放进 `<EPDIR>/bridges/`,重跑本 skill 即自动作为 `external` 候选参与评分。另一条更根治的通道:该缝若剧情上确属运动中承接,按 ai_video.md 衔接与接缝契约 v2 §4 把 B 镜改「运动承接」重生——平台视频延续/延展、或上镜末 3s 作运动参考 + ~1s 动作重叠——比后期桥接优先。 ### 3. 评分 + 存 dashboard(seam_metrics) ```bash PYTHONIOENCODING=utf-8 python -u tools/seam_metrics.py "<EPDIR>" --no-compare --save ``` - 给每个承接缝打分(M1 速度连贯 / M2 无冻结 / M3 无跳变 / M4 结构=SSIM 与运动补偿残差比取更差,加权均)+ **秒数区间**,`--save` 写 `ep{NN}.seam_scores.json`(打开该集页面自动显示 dashboard)。打分前**先按运动补偿残差的局部突出度经验定位真实接缝帧**(不信时长推算,dedup 会偏一两帧),否则硬切会因定位偏移漏测而虚高、RIFE 反被比下去。 - 用户要「多接法对比排名」→ 去掉 `--no-compare`(慢,每缝再跑硬拼/裁切/RIFE)。 ### 4. 报告 给用户讲清楚: - 每个承接缝:最优接法 + 参数(如 `trim@0.10`)、**分数**、在成片里的 **@秒数(区间)**。 - 全集 **总分 + 等级**(A/B/C/D)。 - ep{NN}.mp4 是否已生成。 - 若有 prompt 问题缝:单独列出、说明要改 prompt 不是改参数。 ## 注意 - 只动**首尾帧承接缝**;硬切缝不碰。 - 反复可调用:对已是 trim 的缝也会重调,不会跳过。 - 仅按 plan 拼请走 webapp「拼接成片」按钮;**调优必须用本 skill / `seam_tune`**(webapp 不调优)。 - 评分慢(光流),`seam_metrics` 也用 `run_in_background`。 - 默认 INTERACTIVE:drama 不明就问;AUTONOMOUS 模式不问、按默认并注明。
عرض على GitHub