seedance について
Seedance APIで動画を生成するためのスキルです。テキストや画像を使う手順、非同期タスクのポーリング、モデル選択肢に加え、生成前のプレビュー確認を定めています。
主な機能
- 01テキストからの動画生成
- 02画像と参照素材の入力
- 03非同期タスクのポーリング
- 04標準・高速モデルの選択
- 05プレビュー確認フロー
- 06動画のダウンロード案内
活用シーン
- 01テキストプロンプトから動画を作成
- 02画像を最初のフレームとしてアニメーション化
- 03キャラクターやスタイルの参照素材を利用
- 04生成前にキーフレームのプレビューを確認
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ okou-ai/ okou-skills --skill seedanceインストール後、Claude Code で/seedanceを入力して読み込まれたか確認します。
詳細
トラブルシューティング
リクエストが失敗した場合は、okou doctor check-connector --env-name SEEDANCE_TOKEN または okou doctor check-connector --url https://ark.ap-southeast.bytepluses.com/api/v3/contents/generations/tasks --method POST を実行してください。
動画プレビュー
- 動画を生成する前に、ユーザーの主題、スタイル、アスペクト比に合ったキーフレームをいくつか用意してください。提供済み、またはすでに承認された画像のうち適切なものを再利用してください。
- 実際の画像をアクセス可能なリンクで表示し、意図する動きを簡潔に説明して、ユーザーに確認を求めてください。ターンを終了して待機し、確認を得る前に動画ジョブを開始しないでください。リクエストがあればプレビューを修正してください。
- 確認を得た後、動画を生成してください。選択したモデルが対応している場合は、承認済みの画像を最初/最後のフレーム、または参照画像として使用してください。対応していない場合は、プロンプトで承認済みのビジュアルの方向性に従ってください。プレビューに変更がなければ、既存の確認を再利用してください。
プレビューのメッセージは短くしてください。画像、簡潔な動きの説明、確認の質問を1つだけ含めます。
使用方法
動画生成は非同期です。タスクを送信 → タスク ID を取得 → succeeded になるまでポーリング → 動画 URL を使用(有効期間は24時間)。
1. テキストから動画を生成(標準 — 1080p)
/tmp/seedance_request.json に書き込みます。
{
"model": "dreamina-seedance-2-0-260128",
"content": [
{ "type": "text", "text": "A golden retriever puppy playing in autumn leaves, cinematic slow motion" }
],
"resolution": "1080p",
"ratio": "16:9",
"duration": 5
}
curl -s -X POST "https://ark.ap-southeast.bytepluses.com/api/v3/contents/generations/tasks" --header "Authorization: Bearer $SEEDANCE_TOKEN" --header "Content-Type: application/json" -d @/tmp/seedance_request.json | jq -r '.id'
2. テキストから動画を生成(高速 — 720p、低コスト)
/tmp/seedance_request.json に書き込みます。
{
"model": "dreamina-seedance-2-0-fast-260128",
"content": [
{ "type": "text", "text": "A timelapse of clouds rolling over mountain peaks, epic wide angle" }
],
"resolution": "720p",
"ratio": "16:9",
"duration": 5
}
curl -s -X POST "https://ark.ap-southeast.bytepluses.com/api/v3/contents/generations/tasks" --header "Authorization: Bearer $SEEDANCE_TOKEN" --header "Content-Type: application/json" -d @/tmp/seedance_request.json | jq -r '.id'
3. タスクのステータスをポーリング
<task-id> を、上記の作成呼び出しで返された ID に置き換えます。
curl -s "https://ark.ap-southeast.bytepluses.com/api/v3/contents/generations/tasks/<task-id>" --header "Authorization: Bearer $SEEDANCE_TOKEN" | jq '{status: .status, video_url: .content.video_url, duration: .duration, resolution: .resolution}'
status が succeeded になるまでポーリングします。終了状態:succeeded、failed、expired、cancelled。
4. 画像から動画を生成(最初のフレームをアニメーション化)
/tmp/seedance_request.json に書き込みます。
{
"model": "dreamina-seedance-2-0-260128",
"content": [
{
"type": "image_url",
"image_url": { "url": "https://example.com/your-image.jpg" },
"role": "first_frame"
},
{ "type": "text", "text": "The camera slowly zooms in on the subject" }
],
"resolution": "1080p",
"ratio": "16:9",
"duration": 5
}
curl -s -X POST "https://ark.ap-southeast.bytepluses.com/api/v3/contents/generations/tasks" --header "Authorization: Bearer $SEEDANCE_TOKEN" --header "Content-Type: application/json" -d @/tmp/seedance_request.json | jq -r '.id'
5. 参照画像から動画を生成(キャラクター/スタイルの参照)
/tmp/seedance_request.json に書き込みます。
{
"model": "dreamina-seedance-2-0-260128",
"content": [
{
"type": "image_url",
"image_url": { "url": "https://example.com/character.jpg" },
"role": "reference_image"
},
{ "type": "text", "text": "The character walks forward confidently in an urban environment" }
],
"resolution": "1080p",
"ratio": "9:16",
"duration": 5
}
curl -s -X POST "https://ark.ap-southeast.bytepluses.com/api/v3/contents/generations/tasks" --header "Authorization: Bearer $SEEDANCE_TOKEN" --header "Content-Type: application/json" -d @/tmp/seedance_request.json | jq -r '.id'
6. 生成した動画をダウンロード
<video-url> を、完了したタスクの content.video_url に置き換えます。
curl -sL "<video-url>" -o /tmp/seedance_output.mp4
モデルのリファレンス
| モデル ID | ティア | 最大解像度 | 長さ |
|---|---|---|---|
dreamina-seedance-2-0-260128 | 標準 | 1080p | 4~15秒または -1(スマート) |
dreamina-seedance-2-0-fast-260128 | 高速 | 720p | 4~15秒または -1(スマート) |
主なパラメーター
| パラメーター | 値 | デフォルト | 説明 |
|---|---|---|---|
resolution | 480p、720p、1080p | 720p | 出力解像度 |
ratio | 16:9、4:3、1:1、3:4、9:16、21:9、adaptive | adaptive | アスペクト比 |
duration | 4~15または -1 | 5 | 秒単位の長さ。-1 = スマート自動 |
generate_audio | true/false | true | AI 生成音声を含める |
seed | 整数 | -1 | 再現性のための固定シード。-1 = ランダム |
watermark | true/false | false | 出力にウォーターマークを追加 |
return_last_frame | true/false | false | 最後のフレームも PNG URL として返す |
画像の役割の値
| 役割 | 説明 |
|---|---|
first_frame | 動画の最初のフレームとして使用する画像 |
last_frame | 動画の最後のフレームとして使用する画像 |
reference_image | キャラクター/スタイルの参照(画像は最大9枚) |
reference_video | 動画スタイルの参照(動画は最大3本、URL のみ — Base64 は不可) |
reference_audio | 音声の参照(クリップは最大3つ) |
ガイドライン
- 動画 URL の有効期間は24時間です —
status: succeededの直後にダウンロードしてください。 - 非同期フロー — POST の後は必ず GET をポーリングしてください。同じタスクを再送信しないでください。
- レート制限 — 個人アカウントでは同時実行タスクは3件、180 RPM です。
- 画像入力 — 公開 URL または Base64(
data:image/jpeg;base64,...)に対応しています。動画入力は URL のみです。 - フレックスティアなし — Seedance がサポートするのは
service_tier: "default"のみです。 - タスク記録の有効期間 — タスク ID は7日後に削除されます。