Submits transcoding jobs.

Usage notes

  • If the transcoding jobs and workflows created in the ApsaraVideo Media Processing (MPS) console cannot meet your business requirements, you can call the SubmitJobs operation to submit transcoding jobs. Specify transcoding parameters as required when you call the SubmitJobs operation.
  • If you want to use multiple accounts in MPS, you can create RAM users by using your Alibaba Cloud account and grant the MPSfullaccess permission to the RAM users. If the Alibaba Cloud account that is used to query transcoding jobs is not the Alibaba Cloud account that is used to create the transcoding jobs, no data is returned. For more information, see Create a RAM role for a trusted Alibaba Cloud account and authorize the RAM role to access MPS.
  • A transcoding job is generated for each transcoding output. This API operation returns information about the transcoding jobs that are generated.
  • A video is re-encoded during transcoding in MPS. The bitrate of the transcoded video may be different from that of the source video. If you want to retain the bitrate of a video during transcoding, you can use a container format conversion template. For more information, see Preset template details.
  • Jobs are added to an MPS queue in which the jobs are scheduled and run. After the jobs are run, you can call the QueryJobList operation to query the results of the jobs. Alternatively, you can enable asynchronous notifications so that you can be automatically notified of the job results.
    Note To enable asynchronous notifications, you must bind a Message Service (MNS) topic to the MPS queue in which the transcoding jobs are run. If an asynchronous message is returned for a transcoding job in the MPS queue, MPS forwards the message to the specified MNS topic.
  • To use an intelligent preset template to transcode a video, you must first call the SubmitAnalysisJob operation to submit a template analysis job for the video. After the template analysis job is complete, you can call the QueryAnalysisJobList operation to query the intelligent preset templates that are applicable to the video.
    Note When you submit a transcoding job, set the TemplateId parameter to the ID of an applicable preset template. If you specify a preset template that is not included in the applicable preset templates when you submit a transcoding job, the transcoding job fails.
  • If you use a static preset template to transcode a video, you do not need to submit a template analysis job first.
  • The size of the input file in a transcoding job can be up to 100 GB. Otherwise, the transcoding job may fail.

QPS limits

You can call this 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

OpenAPI Explorer automatically calculates the signature value. For your convenience, we recommend that you call this operation in OpenAPI Explorer. OpenAPI Explorer dynamically generates the sample code of the operation for different SDKs.

Request parameters

Parameter Type Required Example Description
Action String Yes SubmitJobs

The operation that you want to perform. Set the value to SubmitJobs.

Input String Yes {"Bucket":"exampleBucket","Location":"oss-cn-hangzhou","Object":"example.flv","Referer": "The parameter that you set in the Object Storage Service (OSS) console to enable the hotlink protection feature"}

The input of the jobs. Specify the value in a JSON object. The Referer parameter is optional. If you need to set a referer whitelist in a transcoding job, you must specify the Referer parameter in the input. For more information about the parameters in the Input parameter, see the Input section of the "Parameter details" topic.

Note You can specify the {ObjectPrefix}, {FileName}, and {ExtName} variables in an OSS URL. MPS can dynamically replace the variables with the actual values. For example, you specify a/b/c/test.flv as the object to be used as the input file and {ObjectPrefix}{FileName}-cn.srt as the object to be used as the external subtitle file. After URL encoding, the specified OSS URL of the external subtitle file is %7bObjectPrefix%7d%7bFileName%7d-cn.srt. Then, MPS replaces the variables to obtain a/b/c/test-cn.srt as the OSS URL of the external subtitle file.
Outputs String Yes [{"OutputObject":"exampleOutput.mp4","TemplateId":"6181666213ab41b9bc21da8ff5ff****","WaterMarks":[{"InputFile":{"Bucket":"exampleBucket","Location":"oss-cn-hangzhou","Object":"image_01.png"},"WaterMarkTemplateId":"9b772ce2740d4d55876d8b542d47****"}],"UserData":"testid-001"}]

The outputs of the jobs.

  • Specify the value in a JSON array of Output objects. You can specify up to 30 Output objects.
  • For more information about job outputs, see Terms.
  • For more information about the parameters in each Output object, see the Output section of the "Parameter details" topic.
Note If you need to merge images in a transcoding job, set the width and height of each image to be processed to even numbers. Otherwise, the job may fail.
OutputBucket String Yes exampleBucket

The name of the output bucket. To obtain the name of an output bucket, you can log on to the MPS console, choose Workflows > Media Buckets in the left-side navigation pane, and then click the Output Buckets tab.

OutputLocation String No oss-cn-hangzhou

The region in which the output bucket resides.

PipelineId String Yes dd3dae411e704030b921e52698e5****

The ID of the MPS queue. To obtain the ID of an MPS queue, you can log on to the MPS console and choose Global Settings > Pipelines in the left-side navigation pane.

  • For more information about MPS queues, see Terms.
  • If you want to use asynchronous notifications, make sure that an MNS topic is bound to the MPS queue to be used. For more information about how to bind an MNS topic to an MPS queue, see Enable the notification feature for jobs or workflows.

Response parameters

Parameter Type Example Description
JobResultList Array of JobResult

The transcoding jobs that are generated.

JobResult
Job Object

The details of the job. If the job fails to be submitted, no job ID is generated.

CreationTime String 2014-01-10T12:00:00Z

The time when the job was created.

Percent Long 100

The transcoding progress.

FinishTime String 2014-01-10T12:20:00Z

The time when the job was complete.

State String Submitted

The state of the job. Valid values:

  • Submitted: The job is submitted.
  • TranscodeFail: The job failed.
JobId String 31fa3c9ca8134f9cec2b4b0b0f78****

The ID of the job.

Code String InternalError

The error code returned if the job failed. This parameter is not returned if the job is successful.

Message String The operation has failed due to some unknown error, exception or failure.

The error message returned if the job failed. This parameter is not returned if the job is successful.

Output Object

The output of the job.

Video Object

The video configurations.

Note If this parameter is specified in the request, the setting of the AliyunVideoCodec parameter in the template specified by the TemplateId parameter is overwritten by the setting of this parameter.
Bufsize String 1000

The size of the buffer.

  • Unit: KB.
  • Default value: 6000.
Degrain String 5

The level of the independent denoising algorithm.

BitrateBnd Object

The average bitrate range of the video.

Max String 20

The upper limit of the total bitrate. Unit: Kbit/s.

Min String 10

The lower limit of the total bitrate. Unit: Kbit/s.

PixFmt String yuvj420p

The pixel format for video color encoding.

  • The default pixel format can be yuv420p or the original pixel format.
  • Valid values: standard pixel formats such as yuv420p and yuvj420p.
    Note If a non-standard pixel format such as yuvj420p(pc, bt470bg/bt470bg/smpte170m) is used, compatibility with the pixel format must be configured. Otherwise, the transcoding fails. )
Pad String 1280:800:0:140

The black bars to be added to the video.

  • Format: width:height:left:top.
  • Unit: pixel.
Codec String H.264

The video codec.

  • Valid values: H.264, H.265, GIF, and WEBP.
  • Default value: H.264.
Height String 1280

The height of the video.

  • Unit: pixel.
  • Default value: the original video height.
Qscale String 15

The level of quality control on the video.

Crop String 1280:800:0:140

The method of video cropping. Valid values:

  • border: Black bars are automatically detected and removed.
  • A value in the format of width:height:left:top: The video is cropped based on the custom settings.
Bitrate String 10

The bitrate of the output video. Unit: Kbit/s.

Maxrate String 10

The maximum bitrate of the video. Unit: Kbit/s.

MaxFps String 15

The maximum frame rate.

Profile String baseline

The encoding profile. This parameter is returned only for the H.264 codec. Default value: high. Valid values:

Note If multiple definitions are involved, we recommend that you use baseline for the lowest definition to ensure normal playback on low-end devices, and use main or high for other definitions.
  • baseline: applicable to mobile devices.
  • main: applicable to standard-definition devices.
  • high: applicable to high-definition devices.
Crf String 22

The constant rate factor.

  • If the Crf parameter is returned, the setting of the Bitrate parameter becomes invalid.
  • Default value when the value of the Codec parameter is H.264: 23. Default value when the value of the Codec parameter is H.265: 26.
Gop String 1

The Group of Pictures (GOP) size. The GOP size can be the maximum interval of keyframes or the maximum number of frames in a frame group. Unit: seconds.

  • Default value: 10s.
  • If the value indicates the maximum number of frames, the value does not contain a unit.
Width String 1080

The width of the video.

  • Unit: pixel.
  • Default value: the original video width.
Fps String 60

The frame rate of the video.

  • Unit: frames per second.
  • Valid values: 0 to 60. The value is 60 if the frame rate of the input file exceeds 60.
  • Default value: the frame rate of the input file.
Preset String veryfast

The preset video algorithm. Default value: medium. Valid values:

  • veryfast
  • fast
  • medium
  • slow
  • slower
ScanMode String interlaced

The scan mode. Valid values:

  • interlaced: An interlaced scan is performed.
  • progressive: A progressive scan is performed.
  • auto: A scan is performed based on the video source.
ResoPriority String 1

The priority of the resource.

TransConfig Object

The general transcoding configurations.

Note If this parameter is specified in the request, the value of this parameter overwrites the value of the corresponding parameter in the specified transcoding template.
IsCheckAudioBitrate String false

Indicates whether the audio bitrate is checked. If the bitrate of the output audio is higher than that of the input audio, the system considers that the output bitrate equals the input bitrate and the specified audio bitrate does not take effect. The IsCheckAudioBitrateFail parameter takes precedence over this parameter. Valid values:

  • true: The audio bitrate is checked.
  • false: The audio bitrate is not checked.
  • Default values:
    • Default value when the Bitrate parameter is empty and the codec of the output file is different from the codec of the input file: false.
    • Default value when the Bitrate parameter is empty and the codec of the output file is the same as the codec of the input file: true.
TransMode String onepass

The transcoding mode. Valid values:

  • onepass: transcoding based on one-pass algorithms, which has higher accuracy.
  • twopass: transcoding based on two-pass algorithms, which has lower accuracy.
  • CBR: transcoding based on a fixed bitrate.
IsCheckReso String false

Indicates whether the resolution is checked. If the output resolution is higher than the input resolution based on the width or height, the system considers that the output resolution equals the input resolution. Valid values:

  • true: The resolution is checked.
  • false: The resolution is not checked.
  • Default value: false.
IsCheckVideoBitrateFail String true

Indicates whether the video bitrate is checked. If the bitrate of the output video is higher than that of the input video, a transcoding failure is returned without video transcoding. This parameter takes precedence over the IsCheckVideoBitrate parameter. Valid values:

  • true: The video bitrate is checked.
  • false: The video bitrate is not checked.
  • Default value: false.
AdjDarMethod String crop

The method of resolution adjustment. Default value: none. Valid values:

  • rescale: The video image is resized.
  • crop: The video image is cropped.
  • pad: The video image is scaled out to fill the view.
  • none: The resolution is not adjusted.
IsCheckVideoBitrate String false

Indicates whether the video bitrate is checked. If the bitrate of the output video is higher than that of the input video, the system considers that the output bitrate equals the input bitrate. Valid values:

  • true: The video bitrate is checked.
  • false: The video bitrate is not checked.
  • Default value: false.
IsCheckResoFail String false

Indicates whether the resolution is checked. This parameter takes precedence over the IsCheckReso parameter. If the output resolution is higher than the input resolution based on the width or height, a transcoding failure is returned without video transcoding. Valid values:

  • true: The resolution is checked.
  • false: The resolution is not checked.
  • Default value: false.
IsCheckAudioBitrateFail String true

Indicates whether the audio bitrate is checked. This parameter takes precedence over the IsCheckAudioBitrate parameter. If the bitrate of the output audio is higher than that of the input audio, a transcoding failure is returned without video transcoding. Valid values:

  • false: The audio bitrate is checked.
  • true: The audio bitrate is not checked.
Encryption Object

The encryption configuration. Only outputs in the M3U8 format are supported.

Type String hls-aes-128

The encryption type. The value is hls-aes-128.

Key String encryptionkey128

The key that is used to encrypt the video.

KeyType String Base64

The key encryption method. Keys cannot be transmitted to MPS in plaintext. Keys must be encrypted by using Base64 or Key Management Service (KMS). For example, if the key is encryptionkey128, you can encrypt the key by using the following method: Base64("encryptionkey128") or KMS(Base64("encryptionkey128").

Id String 31fa3c9ca8134f9cec2b4b0b0f78****

The encryption ID.

KeyUri String https://1161758785*****.cn-shanghai.fc.aliyuncs.com/2016-08-15/proxy/HLS-decyptServer/decyptServer/

The URL that is used to request the key. The URL is Base64-encoded.

SkipCnt String 3

The number of unencrypted frames at the beginning of the video. Leaving these frames unencrypted enables video playback to quickly start.

WaterMarkList Array of WaterMark

The list of watermarks.

Note If watermarks are truncated or fail to be added to the video, check whether the text watermarks that you add contain special characters. If the text watermarks contain special characters, you must escape the special characters. Alternatively, submit a ticket for technical support.
WaterMark
Type String Image

The type of the watermark. If this parameter is specified in the request, the value of this parameter overwrites the value of the corresponding parameter in the specified watermark template. For more information, see Parameter details. Valid values:

  • Image: an image watermark.
  • Text: a text watermark.
ReferPos String TopRight

The position of the watermark. If this parameter is specified in the request, the value of this parameter overwrites the value of the corresponding parameter in the specified watermark template. Valid values:

  • TopRight: the upper-right corner.
  • TopLeft: the upper-left corner.
  • BottomRight: the lower-right corner.
  • BottomLeft: the lower-left corner.
Dx String 1

The horizontal offset of the watermark relative to the output video. If this parameter is specified in the request, the value of this parameter overwrites the value of the corresponding parameter in the specified watermark template. Default value: 0. The value can be an integer or a decimal number.

  • An integer indicates the pixel value of the horizontal offset.
    • Valid values: [8,4096].
    • Unit: pixel.
  • A decimal number indicates the ratio of the horizontal offset to the width in the output video resolution.
    • Valid values: (0,1).
    • The decimal number can be accurate to four decimal places, such as 0.9999. Excessive digits are automatically deleted.
Width String 1080

The width of the watermark. If this parameter is specified in the request, the value of this parameter overwrites the value of the corresponding parameter in the specified watermark template. The value can be an integer or a decimal number.

  • An integer indicates the pixel value of the watermark width.
    • Valid values: [8,4096].
    • Unit: pixel.
  • A decimal number indicates the ratio of the watermark width to the width in the output video resolution.
    • Valid values: (0,1).
    • The decimal number can be accurate to four decimal places, such as 0.9999. Excessive digits are automatically deleted.
Height String 1280

The height of the watermark. If this parameter is specified in the request, the value of this parameter overwrites the value of the corresponding parameter in the specified watermark template. The value can be an integer or a decimal number.

  • An integer indicates the pixel value of the watermark height.
    • Valid values: [8,4096].
    • Unit: pixel.
  • A decimal number indicates the ratio of the watermark height to the height in the output video resolution.
    • Valid values: (0,1).
    • The decimal number can be accurate to four decimal places, such as 0.9999. Excessive digits are automatically deleted.
InputFile Object

The watermark input file. You can use an image in the PNG format or a file in the MOV format as the watermark input.

Object String example-logo-****.png

The name of the OSS object that is used as the input file.

Location String oss-cn-hangzhou

The ID of the OSS region in which the input file resides.

Bucket String example-bucket

The name of the OSS bucket in which the input file is stored.

WaterMarkTemplateId String 88c6ca184c0e47098a5b665e2a12****

The ID of the watermark template.

Dy String 1

The vertical offset of the watermark image relative to the output video. If this parameter is specified in the request, the value of this parameter overwrites the value of the corresponding parameter in the specified watermark template. The value can be an integer or a decimal number.

  • An integer indicates the pixel value of the vertical offset.
    • Valid values: [8,4096].
    • Unit: pixel.
  • A decimal number indicates the ratio of the vertical offset to the height in the output video resolution.
    • Valid values: (0,1).
    • The decimal number can be accurate to four decimal places, such as 0.9999. Excessive digits are automatically deleted.
WaterMarkConfigUrl String http://example.com/configure

The URL of the watermark configuration file.

DeWatermark String {"0": [{"l": 10,"t": 10,"w": 10,"h": 10},{"l": 100,"t": 0.1,"w": 10,"h": 10}],"128000": [],"250000": [{"l": 0.2,"t": 0.1,"w": 0.01,"h": 0.05}]}

The configurations of watermark blurring. The value is a JSON object. For more information, see the DeWatermark section of the Parameter details topic.

M3U8NonStandardSupport Object

The non-standard support configuration for M3U8. The value is a JSON object. For more information, see the M3U8NonStandardSupport section of the Parameter details topic.

TS Object

The non-standard support configuration for TS files. The value is a JSON object. For more information, see the TS section of the Parameter details topic.

SizeSupport Boolean true

Indicates whether the size of the TS file is generated in the output M3U8 video. Valid values:

  • true: supported.
  • false: not supported.
Md5Support Boolean true

Indicates whether the MD5 value of the TS file is generated in the output M3U8 video. Valid values:

  • true: supported.
  • false: not supported.
Priority String 5

The priority of the job in the MPS queue to which the job is added.

  • A value of 10 indicates the highest priority.
  • Default value: 6.
Audio Object

The audio configurations.

Note If this parameter is specified in the request, the value of this parameter overwrites the value of the corresponding parameter in the specified transcoding template.
Profile String aac_low

The codec profile of the audio.

Note Valid values when the value of the Codec parameter is aac: aac_low, aac_he, aac_he_v2, aac_ld, and aac_eld.
Codec String aac

The audio codec.

  • Valid values: aac, mp3, vorbis, and flac.
  • Default value: aac.
Samplerate String 32000

The sampling rate.

  • Valid values: 22050, 32000, 44100, 48000, and 96000.
  • Unit: Hz.
  • Default value: 44100.
Note If the video container format is FLV and the audio codec is MP3, the sampling rate cannot be 32000, 48000, or 96000. If the audio codec is MP3, the sampling rate cannot be 96000.
Qscale String 15

The level of quality control on the audio.

Channels String 6

The number of sound channels.

  • If the value of the Codec parameter is mp3, the value of this parameter can only be 1 or 2.
  • If the value of the Codec parameter is aac, the value of this parameter can only be 1, 2, 4, 5, 6, or 8.
  • Default value: 2.
Volume Object

The volume configurations.

Method String auto

The volume adjustment method. Valid values:

  • auto: The volume is automatically adjusted.
  • dynamic: The volume is dynamically adjusted.
  • linear: The volume is linearly adjusted.
Level String -20

The volume adjustment range.

  • Unit: dB.
  • Default value: -20db.
Bitrate String 128

The audio bitrate of the output file.

  • Unit: Kbit/s.
  • Default value: 128.
AudioStreamMap String 0:a:0

The sequence number of the audio stream.

  • Format: 0:a:{Sequence number}. Example: 0:a:0.
  • The sequence number is the index of the audio stream in the list and starts from 0.
  • If no sequence number is specified, the default audio stream is used.
MergeList Array of Merge

The configurations for merging clips.

Merge
Start String 00000.50

The start point in time of the clip.

  • Format: hh:mm:ss[.SSS] or sssss[.SSS].
  • Examples: 01:59:59.999 and 32000.23.
RoleArn String acs:ram::<your uid>:role/<your role name>

The Alibaba Cloud Resource Name (ARN) of the role used for delegated authorization.

MergeURL String http://example-bucket-****.oss-cn-hangzhou.aliyuncs.com/example-object-****.flv

The OSS URL of the clip.

  • Example: http://example-bucket-****.oss-cn-hangzhou.aliyuncs.com/example-object-****.flv.
  • The OSS URL of the object must be URL-encoded by using the UTF-8 standard.
Duration String 00000.20

The duration of the clip.

  • Format: hh:mm:ss[.SSS] or sssss[.SSS].
  • Examples: 01:59:59.999 and 32000.23.
SuperReso Object

The configurations for using the resolution of the source video.

IsHalfSample String true

Indicates whether parameters related to the sampling rate are obtained. Valid values:

  • true: The parameters are obtained.
  • false: The parameters are not obtained.
UserData String example data

The custom data.

OutSubtitleList Array of OutSubtitle

The list of output subtitles.

OutSubtitle
Map String 0:v:0

The video stream. Format: 0:{Stream}:{Stream sequence number}, which is 0:v:{video_index}. The value of Stream is v, which indicates a video stream. The sequence number is the index of the video stream in the list and starts from 0.

OutSubtitleFile Object

The details of the output file.

RoleArn String acs:ram::<your uid>:role/<your role name>

The ARN of the role used for delegated authorization.

Object String example-output.flv

The name of the OSS object that is used as the output file.

Location String oss-cn-hangzhou

The ID of the OSS region in which the output file resides.

Bucket String example-bucket-****

The name of the OSS bucket in which the output file is stored.

Success Boolean true

Indicates whether the job is created. Valid values:

  • true: The job is created.
  • false: The job failed to be created.
Message String The specified parameter "%s" cannot be null.

The error message returned if the job failed to be created. This parameter is not returned if the job is created.

DigiWaterMark Object

The digital watermarks.

Type String Image

The type of the watermark. If this parameter is specified in the request, the value of this parameter overwrites the value of the corresponding parameter in the specified watermark template. Valid values:

  • Image: an image watermark. This is the default value.
  • Text: a text watermark.
Alpha String 1.0

The transparency of the text or image.

  • Value values: (0,1].
  • Default value: 1.0.
InputFile Object

The details of the input file.

Object String example-intput.flv

The name of the OSS object that is used as the input file.

Location String oss-cn-hangzhou

The ID of the OSS region in which the input file resides.

Bucket String example-bucket-****

The name of the OSS bucket in which the input file is stored.

VideoStreamMap String 0:a:0

The sequence number of the video stream.

  • Format: 0:a:{Sequence number}. Example: 0:a:0.
  • The sequence number is the index of the video stream in the list and starts from 0.
  • If no sequence number is specified, the default video stream is used.
OutputFile Object

The details of the output file.

RoleArn String acs:ram::<your uid>:role/<your role name>

The ARN of the role used for delegated authorization.

Object String example-output.flv

The name of the OSS object that is used as the output file.

Location String oss-cn-hangzhou

The ID of the OSS region in which the output file resides.

Bucket String example-bucket-****

The name of the OSS bucket in which the output file is stored.

AmixList Array of Amix

The list of audio tracks to be mixed.

Amix
Map String 0:a:0

The audio track to be mixed. Format: 0:a:{audio_index}. Example: 0:a:0.

Start String 0

The start point in time of the audio track. The value is in the number or time format. Examples: 1:25:36.240 and 32000.23.

AmixURL String https://outpu***.oss-cn-shanghai.aliyuncs.com/mp4-to-mp3%5E1571025263578816%40.mp3

The URL of the audio track to be mixed as the background music.

  • The URL can be an OSS URL or the value of the Input parameter in the form of a string.
  • The value of the Input parameter in the form of a string indicates that two audio tracks are to be mixed in a video.
Duration String 20

The duration of the audio track. The value is in the number or time format.

MixDurMode String long

The mode to specify the mixing duration. Valid values: first and long.

  • first: The length of the output media equals the length of the input media.
  • long: The length of the output media equals the length of the output media or the length of the input media, whichever is longer.
  • Default value: long.
Rotate String 180

The rotation angle of the video, in the clockwise direction.

Container Object

The container configurations.

Format String flv

The container format.

  • Default value: mp4.
  • Video formats include FLV, MP4, HLS (M3U8 + TS), and MPEG-DASH (MPD + fMP4).
  • Audio formats include MP3, MP4, Ogg, FLAC, and M4A.
  • Image formats include GIF and WebP.
  • If the container format is GIF, the video codec must be GIF.
  • If the container format is WebP, the video codec must be WebP.
  • If the container format is FLV, the video codec cannot be H.265.
Clip Object

The information about the clip.

TimeSpan Object

The time span of the clip.

Seek String 01:59:59.999

The time when the clip starts.

  • Format: hh:mm:ss[.SSS] or sssss[.SSS].
  • Valid values: [00:00:00.000,23:59:59.999] or [0.000,86399.999].
Duration String 01:00:59.999

The duration of the clip.

  • Format: hh:mm:ss[.SSS] or sssss[.SSS].
  • Valid values: [00:00:00.000,23:59:59.999] or [0.000,86399.999].
MergeConfigUrl String `{"MergeList":[{"MergeURL":"http://exampleBucket****.oss-cn-hangzhou.aliyuncs.com/video_01.mp4"}]}

Only one of the MergeList and MergeConfigUrl parameters takes effect.

  • The configuration file specified by the MergeConfigUrl parameter can contain up to 50 clips to be merged.
  • The MergeConfigUrl parameter indicates the URL of the configuration file for merging clips.
  • Make sure that the configuration file is stored as an object in OSS and that MPS can access the OSS object. For information about the file content, see the details about merging parameters.
  • Example of the content of mergeConfigfile: {"MergeList":[{"MergeURL":"http://exampleBucket****.oss-cn-hangzhou.aliyuncs.com/video_01.mp4"}]}.
OpeningList Array of Opening

The list of opening parts. The value is a JSON object.

Opening
openUrl String http://example-bucket-****.oss-cn-hangzhou.aliyuncs.com/opening_01.flv

The OSS URL of the opening part of the video.

Start String 1

The amount of time after which the opening part is played. The value starts from 0.

  • Unit: seconds.
  • Default value: 0.
Width String 1920

The width of the opening part.

  • Valid values: 0 to 4096, -1, and full.
  • Default value: -1.
  • A value of -1 indicates that the width of the source of the opening part is retained.
  • A value of full indicates that the width of the main part is used for the opening part.
Height String 1080

The height of the opening part.

  • Valid values: 0 to 4096, -1, and full.
  • Default value: -1.
  • A value of -1 indicates that the height of the source of the opening part is retained.
  • A value of full indicates that the height of the main part is used for the opening part.
MuxConfig Object

The transmuxing configurations. If this parameter is specified in the request, the value of this parameter overwrites the value of the corresponding parameter in the specified transcoding template.

Webp Object

The transmuxing configuration for WebP.

Loop String 0

The loop count.

Gif Object

The transmuxing configuration for GIF.

FinalDelay String 0

The duration for which the final frame is paused. Unit: centiseconds.

DitherMode String bayer

The color dithering algorithm of the palette. Valid values: sierra and bayer.

Loop String 0

The loop count.

IsCustomPalette String false

Indicates whether the custom palette is used. Valid values:

  • true: The custom palette is used.
  • false: The custom palette is not used.
Segment Object

The segment configurations. The value is a JSON object.

Duration String 20

The length of the segment. The value is an integer. Unit: seconds.

  • Valid values: [1,10].
  • Default value: 10.
TailSlateList Array of TailSlate

The list of ending parts. The value is a JSON object.

TailSlate
Start String 1

The start time.

BgColor String White

The color of the bars that are added to the ending part if the size of the ending part is smaller than that of the main part. Default value: White. For more information, see Background colors.

IsMergeAudio Boolean false

Indicates whether the audio content of the ending part is merged. Valid values:

  • true: The audio content of the ending part is merged.
  • false: The audio content of the ending part is not merged.
Width String 1920

The width of the ending part.

  • Valid values: 0 to 4096, -1, and full.
  • A value of -1 indicates that the width of the source of the ending part is retained. A value of full indicates that the width of the main part is used for the ending part.
  • Default value: -1.
Height String 1080

The height of the ending part.

  • Valid values: 0 to 4096, -1, and full.
  • A value of -1 indicates that the height of the source of the ending part is retained. A value of full indicates that the height of the main part is used for the ending part.
  • Default value: -1.
BlendDuration String 2

The amount of time between the end of the main part and the beginning of the ending part. During the transition, the last frame of the main part fades out, and the first frame of the ending part fades in. Unit: seconds. Default value: 0.

TailUrl String http://example-bucket-****.oss-cn-hangzhou.aliyuncs.com/opening_01.flv

The OSS URL of the ending part.

TemplateId String S00000000-000010

The ID of the transcoding template.

SubtitleConfig Object

The subtitle configurations.

ExtSubtitleList Array of ExtSubtitle

The list of external subtitles. The value is a JSON array that contains up to four objects.

ExtSubtitle
CharEnc String UTF-8

The character set used by the external subtitle.

  • Valid values: UTF-8, GBK, BIG5, and auto.
  • Default value: auto.
Note If the value of this parameter is auto, the detected character set may not be the actual character set. We recommend that you use a specific character set.
FontName String "WenQuanYi Zen Hei", "Yuanti SC Regular", "SimSun"

The font of the hard subtitles converted from external subtitles. Default value: SimSun. For more information, see Fonts.

Input Object

The OSS object that is used as the external subtitle. The value is a JSON object. Files in the SRT or ASS format are supported.

Object String example-output.flv

The name of the OSS object that is used as the input file.

Location String oss-cn-hangzhou

The ID of the OSS region in which the input file resides.

Bucket String example-bucket-****

The name of the OSS bucket in which the input file is stored.

SubtitleList Array of Subtitle

The list of subtitles.

Subtitle
Map String 0:a:0

The audio track. Format: 0:{Stream}:{Stream sequence number}, which is 0:a:{audio_index}. The value of Stream is a, which indicates an audio stream. The sequence number is the index of the audio stream in the list and starts from 0.

Properties Object

The media properties.

Width String 1280

The width of the video.

Height String 720

The length of the video.

Duration String 55

The duration of the video.

Fps String 25

The frame rate of the video. The value is a number.

Bitrate String 1000

The bitrate of the video.

FileFormat String QuickTime / MOV

The format of the video.

Streams Object

The stream information.

VideoStreamList Array of VideoStream

The list of video streams.

VideoStream
Index String 0

The sequence number of the video stream. The value indicates the position of the video stream in all video streams.

Timebase String 1/24000

The time base of the video stream.

AvgFPS String 23.976025

The average frame rate of the video stream.

PixFmt String yuv420p

The pixel format of the video stream.

Sar String 1:1

The sample aspect ratio (SAR) of the video stream.

Lang String eng

The language of the video stream. For more information, see FFmpeg documentation and ISO 639.

CodecLongName String H.264 / AVC / MPEG-4 AVC / MPEG-4 part 10

The full name of the encoding format.

Height String 720

The height of the video stream in pixels.

NumFrames String 25

The total number of frames.

Bitrate String 1496.46

The bitrate of the video stream.

CodecTagString String avc1

The tag string of the encoding format.

HasBFrames String 2

Indicates whether the video stream contains bidirectional frames (B-frames).

Profile String high

The codec profile.

StartTime String 0.000000

The start point in time of the video stream.

NetworkCost Object

The network bandwidth that was consumed.

PreloadTime String 8

The amount of preload time.

AvgBitrate String 100

The average bitrate of the video stream.

CostBandwidth String 10

The maximum bandwidth that was consumed.

Dar String 16:9

The display aspect ratio (DAR) of the video stream.

CodecName String h264

The short name of the encoding format.

Width String 1280

The width of the video stream in pixels.

Duration String 17.225542

The duration of the video stream.

Fps String 23.976025

The frame rate of the video stream.

CodecTag String 0x31637661

The tag of the encoding format.

CodecTimeBase String 1001/48000

The codec time base.

Level String 51

The codec level.

AudioStreamList Array of AudioStream

The list of audio streams.

AudioStream
Timebase String 1/44100

The time base of the audio stream.

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 of the audio stream.

ChannelLayout String stereo

The output layout of the sound channels.

Lang String eng

The language of the audio stream. For more information, see FFmpeg documentation and ISO 639.

Samplerate String 44100

The sampling rate of the audio stream.

CodecLongName String AAC (Advanced Audio Coding)

The full name of the encoding format.

Channels String 2

The number of sound channels.

NumFrames String 25

The total number of frames.

Bitrate String 128.806

The bitrate of the audio stream.

CodecTagString String mp4a

The tag string of the encoding format.

StartTime String 0.000000

The start point in time of the audio stream.

CodecName String aac

The short name of the encoding format.

Duration String 17.159546

The duration of the audio stream.

CodecTag String 0x6134706d

The tag of the encoding format.

CodecTimeBase String 1/44100

The codec time base.

SubtitleStreamList Array of SubtitleStream

The list of subtitle streams.

SubtitleStream
Index String 1

The sequence number of the subtitle stream. The value indicates the position of the subtitle stream in all subtitle streams.

Lang String eng

The language of the subtitle stream. For more information, see FFmpeg documentation and ISO 639.

Format Object

The format information.

StartTime String 0.000000

The start time.

NumPrograms String 0

The total number of program streams.

Size String 3509895

The size of the file.

NumStreams String 2

The total number of media streams.

FormatLongName String QuickTime / MOV

The full name of the container format.

Duration String 55

The total duration.

Bitrate String 1000

The total bitrate.

FormatName String mov

The short name of the container format. Valid values: mov, mp4, m4a, 3gp, 3g2, and mj2.

FileSize String 3509895

The size of the file.

PipelineId String 88c6ca184c0e47098a5b665e2a126797

The ID of the MPS queue.

Input Object

The information about the job input.

Object String example.flv

The name of the OSS object that is used as the job input.

Location String oss-cn-hangzhou

The ID of the OSS region in which the job input resides.

Bucket String example-bucket-****

The name of the OSS bucket in which the job input is stored.

MNSMessageResult Object

The message sent by MNS to notify you of the job result.

MessageId String 123

The ID of the error message returned if the job failed. This parameter is not returned if the job is successful.

ErrorMessage String The resource operated "%s" cannot be found.

The error message returned if the job failed. This parameter is not returned if the job is successful.

ErrorCode String InvalidParameter.ResourceNotFound

The error code returned if the job failed. This parameter is not returned if the job is successful.

Success Boolean true

Indicates whether the job is created. Valid values:

  • true: The job is created.
  • false: The job failed to be created.
Code String InvalidParameter.NullValue

The error code returned if the job failed to be created. This parameter is not returned if the job is created.

Message String The specified parameter "%s" cannot be null.

The error message returned if the job failed to be created. This parameter is not returned if the job is created.

RequestId String 25818875-5F78-4A45S71F6-D73936451234

The ID of the request.

Examples

Sample requests

http(s)://mts.cn-hangzhou.aliyuncs.com/?Action=SubmitJobs
&Input={"Bucket":"exampleBucket","Location":"oss-cn-hangzhou","Object":"example.flv","Referer": "The parameter that you set in the OSS console to enable the hotlink protection feature"}
&Outputs=[{"OutputObject":"exampleOutput.mp4","TemplateId":"6181666213ab41b9bc21da8ff5ff****","WaterMarks":[{"InputFile":{"Bucket":"exampleBucket","Location":"oss-cn-hangzhou","Object":"image_01.png"},"WaterMarkTemplateId":"9b772ce2740d4d55876d8b542d47****"}],"UserData":"testid-001"}]
&OutputBucket=exampleBucket
&OutputLocation=oss-cn-hangzhou
&PipelineId=dd3dae411e704030b921e52698e5****
&<Common request parameters>

Sample success responses

XML format

HTTP/1.1 200 OK
Content-Type:application/xml

<SubmitJobsResponse>
    <JobResultList>
        <Job>
            <CreationTime>2014-01-10T12:00:00Z</CreationTime>
            <Percent>100</Percent>
            <FinishTime>2014-01-10T12:20:00Z</FinishTime>
            <State>Submitted</State>
            <JobId>31fa3c9ca8134f9cec2b4b0b0f78****</JobId>
            <Code>InternalError</Code>
            <Message>The operation has failed due to some unknown error, exception or failure.</Message>
            <Output>
                <Video>
                    <Bufsize>1000</Bufsize>
                    <Degrain>5</Degrain>
                    <BitrateBnd>
                        <Max>20</Max>
                        <Min>10</Min>
                    </BitrateBnd>
                    <PixFmt>yuvj420p</PixFmt>
                    <Pad>1280:800:0:140</Pad>
                    <Codec>H.264</Codec>
                    <Height>1280</Height>
                    <Qscale>15</Qscale>
                    <Crop>1280:800:0:140</Crop>
                    <Bitrate>10</Bitrate>
                    <Maxrate>10</Maxrate>
                    <MaxFps>15</MaxFps>
                    <Profile>baseline</Profile>
                    <Crf>22</Crf>
                    <Gop>1</Gop>
                    <Width>1080</Width>
                    <Fps>60</Fps>
                    <Preset>veryfast</Preset>
                    <ScanMode>interlaced</ScanMode>
                    <ResoPriority>1</ResoPriority>
                </Video>
                <TransConfig>
                    <IsCheckAudioBitrate>false</IsCheckAudioBitrate>
                    <TransMode>onepass</TransMode>
                    <IsCheckReso>false</IsCheckReso>
                    <IsCheckVideoBitrateFail>true</IsCheckVideoBitrateFail>
                    <AdjDarMethod>crop</AdjDarMethod>
                    <IsCheckVideoBitrate>false</IsCheckVideoBitrate>
                    <IsCheckResoFail>false</IsCheckResoFail>
                    <IsCheckAudioBitrateFail>true</IsCheckAudioBitrateFail>
                </TransConfig>
                <Encryption>
                    <Type>hls-aes-128</Type>
                    <Key>encryptionkey128</Key>
                    <KeyType>Base64</KeyType>
                    <Id>31fa3c9ca8134f9cec2b4b0b0f78****</Id>
                    <KeyUri>https://1161758785*****.cn-shanghai.fc.aliyuncs.com/2016-08-15/proxy/HLS-decyptServer/decyptServer/</KeyUri>
                    <SkipCnt>3</SkipCnt>
                </Encryption>
                <WaterMarkList>
                    <Type>Image</Type>
                    <ReferPos>TopRight</ReferPos>
                    <Dx>1</Dx>
                    <Width>1080</Width>
                    <Height>1280</Height>
                    <InputFile>
                        <Object>example-logo-****.png</Object>
                        <Location>oss-cn-hangzhou</Location>
                        <Bucket>example-bucket</Bucket>
                    </InputFile>
                    <WaterMarkTemplateId>88c6ca184c0e47098a5b665e2a12****</WaterMarkTemplateId>
                    <Dy>1</Dy>
                </WaterMarkList>
                <WaterMarkConfigUrl>http://example.com/configure</WaterMarkConfigUrl>
                <DeWatermark>{"0": [{"l": 10,"t": 10,"w": 10,"h": 10},{"l": 100,"t": 0.1,"w": 10,"h": 10}],"128000": [],"250000": [{"l": 0.2,"t": 0.1,"w": 0.01,"h": 0.05}]}</DeWatermark>
                <M3U8NonStandardSupport>
                    <TS>
                        <SizeSupport>true</SizeSupport>
                        <Md5Support>true</Md5Support>
                    </TS>
                </M3U8NonStandardSupport>
                <Priority>5</Priority>
                <Audio>
                    <Profile>aac_low</Profile>
                    <Codec>aac</Codec>
                    <Samplerate>32000</Samplerate>
                    <Qscale>15</Qscale>
                    <Channels>6</Channels>
                    <Volume>
                        <Method>auto</Method>
                        <Level>-20</Level>
                    </Volume>
                    <Bitrate>128</Bitrate>
                </Audio>
                <AudioStreamMap>0:a:0</AudioStreamMap>
                <MergeList>
                    <Start>00000.50</Start>
                    <RoleArn>acs:ram::&lt;your uid&gt;:role/&lt;your role name&gt;</RoleArn>
                    <MergeURL>http://example-bucket-****.oss-cn-hangzhou.aliyuncs.com/example-object-****.flv</MergeURL>
                    <Duration>00000.20</Duration>
                </MergeList>
                <SuperReso>
                    <IsHalfSample>true</IsHalfSample>
                </SuperReso>
                <UserData>example data</UserData>
                <OutSubtitleList>
                    <Map>0:v:0</Map>
                    <OutSubtitleFile>
                        <RoleArn>acs:ram::&lt;your uid&gt;:role/&lt;your role name&gt;</RoleArn>
                        <Object>example-output.flv</Object>
                        <Location>oss-cn-hangzhou</Location>
                        <Bucket>example-bucket-****</Bucket>
                    </OutSubtitleFile>
                    <Success>true</Success>
                    <Message>The specified parameter "%s" cannot be null.</Message>
                </OutSubtitleList>
                <DigiWaterMark>
                    <Type>Image</Type>
                    <Alpha>1.0</Alpha>
                    <InputFile>
                        <Object>example-intput.flv</Object>
                        <Location>oss-cn-hangzhou</Location>
                        <Bucket>example-bucket-****</Bucket>
                    </InputFile>
                </DigiWaterMark>
                <VideoStreamMap>0:a:0</VideoStreamMap>
                <OutputFile>
                    <RoleArn>acs:ram::&lt;your uid&gt;:role/&lt;your role name&gt;</RoleArn>
                    <Object>example-output.flv</Object>
                    <Location>oss-cn-hangzhou</Location>
                    <Bucket>example-bucket-****</Bucket>
                </OutputFile>
                <AmixList>
                    <Map>0:a:0</Map>
                    <Start>0</Start>
                    <AmixURL>https://outpu***.oss-cn-shanghai.aliyuncs.com/mp4-to-mp3%5E1571025263578816%40.mp3</AmixURL>
                    <Duration>20</Duration>
                    <MixDurMode>long</MixDurMode>
                </AmixList>
                <Rotate>180</Rotate>
                <Container>
                    <Format>flv</Format>
                </Container>
                <Clip>
                    <TimeSpan>
                        <Seek>01:59:59.999</Seek>
                        <Duration>01:00:59.999</Duration>
                    </TimeSpan>
                </Clip>
                <MergeConfigUrl>`{"MergeList":[{"MergeURL":"http://exampleBucket****.oss-cn-hangzhou.aliyuncs.com/video_01.mp4"}]}</MergeConfigUrl>
                <OpeningList>
                    <openUrl>http://example-bucket-****.oss-cn-hangzhou.aliyuncs.com/opening_01.flv</openUrl>
                    <Start>1</Start>
                    <Width>1920</Width>
                    <Height>1080</Height>
                </OpeningList>
                <MuxConfig>
                    <Webp>
                        <Loop>0</Loop>
                    </Webp>
                    <Gif>
                        <FinalDelay>0</FinalDelay>
                        <DitherMode>bayer</DitherMode>
                        <Loop>0</Loop>
                        <IsCustomPalette>false</IsCustomPalette>
                    </Gif>
                    <Segment>
                        <Duration>20</Duration>
                    </Segment>
                </MuxConfig>
                <TailSlateList>
                    <Start>1</Start>
                    <BgColor>White</BgColor>
                    <IsMergeAudio>false</IsMergeAudio>
                    <Width>1920</Width>
                    <Height>1080</Height>
                    <BlendDuration>2</BlendDuration>
                    <TailUrl>http://example-bucket-****.oss-cn-hangzhou.aliyuncs.com/opening_01.flv</TailUrl>
                </TailSlateList>
                <TemplateId>S00000000-000010</TemplateId>
                <SubtitleConfig>
                    <ExtSubtitleList>
                        <CharEnc>UTF-8</CharEnc>
                        <FontName>"WenQuanYi Zen Hei", "Yuanti SC Regular", "SimSun"</FontName>
                        <Input>
                            <Object>example-output.flv</Object>
                            <Location>oss-cn-hangzhou</Location>
                            <Bucket>example-bucket-****</Bucket>
                        </Input>
                    </ExtSubtitleList>
                    <SubtitleList>
                        <Map>0:a:0</Map>
                    </SubtitleList>
                </SubtitleConfig>
                <Properties>
                    <Width>1280</Width>
                    <Height>720</Height>
                    <Duration>55</Duration>
                    <Fps>25</Fps>
                    <Bitrate>1000</Bitrate>
                    <FileFormat>QuickTime / MOV</FileFormat>
                    <Streams>
                        <VideoStreamList>
                            <Index>0</Index>
                            <Timebase>1/24000</Timebase>
                            <AvgFPS>23.976025</AvgFPS>
                            <PixFmt>yuv420p</PixFmt>
                            <Sar>1:1</Sar>
                            <Lang>eng</Lang>
                            <CodecLongName>H.264 / AVC / MPEG-4 AVC / MPEG-4 part 10</CodecLongName>
                            <Height>720</Height>
                            <NumFrames>25</NumFrames>
                            <Bitrate>1496.46</Bitrate>
                            <CodecTagString>avc1</CodecTagString>
                            <HasBFrames>2</HasBFrames>
                            <Profile>high</Profile>
                            <StartTime>0.000000</StartTime>
                            <NetworkCost>
                                <PreloadTime>8</PreloadTime>
                                <AvgBitrate>100</AvgBitrate>
                                <CostBandwidth>10</CostBandwidth>
                            </NetworkCost>
                            <Dar>16:9</Dar>
                            <CodecName>h264</CodecName>
                            <Width>1280</Width>
                            <Duration>17.225542</Duration>
                            <Fps>23.976025</Fps>
                            <CodecTag>0x31637661</CodecTag>
                            <CodecTimeBase>1001/48000</CodecTimeBase>
                            <Level>51</Level>
                        </VideoStreamList>
                        <AudioStreamList>
                            <Timebase>1/44100</Timebase>
                            <Index>1</Index>
                            <SampleFmt>fltp</SampleFmt>
                            <ChannelLayout>stereo</ChannelLayout>
                            <Lang>eng</Lang>
                            <Samplerate>44100</Samplerate>
                            <CodecLongName>AAC (Advanced Audio Coding)</CodecLongName>
                            <Channels>2</Channels>
                            <NumFrames>25</NumFrames>
                            <Bitrate>128.806</Bitrate>
                            <CodecTagString>mp4a</CodecTagString>
                            <StartTime>0.000000</StartTime>
                            <CodecName>aac</CodecName>
                            <Duration>17.159546</Duration>
                            <CodecTag>0x6134706d</CodecTag>
                            <CodecTimeBase>1/44100</CodecTimeBase>
                        </AudioStreamList>
                        <SubtitleStreamList>
                            <Index>1</Index>
                            <Lang>eng</Lang>
                        </SubtitleStreamList>
                    </Streams>
                    <Format>
                        <StartTime>0.000000</StartTime>
                        <NumPrograms>0</NumPrograms>
                        <Size>3509895</Size>
                        <NumStreams>2</NumStreams>
                        <FormatLongName>QuickTime / MOV</FormatLongName>
                        <Duration>55</Duration>
                        <Bitrate>1000</Bitrate>
                        <FormatName>mov</FormatName>
                    </Format>
                    <FileSize>3509895</FileSize>
                </Properties>
            </Output>
            <PipelineId>88c6ca184c0e47098a5b665e2a126797</PipelineId>
            <Input>
                <Object>example.flv</Object>
                <Location>oss-cn-hangzhou</Location>
                <Bucket>example-bucket-****</Bucket>
            </Input>
            <MNSMessageResult>
                <MessageId>123</MessageId>
                <ErrorMessage>The resource operated "%s" cannot be found.</ErrorMessage>
                <ErrorCode>InvalidParameter.ResourceNotFound</ErrorCode>
            </MNSMessageResult>
        </Job>
        <Success>true</Success>
        <Code>InvalidParameter.NullValue</Code>
        <Message>The specified parameter "%s" cannot be null.</Message>
    </JobResultList>
    <RequestId>25818875-5F78-4A45S71F6-D73936451234</RequestId>
</SubmitJobsResponse>

JSON format

HTTP/1.1 200 OK
Content-Type:application/json

{
  "JobResultList" : [ {
    "Job" : {
      "CreationTime" : "2014-01-10T12:00:00Z",
      "Percent" : 100,
      "FinishTime" : "2014-01-10T12:20:00Z",
      "State" : "Submitted",
      "JobId" : "31fa3c9ca8134f9cec2b4b0b0f78****",
      "Code" : "InternalError",
      "Message" : "The operation has failed due to some unknown error, exception or failure.",
      "Output" : {
        "Video" : {
          "Bufsize" : "1000",
          "Degrain" : "5",
          "BitrateBnd" : {
            "Max" : "20",
            "Min" : "10"
          },
          "PixFmt" : "yuvj420p",
          "Pad" : "1280:800:0:140",
          "Codec" : "H.264",
          "Height" : "1280",
          "Qscale" : "15",
          "Crop" : "1280:800:0:140",
          "Bitrate" : "10",
          "Maxrate" : "10",
          "MaxFps" : "15",
          "Profile" : "baseline",
          "Crf" : "22",
          "Gop" : "1",
          "Width" : "1080",
          "Fps" : "60",
          "Preset" : "veryfast",
          "ScanMode" : "interlaced",
          "ResoPriority" : "1"
        },
        "TransConfig" : {
          "IsCheckAudioBitrate" : "false",
          "TransMode" : "onepass",
          "IsCheckReso" : "false",
          "IsCheckVideoBitrateFail" : "true",
          "AdjDarMethod" : "crop",
          "IsCheckVideoBitrate" : "false",
          "IsCheckResoFail" : "false",
          "IsCheckAudioBitrateFail" : "true"
        },
        "Encryption" : {
          "Type" : "hls-aes-128",
          "Key" : "encryptionkey128",
          "KeyType" : "Base64",
          "Id" : "31fa3c9ca8134f9cec2b4b0b0f78****",
          "KeyUri" : "https://1161758785*****.cn-shanghai.fc.aliyuncs.com/2016-08-15/proxy/HLS-decyptServer/decyptServer/",
          "SkipCnt" : "3"
        },
        "WaterMarkList" : [ {
          "Type" : "Image",
          "ReferPos" : "TopRight",
          "Dx" : "1",
          "Width" : "1080",
          "Height" : "1280",
          "InputFile" : {
            "Object" : "example-logo-****.png",
            "Location" : "oss-cn-hangzhou",
            "Bucket" : "example-bucket"
          },
          "WaterMarkTemplateId" : "88c6ca184c0e47098a5b665e2a12****",
          "Dy" : "1"
        } ],
        "WaterMarkConfigUrl" : "http://example.com/configure",
        "DeWatermark" : "{\"0\": [{\"l\": 10,\"t\": 10,\"w\": 10,\"h\": 10},{\"l\": 100,\"t\": 0.1,\"w\": 10,\"h\": 10}],\"128000\": [],\"250000\": [{\"l\": 0.2,\"t\": 0.1,\"w\": 0.01,\"h\": 0.05}]}",
        "M3U8NonStandardSupport" : {
          "TS" : {
            "SizeSupport" : true,
            "Md5Support" : true
          }
        },
        "Priority" : "5",
        "Audio" : {
          "Profile" : "aac_low",
          "Codec" : "aac",
          "Samplerate" : "32000",
          "Qscale" : "15",
          "Channels" : "6",
          "Volume" : {
            "Method" : "auto",
            "Level" : "-20"
          },
          "Bitrate" : "128"
        },
        "AudioStreamMap" : "0:a:0",
        "MergeList" : [ {
          "Start" : "00000.50",
          "RoleArn" : "acs:ram::<your uid>:role/<your role name>",
          "MergeURL" : "http://example-bucket-****.oss-cn-hangzhou.aliyuncs.com/example-object-****.flv",
          "Duration" : "00000.20"
        } ],
        "SuperReso" : {
          "IsHalfSample" : "true"
        },
        "UserData" : "example data",
        "OutSubtitleList" : [ {
          "Map" : "0:v:0",
          "OutSubtitleFile" : {
            "RoleArn" : "acs:ram::<your uid>:role/<your role name>",
            "Object" : "example-output.flv",
            "Location" : "oss-cn-hangzhou",
            "Bucket" : "example-bucket-****"
          },
          "Success" : true,
          "Message" : "The specified parameter "%s" cannot be null."
        } ],
        "DigiWaterMark" : {
          "Type" : "Image",
          "Alpha" : "1.0",
          "InputFile" : {
            "Object" : "example-intput.flv",
            "Location" : "oss-cn-hangzhou",
            "Bucket" : "example-bucket-****"
          }
        },
        "VideoStreamMap" : "0:a:0",
        "OutputFile" : {
          "RoleArn" : "acs:ram::<your uid>:role/<your role name>",
          "Object" : "example-output.flv",
          "Location" : "oss-cn-hangzhou",
          "Bucket" : "example-bucket-****"
        },
        "AmixList" : [ {
          "Map" : "0:a:0",
          "Start" : "0",
          "AmixURL" : "https://outpu***.oss-cn-shanghai.aliyuncs.com/mp4-to-mp3%5E1571025263578816%40.mp3",
          "Duration" : "20",
          "MixDurMode" : "long"
        } ],
        "Rotate" : "180",
        "Container" : {
          "Format" : "flv"
        },
        "Clip" : {
          "TimeSpan" : {
            "Seek" : "01:59:59.999",
            "Duration" : "01:00:59.999"
          }
        },
        "MergeConfigUrl" : "`{\"MergeList\":[{\"MergeURL\":\"http://exampleBucket****.oss-cn-hangzhou.aliyuncs.com/video_01.mp4\"}]}",
        "OpeningList" : [ {
          "openUrl" : "http://example-bucket-****.oss-cn-hangzhou.aliyuncs.com/opening_01.flv",
          "Start" : "1",
          "Width" : "1920",
          "Height" : "1080"
        } ],
        "MuxConfig" : {
          "Webp" : {
            "Loop" : "0"
          },
          "Gif" : {
            "FinalDelay" : "0",
            "DitherMode" : "bayer",
            "Loop" : "0",
            "IsCustomPalette" : "false"
          },
          "Segment" : {
            "Duration" : "20"
          }
        },
        "TailSlateList" : [ {
          "Start" : "1",
          "BgColor" : "White",
          "IsMergeAudio" : false,
          "Width" : "1920",
          "Height" : "1080",
          "BlendDuration" : "2",
          "TailUrl" : "http://example-bucket-****.oss-cn-hangzhou.aliyuncs.com/opening_01.flv"
        } ],
        "TemplateId" : "S00000000-000010",
        "SubtitleConfig" : {
          "ExtSubtitleList" : [ {
            "CharEnc" : "UTF-8",
            "FontName" : "\"WenQuanYi Zen Hei\", \"Yuanti SC Regular\", \"SimSun\"",
            "Input" : {
              "Object" : "example-output.flv",
              "Location" : "oss-cn-hangzhou",
              "Bucket" : "example-bucket-****"
            }
          } ],
          "SubtitleList" : [ {
            "Map" : "0:a:0"
          } ]
        },
        "Properties" : {
          "Width" : "1280",
          "Height" : "720",
          "Duration" : "55",
          "Fps" : "25",
          "Bitrate" : "1000",
          "FileFormat" : "QuickTime / MOV",
          "Streams" : {
            "VideoStreamList" : [ {
              "Index" : "0",
              "Timebase" : "1/24000",
              "AvgFPS" : "23.976025",
              "PixFmt" : "yuv420p",
              "Sar" : "1:1",
              "Lang" : "eng",
              "CodecLongName" : "H.264 / AVC / MPEG-4 AVC / MPEG-4 part 10",
              "Height" : "720",
              "NumFrames" : "25",
              "Bitrate" : "1496.46",
              "CodecTagString" : "avc1",
              "HasBFrames" : "2",
              "Profile" : "high",
              "StartTime" : "0.000000",
              "NetworkCost" : {
                "PreloadTime" : "8",
                "AvgBitrate" : "100",
                "CostBandwidth" : "10"
              },
              "Dar" : "16:9",
              "CodecName" : "h264",
              "Width" : "1280",
              "Duration" : "17.225542",
              "Fps" : "23.976025",
              "CodecTag" : "0x31637661",
              "CodecTimeBase" : "1001/48000",
              "Level" : "51"
            } ],
            "AudioStreamList" : [ {
              "Timebase" : "1/44100",
              "Index" : "1",
              "SampleFmt" : "fltp",
              "ChannelLayout" : "stereo",
              "Lang" : "eng",
              "Samplerate" : "44100",
              "CodecLongName" : "AAC (Advanced Audio Coding)",
              "Channels" : "2",
              "NumFrames" : "25",
              "Bitrate" : "128.806",
              "CodecTagString" : "mp4a",
              "StartTime" : "0.000000",
              "CodecName" : "aac",
              "Duration" : "17.159546",
              "CodecTag" : "0x6134706d",
              "CodecTimeBase" : "1/44100"
            } ],
            "SubtitleStreamList" : [ {
              "Index" : "1",
              "Lang" : "eng"
            } ]
          },
          "Format" : {
            "StartTime" : "0.000000",
            "NumPrograms" : "0",
            "Size" : "3509895",
            "NumStreams" : "2",
            "FormatLongName" : "QuickTime / MOV",
            "Duration" : "55",
            "Bitrate" : "1000",
            "FormatName" : "mov"
          },
          "FileSize" : "3509895"
        }
      },
      "PipelineId" : "88c6ca184c0e47098a5b665e2a126797",
      "Input" : {
        "Object" : "example.flv",
        "Location" : "oss-cn-hangzhou",
        "Bucket" : "example-bucket-****"
      },
      "MNSMessageResult" : {
        "MessageId" : "123",
        "ErrorMessage" : "The resource operated \"%s\" cannot be found.",
        "ErrorCode" : "InvalidParameter.ResourceNotFound"
      }
    },
    "Success" : true,
    "Code" : "InvalidParameter.NullValue",
    "Message" : "The specified parameter \"%s\" cannot be null."
  } ],
  "RequestId" : "25818875-5F78-4A45S71F6-D73936451234"
}

Error codes

For a list of error codes, see Service error codes.