1仕組みと動作原理
デフォルトの基本方針は「キャンバス除去よりもUI保持を優先」:ズームやスクロールの全編にわたり主要UIが常時視認でき、かつ検証フレームで最もタイトなクロップの成立が確認できた場合にのみクロップを実行する。
Default to preserving UI over removing background canvas.
トリムやリタイミングを決定する前に、まず moment map(録画タイムスタンプ / 視認可能な内容 / 対応するナレーションフレーズ / 目標グローバル時間 / カーソルの重要度 / スクロール位置の重要度 / 字幕の重複 / クロップの安全性)を作成する。
Create a moment map before editing:
イン・トランジションの規則:前シーンの最終フレームから開始し、(連続性が求められる場合は)ハードカットではなくカメラスワイプまたはプッシュを用い、録画の現在の先頭フレームに着地させる。録画冒頭の無駄時間は同期が維持される場合にのみ切り詰める。
- Land on the current first frame of the product recording.
4つの同期基準:製品状態が台詞の瞬間に視認可能であること(必要に応じてトランジションを前倒し)、理解が重要なら最終フレームを保持、スクロールを不自然に加速させるくらいなら直前の映像を減速させる、単語の途中で絶対にカットしない。
- Do not cut mid-word in narration to reach a product state.
録画のクリーンアップはチェックリスト化しつつも節度を保つ:カーソル、ブラウザUI、通知ポップアップ、無駄時間、読み込み時の白画面、デスクトップ端、スクロール速度、ズームフォーカス——製品の明瞭さを損なわない場合にのみ処理する。
- Notification popups.
クロップ判定マトリクスは3段階:クロップなし(キャンバス許容、画面またぎのズーム、本文欠けのリスク、洗練度より製品状態を重視)、ライトクロップ(キャンバスが目障りだがUIは中央配置、字幕のスペースが必要、ブラウザUIや無駄な余白を安全に除去可能)、ダイナミッククロップ(全クロップ領域がマッピング済み、動きに意図がある、全重要製品状態の検証フレームが存在)。
Choose dynamic crop only when:
ユーザー承認ポイントの前置:視認可能なキャンバスの切り取り、カーソル削除、大幅な倍速化、製品詳細のぼかしやマスク、実際の録画をリメイクされたモックUIへ置き換える行為——これらは事前に必ず確認する。
Ask before: - Cropping out visible canvas.
2コア機能
3外部依存関係
| Kind | Dependency / Endpoint |
|---|---|
| cli | 媒体探测与切分(时长/分辨率/帧率/音轨;trim 与重定时)——SKILL.md 只写探测要求,具体命令由同族 ffmpeg/ffprobe 链路承担 |
| cli | ffmpeg(间接:抽帧与接触表的实现工具,见仓库根 scripts/extract_proof_frames.py) |
| package | 素材输入:用户提供的原始屏幕录制(SaaS demo / app 录屏 / 浏览器录制),本地文件,无外部服务 |
| package | 参考文件 skills/product-demo-integration/references/crop-and-zoom.md(裁切安全程序与常见错误清单) |
4推奨統制措置と判定根拠
- scripts/: ローカルスクリプトまたはコマンドの実行: (本スキルディレクトリ内にスクリプトなし)仕様書に基づき、ホスト側で録画の検証、フレーム抽出、クロップ、リタイミング(ffmpeg/ffprobe ツールチェーン)を実行し、製品クリップをレンダリング
- 本地工作目录: ファイルの読み書きと成果物の出力: クロップおよびリタイミング済みの製品クリップとレンダリング出力(renders/ 配下)
5二重目の独立検証
- [ok] 「无网络无凭证」是否成立 — 目录扫描无 URL、无 fetch、无 token/env/cookie;产品录屏作为本地素材处理,无上传、无生成服务,故不构成橙档。
- [ok] 三处裁切判据是否自相矛盾 — SKILL.md 的 Use crop only when(三个必要条件)、Crop Decision Matrix(三档适用条件)、references 的四步程序(逐帧测试与否决规则)方向一致:默认不裁、裁切需证据、动态裁切最严。未发现冲突。
- [discrepancy] 探测要求是否有可执行命令 — 本 skill 与族内多件一样只写探测要求,未点名 ffprobe 或仓库脚本;实际命令在 audio-sync-assembly(ffprobe 与探测脚本)与 render-qa-and-surgical-changes(scripts/probe_media.py)里。只加载本件时探测动作需自行补齐。
- [ok] 用户批准点是否覆盖 references 建议的所有激进编辑 — SKILL.md 的 Ask before 列表含裁掉可见画布、去光标、大幅加速、模糊或遮罩产品细节、用重制 UI 替换真实录屏;覆盖了 crop-and-zoom.md 建议的动态裁切与「更优替代方案」中涉及真实性的项,未见遗漏的高风险编辑。
- [ok] 转场规则是否与 scene-continuity-and-transitions 一致(避免两件给出不同做法) — 本件要求从前一场景末帧起、用相机擦或推而非硬切、落在当前首帧、边界抽证明帧;scene-continuity-and-transitions 的首帧匹配与边界证明程序方向相同(后者另给 0.05s 前后与转场中间的抽帧程序),互为细化而非冲突。
- [ok] 是否有未声明的素材外发(例如云端转写或云渲染) — 全目录无端点、无服务名;清理与裁切均在本地完成。唯一外生动作是宿主抽帧后的读图(若使用视觉模型),不属本 skill 声明的调用。
6結論
da34d1aa8e5b647e…