Skip to content
Platform / Docs / Smart editing — presenter video API

API Reference

Smart editing — presenter video API

POST realman-broadcast-api ID 25

Presenter edit: upload a person video and render it with a template. Supports create, query, and config. Billed by resolution and input seconds.

POST https://xiaoapis.com/api/smartclip/realman_broadcast

Overview

  • 真人视频 + 模板
  • 720p/1080p
  • 异步任务与回调
  • 字幕/素材包装

Use cases

  • 真人口播成片
  • MCN 批量包装
  • 标准化短视频生产
Conventions
  • Gateway · https://xiaoapis.com
  • Auth · send key (query or JSON body, as this API specifies)
  • Response · JSON. Check the business code and the HTTP status, not only HTTP 200

Authentication

Send the platform API key (query parameter key or JSON field key, as this page specifies). Create one in API key management.

POST https://xiaoapis.com/api/smartclip/realman_broadcast
Content-Type: application/json

{
  "key": "YOUR_API_KEY"
}

Request example

https://xiaoapis.com/api/smartclip/realman_broadcast?key=你的密钥&action=create

Details

多规格计费:

720P 3(≈¥0.030) 点/输入秒,1080P 4(≈¥0.040) 点/输入秒

规格价格
720P3(≈¥0.030) 点/输入秒
1080P4(≈¥0.040) 点/输入秒

计费公式:ceil(输入秒) × 对应规格单价。输入秒取自 videoUrl 媒体探测时长。 可通过参数 resolution(720p / 1080p,默认 720p)指定输出规格。无法解析有效输入媒体时长时请求会被拒绝。

URL 参数 action:

通过 URL 参数 action 区分操作:

  • create — 创建任务(POST JSON)

  • query — 查询任务(GET/POST,需 task_id)

  • config — 获取配置(GET,不扣点)

create 请求示例 URL:

http://test.xiaobao.ink/api/smartclip/realman_broadcast?key=你的密钥&action=create

请求HEADER:

名称值
Content-Typeapplication/json

鉴权说明:请在 URL 参数或 JSON Body 中携带 key(平台 API 密钥)。使用 POST + JSON 时,key 必须写在 JSON Body 内。

create 请求参数说明(POST JSON):

名称必填类型示例值说明
key是string你的密钥平台 API 密钥
styleId是string68aebb91b8619ed6f4168f40视频模板 ID(来自模板列表 id)
videoUrl是stringhttps://example.com/a.mp4真人视频 URL,mp4/mov,时长<5分钟,<500MB;探测该时长用于计费
resolution否string720p输出规格:720p / 1080p,影响单价
callback_url是stringhttps://example.com/hook任务完成/失败后平台回调你的地址(也支持 callbackUrl / notify)
title否string聊AI行业标题;不显示标题则不要传
language否stringzh-CN视频语种(ASR 用)
materials否array[{type,fileUrl}]素材列表,type=image|video
materialSoundSwitch否boolfalse素材为视频时是否保留原声
subtitle否array[{startMs,endMs,text}]字幕/ASR 结果
introduceCard否object{name,description}身份栏
packRules否object
标题/素材/字幕/关键词/背景音乐包装开关
processRules否object
水印、预处理 roughCut/sliceMerge 等
structLayers否array
修改 headerLayer/subtitleLayer 等图层

特殊字段说明:

subtitle(字幕信息)
选填,不设置则由系统智能处理。
如果期望手动修改从视频中识别的文字,可以先调用音频转文字(ASR)接口识别出文本信息,更改其中的文字,然后保持 ASR 返回的格式设置到该字段。

processRules.resourcePreprocessMethod(真人视频预处理方式)
选填,不设置真人视频预处理方式时,默认保持原始视频时长。
roughCut:粗剪,按照系统内置规则智能处理,例如自动去掉无声片段等。
sliceMerge:按照 subtitle 字段中标注的开始/结束时间,自动去掉不连续时间范围的片段。

processRules:

字段类型必填默认值可选值 / 范围说明
watermarkShowboolean否falsetrue / false是否添加“AI生成”字样水印
resourcePreprocessMethodstring否-sliceMerge / roughCut真人视频预处理方式,不设置时默认保持原始视频时长
materialMatchWaystring否preciseMatchfuzzyMatch / preciseMatch素材匹配方式
metadataobject否--元水印数据,仅支持写入一组数据,且 value 值需为字符串
firstFrameCoverobject否--首帧封面配置

重要规则:

  • 视频驱动的 videoUrl、素材 materials[].fileUrl、背景音乐 packRules.backgroundMusic.audioUrl、AI 封面的 resultImageUrl 地址不能重名,重名会导致渲染异常。

  • packRules 仅用于控制标题、字幕、素材、背景音乐、关键词等图层是否参与效果包装,不能控制对应图层的显示/隐藏。

  • 如果期望生成的视频不显示标题,请不要设置标题值。

  • callback_url / callbackUrl 作为平台任务通知地址保存,任务完成或失败后由平台发起通知。

  • 如无法解析有效输入媒体时长,本次请求会被拒绝,不使用默认时长。

通用对象字段:

subtitle[]

字段类型必填说明
startMsinteger是时间戳开始,单位 ms
endMsinteger是时间戳结束,单位 ms,最大支持 310000ms
textstring是文本,只支持单字符级别

materials[]

字段类型必填可选值 / 默认值说明
typestring是image / video素材类型
fileUrlstring是-素材 url
soundSwitchboolean否false当素材为视频时原声开关,素材混剪和新闻体视频支持

introduceCard

字段类型必填说明
namestring否名称
descriptionstring否描述

packRules

字段类型必填默认值说明
headerSwitchboolean否-标题包装开关
materialSwitchboolean否-素材包装开关
subtitleSwitchboolean否-字幕包装开关
keywordSwitchboolean否-关键词包装开关
backgroundMusicobject否-背景音乐设置
backgroundMusic.audioSwitchboolean否-音乐开关
backgroundMusic.audioUrlstring否-音频 url,模板内置背景音乐和传递 audioUrl,优先使用 audioUrl
backgroundMusic.volumenumber否0.3音量,保留一位小数,范围 0-1

processRules.firstFrameCover

字段类型必填默认值说明
coverSwitchboolean否false封面开关
templateIdstring否-模版 ID,如果未设置则系统匹配
imageUrlstring否-图片地址,用于生成 AI 封面图的底图,imageUrl 和 resultImageUrl 二选一必填
resultImageUrlstring否-图片生成接口的结果图片地址或其他封面图片地址;传了此值将直接运用作为视频首帧封面,优先级更高

structLayers[]

字段类型必填可选值说明
markCodestring是headerLayer / subtitleLayer / ipLayer / backgroundLayer / figureLayer图层,对应模板详情接口返回的图层数据
showboolean否-是否显示,不设置时默认跟随模板;backgroundLayer、figureLayer 不支持设置,默认显示
showModestring否always / customize显示模式,markCode=headerLayer 时生效,不设置时默认跟随模板
showTimenumber条件必填大于 0显示时长,markCode=headerLayer 且 showMode=customize 时生效且必填,保留 3 位小数
layer.transform.positioninteger[]否-锚点定位,对应模板详情 transform.position
layer.uristring否-背景图片资源链接,仅 backgroundLayer 生效

素材与媒体要求:

  • 输入视频格式:mp4、mov;视频编码 h264、HEVC(h265);帧率 10-60fps,推荐 25;单边分辨率小于 2000px。

  • 真人口播 videoUrl 时长小于 5 分钟,文件大小小于 500MB,视频中的音频需要能够语音转文本。

  • 素材总量限制:单张图片计算为 2 秒,单个视频素材不能超过 60 秒,所有素材总时长不能超过 5 分钟。

  • 素材图片格式支持 jpg、png、webp 静态图,单边分辨率小于 2000px。

  • 素材视频格式支持 mp4、mov,单个视频小于 500MB,单边分辨率小于 2000px。

  • 背景音乐格式支持 mp3、wav、m4a,文件大小不超过 120MB,时长不超过 5 分钟。

  • 首帧封面 imageUrl、resultImageUrl 格式支持 jpg/jpeg、png,文件大小不超过 10MB,单边分辨率小于 2000px。

query 请求参数:

名称必填类型示例值说明
action是stringqueryURL 参数
key是string你的密钥平台 API 密钥
task_id是stringtask_xxxcreate 返回的任务 ID

create 返回参数说明:

名称类型说明
codeint200 成功
data.task_idstring任务 ID
data.statusint1 处理中;2 完成;3 失败
data.progressint进度 0-100
data.resolutionstring计费规格
data.bill_secondsint计费输入秒(ceil)
data.points_per_secondfloat该规格单价(点/输入秒)
data.power_costfloat本次扣点数

用户回调参数(POST 到你的 callback_url):

名称类型说明
task_idstring任务 ID
statusint2 成功;3 失败
video_urlstring成片地址(成功时)
fail_reasonstring失败原因(失败时)

响应字段:

字段类型必返说明
task_idstring是平台任务 ID
statusstring / int是平台任务状态:上游多为 processing / queued;本平台 create/query 返回 1 处理中、2 完成、3 失败
appstring是应用编码,固定为 smart_clip(上游 data;本平台见 upstream 透传)
apistring是API 编码,固定为 realman_broadcast(上游 data;本平台见 upstream 透传)

任务结果:

任务完成后,平台任务查询结果 / 用户回调中的结果通常包含:

字段类型说明
video_urlstring视频 url 地址,视频生成类任务返回
cover_urlstring视频封面 url 地址
durationnumber生成的视频或音频时长,单位:秒
dataobject完整结果数据

任务失败时返回错误码和错误描述(本平台字段为 fail_reason)。

Response example

{    "code": 200,    "msg": "success",    "data": {        "task_id": "task_6139c79459b9594a32f4737b",        "status": 1,        "progress": 0,        "api_type": "realman_broadcast",        "power_cost": 150    }}

FAQ

真人口播 API 是什么?

将真人出镜视频与模板、字幕/素材规则组合,异步生成可发布短视频。

怎么创建任务?

调用接口并设置 action=create,提交 styleId、videoUrl、callback_url 等必填字段。

如何计费?

通常按分辨率单价 × 输入秒(对 videoUrl 探测时长取整)计费,以文档与控制台为准。

如何查询进度?

action=query 并传入 task_id,或等待 callback_url 通知。

videoUrl 有什么限制?

一般为 mp4/mov,时长与大小上限见文档;需公网可访问以便探测时长。

和口播混剪有什么区别?

真人口播以真人视频为主驱动;口播混剪更侧重音频/文案口播 + 素材画面。

可以不显示标题吗?

可以。不传标题相关字段即可,具体以文档说明为准。

Full console doc (with the debugger):/doc/25