更新时间:2024-11-12 GMT+08:00

查询转封装任务

功能介绍

查询转封装任务状态。

调用方法

请参见如何调用API

URI

GET /v1/{project_id}/remux

表1 路径参数

参数

是否必选

参数类型

描述

project_id

String

项目ID。获取方法请参考获取项目ID

表2 Query参数

参数

是否必选

参数类型

描述

task_id

Array of strings

任务ID。一次最多10个

status

String

任务执行状态。

取值如下:

  • INIT:初始状态

  • WAITING:等待启动

  • PROCESSING:处理中

  • SUCCEED:处理成功

  • FAILED:处理失败

  • CANCELED:已取消

start_time

String

起始时间。格式为yyyymmddhhmmss。必须是与时区无关的UTC时间,指定task_id时该参数无效

end_time

String

结束时间。格式为yyyymmddhhmmss。必须是与时区无关的UTC时间,指定task_id时该参数无效

input_bucket

String

源文件存储桶。

input_object

String

源对象名称.

page

Integer

分页编号。查询指定“task_id”时,该参数无效。

默认值:0。

size

Integer

每页记录数。查询指定“task_id”时,该参数无效。

取值范围:[1,100]。

默认值:10。

请求参数

表3 请求Header参数

参数

是否必选

参数类型

描述

X-Auth-Token

String

用户Token。

通过调用IAM服务获取用户Token接口获取(响应消息头中X-Subject-Token的值)。

Authorization

String

使用AK/SK方式认证时必选,携带的鉴权信息。

X-Project_Id

String

使用AK/SK方式认证时必选,携带项目ID信息, 与路径参数中的项目ID相同。

X-Sdk-Date

String

使用AK/SK方式认证时必选,请求的发生时间。

响应参数

状态码: 200

表4 响应Body参数

参数

参数类型

描述

total

Integer

任务总数

tasks

Array of RemuxTask objects

任务列表

表5 RemuxTask

参数

参数类型

描述

task_id

String

任务ID

status

String

任务状态。

取值如下:

  • INIT:初始状态。

  • WAITING:等待启动。

  • PROCESSING:处理中。

  • SUCCEED:处理成功。

  • FAILED:处理失败。

  • CANCELED:已取消。

create_time

String

任务创建时间

start_time

String

任务启动时间

end_time

String

任务结束时间

error_code

String

任务的返回码。

description

String

错误描述

user_data

String

用户数据。

input

ObsObjInfo object

源文件信息

output

ObsObjInfo object

输出文件信息

output_param

RemuxOutputParam object

输出参数

complete_ratio

Integer

任务完成进度百分比值。

output_metadata

MetaData object

转封装出文件的元数据信息。

表6 ObsObjInfo

参数

参数类型

描述

bucket

String

OBS的bucket名称。

location

String

OBS桶所在的区域,且必须与使用的MPC区域保持一致。

object

String

OBS对象路径,遵守OSS Object定义。

  • 当用于指示input时,需要指定到具体对象。

  • 当用于指示output时,只需指定到转码结果期望存放的路径。

在字幕场景下,字幕文件名称中禁止携带特殊符号,否则会导致转码任务失败,如:[

  • 正确示例: demo.srt

  • 错误示例: [demo.srt

file_name

String

文件名

  • 当指定了此参数时,输出的对象名为object/file_name。

  • 当不指定此参数时,输出的对象名为object/xxx,其中xxx由MPC指定。

在作为输出文件名时:

  • 在转封装场景有效,需要指定输出文件名称

  • 在转码场景下,如果需要指定输出的文件名称,请使用output_filenames参数

  • 在解析场景有效,解析场景如果指定文件名,则将解析参数写入指定文件名,通过查询接口响应json数据获取文件元数据信息

  • 在截图场景无效

  • 在转动图场景无效

  • 输出文件为HLS格式时,文件名称不能命名为index,示例:index.m3u8,否则会导致播放失败。

表7 RemuxOutputParam

参数

参数类型

描述

format

String

输出格式。取值范围:

  • HLS

  • MP4

segment_duration

Integer

分片时长,仅当“format”为“HLS”时有效。

参考取值范围:[2,10]。

默认值: 5。

单位:秒。

说明:

若设置的分片时长不在取值范围内,则自动调整为5。

remove_meta

Boolean

输出媒体是否去除片源的中metadata自定义信息。默认值:false

表8 MetaData

参数

参数类型

描述

size

Long

文件大小。

单位:byte。

duration_ms

Double

视频时长,带小数位显示。

单位:秒。

duration

Long

视频时长。

单位:秒。

format

String

文件封装格式。

bitrate

Long

总码率。

单位:bit/秒

video

Array of VideoInfo objects

视频流元数据。

audio

Array of AudioInfo objects

音频流元数据。

表9 VideoInfo

参数

参数类型

描述

width

Integer

视频宽度

height

Integer

视频高度

bitrate

Integer

视频码率。

单位: kbit/s

说明:

视频解析接口2024年8月7日做了如下变更:

  • 变更前:视频解析任务,如果为同步解析,即sync参数配置为1时,解析响应VideoInfo中的参数bitrate单位实际为bit/s。

  • 变更后:视频解析任务同步解析响应VideoInfo中的参数bitrate单位变更为kbit/s。

    上述更新,可能会影响历史用户的转码业务判断,请关注并及时调整业务。

bitrate_bps

Long

视频码率。

单位: bit/s

frame_rate

Integer

帧率。

取值范围:0或[5,60],0表示自适应。

单位:帧每秒。

说明:

若设置的帧率不在取值范围内,则自动调整为0,若设置的帧率高于片源帧率,则自动调整为片源帧率。

codec

String

视频编码格式

表10 AudioInfo

参数

参数类型

描述

codec

String

音频编码格式

sample

Integer

音频采样率

channels

Integer

音频信道

bitrate

Integer

音频码率。

单位: kbit/s

bitrate_bps

Long

音频码率。

单位: bit/s

状态码: 400

表11 响应Body参数

参数

参数类型

描述

error_code

String

错误码。

error_msg

String

错误描述。

请求示例

GET https://{endpoint}/v1/{project_id}/remux?task_id=10743

响应示例

状态码: 200

查询转封装任务成功。

{
  "total" : 1,
  "tasks" : [ {
    "task_id" : 10743,
    "error_code" : "MPC.10218",
    "status" : "SUCCEED",
    "create_time" : 20201117021558,
    "start_time" : 20201117021558,
    "end_time" : 20201117021559,
    "description" : "The task has completed.",
    "input" : {
      "bucket" : "example-bucket",
      "location" : "region01",
      "object" : "example-path/input.flv"
    },
    "output" : {
      "bucket" : "example-bucket",
      "location" : "region01",
      "object" : "example-path/output.mp4",
      "file_name" : "bf00ba898a3dfb3560a292fd87f790db.mp4"
    },
    "user_data" : 1795687,
    "output_param" : {
      "format" : "MP4",
      "segment_duration" : 5,
      "remove_meta" : false
    },
    "complete_ratio" : 100,
    "output_metadata" : {
      "size" : 3189068,
      "duration_ms" : 25.48,
      "duration" : 25,
      "format" : "mp4",
      "bitrate" : 977,
      "video" : [ {
        "width" : 1920,
        "height" : 1080,
        "bitrate" : 977,
        "bitrate_bps" : 1001277,
        "frame_rate" : 25,
        "codec" : "H.264"
      } ],
      "audio" : [ {
        "sample" : 48000,
        "channels" : 2,
        "bitrate" : 0,
        "bitrate_bps" : 0
      } ]
    }
  } ]
}

状态码: 400

查询转封装任务失败。

{
  "error_code" : "MPC.10202",
  "error_msg" : "Invalid request parameter."
}

状态码

状态码

描述

200

查询转封装任务成功。

400

查询转封装任务失败。

错误码

请参见错误码