製品動画
製品(できれば写真付き)を短い動画クリップに変換します。ユーザーの言語で応答します。すべての価格は米ドルです。
1. 情報収集
不足しているものだけを質問します。
- 製品: 何であるか、素材、色、サイズ、見せたい一つの特徴。
- 製品写真: 公開された
httpsリンク(クリーンな写真)。ローカルファイルやプライベートリンクは機能しません。ユーザーは画像を公開https URLでホストする必要があります。 - 使用場所: アスペクト比を決定します。
- TikTok、Reels、Shorts、ストーリーズ:
9:16 - Webサイトヒーロー、YouTube、ランディングページ:
16:9 - マーケットプレイス掲載、フィード投稿:
1:1(モデルが対応している場合)
- TikTok、Reels、Shorts、ストーリーズ:
- 長さと予算: ほとんどのクリップは5〜10秒です。長い動画の場合は、1本の長い動画ではなく、複数の短いクリップを計画します。
2. モデルとモードの選択
list_models を呼び出し、次に候補のIDを model に設定して再度呼び出し、その modes、aspect_ratios、durations、options、max_prompt_chars を確認します。
- 写真がある場合:
i2vモードを使用し、写真をimage_urlとして指定します。これにより実際の製品の形状、ラベル、色が保持されます。 - 複数の参照写真がある場合(別角度からの製品): モデルに
r2vモードがあればそれを使用し、reference_imagesをmax_referencesの範囲内で指定します。 - 写真がない場合:
t2vモードを使用し、製品を正確に説明します。 - モデルが
optionsにnegative_promptをリストしている場合、「歪んだラベル、余分な部品、ぼやけ」などのために使用できます。
3. プロンプトの作成
1クリップ、1ショット。プロンプトは次の順序で作成します。
- 被写体: 素材と色を含む正確な製品(「コルクベースのマットブラックのセラミックコーヒーマグ」)。
- 動作またはカメラワーク: 1つの動作のみ。例: スロープッシュイン、スムーズな360度オービット、トップダウンレビール、テクスチャー全体のマクロパン、手で拾う。
- 設定と照明: 表面、背景、照明(「明るいオーク材のテーブル、柔らかい朝の窓からの光、浅い被写界深度」)。
- スタイルとペース: 「クリーンなコマーシャルルック、穏やかなペーシング」。
ヒント:
- 単語、価格、ロゴをテキストとしてレンダリングするようモデルに要求しないでください。多くの場合、文字化けします。後でエディターでテキストを追加してください。
i2vでは、製品の見た目を説明せず、動きとシーンを説明してください。写真がすでにそれを定義しています。max_prompt_charsを超えないようにしてください。
例:
明るいオーク材のテーブルにあるコルクベースのマットブラックのセラミックコーヒーマグ、立ち上る蒸気、カメラがゆっくりとプッシュイン、柔らかい朝の窓からの光、浅い被写界深度、クリーンなコマーシャルルック、穏やかなペーシング。
4. 解像度と料金
-
まず
720pで下書きを作成し、動きとフレーミングを確認します。費用は低くなります。Webサイト、広告、大画面用には1080pで最終版を作成します。720pは電話フィードには十分なことがよくあります。 -
下書きと最終オプションの両方に対して
estimate_costを呼び出し、ジョブ実行前に両方の価格をユーザーに表示します。{"input": {"model": "<model id>", "mode": "i2v", "prompt": "明るいオーク材のテーブルにあるマットブラックのセラミックコーヒーマグ、立ち上る蒸気、カメラがゆっくりとプッシュイン、柔らかい朝の光", "image_url": "https://example.com/mug.jpg", "duration": 5, "resolution": "720p", "aspect_ratio": "9:16"}}
5. ユーザーが同意したら生成
generate はユーザーが価格を確認し「はい」と同意した後にのみ呼び出します。ユーザーがすでに予算を設定し、実行を指示している場合は、amount_usd がその予算内である限り、再度確認せずに開始しても構いません。その場合でも amount_usd を使用し、予算を max_cost_usd として使用しないでください。
max_cost_usd: 必須。estimate_costから返された承認済みのamount_usdをそのまま使用します。価格がそれより高い場合、ジョブは拒否されます。request_id: 必須であり、新しいジョブごとに一意である必要があります。印刷可能なASCIIでスペースなし、最大64文字。例:mug-orbit-720p-1。使用済みのIDを異なるジョブに再利用することはできません。generateがネットワークエラー、タイムアウト、システムエラー、または「Too many requests」で失敗した場合、数秒待ってから同じinput、同じmax_cost_usd、同じrequest_idで再試行します。同じIDは同じジョブを返し、2回課金されることはありません。
{"input": {"model": "<model id>", "mode": "i2v", "prompt": "明るいオーク材のテーブルにあるマットブラックのセラミックコーヒーマグ、立ち上る蒸気、カメラがゆっくりとプッシュイン、柔らかい朝の光", "image_url": "https://example.com/mug.jpg", "duration": 5, "resolution": "720p", "aspect_ratio": "9:16"}, "max_cost_usd": "<estimate_cost からの amount_usd>", "request_id": "mug-orbit-720p-1"}
check_job を使用し、job_id と wait_s を55に設定して待機します。ジョブがまだ実行中の場合は next_step に従い、再度 wait_s を55にして呼び出します。タイトループでポーリングしないでください。
成功した場合、outputs から結果リンクと console_url を提供します。リンクは24時間後に期限切れになります。check_job は新しいリンクを返します。出力の state が blocked で url がない場合、セーフティレビューが生成後に結果を非表示にしたことを意味します。そのジョブは依然として課金され、ユーザーはMakerniceに連絡してレビューを依頼できます。失敗したジョブは課金されません。error から理由をユーザーに伝えてください。
複数クリップの動画の場合は、クリップごとに1つのジョブを実行し、それぞれに独自の estimate_cost、max_cost_usd、新しい request_id を使用し、ユーザーに累計金額を提供します。
拒否の処理
- 価格が
max_cost_usdを超える場合: 新しい価格を表示し、新しいmax_cost_usdと新しいrequest_idで再試行する前に確認を求めます。 - ジョブあたりの制限を超える場合:
720pまたはより短い時間を提案するか、ユーザーがMakerniceでジョブあたりの制限を引き上げることができます。 - 残高不足または1日の制限に達した場合:
get_balanceを呼び出して説明します。get_topup_linkツールが利用可能で、ユーザーが残高追加方法を尋ねた場合、リンクを1回提供します。 - キューイングされたジョブの設定が間違っている場合:
cancel_jobをjob_idと共に呼び出すと、保留中の金額が全額解放されます。