キャストとバイブル
ここにあるものはすべてプロジェクト間で再利用されるため、一度しっかり作っておく価値があります。
キャラクター(bible/characters/<id>/)
character.jsonのフィールド:id、name、species、look(密な一文:体、顔、髪/毛、服装、特徴的なアクセサリー一つ、そばかす、ほくろ、傷、眼鏡、イヤリングなど特徴的な印はすべて名前で列挙。プロンプトチェックは一つでも欠けたビデオプロンプトを拒否し、アイデンティティ評価は毎テイクでそれぞれをチェックします)、traits、flaw、role(真面目役 / 変人役 / …)、voiceDesc、voice、sheets。
- シート: 無地の背景に正面、3/4、全身を写した3:2、2Kの画像1枚。
node engine/gen.mjs still "<シートのプロンプト>" bible/characters/<id>/sheet.png --ar 3:2 --size 2Kテンプレート:「無地の暖かいクリーム色(#F2E8D5)スタジオ背景のキャラクター参考シート、フォトリアル、35mmフィルムルック、柔らかな均一なキーライト。同じキャラクターが3つ並んで表示:(1)正面、(2)3/4正面、(3)全身。キャラクター:。3つのビューすべてで同一の服装と印。テキストやラベルはなし。」 自分で結果を確認してください。解剖学的な誤り、ビューの不一致、テキストがある場合はリロール。1つのビューが悪い場合、リロールにお金を払う代わりにffmpegでクロップしてください。 - 音声:
voice.id:Kieが提供するElevenLabsのプリセット(engine/voices.txtにリスト、プレビュー:https://static.aiquickdraw.com/elevenlabs/voice/<id>.mp3)。言語ごとのオーバーライドは任意:voice.en/voice.es。voice.eleven:ユーザー自身のElevenLabsアカウント上の音声。Kieのエンドポイントが失敗したときに使用。無料プランはプリメイド音声のみ使用可能:onwK4e9ZLuTAKqWW03F9(Daniel、イギリス英語)、TX3LPaxmHKxFdv7VOQHJ(Liam、若い声)、JBFqnCBsd6RMkjVDRZzb(George、温かいイギリス英語)、EXAVITQu4vr4xnSDxMaL(Sarah)、pNInz6obpgDQGcFmaJgB(Adam)。voice.sampleText.{en,es}:約8秒のキャラクターに合った台詞。node engine/gen.mjs sample <id> --lang enでvoice-en.mp3が作成されます。Seedanceはこれを@audioNとして使用するため、すべてのショットで同じ音声が維持されます。
traitsに一つ、ギャグや決めゼリフを追加します。- 承認(フローv5キャストゲート): 作成者にシート、外見、音声サンプルを見せ、承諾を得たら
node engine/studio.mjs approve-character <id> --said "<承認者の言葉>"(スタイル内シートの場合はcast.mjs approve)。承認されたテイクから顔のアンカーをcontinuity.mjs <slug> --identity <take> --lock-anchorで固定します。
リアルなスタイル:ネイティブリファレンス(「ステッカー」ルックを修正したルール)
画像モデルはスタジオの参考写真をシーンに合成し、ポーズと照明を維持するため、キャラクターが貼り付けられたように見えます。リアルなスタイルの場合:
- まず空のセットプレートを作成します。
- 各キャラクターをテキストのみからセット内に(セットプレートのみを参照として)Nano Banana Proで2Kで生成します:「a frame grab ... a real, normal-sized <動物/人> ... 部屋と同じ光源に照らされ、床に柔らかな影、同じビデオテクスチャ ... 合成されていない」。服装は、実際の衣服として、不完全にフィットする様子(「ゆったり、肩でたるんでいる」)を記述する必要があります。
- そのフレームからキャラクターをクロップ→
ref-native.pngを作成し、"refs": ["ref-native.png"]と設定します。スタジオのsheet.pngはデザイン参照としてのみ残し、ショットに決して与えないでください。 - リアルなサイズ表現(「家具の隣で小さな、標準サイズのイエネコ」)と自然な動物の姿勢を使用します。
リアルなキャラクターは、スタイル内シートに加えてネイティブリファレンス(
bible/characters/<id>/ref-native.png)があると最も効果的です。
セット(bible/sets/<id>/set.json)
look(密な一文)、plates(最低でもワイド9:16の空のプレート)、geography(物の位置、誰がフレームのどちら側に立つか)。
node engine/gen.mjs still "<スタイル文字列> wide establishing shot, empty of characters. <look>. No text, no people." bible/sets/<id>/plate-wide.png --size 2K
スタイル内キャラクターシート(フェーズ3、現在の方法)
node engine/cast.mjs sheet <char> --style <style> --set <set>で、スタイル内(リアルなスタイル:セットプレート内で撮影)の2x2シートを作成し、bible/characters/<char>/<style>/の下にfront、threeQuarter、profile、fullビューに分割し、character.json → looks.<style>に記録します。確認してスコアを付けます:cast.mjs approve <char> --style <style> consistency=N anatomy=N design=N style=N layout=N。却下されたシートは--note "<修正内容>"で再生成します。ショットはその後、必要なフレーミングのビューのみを取得します。
スタイル
スタイルシートはbible/styles/<id>/style.jsonにあり、engine/style.mjsで管理されます(スタジオスキルおよびstudio/references/styles.mdを参照)。
クローンミー / AIインフルエンサー
ユーザー自身の肖像、または架空の人物にのみ使用します。実際の第三者をクローンしてはいけません。
- ユーザーに自分自身の写真6〜12枚(正面、3/4、横顔、2つの服装、良い照明)を
bible/characters/<id>/photos/にドロップしてもらい、さらに1〜2分のクリアな音声をvoice-source.mp3として用意してもらいます。 - 写真を参照として(
--ref各写真、最大10枚)、Nano Bananaでシートを作成します:「Character reference sheet of this exact person…」。 - 音声:インスタント音声クローンにはElevenLabsの有料プラン(Starter)が必要です。ElevenLabsのUIでクローンし、新しい音声IDを
voice.elevenに"provider": "elevenlabs"として設定します。それまでは、最も近いプリセットを選びます。 - トーキングヘッドコンテンツの場合:
node engine/gen.mjs talk <写真またはキーフレーム> <line.mp3> out.mp4 --model infinitetalk(480pで$0.015/秒)。シーンの場合は、通常のショットリストでキャラクターを使用します。