HiAPI
博客

使用指南

通过 hiapi API 使用 gemini-omni-1.1-flash 制作短视频

一次扁平费率的异步调用即可将文本提示词变成带原生音频的成品 9:16 竖屏视频——以下是真实工作流,以及应该改变你渲染方式的定价。

2026年11月3日
通过 hiapi API 使用 gemini-omni-1.1-flash 制作短视频

短视频只有一个不讲情面的要求:必须是竖屏,必须在一秒内抓住用户,而且通常需要声音。大多数文生视频 API 需要你分步骤拼装——先生成片段,再在后期加音频,然后重新裁切成 9:16。gemini-omni-1.1-flash 将其压缩为 hiapi 上的单次异步调用:输入一条提示词,输出一段完整的 9:16 视频,环境音频已经包含在音轨中。

本指南基于一段真实视频——专为本文生成,并非示意图——来展示完整工作流,然后深入分析定价,因为 gemini-omni 的成本模型足够特殊,应该改变你的渲染方式。

视频,从开始到完成

以下是模型从单条提示词生成的 8 秒 1080p 视频。它可直接内联播放——竖屏,带声音:

这是完整提示词——直接复制即可运行:

Vertical 9:16 cinematic food close-up: a slow ribbon of golden honey drizzles
onto a short stack of warm pancakes, catching soft morning window light as it
pools and slides down the sides. A single pat of butter melts at the top, faint
steam rising. Shallow depth of field, gentle slow push-in, one continuous shot,
warm cozy color grade. Natural ambient sound: the soft drizzle of honey, a quiet
kitchen room tone, distant birdsong. No people, no text, no logos, no watermark.

那一次请求返回了一个 1080×1920 的 H.264 文件,带有立体声 AAC 音轨——环境音是与视频一同生成的,而非事后叠加。两个提示词习惯完成了大部分工作:

  • 要求一个连续镜头。短视频片段读起来是一个单一节拍;要求一次不中断的运镜可以阻止模型自行创造你不想要的剪辑点。
  • 写一行明确的负面约束。No people, no text, no logos, no watermark 能让画面保持干净,方便你在编辑器中添加字幕,并避免无法后续移除的烧录文字。

为什么它特别适合短视频

有三点与竖屏视频的实际需求高度契合:

  • 原生竖屏。aspect_ratio: "9:16" 是一等输入参数,因此你可以直接生成竖屏,而不是将 16:9 渲染结果裁切成带黑边的画面。
  • 音频内置。每段视频都带有环境音。在大多数滑动开始于静音的信息流中,为真正开启声音的观众准备好真实音轨——无需单独的音乐或音效环节——省去了一道制作步骤。
  • 一个 ID,所有模式。同一个 gemini-omni-1.1-flash ID 还接受参考图、首尾帧或源视频。你可以先用文本钩子开场,之后通过完全相同的端点和密钥推送产品静帧或粗剪。

应该改变你渲染方式的扁平费率算法

大多数视频 API 按秒计费,并随分辨率提高费率,因此 1080p 的成本明显高于 480p。gemini-omni 不是这样。它按每段视频的扁平价格计费,并且对于最高 1080p 的所有分辨率,价格完全相同——只有视频长度会改变价格:

视频长度 360p / 720p / 1080p 4K
4 秒 $0.45 $1.05
6 秒 $0.60 $1.20
8 秒 $0.75 $1.35
10 秒 $0.90 $1.50

定价已根据 hiapi 实时定价页面核实,2026 年 10 月。传入参考视频会将计费切换为每段固定 $1.20(最高 1080p,或 4K 时 $1.80),无论长度如何。

实际结果是:每个草稿都用 1080p 渲染。在这个模型上,1080p 的成本与 360p 完全相同,因此没有理由用低分辨率预览之后再重新渲染。对于非 4K 视频,唯一影响账单的变量是时长——所以纪律在于长度,而非画质。以每段 $0.75 的价格批量生成 8 秒 1080p 草稿,保留效果好的那些,只在真正要发布的重点成片上才使用 4K。

一次 API 调用

创建视频是先 POST 开启任务,然后轮询直到完成。

curl -X POST https://api.hiapi.ai/v1/tasks \
  -H "Authorization: Bearer sk-<your-key>" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "gemini-omni-1.1-flash",
    "input": {
      "prompt": "<your prompt>",
      "duration": 8,
      "resolution": "1080p",
      "aspect_ratio": "9:16"
    }
  }'

你会收到一个任务 ID:

{"code":200,"data":{"taskId":"tk-hiapi-01M4MJDW91CEF46R26CJJ5NK5N"},"message":"success"}

然后轮询 GET /v1/tasks/<taskId>,直到 status 从 handling → archiving → success。完成后的响应体将视频放在 output[0].url:

import time, requests

API = "https://api.hiapi.ai/v1"
H = {"Authorization": "Bearer sk-<your-key>", "Content-Type": "application/json"}

def make_clip(prompt, duration=8, resolution="1080p", ratio="9:16"):
    body = {"model": "gemini-omni-1.1-flash",
            "input": {"prompt": prompt, "duration": duration,
                      "resolution": resolution, "aspect_ratio": ratio}}
    tid = requests.post(f"{API}/tasks", headers=H, json=body, timeout=30).json()["data"]["taskId"]
    while True:
        data = requests.get(f"{API}/tasks/{tid}", headers=H, timeout=30).json()["data"]
        if data["status"] == "success":
            return data["output"][0]["url"]
        if data["status"] == "fail":
            raise RuntimeError(data.get("error"))
        time.sleep(6)

url = make_clip("<your prompt>")
open("clip.mp4", "wb").write(requests.get(url, timeout=120).content)

四个输入字段很关键:prompt、duration(4、6、8 或 10)、resolution(360p、720p、1080p 或 4k)以及 aspect_ratio(16:9 或 9:16)。传入这些范围之外的值,API 会在排队之前拒绝请求——例如误写 2160p 会返回 invalid input: resolution: value must be one of '360p', '720p', '1080p', '4k',因此拼写错误绝不会浪费一次视频生成。完整的任务 API 参考见 hiapi 文档。

一个值得在代码中处理的注意事项:output[0].url 带有 expireAt 时间戳,并非永久链接。任务报告 success 的那一刻,就要下载文件或推送到你自己的存储——不要持久化临时 URL。

批量制作一组,而非单段视频

短视频是量级游戏,因此真正的工作流是批处理。每段视频都是独立任务,这使得运行中途崩溃的恢复成本很低:用提示词的哈希作为每个任务的键,跳过已下载的内容,重启就绝不会重复计费。

一个可行的循环:

  • 围绕一个主题写 8–12 个提示词变体——不同角度、光照、主体——全部使用 8 秒 / 1080p / 9:16。
  • 将它们作为独立任务批量提交并轮询,或注册回调让结果主动送达。
  • 审查整组,保留真正有吸引力的两三个,然后再按需以 4K 或更长时长重新渲染——前提是你发布到的平台能带来相应回报。

当静帧或粗剪才是你真正的起点时,将其输入同一个 gemini-omni-1.1-flash ID:用参考图锁定产品外观,用首尾帧控制转场,或用源视频进行风格重绘。密钥和轮询代码保持不变;只有 input 对象改变。

对比

gemini-omni 的扁平费率使其成为最便宜地输出带音频短视频的方式——1080p 8 秒只需 $0.75,没有按秒乘数。其他模型在特定方面更胜一筹:

  • Seedance 2.5 按秒计费,目前最高 720p,但可扩展到 30 秒单镜头——当长度比分辨率更重要时的选择。
  • Kling 3.0 在环境音之上叠加同步语音,并可达 4K——更适合说话或唇形同步内容。
  • Veo 3.1 是图生视频的选择,当你需要将现有静帧动画化而非从文本生成时。

这四者都运行在同一个 hiapi 密钥和同一个 /v1/tasks 端点上,因此切换只需改一行 model——按镜头选择,而非按项目选择。你可以在模型目录中并排浏览它们。

常见问题

gemini-omni-1.1-flash 真的包含音频吗? 是的。本指南中的视频返回的是带真实立体声音轨的 MP4——环境音与视频一同生成,而非后期添加。你在提示词中描述声音的方式(如上文的 Natural ambient sound: ... 行)与描述画面的方式相同。

测试它最便宜的方式是什么? 4 秒视频在最高 1080p 的任何分辨率下都是 $0.45。由于这三种分辨率价格相同,请用 1080p 测试——没有价格理由使用更低分辨率预览。

我也能制作横屏视频吗? 可以。设置 aspect_ratio: "16:9" 为横屏;9:16 是短视频默认值。两种方式价格相同。

视频最长可以多长? 每次生成 4、6、8 或 10 秒。若需要更长剪辑,生成多段视频并拼接,或使用参考 / 首尾帧处理在剪辑点之间保持连续性。

输出 URL 是永久的吗? 不是。output[0].url 带有 expireAt,应视为一次性交付——任务报告 success 后立即下载或重新托管。

准备好尝试了吗?从 hiapi 控制台获取密钥,将你自己的提示词放入上面的 curl 调用,并以 1080p 渲染你的第一段竖屏视频——无论你选择小分辨率预览还是直接全分辨率,成本都是同样的 $0.75。

立即开始构建持久 AI 产物

获取 API 密钥,通过一个基于任务(task)的 API 调用图像、视频和音频模型。

阅读 API 文档