Communitygithub.com

huihezuo-source/h3-video

ローカルのComfyUI(MiniMax H3 + Qwen-Image + VoxCPM2)を使用して、セリフ付きのAIショートドラマ、擬人化動物コント、ストーリーショート動画を制作する全工程:トーン設定、台詞表、吹き替え、キャラクターマスター、ファーストフレーム、H3生成、発話者確認、拡大、字幕、ラウドネス、カバー。ユーザーが「AIショートドラマを作って」「このストーリーを動画にして」「H3で出力」「キャラクターにリップシンク」「ナレーションはどうやって」「キャラの口が合わない」「キャラマスター/ファーストフレームを作って」と言ったときに使用。動画内で誰かが話す場合、作業前に必ずこれで台詞表を整理する。

h3-video とは?

「H3 Video:AI ショートドラマ全工程」は、ローカルのComfyUI環境(MiniMax H3、Qwen-Image、VoxCPM2など)を活用して、セリフ付きのAIショートドラマ、擬人化動物コント、ストーリーショート動画を制作するためのスキルです。このスキルは、実プロジェクトでの試行錯誤から得られた「計画→確認→修正」の反復ワークフローを提供し、各工程でユーザーが確認を挟むことで、エラーが発生しても該当層のみを修正できるように設計されています。対応プラットフォームはClaude Code、Cursor、CodexなどのAIエージェントであり、ユーザーの自然言語指示(例:「このストーリーを動画にして」「キャラクターにリップシンク」)に応じて、トーン設定、台詞表作成、吹き替え、キャラクターマスター生成、ファーストフレーム、H3動画生成、発話者確認、拡大、字幕、ラウドネス調整、カバー制作までを一貫して実行します。SKILL.mdでは、7つの厳格なルール(例:1回の生成で1つの発声源のみ、視線制御、首フレームの絶対品質)と、スクリプト群(例:speaker_grid.pyによる発話者チェック)を用いた効率的なリワーク方法が詳細に説明されています。このスキルは、AI動画制作の品質と効率を大幅に向上させることを目的としています。

対応~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/huihezuo-source/H3-Video/tree/HEAD

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

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

ドキュメント

H3 Video:AI ショートドラマ全工程

このフローは、いくつかの実際の作品における手戻り経験に基づいています。核となる考え方は:まず計画し、各関門で確認を入れ、間違いがあればその層だけを修正する。

全体フロー(順番通り、ステップを飛ばさないこと)

ステップやること関門
0調査:まず同種の優れた作品や他人のやり方を調べ、手法をメモする—
1計画を書く:トーンとスタイル、台詞表、セグメント分割、生成リスト(テンプレートは templates/計画テンプレート.md を参照)ユーザーが計画を確認
2吹き替え:ナレーションとオフスクリーン音声はTTSで別途出力し、実際の時間を計測するユーザーが試聴し音色を確認
3キャラクターマスター:各キャラクターにつき正面全身写真を1枚、ストーリーの世界の中で撮影するユーザーがマスターを確認
4ファーストフレーム:各セグメントにつき1枚、アクションが始まった瞬間のみを写すユーザーがファーストフレームを確認するまで動画を生成しないこと
5生成:まず最速設定で下書きを出力する—
6発話者チェック、視線チェック、継ぎ目チェックを文単位で行う間違いがあれば該当セグメントのみやり直す
7拡大、字幕、ラウドネス、カバーユーザーが検収
8振り返り:計画の「検証すべき手法」欄を箇条書きで採点し、教訓をナレッジベースに書き込む—

7つの厳格なルール

  1. スタイルはストーリーのトーンに従う。 何かを描き始める前に、「トーンとスタイル」セクションを書く:光源と暗さ、色味、衣装の新旧・汚れ、表情、背景の雰囲気。マスターもこの世界の中で撮影し、スタジオの灰色背景は使わない。すべての画像に対して「これはこのストーリーに属するか」と問いかけてから、細部を確認する。暗いストーリーにきれいなアイドル顔を合わせるのが、最も一般的な失敗。
  2. 1回の生成では発声源は1つだけ。 ナレーションやオフスクリーン音声は決してH3に入れない。さもないと、画面内のキャラクターがナレーションに合わせてリップシンクしてしまい、プロンプトで「黙れ」と書いても抑えられない。ナレーション部分では台詞なしの動画を生成し、音声は後から重ねる。
  3. その場にいるが話さないキャラクター: 生成時に台詞を与えない;話し手を隠す必要がある場合は、後ろ姿や肩越しのアングルで撮影する。
  4. 台詞表が唯一の情報源。 各行にタイプ(台詞/オフスクリーン)、話し手、視線の相手、原文を記録する。約3文字/秒で予算を組み、各行は該当セグメント内で言い終えること。以降のステップでは台詞を変更してはならない。
  5. 視線: 話し手は聞き手を見、聞き手は話し手を見る。プロンプトでは毎行、誰が誰を見ているかを明確に書く。
  6. ファーストフレームに誤りがあればファーストフレームをやり直し、 プロンプトでごまかそうとしない。チェック時は原寸大に拡大して、手、目、口、装飾品、余分なオブジェクトを確認する。
  7. 発話者チェックが通らない限り納品しない。 各台詞の時間範囲から密集フレームグリッドを抽出し(scripts/speaker_grid.py)、「誰の口が動いているか:A / B / 両方 / どちらも」という閉じた質問にのみ回答し、台詞表と照合する。4フレームだけの間引きでは見逃しが発生する。

生成と手戻りの原則

  • まず下書き、それから拡大: 確認に十分な最速の解像度で出力し、確認後に合格したバージョンのみを拡大する。
  • 失敗したらまず原因を特定: 問題がプロンプト、ファーストフレーム、スクリプト、後処理のどこにあるかを判断し、どの層を修正するかを決める。複数セグメントで同じ誤りがある場合は共有参照(マスター)を修正し、単一セグメントの誤りは該当セグメントのみ修正し、一度に1項目だけ変更する。
  • プロンプトは肯定的に記述し、「~しない」を積み重ねない。避けたいものは入力(ファーストフレーム、マスター)に戻して修正する。
  • 各セグメントで使用したファーストフレーム、マスター、シード、プロンプトを記録し、 1セグメントだけのやり直しを容易にする。
  • 冒頭2秒でテスト: 最初の2秒だけを見て、視聴者が何を見ているか理解できるかを確認する。

参考資料

  • references/フロー詳細と教訓.md:各ステップの具体的なやり方と陥った落とし穴。
  • references/ComfyUIノードとパラメータ.md:Qwen-Imageによるマスター生成、Qwen-Image-Editによる画像編集、VoxCPM2による吹き替えクローン、H3 Ref2VAのノードとパラメータ、および既知の障害の解決方法。
  • references/オープンソースパイプライン調査.md:9つのオープンソースAI動画プロジェクトの比較、どれを採用すべきか、どれを避けるべきか。
  • templates/計画テンプレート.md:計画ドキュメントのテンプレート。台詞表と検証表を含む。

スクリプト

すべてのスクリプトは環境変数 COMFY_URL でComfyUIに接続します(デフォルトは http://127.0.0.1:8188)。使用方法は scripts/README.md を参照。

スクリプト役割
t2i_masters.pyQwen-Imageでキャラクターマスターをバッチ生成(スタイルプレフィックス + 各キャラクターの説明)
edit_image.pyQwen-Image-Editで局所的な画像編集、その他の部分は変更しない
voice_design.pyVoxCPM2でテキスト説明に基づきキャラクターの声をデザイン、各キャラクターにA/B 2つの試聴用サンプルを出力
tts_clone.pyVoxCPM2で参照音声を使い音色をクローン、ナレーションをバッチ出力
h3_ref2va.pyH3 Ref2VAワークフローをアセンブルして送信(参照画像、参照音声、ファーストフレームアンカー)
wait_download.pyタスクが終了するのを待ち、すべての出力をダウンロード
ws_progress.pyタスクの進捗を表示(送信時のclient_idが必要)
asr.pyfaster-whisperで文字起こし、吹き替えが一字一句一致するか確認
speaker_grid.py台詞表に基づき文単位で密集フレームグリッドを生成し、発話者チェックを行う
upscale_video.pyRealESRGANで動画をフレームごとに拡大
post_subtitle_loud.py字幕を焼き込み、-14 LUFSに2回のloudnormを適用
make_cover.py3:4と9:16の2バージョンのカバーを出力

関連スキル