Sora 2 と Veo 3 動画 API 実装ガイド + 料金比較(2026)
OpenAI Sora 2 と Google Veo 3 の動画生成 API を手順通りに実装。Python コード、公式・Kie・Replicate の料金横断比較表、予算・尺・解像度での選び方まで。
API で音声つきの短い動画を生成するなら、避けて通れないのが 2 つのモデル——OpenAI の Sora 2(および Sora 2 Pro)と Google の Veo 3(および Veo 3.1)です。どちらもテキストから動画・画像から動画・ネイティブ音声に対応しますが、実装方法・単価・得意分野は大きく異なります。本記事は実装手順、動くコード、そして横断料金表を 1 か所にまとめ、つまずきと出費を減らします。
2 大動画モデルの概要
- Sora 2 / Sora 2 Pro(OpenAI):物理的なリアリティが高く、カメラの動きが連続的で、音と映像の同期が良い。リアルなカメラワーク、製品デモ、実写的な人物のトークに向く。Pro は高解像度で安定性も高く、単価も高い。接続先は OpenAI 公式 API と、Replicate などのサードパーティホスト。
- Veo 3 / Veo 3.1(Google):映画的な質感と光の表現に優れ、プロンプト忠実度が高く、セリフと効果音をネイティブに生成。接続先は Google Vertex AI、Gemini API、そして Kie.ai などの集約プラットフォーム。Veo 3.1 は Lite / Fast / Quality に分かれ、画質と予算で選ぶ。
1 ショットの尺は両者とも短く(概ね 8 秒級)、長尺は複数クリップの連結で作ります。
実装手順 + コード
流れは共通:キー取得 → 生成ジョブを送信 → ジョブの状態をポーリング → 完成クリップをダウンロード。動画は同期的には返らないので、テキストモデルのような「1 リクエストで結果」を書かないこと。
Sora 2(OpenAI 公式 API)
- OpenAI プラットフォームで有効化し API キーを作成;
videosエンドポイントでジョブを送信、completedまでポーリングし、ダウンロード先を取得。
from openai import OpenAI
client = OpenAI(api_key="sk-あなたのキー")
# 1) 生成ジョブを送信
video = client.videos.create(
model="sora-2", # または "sora-2-pro"
prompt="雪の中を走るコーギー、早朝の陽光、スローモーション、映画的",
seconds=8,
size="1280x720",
)
# 2) 完了までジョブをポーリング
while video.status in ("queued", "in_progress"):
video = client.videos.retrieve(video.id)
# 3) 完成クリップをダウンロード
if video.status == "completed":
content = client.videos.download_content(video.id, variant="video")
content.write_to_file("sora2.mp4")
フィールド名は OpenAI 動画生成の公式ドキュメントに従ってください。SDK のバージョンで多少異なる場合があります。
Veo 3(Gemini API)
Google 公式は google-genai SDK を推奨。こちらも「ジョブ送信 → operation をポーリング → ダウンロード」です。
import time
from google import genai
client = genai.Client(api_key="あなたの_GEMINI_KEY")
# 1) 生成ジョブを送信
operation = client.models.generate_videos(
model="veo-3.0-generate-preview", # Veo 3;高速版は対応する fast モデル名を使う
prompt="都市の夜景の空撮、濡れた路面に映るネオン、サイバーパンク調",
)
# 2) operation が完了するまでポーリング
while not operation.done:
time.sleep(10)
operation = client.operations.get(operation)
# 3) 動画を保存
video = operation.response.generated_videos[0]
client.files.download(file=video.video)
video.video.save("veo3.mp4")
具体的なモデル名とパラメータは Gemini API 動画生成ドキュメントに従ってください。Kie.ai や Replicate などの集約プラットフォームでは、各社の REST エンドポイントと認証ヘッダに差し替え、リクエスト/コールバックの構造は各ドキュメントを参照します。
料金の横断比較表
以下は 概算、米ドル、2026 年 7 月時点です。為替・区分・キャンペーンは常に変わるため、発注前に各プラットフォームの最新価格を確認してください。「8 秒の成果物」は単価 × 8 秒で試算、ネイティブ音声込みです。
| モデル | 経路 | 解像度 | 1 秒あたり(概算) | 8 秒成果物(概算) | 音声 |
|---|---|---|---|---|---|
| Sora 2 | OpenAI 公式 | 720p | $0.10 | $0.80 | ネイティブ |
| Sora 2 Pro | OpenAI 公式 | 720p | $0.30 | $2.40 | ネイティブ |
| Sora 2 Pro | OpenAI 公式 | 1024p+ | $0.50 | $4.00 | ネイティブ |
| Sora 2 | Replicate | 720p | $0.20–0.35 | $1.60–2.80 | ネイティブ |
| Veo 3 | Google 公式 | 720/1080p | $0.75(音声込) | $6.00 | ネイティブ |
| Veo 3 Fast | Google 公式 | 720/1080p | $0.15 | $1.20 | ネイティブ |
| Veo 3 Fast | Kie.ai | 720/1080p | ~$0.05 | ~$0.40 | ネイティブ |
| Veo 3 Quality | Kie.ai | 1080p | ~$0.25 | ~$2.00 | ネイティブ |
節約につながる要点:
- 公式への直結は通常もっとも高い。 Veo 3 公式の音声込みは約 $0.75/秒で、この表の上限。集約プラットフォーム(Kie の Fast 区分は約 $0.05/秒)なら同じモデルを公式のごく一部の価格に抑えられる。
- 標準の Sora 2 は Pro より 3 倍安い。 最高解像度が不要で下書きや SNS 用クリップなら標準区分で十分。
- Replicate はやや高いが安定。 売りは信頼性と開発体験で、低価格ではない。
能力 / 尺 / 解像度の比較
| 観点 | Sora 2 / Sora 2 Pro | Veo 3 / Veo 3.1 |
|---|---|---|
| 提供元 | OpenAI | Google DeepMind |
| 1 ショットの尺 | 約 4–12 秒(Pro はより長く安定) | 最長約 8 秒 |
| 解像度 | 720p / 1024p+(Pro) | 720p / 1080p |
| ネイティブ音声 | ✅ セリフ + 効果音 | ✅ セリフ + 効果音 |
| 画像から動画 | ✅ | ✅ |
| 強み | 物理的リアリティ、連続的なショット、音映像同期 | 映画的な光、質感、プロンプト忠実度 |
| 主な接続先 | OpenAI 公式 / Replicate | Vertex AI / Gemini API / Kie |
選び方
- 予算優先・大量生成:Veo 3 Fast の集約経路(例:Kie)。1 秒数セントで、SNS 素材の量産や、コピー×ビジュアルの A/B テストに好適。
- リアルなカメラワーク・実写的トーク:Sora 2 / Sora 2 Pro。物理的リアリティと音映像同期が主戦場。
- 映画的・広告品質の映像:Veo 3 Quality。光とプロンプト忠実度が完成品向け。
- 量産前に検証:両者とも Fast/標準の低価格区分あり。まず安い区分でパイプラインとプロンプトを通し、最終版のみ高価格区分に切り替えると、試行錯誤コストをかなり節約できる。
FAQ(よくある質問)
- Sora 2 と Veo 3、どちらが安い? 「高速区分 + 集約経路」なら Kie のようなプラットフォーム経由の Veo 3 Fast が通常もっとも安い(約 $0.05/秒)。公式直結では標準の Sora 2(約 $0.10/秒)が Veo 3 公式の音声込み(約 $0.75/秒)よりはるかに安い。モデル名だけでなく経路と区分で比べること。
- 生成した動画は商用可?ウォーターマークは? ライセンスとウォーターマークの方針は各社で異なり、変更もある。特に一部の低価格経路はウォーターマーク付与や商用制限がある。必ず利用中プラットフォームの現行規約に従い、他所の結論を流用しないこと。
- 1 ショット 8 秒で足りないときは? 「絵コンテ + 複数生成 + 連結」で対応:長いショットを複数の 8 秒セグメントに分けて個別生成し、編集ソフトや ffmpeg で連結する。セグメント間の映像と音声のつながりに注意。
- 無料枠はある? 公式と多くの集約プラットフォームは新規ユーザーに少量の試用枠を付与するが、金額と有効期限はよく変わる。登録ページの現行案内に従うこと。
- テキスト/画像モデルと合わせて一元管理するには? アプリで既に Claude・GPT・Gemini などのテキストモデルを呼んでいるなら、GetModel の統一 OpenAI 互換エンドポイントでこれらのキーと課金を 1 つの Key にまとめ、残高を全モデルで共有できる。利用可能なモデルと最新価格は料金ページを参照。動画モデルの提供状況は随時更新されるため、料金ページを基準に。