Communitygithub.com

Legenda Impacto

Premiere Pro向け9x16縦型動画用「インパクト」字幕テンプレート。編集可能なMogrtグラフィック、単語ごとのランダムアニメーション、小行+大行(白または赤)と直線字幕を交互に配置、大文字のCondensedフォント、常にセーフマージン内に収めます。

Legenda Impacto とは?

このスキルは、Premiere ProでReels/Shorts/TikTok向けの高インパクトな字幕を自動生成するためのものです。ユーザーが「impacto字幕」や「字幕テンプレート」をリクエストした際に、ExtendScriptとPythonスクリプトを連携させて、文字起こしJSONからブロック構造を解析し、単語ごとにランダムなMogrtアニメーションを割り当て、白または赤の色分け、小行+大行または直線字幕を自動配置します。すべてのテキストはセーフマージン(幅78%、高さ10%~90%)に収まるよう自動調整され、編集可能なMogrtとしてPremiere Proのアクティブなシーケンスに直接適用されます。対応プラットフォームはPremiere Pro(2027/27.0+)で、Python環境とMCPなどのExtendScript実行方法が必要です。

対応~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/gbrand-lab/premiere-legendas-skills/tree/HEAD/skills/legenda-impacto

お気に入りのAIに質問する

このエージェントスキルを事前に読み込んだ状態で新しいチャットを開きます。

ドキュメント

Legenda Impacto は何をしますか?

Reels/Shorts/TikTok向けの高インパクト字幕テンプレート。ユーザーがこのテンプレートを使用して動画に字幕を付けるよう依頼した場合は、以下に従ってパラメータを再度尋ねずに適用してください。

前提条件

  • Premiere Pro(2027/27.0でテスト済み、ExtendScriptを使用)およびPython 3.9+(pip install -r requirements.txtでPillowをインストール済みであること)。
  • Premiere内でExtendScriptを実行する方法:Premiere用のMCP(execute_extendscript)または CEPファイルブリッジ — 詳細はリポジトリルートの docs/PREMIERE-BRIDGE.md を参照。
  • フォント:Impact(Windows/macOSに付属)、オプションでAnton。フォントが見つからない場合は CAPTION_FONT_DIR を設定。
  • 単語ごとの .mogrt パッケージ(*_WbW.mogrt)が assets/ にあること — リポジトリには含まれていません(assets/LEIA-ME.md 参照)。これらは「Anim Speed」/「Out Animation」コントロールとテキストフィールドを持つEssential Graphicsテンプレートです。

パラメータ(信頼できる情報源:style.json と scripts/plan_blocks.py)

  • フォーマット 9:16(1080x1920)。テキストは大文字、中央揃え、y_center 0.54(中央よりやや下)。
  • フォント Impact。小行 56px(白)、大行 140px、直線 76px;収まるように縮小(最小 60%)。
  • ブロックは1~6単語、句読点、0.45秒以上のポーズ、または3.3秒以上の長さで区切る;単独の機能語(o, de, que...)で終わらないこと。
  • ブロックタイプ:big_below(上に小行+下に大行、デフォルト)、big_above(上に強調単語を大行)、single_big、single_small、および直線(1行、または長い場合は2行、標準サイズ、白色)。各ブロックは40%の確率で直線になり、同一タイプが最大2回連続。
  • 大行に数字/金額/強調単語(strongリスト)がある場合は赤色 #F2381C、赤色は最大2回連続、4ブロック経過したら強制的に1回赤色にする。
  • アニメーション:単語ごとの .mogrt、ブロックごとに assets/ 内の既存ファイルからランダム選択、前回と同じものは使用しない;同じブロックの2行は同じテンプレートを使用。出力はカット(Out Animationオフ)。Anim Speed 150(ブロックが1秒未満の場合は200)。
  • セーフマージン(固定ルール):テキストはPremiereのタイトルセーフ外に出ない(80%×80%=各辺10%マージン)。make_graphics_script.py(layout_text + clamp_y; safe_margin_x/y と safe_tolerance は style.json)で実装:有効幅 = 1 - 2*0.10 - 0.02 = 幅の78%(1080で842px)。収まらない行は:1) min_scale(60%)まで縮小;2) それでも収まらない場合は均等に2行(最大3行)に分割し、必要な分だけ縮小;サイズは切り捨てられるため、最も長い行でもマージンを超えない。ブロック全体も高さ10%~90%の範囲に収まる。
  • 納品:ユーザーが指定したシーケンスに直接編集(コピーは作成しない)、ただしユーザーがコピーを要求した場合は除く。

手順

  1. プロジェクトの確認:ユーザーにどのプロジェクト/シーケンスが開いているか確認し、ターゲットシーケンスをアクティブにしておく(ExtendScriptはアクティブなシーケンスに対して動作)。
  2. 文字起こし:ユーザーがPremiereからJSONをエクスポート(テキスト > 文字起こし > メニュー... > エクスポート;ドキュメントフォルダに「<シーケンス名>.json」として保存)。
  3. 計画:PYTHONIOENCODING=utf-8 python -I <skill>/scripts/plan_blocks.py <transcricao.json> <pasta>/blocks.json。サマリーと [確認] の単語(信頼度 < 0.75)を表示。blocks.json のエラー(small/big フィールド)を修正。
  4. トラック:ビデオトラックを一覧表示。V1 = 動画。小行にはV2(インデックス1)、大行/直線にはV3(インデックス2)、赤色用にはすべての上に新しいトラック(現在のトラック数がインデックス)を使用。フレームを覆う古い字幕/タイトルクリップがあればオフにする。
  5. バッチ生成:python -I <skill>/scripts/make_graphics_script.py blocks.json <pasta>/lote.js --tracks 1,2,<indiceVermelha> [--seed N] → lote_01.js...(各8クリップ)および lote_clips.json。
  6. 実行前にマージンを確認:python -I <skill>/scripts/check_margins.py <pasta>/lote_clips.json — fora da margem: 0(最大幅 <= 78%)である必要がある。
  7. 各バッチをPremiereで実行(ExtendScript、script フィールド、return付きIIFE、JSON.parse/stringify のみ)、1つずつ実行し、ok=8/8 を待つ。ブリッジが不安定な場合は、各バッチの前に接続を確認。複数のバッチを同時に送らないこと(数十クリップを一度に送るとPremiereがフリーズする)。
  8. 赤色:赤色トラックのクリップを一覧表示し、エフェクト「RGBカラーバランス」(英語では「RGB Color Balance」)を適用(赤:242、緑:56、青:28)。各クリップに1回のみ — 再適用するとエフェクトが重複し赤色が暗くなる(再実行する場合は、赤色トラックのクリップを削除して再作成)。
  9. 確認:クリップのテキスト/フォント/サイズ/位置を読み戻し、check_margins.py を再実行;フレームエクスポートが機能する場合は3~4フレーム(赤色1つ、直線1つ、2行1つ)をエクスポート、機能しない場合はユーザーにマージンガイドを表示して確認してもらう。プロジェクトを保存。
  10. 納品:実行内容、疑わしい単語、および動きを確認していないことを伝える。

クイック調整

変更内容編集箇所
サイズ/フォント/位置style.json(mogrt_size_small/big/plain、mogrt_font、y_center、gap)
マージンsafe_margin_x/y、safe_tolerance(style.json)
直線字幕の増減--plain-prob(デフォルト 0.4)
ランダム性の変更--seed
赤色の増減、ブロックサイズplan_blocks.py の RULES または --config regras.json
テキスト修正blocks.json を編集しバッチを再生成

代替方法:透明ビデオ(Premiereが.mogrtを受け付けない場合のみ)

render_captions.py blocks.json out.mov --duration <s> --fps 30 でProRes 4444(アルファ付き、5フレームのポップイン、ネイティブの赤色、編集不可)を生成。タイムラインにインポートメディアとして配置。45秒のレンダリングに約5分かかる。

既知の制限

  • アニメーションはテンプレートのタイミングに従い、各単語の発話タイミングには一致しない。
  • 禁止用語("P*RRA"など)の自動検閲はなし(blocks.json で編集)。
  • フレーズの分割が不自然になる場合あり;実行前にブロックリストを確認すること。
  • .mogrt の色はスクリプトで変更不可(そのため赤色クリップにカラーエフェクトを適用)。

Individual skills in this repo

This repo contains 1 individual skill — each has its own dedicated page.

関連スキル