Skip to content

Audio Separation ​

이 문서는 Tencent Cloud 공식 문서 Audio Separation Integration을 참고합니다.

입력 영상 또는 오디오에서 보컬(목소리), 반주, 배경음을 분리해 별도 트랙으로 출력합니다. 화질 개선과 동일한 ProcessMedia 파이프라인에서 EnhanceConfig.AudioEnhance.Separate 설정으로 동작합니다.

API 정보 ​

항목값
서비스MPS
API ActionProcessMedia
엔드포인트mps.tencentcloudapi.com
API 버전2019-06-12
처리 방식비동기 (TaskId 발급 후 결과 조회)

인증은 모든 API가 공통으로 TC3-HMAC-SHA256(SecretId/SecretKey) 서명을 사용합니다. 서명 생성 방법은 Quick Start의 TokenHub 문서를 참고하세요.

결과 조회는 DescribeTaskDetail 또는 완료 콜백으로 받을 수 있습니다.

요청 파라미터 ​

파라미터타입필수예시설명
InputInfoObject필수{"Type":"COS","CosInputInfo":{"Bucket":"mybucket-125xxx","Region":"ap-guangzhou","Object":"/input/video.mp4"}}입력 미디어 정보. Type은 URL 또는 COS
OutputStorageObject선택{"Type":"COS","CosOutputStorage":{"Bucket":"mybucket-125xxx","Region":"ap-guangzhou"}}출력 저장소. COS Bucket과 Region 지정
OutputDirString선택/output/enhance/출력 디렉터리. /로 시작하고 /로 끝나야 함
MediaProcessTask.TranscodeTaskSet.N.RawParameterObject필수아래 호출 예시 참조오디오 분리는 커스텀 파라미터 모드에서만 지원
RawParameter.EnhanceConfig.AudioEnhance.Separate.SwitchString필수ON오디오 분리 활성화
RawParameter.EnhanceConfig.AudioEnhance.Separate.TypeString필수normal분리 유형. normal(보컬/배경음 분리) 또는 music(반주 분리)
RawParameter.EnhanceConfig.AudioEnhance.Separate.TrackString필수vocal출력 트랙. vocal(목소리) 또는 background(배경). 기본값 —
RawParameter.ContainerString선택mp4출력 컨테이너: mp4 / hls / flv
RawParameter.AudioTemplate.CodecString선택aac출력 오디오 코덱: aac / mp3 / copy
RawParameter.AudioTemplate.BitrateInteger선택128출력 오디오 비트레이트(kbps)
TaskNotifyConfig.NotifyUrlString선택https://example.com/callback태스크 완료 콜백 URL. NotifyType은 URL

분리 대상과 파라미터 조합은 다음과 같이 대응합니다.

분리 대상TypeTrack
보컬 추출(배경음악 제거)normalvocal
배경음 추출(목소리 제거)normalbackground
반주 추출(목소리 제거, 음악 유지)musicbackground

응답 파라미터 ​

파라미터타입필수예시설명
TaskIdString항상1250017490-20260318152230-abcdef123456발급된 태스크 ID. 결과 조회에 사용
RequestIdString항상3c140219-cfe9-470e-b241-907877d6fb03요청 식별자

호출 예시 ​

python
import json
from tencentcloud.common import credential
from tencentcloud.common.profile.client_profile import ClientProfile
from tencentcloud.common.profile.http_profile import HttpProfile
from tencentcloud.mps.v20190612 import mps_client, models

cred = credential.Credential("<SecretId>", "<SecretKey>")
http_profile = HttpProfile
http_profile.endpoint = "mps.tencentcloudapi.com"
client = mps_client.MpsClient(cred, "ap-guangzhou", ClientProfile(httpProfile=http_profile))

# 보컬 추출
params = {
    "InputInfo": {
        "Type": "URL",
        "UrlInputInfo": {"Url": "https://example.com/video.mp4"}
    },
    "OutputStorage": {
        "Type": "COS",
        "CosOutputStorage": {"Bucket": "mybucket-125xxx", "Region": "ap-guangzhou"}
    },
    "OutputDir": "/output/enhance/",
    "MediaProcessTask": {
        "TranscodeTaskSet": [{
            "RawParameter": {
                "Container": "mp4",
                "RemoveVideo": 0,
                "RemoveAudio": 0,
                "VideoTemplate": {
                    "Codec": "h265", "Fps": 0, "Bitrate": 0,
                    "Width": 1920, "Height": 0,
                    "ResolutionAdaptive": "open", "FillType": "black",
                    "ScenarioBased": 1, "CompressType": "standard_compress"
                },
                "AudioTemplate": {
                    "Codec": "aac", "Bitrate": 128,
                    "SampleRate": 44100, "AudioChannel": 2
                },
                "TEHDConfig": {"Type": "TEHD-100", "MaxVideoBitrate": 0},
                "EnhanceConfig": {
                    "AudioEnhance": {
                        "Separate": {"Switch": "ON", "Type": "normal", "Track": "vocal"}
                    }
                }
            }
        }]
    }
}

req = models.ProcessMediaRequest
req.from_json_string(json.dumps(params))
resp = client.ProcessMedia(req)
print(resp.to_json_string)

응답 예시 ​

json
{
  "TaskId": "1250017490-20260318152230-abcdef123456",
  "RequestId": "3c140219-cfe9-470e-b241-907877d6fb03"
}

사용 안내 ​

Separate.Track은 보컬 추출에 vocal, 배경음 추출에 background를 지정합니다.

오디오 분리와 화질 강화는 각각의 태스크로 구성합니다.

보컬과 반주를 모두 필요로 하면 Separate 설정이 다른 태스크 두 개를 각각 제출합니다. 결과 조회는 Task Query의 DescribeTaskDetail을 사용합니다.

基于 VitePress 构建 · 部署于腾讯云 EdgeOne Pages