video-generation について
video-generation は、each::sense を通じてテキストプロンプトや参照画像から動画を作成するスキルです。モデル選択を自動化したい制作者向けで、ストリーミングと一括応答に対応します。
主な機能
- 01テキストからの動画生成
- 02最大4枚の画像から動画生成
- 03モデルの自動選択
- 04ストリーミングと一括応答
- 05動きとカメラのプロンプトガイド
活用シーン
- 01テキストから映画風の風景動画を作成
- 02ポートレートや製品画像をアニメーション化
- 03SNS向けの短い動画を生成
インストール
コマンドをコピーしてターミナルで実行します。
$
npx skills add https:/ / github.com/ awesome-genmedia/ skills --skill video-generationインストール後、Claude Code で/video-generationを入力して読み込まれたか確認します。
詳細
動画生成
each::sense を使用して、テキストプロンプトや静止画像から動画を生成します。each::sense は、リクエストに最適なモデルを自動で選択するインテリジェントな AI エージェントです。
クイックスタート
each::labs の API キーが必要です。eachlabs.ai で取得してください。
curl を使用する
curl -X POST https://eachsense-agent.core.eachlabs.run/v1/chat/completions \
-H "Content-Type: application/json" \
-H "X-API-Key: $EACHLABS_API_KEY" \
-d '{
"messages": [{"role": "user", "content": "A golden retriever running through a field of wildflowers in slow motion, cinematic, shallow depth of field, warm afternoon light"}],
"stream": false
}'
Python を使用する(OpenAI SDK)
from openai import OpenAI
client = OpenAI(
api_key="YOUR_EACHLABS_API_KEY",
base_url="https://eachsense-agent.core.eachlabs.run/v1"
)
response = client.chat.completions.create(
model="eachsense/beta",
messages=[{"role": "user", "content": "A golden retriever running through a field of wildflowers in slow motion, cinematic, shallow depth of field, warm afternoon light"}]
)
print(response.choices[0].message.content)
参照画像を使用する(画像から動画への変換)
curl -X POST https://eachsense-agent.core.eachlabs.run/v1/chat/completions \
-H "Content-Type: application/json" \
-H "X-API-Key: $EACHLABS_API_KEY" \
-d '{
"messages": [{"role": "user", "content": [
{"type": "text", "text": "Animate this photo: the woman slowly turns her head toward the camera and smiles, her hair gently blowing in the breeze, natural movement"},
{"type": "image_url", "image_url": {"url": "https://example.com/portrait-photo.jpg"}}
]
}
],
"stream": false
}'
画像は OpenAI のマルチモーダルコンテンツ形式を使用してメッセージ内に送信されます。1 リクエストあたり最大 4 枚の画像を使用できます。
ストリーミング
リアルタイムの SSE レスポンスを受け取るには "stream": true を、単一のレスポンスで完全な結果を受け取るには "stream": false を設定します。ストリーミングは UI で進行状況を表示するのに便利です。スクリプトや自動化には、非ストリーミングのほうがシンプルです。
利用可能なモデル
テキストから動画への変換
| モデル | 強み | 最適な用途 |
|---|---|---|
| veo-3 | 全体的に最高の品質で、同期した音声を生成します | 映画のようなクリップ、広告、音声付きコンテンツ |
| veo3-1-fast | 高品質な動画をすばやく生成します | 手早い試作、ソーシャルメディアコンテンツ |
| kling-3-0 | 高品質で、一貫性のある動きを生成します | キャラクターアニメーション、動きのあるシーン |
| wan-v2-6-text-to-video | 信頼性の高いテキストから動画への変換を行います | 汎用的な動画制作 |
| pixverse-v4-1 | スタイライズされた芸術的な映像を生成します | アニメーションコンテンツ、クリエイティブな動画 |
| sora-2-pro | 自然な物理表現を備えた映画のような品質です | 映画のようなシーン、プロフェッショナルなコンテンツ |
画像から動画への変換
| モデル | 強み | 最適な用途 |
|---|---|---|
| kling-2-1-image-to-video | 静止画像から滑らかなアニメーションを生成します | 製品アニメーション、ポートレートアニメーション |
| wan-v2-6-image-to-video | 元画像の細部を一貫して保ちます | 写真を動きのある映像に変換 |
each::sense はプロンプトに基づいて適切なモデルを自動で選択します。「この画像をアニメーション化して」と指定するか、image_url を指定すると、画像から動画への変換モデルが選択されます。
プロンプト作成ガイド
動画プロンプトの構成
[subject] + [action/motion] + [environment] + [camera movement] + [style] + [mood/lighting]
動きに関するキーワード
| 動きの種類 | キーワード |
|---|---|
| カメラ | 左にパン、前方へのドリー、周囲を回り込む、ズームイン、クレーンショット、トラッキングショット |
| 被写体 | 歩く、走る、振り向く、踊る、身振りをする、浮かぶ |
| 環境 | 風が吹く、雨が降る、雲が動く、波が打ち寄せる、葉が舞う |
| 速度 | スローモーション、タイムラプス、リアルタイム、早送り、バレットタイム |
映画的な表現のキーワード
cinematic, 4K, film grain, anamorphic lens, letterbox,
shallow depth of field, bokeh, golden hour, dramatic lighting
動画の長さの目安
必要に応じて、プロンプトでおおよその長さを指定します。
"... 5-second clip of ..."
"... short loop, 3 seconds ..."
"... 10-second establishing shot ..."
例
映画のような風景
curl -X POST https://eachsense-agent.core.eachlabs.run/v1/chat/completions \
-H "Content-Type: application/json" \
-H "X-API-Key: $EACHLABS_API_KEY" \
-d '{
"messages": [{"role": "user", "content": "Aerial drone shot slowly flying over a misty mountain range at sunrise, clouds weaving between peaks, golden light spilling across ridgelines, cinematic 4K, orchestral mood"}],
"stream": false
}'
製品デモのアニメーション
curl -X POST https://eachsense-agent.core.eachlabs.run/v1/chat/completions \
-H "Content-Type: application/json" \
-H "X-API-Key: $EACHLABS_API_KEY" \
-d '{
"messages": [{"role": "user", "content": "A sleek smartphone rotating slowly on a dark reflective surface, studio lighting revealing its design from all angles, subtle light reflections, product commercial style, 5 seconds"}],
"stream": false
}'
画像から動画への変換(ポートレートアニメーション)
curl -X POST https://eachsense-agent.core.eachlabs.run/v1/chat/completions \
-H "Content-Type: application/json" \
-H "X-API-Key: $EACHLABS_API_KEY" \
-d '{
"messages": [{"role": "user", "content": [
{"type": "text", "text": "Animate this portrait: subtle breathing motion, a gentle blink, the person then looks slightly to the left and gives a warm smile. Natural and realistic movement."},
{"type": "image_url", "image_url": {"url": "https://example.com/headshot.jpg"}}
]
}
],
"stream": false
}'
ソーシャルメディア向けリール
curl -X POST https://eachsense-agent.core.eachlabs.run/v1/chat/completions \
-H "Content-Type: application/json" \
-H "X-API-Key: $EACHLABS_API_KEY" \
-d '{
"messages": [{"role": "user", "content": "A barista pouring latte art in a cozy coffee shop, close-up shot, steam rising from the cup, warm ambient lighting, 9:16 vertical format for Instagram Reels, satisfying and aesthetic"}],
"stream": false
}'
音声を生成した動画(veo-3)
curl -X POST https://eachsense-agent.core.eachlabs.run/v1/chat/completions \
-H "Content-Type: application/json" \
-H "X-API-Key: $EACHLABS_API_KEY" \
-d '{
"messages": [{"role": "user", "content": "A thunderstorm rolling over a vast prairie, lightning bolts illuminating dark clouds, heavy rain sweeping across golden grass, with realistic thunder sounds and rain audio, cinematic wide shot"}],
"stream": false
}'
よくある落とし穴
- 静的な描写では、静止しているように見える動画が生成されます。動きやアクションを必ず明確に描写してください。
- 1 つのプロンプトにシーンの切り替えを詰め込みすぎると、モデルが混乱します。連続した 1 つのシーンに焦点を当ててください。
- カメラの動きを指定しないと、カメラが固定されたショットになります。動きを出すには、パン、ドリー、トラッキングを指定してください。
- 複雑なキャラクター同士のやり取り(2 人が会話するなど)は、一貫性のない結果につながることがあります。やり取りはシンプルにしてください。
- 時間の流れを指定しないと、クリップがランダムに感じられます。最初から最後まで何が起こるかを描写してください。
テキストから動画への変換と画像から動画への変換の比較
| 機能 | テキストから動画への変換 | 画像から動画への変換 |
|---|---|---|
| 入力 | テキストプロンプトのみ | テキストプロンプト + 元画像 |
| 制御 | 創造性を自由に発揮できます | 画像の視覚的な特徴を保持します |
| 一貫性 | モデルがすべてを解釈します | 元画像の見た目を基準にします |
| 最適な用途 | ゼロからオリジナルコンテンツを作成 | 既存のデザイン、写真、アートをアニメーション化 |
| 開始方法 | シーンを描写するだけです | image_urls を含め、「これをアニメーション化して」と指定します |
関連スキル
- 画像生成 — 画像から動画を生成するための開始フレームを作成します
- 動画編集 — 生成した動画を編集し、仕上げます
- 楽曲生成 — 動画に合わせる音楽を作成します
- 効果音 — 動画プロジェクトに効果音を追加します
- 音声生成 — 動画用のナレーションを生成します
ドキュメント
コメント
Markdown 対応