はじめに
daVinci-MagiHuman テキストから動画 は、書いたプロンプトを、音声付きの短いクリップに変えます。daVinci-MagiHuman は、Sand.ai と SII-GAIR によるオープンな 150 億パラメータのモデルで、映像とサウンドトラックを一緒に生成します。話してほしい人物のセリフを引用符で囲めば、モデルがそれを話します。このエンドポイントは、256p、720p、1080p のいずれかで、16:9 か 9:16 の 5〜10 秒を返します。手持ちの音声や歌を audio_url で送ることもできます。
手元の素材に合わせてモードを選ぶ
| 手元にあるもの | モード |
|---|---|
| 文章による説明 | daVinci-MagiHuman テキストから動画 |
| 出発点にする写真(手持ちの音声の有無を問わず) | daVinci-MagiHuman 画像から動画 |
主な機能とハイライト
映像と声を 1 つのプロンプトから
1 回のリクエストで、映像とサウンドトラックが返ります。誰がフレームに映り、何をして、引用符で何を言うかを書いてください。声を選んだり、2 つ目の工程を実行したりする必要はありません。
当社の計測結果
当社は 2 本のテキストから動画のクリップを生成しました。1 本目は 1080p・16:9 で、約 1904 x 1088、25 fps、5.0 秒、音声付きで、処理に約 3 分 53 秒かかりました。2 本目は 720p・9:16 で、約 726 x 1270、5.0 秒、約 1 分かかりました。両方のサウンドトラックを文字起こししたところ、どちらも引用されたセリフと一語一句一致しました。16:9 の 720p は 1280 x 720 ちょうどではありません(画像から動画の試行では約 1358 x 678 でした)。そのため、サイズは目安として扱ってください。
3 段階の解像度と 2 種類の画面の形
resolution は 256p、720p(既定)、1080p のいずれかです。モデルは低い基本解像度で生成し、高い段階は超解像の工程で作られます。aspect_ratio は 16:9(既定)か 9:16 です。解像度が高いほど 1 秒あたりの料金は上がりますが、アスペクト比によって料金は変わりません。
手持ちの音声
audio_url は任意です。音声または歌のファイルを添えると、声を作る代わりに、その音声に合わせて動画が生成されます。これは画像から動画で試したもので、このエンドポイントでは試していません。
対応言語
出品元は、中国語(北京語・広東語)、英語、日本語、韓国語、ドイツ語、フランス語を掲載しています。当社が試したのは英語です。
リクエストパラメーター
| パラメーター | 必須 | 説明 |
|---|---|---|
prompt | はい | 画面に誰がいて、どこで何をしているか、カメラがどう見ているかを書いてください。話すセリフは引用符で囲んでください。 3 文字以上 · 5000 文字以内 |
audio_url | いいえ | 任意です。音声または歌のファイルへの公開リンクです。 |
aspect_ratio | いいえ | 横長は 16:9(既定)、縦長は 9:16 です。アスペクト比によって料金は変わりません。 |
resolution | いいえ | 256p、720p(既定)、1080p のいずれかです。解像度が高いほど 1 秒あたりの料金は上がります。 |
duration_seconds | いいえ | 5〜10 秒、既定は 5 秒です。秒数ごとに課金されます。 |
seed | いいえ | 任意の整数です。同じ seed と同じ入力では、似た結果になりますが、同一になることは保証されません。 |
料金
リクエストした長さの秒数ごとに課金されます。1 秒あたりの料金は解像度によって変わり、音声とアスペクト比では変わりません。失敗したリクエストには課金されません。
| 仕様 | 料金 |
|---|---|
| $0.024 / 秒 |
| $0.048 / 秒 |
| $0.072 / 秒 |
ユースケース
短い発話クリップ
あいさつ、自己紹介、予告など。1 人の人物が 1 言だけ話す、5〜10 秒の動画です。声はこちらで生成されます。
縦型クリップ
スマートフォンの画面向けには aspect_ratio を 9:16 にしてください。当社の 720p の縦型の試行は、約 726 x 1270 で返ってきました。
セリフの下書き
より長い作品を計画する前に、1 つのセリフ、顔、背景をまとめて試せます。
プロンプトガイドと実践のヒント
セリフは引用符で囲む
誰がどのように話すかを書き、そのあとにセリフを置いてください:says softly: "..."。当社のセリフは 5 秒のクリップで 8〜10 語でした。
構図を書き、機器は書かない
追加の 9:16 の試行では、スマートフォンで自撮りを頼んだところ、カメラを向いたスマートフォンが映り込みました。代わりに "looks straight into the camera" と、"vertical medium close-up" のようなショットサイズを書いてください。
順番に書く
人物と場所を最初に、次に動作とセリフ、最後に光とカメラを書きます:Warm practical light, shallow depth of field、または Handheld, eye level。
最初の結果を聴く
サウンドは生成されるので、クリップを再生して、セリフと聞き比べてから先へ進んでください。seed を使うと、1 つだけ変えるあいだも入力を揃えられます。ただし結果は似たものになるだけで、同一になるとは限りません。
モデルの選び方
すでに声の録音と肖像写真があり、その音声で動く最長 300 秒のクリップが欲しい場合は、OmniHuman 2.0 を使ってください。Kling Avatar 2.0 も同じ考え方です。書いたセリフをモデルに話させたい場合、または 9:16 のクリップが必要な場合は、daVinci-MagiHuman を選んでください。
API クイックスタート
# Generate the idempotency key once; reuse it when retrying after a lost response.
export SPICY_IDEMPOTENCY_KEY="${SPICY_IDEMPOTENCY_KEY:-$(uuidgen)}"
curl -X POST https://api.spicyapi.ai/api/v1/jobs/createTask \
-H "Authorization: Bearer $SPICY_API_KEY" \
-H "Content-Type: application/json" \
-H "Idempotency-Key: $SPICY_IDEMPOTENCY_KEY" \
-d '{
"model": "sand-ai/davinci-magihuman/text-to-video",
"input": {
"aspect_ratio": "16:9",
"duration_seconds": 5,
"prompt": "A slow aerial shot drifting over a misty pine forest at sunrise",
"resolution": "720p"
}
}'
# Copy data.taskId from the response into TASK_ID, then poll the status.
TASK_ID="TASK_ID_FROM_RESPONSE"
curl "https://api.spicyapi.ai/api/v1/jobs/recordInfo?taskId=$TASK_ID" \
-H "Authorization: Bearer $SPICY_API_KEY"
認証、完全なスキーマ、ポーリング、エラー処理は API リファレンスを参照してください。


