コンテンツにスキップ

Omni / Veo 视频(OpenAI 与 Gemini 双协议)

このコンテンツはまだ日本語訳がありません。

Omni / Veo 视频(OpenAI 与 Gemini 双协议)

Section titled “Omni / Veo 视频(OpenAI 与 Gemini 双协议)”

Omni(omni-t2v、omni-i2v、omni-r2v、omni-v2v、omni-40s)和 Veo(veo_3_1_*)同一个模型可以用两种协议调用,计费与能力一致,按你的 SDK 选择即可:

协议提交查询下载
OpenAI 兼容POST /v1/videos(V2V 用 /v1/videos/edits)GET /v1/videos/{id}GET /v1/videos/{id}/content
GeminiPOST /v1beta/models/{model}:predictLongRunningGET /v1beta/operations/{name}结果中的 video.uri

OpenAI 协议用 Authorization: Bearer YOUR_API_KEY;Gemini 协议可用 x-goog-api-key: YOUR_API_KEY 或 ?key=YOUR_API_KEY。

模型用途参考图时长(秒)
omni-t2v文生视频04、6、8、10
omni-i2v图生视频(首帧)1(首帧)4、6、8、10
omni-r2v参考图生成1–38
omni-v2v视频编辑源视频 + 0–2 张参考图1–10
omni-40s长视频0–940
参数(OpenAI / Gemini)说明
resolution / parameters.resolution720p(默认,原生)、360p(原生低清)、1080p(720p 生成后免费放大,omni-40s 同样支持)
aspect_ratio / parameters.aspectRatio16:9(默认)或 9:16
duration / parameters.durationSeconds见上表

Veo 模型名中已包含版本、横竖屏与分辨率(如 veo_3_1_t2v_fast_portrait、veo_3_1_t2v_1080p),参数与提交方式与 Omni 相同。

Terminal window
curl https://api.4allapi.com/v1/videos \
-H "Authorization: Bearer $API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "omni-r2v",
"prompt": "参考图中的人物在雨夜霓虹街头行走,电影感",
"duration": 8,
"aspect_ratio": "16:9",
"resolution": "720p",
"images": [
"https://cdn.example.com/reference-1.png",
"https://cdn.example.com/reference-2.png"
]
}'

omni-i2v 只用 1 张图片作首帧(image 传单个 URL;多传的图片会被忽略,不支持尾帧):

Terminal window
curl https://api.4allapi.com/v1/videos \
-H "Authorization: Bearer $API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "omni-i2v",
"prompt": "画面中的人物缓缓转身看向镜头,镜头缓慢推进",
"duration": 8,
"aspect_ratio": "16:9",
"resolution": "720p",
"image": "https://cdn.example.com/first-frame.png"
}'

图片字段:单张用 image(字符串),多张用 images(数组,按顺序),两者都是公网 URL;omni-r2v 1–3 张、omni-40s 0–9 张用 images,omni-t2v 不传图片。

omni-40s 的 duration 传 40,images 可选(0–9 张)。

每张图片重复一个 input_reference 文件字段,顺序即参考顺序(omni-i2v 只传 1 张);V2V 的源视频用 video 字段。

Terminal window
curl https://api.4allapi.com/v1/videos \
-H "Authorization: Bearer $API_KEY" \
-F "model=omni-i2v" \
-F "prompt=画面中的人物缓缓转身看向镜头" \
-F "duration=8" \
-F "aspect_ratio=9:16" \
-F "resolution=1080p" \
-F "input_reference=@first.png;type=image/png"

视频编辑请参考 Omni V2V 视频编辑。

Terminal window
curl https://api.4allapi.com/v1/videos/<VIDEO_ID> -H "Authorization: Bearer $API_KEY"
curl -L https://api.4allapi.com/v1/videos/<VIDEO_ID>/content \
-H "Authorization: Bearer $API_KEY" -o output.mp4
Terminal window
curl "https://api.4allapi.com/v1beta/models/omni-r2v:predictLongRunning?key=$API_KEY" \
-H "Content-Type: application/json" \
-d '{
"instances": [{
"prompt": "参考图中的人物在雨夜霓虹街头行走,电影感",
"image": {"gcsUri": "https://cdn.example.com/reference-1.png", "mimeType": "image/png"},
"referenceImages": [
{"gcsUri": "https://cdn.example.com/reference-2.png", "mimeType": "image/png"}
]
}],
"parameters": {"durationSeconds": 8, "aspectRatio": "16:9", "resolution": "720p"}
}'
# → {"name": "operations/<OP_ID>"}
  • 图片可以是公网 URL(gcsUri)或 Base64({"bytesBase64Encoded": "...", "mimeType": "image/png"})。
  • 第一张放 image,其余按顺序放 referenceImages(每项直接是图片对象);omni-i2v 只传 image 一张。
  • 纯文生视频只传 prompt。
Terminal window
# 轮询直到 done=true
curl "https://api.4allapi.com/v1beta/operations/<OP_ID>?key=$API_KEY"
# 完成后 response.generateVideoResponse.generatedSamples[0].video.uri 即成片地址;
# 下载时带上 Authorization: Bearer $API_KEY
import time
import requests
BASE_URL = "https://api.4allapi.com"
HEADERS = {"Authorization": "Bearer YOUR_API_KEY"}
body = {
"model": "omni-t2v",
"prompt": "A koi carp gliding through a sunlit pond, cinematic slow motion.",
"duration": 8,
"aspect_ratio": "16:9",
"resolution": "1080p",
}
task = requests.post(f"{BASE_URL}/v1/videos", headers=HEADERS, json=body).json()
task_id = task["id"]
while task.get("status") not in ("completed", "failed"):
time.sleep(5)
task = requests.get(f"{BASE_URL}/v1/videos/{task_id}", headers=HEADERS).json()
video = requests.get(f"{BASE_URL}/v1/videos/{task_id}/content", headers=HEADERS)
open("output.mp4", "wb").write(video.content)