video-tighten は何をしますか?
このスキルには、resolve-bridgeスキルが隣にインストールされている必要があります(../resolve-bridge にあるか、RVS_BRIDGE で設定)。さらに ffmpeg が必要です。
ワークフロー
- 現在地を確認。
python3 <resolve-bridge>/scripts/rvs.py --workdir <フォルダ> statusを実行します。まだ状態がない場合は、ユーザーがタイトにしたいタイムラインを採用します(resolve-bridgeを参照)。 - ドライラン。 Resolveには何も変更しません:
これにより、python3 scripts/tighten.py --workdir <フォルダ><フォルダ>/.edit/tighten/REPORT.md、report.json、plan.jsonが書き込まれます。 - ユーザーとレポートを確認します。 実行時間の変化、短縮されたポーズの数、すべてのフラグを表示します。フラグはスクリプトが修正できなかったカット(イン点より前に単語が始まり、その直前にも他の音声がある場合)を示すため、誰かが耳で確認するか、別のテイクを選ぶ必要があります。
- 意図的なポーズを保護します。 演技としての無音(間、パンチライン前の間、カメラに向かってタイピングするなど)はカットしてはいけません。ユーザーに確認し、
--skip <クリップ名またはタイムライン開始フレーム> ...を付けて再実行します。 - 適用します。
これにより、python3 scripts/tighten.py --workdir <フォルダ> --skip ... --apply<ベース>_vNN_tightenが作成され、以前のバージョンがアーカイブされ、プロジェクトが保存されます。すべてのフラグはEDIT_CHECKLIST.mdに課題として作成され、新しいタイムライン内のクリップ名とタイムコードで特定されます。新しいタイムライン名と課題IDをユーザーに伝えます。
機能
| 項目 | デフォルト値 | オプション |
|---|---|---|
| 最初の単語の前の空気感 | 0.22秒 | --pre |
| 最後の単語の後の空気感 | 0.38秒 | --post |
| 同じテイク内の無音部分への拡張(途切れた単語の救出) | 最大0.5秒 | --max-extend |
| 他の音(息継ぎ、つぶやき、次のテイク)への最小距離 | 0.08秒 | --guard |
| クリップ内のポーズがこれより長い場合… | 0.75秒 | --pause-max |
| …短縮後の長さ | 0.3秒 | --pause-keep |
| 作成する最小のピース長 | 0.5秒 | --min-piece |
| エッジのみ修正し、すべてのポーズを保持 | オフ | --no-pauses |
| ダイアログ以外のオーディオトラック(音楽) | なし | --ignore-audio-tracks 3 4 |
- 音声検出はエネルギー基準です(
resolve-bridge/scripts/rvs_audio.py):閾値はソースファイル全体から決定され、強い閾値で単語が見つかり、そのエッジはソフトエンディングや付随する息継ぎを通して拡張されます。近接マイク録音に適しています。ノイズの多い環境では、フラグをより注意深く確認してください。 - 短縮されたポーズはすべてジャンプカットになります(クリップが分割されます)。後で video-framing を実行して、インサートショットやBロールで隠すことができます。
- リップル: 後続のクリップは前方に移動します。ビデオのみのアイテム(Bロール、オーバーレイ)は新しいタイミングに再マッピングされ、セクションが短くなった部分で短縮されます。0.5秒未満になるBロールは削除され、リストに表示されます。
- モード: これは構造的なステップであるため、resolve-bridgeのbuildモードを使用します。現在のタイムライン上のタイトルやジェネレーターは引き継がれません(ブリッジが警告します)。グラフィックを追加する前にタイトを実行してください。
未対応
- 重なり合うダイアログ(すでにタイムラインにあるJ/Lカット):該当クリップはそのまま残され、フラグが立てられます。
- フィラーワード(「えーと」「つまり」)は文字起こしが必要です。今後のスキルで文字起こしと共に実装予定です。