You need to enable JavaScript to run this app.
文档中心
AI MediaKit

AI MediaKit

复制全文
下载 pdf
视频工具 API
提交视频转封装任务 API
复制全文
下载 pdf
提交视频转封装任务 API
POST https://mediakit.cn-beijing.volces.com/api/v1/tools/remux-video​
本 API 用于提交一个异步的视频转封装任务。视频转封装仅修改容器格式,不会重新编解码音视频码流,因此可以在无画质损失、成本极低的前提下,实现 MP4、FLV、MPEG-TS 等主流容器格式之间的快速转换。该功能广泛适用于点播分发适配、流媒体切片打包与多端兼容等场景。​
说明​
如需了解完整的使用流程和应用示例,请参阅视频转封装。​
请求参数​
Header 参数​
​
参数​
类型​
是否必选​
示例值​
描述​
Authorization​
String​
是​
Bearer {Your_MediaKit_API_Key}​
格式为 Bearer {Your_MediaKit_API_Key}。请参考基础概念及准备工作获取 API Key。​
​
Body 参数​
​
参数​
类型​
是否必选​
​
描述​
video_url​
String​
是​
https://example-video.com/input.mov​
待处理视频的 URL。支持公网 HTTP/HTTPS URL、本地上传 (mediakit://)、来源于火山引擎视频点播 (vod://) 和火山引擎对象存储 (tos://) 四种输入协议。关于各协议的具体说明和使用示例,请参阅多源媒体输入与本地上传。​
container_format​
String​
是​
FLV​
目标封装格式。支持取值如下:​
  • MP4(默认)​
  • FLV​
  • MPEGTS​
metadata_keep_tags​
Array of Strings​
否​
["title", "artist"]​
需要从源视频保留的元信息标签列表。默认情况下,转码过程会丢弃大部分元信息(如标题、艺术家等)。使用此参数可以指定需要保留的标签键(Key)。当 container_format 取值为 MPEGTS 时,此参数无效。​
metadata_add_tags​
Array of Objects​
否​
[{"key": "album", "value": "2024 Remaster"}]​
需要为输出视频新增的元信息标签列表,每个标签由 key 和 value 组成。如果新增的标签与被保留的标签同名,此处的设置会覆盖源文件的值。当 container_format 取值为 MPEGTS 时,此参数无效。​
media_output_destination​
String​
否​
vod://my-space​
指定处理产物的目标存储位置。AI MediaKit 支持将处理产物存储至您的火山引擎视频点播(VOD)空间或对象存储(TOS)桶。​
  • 存储至 VOD:设为 vod://<您的空间名>​
  • 存储至 TOS:设为 tos://<您的桶名>​
设置本参数后,任务结果中的 url 相关字段将返回形如 vod:// 或 tos:// 格式的资源地址,不再返回临时下载地址。​
说明​
首次使用此功能前,您需要先前往 AI MediaKit 控制台基础配置 > 授权管理页面,授权 AI MediaKit 将文件写入您的 VOD 空间或 TOS 桶。更多信息,请参阅开发指南处理产物存储至 VOD 或 TOS。
client_token​
String​
否​
your_unique_request_id_132​
用户请求凭证,用于幂等控制。大小写敏感,不超过 64 个 ASCII 码可打印字符。详情请参考幂等性控制。​
callback_args​
String​
否​
your_custom_callback_args​
自定义回调参数。您提供的内容将在任务完成时,通过事件回调原样返回,方便您关联业务。字段长度最大为 512 字节。​
callback_url​
String​
否​
https://example.com/callback​
用于接收该任务结果回调的 URL 地址。如果提供此参数,其优先级将高于在控制台配置的全局回调地址。地址必须以 http:// 或 https:// 开头。请参考事件回调了解回调接收机制和回调消息结构。​
queue_id​
String​
否​
q00a9731598092652e4a95292434198​
任务提交的目标队列 ID。如不传,默认会使用系统自动创建的队列 ID。您可以将不同业务或优先级的任务提交到不同的队列,以实现按队列对应的项目进行分账。您可以在 AI MediaKit 控制台队列管理页面创建和管理队列,系统会自动分配一个队列 ID。详情请参考项目与队列管理。​
​
请求示例​
以下示例演示了如何提交一个视频转封装任务,将源视频转换为 FLV 格式,并添加一个自定义元数据标签。​
​
curl -X POST 'https://mediakit.cn-beijing.volces.com/api/v1/tools/remux-video' \​
-H 'Authorization: Bearer {Your_MediaKit_API_Key}' \​
-H 'Content-Type: application/json' \​
-d '{​
"video_url": "https://example.com/source_video.mp4",​
"container_format": "FLV",​
"metadata_add_tags": [​
{​
"key": "source_id",​
"value": "video_001"​
}​
]​
}'​
​
响应说明​
任务提交成功响应​
任务提交成功后,接口会立即返回包含 task_id 的 JSON 对象。​
​
参数​
类型​
描述​
success​
Boolean​
任务是否提交成功。​
  • true:成功。​
task_id​
String​
任务的唯一标识,用于后续查询任务进度和结果。​
request_id​
String​
本次请求的唯一标识,可用于问题排查。​
​
示例:​
​
{​
"success": true,​
"task_id": "amk-tool-remux-video-123456789",​
"request_id": "20240522190000ABCDEFG67890"​
}​
​
异步任务结果​
任务处理完成后,通过查询任务信息 API 或事件回调获取的 result 字段将包含以下内容。​
​
参数​
类型​
描述​
video_url​
String​
输出视频地址。地址类型根据请求时是否设置 media_output_destination 而不同:​
  • 默认情况(未设置 media_output_destination):返回一个 HTTPS 临时下载链接,有效期为 24 小时,请及时下载保存。​
  • 设置 media_output_destination 后:返回存储地址,格式为 vod://<空间名>/<媒资ID> 或 tos://<桶名>/<对象Key>。​
duration​
Number​
视频时长,单位为秒。​
​
最终的完整任务信息示例:​
​
{​
"success": true,​
"task_id": "amk-tool-remux-video-123456789",​
"request_id": "20240522190000ABCDEFG67890",​
"result": {​
"video_url": "https://example.volcvideo.com/remux_output.flv?auth_key=...",​
"duration": 180.5​
},​
"expires_at": 1777468800,​
"created_at": 1777292400,​
"finished_at": 1777292415​
}​
​
错误处理​
当请求的参数或鉴权信息不正确时,任务将不会被创建,接口会返回一个同步的错误响应。详见错误码。示例如下:​
​
{​
"success": false,​
"task_id": "",​
"request_id": "20240522190500XYZW54321",​
"error": {​
"code": "InvalidParameter",​
"message": "The parameter 'container_format' is missing or invalid.",​
"type": "BadRequest"​
}​
}​
​
最近更新时间:2026.07.30 16:52:39
这个页面对您有帮助吗?
有用
有用
无用
无用