Queries one or more media information analysis jobs.
Usage notes
- You can call this operation to query up to 10 media information analysis jobs at a time.
- After you upload a media file, the media information can be retrieved only after a callback is returned, indicating that the media file has been analyzed. If you have not received a callback for a long period, or if you have not configured callback settings but you cannot retrieve the media information long after a media information analysis job is submitted, the job may fail. In this case, submit a ticket and provide your Alibaba Cloud account ID, the region in which you use ApsaraVideo Media Processing (MPS), and the video ID for troubleshooting.
QPS limit
You can call this API operation up to 100 times per second per account. Requests that exceed this limit are dropped and you will experience service interruptions. We recommend that you take note of this limit when you call this operation. For more information, see QPS limit.
Debugging
Request parameters
| Parameter | Type | Required | Example | Description |
|---|---|---|---|---|
| Action | String | Yes | QueryMediaInfoJobList |
The operation that you want to perform. Set the value to QueryMediaInfoJobList. |
| MediaInfoJobIds | String | Yes | 23ca1d184c0e4341e5b665e2a12**** |
The IDs of the media information analysis jobs. Separate multiple jobs with commas (,). You can query up to 10 jobs at a time. |
Response parameters
| Parameter | Type | Example | Description |
|---|---|---|---|
| NonExistMediaInfoJobIds | Array of String | 11ce1d184c0e4341e5b665e2a12**** |
The IDs of the media information analysis jobs that do not exist. If all specified jobs exist, the response does not contain this parameter. |
| RequestId | String | 46A04AA5-B119-41BB-B750-7C5327AC3E7A |
The ID of the request. |
| MediaInfoJobList | Array of MediaInfoJob |
The details of each returned media information analysis job. |
|
| MediaInfoJob | |||
| CreationTime | String | 2014-01-10T12:00:00Z |
The time when the job was created. |
| State | String | Success |
The status of the job. Valid values:
|
| JobId | String | 23ca1d184c0e4341e5b665e2a12**** |
The ID of the job. |
| UserData | String | testid-001 |
The custom data. |
| Code | String | InvalidParameter.JsonObjectFormatInvalid |
The error code returned when the job fails. |
| Message | String | The parameter "*" does not conform to the JSON Object specification |
The error message returned when the job fails. |
| PipelineId | String | 88c6ca184c0e432bbf5b665e2a15**** |
The ID of the MPS queue to which the job is added. |
| Async | Boolean | true |
Indicates whether the job is in asynchronous mode. |
| Input | Object |
The information about the job input. |
|
| Object | String | example.mp4 |
The name of the Object Storage Service (OSS) object used as the input file. |
| Location | String | oss-cn-hangzhou |
The ID of the OSS region. |
| Bucket | String | example-bucket |
The name of the OSS bucket that stores the object. |
| MNSMessageResult | Object |
The message sent by Message Service (MNS) to notify users of the job result. |
|
| MessageId | String | 123 |
The ID of the success message returned when the job is successful. This parameter is not returned if the job fails. |
| ErrorMessage | String | The parameter \"Input\" does not conform to the JSON Object specification |
The error message returned when the job fails. This parameter is not returned if the job is successful. |
| ErrorCode | String | InvalidParameter.JsonObjectFormatInvalid |
The error code returned when the job fails. This parameter is not returned if the job is successful. |
| Properties | Object |
The information about the input file. For more information, see AliyunProperties. |
|
| Width | String | 1280 |
The width of the video. Unit: pixel. |
| Height | String | 720 |
The height of the video. Unit: pixel. |
| Duration | String | 17.226000 |
The duration. |
| Fps | String | 25 |
The frame rate. |
| Bitrate | String | 1630.045 |
The bitrate. |
| FileFormat | String | QuickTime/MOV |
The file format. |
| Streams | Object |
The stream information. |
|
| VideoStreamList | Array of VideoStream |
The information about each video stream. |
|
| VideoStream | |||
| Sar | String | 1:1 |
The sample aspect ratio (SAR). |
| Height | String | 1080 |
The latter number in the video resolution. The number indicates the video height. |
| CodecTagString | String | [0][0][0][0] |
The tag string of the encoding format. |
| NetworkCost | Object |
The network bandwidth consumption. |
|
| PreloadTime | String | 8 |
The amount of preload time. |
| AvgBitrate | String | 300.34 |
The average bitrate. |
| CostBandwidth | String | 10 |
The maximum bandwidth consumption. |
| Width | String | 1920 |
The former number in the video resolution. The number indicates the video width. |
| Index | String | 1 |
The sequence number of the video stream. The value indicates the position of the video stream in all video streams. |
| Timebase | String | 1/1000 |
The time base. |
| AvgFPS | String | 24000/1001 |
The average frame rate. |
| PixFmt | String | yuv420p |
The pixel format. |
| Lang | String | eng |
The language. |
| CodecLongName | String | H.264/AVC/MPEG-4 AVC/MPEG-4 part 10 |
The full name of the encoding format. |
| NumFrames | String | 100 |
The total number of frames. |
| Rotate | String | 180 |
The video rotation angle. |
| Bitrate | String | 30541090 |
The bitrate. |
| HasBFrames | String | 0 |
Indicates whether the video stream contains bidirectional frames (B-frames). A value of 1 indicates that the video stream contains B-frames. A value of 0 indicates that the video stream does not contain B-frames. |
| Profile | String | High |
The codec profile. |
| StartTime | String | 0.042000 |
The start time. |
| Dar | String | 16:9 |
The display aspect ratio (DAR). |
| CodecName | String | h264 |
The short name of the encoding format. Valid values:
|
| Duration | String | 100 |
The duration. |
| Fps | String | 25 |
The frame rate. |
| CodecTag | String | 0x0000 |
The tag of the encoding format. |
| CodecTimeBase | String | 1001/48000 |
The codec time base. |
| Level | String | 41 |
The codec level. |
| ColorRange | String | 700 |
The color range. |
| ColorTransfer | String | R255 G83 B170 |
The color channel. |
| ColorPrimaries | String | 700 |
The level of color reconstruction. |
| AudioStreamList | Array of AudioStream |
The information about each audio stream. |
|
| AudioStream | |||
| Timebase | String | 1/1000 |
The time base. |
| Index | String | 1 |
The sequence number of the audio stream. The value indicates the position of the audio stream in all audio streams. |
| SampleFmt | String | fltp |
The sampling format. |
| ChannelLayout | String | 5.1(side) |
The number of sound channels. |
| Lang | String | eng |
The language. For more information, see 21.20.1 Metadata in FFmpeg documentation. |
| Samplerate | String | 48000 |
The sampling rate. |
| CodecLongName | String | DCA (DTS Coherent Acoustics) |
The full name of the encoding format. |
| Channels | String | 2 |
The output layout of the sound channels. |
| NumFrames | String | 123 |
The total number of frames. |
| Bitrate | String | 1536000 |
The bitrate. |
| CodecTagString | String | [0][0][0][0] |
The tag string of the encoding format. |
| StartTime | String | 0.042000 |
The start time. |
| CodecName | String | acc |
The short name of the encoding format. Valid values:
|
| Duration | String | 123 |
The duration. |
| CodecTag | String | 0x0000 |
The tag of the encoding format. |
| CodecTimeBase | String | 1/48000 |
The codec time base. |
| SubtitleStreamList | Array of SubtitleStream |
The information about each subtitle stream. |
|
| SubtitleStream | |||
| Timebase | String | 1/1000 |
The time base. |
| Index | String | 3 |
The sequence number of the subtitle stream. The value indicates the position of the subtitle stream in all subtitle streams. |
| StartTime | String | 0.000000 |
The start time. |
| CodecName | String | ass |
The short name of the encoding format. Valid values:
|
| Lang | String | eng |
The language. |
| CodecLongName | String | ASS (Advanced SSA) subtitle |
The full name of the encoding format. |
| Duration | String | 1370.116000 |
The duration. Unit: seconds. |
| CodecTag | String | 0x0000 |
The tag of the encoding format. |
| CodecTimeBase | String | 0/1 |
The codec time base. |
| CodecTagString | String | [0][0][0][0] |
The tag string of the encoding format. |
| Format | Object |
The format information. |
|
| StartTime | String | 0.042000 |
The start time. |
| NumPrograms | String | 2 |
The total number of program streams. |
| Size | String | 3509895 |
The size of the file. |
| NumStreams | String | 1 |
The total number of media streams. |
| FormatLongName | String | QuickTime/MOV |
The full name of the container format. |
| Duration | String | 17.226000 |
The total duration. |
| Bitrate | String | 1630.045 |
The total bitrate. |
| FormatName | String | mov |
The short name of the container format. |
| FileSize | String | 3509895 |
The size of the file. |
Callback parameters
When the status of the media information analysis job changes, MPS sends a message to the specified MNS queue. For more information about how to specify an MNS queue for receiving callbacks, see the UpdatePipeline topic. The callback message is a JSON string that contains the parameters described in the following table.
{
"Type": "MediaInfo",
"State": "Success",
"JobId": "bb558c1cc25b45309aab5be44d19****",
"UserData": "{\"key\":\"value\"}",
"RequestId": "B52658D4-07AB-43CD-82B0-210958A6****"
}
|
Parameter |
Type |
Description |
|---|---|---|
|
Type |
String |
The value is fixed to MediaInfo, which indicates a media information analysis job. |
|
JobId |
String |
The unique ID of the job. |
|
State |
String |
The current status of the job. The value is the same as the value of the State parameter returned in the QueryMediaInfoJobList operation. |
|
UserData |
String |
The user data that was specified for the job in the SubmitMediaInfoJob operation. |
Examples
Sample request
http(s)://mts.cn-hangzhou.aliyuncs.com/?Action=QueryMediaInfoJobList
&MediaInfoJobIds=23ca1d184c0e4341e5b665e2a12****
&<Common request parameters>Sample success responses
XML format
HTTP/1.1 200 OK
Content-Type:application/xml
<QueryMediaInfoJobListResponse>
<NonExistMediaInfoJobIds>11ce1d184c0e4341e5b665e2a12****</NonExistMediaInfoJobIds>
<RequestId>46A04AA5-B119-41BB-B750-7C5327AC3E7A</RequestId>
<MediaInfoJobList>
<CreationTime>2014-01-10T12:00:00Z</CreationTime>
<State>Success</State>
<JobId>23ca1d184c0e4341e5b665e2a12****</JobId>
<UserData>testid-001</UserData>
<PipelineId>88c6ca184c0e432bbf5b665e2a15****</PipelineId>
<Async>true</Async>
<Input>
<Object>example.mp4</Object>
<Location>oss-cn-hangzhou</Location>
<Bucket>example-bucket</Bucket>
</Input>
<MNSMessageResult>
<MessageId>123</MessageId>
</MNSMessageResult>
<Properties>
<Width>1280</Width>
<Height>720</Height>
<Duration>17.226000</Duration>
<Fps>25</Fps>
<Bitrate>1630.045</Bitrate>
<FileFormat>QuickTime/MOV</FileFormat>
<Streams>
<VideoStreamList>
<Sar>1:1</Sar>
<Height>1080</Height>
<CodecTagString>[0][0][0][0]</CodecTagString>
<NetworkCost>
<PreloadTime>8</PreloadTime>
<AvgBitrate>300.34</AvgBitrate>
<CostBandwidth>10</CostBandwidth>
</NetworkCost>
<Width>1920</Width>
<Index>1</Index>
<Timebase>1/1000</Timebase>
<AvgFPS>24000/1001</AvgFPS>
<PixFmt>yuv420p</PixFmt>
<Lang>eng</Lang>
<CodecLongName>H.264/AVC/MPEG-4 AVC/MPEG-4 part 10</CodecLongName>
<NumFrames>100</NumFrames>
<Rotate>180</Rotate>
<Bitrate>30541090</Bitrate>
<HasBFrames>0</HasBFrames>
<Profile>High</Profile>
<StartTime>0.042000</StartTime>
<Dar>16:9</Dar>
<CodecName>h264</CodecName>
<Duration>100</Duration>
<Fps>25</Fps>
<CodecTag>0x0000</CodecTag>
<CodecTimeBase>1001/48000</CodecTimeBase>
<Level>41</Level>
<ColorRange>700</ColorRange>
<ColorTransfer>R255 G83 B170</ColorTransfer>
<ColorPrimaries>700</ColorPrimaries>
</VideoStreamList>
<AudioStreamList>
<Timebase>1/1000</Timebase>
<Index>1</Index>
<SampleFmt>fltp</SampleFmt>
<ChannelLayout>5.1(side)</ChannelLayout>
<Lang>eng</Lang>
<Samplerate>48000</Samplerate>
<CodecLongName>DCA (DTS Coherent Acoustics)</CodecLongName>
<Channels>2</Channels>
<NumFrames>123</NumFrames>
<Bitrate>1536000</Bitrate>
<CodecTagString>[0][0][0][0]</CodecTagString>
<StartTime>0.042000</StartTime>
<CodecName>acc</CodecName>
<Duration>123</Duration>
<CodecTag>0x0000</CodecTag>
<CodecTimeBase>1/48000</CodecTimeBase>
</AudioStreamList>
<SubtitleStreamList>
<Timebase>1/1000</Timebase>
<Index>3</Index>
<StartTime>0.000000</StartTime>
<CodecName>ass</CodecName>
<Lang>eng</Lang>
<CodecLongName>ASS (Advanced SSA) subtitle</CodecLongName>
<Duration>1370.116000</Duration>
<CodecTag>0x0000</CodecTag>
<CodecTimeBase>0/1</CodecTimeBase>
<CodecTagString>[0][0][0][0]</CodecTagString>
</SubtitleStreamList>
</Streams>
<Format>
<StartTime>0.042000</StartTime>
<NumPrograms>2</NumPrograms>
<Size>3509895</Size>
<NumStreams>1</NumStreams>
<FormatLongName>QuickTime/MOV</FormatLongName>
<Duration>17.226000</Duration>
<Bitrate>1630.045</Bitrate>
<FormatName>mov</FormatName>
</Format>
<FileSize>3509895</FileSize>
</Properties>
</MediaInfoJobList>
</QueryMediaInfoJobListResponse>JSON format
HTTP/1.1 200 OK
Content-Type:application/json
{
"NonExistMediaInfoJobIds": [
"11ce1d184c0e4341e5b665e2a12****"
],
"RequestId": "46A04AA5-B119-41BB-B750-7C5327AC3E7A",
"MediaInfoJobList": [
{
"CreationTime": "2014-01-10T12:00:00Z",
"State": "Success",
"JobId": "23ca1d184c0e4341e5b665e2a12****",
"UserData": "testid-001",
"PipelineId": "88c6ca184c0e432bbf5b665e2a15****",
"Async": true,
"Input": {
"Object": "example.mp4",
"Location": "oss-cn-hangzhou",
"Bucket": "example-bucket"
},
"MNSMessageResult": {
"MessageId": "123",
},
"Properties": {
"Width": "1280",
"Height": "720",
"Duration": "17.226000",
"Fps": "25",
"Bitrate": "1630.045",
"FileFormat": "QuickTime/MOV",
"Streams": {
"VideoStreamList": [
{
"Sar": "1:1",
"Height": "1080",
"CodecTagString": "[0][0][0][0]",
"NetworkCost": {
"PreloadTime": "8",
"AvgBitrate": "300.34",
"CostBandwidth": "10"
},
"Width": "1920",
"Index": "1",
"Timebase": "1/1000",
"AvgFPS": "24000/1001",
"PixFmt": "yuv420p",
"Lang": "eng",
"CodecLongName": "H.264/AVC/MPEG-4 AVC/MPEG-4 part 10",
"NumFrames": "100",
"Rotate": "180",
"Bitrate": "30541090",
"HasBFrames": "0",
"Profile": "High",
"StartTime": "0.042000",
"Dar": "16:9",
"CodecName": "h264",
"Duration": "100",
"Fps": "25",
"CodecTag": "0x0000",
"CodecTimeBase": "1001/48000",
"Level": "41",
"ColorRange": "700",
"ColorTransfer": "R255 G83 B170",
"ColorPrimaries": "700"
}
],
"AudioStreamList": [
{
"Timebase": "1/1000",
"Index": "1",
"SampleFmt": "fltp",
"ChannelLayout": "5.1(side)",
"Lang": "eng",
"Samplerate": "48000",
"CodecLongName": "DCA (DTS Coherent Acoustics)",
"Channels": "2",
"NumFrames": "123",
"Bitrate": "1536000",
"CodecTagString": "[0][0][0][0]",
"StartTime": "0.042000",
"CodecName": "acc",
"Duration": "123",
"CodecTag": "0x0000",
"CodecTimeBase": "1/48000"
}
],
"SubtitleStreamList": [
{
"Timebase": "1/1000",
"Index": "3",
"StartTime": "0.000000",
"CodecName": "ass",
"Lang": "eng",
"CodecLongName": "ASS (Advanced SSA) subtitle",
"Duration": "1370.116000",
"CodecTag": "0x0000",
"CodecTimeBase": "0/1",
"CodecTagString": "[0][0][0][0]"
}
]
},
"Format": {
"StartTime": "0.042000",
"NumPrograms": "2",
"Size": "3509895",
"NumStreams": "1",
"FormatLongName": "QuickTime/MOV",
"Duration": "17.226000",
"Bitrate": "1630.045",
"FormatName": "mov"
},
"FileSize": "3509895"
}
}
]
}Error codes
For a list of error codes, visit the Error Center.