制作视频
每个视频都以一个呼叫开始: POST /v1/render。本页解释了你在该通话中所做的选择。关于每个字段及其限制,请参见 创建渲染参考。
简报或场景方案
Section titled “简报或场景方案”发 一个 这个。
brief 是视频的通俗描述,最多可达4000个字符。Reigniter 规划场景、撰写旁白并开始渲染。
{ "brief": "A 30 second advert for Northwind Coffee's weekly subscription. Show the beans, the roasting, and a happy customer opening the box.", "kind": "ad", "duration_sec": 30, "brand_name": "Northwind Coffee", "category": "coffee"}影响该方案的领域:
| 场地 | 默认 | 它的作用 |
|---|---|---|
kind |
ad |
ad 广告, training 培训视频。 |
duration_sec |
ad20,training60 |
目标总长度,5秒到120秒。 |
narrator |
true |
false 做了一个没有配音的视频。 |
brand_name |
没有 | 规划师应该使用的品牌名称。 |
category |
没有 | 产品类别,例如 coffee 或 saas。 |
title |
为你写的 | 视频的标题。 |
规划部门花费了积分。如果规划失败,你会获得 502 PLAN_FAILED,规划积分会退还。如果你把信发回 plan_notes,他们会在自己的计划中解释规划师标记的所有内容。
scene_plan 是你自己列出的1到12个场景,按顺序渲染,按给定顺序。当你已经知道每个场景应该展示和表达什么时,再用它。
{ "title": "Northwind launch", "scene_plan": [ { "type": "motion", "role": "hook", "prompt": "Fresh coffee, delivered weekly", "script": "Fresh coffee, delivered every week.", "motion": { "beat": "hook" } }, { "type": "t2v_fast", "role": "body", "prompt": "Slow close-up of coffee beans tumbling out of a kraft paper bag onto a wooden table, soft morning light", "script": "Roasted in small batches, a few days before it reaches you." }, { "type": "motion", "role": "cta", "prompt": "Order at northwind.example", "script": "Order today.", "motion": { "beat": "cta" } } ]}场景类型:
type |
渲染效果 |
|---|---|
motion |
清晰的动画文字、数字、步骤或标志。用它来处理任何必须可读的内容。 |
t2v_fast |
从 prompt 生成的人物、地点或物体的影像。 |
i2v_fast |
从图片开始生成的素材:场景的 ref_image_url,或者你的产品照片。 |
s2v |
一个对着镜头说话的主持人。需要一张脸。 |
walk_talk |
一个主持人走路和说话。需要一张脸。 |
footage |
你自己 video_url 的片段,按原样播放。 |
每个场景包含一个 prompt (摄像机看到的内容,或屏幕上的复制品 motion)和一个可选的 script (旁白台词)。完整的场景字段列表在 参考文献中。
即使你的账号有品牌套件, API 渲染 图也不会单独识别品牌。你在每个请求中选择品牌:
brand_logo_url:你的标志,作为公共httpsURL 或数据 URI。brand_colors:可选,最多12种六边形颜色,如["#3B2416", "#F4E9DC"]。
{ "brief": "A 20 second advert for Northwind Coffee.", "brand_logo_url": "https://example.com/northwind-logo.png", "brand_colors": ["#3B2416", "#F4E9DC"]}没有标志,视频渲染时没有标志,也没有结尾卡。具体来说,发送 brand_enabled: false。
product_image_url 是你产品的一张照片(公共 https 网址或数据URI)。它能让产品在每个场景中保持一致,而不是让模型自己创造一个场景。
有些格式销售产品需要照片。如果你设置了这样的 route(例如 product-ad、unboxing、ugc-ad或 app-demo),而方案显示了产品,则无照片渲染会被拒绝,400 PRODUCT_IMAGE_REQUIRED。如果要故意渲染不带照片,请发送 product_enabled: false。
s2v和 walk_talk 场景都显示一个人在说话。他们需要一个面孔:整个视频都用 avatar_preset_id,或者在场景中出现 ref_image_url。有对话场景且没有面孔的方案会被 400 PRESENTER_REQUIRED 拒绝。如果Reigniter 使用一个固定的主持人,请发送 presenter_enabled: false。
没有任何固定视频的支撑
Section titled “没有任何固定视频的支撑”当你设置 route 但发送不提供品牌、产品照片和演示者,且方案生成所有图片时,渲染图会被拒绝,并附 422 NO_ANCHOR。没有锚点,模特就发明了产品和人,他们不会匹配你的品牌。
添加其中一个,或者直接发送 product_enabled: false 或 presenter_enabled: false 来渲染。
| 场地 | 价值观 | 默认 |
|---|---|---|
aspect |
9:16, 16:9, 1:1, 4:5, 4:3, 3:4 |
9:16 |
quality |
draft, standard, premium |
draft |
language |
一种语言代码,如 en、 fr、 de |
en |
art_style |
cinematic, stop_motion, mascot, watercolour, whimsy_3d |
cinematic |
music_style |
upbeat-tech, cinematic-epic, lo-fi-chill, corporate-pop |
由赛制设定 |
voice_preset_id |
旁白语音识别 | 默认声音 |
upscale |
true 或 false |
由格式和质量决定 |
quality和 upscale 越高,积分越贵,时间越长。
设置 kind: "training"``brief 来规划培训视频,而不是广告。策划器会写步骤和回顾,并用 motion 场景作为屏幕指示。
{ "brief": "How to reset a password in the Acme admin panel. Three steps, then a recap.", "kind": "training", "duration_sec": 60, "aspect": "16:9", "brand_logo_url": "https://example.com/acme-logo.png"}重试与幂等性
Section titled “重试与幂等性”每次渲染时都发送一个带有唯一值的 Idempotency-Key 头,比如UUID。如果你的请求超时,你用 同样 的键重试, Reigniter 会拒绝重复,也不会渲染或充电第二次。
- 重复被拒绝,因此不会返回原始的
job_id。每当收到第一个回复时,保存第一个回复的job_id。 - 当
scene_plan时,重复返回409 DUPLICATE_REQUEST。 - 使用
brief,重复可以返回,402返回消息This request was already submitted。将其视为409。 - 每个新视频使用 一个新 密钥。为另一个视频重复使用密钥会拒绝该视频。
没有该报头,每次调用都会是一个新的渲染和新的电荷。
渲染响应有一个 watermarked 字段。在 Agency 套餐上制作的视频没有水印。
当任务成功时,video_url``GET /v1/job/{id} 会直接链接到MP4。下载并保留自己的副本。