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

AI 数据湖服务

复制全文
下载 pdf
音频处理
人声分离
复制全文
下载 pdf
人声分离
将音频或视频中的第一路音频分离为人声轨与伴奏/背景轨两条音轨,支持 WAV、MP3、AAC 输出;视频输入还可自动生成保留原画面、仅含人声音轨的 MP4,适合二创去背景乐、ASR/字幕预处理提纯人声、伴奏提取等场景。​
算子介绍​
Operator ID: las_vocal_separation​
核心能力​
  • 双音轨输出:​
  • 支持基于输入音视频返回人声轨与非人声残差轨。​
  • 人声视频输出:对于视频类的输入,支持额外返回 vocals_video_url、vocals_video_object_storage_path 和 vocals_video_size_bytes,可直接预览原画面配人声的效果。​
  • 共同峰值增益:normalize 默认为 false;开启时对两轨施加同一安全增益,保持相对比例,可能同时放大或衰减。它不是 LUFS 响度标准化,也不会改善分离质量;关闭时仍会执行必要的防削波衰减。​
  • 多格式输出:​
  • 处理结果支持多种音频格式:WAV 适合后期编辑和后续算法处理,MP3/AAC 适合试听与分发。​
效果展示​
【视频中的人声与伴奏分离示例】​
  • 输入视频​
  • ​
    Replay
    Play
    00:00 / 00:00 Live
    00:00
    Fullscreen
    Cssfullscreen
    1x
    • 2x
    • 1.5x
    • 1x
    • 0.75x
    • 0.5x
    Click and hold to drag
    ​
    ​
  • 核心参数示例​
  • ​
    "data": {​
    "input_url": "tos://<your_bucket_name>/input.mp4",​
    "output_tos_path": "tos://<your_bucket_name>/output/",​
    "output_format": "wav",​
    "normalize": false​
    }​
    ​
  • 本示例使用视频作为输入,输出两条 44100 Hz、双声道的 WAV 音轨,时长约 96 秒。​
  • normalize=false 表示不开启共同峰值增益;如果有防止削波的需要,算子仍可能对两条音轨使用相同的安全衰减。​
  • 人声轨 vocals.wav​
  • ​
    ​
    0:00 / 1:36
    ​
    ​
  • 保留原画面、仅含人声音轨的视频 vocals_video.mp4​
  • ​
    Replay
    Play
    00:00 / 01:36 Live
    00:00
    Fullscreen
    Cssfullscreen
    1x
    • 2x
    • 1.5x
    • 1x
    • 0.75x
    • 0.5x
    Click and hold to drag
    ​
    ​
  • 伴奏/背景残差轨 no_vocals.wav​
  • ​
    ​
    0:00 / 1:36
    ​
    ​
  • no_vocals 是输入减去估计人声后的残差轨,可用于伴奏提取或后续混音。它不保证完全不含人声,正式使用前建议试听或抽检。​
​
支持的地域​
  • 北京:cn-beijing​
输入与输出要求​
输入要求​
​
细分项​
详细要求​
支持的输入数据模态​
  • 音频​
  • 视频​
输入格式:音频/视频​
  • 格式:​
  • 视频格式输入时,视频必须包含有效音频流。​
  • 大小:不超过 1Gib​
  • 时长:音频输入的时长范围为 3~1800 秒;视频输入不超过 1800 秒。​
  • 源音频规格:源音频支持 1 到 8 声道、8000 到 192000 Hz​
  • 音频流:最多 16 路音频流,固定处理第一路音频流。始终处理第一路音频流,多语言或多声轨容器应预先将目标声轨重新封装为第一路。​
  • 其他:实际文件须通过容器和解码校验​
输入路径要求​
通过请求参数 input_url提供给算子输入数据,当前支持公网 URL、TOS 路径这两种方式。​
  • 公网 URL:公网可访问的音频或视频 URL,格式为 http/https。​
  • TOS 路径:将待处理数据上传至与当前 LAS 服务同主账号、同地域的 TOS Bucket后,可提供 TOS 路径,格式为tos://bucket_name/demo。​
​
输出要求​
​
细分项​
详细要求​
支持的输出数据模态​
  • 音频​
  • 视频​
输出格式:音频​
  • 格式:​
  • 视频输入时,固定输出 MP4/aac格式;​
  • 音频输入时支持输出 wav、mp3、aac。可通过请求参数 output_format 指定返回格式。​
  • wav 为 PCM16,mp3/aac 目标码率为 192 kbps,aac 使用 ADTS 容器。​
  • 固定包含 vocals 人声轨和 no_vocals 非人声残差轨,两轨均为 44100 Hz、双声道。​
  • 本算子面向音乐混音中的人声与伴奏分离,不区分说话人,也不提供降噪、去混响或“零人声”保证。​
  • no_vocals 是输入减去估计人声的残差,纯对白、强混响或低码率素材可能保留可懂人声;用于自动配音替换前需要残留语音检测和人工抽检。​
输出格式:视频​
  • 格式:MP4,输入包含有效视频流时自动生成 vocals_video.mp4,纯音频输入不返回视频字段(是否生成视频由实际有效视频流决定,不由扩展名决定)。​
  • 返回的视频保留第一路非封面视频流的原画面,并以 44100 Hz 双声道 AAC 人声音轨替换原音轨。不兼容 MP4 的视频编码会转为 H.264。​
  • 原音轨、字幕、附件和其他数据流不保留。​
输出路径要求​
可通过 output_tos_path 指定算子输出结果的存储路径,当前支持设置为 TOS 路径。​
  • TOS 路径:与 LAS 服务同主账号、同地域下,有可写权限的 TOS Bucket 目录,格式:tos://bucket/output/。​
​
计费说明​
  • 计费标准​
  • ​
    细分项​
    计费标准说明​
    计费项​
    基于输入的音频/视频时长统计用量进行计费。​
    计费类型​
    按量计费,单位:元/分钟,每小时出账。计费精度:分钟级,不足 1 分钟按 1 分钟计​
    单价​
    0.06 元/分钟​
    ​
  • 计费详情​
  • 计费公式:总费用 = 单价 * 用量​
注意与前提​
​
细分项​
注意与前提​
开通 LAS​
  • 如果您是一个全新的火山引擎用户,此前未开通过 LAS 产品,您可先开通 LAS,不使用 LAS 的计费功能仅开通 LAS 产品不会产生费用。开通操作请参见准备工作。​
费用​
调用算子前,您需先了解使用算子时的模型调用费用,详情请参见大模型调用计费。​
鉴权(API Key)​
调用算子前,您需要先生成算子调用的API Key,并建议将API Key配置为环境变量,便于更安全地调用算子,详情请参见获取 API Key 并配置。​
BaseURL​
调用算子前,您需要先根据您当前使用的LAS服务所在地域,了解算子调用的BaseURL,用于配置算子调用路径参数取值。​
详情请参见获取 Base URL,下文中的调用示例仅作为参考,实际调用时需替换为您对应地域的路径取值。​
​
Rest API 调用​
Submit​
接口说明​
提交 las_vocal_separation 人声分离任务。成功仅返回 PENDING 和任务 ID,通过 Poll 获取两条音轨和条件生成的人声视频。请求校验失败通过 HTTP 错误返回;提交后的媒体校验和执行失败通过 Poll 的任务终态与 metadata.business_code 返回。​
请求参数​
operator_id string 必选 示例值: las_vocal_separation​
算子 ID,固定为 las_vocal_separation。​
​
operator_version string 必选 示例值: v1​
算子版本,固定为 v1。​
​
data VocalSeparationRequest 必选​
人声分离业务参数,仅支持下表中的四个字段。​
input_url string 必选 示例值: https://example.com/media/demo.mp4​
输入音频或视频地址,1 到 4096 字符;支持 tos://、http://、https://,禁止本地路径及 userinfo。固定处理第一路音频;默认大小不超过 1 GiB、音频时长 3 到 1800 秒、视频时长不超过 1800 秒、最多 16 路音频流、1 到 8 声道、8000 到 192000 Hz,实际文件须可解析和解码。有有效视频流时自动生成人声视频。​
​
output_tos_path string Optional 示例值: tos://example-bucket/vocal-separation​
输出 TOS 目录前缀,最长 2048 字符;不传或为 null 时会直接返回可下载处理结果的预签名链接。显式传入时必须是非空 tos://bucket/prefix,调用账号须具备读写对应用户桶的权限。该值是目录,不是最终文件名,音频和可选视频均写入该目录下的任务子目录。​
​
output_format string Optional 示例值: wav​
音频输出格式,默认 wav。wav:PCM16,适合编辑和后续算法处理;mp3:目标码率 192 kbps,适合试听分发;aac:ADTS AAC、目标码率 192 kbps,适合 AAC 预览。三者均为 44100 Hz 双声道,取值区分大小写。不控制人声视频格式,视频始终为 MP4/AAC。​
​
normalize boolean Optional 示例值: false​
是否对两轨应用同一安全峰值增益,默认 false。true 适合音量偏小、直接试听或分发的素材,可共同放大或衰减且保持轨间比例;噪声和残留人声也会同步变响。后期混音、ASR 或后续增益处理建议关闭。关闭时仍执行必要的防削波衰减;不是 LUFS 响度标准化,不改善分离质量。​
​
​
callback Callback Optional​
可选终态回调配置;不传则通过 Poll 获取结果。​
url string 必选 示例值: https://example.com/callback​
接收任务终态通知的回调地址;配置 callback 时必填。​
​
​
​
​
返回数据​
metadata Metadata​
请求元信息与已接受的任务 ID。​
task_id string 示例值: ffb57ea6450c894f354c​
已接受的异步任务 ID,用于 Poll 查询。​
​
task_status string 示例值: PENDING​
提交成功为 PENDING,不表示处理已经完成。​
​
business_code string 示例值: 0​
提交成功为 0。​
​
error_msg string​
错误描述,成功时为空。​
​
request_id string 示例值: 9fed0e5f0659b128bad47e971aed3c81​
本次 API 请求 ID。​
​
​
​
请求示例​
​
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_vocal_separation",​
"operator_version": "v1",​
"data": {​
"input_url": "https://example.com/media/demo.mp4",​
"output_tos_path": "tos://example-bucket/vocal-separation",​
"output_format": "wav",​
"normalize": false​
}​
}'​
​
返回示例​
​
{​
"metadata": {​
"task_id": "ffb57ea6450c894f354c",​
"task_status": "PENDING",​
"business_code": "0",​
"error_msg": ""​
}​
}​
​
错误码​
​
HttpStatusCode​
错误码​
错误信息​
描述​
400​
VocalSeparation.InvalidRequest​
input_url must be a string​
缺少输入、字段类型或枚举非法、URI 不符合要求,或包含未公开字段。​
400​
Operator.InvalidId​
The operator is invalid.​
算子 ID 不正确或不可用。​
400​
Operator.InvalidVersion​
The operator version is invalid.​
算子版本不正确。​
401​
Authorization.Missing​
The authorization header is missing.​
缺少鉴权信息。​
401​
ApiKey.Invalid​
The api key is invalid.​
API Key 无效。​
429​
Server.Busy​
Server is Busy, please try again later.​
服务繁忙或触发限流。​
500​
Server.InternalError​
General Internal Error​
任务提交或平台配置异常,未成功接受任务。​
​
Poll​
接口说明​
通过任务 ID 查询 las_vocal_separation 的状态和结果。COMPLETED 返回两条音轨,视频输入还返回人声视频;其他状态下 data 为空对象。仅 HTTP 查询成功不代表任务执行成功,应同时检查 metadata.task_status 与 metadata.business_code。执行失败的业务码位于响应 metadata,HTTP 查询仍可返回 200。示例对应 Submit 中包含有效视频流的 MP4 输入;纯音频输入不返回三个 vocals_video_* 字段。下载地址为示意值,实际 URL 是服务端生成、有效期为 1 天(24 小时)的临时地址,应保存对象存储路径用于长期流转。​
请求参数​
​
参数​
类型​
是否必填​
示例值​
描述​
operator_id​
string​
是​
las_vocal_separation​
算子 ID,固定为 las_vocal_separation。​
operator_version​
string​
是​
v1​
算子版本,固定为 v1。​
task_id​
string​
是​
ffb57ea6450c894f354c​
Submit 返回的任务 ID。​
​
返回数据​
metadata Metadata​
请求元信息与任务状态。​
task_id string 示例值: ffb57ea6450c894f354c​
已接受的异步任务 ID,用于 Poll 查询。​
​
task_status string 示例值: COMPLETED​
PENDING 排队、RUNNING 处理中、COMPLETED 成功、FAILED 失败、EXPIRED 排队过期、CANCELLED 取消;无法判断时为 UNKNOWN。仅 COMPLETED 返回可用结果,其他状态下 data 为空对象。​
​
business_code string 示例值: 0​
0 表示查询无业务错误;必须同时检查 task_status。任务执行失败时为具体错误码。​
​
error_msg string​
错误描述,成功时为空。​
​
request_id string 示例值: 9fed0e5f0659b128bad47e971aed3c81​
本次 API 请求 ID。​
​
submit_time string 示例值: 2026-09-12T12:00:00+08:00​
任务提交时间,ISO 8601;无可用时间时不返回。​
​
end_time string 示例值: 2026-09-12T12:02:00+08:00​
任务结束时间,ISO 8601;任务未结束或时间不可用时不返回。​
​
​
data VocalSeparationResult​
任务成功后的音视频结果;非成功状态为空对象。​
request_id string 示例值: req-0123456789abcdef0123456789abcdef​
处理请求标识,用于结果目录关联;查询任务使用 metadata.task_id。​
​
vocals_url string 示例值: https://example.com/results/vocals.wav​
人声轨临时下载 URL,有效期为 1 天(24 小时)。​
​
vocals_object_storage_path string 示例值: tos://example-bucket/vocal-separation/task/vocals.wav​
人声轨对象存储原始路径,适合持久保存、后续流转或重新签名。​
​
vocals_size_bytes integer 示例值: 21168044​
人声轨文件大小,单位字节,来自上传后的对象大小校验。​
​
no_vocals_url string 示例值: https://example.com/results/no_vocals.wav​
非人声残差轨临时下载 URL,有效期为 1 天(24 小时)。残差可能仍包含可懂人声,不保证完全无人声。​
​
no_vocals_object_storage_path string 示例值: tos://example-bucket/vocal-separation/task/no_vocals.wav​
非人声残差轨对象存储原始路径,适合持久保存、后续流转或重新签名。​
​
no_vocals_size_bytes integer 示例值: 21168044​
非人声残差轨文件大小,单位字节,来自上传后的对象大小校验。​
​
vocals_video_url string 示例值: https://example.com/results/vocals_video.mp4​
仅含人声音轨的视频临时下载 URL,有效期为 1 天(24 小时)。仅当输入存在有效视频流时返回;纯音频输入不返回此字段。​
​
vocals_video_object_storage_path string 示例值: tos://example-bucket/vocal-separation/task/vocals_video.mp4​
仅含人声音轨的视频对象存储原始路径,适合持久保存、后续流转或重新签名。文件名固定为 vocals_video.mp4。仅当输入存在有效视频流时返回;纯音频输入不返回此字段。​
​
vocals_video_size_bytes integer 示例值: 48211390​
仅含人声音轨的视频文件大小,单位字节,来自上传后的对象大小校验。仅当输入存在有效视频流时返回;纯音频输入不返回此字段。​
​
audio AudioResult​
音频基础信息;audio.output_format 只描述两条音轨格式,不描述视频。​
duration_sec double 示例值: 120.0​
标准化双轨音频时长,单位秒,大于 0;有损输出容器时长可能因编码延迟略有差异。​
​
frames integer 示例值: 5292000​
每条内部 PCM 音轨的帧数,大于 0;不是 MP3/AAC 编码帧数。​
​
sample_rate integer 示例值: 44100​
采样率,固定为 44100 Hz。​
​
channels integer 示例值: 2​
声道数,固定为 2。​
​
sample_format string 示例值: s16​
标准化及内部 WAV 使用的 PCM 格式,固定为 s16;MP3/AAC 文件为有损编码。​
​
output_format string 示例值: wav​
音轨输出格式,wav、mp3 或 aac,与提交参数一致。​
​
​
​
​
​
请求示例​
​
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_vocal_separation",​
"operator_version": "v1",​
"task_id": "ffb57ea6450c894f354c"​
}'​
​
返回示例​
​
{​
"metadata": {​
"task_id": "ffb57ea6450c894f354c",​
"task_status": "COMPLETED",​
"business_code": "0",​
"error_msg": ""​
},​
"data": {​
"request_id": "req-0123456789abcdef0123456789abcdef",​
"vocals_url": "https://example.com/results/vocals.wav",​
"vocals_object_storage_path": "tos://example-bucket/vocal-separation/doctest/vocals.wav",​
"vocals_size_bytes": 21168044,​
"no_vocals_url": "https://example.com/results/no_vocals.wav",​
"no_vocals_object_storage_path": "tos://example-bucket/vocal-separation/doctest/no_vocals.wav",​
"no_vocals_size_bytes": 21168044,​
"vocals_video_url": "https://example.com/results/vocals_video.mp4",​
"vocals_video_object_storage_path": "tos://example-bucket/vocal-separation/doctest/vocals_video.mp4",​
"vocals_video_size_bytes": 48211390,​
"audio": {​
"duration_sec": 120.0,​
"frames": 5292000,​
"sample_rate": 44100,​
"channels": 2,​
"sample_format": "s16",​
"output_format": "wav"​
}​
}​
}​
​
错误码​
​
HttpStatusCode​
错误码​
错误信息​
描述​
200​
VocalSeparation.InvalidRequest​
Invalid vocal separation request​
请求参数或组合不正确。​
200​
VocalSeparation.IdempotencyConflict​
The task id is already associated with different input​
任务输入或输出策略发生幂等冲突。​
200​
VocalSeparation.DownloadRejected​
The input could not be downloaded​
输入访问策略或下载校验拒绝。​
200​
VocalSeparation.FileTooLarge​
The input file exceeds the size limit​
输入超过大小上限。​
200​
VocalSeparation.DurationTooShort​
The selected audio stream is too short​
输入音频短于最小时长。​
200​
VocalSeparation.DurationExceeded​
The selected audio stream exceeds the duration limit​
音频或视频超过时长上限。​
200​
VocalSeparation.AudioStreamMissing​
The selected audio stream does not exist​
输入缺少音频流。​
200​
VocalSeparation.FormatUnsupported​
The input media format is not supported​
容器、编码、音轨数量、声道或采样率不受支持。​
200​
VocalSeparation.MediaInvalid​
The input media file is invalid or incomplete​
媒体损坏、不完整或无法可靠解码。​
200​
VocalSeparation.DownloadUnavailable​
The input service is temporarily unavailable​
输入源暂时不可用。​
200​
VocalSeparation.ServiceUnavailable​
Vocal separation service is unavailable​
分离服务暂时不可用。​
200​
VocalSeparation.ResourceInsufficient​
Vocal separation capacity is temporarily insufficient​
处理资源暂时不足。​
200​
VocalSeparation.ProcessingFailed​
Vocal separation processing failed​
分离、转码、视频合成或产物校验失败。​
200​
VocalSeparation.Timeout​
Vocal separation timed out​
任务执行超时。​
200​
VocalSeparation.OutputUnavailable​
Vocal separation output is temporarily unavailable​
输出暂时不可用。​
200​
VocalSeparation.InternalError​
Vocal separation failed​
任务执行内部错误。​
400​
TaskId.Missing​
The task id is missing.​
任务 ID 缺失或为空。​
200​
TaskId.Invalid​
The task id is invalid.​
任务 ID 无效或任务不存在,metadata.task_status 为 FAILED。​
200​
Server.InternalError​
General Internal Error​
查询失败或任务结果不完整;检查 metadata.task_status 和 error_msg。​
401​
Authorization.Missing​
The authorization header is missing.​
缺少鉴权信息。​
401​
ApiKey.Invalid​
The api key is invalid.​
API Key 无效。​
429​
Server.Busy​
Server is Busy, please try again later.​
查询触发限流。​
​
​
最近更新时间:2026.10.19 19:22:29
这个页面对您有帮助吗?
有用
有用
无用
无用