Communitygithub.com

小Lin说解説パッケージ

小Lin说(Xiao Lin Shuo)スタイルの経済・科学解説動画のパッケージング。Remotion テンプレート、資料調査、タイムライン設計、音声ミキシング、フレーム品質チェックを提供します。

小Lin说解説パッケージ とは?

このスキルは、小Lin说スタイルの解説動画を制作するための包括的なツールキットです。出動口撮影クリップ(A-roll)と台本を入力として、Remotion ベースのテンプレート(巨大数字、カード壁、白紙チャート、蛍光ペンドキュメント、物理カード、大型数式バー、白背景計算機、タイトル/章カード、ピクチャーインピクチャー、トランジション)を利用して視覚的にパッケージ化します。主な機能には、各テンプレートに必要なデータ・原文・ソース評価ルールを含む資料調査仕様、Wikimedia Commons の自由ライセンス写真ダウンロードスクリプト、台本キーワードに基づくタイムライン API、分割レンダリング、音声合成(人声+音楽+効果音)、フレーム単位の品質監査が含まれます。macOS(Apple Silicon)上で Remotion を使用し、環境変数や外部フォント(優設タイトル黒など)の設定が必要です。このスキルは、小Lin说のビジュアル言語を忠実に再現し、既存の動画に解説パッケージを追加するのに最適です。

対応~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/howoneai/xiaolin-explainer-packaging/tree/main/xiaolin-explainer-packaging

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

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

ドキュメント

小Lin说解説パッケージ は何をしますか?

出演口撮りクリップ(A-roll)と台本を、小Lin说スタイルの解説動画にパッケージ化します。出演映像は別のツールで生成または撮影します。このスキルは、パッケージに必要な資料の調査、解説映像、字幕、トランジション、音声を担当します。

環境に design-aesthetic-standard がある場合、ビジュアルと音声の創作判断はそれにも従います。video-generation がある場合、出演クリップの生成と編集はそちらを参照してください。

参考ドキュメント(必要に応じて読み込み)

  • references/style-bible.md:彼女のグラフィック言語、6つのハードルール、カラーパレット、フォント、ピクチャーインピクチャー、トランジション統計、音声レベル。シーンを計画する前に必ず読むこと。
  • references/research.md:各テンプレートに調査すべき資料、ソース評価、調査先、画像権利。シーン計画時に読む。
  • references/layouts.md:各テンプレートコンポーネントのパラメータ、呼び出し例、落とし穴。ストーリーボード作成時に読む。
  • references/storyboard-api.md:timeline.json と project.json の形式、ストーリーボードAPI、キーワードタイミング、レビューとレンダリングコマンド。初めてプロジェクトをセットアップする時に読む。

環境

  • Node ≥ 18、ffmpeg、python3(numpy と Pillow)。npm install と初回レンダリングにはインターネット接続が必要(Remotion が Chrome をダウンロード)。
  • macOS(Apple Silicon)でのみテスト済み。その他のOSではデフォルトでソフトウェアレンダリング swangle を使用。環境変数 REMOTION_GL で変更可能。
  • フォント:テンプレートには6つのSIL OFLフォントが含まれています。ライセンスは templates/engine/public/fonts/LICENSES.txt を参照。優設タイトル黒(YouShe.ttf)はパッケージに含まれていない場合があります。new_project.sh は $YOUSHE_TTF と一般的なフォントディレクトリを検索します。見つからない場合は、ユーザーに https://www.uisdc.com/uisdc-first-free-font からダウンロードし、public/fonts/YouShe.ttf として保存するよう促します。このフォントがない場合、タイトルと字幕は 思源黑体 の最も太いウェイト(900)にフォールバックし、斜め切りもなくなり、スタイルが著しく弱まります。
  • Remotion ライセンス:個人、3人以下の企業、非営利団体は商用利用を含め無料。4人以上の企業は企業ライセンスを購入する必要があります(https://www.remotion.pro/license)。

ワークフロー

1. 入力準備

  • 出演クリップ:各セリフにつき1920×1080のmp4ファイル。public/clips/<id>.mp4 に配置。
  • 台本:各セリフに読み上げテキスト say(漢字表記)と字幕テキスト sub。
  • ファクトファイル:templates/facts_template.md からコピー。既存の事実とソースを先に記入し、不足分はステップ4で調査。
  • オプション:実写またはAI画像(public/broll/)、写真(public/photos/)、音楽(public/music/)、新しいアイコン(public/icons/)。

2. プロジェクト作成

<skill>/scripts/new_project.sh <プロジェクトディレクトリ>          # --demo を付けると、4つのダミークリップとサンプルストーリーボードが生成され、スモークテストに使用可能

次に timeline.json を記述。各出演動画をトランスクライブし、tin/tout を決定して、先頭と末尾の無音をカット。途中の言い間違いは cuts に記入。project.json の brand と music を編集。

3. シーン計画(まず表を作成し、次にコードを記述)

style-bible.md と research.md を読んだ後、次の表を作成:シーン名 | カバーするセリフ範囲 | テンプレート | ダークモードかホワイトペーパーか | PIP方式 | 必要な資料。次の5点を確認:

  • 1シーンは2~8セリフをカバーし、1セリフ1ページにしない。
  • 各シーンで「被写体が切り取られている」または「被写体が画面の60%以上を占める」(R1)ことを確認。
  • ダークシーン2~3つごとに1つのホワイトペーパーシーンを挟む(R2)。
  • 原文を引用する箇所は docpage を使用し、原文は一字一句そのままの引用であること。
  • 冒頭フック、主張文、転換文、結びはフル画面の出演に割り当て、解説画面で覆い隠さない。

4. 資料調査

シーン表の「必要な資料」列に従い、research.md の方法で項目ごとに調査。各結果をファクトファイルに記録(番号、原文、ソースリンク、日付を含む)。写真は scripts/commons_photo.py で検索およびダウンロード。

調査後にシーン表を修正:一字一句の原文が見つからない場合は docpage を使用しない;同じ口径のデータが揃わない場合は paper を使用しない。台本の数字がファクトファイルと一致しない場合は、先に台本を修正し、その後出演クリップを生成または再編集。

5. ストーリーボード作成

templates/scenes_example.py の書き方をコピー。各シーンで以下を実施:

  • 要素の登場をキーワードに合わせる:S.k('キーワード', -0.15)。
  • 現在の項目をハイライトし、その他を暗くする(focus / hl / lit)。カメラを現在の項目に追従(sc.cam / look)。
  • KF.append((ラベル, 時刻)) を使って、レビュー用のフレームを最低1つ登録。

python3 story_core.py timeline.json scenes.py を実行し、gaps/overlaps [] を確認。

6. キーフレームレビュー(最低2ラウンド)

python3 -c "import json;print(' '.join(str(f) for _,f in json.load(open('keyframes.json'))))" | xargs node render.mjs stills stills/k1
python3 <skill>/scripts/sheet.py stills/k1 keyframes.json 6

生成されたコラージュを1枚ずつ確認し、以下のレビューチェックリストに従って修正。修正後、該当フレームを再レンダリング。彼女の元動画がある場合は、同じテンプレートの元フレームをキャプチャして並べて比較。

7. フル動画、ミキシング、合成、品質チェック

<skill>/scripts/render_chunks.sh video.mp4
python3 <skill>/scripts/mix_audio.py timeline.json mix_raw.wav
<skill>/scripts/finalize.sh video.mp4 mix_raw.wav final.mp4
python3 <skill>/scripts/audit.py video.mp4 72        # 動画フレームと静止フレームをフレームごとに比較。flaggedは0でなければならない

モバイル版:ffmpeg -i final.mp4 -c:v libx264 -crf 23 -preset medium -pix_fmt yuv420p -c:a aac -b:a 128k -movflags +faststart final_phone.mp4。

レビューチェックリスト

各キーフレームで以下を確認:

  1. 被写体が十分大きいか、または端で切り取られているか。周囲に大きな空白がないこと。
  2. 現在説明している項目が最も明るく、カメラがその近くにあること。
  3. 1フレームにラベルは最大2つ。
  4. 字幕(画面y 905–960)、ピクチャーインピクチャー、局ロゴ、AI生成マークに隠れているものがないこと。
  5. 文字化け(グリフ欠落)、縦書きになった単語、カードからはみ出た文字がないこと。
  6. 数字、単位、原文がファクトファイルと一致し、ソース行が存在し、CC BY写真にクレジットがあること。
  7. ホワイトペーパーシーンとダークシーンが交互に配置されていること。

既知の落とし穴

  • キーワードがセリフの先頭にある場合、S.k(単語, -0.3) がクリップの開始点より早くなる可能性がある。max(S.t0, …) で制限すること。
  • formula6 のトークン列幅は iw と等しい。iw は字数 × fs 以上でなければならない。
  • 画面x = (ワールドx − カメラx) × s + 960。piprect は画面x 110–560を占めるため、被写体は ≥ 600 に配置。カメラ位置を変更すると、画面上の被写体位置も変わる。
  • ui の結果単位はデフォルトで「元/月」。u= で変更。
  • paper カードの下端の画面yは ≤ 900 でなければならない。
  • ent6 の国旗は cl cn de fr jp us のみ。
  • 画像パスが存在しない場合、該当フレームのレンダリングは失敗する(FAIL ... Error loading image)。事前に ls public/<パス> で確認。
  • 静止フレームが正常でも動画が正常とは限らない。フル動画の後は必ず audit.py を実行。
  • グラデーション立体文字が600pxを超えるとChromeがフリーズする可能性がある。GText のレイヤー数とぼかし上限を削除しないこと。

使用制限

  • これはスタイル再現ツールです。完成動画には brand.label の「AI生成・非本人」表記を残し、削除しないこと。
  • brand.logo はデフォルトで空。ユーザー自身の局ロゴを設定。「小Lin说」や他の実際のクリエイターの局ロゴを設定して公開しないこと。
  • 実際のクリエイターの肖像や声を使用して出演映像を生成し、公開しないこと。
  • 完成動画を本人の作品として公開したり、視聴者を誤解させないこと。
  • 表示するデータ、原文、政策条文はすべてソースまで遡れること。

関連スキル