
複数のクリップにわたるAIビデオの連続性を保つ方法
ステートレジスタ、境界フレーム、継続プロンプト、APIコール、連続性チェック、修復ルールを使用してAIビデオを複数クリップにわたって拡張する方法を学びます。
AIビデオの連続性は、各クリップが次のクリップへの書き込みと視覚的なハンドオフで終わるときに改善されます。 最終フレームはこのハンドオフの一部ですが、それだけでは十分ではありません。キャラクターがどこに立っているか、どの方向を向いているか、何を持っているか、何が変わったのか、そして次のショットが何をしてもよいのかを記録するステートレジスタが必要です。
このチュートリアルは、1つのモデル呼び出しより長いシーケンスを構築します。この例では、ByteDanceが30秒までのクリップとマルチラウンド拡張をドキュメント化しているため、2つのSeedance 2.5生成を使用しています。[1] ステートレジスタ方式は、より短いモデルと個別のショット編集にも適用されます。
TL;DR
- 最初のクリップを生成する前に、完全なシーケンスを計画します。
- 最も難しいアクションの途中ではなく、安定した視覚状態で分割します。
- ステートレジスタに、アイデンティティ、位置、方向、小道具、環境、光、カメラ、および未解決のアクションを記録します。
- 最初のクリップの最後のフレームをリクエストし、それを境界アンカーとして使用します。
- 継続プロンプトを継承した状態の再述から始めます。
- 結合をフレーム単位でレビューしてから、通常速度でレビューします。
- シーケンス全体を再生成しないでください;境界または影響を受けたクリップのみを修復します。

最終フレームだけでは連続性が保たれない理由
フレームは、ある瞬間の外観と位置を示します。それは、移動方向、キャラクターの意図、小道具の履歴、オーディオタイミング、または次に何が起こる必要があるかを完全には説明しません。
右端のフレームに自転車乗りがいると想像してください。画像は、次の生成が、自転車乗りが左から到着したのか、右に出ようとしているのか、または停止して方向転換するのか判断できません。ステートレジスタは、この欠けている時間情報を提供します。
連続性を8つの接続状態と考えてください:
| 状態 | 例 |
|---|---|
| アイデンティティ | 同じライダー、ヘルメット、青いジャケット、黒い自転車 |
| 位置 | ライダーが右の3分の1、自転車は道路と並行 |
| 方向 | 左から右へ移動、反転なし |
| ポーズ/アクション | 右足が下、両手がハンドルバーにある、速度低下中 |
| 小道具 | 赤いバックパックはライダーのままで、フレームケージに水ボトル |
| 環境 | 濡れた山道、松の木、朝の霧 |
| 光 | 左上からのソフトな逆光 |
| カメラ/オーディオ | 低いトラッキングビュー、タイヤノイズがカットの下で続く |
安定したシーケンスは、ストーリーが意図的に1つを変更しない限り、8つすべてを保持します。
ステップ1:最初のコール前に完全なシーケンスを計画する
完全なアクションをプレーンランゲージで記述します。その後、自然なハンドオフ状態に基づいてクリップに分割します。
完全なシーケンス:
自転車乗りが霧を通って下降し、倒れた枝の前でブレーキをかけ、自転車を運ぶために
回り、再度乗り込み、日当たりの良い開口部に向かって続ける。
クリップ1:
下降とブレーキング。道路の右側に停止している自転車で終了し、
前輪がわずかに左に向き、ライダーの右足が地面に接している。
クリップ2:
ライダーが下り、自転車を枝の周りに運び、再度乗り込み、
日当たりの良い開口部に向かって出発。分割は、ブレーキングアクション後に発生します。前輪が回転している間や足が地面に向かって移動している間には発生しません。安定したハンドオフは、継続に曖昧性が少なくなるようにします。
ステップ2:マスター連続性バイブルを作成する
連続性バイブルには、シーケンス全体に適用される詳細情報が含まれています。
{
"character": {
"identity": "同じ成人サイクリスト",
"wardrobe": "マット黒いヘルメット、青いレインジャケット、黒いパンツ",
"fixed_details": "赤いバックパック、手袋なし"
},
"vehicle": {
"type": "黒いハードテールマウンテンバイク",
"fixed_details": "ダウンチューブケージに水ボトル、リアサスペンションなし"
},
"world": {
"location": "松の森を通る濡れた山道",
"weather": "軽い霧、活動的な雨なし",
"light": "左上からのソフトな朝の逆光"
},
"camera_language": {
"height": "低いウエスト高さトラッキング",
"lens": "適度に広い見方",
"movement": "小さな自然な振動で滑らか",
"screen_direction": "左から右"
},
"audio": {
"bed": "タイヤノイズ、軽い風、遠くの鳥",
"music": "なし"
}
}各クリップでこの情報を再利用します。別のキャラクター一貫性ガイドは参照デザインをカバーしています。連続性バイブルは、アイデンティティを取り巻く制作決定を記録します。
ステップ3:クリップ固有のステートレジスタを追加する
レジスタには3つの列があります:継承された状態、このクリップ中の変更、および必要な終了状態。
{
"clip_id": "01-descent-and-stop",
"inherits": {
"rider_position": "左の3分の1",
"direction": "左から右",
"speed": "中程度の下り坂",
"hands": "両方ともハンドルバーに",
"bike": "直立して回転中"
},
"changes": [
"倒れた枝が見えるようになる",
"ライダーが反転なしでブレーキをかける",
"自転車は道路の右側に移動",
"右足が地面に下がる"
],
"end_state": {
"rider_position": "右の3分の1",
"direction": "まだ右を向いている",
"speed": "停止中",
"right_foot": "地面に",
"left_foot": "ペダルに",
"front_wheel": "わずかに左に向いている",
"hands": "両方ともハンドルバーに",
"branch": "2メートル前方",
"camera": "安定した低いスリークォータービュー",
"hold": "1秒"
}
}次のクリップのinheritsオブジェクトは、このend_stateと一致する必要があります。異なる場合は、生成に費用がかかる前に連続性の問題を見つけたことになります。
ステップ4:意図的なハンドオフで最初のクリップを生成する
プロンプトは、最終状態に十分な注意を払うべきです。
マット黒いヘルメット、青いレインジャケット、黒いパンツ、赤いバックパック、
黒いハードテールマウンテンバイクを持つ同じサイクリストが、濡れた森の道を
左から右に乗ります。低いウエスト高さトラッキングカメラ、左上からのソフトな
朝の逆光。
サイクリストは倒れた枝を見つけ、反転なしで徐々にブレーキをかけ、
道路の右側に移動して停止します。右足が地面に下がり、左足がペダルのままです。
両手がハンドルバーに残っています。前輪はわずかに左を指しています。枝が
2メートル前方にある低いスリークォータービューで終了します。
正確な最終状態を1秒間保持します。カット、衣装変更、追加ライダー、
または方向反転なし。APIコールで最後のフレームをリクエストします:
curl https://reapi.ai/api/v1/videos/generations \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "doubao-seedance-2.5-face",
"prompt": "The cyclist rides left to right, brakes before a fallen branch, and stops on the right side of the road. Right foot on ground, left foot on pedal, both hands on handlebars, front wheel slightly left. Hold the exact final state for one second. Preserve rider, bicycle, wardrobe, road, light, and direction.",
"image_urls": ["https://example.com/rider-and-bike-reference.jpg"],
"resolution": "720p",
"size": "16:9",
"duration": 12,
"generate_audio": true,
"return_last_frame": true
}'タスクが完了すると、reAPIは生成されたビデオURLを返し、リクエストされた場合はoutput.last_frame_urlを返します。[2]
ステップ5:続行前に境界を監査する
最後のフレームを自動的に転送しないでください。それが書き込まれた終了状態を表していることを確認してください。
{
"identity": "pass",
"screen_direction": "pass",
"right_foot_grounded": "pass",
"left_foot_on_pedal": "repair",
"both_hands_on_handlebars": "pass",
"front_wheel_direction": "pass",
"branch_distance": "pass",
"stable_hold": "pass"
}ハードな連続性条件が失敗した場合は、クリップ1を修復するか、以前の有効なフレームを選択してください。無効な境界を転送すると、次の生成がエラーを継承します。
ステップ6:継続リクエストを構築する
2番目のプロンプトを継承された状態の再述から始めてから、新しい変更だけを説明してください。
画像1から正確に始めてください。同じサイクリストが濡れた道路の右側に停止し、
右を向いています。右足が地面に、左足がペダルに、両手がハンドルバーを保持し、
前輪はわずかに左を指し、倒れた枝は2メートル前方にあります。同じライダー、
ヘルメット、青いジャケット、赤いバックパック、黒い自転車、水ボトル、
霧、光の方向を保持します。
ライダーは左側を下り、自転車を回さずに、フレームで持ち上げ、枝の近端の周りを
歩き、両方のホイールを右に向けて道路に戻し、再度乗り込み、より明るい開口部に
向かって乗ります。左から右の画面方向を保持してください。ライダーがフレーム右から
出たところで終了します。新しい小道具、衣装変更、天候の変更、またはカットなし。返されたイメージを明示的な最初のフレームとして使用します:
curl https://reapi.ai/api/v1/videos/generations \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "doubao-seedance-2.5-face",
"prompt": "Begin exactly from Image 1. Preserve rider, wardrobe, bicycle, prop placement, fog, light, and left-to-right direction. The rider dismounts, carries the bicycle around the branch without reversing it, remounts, and exits frame right. No cuts or new objects.",
"image_with_roles": [
{
"url": "LAST_FRAME_URL_FROM_CLIP_1",
"role": "first_frame"
}
],
"resolution": "720p",
"size": "adaptive",
"duration": 14,
"generate_audio": true,
"return_last_frame": true
}'現在のreAPIルートでは、最初フレームロールはimage_with_rolesを使用し、適応的なサイジングが必要であり、同じリクエストでimage_urls、video_urls、またはaudio_urlsと混在できません。これはリクエスト検証で処理されるべきゲートウェイルールです。[2]
ハードなファーストフレームロールの代わりに複数のアイデンティティ参照が必要な場合は、参照画像ワークフローを使用し、前の最終フレームを順序付けられた入力の1つとして説明してください。これはより多くのアイデンティティ証拠を提供しますが、より柔らかな境界です。正しい選択は、どの障害がより高コストかによって異なります。
ステップ7:3つの速度で結合を確認する
クリップをエディタで並べて配置します。
フレーム単位
クリップ1の最後のフレームとクリップ2の最初のフレームを、身体の形、衣装、手の位置、小道具の位置、自転車のジオメトリ、光、カメラの高さで比較します。
半速度
動きが不自然に再開するかどうか、ホイールがジャンプするかどうか、肢が支持を変えるかどうか、またはカメラがカットで加速するかどうかを確認してください。
通常速度
視聴者が結合に気づくかどうかを判断します。小さなテクスチャの違いは動き中に見えなくなることがありますが、方向の反転はそうではありません。
境界レポートを使用:
{
"visual_match": "pass",
"screen_direction": "pass",
"action_continuation": "repair",
"camera_velocity": "pass",
"audio_bed": "repair in edit",
"note": "clip 2 lifts the left foot before the hands shift to the frame"
}ステップ8:最小の連続性の破損を修復する
すべての不一致が再生成を必要とするわけではありません。
| 問題 | 最小実践的修復 |
|---|---|
| 1つまたは2つの悪い境界フレーム | より清潔なポイントにトリミング |
| オーディオ環境の変化 | 連続音ベッドで編集に置き換え |
| カメラが結合で一時停止 | 短い重複を追加するか、安定したカットを選択 |
| 小道具が手を切り替える | 影響を受けた継続ビートを再生成 |
| キャラクターまたは車両の変更 | 境界/参照ワークフローを強化してクリップ2を再生成 |
| 画面の方向が反転 | 継承された方向を書き直してクリップ2を再生成 |
| 照明がわずかにシフト | アイデンティティとジオメトリが通過した場合、後処理で段階付け |
連続性はピクセル同一性ではありません。目標は、ストーリー、スペース、アクションが読み取り可能である信頼できるハンドオフです。
ステップ9:レジスタを複数のクリップにスケール
より長いプロジェクトでは、マスターバイブルとクリップごとのレジスタを保存します。
/sequence
master-continuity.json
clip-01-ledger.json
clip-02-ledger.json
clip-03-ledger.json
/references
/boundary-frames
/generated
/approvedクリップ3を生成する前に、次を比較します:
clip-02.end_state == clip-03.inheritsエージェントは、この一貫性チェックを自動的に実行できます。人間は依然として、アイデンティティ、機密の類似性、ナラティブの意図、および最終的なカットを承認する必要があります。
一般的な初心者の間違い
高速アクション中の分割
停止、保持、接触、または完了したジェスチャーを選択します。中間動作の境界は、次の生成を1つのイメージから運動量を推測することを強制します。
変わるもの、継承した事実を無視する場合のみ説明する
継続には継承された事実も必要です。新しいアクションの前に、方向、小道具、位置、光、カメラの条件を再述してください。
無効な最後のフレームを転送する
最初にそれを確認してください。歪んだ手や欠けている小道具が、次のクリップの開始証拠になります。
オーディオを無視しながら視覚的な連続性を解決する
分離生成がトーンまたは音量の変化を生成する場合、結合全体で1つの環境ベッドを使用します。
遅い障害後のすべてのクリップを再生成する
承認されたクリップをフリーズします。境界または最初に失敗した継続を修復します。
FAQ
AIビデオを続けるのに最後のフレームで十分ですか?
外観と位置に役立ちますが、方向、意図、小道具の履歴、または将来のアクションには役立ちません。ステートレジスタと継続プロンプトと組み合わせてください。
長いシーケンスをどこで分割する必要がありますか?
アクションが落ち着いた後に分割します:停止、着地、配置オブジェクト、閉まったドア、保持されたポーズ、または安定したカメラフレーム。
ステートレジスタにはいくつの詳細が必要ですか?
説明されていない変更が視聴者を気を散らしたり、次のアクションを破損したりするような何かをすべて記録します。安全にバリエーション可能な装飾的な詳細は無視してください。
最初のフレームのロールを他の参照と組み合わせることはできますか?
現在のreAPI Seedance 2.5リクエストサーフェスではできません。image_with_rolesは他のメディア参照フィールドと組み合わせることができないため、ハードなフレーム境界またはより広い参照セットを選択します。
すべてのクリップが最大期間を使用する必要がありますか?
いいえ。自然なアクションとハンドオフの周りに期間を選択します。より短い完全な拍は、その制限まで満たされた長いクリップより制御が簡単です。
結論
AIビデオ連続性はハンドオフ規律です。完全なシーケンスを計画し、各クリップを安定した状態で終了し、境界フレームを確認し、新しいアクションを導入する前に、次のプロンプトが書き込まれたレジスタを継承させます。これは変動を排除しませんが、「それを続けさせる」を検査、修復、自動化できるプロダクションプロセスに変えます。
参考文献
- ByteDance Seed. One-take Creation, Flexible Referencing: Introducing Seedance 2.5. July 31, 2026. seed.bytedance.com
- reAPI. Seedance 2.5 API — Parameters, Modes & Billing. Retrieved August 27, 2026. reapi.ai
- ByteDance Seed. Seedance 2.0 Official Launch. February 12, 2026. seed.bytedance.com
著者

カテゴリ
他の記事

Dreamina Seedance 2.5プロンプトガイド:参照素材とタイミング
公式の参照素材上限を踏まえ、30秒の段階構成、タイムスタンプ制御、編集、延長、キーフレームでSeedance 2.5のプロンプトを改善します。


Midjourneyに公式APIはない?V8.2とAPI選択肢
Midjourneyに公開APIはありません。V8.2の変更点、アカウント自動化が危険な理由、認可されたAPI選択肢の評価方法を徹底解説します。


Seedance 2.0はローカル実行できる?実際に使える方法
Seedanceはローカル実行できません。モデルの重みが一度も公開されていないためです。その証拠、自宅で動くオープンウェイト動画モデル、APIという選択肢を解説します。
