tencent cloud

文档反馈

提交视频转码任务

最后更新时间:2022-08-19 15:16:47

    功能描述

    提交一个转码任务。

    推荐使用 API Explorer
    点击调试
    API Explorer 提供了在线调用、签名验证、SDK 代码生成和快速检索接口等能力。您可查看每次调用的请求内容和返回结果以及自动生成 SDK 调用示例。

    请求

    请求示例

    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>Transcode</Tag>
      <Input>
          <Object>input/demo.mp4</Object>
      </Input>
      <Operation>
          <TemplateId>t1460606b9752148c4ab182f55163ba7cd</TemplateId>
          <WatermarkTemplateId>t1318c5f428d474afba1797f84091cbe22</WatermarkTemplateId>
          <WatermarkTemplateId>t1318c5f428d474afba1797f84091cbe23</WatermarkTemplateId>
          <WatermarkTemplateId>t1318c5f428d474afba1797f84091cbe24</WatermarkTemplateId>
          <RemoveWatermark>
              <Dx>150</Dx>
              <Dy>150</Dy>
              <Width>75</Width>
              <Height>75</Height>
          </RemoveWatermark>
          <DigitalWatermark>
              <Type>Text</Type>
              <Message>123456789ab</Message>
              <Version>V1</Version>
              <IgnoreError>false</IgnoreError>
          </DigitalWatermark>
          <Output>
              <Region>ap-chongqing</Region>
              <Bucket>test-123456789</Bucket>
              <Object>output/out.mp4</Object>
          </Output>
          <UserData>This is my data.</UserData>
      </Operation>
      <QueueId>p2242ab62c7c94486915508540933a2c6</QueueId>
      <CallBack>http://callback.demo.com</CallBack>
      <CallBackFormat>JSON<CallBackFormat>
    </Request>
    

    具体的数据描述如下:

    节点名称(关键字) 父节点 描述 类型 是否必选
    Request 保存请求的容器 Container

    Container 类型 Request 的具体数据描述如下:

    节点名称(关键字) 父节点 描述 类型 是否必选
    Tag Request 创建任务的Tag:Transcode String
    Input Request 待操作的媒体信息 Container
    Operation Request 操作规则 Container
    QueueId Request 任务所在的队列 ID String
    CallBack Request 任务回调地址,优先级高于队列的回调地址。设置为 no 时,表示队列的回调地址不产生回调 String
    CallBackFormat Request 任务回调格式,JSON 或 XML,默认 XML,优先级高于队列的回调格式 String

    Container 类型 Input 的具体数据描述如下:

    节点名称(关键字) 父节点 描述 类型 是否必选
    Object Request.Input 媒体文件名 String


    Container 类型 Operation 的具体数据描述如下:

    节点名称(关键字) 父节点 描述 类型 是否必选
    TemplateId Request.Operation 指定的模板 ID String
    Transcode Request.Operation 指定转码模板参数 Container
    WatermarkTemplateId Request.Operation 指定的水印模板 ID,可以传多个水印模板 ID String
    Watermark Request.Operation 指定水印模板参数,同创建水印模板 CreateMediaTemplate 接口中的 Request.Watermark Container
    RemoveWatermark Request.Operation 指定去除水印参数 Container
    DigitalWatermark Request.Operation 指定数字水印参数 Container
    Output Request.Operation 结果输出地址 Container
    UserData Request.Operation 透传用户信息, 可打印的 ASCII 码, 长度不超过1024 String
    说明:

    对于转码参数,优先使用优先使用 TemplateId,无 TemplateId 时使用 Transcode;对于水印参数,可以使用 WatermarkTemplateId 或 Watermark 设置,WatermarkTemplateId 优先级更高。

    Container 类型 Transcode 的具体数据描述如下:

    节点名称(关键字) 父节点 描述 类型 必选
    TimeInterval Request.Operation.Transcode 同创建转码模板 CreateMediaTemplate 接口中的 Request.TimeInterval Container
    Container Request.Operation.Transcode 同创建转码模板 CreateMediaTemplate 接口中的 Request.Container Container
    Video Request.Operation.Transcode 同创建转码模板 CreateMediaTemplate 接口中的 Request.Video Container
    Audio Request.Operation.Transcode 同创建转码模板 CreateMediaTemplate 接口中的 Request.Audio Container
    TransConfig Request.Operation.Transcode 同创建转码模板 CreateMediaTemplate 接口中的 Request.TransConfig Container

    Container 类型 RemoveWatermark 的具体数据描述如下:

    节点名称(关键字) 父节点 描述 类型 必选
    Dx Request.Operation.RemoveWatermark 距离左上角原点 x 偏移,范围为[1, 4096] string
    Dy Request.Operation.RemoveWatermark 距离左上角原点 y 偏移,范围为[1, 4096] string
    Width Request.Operation.RemoveWatermark 宽,范围为[1, 4096] string
    Height Request.Operation.RemoveWatermark 高,范围为[1, 4096] string

    Container 类型 DigitalWatermark 的具体数据描述如下:

    节点名称(关键字) 父节点 描述 类型 必选
    Message Request.Operation.DigitalWatermark 数字水印嵌入的字符串信息,长度不超过64个字符,仅支持中文、英文、数字、_、-和* string
    Type Request.Operation.DigitalWatermark 水印类型,当前仅可设置为 Text String
    Version Request.Operation.DigitalWatermark 水印版本,当前仅可设置为 V1 String
    IgnoreError Request.Operation.DigitalWatermark 当添加水印失败是否忽略错误继续执行任务,限制为 true/false,默认为false string

    Container 类型 Output 的具体数据描述如下:

    节点名称(关键字) 父节点 描述 类型 是否必选
    Region Request.Operation.Output 存储桶的地域 String
    Bucket Request.Operation.Output 存储结果的存储桶 String
    Object Request.Operation.Output 输出结果的文件名 String

    响应

    响应头

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

    响应体

    该响应体返回为 application/xml 数据,包含完整节点数据的内容展示如下:

    <Response>
      <JobsDetail>
          <Code>Success</Code>
          <Message/>
          <JobId>j8d121820f5e411ec926ef19d53ba9c6f</JobId>
          <State>Submitted</State>
          <Progress>0</Progress>
          <CreationTime>2022-06-27T15:23:10+0800</CreationTime>
          <StartTime>-</StartTime>
          <EndTime>-</EndTime>
          <QueueId>p2242ab62c7c94486915508540933a2c6</QueueId>
          <Tag>Transcode</Tag>
          <Input>
              <BucketId>test-123456789</BucketId>
              <Object>input/demo.mp4</Object>
              <Region>ap-chongqing</Region>
          </Input>
          <Operation>
              <TemplateId>t1460606b9752148c4ab182f55163ba7cd</TemplateId>
              <TemplateName>trans_993874</TemplateName>
              <WatermarkTemplateId>t1318c5f428d474afba1797f84091cbe22</WatermarkTemplateId>
              <WatermarkTemplateId>t1318c5f428d474afba1797f84091cbe23</WatermarkTemplateId>
              <WatermarkTemplateId>t1318c5f428d474afba1797f84091cbe24</WatermarkTemplateId>
              <RemoveWatermark>
                  <Dx>150</Dx>
                  <Dy>150</Dy>
                  <Width>75</Width>
                  <Height>75</Height>
              </RemoveWatermark>
              <DigitalWatermark>
                  <Type>Text</Type>
                  <Message>123456789ab</Message>
                  <Version>V1</Version>
                  <IgnoreError>false</IgnoreError>
                  <State>Running</State>
              </DigitalWatermark>
              <Output>
                  <Region>ap-chongqing</Region>
                  <Bucket>test-123456789</Bucket>
                  <Object>output/out.mp4</Object>
              </Output>
              <UserData>This is my data.</UserData>
          </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:Transcode String
    State Response.JobsDetail 任务的状态,为 Submitted、Running、Success、Failed、Pause、Cancel 其中一个 String
    Progress Response.JobsDetail 任务进度百分比,只有在State为 Submitted、Running、Success、Pause 时有意义,范围为[0, 100] 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
    Transcode Response.JobsDetail.Operation 同请求中的 Request.Operation.Transcode Container
    Watermark Response.JobsDetail.Operation 同请求中的 Request.Operation.Watermark Container 数组
    WatermarkTemplateId Response.JobsDetail.Operation 指定的水印模板 ID String 数组
    Output Response.JobsDetail.Operation 同请求中的 Request.Operation.Output Container
    MediaInfo Response.JobsDetail.Operation 输出文件的媒体信息,任务未完成时不返回 Container
    MediaResult Response.JobsDetail.Operation 输出文件的基本信息,任务未完成时不返回 Container
    DigitalWatermark Response.JobsDetail.Operation 指定数字水印参数 Container
    UserData 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

    Container 类型 DigitalWatermark 的具体数据描述如下:

    节点名称(关键字) 父节点 描述 类型
    Message Response.Operation.DigitalWatermark 成功嵌入视频的数字水印的字符串信息,长度不超过64个字符,仅支持中文、英文、数字、_、-和* string
    Type Response.Operation.DigitalWatermark 水印类型,当前仅可设置为 Text String
    Version Response.Operation.DigitalWatermark 水印版本,当前仅可设置为 V1 String
    IgnoreError Response.Operation.DigitalWatermark 当添加水印失败是否忽略错误继续执行任务,限制为 true/false,默认false string
    State Response.Operation.DigitalWatermark 添加水印是否成功,执行中为Running,成功为 Success,失败为 Failed string

    错误码

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

    实际案例

    请求1:使用转码模板 ID

    POST /jobs HTTP/1.1
    Authorization: q-sign-algorithm=sha1&q-ak=AKIDZfbOAo7cllgPvF9cXFrJD0a1ICvR****&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>Transcode</Tag>
      <Input>
          <Object>input/demo.mp4</Object>
      </Input>
      <Operation>
          <TemplateId>t1460606b9752148c4ab182f55163ba7cd</TemplateId>
          <WatermarkTemplateId>t1318c5f428d474afba1797f84091cbe22</WatermarkTemplateId>
          <WatermarkTemplateId>t1318c5f428d474afba1797f84091cbe23</WatermarkTemplateId>
          <WatermarkTemplateId>t1318c5f428d474afba1797f84091cbe24</WatermarkTemplateId>
          <RemoveWatermark>
              <Dx>150</Dx>
              <Dy>150</Dy>
              <Width>75</Width>
              <Height>75</Height>
          </RemoveWatermark>
          <DigitalWatermark>
              <Type>Text</Type>
              <Message>123456789ab</Message>
              <Version>V1</Version>
              <IgnoreError>false</IgnoreError>
          </DigitalWatermark>
          <Output>
              <Region>ap-chongqing</Region>
              <Bucket>test-123456789</Bucket>
              <Object>output/out.mp4</Object>
          </Output>
          <UserData>This is my data.</UserData>
      </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>
          <Progress>0</Progress>
          <CreationTime>2022-06-27T15:23:11+0800</CreationTime>
          <StartTime>-</StartTime>
          <EndTime>-</EndTime>
          <QueueId>p2242ab62c7c94486915508540933a2c6</QueueId>
          <Tag>Transcode</Tag>
          <Input>
              <BucketId>test-123456789</BucketId>
              <Object>input/demo.mp4</Object>
              <Region>ap-chongqing</Region>
          </Input>
          <Operation>
              <TemplateId>t1460606b9752148c4ab182f55163ba7cd</TemplateId>
              <TemplateName>trans_993874</TemplateName>
              <WatermarkTemplateId>t1318c5f428d474afba1797f84091cbe22</WatermarkTemplateId>
              <WatermarkTemplateId>t1318c5f428d474afba1797f84091cbe23</WatermarkTemplateId>
              <WatermarkTemplateId>t1318c5f428d474afba1797f84091cbe24</WatermarkTemplateId>
              <RemoveWatermark>
                  <Dx>150</Dx>
                  <Dy>150</Dy>
                  <Width>75</Width>
                  <Height>75</Height>
              </RemoveWatermark>
              <DigitalWatermark>
                  <Type>Text</Type>
                  <Message>123456789ab</Message>
                  <Version>V1</Version>
                  <IgnoreError>false</IgnoreError>
                  <State>Running</State>
              </DigitalWatermark>
              <Output>
                  <Region>ap-chongqing</Region>
                  <Bucket>test-123456789</Bucket>
                  <Object>output/out.mp4</Object>
              </Output>
              <UserData>This is my data.</UserData>
          </Operation>
      </JobsDetail>
    </Response>
    

    请求2:使用转码处理参数

    POST /jobs HTTP/1.1
    Authorization:q-sign-algorithm=sha1&q-ak=AKIDZfbOAo7cllgPvF9cXFrJD0a1ICvR****&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>Transcode</Tag>
      <Input>
          <Object>input/demo.mp4</Object>
      </Input>
      <Operation>
          <Transcode>
              <Container>
                  <Format>mp4</Format>
              </Container>
              <Video>
                  <Codec>H.264</Codec>
                  <Profile>high</Profile>
                  <Bitrate>1000</Bitrate>
                  <Width>1280</Width>
                  <Fps>30</Fps>
                  <Preset>medium</Preset>
              </Video>
              <Audio>
                  <Codec>aac</Codec>
                  <Samplerate>44100</Samplerate>
                  <Bitrate>128</Bitrate>
                  <Channels>4</Channels>
              </Audio>
              <TransConfig>
                  <AdjDarMethod>scale</AdjDarMethod>
                  <IsCheckReso>false</IsCheckReso>
                  <ResoAdjMethod>1</ResoAdjMethod>
              </TransConfig>
              <TimeInterval>
                  <Start>0</Start>
                  <Duration>60</Duration>
              </TimeInterval>
          </Transcode>
          <Watermark>
              <Type>Text</Type>
              <LocMode>Absolute</LocMode>
              <Dx>128</Dx>
              <Dy>128</Dy>
              <Pos>TopRight</Pos>
              <StartTime>0</StartTime>
              <EndTime>100.5</EndTime>
              <Text>
                  <Text>水印内容</Text>
                  <FontSize>30</FontSize>
                  <FontType>simfang.ttf</FontType>
                  <FontColor>0xRRGGBB</FontColor>
                  <Transparency>30</Transparency>
              </Text>
          </Watermark>
          <DigitalWatermark>
              <Type>Text</Type>
              <Message>123456789ab</Message>
              <Version>V1</Version>
              <IgnoreError>false</IgnoreError>
          </DigitalWatermark>
          <Output>
              <Region>ap-chongqing</Region>
              <Bucket>test-123456789</Bucket>
              <Object>output/out.mp4</Object>
          </Output>
          <UserData>This is my data.</UserData>
      </Operation>
      <QueueId>p2242ab62c7c94486915508540933a2c6</QueueId>
      <CallBack>http://callback.demo.com</CallBack>
      <CallBackFormat>JSON<CallBackFormat>
    </Request>
    

    响应2

    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>
          <Progress>0</Progress>
          <CreationTime>2022-06-27T15:23:10+0800</CreationTime>
          <StartTime>-</StartTime>
          <EndTime>-</EndTime>
          <QueueId>p2242ab62c7c94486915508540933a2c6</QueueId>
          <Tag>Transcode</Tag>
          <Input>
              <BucketId>test-123456789</BucketId>
              <Object>input/demo.mp4</Object>
              <Region>ap-chongqing</Region>
          </Input>
          <Operation>
              <Transcode>
                  <Container>
                      <Format>mp4</Format>
                  </Container>
                  <Video>
                      <Codec>H.264</Codec>
                      <Profile>high</Profile>
                      <Bitrate>1000</Bitrate>
                      <Width>1280</Width>
                      <Fps>30</Fps>
                      <Preset>medium</Preset>
                  </Video>
                  <Audio>
                      <Codec>aac</Codec>
                      <Samplerate>44100</Samplerate>
                      <Bitrate>128</Bitrate>
                      <Channels>4</Channels>
                  </Audio>
                  <TransConfig>
                      <AdjDarMethod>scale</AdjDarMethod>
                      <IsCheckReso>false</IsCheckReso>
                      <ResoAdjMethod>1</ResoAdjMethod>
                  </TransConfig>
                  <TimeInterval>
                      <Start>0</Start>
                      <Duration>60</Duration>
                  </TimeInterval>
              </Transcode>
              <Watermark>
                  <Type>Text</Type>
                  <LocMode>Absolute</LocMode>
                  <Dx>128</Dx>
                  <Dy>128</Dy>
                  <Pos>TopRight</Pos>
                  <StartTime>0</StartTime>
                  <EndTime>100.5</EndTime>
                  <Text>
                      <Text>水印内容</Text>
                      <FontSize>30</FontSize>
                      <FontType></FontType>
                      <FontColor>0xRRGGBB</FontColor>
                      <Transparency>30</Transparency>
                  </Text>
              </Watermark>
              <RemoveWatermark>
                  <Dx>150</Dx>
                  <Dy>150</Dy>
                  <Width>75</Width>
                  <Height>75</Height>
              </RemoveWatermark>
              <DigitalWatermark>
                  <Type>Text</Type>
                  <Message>123456789ab</Message>
                  <Version>V1</Version>
                  <IgnoreError>false</IgnoreError>
                  <State>Running</State>
              </DigitalWatermark>
              <Output>
                  <Region>ap-chongqing</Region>
                  <Bucket>test-123456789</Bucket>
                  <Object>output/out.mp4</Object>
              </Output>
              <UserData>This is my data.</UserData>
          </Operation>
      </JobsDetail>
    </Response>
    
    联系我们

    联系我们,为您的业务提供专属服务。

    技术支持

    如果你想寻求进一步的帮助,通过工单与我们进行联络。我们提供7x24的工单服务。

    7x24 电话支持