tencent cloud

文档反馈

提交人声分离任务

最后更新时间:2024-01-20 16:30:33

    功能描述

    提交一个人声分离任务。
    

    请求

    请求示例

    POST /jobs HTTP/1.1
    Host: <BucketName-APPID>.ci.<Region>.myqcloud.com
    Date: <GMT Date>
    Authorization: <Auth String>
    Content-Length: <length>
    Content-Type: application/xml
    
    <body>
    说明:
    Authorization: Auth String(详情请参见 请求签名 文档)。
    通过子账号使用时,需要授予相关的权限,详情请参见 授权粒度详情 文档。

    请求头

    此接口仅使用公共请求头部,详情请参见 公共请求头部 文档。

    请求体

    该请求操作的实现需要有如下请求体:
    <Request>
    <Tag>VoiceSeparate</Tag>
    <Input>
    <Object>input/demo.mp4</Object>
    </Input>
    <Operation>
    <TemplateId>t1460606b9752148c4ab182f55163ba7cd</TemplateId>
    <Output>
    <Region>ap-chongqing</Region>
    <Bucket>test-123456789</Bucket>
    <Object>output/backgroud.mp3</Object>
    <AuObject>output/audio.mp3</AuObject>
    </Output>
    <UserData>This is my data.</UserData>
    <JobLevel>0</JobLevel>
    </Operation>
    <QueueId>p2242ab62c7c94486915508540933a2c6</QueueId>
    <CallBack>http://callback.demo.com</CallBack>
    <CallBackFormat>JSON<CallBackFormat>
    </Request>
    具体的数据描述如下:
    节点名称(关键字)
    父节点
    描述
    类型
    是否必选
    Request
    保存请求的容器
    Container
    Container 类型 Request 的具体数据描述如下:
    节点名称(关键字)
    父节点
    描述
    类型
    是否必选
    Tag
    Request
    创建任务的 Tag:VoiceSeparate
    String
    Input
    Request
    待操作的媒体信息
    Container
    Operation
    Request
    操作规则
    Container
    QueueId
    Request
    任务所在的队列 ID
    String
    CallBackFormat
    Request
    任务回调格式,JSON 或 XML,默认 XML,优先级高于队列的回调格式
    String
    CallBackType
    Request
    任务回调类型,Url 或 TDMQ,默认 Url,优先级高于队列的回调类型
    String
    CallBack
    Request
    任务回调地址,优先级高于队列的回调地址。设置为 no 时,表示队列的回调地址不产生回调
    String
    CallBackMqConfig
    Request
    任务回调 TDMQ 配置,当 CallBackType 为 TDMQ 时必填。详情见 CallBackMqConfig
    Container
    Container 类型 Input 的具体数据描述如下:
    节点名称(关键字)
    父节点
    描述
    类型
    是否必选
    Object
    Request.Input
    媒体文件名
    String
    Container 类型 Operation 的具体数据描述如下:
    节点名称(关键字)
    父节点
    描述
    类型
    是否必选
    VoiceSeparate
    Request.Operation
    指定转码模板参数
    Container
    TemplateId
    Request.Operation
    指定的模板 ID
    String
    Output
    Request.Operation
    结果输出地址
    Container
    JobLevel
    Request.Operation
    任务优先级,级别限制:0 、1 、2。级别越大任务优先级越高,默认为0
    String
    注意:
    优先使用 TemplateId,无 TemplateId 时使用 VoiceSeparate。
    
    Container 类型 VoiceSeparate 的具体数据描述如下:
    节点名称(关键字)
    父节点
    描述
    类型
    是否必选
    AudioMode
    Request.Operation.VoiceSeparate
    同创建人声分离模板 CreateMediaTemplate 接口中的 Request.AudioMode
    Container
    AudioConfig
    Request.Operation.VoiceSeparate
    同创建人声分离模板 CreateMediaTemplate 接口中的 Request.AudioConfig
    Container
    Container 类型 Output 的具体数据描述如下:
    节点名称(关键字)
    父节点
    描述
    类型
    是否必选
    Region
    Request.Operation.Output
    存储桶的地域
    String
    Bucket
    Request.Operation.Output
    存储结果的存储桶
    String
    Object
    Request.Operation.Output
    背景音结果文件名,不能与 AuObject 同时为空
    String
    AuObject
    Request.Operation.AuObject
    人声结果文件名,不能与 Object 同时为空
    String

    响应

    响应头

    此接口仅返回公共响应头部,详情请参见 公共响应头部 文档。

    响应体

    该响应体返回为 application/xml 数据,包含完整节点数据的内容展示如下:
    <Response>
    <JobsDetail>
    <Code>Success</Code>
    <Message/>
    <JobId>j8d121820f5e411ec926ef19d53ba9c6f</JobId>
    <State>Submitted</State>
    <CreationTime>2022-06-27T15:23:10+0800</CreationTime>
    <StartTime>-</StartTime>
    <EndTime>-</EndTime>
    <QueueId>p2242ab62c7c94486915508540933a2c6</QueueId>
    <Tag>VoiceSeparate</Tag>
    <Input>
    <BucketId>test-123456789</BucketId>
    <Object>input/demo.mp4</Object>
    <Region>ap-chongqing</Region>
    </Input>
    <Operation>
    <TemplateId>t1460606b9752148c4ab182f55163ba7cd</TemplateId>
    <TemplateName>voiceseparate_demo</TemplateName>
    <Output>
    <Region>ap-chongqing</Region>
    <Bucket>test-123456789</Bucket>
    <Object>output/backgroud.mp3</Object>
    <AuObject>output/audio.mp3</AuObject>
    </Output>
    <UserData>This is my data.</UserData>
    <JobLevel>0</JobLevel>
    </Operation>
    </JobsDetail>
    </Response>
    具体的数据内容如下:
    节点名称(关键字)
    父节点
    描述
    类型
    Response
    保存结果的容器
    Container
    Container 节点 Response 的内容:
    节点名称(关键字)
    父节点
    描述
    类型
    JobsDetail
    Response
    任务的详细信息
    Container
    Container 节点 JobsDetail 的内容:
    节点名称(关键字)
    父节点
    描述
    类型
    Code
    Response.JobsDetail
    错误码,只有 State 为 Failed 时有意义
    String
    Message
    Response.JobsDetail
    错误描述,只有 State 为 Failed 时有意义
    String
    JobId
    Response.JobsDetail
    新创建任务的 ID
    String
    Tag
    Response.JobsDetail
    新创建任务的 Tag:VoiceSeparate
    String
    State
    Response.JobsDetail
    任务的状态,为 Submitted、Running、Success、Failed、Pause、Cancel 其中一个
    String
    CreationTime
    Response.JobsDetail
    任务的创建时间
    String
    StartTime
    Response.JobsDetail
    任务的开始时间
    String
    EndTime
    Response.JobsDetail
    任务的结束时间
    String
    QueueId
    Response.JobsDetail
    任务所属的队列 ID
    String
    Input
    Response.JobsDetail
    该任务的输入资源地址
    Container
    Operation
    Response.JobsDetail
    该任务的规则
    Container
    Container 节点 Input 的内容:
    节点名称(关键字)
    父节点
    描述
    类型
    Region
    Response.JobsDetail.Input
    存储桶的地域
    String
    Bucket
    Response.JobsDetail.Input
    存储结果的存储桶
    String
    Object
    Response.JobsDetail.Input
    输出结果的文件名
    String
    Container 节点 Operation 的内容:
    节点名称(关键字)
    父节点
    描述
    类型
    TemplateId
    Response.JobsDetail.Operation
    任务的模板 ID
    String
    TemplateName
    Response.JobsDetail.Operation
    任务的模板名称, 当 TemplateId 存在时返回
    String
    VoiceSeparate
    Response.JobsDetail.Operation
    同请求中的 Request.Operation.VoiceSeparate
    Container
    Output
    Response.JobsDetail.Operation
    同请求中的 Request.Operation.Output
    Container
    MediaInfo
    Response.JobsDetail.Operation
    转码输出视频的信息,任务未完成时不返回
    Container
    MediaResult
    Response.JobsDetail.Operation
    输出文件的基本信息,任务未完成时不返回
    Container
    UserData
    Response.JobsDetail.Operation
    透传用户信息
    String
    JobLevel
    Response.JobsDetail.Operation
    任务优先级
    String
    Container 节点 MediaInfo 的内容: 同 GenerateMediaInfo 接口中的 Response.MediaInfo 节点。
    Container 节点 MediaResult 的内容:
    节点名称(关键字)
    父节点
    描述
    类型
    OutputFile
    Response.Operation.MediaResult
    输出文件的基本信息
    Container
    Container 节点 OutputFile 的内容:
    节点名称(关键字)
    父节点
    描述
    类型
    Bucket
    Response.Operation.MediaResult.OutputFile
    输出文件所在的存储桶
    String
    Region
    Response.Operation.MediaResult.OutputFile
    输出文件所在的存储桶所在的园区
    String
    ObjectName
    Response.Operation.MediaResult.OutputFile
    输出文件名,可能有多个
    String 数组
    Md5Info
    Response.Operation.MediaResult.OutputFile
    输出文件的 MD5 信息
    Container 数组
    Container 节点 Md5Info 的内容:
    节点名称(关键字)
    父节点
    描述
    类型
    ObjectName
    Response.Operation.MediaResult.OutputFile.Md5Info
    输出文件名
    String
    Md5
    Response.Operation.MediaResult.OutputFile.Md5Info
    输出文件的 MD5 值
    Container

    错误码

    该请求操作无特殊错误信息,常见的错误信息请参见 错误码 文档。

    实际案例

    请求1:使用人声分离模板 ID

    POST /jobs HTTP/1.1
    Authorization:q-sign-algorithm=sha1&q-ak=AKIDZfbOAo7cllgPvF9cXFrJD0**********&q-sign-time=1497530202;1497610202&q-key-time=1497530202;1497610202&q-header-list=&q-url-param-list=&q-signature=28e9a4986df11bed0255e97ff90500557e0ea057
    Host:bucket-1250000000.ci.ap-beijing.myqcloud.com
    Content-Length: 166
    Content-Type: application/xml
    
    <Request>
    <Tag>VoiceSeparate</Tag>
    <Input>
    <Object>input/demo.mp4</Object>
    </Input>
    <Operation>
    <TemplateId>t1460606b9752148c4ab182f55163ba7cd</TemplateId>
    <Output>
    <Region>ap-chongqing</Region>
    <Bucket>test-123456789</Bucket>
    <Object>output/backgroud.mp3</Object>
    <AuObject>output/audio.mp3</AuObject>
    </Output>
    <UserData>This is my data.</UserData>
    <JobLevel>0</JobLevel>
    </Operation>
    <QueueId>p2242ab62c7c94486915508540933a2c6</QueueId>
    <CallBack>http://callback.demo.com</CallBack>
    <CallBackFormat>JSON<CallBackFormat>
    </Request>

    响应1

    HTTP/1.1 200 OK
    Content-Type: application/xml
    Content-Length: 230
    Connection: keep-alive
    Date: Mon, 28 Jun 2022 15:23:12 GMT
    Server: tencent-ci
    x-ci-request-id: NTk0MjdmODlfMjQ4OGY3XzYzYzhf****
    
    <Response>
    <JobsDetail>
    <Code>Success</Code>
    <Message/>
    <JobId>j8d121820f5e411ec926ef19d53ba9c6f</JobId>
    <State>Submitted</State>
    <CreationTime>2022-06-27T15:23:10+0800</CreationTime>
    <StartTime>-</StartTime>
    <EndTime>-</EndTime>
    <QueueId>p2242ab62c7c94486915508540933a2c6</QueueId>
    <Tag>VoiceSeparate</Tag>
    <Input>
    <BucketId>test-123456789</BucketId>
    <Object>input/demo.mp4</Object>
    <Region>ap-chongqing</Region>
    </Input>
    <Operation>
    <TemplateId>t1460606b9752148c4ab182f55163ba7cd</TemplateId>
    <TemplateName>voiceseparate_demo</TemplateName>
    <Output>
    <Region>ap-chongqing</Region>
    <Bucket>test-123456789</Bucket>
    <Object>output/backgroud.mp3</Object>
    <AuObject>output/audio.mp3</AuObject>
    </Output>
    <UserData>This is my data.</UserData>
    <JobLevel>0</JobLevel>
    </Operation>
    </JobsDetail>
    </Response>

    请求2:使用人声分离参数

    POST /jobs HTTP/1.1
    Authorization: q-sign-algorithm=sha1&q-ak=AKIDZfbOAo7cllgPvF9cXFrJD0**********&q-sign-time=1497530202;1497610202&q-key-time=1497530202;1497610202&q-header-list=&q-url-param-list=&q-signature=28e9a4986df11bed0255e97ff90500557e0ea057
    Host: examplebucket-1250000000.ci.ap-beijing.myqcloud.com
    Content-Length: 166
    Content-Type: application/xml
    
    <Request>
    <Tag>VoiceSeparate</Tag>
    <Input>
    <Object>input/demo.mp4</Object>
    </Input>
    <Operation>
    <VoiceSeparate>
    <AudioConfig>
    <Bitrate>500</Bitrate>
    <Channels>2</Channels>
    <Codec>mp3</Codec>
    <Samplerate>44100</Samplerate>
    </AudioConfig>
    <AudioMode>AudioAndBackground</AudioMode>
    </VoiceSeparate>
    <Output>
    <Region>ap-chongqing</Region>
    <Bucket>test-123456789</Bucket>
    <Object>output/backgroud.mp3</Object>
    <AuObject>output/audio.mp3</AuObject>
    </Output>
    <UserData>This is my data.</UserData>
    <JobLevel>0</JobLevel>
    </Operation>
    <QueueId>p2242ab62c7c94486915508540933a2c6</QueueId>
    <CallBack>http://callback.demo.com</CallBack>
    <CallBackFormat>JSON<CallBackFormat>
    </Request>

    响应

    HTTP/1.1 200 OK
    Content-Type: application/xml
    Content-Length: 230
    Connection: keep-alive
    Date: Mon, 28 Jun 2022 15:23:12 GMT
    Server: tencent-ci
    x-ci-request-id: NTk0MjdmODlfMjQ4OGY3XzYzYzhf****
    
    <Response>
    <JobsDetail>
    <Code>Success</Code>
    <Message/>
    <JobId>j8d121820f5e411ec926ef19d53ba9c6f</JobId>
    <State>Submitted</State>
    <CreationTime>2022-06-27T15:23:10+0800</CreationTime>
    <StartTime>-</StartTime>
    <EndTime>-</EndTime>
    <QueueId>p2242ab62c7c94486915508540933a2c6</QueueId>
    <Tag>VoiceSeparate</Tag>
    <Input>
    <BucketId>test-123456789</BucketId>
    <Object>input/demo.mp4</Object>
    <Region>ap-chongqing</Region>
    </Input>
    <Operation>
    <VoiceSeparate>
    <AudioConfig>
    <Bitrate>500</Bitrate>
    <Channels>2</Channels>
    <Codec>mp3</Codec>
    <Samplerate>44100</Samplerate>
    </AudioConfig>
    <AudioMode>AudioAndBackground</AudioMode>
    </VoiceSeparate>
    <Output>
    <Region>ap-chongqing</Region>
    <Bucket>test-123456789</Bucket>
    <Object>output/backgroud.mp3</Object>
    <AuObject>output/audio.mp3</AuObject>
    </Output>
    <UserData>This is my data.</UserData>
    <JobLevel>0</JobLevel>
    </Operation>
    </JobsDetail>
    </Response>