You need to enable JavaScript to run this app.
文档中心
AI 数据湖服务

AI 数据湖服务

复制全文
下载 pdf
视频处理
音视频合并
复制全文
下载 pdf
音视频合并

算子介绍

描述

音视频合并算子,基于 FFmpeg 对输入的视频和音频素材进行顺序拼接、时长调整和最终合成。算子支持 1 对 1、1 对多、多对 1、多对多等多种输入组合;当视频和音频总时长不一致时,会根据配置自动选择变速对齐或按较短时长裁剪,并将结果视频与处理映射文件上传到 TOS。

使用限制

  • video_urlsaudio_urls 都必须传入,且都不能为空。
  • 输入源支持 http/httpstos://
  • output_tos_path 必须是当前账号可写的 TOS 目录。
  • video_durationsaudio_durations 如有传入,长度必须分别与展开后的 video_urlsaudio_urls 数量一致,且每个时长都必须大于 0。
  • max_speed_ratio 取值范围为 1.0 ~ 3.0。当音视频时长差异超出该范围时,算子会退化为按较短一侧裁剪,而不是继续大幅变速。

核心功能

  • 支持多段视频顺序拼接。
  • 支持多段音频顺序拼接。
  • 支持视频、音频分别按目标时长预处理后再合成。
  • 支持自动选择对齐策略:优先变速,超出阈值时自动裁剪。
  • 支持输出最终视频文件和映射文件,便于追踪每次合并的输入、时长和对齐策略。
  • 输出目录自动按账号、请求链路和输入哈希隔离,避免不同任务结果互相覆盖。

性能说明

  • 总耗时主要取决于输入文件数量、总时长、分辨率、编码格式以及是否需要重编码。
  • 多段素材拼接且伴随时长调整时,通常会触发重编码,耗时会明显高于简单直传拼接。
  • 建议优先使用同 Region 的 TOS 读写,以获得更稳定的下载和上传性能。

注意与前提

细分项

注意与前提

开通 LAS

  • 如果您是一个全新的火山引擎用户,此前未开通过 LAS 产品,您可先开通 LAS,不使用 LAS 的计费功能仅开通 LAS 产品不会产生费用。开通操作请参见准备工作
  • 开通完成后可查看算子介绍文档,了解算子能力、上手引导等,详情可参见:LAS 智能数据处理算子

费用

调用算子前,您需先了解使用算子时的模型调用费用,详情请参见大模型调用计费

鉴权(API Key)

调用算子前,您需要先生成算子调用的API Key,并建议将API Key配置为环境变量,便于更安全地调用算子,详情请参见获取 API Key 并配置

BaseURL

调用算子前,您需要先根据您当前使用的LAS服务所在地域,了解算子调用的BaseURL,用于配置算子调用路径参数取值。
详情请参见获取 Base URL,下文中的调用示例仅作为参考,实际调用时需替换为您对应地域的路径取值。

Rest API 调用

Submit

接口说明

调用音视频合并算子提交异步任务,支持多段视频、多段音频的拼接、时长调整和最终合成。

请求参数

参数
类型
是否必填
示例值
描述
operator_id
string
las_video_audio_merge
算子 ID
operator_version
string
v1
算子版本
data
VideoAudioMergeUserReqParams
音视频合并请求参数
video_urls
array
["https://example/sample_video_01.mp4", "https://example/sample_video_02.mp4"]
视频输入列表。支持 http/httpstos://bucket/key。当元素为以 / 结尾的 TOS 目录时,会自动枚举目录下视频文件。
audio_urls
array
["https://example/sample_audio.mp3"]
音频输入列表。支持 http/httpstos://bucket/key
output_tos_path
string
tos://bucket/output/
输出根目录。算子会在该目录下自动追加任务相关子目录保存结果。
output_basename
string
merged_result
输出文件基名。最终生成 {output_basename}.mp4{output_basename}_mapping.json;默认自动生成。
video_durations
array
[5.0, 5.0]
每个视频片段的目标时长(秒)。列表长度必须与视频输入数量一致。
audio_durations
array
[5.0, 5.0]
每个音频片段的目标时长(秒)。列表长度必须与音频输入数量一致。
max_speed_ratio
float
1.25
音视频对齐时允许的最大变速比例,取值范围 1.0 ~ 3.0,默认 1.25
speed_control_target
string
video
优先调整的一侧。可选值:videoaudio,默认 audio

返回数据

参数
类型
示例值
描述
metadata
metadata
请求元信息
task_id
string
task-xxx
异步模式下的任务 ID,用于作业状态查询。
task_status
string
PENDING
异步模式下的任务状态。
  • PENDING, 接收请求
  • RUNNING, 正在运行
  • COMPLETED, 已完成
  • FAILED, 失败
  • TIMEOUT, 超时
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": ""
    }
}

错误码

HttpCode

错误码

错误信息

说明

400

Parameter.Missing

Missing required parameter

缺少必选参数。

400

Parameter.Invalid

invalid parameter

参数不合法。

400

Url.Invalid

invalid url

输入地址不合法。

400

Video.Invalid

invalid video file

视频文件无效或无法解码。

400

Video.DownloadFailed

Video download failed

视频下载失败。

400

Video.FormatUnsupported

Video format not supported

视频格式不支持。

400

Video.Timeout

Video processing timeout

FFmpeg 处理超时。

400

Video.UploadFailed

Video upload failed

合成后视频上传失败。

400

Video.DurationTooShort

Video duration is too short

视频时长过短。

400

Audio.DownloadFailed

Audio download failed

音频下载失败。

400

Audio.FormatUnsupported

Audio format not supported

音频格式不支持。

400

Audio.UploadFailed

Audio upload failed

音频或映射文件上传失败。

400

Tos.AccessFailed

Failed to access TOS path with provided credentials

TOS 访问失败。

400

Task.NotFound

Task not found

任务不存在。

500

InternalError

Internal server error

服务内部错误。

Poll

接口说明

调用音视频合并算子提交异步任务,支持多段视频、多段音频的拼接、时长调整和最终合成。

请求参数

参数

类型

必填

示例值

说明

operator_id

string

las_video_audio_merge

算子 ID

operator_version

string

v1

算子版本

task_id

string

task-xxx

任务 ID

返回数据

参数
类型
示例值
描述
metadata
metadata
请求元信息
task_id
string
task-xxx
异步模式下的任务 ID。
task_status
string
COMPLETED
异步模式下的任务状态。
  • PENDING, 提交任务排队
  • RUNNING, 正在运行
  • COMPLETED, 已完成
  • FAILED, 失败
  • TIMEOUT, 超时
business_code
string
0
业务码。
error_msg
string
如有异常,会返回详细错误信息。
data
VideoAudioMergeResponse
返回的数据
output_video_path
string
tos://bucket/output/123/trace/hash/merged_result.mp4
合并后视频的 TOS 地址。
output_video_url
string
https://video.mp4
合并后的视频预签名链接,24h有效。
mapping_json_path
string
tos://bucket/output/123/trace/hash/merged_result_mapping.json
映射 JSON 文件地址,记录输入素材、时长和最终对齐策略。

示例

请求示例

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",
        "business_code": "0",
        "error_msg": ""
    },
    "data": {
        "output_video_path": "tos://path/to/merge_results/123456/trace-20260323-abc123/4d8d4a3f0a3c1d2e_1742726400/merged_result.mp4",
        "mapping_json_path": "tos://path/to/merge_results/123456/trace-20260323-abc123/4d8d4a3f0a3c1d2e_1742726400/merged_result_mapping.json"
    }
}
最近更新时间:2026.05.12 19:01:32
这个页面对您有帮助吗?
有用
有用
无用
无用