申請手順
Gemini Videos Generation API を使用するには、まず Ace Data Cloud コンソール で API Token を取得し、控えておいてください。
まだログインまたは登録していない場合は、自動的にログインページへ移動して登録とログインを促され、完了後に現在のページへ自動的に戻ります。
1 つの API Token でプラットフォーム上のすべてのサービスを呼び出すことができ、サービスごとに個別で申請する必要はありません。 初回申請時には無料クレジットが付与され、無料で体験できます。クレジットが不足した場合は コンソール で共通残高をチャージできます。
📘 完全なドキュメント:Gemini Videos Generation API →
基本的な使用方法
まず基本的な使用方法を確認しましょう。プロンプトprompt、モデル model、アスペクト比 aspect_ratio を入力することで、対応する動画を生成できます。
ここでは Request Headers を設定しており、以下を含みます:
accept:受け取りたいレスポンス結果の形式です。ここではapplication/json、つまり JSON 形式を指定します。authorization:API を呼び出すためのキーです。申請後、直接ドロップダウンから選択できます。
prompt:生成したい動画コンテンツを説明するテキストプロンプトです。必須。model:動画を生成するモデルです。現在はomni-flashのみ対応しており、デフォルトもomni-flashです。aspect_ratio:生成する動画のアスペクト比です。16:9(横向き)または9:16(縦向き)を選択でき、デフォルトは16:9です。resolution:任意の出力解像度です。720pまたは1080pを選択でき、デフォルトは720pです。image_urls:任意の参照画像リンク配列です。動画生成のガイドに使用され、空の項目は無視されます。video_urlsを使用して動画編集を行う場合、このパラメータは必須です(少なくとも 1 枚)。video_urls:任意の参照動画リンク配列(最大 1 つ)です。動画編集 / 動画参照に使用されます。指定する場合は、少なくとも 1 枚のimage_urlsも同時に指定する必要があります。callback_url:非同期コールバックアドレスです。設定後、API は直ちにtask_idを返し、タスク完了時に結果をこのアドレスへ POST します。async:任意です。trueに設定すると、インターフェースは直ちにtask_idを返します。callback_urlを指定する必要はなく、その後対応するタスク照会インターフェースでポーリングして結果を取得します。
success:今回の動画生成リクエストが成功したかどうか。task_id:今回の動画生成タスクの ID。trace_id:今回のリクエストのトラッキング ID。問題の調査に使用します。data:生成された動画結果のリスト。id:生成された動画の一意の識別子。video_url:生成された動画のリンクアドレス(stateがpendingの場合はnull)。state:動画生成タスクの状態。pending/succeeded/failedから選択可能です。aspect_ratio:この動画のアスペクト比。リクエストパラメータと一致します。prompt:この動画の生成に使用されたプロンプト。
started_at、finished_at、elapsed(所要時間、秒)、および cost(今回の課金額、単位:Credit)などのフィールドも含まれます。
結果内の data にある video_url リンクアドレスから、生成された動画を取得するだけです。
対応する CURL コードは以下のとおりです:
画像から動画を生成
参照画像に基づいて動画を生成したい場合は、image_urls に 1 つまたは複数の画像リンクを渡して、動画生成のガイドに使用できます:
動画編集 / 参照動画(動画を入力して動画を生成)
「1 本の動画を入力し、新しい動画を生成する」ことに直接対応しています:video_urls に参照動画リンクを 1 つ(最大 1 つ)渡し、同時に image_urls に少なくとも 1 枚の参照画像を指定し(上流の必須要件)、その後 prompt で希望する編集効果(スタイル変更、シーン変更、要素の追加・削除など)を説明します。
以下は完全な実例です——日差しのあるビーチ動画を雪が降りしきる冬のシーンに変更しながら、ビーチ、ヤシの木、小舟のレイアウトを維持します。動画編集には比較的長い時間がかかるため(この例では約 6.5 分)、async: true を使用して非同期で送信します:
task_id を返します:
task_id を id として Gemini Tasks API をポーリングし、タスク完了後に生成された新しい動画を取得できます(これは本サンプルの実際の返却結果です):
resolution を 1080p に設定してください(その他のパラメータは変更しません)。
ヒント:サンプル内の入力 / 出力メディアリンクはいずれも実際の生成結果です。プラットフォームで生成された動画・画像リンクには保存期限があり、期限切れ後は無効になります。結果を取得したら、速やかにダウンロードして自身のストレージに保存してください。
注意:参照動画は最大 1 本までです。また、video_urlsを指定する場合は、少なくとも 1 枚のimage_urlsを指定する必要があります。そうしない場合、以下のパラメータエラーが返されます:
非同期コールバック
動画生成には一定の処理時間が必要です。長時間接続を維持して待機したくない場合は、callback_url を渡すことができます。この場合、API は直ちに task_id を返し、タスク完了後に最終結果をそのアドレスへ POST します:
タスク結果の照会
非同期コールバックを使用した場合、またはタスクの状態を能動的に照会したい場合は、Gemini Tasks API(POST https://api.acedata.cloud/gemini/tasks)を通じて、task_id に基づきタスクの最新状態と結果を照会できます。リクエストボディで、動画作成時に返された task_id を id として渡します:
response.data の構造は同期生成時と一致します(生成中は state が pending、video_url が null です):
エラー処理
リクエストに問題がある場合、API は対応するエラーコードと説明を返します。一般的なものは以下のとおりです:400:リクエストパラメータが不正です。たとえば、promptが欠けている、またはaspect_ratioの値が不正です。401:認証に失敗しました。token が無効であるか、API と一致していません。403:残高不足、またはプロンプトがコンテンツ審査に該当して拒否されました。500:サーバー内部エラー、または上流の生成に失敗しました。

