音视频合并算子,基于 FFmpeg 对输入的视频和音频素材进行顺序拼接、时长调整和最终合成。算子支持 1 对 1、1 对多、多对 1、多对多等多种输入组合;当视频和音频总时长不一致时,会根据配置自动选择变速对齐或按较短时长裁剪,并将结果视频与处理映射文件上传到 TOS。
算子 ID : las_video_audio_merge
细分项 | 性能影响说明 |
|---|---|
最大 RPM | 600 |
最大并发数 | 10 |
耗时 |
|
细分 | 详细要求 |
|---|---|
支持的输入数据模态 |
|
输入格式:视频 |
|
输入格式:音频 |
|
输入路径要求 | 通过请求参数
|
细分 | 详细要求 |
|---|---|
输出数据模态 |
|
输出路径:TOS | 通过请求参数
|
计费标准
细分项 | 计费标准说明 |
|---|---|
计费项 | 基于输入视频的时长统计用量进行计费。 |
计费类型 | 按量计费,单位: |
单价 | 0.02 元/分钟 |
计费详情
计费公式:总费用 = 单价 * 用量
细分项 | 注意与前提 |
|---|---|
开通 LAS |
|
费用 | 调用算子前,您需先了解使用算子时的模型调用费用,详情请参见大模型调用计费。 |
鉴权(API Key) | 调用算子前,您需要先生成算子调用的API Key,并建议将API Key配置为环境变量,便于更安全地调用算子,详情请参见获取 API Key 并配置。 |
BaseURL | 调用算子前,您需要先根据您当前使用的LAS服务所在地域,了解算子调用的BaseURL,用于配置算子调用路径参数取值。 |
Submit 接口提交任务获得任务的 task_id,再通过 Poll 接口获取对应任务(task_id)运行状态,并获取算子处理结果。task_id 有效期为 3 天,超过 3 天后即无法通过此 task_id 来获取算子处理结果。调用音视频合并算子提交异步任务,支持多段视频、多段音频的拼接、时长调整和最终合成。
参数 | 类型 | 是否必填 | 示例值 | 描述 |
|---|---|---|---|---|
operator_id | string | 是 | las_video_audio_merge | 算子 ID。 |
operator_version | string | 是 | v1 | 算子版本。 |
data | VideoAudioMergeUserReqParams | 是 | 音视频合并请求参数。 |
参数 | 类型 | 示例值 | 描述 |
|---|---|---|---|
metadata | metadata | 请求元信息 | |
task_id | string | task-xxx | 异步模式下的任务 ID,用于作业状态查询。 |
task_status | string | PENDING | 异步模式下的任务状态。
|
business_code | string | 0 | 业务码。 |
error_msg | string | 如有异常,会返回详细错误信息。 |
# 请将 OUTPUT_TOS_PATH 设置为本账号上可写入的 tos 路径 export OUTPUT_TOS_PATH="tos://path/to/merge_results" curl --location "https://operator.las.cn-beijing.volces.com/api/v1/submit" --header "Content-Type: application/json" --header "Authorization: Bearer $LAS_API_KEY" --data '{ "operator_id": "las_video_audio_merge", "operator_version": "v1", "data": { "video_urls": [ "https://las-demo.tos-cn-beijing.volces.com/las_video_audio_merge/v1/videos/seg_001_0.000-6.000.mp4", "https://las-demo.tos-cn-beijing.volces.com/las_video_audio_merge/v1/videos/seg_002_6.000-12.000.mp4" ], "audio_urls": [ "https://las-demo.tos-cn-beijing.volces.com/las_video_audio_merge/v1/audio/audio_001.mp3" ], "output_tos_path": "'$OUTPUT_TOS_PATH'" } }'
{ "metadata": { "task_id": "task-20260323153012-abc123", "task_status": "PENDING", "business_code": "0", "error_msg": "" } }
HttpStatusCode | 错误码 | 错误信息 | 描述 |
|---|---|---|---|
400 | Parameter.Missing | Missing required parameter | 缺少必选参数。 |
400 | Parameter.Invalid | invalid parameter | 参数类型、枚举、范围或数组长度不合法。 |
400 | Url.Invalid | invalid url | 输入地址格式不合法。 |
400 | Tos.AccessFailed | Failed to access TOS path with provided credentials | TOS 路径格式错误、对象不存在或无读写权限。 |
500 | InternalError | Internal server error | 服务内部错误。 |
任务进入 FAILED 或 TIMEOUT 后,通过 Poll 返回以下业务错误。错误码实际覆盖范围以服务响应为准。
错误码 | 描述 |
|---|---|
Video.Invalid | 视频文件无效或无法解码。 |
Video.DownloadFailed | 视频下载失败。 |
Video.FormatUnsupported | 视频格式不支持。 |
Video.Timeout | 音视频处理超时。 |
Video.UploadFailed | 合成后视频上传失败。 |
Video.DurationTooShort | 视频时长过短。 |
Audio.DownloadFailed | 音频下载失败。 |
Audio.FormatUnsupported | 音频格式不支持。 |
Audio.UploadFailed | 音频处理产物或映射文件上传失败。 |
调用该接口查询音视频合并异步任务的执行状态和结果。
参数 | 类型 | 必填 | 示例值 | 说明 |
|---|---|---|---|---|
operator_id | string | 是 | las_video_audio_merge | 算子 ID |
operator_version | string | 是 | v1 | 算子版本 |
task_id | string | 是 | task-xxx | 任务 ID |
参数 | 类型 | 示例值 | 描述 |
|---|---|---|---|
metadata | Metadata | 任务元信息。 | |
data | VideoAudioMergeResponse | 合并结果。仅当 task_status=COMPLETED 且 business_code=0 时返回完整数据;PENDING、RUNNING、FAILED、TIMEOUT 状态下不返回或为空。 |
curl --location "https://operator.las.cn-beijing.volces.com/api/v1/poll" --header "Content-Type: application/json" --header "Authorization: Bearer $LAS_API_KEY" --data '{ "operator_id": "las_video_audio_merge", "operator_version": "v1", "task_id": "task-20260323153012-abc123" }'
{ "metadata": { "task_id": "task-20260323153012-abc123", "task_status": "COMPLETED", "submit_time": "2026-07-21T16:04:06+08:00", "end_time": "2026-07-21T16:04:16+08:00", "business_code": "0", "error_msg": "" }, "data": { "output_video_path": "tos://your-bucket/output/merge_results/.../merged_result.mp4", "output_video_url": "https://example-presigned-url", "mapping_json_path": "tos://your-bucket/output/merge_results/.../merged_result_mapping.json" } }
HttpStatusCode | 错误码 | 错误信息 | 描述 |
|---|---|---|---|
400 | Parameter.Missing | Missing required parameter | 缺少必选参数。 |
400 | Parameter.Invalid | invalid parameter | 参数不合法。 |
400 | Task.NotFound | Task not found | 任务不存在、已过期或当前身份无权查询。 |
500 | InternalError | Internal server error | 服务内部错误。 |
任务进入 FAILED 或 TIMEOUT 后,以下错误码通过 metadata.business_code 和 metadata.error_msg 返回。错误码实际覆盖范围以服务响应为准。
错误码 | 描述 |
|---|---|
Url.Invalid | 输入地址无法访问或格式不合法。 |
Video.Invalid | 视频文件无效或无法解码。 |
Video.DownloadFailed | 视频下载失败。 |
Video.FormatUnsupported | 视频格式不支持。 |
Video.Timeout | 音视频处理超时。 |
Video.UploadFailed | 合成后视频上传失败。 |
Video.DurationTooShort | 视频时长过短。 |
Audio.DownloadFailed | 音频下载失败。 |
Audio.FormatUnsupported | 音频格式不支持。 |
Audio.UploadFailed | 音频处理产物或映射文件上传失败。 |
Tos.AccessFailed | TOS 输入或输出路径不存在、跨账号/地域,或当前身份无访问权限。 |