動画生成スキル
概要
このスキルは、構造化プロンプトとPythonスクリプトを使用して高品質な動画を生成します。ワークフローには、JSON形式のプロンプトの作成と、オプションの参照画像を使用した動画生成の実行が含まれます。
コア機能
- AIGC動画生成のための構造化JSONプロンプトを作成する
- 動画のガイドや最初/最後のフレームとして参照画像をサポートする
- 自動化されたPythonスクリプトの実行を通じて動画を生成する
ワークフロー
ステップ 1: 要件を理解する
ユーザーが動画生成をリクエストした場合、以下を特定します:
- 被写体/コンテンツ: 画像に何を表示するか
- スタイルの好み: アートスタイル、ムード、カラーパレット
- 技術仕様: アスペクト比、構図、照明
- 参照画像: 生成をガイドするための画像
/mnt/user-data以下のフォルダをチェックする必要はありません
ステップ 2: 構造化プロンプトを作成する
/mnt/user-data/workspace/ に、{descriptive-name}.json という命名パターンで構造化JSONファイルを生成します。
ステップ 3: 参照画像を作成する(image-generationスキルが利用可能な場合のオプション)
動画生成のための参照画像を生成します。
- 画像が1枚だけ提供された場合、それを動画のガイドフレームとして使用します
ステップ 3: 生成を実行する
Pythonスクリプトを呼び出します:
python /mnt/skills/public/video-generation/scripts/generate.py \
--prompt-file /mnt/user-data/workspace/prompt-file.json \
--reference-images /path/to/ref1.jpg \
--output-file /mnt/user-data/outputs/generated-video.mp4 \
--aspect-ratio 16:9
パラメータ:
--prompt-file: JSONプロンプトファイルの絶対パス(必須)--reference-images: 参照画像の絶対パス(オプション)--output-file: 出力画像ファイルの絶対パス(必須)--aspect-ratio: 生成画像のアスペクト比(オプション、デフォルト: 16:9)
[!NOTE] pythonファイルを読み取らず、パラメータを指定して呼び出してください。
動画生成の例
ユーザーリクエスト:「『ナルニア国物語/第2章: カスピアン王子の角笛』の冒頭シーンを描いた短い動画クリップを生成してください」
ステップ 1: オンラインで「ナルニア国物語/第2章: カスピアン王子の角笛」の冒頭シーンを検索する
ステップ 2: 以下の内容でJSONプロンプトファイルを作成する:
{
"title": "ナルニア国物語 - 駅での別れ",
"background": {
"description": "第二次世界大戦の避難シーン、混雑したロンドンの駅。蒸気と煙が立ち込め、子供たちが電撃戦から逃れるために田舎へ送られている。",
"era": "1940年代の戦時中イギリス",
"location": "ロンドン鉄道駅のプラットフォーム"
},
"characters": ["ペベンシー夫人", "ルーシー・ペベンシー"],
"camera": {
"type": "クローズアップのツーショット",
"movement": "静止、微妙な手持ちカメラの動き",
"angle": "横顔ビュー、親密なフレーミング",
"focus": "両方の顔にピント、背景は柔らかいボケ"
},
"dialogue": [
{
"character": "ペベンシー夫人",
"text": "私のために強くあってね、ダーリン。必ず迎えに行くから…約束する。"
},
{
"character": "ルーシー・ペベンシー",
"text": "そうするわ、お母さん。約束する。"
}
],
"audio": [
{
"type": "汽笛が鳴る(出発の合図)",
"volume": 1
},
{
"type": "弦楽器が感情的に盛り上がり、フェードアウト",
"volume": 0.5
},
{
"type": "駅の環境音",
"volume": 0.5
}
]
}
ステップ 3: 画像生成スキルを使用して参照画像を生成する
画像生成スキルをロードし、スキルに従って単一の参照画像 narnia-farewell-scene-01.jpg を生成します。
ステップ 4: generate.py スクリプトを使用して動画を生成する
python /mnt/skills/public/video-generation/scripts/generate.py \
--prompt-file /mnt/user-data/workspace/narnia-farewell-scene.json \
--reference-images /mnt/user-data/outputs/narnia-farewell-scene-01.jpg \
--output-file /mnt/user-data/outputs/narnia-farewell-scene-01.mp4 \
--aspect-ratio 16:9
pythonファイルを読み取らず、パラメータを指定して呼び出してください。
出力処理
生成後:
- 動画は通常
/mnt/user-data/outputs/に保存されます - 生成された動画(最初に)と、該当する場合は生成された画像を、
present_filesツールを使用してユーザーと共有します - 生成結果の簡単な説明を提供します
- 調整が必要な場合は、反復処理を提案します
注意事項
- ユーザーの言語に関わらず、プロンプトは常に英語を使用します
- JSON形式により、構造化され解析可能なプロンプトが保証されます
- 参照画像は生成品質を大幅に向上させます
- 最適な結果を得るためには、反復的な調整が一般的です
プロバイダー (Gemini / MiniMax)
環境変数によって自動選択されます(CLIは変更なし):
GEMINI_API_KEYが設定されている → Gemini Veo(デフォルト、変更なし)MINIMAX_API_KEYのみが設定されている → MiniMax動画(/v1/video_generation、非同期3ステップポーリング/ダウンロード)VIDEO_GENERATION_PROVIDER=gemini|minimaxで強制指定
MiniMaxの上書き:MINIMAX_API_HOST(デフォルト https://api.minimaxi.com)、
MINIMAX_VIDEO_MODEL(デフォルト MiniMax-Hailuo-2.3)。最初の参照画像は
MiniMaxの first_frame_image として使用されます。MiniMaxは --aspect-ratio を無視します(解像度/デュレーションを使用)。