This topic describes the basic data types of the ApsaraVideo VOD API.
Basic information about media assets
Video: the information about an audio or a video file
Parameter | Type | Description |
VideoId | String | The ID of the audio or video. |
Title | String | The title of the audio or video. |
Description | String | The description of the audio or video. |
Duration | Float | The duration of the audio or video. Unit: seconds. |
CoverURL | String | The thumbnail URL of the audio or video. |
String | The status of the audio or video. For more information, see Status: the status of an audio or a video file. | |
CreationTime | String | The time when the audio or video was created. The time must be in UTC. |
Size | Long | The size of the source file. Unit: bytes. |
Snapshots | String[] | The video snapshot URLs. |
CateId | Long | The category ID of the audio or video. |
CateName | String | The category name of the audio or video. |
Tags | String | The tags of the audio or video. Multiple tags are separated by commas (,). |
TemplateGroupId | String | The ID of the transcoding template group that was used to transcode the audio or video file. |
StorageLocation | String | The storage location of the audio or video. |
String | The ID of the application. |
Status: the status of an audio or video file
Value | Description | Remarks |
Uploading | The audio or video file is being uploaded. |
|
UploadFail | The image failed to be uploaded. |
|
UploadSucc | The audio or video file is uploaded. |
|
Transcoding | The audio or video file is being transcoded. | Audio and video files in this status are being transcoded. If an audio or video file has not been transcoded, no valid streams are available. In this case, you cannot call API operations to obtain playback URLs. You can obtain transcoding results from the StreamTranscodeComplete or TranscodeComplete event notification. |
TranscodeFail | The audio or video file failed to be transcoded. | Transcoding failures are usually caused by errors in the source file. You can obtain the error message from the StreamTranscodeComplete or TranscodeComplete event notification. For more information about how to troubleshoot transcoding failures, see FAQ about transcoding. |
Checking | The audio or video file is being reviewed. |
Note The Reviewing status described in this table indicates that an automated review or a manual review is being performed on the audio or video file. To view the file status, perform the following steps: Log on to the ApsaraVideo VOD console. In the left-side navigation pane, choose Media Files > Audio/Video. On the Video and Audio page, view the status of the file in the Status column. The Reviewing status in the Automated Review Status column indicates that an automated review is being performed on the audio or video file. To view the automated review status of a file, perform the following steps: Log on to the ApsaraVideo VOD console. In the left-side navigation pane, choose Review Management > Content Moderation. On the Content Moderation page that appears, view the automated review status of the file in the Automated Review Status column. |
Blocked | The audio or video file is blocked. |
|
Normal | The audio or video file can be played. |
|
ProduceFail | The audio or video file failed to be produced. | If an audio or video file is in this status, the file failed to be produced. When you use the online editing feature of ApsaraVideo VOD to produce videos, the media assets that you use must be in the Normal status. Otherwise, videos may fail to be produced. |
ImageInfo: the information about an image
Parameter | Type | Description |
ImageId | String | The ID of the image. |
URL | String | The URL of the image. If a domain name for CDN is specified, a CDN URL is returned. Otherwise, an Object Storage Service (OSS) URL is returned. |
Title | String | The title of the image. |
Tags | String | The tags of the image. |
ImageType | String | The type of the image. |
CateId | Long | The ID of the category to which the image belongs. |
CateName | String | The name of the category. |
Description | String | The description of the image. |
StorageLocation | String | The storage location of the image. |
Mezzanine | The source information about the image. | |
CreationTime | String | The time when the image was created. The time must be in UTC. |
String | The status of the image. For more information, see Status: the status of an image. | |
String | The ID of the application. |
Status: the status of an image
Value | Description | Remarks |
Uploading | The image is being uploaded. | This is the initial status of an image. It indicates that the image is being uploaded. If your images are in this status for a long period of time, view the possible causes and solutions described in FAQ about media asset upload. |
UploadFail | The image failed to be uploaded. | Upload failures may be caused by errors such as network interruptions and source file damages. We recommend that you re-upload the image or upload another source file. |
Normal | The image is uploaded. | If an image is in this status, the image is uploaded. |
AttachedMediaInfo: the information about an auxiliary media asset
Parameter | Type | Description |
MediaId | String | The ID of the auxiliary media asset. |
URL | String | The URL of the auxiliary media asset. If a domain name for CDN is specified, a CDN URL is returned. Otherwise, an OSS URL is returned. |
Title | String | The title of the auxiliary media asset. |
Tags | String | The tags of the auxiliary media asset. |
Type | String | The type of the auxiliary media asset. |
Categories | Category[] | The categories. |
Description | String | The description of the auxiliary media asset. |
StorageLocation | String | The storage location of the auxiliary media asset. |
CreationTime | String | The time when the auxiliary media asset was created. The time must be in UTC. |
ModificationTime | String | The time when the auxiliary media asset was last modified. The time must be in UTC. |
String | The status of the auxiliary media asset. For more information, see Status: the status of an auxiliary media asset. | |
String | The ID of the application. |
Status: the status of an auxiliary media asset
Value | Description | Remarks |
Uploading | The auxiliary media asset is being uploaded. | This is the initial status of an auxiliary media asset. It indicates that the auxiliary media asset is being uploaded. |
Normal | The auxiliary media asset is uploaded. | None. |
UploadFail | The auxiliary media asset failed to be uploaded. | None. |
Source file information
Mezzanine: the information about a source file
Parameter | Type | Description |
VideoId | String | The ID of the source file. |
FileName | String | The name of the source file. |
Duration | String | The duration of the source file. Unit: seconds. |
Status | String | The status of the source file. For more information, see Status: the status of a source file. |
CreationTime | String | The time when the source file was created. The time must be in UTC. |
Height | Long | The height of the source file. Unit: pixels. |
Width | Long | The width of the source file. Unit: pixels. |
Fps | String | The frame rate of the source file. Unit: FPS. |
FileURL | String | The URL of the source file. |
Bitrate | String | The bitrate of the source file. Unit: Kbit/s. |
Size | Long | The size of the source file. Unit: bytes. |
OutputType | String | The type of the playback URL for the output file. Valid values:
|
VideoStreamList | The information about each video stream. | |
AudioStreamList | The information about each audio stream. |
VideoStream: the information about a video stream
Parameter | Type | Description |
Index | String | The sequence number of the video stream. The value indicates the position of the video stream in all video streams. |
CodecName | String | The short name of the encoding format. |
CodecLongName | String | The full name of the encoding format. |
Profile | String | The codec profile. |
CodecTimeBase | String | The codec time base. |
CodecTagString | String | The tag string of the encoding format. |
CodecTag | String | The tag of the encoding format. |
Width | Long | The width of the video in pixels. |
Height | Long | The height of the video in pixels. |
HasBFrames | String | Indicates whether the video stream contains bidirectional frames (B-frames). |
Sar | String | The sample aspect ratio (SAR). |
Dar | String | The display aspect ratio (DAR). |
PixFmt | String | The pixel format. |
Level | String | The codec level. |
Fps | String | The frame rate of the output file. |
AvgFPS | String | The average frame rate. |
Timebase | String | The time base. |
StartTime | String | The time when the video starts playing. |
Duration | String | The duration of the video. |
NumFrames | String | The total number of frames. |
Lang | String | The language. |
Rotate | String | The rotation angle of the video. Valid values: [0,360). |
AudioStream: the information about an audio stream
Parameter | Type | Description |
Index | String | The sequence number of the audio stream. The value indicates the position of the audio stream in all audio streams. |
CodecName | String | The short name of the encoding format. |
CodecLongName | String | The full name of the encoding format. |
CodecTimeBase | String | The codec time base. |
CodecTagString | String | The tag string of the encoding format. |
CodecTag | String | The tag of the encoding format. |
SampleFmt | String | The sampling format. |
SampleRate | String | The sampling rate. |
Channels | String | The number of audio channels. |
ChannelLayout | String | The output layout of the audio channels. |
Timebase | String | The time base. |
StartTime | String | The time when the audio starts playing. |
Duration | String | The duration of the audio. |
Bitrate | String | The bitrate. |
NumFrames | String | The total number of frames. |
Lang | String | The language. |
Status: the status of a source file
Value | Description | Remarks |
Uploading | The file is being uploaded. | This is the initial status of a source file. It indicates that the file is being uploaded. |
Normal | The file is uploaded. | None. |
UploadFail | The file failed to be uploaded. | None. |
Deleted | The file is deleted. | None. |
Mezzanine: the information about a source image file
Parameter | Type | Description |
FileURL | String | The OSS URL of the source image file. |
OriginalFileName | String | The name of the source image file. |
FileSize | Long | The size of the source image file. Unit: bytes. |
Width | Integer | The width of the source image file. Unit: pixels. |
Height | Integer | The height of the source image file. Unit: pixels. |
Upload multiple media files in a batch based on URLs
URLUploadInfo: the information about a URL-based upload job
Parameter | Type | Description |
JobId | String | The ID of the upload job. |
UploadURL | String | The URL of the file to be uploaded. |
MediaId | String | The ID of the file to be uploaded. |
FileSize | String | The size of the file to be uploaded. Unit: bytes. |
String | The status of the URL-based upload job. For more information about this parameter, see Status: the status of a URL-based upload job. | |
CreationTime | String | The time when the job was created. |
CompleteTime | Long | The time when the job was complete. |
UserData | String | The custom configurations. |
ErrorCode | String | The error code returned when the job fails. |
ErrorMessage | String | The error message returned when the job fails. |
Status: the status of a URL-based upload job
Value | Description |
PENDING | The upload job is submitted and is waiting to be processed. |
PROCESSING | The upload job is being processed. |
DOWNLOADING | The file is being downloaded. |
DOWNLOAD_SUCCESS | The file is downloaded. |
DOWNLOAD_FAIL | The file failed to be downloaded. |
UPLOADING | The file is being uploaded. |
UPLOAD_SUCCESS | The file is uploaded. |
UPLOAD_FAIL | The file failed to be uploaded. |
SUCCESS | The upload job is successful, and the callback is complete. |
Audio and video playback
VideoBase: the basic information about an audio or a video file
Parameter | Type | Description |
VideoId | String | The ID of the audio or video file. |
Title | String | The title of the audio or video file. |
Duration | String | The duration of the audio or video file. Unit: seconds. |
CoverURL | String | The thumbnail URL of the audio or video file. |
String | The status of the audio or video file. | |
CreationTime | String | The time when the audio or video file was created. The time must be in UTC. |
MediaType | MediaType | The type of the file. Valid values:
|
By default, the playback operation returns a CDN URL. If no accelerated domain name is specified, the playback operation returns an OSS URL. In this case, only the URL of an MP4 file can be used for playback.
PlayInfo: the playback information about a media stream
Parameter | Type | Description |
Bitrate | String | The bitrate of the media stream. Unit: Kbit/s. |
Definition | String | The quality of the media stream. Valid values:
|
Specification | String | The output specifications of a transcoded media stream. For more information, see Parameters for media assets. |
Duration | String | The duration of the media stream. Unit: seconds. |
Encrypt | Long | Indicates whether the media stream is encrypted. Valid values:
|
EncryptType | String | The type of encryption that was performed on the media stream. Valid values:
|
PlayURL | String | The playback URL of the media stream. |
Format | String | The format of the media stream. If the file is a video stream, the following values are supported:
If the file is an audio-only stream, the valid value is mp3. |
Fps | String | The frame rate of the media stream. Unit: FPS. |
Size | Long | The size of the media stream. Unit: bytes. |
Width | Long | The width of the media stream. Unit: pixels. |
Height | Long | The height of the media stream. Unit: pixels. |
StreamType | String | The type of the media stream.
|
JobId | String | The ID of the job that was used to transcode the media stream. This ID uniquely identifies a media stream. |
WatermarkId | String | The ID of the watermark that is associated with the media stream. |
Status | String | The status of the media stream. Valid values:
|
NarrowBandType | String | The type of Narrowband HD transcoding. Valid values:
This parameter takes effect only when you specify a definition that is available in the built-in Narrowband HD 1.0 transcoding template. For more information, see TranscodeTemplate: the configurations of a transcoding template. |
CreationTime | String | The time when the media stream was created. The time must be in UTC. |
ModificationTime | String | The time when the media stream was updated. The time must be in UTC. |
VideoMeta: the metadata of an audio or a video file
Parameter | Type | Description |
VideoId | String | The ID of the audio or video file. |
Title | String | The title of the audio or video file. |
Duration | Float | The duration of the video. Unit: seconds. |
CoverURL | String | The thumbnail URL of the audio or video file. |
String | The status of the audio or video file. |
Query media assets
Media: the information about a media asset
Parameter | Type | Description |
MediaId | String | The ID of the media asset. |
CreationTime | String | The time when the media asset was created. The time must be in UTC. |
MediaType | String | The type of the media asset. Valid values:
|
Video | The information about the video. | |
Audio | The information about the audio. | |
Image | The information about the image. | |
AttachedMedia | The information about the auxiliary media asset. |
Media asset categories
Category: the category information about a media asset
Parameter | Type | Description |
CateId | Long | The ID of the category. |
CateName | String | The name of the category. The value can be up to 64 bytes in length and must be encoded in the UTF-8 format. |
ParentId | Long | The ID of the parent category. The parent category ID of a level 1 category is -1. |
Level | Long | The level of the category. A value of 0 indicates a level 1 category. |
Live to VOD
LiveRecordVideo: the information about live-to-VOD
Parameter | Type | Description |
StreamName | String | The name of the live-to-VOD file. |
DomainName | String | The endpoint. |
AppName | String | The name of the application. |
PlaylistId | String | The ID of the playlist. |
RecordStartTime | String | The time when the recording starts. |
RecordEndTime | String | The time when the recording ends. |
Video | Video | The information about the live-to-VOD file. |
Online editing
EditingProject: the information about an online editing project
Parameter | Type | Description |
ProjectId | String | The ID of the online editing project. |
Title | String | The title of the online editing project. |
CreationTime | String | The time when the online editing project was created. The time follows the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time is displayed in UTC. For example, a value of 2017-01-11T12:00:00Z indicates 20:00:00 on January 11, 2017. |
ModifiedTime | String | The time when the online editing project was last modified. The time follows the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time is displayed in UTC. For example, a value of 2017-01-11T12:00:00Z indicates 20:00:00 on January 11, 2017. |
Status | String | The status of the online editing project. |
Description | String | The description of the online editing project. |
Timeline | String | The timeline of the online editing project. The value is a JSON string. |
Duration | String | The duration of the online editing project. The duration must be the same as that of the timeline. |
CoverURL | String | The thumbnail URL of the online editing project. |
ProjectStatus: the status of an online editing project
Value | Description | Remarks |
Normal | The online editing project is in the draft status. | This is the initial status of an online editing project. |
Producing | Video production is being performed. | None. |
Produced | Video production is successful. | None. |
ProduceFailed | The audio or video file failed to be produced. | None. |
Material: the information about a material for an online editing project
Materials for an online editing project can be materials from media assets or videos in the media library.
Parameter | Type | Description |
MaterialId | String | The ID of the material. |
Title | String | The title of the material. |
Description | String | The description of the material. |
Duration | Float | The duration of the material. Unit: seconds. The value is accurate to four decimal places. |
CoverURL | String | The thumbnail URL of the material. |
Status | String | The status of the material. |
CreationTime | String | The time when the material was created. The time is displayed in UTC. |
Size | Long | The size of the source file. Unit: bytes. |
CateId | Long | The category ID of the material. |
CateName | String | The category name of the material. |
Tags | String | The tags of the material. Multiple tags are separated by commas (,). |
Snapshots | String[] | The URLs of material snapshots. The value is an array. |
Sprites | String[] | The URLs of material sprite snapshots. The value is an array. |
ProduceConfig: the configurations of video production
Parameter | Type | Description |
TemplateGroupId | String | The ID of the transcoding template group that is used to transcode produced videos. The produced video files are used as the source files for transcoding. The transcoding process is similar to that is performed after a file is uploaded. This parameter is optional. If you leave this parameter empty, the default template group is used for transcoding. If you specify this parameter, the specified template group is used for transcoding. To view the template group ID, go to the Transcoding Template Groups page in the ApsaraVideo VOD console. |
TemplateId | String | The ID of the template that is used for video production. The produced media file is used as the source file of the media resources. This parameter is optional. If you leave this parameter empty, ApsaraVideo VOD uses the built-in online editing template for video production. If a video file is produced, the encoding format of the built-in template is H.264, and the container format is MP4. If you want to create custom parameters for video production, submit a ticket. For example, if you want to produce animated stickers, intelligently produce subtitles, edit videos based on the M3U8 playlists, or use custom production parameters, submit a ticket to apply for a specific template. |
Width | Integer | The width of the produced video. Unit: pixels. This parameter is optional. The default width is the maximum width of the source files of the video clips that are used in the timeline. For example, three video clips are used in the timeline. The resolutions of their source files are 1280 × 720 pixels, 1920 × 1080 pixels, and 720 × 1280 pixels. In this case, the output resolution of the produced video is 1920 × 1280 pixels. |
Height | Integer | The height of the produced video. Unit: pixels. This parameter is optional. The default width is the maximum width of the source files of the video clips that are used in the timeline. For example, three video clips are used in the timeline. The resolutions of their source files are 1280 × 720 pixels, 1920 × 1080 pixels, and 720 × 1280 pixels. In this case, the output resolution of the produced video is 1920 × 1280 pixels. |
Bitrate | Integer | The bitrate of the produced video. Unit: Kbit/s. This parameter is optional. The default value is the maximum bitrate of the source files that you specified in Timeline. For example, you specify three materials for Timeline and the bitrates of the source files are 400, 600, and 800 Kbit/s. In this case, the default bitrate of the produced video is 800 Kbit/s. |
StorageLocation | String | The storage address of the produced file. This parameter is required if the produced file is stored in a region other than China (Shanghai). |
MediaMetadata: the metadata of a media resource
Parameter | Type | Description |
Title | String | The title of the produced video. The value can be up to 128 bytes in length and must be encoded in UTF-8. |
Description | String | The description of the produced video. The value can be up to 1,024 bytes in length and must be encoded in UTF-8. |
CoverURL | String | The URL of the custom thumbnail for the produced video. |
CateId | String | The category ID of the produced video. Perform the following operations to modify or view the category ID: Log on to the ApsaraVideo VOD console. In the left-side navigation pane, choose Configuration Management > Media Management > Categories. |
Tags | String | The tags of the produced video. Each tag name can be up to 32 bytes in length. You can specify a maximum of 16 tags. Separate multiple tags with commas (,). The string must be encoded in the UTF-8 format. |
Online editing (new editor)
The online editing feature is not supported in specific regions. Make sure that the feature is supported in the region where ApsaraVideo VOD is activated before you use the feature. For more information, see Regions. For more information about the online editing data types for the old editor, see Online editing data types - old editor.
Timeline: the information about the timeline of an online editing project
A timeline is created when you add materials and configure special effects to create a video. A timeline consists of tracks, materials, and effects.
Parameter | Type | Required | Description |
VideoTracks | No. The video and audio tracks cannot be empty at the same time. | The video tracks. The video tracks are overlaid based on the sequence of MediaId array elements. For example, the track that corresponds to the first MediaId array element is placed below the track that corresponds to the second MediaId array element. | |
AudioTracks | No. The video and audio tracks cannot be empty at the same time. | The audio tracks. | |
SubtitleTracks | No | The subtitle tracks. | |
EffectTracks | No | The effect tracks. |
VideoTrack: the information about a video track
VideoTrack is used to arrange video and image materials.
Parameter | Type | Required | Description |
Type | String | No | The type of the video track. By default, a regular video track is used. If you specify Type=Effect, the video track can be used for special effects. If you want to use the video track for special effects, set VideoTrackClips to EffectTrackItem. |
MainTrack | Boolean | No | Indicates whether the current audio track is the primary track. Default value: False. |
VideoTrackClips | Yes | The materials in the video track. |
AudioTrack: the information about an audio track
AudioTrack is used to arrange audio-only materials and video materials that contain audio.
Parameter | Type | Required | Description |
MainTrack | Boolean | No | Indicates whether the current audio track is the primary track. Default value: False. |
AudioTrackClips | Yes | The materials in the audio track. |
SubtitleTrack: the information about a subtitle track
SubtitleTrack is used to arrange subtitles, including banner text and external subtitles.
Parameter | Type | Required | Description |
SubtitleTrackClips | Yes | The materials in the subtitle track. |
EffectTrack: the information about an effect track
EffectTrack is used to add special effects to a video. You can add filters and visual effects to an effect track.
Parameter | Type | Required | Description |
EffectTrackItems | Yes | The filters and effects that are added to the special effect track. |
VideoTrackClip: the information about materials in a video track
You can add videos and images to a video track.
You can use In, Out, TimelineIn, and TimelineOut to specify the position from which a material is cut and added to the timeline. For example, if you set In to 5, Out to 10, TimelineIn to 15, and TimelineOut to 20, the material from the 5th to 10th second is cut and played from the 15th to 20th second in the timeline.
Parameter | Type | Required | Description |
MediaId | String | No | The ID of the source file from which the material is cut. Media IDs include video IDs (VideoID) and image IDs (ImageId). |
Type | String | No | The type of the material. Default value: Video. Valid values:
For more information about GlobalImage, see Add images to the entire video. |
X | Float | No | The horizontal distance between the upper-left corner of the material and the upper-left corner of the output video. You can set the value to a percentage or the number of pixels. If the value ranges from 0 to 0.9999, the value indicates a percentage. If the value is an integer greater than or equal to 2, the value indicates a number of pixels. |
Y | Float | No | The vertical distance between the upper-left corner of the material and the upper-left corner of the output video. You can set the value to a percentage or the number of pixels. If the value ranges from 0 to 0.9999, the value indicates a percentage. If the value is an integer greater than or equal to 2, the value indicates a number of pixels. |
Width | Float | No | The width of the material in the output video. You can set the value to a percentage or the number of pixels. If the value ranges from 0 to 0.9999, the value indicates a percentage. If the value is an integer greater than or equal to 2, the value indicates a number of pixels. |
Height | Float | No | The height of the material in the output video. You can set the value to a percentage or the number of pixels. If the value ranges from 0 to 0.9999, the value indicates a percentage. If the value is an integer greater than or equal to 2, the value indicates a number of pixels. |
AdaptMode | String | No | The mode in which a material is automatically resized. This parameter takes effect only when you specify the width and height of the view. The material is scaled based on the width and height of the view. Valid values:
|
In | Float | No | The start time of the material in the source file. The source file must be an audio or video file. Unit: seconds. The value is accurate to four decimal places. If you do not specify In, 0 is used by default. |
Out | Float | No | The end time of the material in the source file. The source file must be an audio or video file. Unit: seconds. The value is accurate to four decimal places. If you do not specify Out, the material ends when the source file ends. |
MaxOut | Float | No | The maximum end time of the material. If you specify this parameter, the end time of the material is the smaller value between the duration of the source file and the value of MaxOut. This parameter takes effect only if the source file is an audio file or a video file. Unit: seconds. The value is accurate to four decimal places. If you specify Out, MaxOut becomes invalid. For more information, see Configure MaxOut for a video track. |
Duration | Float | No | The duration of the material. In most cases, this parameter is used for images. Unit: seconds. The value is accurate to four decimal places. |
DyncFrames | Int | No | The frame rate of the animated sticker. This parameter takes effect only if the source file is a dynamic image. For more information, see Use GIF stickers. |
TimelineIn | Float | No | The start time of the material in the timeline. Unit: seconds. The value is accurate to four decimal places. If you do not specify TimelineIn, the material is displayed when the display of the previous material in the timeline ends. |
TimelineOut | Float | No | The end time of the material in the timeline. Unit: seconds. The value is accurate to four decimal places. If you do not specify TimelineIn, the material stops to be displayed when the display of the next material in the timeline starts. |
Speed | Float | No | The playback speed of the material. Valid values: 0.1 to 100. For example, if you set this parameter to 2, the material is played at twice the original speed in the output video. In this case, the duration of the material is reduced to half. For more information, see Configure speed ramping. |
MaskVideoUrl | String | No | The URL of the mask file. In most cases, the mask file is a video that contains alpha channels. You can use alpha channels to add transparency information to the original video. You can set this parameter only to an OSS URL. |
Effects | Effect[] | No | The special effects that are used on the material. |
AudioTrackClip: the information about materials in an audio track
You can add audio-only materials and videos that contain audio to an audio track.
You can use the In, Out, TimelineIn, and TimelineOut parameters to specify the position from which the material is cut and added to the timeline. For example, if you set In to 5, Out to 10, TimelineIn to 15 and TimelineOut to 20, the material from the 5th to 10th second is cut and played in a loop from the 15th to 20th second in the timeline.
Parameter | Type | Required | Description |
MediaId | String | No | The ID of the source file from which the material is cut. |
In | Float | No | The start time of the material in the source file. Unit: seconds. The value is accurate to four decimal places. If you do not specify In, 0 is used by default. |
Out | Float | No | The end time of the material in the source file. Unit: seconds. The value is accurate to four decimal places. If you do not specify Out, the material ends when the source file ends. |
TimelineIn | Float | No | The start time of the material in the timeline. Unit: seconds. The value is accurate to four decimal places. If you do not specify TimelineIn, the material is displayed when the display of the previous material in the timeline ends. |
TimelineOut | Float | No | The end time of the material in the timeline. Unit: seconds. The value is accurate to four decimal places. If you do not specify TimelineIn, the material stops to be displayed when the display of the next material in the timeline starts. |
Speed | Float | No | The playback speed of the material. Valid values: 0.1 to 100. For example, if you set this parameter to 2, the material is played at twice the original speed in the output video. In this case, the duration of the material is reduced to half. For more information, see Configure speed ramping. |
Effects | Effect[] | No | The special effects that are used on the material. |
LoopMode | Boolean | No | The loop effect of the material in the timeline. True indicates that the material is played in a loop and False indicates that no loop effect is configured for the material. Default value: False. For more information, see Configure audio loop playback. |
SubtitleTrackClip: the information about materials in a subtitle track
You can add subtitle materials to a subtitle track.
Parameter | Type | Required | Description |
Type | String | Yes | The type of the subtitle material. Valid values:
|
SubType | String | No | The subtype of the subtitle material. Valid values:
Ignore this parameter if you set Type to Text. |
FileURL | String | No | The OSS URL of the subtitle file. This parameter is required if you set Type to Subtitle. Specify this parameter in the following format: https://your-bucket.oss-cn-shanghai.aliyuncs.com/your-object.srt For more information, see Use a subtitle file in video editing. Note You can specify only a public OSS URL for this parameter. HTTPS URLs, accelerated OSS URLs, and CDN URLs are not supported. |
X | Float | No | The horizontal distance between the text and the upper-left corner of the output video. This parameter takes effect if you set Type to Text. You can set the value to a percentage or the number of pixels. If the value ranges from 0 to 0.9999, the value indicates a percentage. If the value is an integer greater than or equal to 2, the value indicates the number of pixels. |
Y | Float | No | The vertical distance between the text and the upper-left corner of the output video. This parameter takes effect if you set Type to Text. You can set the value to a percentage or the number of pixels. If the value ranges from 0 to 0.9999, the value indicates a percentage. If the value is an integer greater than or equal to 2, the value indicates the number of pixels. |
TimelineIn | Float | No | The start time of the text in the timeline. This parameter takes effect if you set Type to Text. Unit: seconds. The value is accurate to four decimal places. If you do not specify TimelineIn, the text is displayed when the display of the previous text in the timeline ends. |
TimelineOut | Float | No | The end time of the text in the timeline. This parameter takes effect if you set Type to Text. Unit: seconds. The value is accurate to four decimal places. If you do not specify TimelineOut, the text stops to be displayed when the display of the next text in the timeline starts. |
Content | String | No | The text. This parameter is required if you set Type to Text. |
Font | String | No | The font of the text. This parameter takes effect if you set Type to Text. Default value: SimSun. For more information about the supported fonts, see Fonts. |
FontSize | Int | No | The size of the text. This parameter takes effect if you set Type to Text. |
FontColor | String | No | The color of the text. The value is in the format of a number sign (#) and a hexadecimal value. This parameter takes effect if you set Type to Text. Example: #ffffff. |
FontColorOpacity | String | No | The transparency of the font. Valid values: 0 to 1. Default value: 1. 1 indicates that the font is not transparent and 0 indicates that the font is completely transparent. This parameter takes effect when you set Type to Text. |
FontFace | No | The appearance of the font. This parameter takes effect when you set Type to Text. | |
Spacing | Int | No | The word spacing of the text. This parameter takes effect when you set Type to Text. Unit: pixels. Default value: 0. |
Angle | Float | No | The rotation angle of the text in the counterclockwise direction. This parameter takes effect when you set Type to Text. Unit: degrees. Default value: 0. |
BorderStyle | Int | No | The border style of the text. Valid values: 1 and 3. 1 indicates that the text has a border and a shadow and 3 indicates that the text has a background. Default value: 1. |
Outline | Int | No | The stroke width of the text. This parameter takes effect when you set Type to Text. Unit: pixels. Default value: 0. |
OutlineColour | String | No | The stroke color of the text in the hexadecimal format. The value starts with a number sign (#). This parameter takes effect when you set Type to Text. Example: #ffffff. |
Shadow | Int | No | The shadow size of the text. Unit: pixels. Default value: 0. This parameter takes effect when you set Type to Text. |
BackColour | String | No | The shadow color of the text in the hexadecimal format. The value starts with a number sign (#). This parameter takes effect when you set Type to Text. Example: #ffffff. |
Alignment | String | No | The text alignment. Default value: TopLeft. This parameter takes effect when you set Type to Text. Valid values:
|
AdaptMode | String | No | Indicates whether to enable automatic line breaking or automatic scaling when the text exceeds the video width or the specified TextWidth. Valid values:
|
TextWidth | Integer | No | The width of the text box. This parameter takes effect when AdaptMode is specified. This parameter is used when you enable automatic line breaking or automatic scaling. If this parameter is not specified, the video width is used for automatic line breaking or automatic scaling. Unit: pixels. |
FontUrl | String | No | The URL of the font file in OSS. The following formats of font files are supported: ttf, otf, and woff. This parameter takes effect when you set Type to Text. Example: https://your-bucket.oss-cn-shanghai.aliyuncs.com/example-font.ttf. |
EffectColorStyle | String | No | The word art effect of the text. This parameter takes effect when you set Type to Text. For more information about the word art effects, see Word art effect examples. |
AaiMotionInEffect | String | No | The entrance effect of the text. This parameter takes effect when you set Type to Text. For more information about the entrance effects, see Entrance effects. |
AaiMotionIn | Float | No | The duration of the entrance effect. Unit: seconds. The value is accurate to four decimal places. If AaiMotionIn is not specified, the default value of this parameter is 0.5 seconds. If the text is displayed for less than 0.5 seconds, the duration of the entrance effect is the total duration of the text minus the duration of the exit effect. This parameter takes effect when you set Type to Text. |
AaiMotionOutEffect | String | No | The exit effect of the text. This parameter takes effect when you set Type to Text. For more information about the exit effects, see Exit effects. |
AaiMotionOut | Float | No | The duration of the exit effect. Unit: seconds. The value is accurate to four decimal places. If AaiMotionOut is not specified, the default value of this parameter is 0.5 seconds. If the text is displayed for less than 0.5 seconds, the duration of the exit effect is the total duration of the text. This parameter takes effect when you set Type to Text. |
AaiMotionLoopEffect | String | No | The loop effect of the text. The loop effect does take effect together with the entrance effect or the exit effect. This parameter takes effect when you set Type to Text. For more information about the loop effects, see Loop effects. |
Ratio | Float | No | The speed of the loop effect. The value is accurate to four decimal places. If this parameter is not specified, 1 is used by default. A value greater than 1 indicates a higher loop speed and a value less than 1 indicates a slower loop speed. This parameter takes effect when you set Type to Text. |
EffectTrackItem: The information about an effect track
You can add visual effects and filters to an effect track.
Parameter | Type | Required | Description |
Type | String | Yes | The type of the special effect. Valid values: VFX and Filter. |
SubType | String | Yes | The subtype of the special effect. For more information about the supported special effects, see Special effect examples and Filter effect examples. |
TimelineIn | Float | No | The start time of the special effect in the timeline. Unit: seconds. The value is accurate to four decimal places. If you do not specify TimelineIn, 0 is used by default. |
TimelineOut | Float | No | The end time of the special effect in the timeline. Unit: seconds. The value is accurate to four decimal places. If you do not specify TimelineOut, the special effect ends when the video ends. |
Duration | Float | No | The duration of the special effect in the timeline. Unit: seconds. The value is accurate to four decimal places. If you do not specify Duration, the duration of the video is used. Note You can specify either Duration or TimelineOut. |
X | Float | No | This parameter takes effect only when SubType is set to mosaic_rect/blur. The horizontal distance between the upper-left corner of the effect area and the upper-left corner of the output video. You can set the value to a percentage or the number of pixels. If the value ranges from 0 to 0.9999, the value indicates a percentage. If the value is an integer greater than or equal to 2, the value indicates a number of pixels. |
Y | Float | No | This parameter takes effect only when SubType is set to mosaic_rect/blur. The vertical distance between the upper-left corner of the effect area and the upper-left corner of the output video. You can set the value to a percentage or the number of pixels. If the value ranges from 0 to 0.9999, the value indicates a percentage. If the value is an integer greater than or equal to 2, the value indicates a number of pixels. |
Width | Float | No | This parameter takes effect only when SubType is set to mosaic_rect/blur. The width of the effect area in the output video. You can set the value to a percentage or the number of pixels. If the value ranges from 0 to 0.9999, the value indicates a percentage. If the value is an integer greater than or equal to 2, the value indicates a number of pixels. |
Height | Float | No | This parameter takes effect only when SubType is set to mosaic_rect/blur. The height of the effect area in the output video. You can set the value to a percentage or the number of pixels. If the value ranges from 0 to 0.9999, the value indicates a percentage. If the value is an integer greater than or equal to 2, the value indicates a number of pixels. |
FontFace: the font style
Parameter | Type | Required | Description |
Bold | Boolean | No | Indicates whether the font is bold. |
Italic | Boolean | No | Indicates whether the font is italic. |
Underline | Boolean | No | Indicates whether the font is underlined. |
Effect: the information about an effect
Different effects have different parameters. Specific parameters are used for multiple effects.
For more information about effect parameters, see Effect configurations.
The following table describes the common parameters of effects.
Parameter | Type | Required | Description |
Type | String | Yes | The type of the effect. Valid values:
|
SubType | String | No | The subtype of the effect.
|
Snapshots and animated stickers
SnapshotJob: the information about a snapshot job
Parameter | Type | Description |
JobId | String | The ID of the transcoding job. |
VodTemplateInfo: the information about a snapshot template
Parameter | Type | Description |
Name | String | The name of the template. |
VodTemplateId | String | The ID of the template. |
TemplateType | String | The type of the template. Valid values:
|
IsDefault | String | Indicates whether the default template is used. Valid values:
|
TemplateConfig | JSON | The detailed configurations of the template. The value is a JSON string.
|
CreationTime | String | The time when the template was created. The time is displayed in UTC. |
ModifyTime | String | The time when the template was last modified. The time is displayed in UTC. |
MediaSnapshot: the media snapshot data
Parameter | Type | Description |
JobId | String | The ID of the snapshot job. |
CreationTime | String | The time when the snapshot job was created. The time is displayed in UTC. |
Total | Long | The total number of snapshots. |
Regular | String | The rule used to generate snapshot URLs. |
Snapshots | Snapshot[] | The snapshot data. |
Snapshot: the information about a snapshot
Parameter | Type | Description |
Index | String | The index of the snapshot. |
Url | String | The URL of the snapshot. |
DynamicImage: the information about an animated sticker
Parameter | Type | Description |
VideoId | String | The ID of the audio or video file. |
DynamicImageId | String | The ID of the animated sticker. |
FileURL | String | The URL of the animated sticker file. |
Width | String | The width of the animated sticker. |
Height | String | The height of the animated sticker. |
Duration | String | The duration of the animated sticker. |
Format | String | The format of the animated sticker. Valid values: gif and webp. |
FileSize | String | The size of the animated sticker file. |
Fps | String | The frame rate of the animated sticker. |
Watermarks
WatermarkInfo: the information about a watermark
Parameter | Type | Required | Description |
CreationTime | String | Yes | The time when the watermark was added. |
Name | String | Yes | The name of the watermark. |
IsDefault | String | Yes | Indicates whether the default watermark is used. Valid values:
|
Type | String | Yes | The type of the watermark. Valid values:
|
WatermarkId | String | Yes | The ID of the watermark. |
FileUrl | String | No | The OSS URL or CDN URL of the watermark file. This parameter does not apply to text watermarks. |
WatermarkConfig | Yes | The configurations such as the position and effect of the text watermark or image watermark. The value must be a JSON string. |
Audio and video transcoding
TranscodeJob: the information about a transcoding job
Parameter | Type | Description |
JobId | String | The ID of the transcoding job. |
TranscodeTemplateGroup: the information about a transcoding template group
Parameter | Type | Required | Description |
Name | String | Yes | The name of the transcoding template group. |
TranscodeTemplateGroupId | String | Yes | The ID of the transcoding template group. |
IsDefault | String | Yes | Indicates whether the default transcoding template group is used.
|
CreationTime | String | Yes | The time when the transcoding template group was created. |
ModifyTime | String | Yes | The time when the transcoding template group was last modified. |
TranscodeTemplateList | Yes | The information about the transcoding templates. |
TranscodeTemplate: the configurations of a transcoding template
Parameter | Type | Required | Description |
Type | String | No | The type of the template. Valid values:
Default value: Normal. |
Video | Yes | The transcoding configurations of the video stream. The value must be a JSON string. | |
Audio | Yes | The transcoding configurations of the audio stream. The value must be a JSON string. | |
Definition | String | Yes | The definition of the transcoding template. Valid values for the definition of a regular transcoding template:
Note
Valid values for the definition of a Narrowband HD 1.0 transcoding template:
Note
|
Container | Yes | The format of the container that is used to encapsulate audio and video streams. The value must be a JSON string. | |
MuxConfig | No | The transcoding segment configuration. You must set this parameter if the Format parameter is set to HLS. The value is a JSON string. | |
TransConfig | No | The conditional transcoding configurations. You can specify this parameter if you need to determine the basic logic based on the bitrate and resolution of the source file before the transcoded video is generated. The value is a JSON string. | |
TranscodeFileRegular | String | No | The custom path used to store the output files. Note
Example {MediaId}/watermark-{PlayDefinition}: During transcoding, ApsaraVideo VOD replaces {MediaId} with the video ID and {PlayDefinition} with the definition. For example, the video ID can be 8ff5cc93f6da4079a47a77bf71d, and the definition can be fd. Output path 8ff5cc93f6da4079a47a77bf71d/watermark-fd.mp4: ApsaraVideo VOD automatically adds the file name extension, such as .mp4, .m3u8, or .flv. |
Clip | No | The video cropping configurations. The value must be a JSON string. For example, you can set this parameter to extract 5 seconds of content from a video to generate a new video. | |
Rotate | String | No | The rotation angle of the video. Valid values: [0,360]. For example, if you set this parameter to 180, the video image is turned upside down. |
EncryptSetting | No | The encryption configuration for transcoding. | |
PackageSetting | No | The packaging configurations. Only HLS packaging and Dynamic Adaptive Streaming over HTTP (DASH) packaging are supported. The value is a JSON string. | |
SubtitleList | No | The subtitle configurations. The value is a JSON string. | |
WatermarkIds | String[] | No | The ID of the associated watermark. You can associate a maximum of four watermark IDs. USER_DEFAULT_WATERMARK indicates the ID of the default watermark. |
TranscodeTemplateId | String | No | The ID of the transcoding template. You must set this parameter when you modify a transcoding template. |
TemplateName | String | No | The name of the transcoding template. You must set this parameter when you create a transcoding template. |
Example of the TranscodeTemplate parameter
{
"Type":"VideoPackage",
"Video":{
"Codec":"H.264",
"Bitrate":"900",
"Width":"960",
"Remove":"false",
"Fps":"30"
},
"Audio":{
"Codec":"AAC",
"Bitrate":"128",
"Samplerate":"44100"
},
"Container":{
"Format":"m3u8"
},
"MuxConfig":{
"Segment":{
"Duration":"6"
}
},
"EncryptSetting":{
"EncryptType":"AliyunVoDEncryption"
},
"PackageSetting":{
"PackageType":"HLSPackage"
"PackageConfig":{
"BandWidth":"900000"
}
},
"SubtitleUrl": "http://outin-40564284ef058b2163e1****.oss-cn-shanghai.aliyuncs.com/subtitles/c737f-14f1-4364-b107-d5f7f8ed****-cn.ass",
"CharEncode": "UTF-8",
"WatermarkIds":["USER_DEFAULT_WATERMARK","ddddddddd"],
"Definition":"SD",
"TemplateName":"test"
}
Video: the transcoding configurations of a video stream
In most cases, you need only to set the Codec, Bitrate, Height, and Width parameters and set the Remove parameter to false.
We recommend that you set either the Width or Height parameter for the output video file. This ensures that the aspect ratio of the output video file is the same as that of the source file.
Parameter | Type | Required | Description |
Codec | String | Yes | The encoding format of the video. Valid values: H.264 and H.265. |
Remove | String | Yes | Indicates whether to delete the video stream. Valid values:
Default value: false. |
Bitrate | String | No | The bitrate of the output video file. If you leave this parameter empty, the bitrate is specified based on the value of the Crf parameter. Unit: Kbit/s. Valid values: [10,50000]. |
Height | String | No | The image height of the output video file. The value must be a multiple of 2. If you leave this parameter empty, the image height of the source file is used. Unit: pixels. Valid values: [128,4096]. |
Width | String | No | The image width of the output video file. The value must be a multiple of 2. If you leave this parameter empty, the image width of the source file is used. Unit: pixels. Valid values: [128,4096]. |
Fps | String | No | The frame rate of the output video file. If you leave this parameter empty, the frame rate of the source file is used. Unit: FPS. Valid values: (0,60]. |
Gop | String | No | The size of a group of pictures (GOP). Unit: frame. Valid values: [1,100000]. |
LongShortMode | String | No | Indicates whether to enable auto-rotate screen. The image width of the output video file corresponds to the long side of the source file or the image height of the source file in portrait mode. The image height of the output video file corresponds to the short side of the source file or the image width of the source file in portrait mode. Valid values:
Default value: true. This feature is applicable to videos in portrait mode. We recommend that you enable this feature. |
Crf | String | No | The bitrate quality control factor. If you specify this parameter, the Bitrate parameter becomes invalid. A greater value indicates the poorer image quality and a smaller size of the output video file. A smaller value indicates the better image quality, a larger size, and a longer transcoding duration of the output video file. Valid values: [0,51]. Default value: 26. We recommend that you do not modify this parameter. |
Profile | String | No | The encoding profile. Valid values:
Default value: high. This parameter is valid only if H.264 encoding is performed. Best practices If multiple definitions exist, we recommend that you set this parameter to baseline to ensure normal playback on low-end devices. Set this parameter to main or high for other definitions. |
Preset | String | No | The preset video algorithm. Valid values: veryfast, fast, medium, slow, and slower. Default value: medium. This parameter is valid only if H.264 encoding is performed. We recommend that you do not modify this parameter. |
ScanMode | String | No | The scan mode. Valid values:
|
Bufsize | String | No | The buffer size. Unit: KB. Valid values: [1000,128000]. Default value: 6000. |
Maxrate | String | No | The maximum video bitrate. Unit: Kbit/s. Valid values: [1000,50000]. |
PixFmt | String | No | The color format of the video. Standard pixel formats such as yuv420p and yuvj420p are supported. yuv420p or the original color format is used by default. |
Example of the Video parameter
{
"Codec":"H.264",
"Bitrate":"128",
"Remove":"false",
"Width":"640",
"Fps":"30"
}
Audio: the transcoding configurations of an audio stream
In most cases, you need only to set the Codec and Bitrate parameters and set the Remove parameter to false.
Parameter | Type | Required | Description |
Codec | String | Yes | The encoding format of the audio file. Valid values: AAC and MP3. |
Bitrate | String | Yes | The bitrate of the output audio file. Unit: Kbit/s. Valid values: [8,1000]. |
Remove | String | Yes | Indicates whether to delete the audio stream. Valid values:
Default value: false. |
Samplerate | String | Yes | The sample rate. Unit: Hz. Valid values: 22050, 32000, 44100, 48000, and 96000. Default value: 44100. If the container format for the video files is FLV and the encoding format for the audio files is MP3, this parameter cannot be set to 32000, 48000, or 96000. If the encoding format for the audio files is MP3, this parameter cannot be set to 96000. |
Channels | String | No | The number of sound tracks. Default value: 2.
|
Profile | String | No | The audio codec profile. If the Codec parameter is set to AAC, the valid values include aac_low, aac_he, aac_he_v2, aac_ld, and aac_eld. |
Volume | No | The volume. |
Example of the Audio parameter
{
"Codec":"AAC",
"Bitrate":"128",
"Remove":"false",
"Samplerate":"44100"
}
Container: the container format
Parameter | Type | Required | Description |
Format | String | Yes | The container format.
|
Example of the Container parameter
{
"Format":"mp4"
}
MuxConfig: the segment configuration for HLS
You must specify this parameter if the container format is M3U8.
Parameter | Type | Required | Description |
Segment | Yes | The segment configuration. The value must be a JSON object. |
Segment: the configuration of a segment
Parameter | Type | Required | Description |
Duration | String | Yes | The duration of the TS segment. The value must be an integer. Valid values: [1,60]. Unit: seconds. Example: {"Duration":"10"}. |
Example of the MuxConfig parameter
{
"Segment":{
"Duration":"10"
}
}
TransConfig: the conditional transcoding configurations
Parameter | Type | Required | Description |
TransMode | String | No | The transcoding mode. Valid values:
Default value: onepass. |
IsCheckReso | String | No | Indicates whether to check the resolution of the source file. Then, ApsaraVideo VOD determines whether to use the resolution of the source file for transcoding based on the check result. Valid values:
Default value: false. |
IsCheckResoFail | String | No | Indicates whether to check the resolution of the source file for a transcoding failure. Valid values:
Default value: false. |
IsCheckVideoBitrate | String | No | Indicates whether to check the video stream bitrate of the source file. Then, ApsaraVideo VOD determines whether to use the video stream bitrate of the source file for transcoding based on the check result. Valid values:
Default value: false. |
IsCheckVideoBitrateFail | String | No | Indicates whether to check the video stream bitrate of the source file for a transcoding failure. Valid values:
Default value: false. If the IsCheckVideoBitrate parameter is specified, the value of IsCheckVideoBitrate prevails. |
IsCheckAudioBitrate | String | No | Indicates whether to check the audio stream bitrate of the source file. Then, ApsaraVideo VOD determines whether to use the audio stream bitrate of the source file for transcoding based on the check result. Valid values:
Default value: false. |
IsCheckAudioBitrateFail | String | No | Indicates whether to check the audio stream bitrate of the source file for a transcoding failure. Valid values:
Default value: false. If the IsCheckVideoBitrate parameter is specified, the value of IsCheckVideoBitrate prevails. |
Example of the TransConfig parameter
{
"IsCheckReso":"true",
"IsCheckResoFail":"false",
"IsCheckVideoBitrate":"false",
"IsCheckVideoBitrateFail":"false",
"IsCheckAudioBitrate":"false",
"IsCheckAudioBitrateFail":"false"
}
Clip: video cropping configurations
Parameter | Type | Required | Description |
TimeSpan | Yes | The time parameters used to crop a video. |
TimeSpan: the time parameters used to crop a video
Parameter | Type | Required | Description |
Seek | String | Yes | The start time of the video clip. Values in the following formats are supported:
We recommend that you use Format 1. |
Duration | String | No | The duration of the video clip. Values in the following formats are supported:
We recommend that you use Format 1. Note You must specify either Duration or End. If you specify both Duration and End, End takes effect. |
End | String | No | The duration of the remaining part of the video after the video clip is cropped. Values in the following formats are supported:
We recommend that you use Format 1. Note
|
EncryptSetting: the encryption configuration for transcoding
You must set the EncryptType
parameter to AliyunVoDEncryption
and call the SubmitTranscodeJobs operation to start the HLS encryption. Configure the EncryptConfig
parameter when you call the SubmitTranscodeJobs operation.
Parameter | Type | Required | Description |
EncryptType | String | Yes | The encryption type. Valid values:
|
Example of the EncryptSetting parameter
{
"EncryptType":"AliyunVoDEncryption"
}
PackageSetting: the packaging configuration for transcoding
You cannot package video and audio streams after you extract them from files.
Only HLS packaging is supported.
Parameter | Type | Required | Description |
PackageType | String | Yes | The packaging type. Set the value to HLSPackage. |
PackageConfig | No | The packaging configurations. You must specify this parameter if a video stream packaging template is used for transcoding. | |
SubtitleExtractConfigList | No | The subtitle packaging configurations. You can specify this parameter only when a subtitle packaging template is used for transcoding. |
PackageConfig: the video packaging configurations
You can set this parameter only when PackageType is set to HLSPackage.
Parameter | Type | Required | Description |
BandWidth | String | Yes | The maximum bandwidth. You must specify this parameter for HLS packaging. Unit: bit/s. You can specify this parameter only if a video stream packaging template is used for transcoding. |
Example of the PackageSetting parameter
Sample code for configuring a video stream packaging template:
{
"PackageType":"HLSPackage",
"PackageConfig":{
"BandWidth":"400000"
}
}
SubtitleExtractConfig: the subtitle packaging configurations
Parameter | Type | Required | Description |
SubtitleUrlList | String[] | Yes | The URL of the subtitle file. Only HTTP OSS URLs are supported. HTTP CDN URLs and HTTPS URLs are not supported. Note
|
Language | String | Yes | The subtitle language, such as en-US. For more information, see RFC 5646. |
Format | String | Yes | The format of subtitle files. Only .vtt files are supported. Sample file name: subtitle.vtt. |
Name | String | Yes | The display name of the subtitle in the player, such as Chinese and English. |
Example of the SubtitlePackage parameter
Sample code for configuring a subtitle packaging template:
{
"PackageType": "HLSPackage",
"SubtitleExtractConfigList": [
{
"SubtitleUrlList": [
"http://outin-40514****.oss-cn-shanghai.aliyuncs.com/subtitles/4bff3675-79a5-40fa-8c86-1f98169d****-eng.vtt"
],
"Language": "en-US",
"Format": "vtt",
"Name": "English"
},
{
"SubtitleUrlList": [
"http://outin-40514****.oss-cn-shanghai.aliyuncs.com/subtitles/a3f50b08-11c3-4511-94cf-7fd4f7a5****-jpn.vtt"
],
"Language": "ja",
"Format": "vtt",
"Name": "Japanese"
},
{
"SubtitleUrlList": [
"http://outin-40514****.oss-cn-shanghai.aliyuncs.com/subtitles/4dba87c2-a787-42cd-8328-2369aeb8****-cn.vtt"
],
"Language": "cn",
"Format": "vtt",
"Name": "Chinese"
}
]
}
SubtitleConfig: the subtitle configurations
Parameter | Type | Required | Description |
SubtitleUrl | String | Yes | The OSS URL of the subtitle file. HTTPS URLs and CDN URLs are not supported. Supported subtitle formats: srt and ass. Note The subtitle file and source video file must be stored in the same bucket in the same region, such as the China (Shanghai) region. |
CharEncode | String | Yes | The encoding format of the media file. Valid values:
Default value: UTF-8. |
For more information about how to upload a subtitle file, see CreateUploadAttachedMedia and Upload OSS objects.
Example of the SubtitleConfig parameter
{
"SubtitleUrl": "http://outin-40564284ef058b2d300163e1****.oss-cn-shanghai.aliyuncs.com/subtitles/c737f-14f1-4364-b107-d5f7f8ed****.ass",
"CharEncode": "UTF-8"
}
Volume: the volume configurations
Parameter | Type | Required | Description |
Method | String | No | The volume adjustment method. Valid values: Valid values: auto, dynamic, and linear. |
IntegratedLoudnessTarget | String | No | The new volume. Valid values: [-70,-5]. This parameter is valid only if the Method parameter is set to dynamic. Default value: -6. |
TruePeak | String | No | The maximum volume. Valid values: [-9,0]. This parameter is valid only if the Method parameter is set to dynamic. Default value: -1. |
LoudnessRangeTarget | String | No | The range of the volume. Valid values: [1,20]. This parameter is valid only if the Method parameter is set to dynamic. Default value: 8. |
Example of the Volume parameter
{
"Method":"dynamic",
"IntegratedLoudnessTarget":"-6",
"TruePeak":"-1",
"LoudnessRangeTarget":"8"
}
Supported combinations of container formats and audio encoding formats
Container | Audio Codecs |
mp3 | MP3 |
mp4 | AAC |
ogg | VORBIS and FLAC |
flac | FLAC |
Supported combinations of container formats, audio encoding formats, and video encoding formats
Container | Video Codecs | Audio Codecs |
flv | H.264 | AAC and MP3 |
mp4 | H.264 and H.265 | AAC and MP3 |
ts | H.264 and H.265 | AAC and MP3 |
m3u8 | H.264 and H.265 | AAC and MP3 |
gif | GIF | Not supported |
Supported combinations of video encoding formats and video stream parameters
Video Codecs | H.264 | H.265 | GIF |
Profile | Supported | × | × |
Bitrate | Supported | Supported | × |
Crf | Supported | Supported | × |
Width | Supported | Supported | Supported |
Height | Supported | Supported | Supported |
Fps | Supported | Supported | Supported |
Gop | Supported | Supported | × |
Preset | Supported | × | × |
ScanMode | Supported | Supported | Supported |
Bufsize | Supported | Supported | × |
Maxrate | Supported | Supported | × |
PixFmt | Supported | Supported | bgr8 |
TranscodeSummary: the transcoding summary
Parameter | Type | Description |
VideoId | String | The ID of the audio or video file. |
TranscodeTemplateGroupId | String | The ID of the transcoding template group. |
TranscodeStatus | String | The transcoding status. Valid values:
|
TranscodeJobInfoSummaryList | The summaries of transcoding jobs. | |
CreationTime | String | The time when the transcoding task was created. The time follows the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time is displayed in UTC. |
CompleteTime | String | The time when the transcoding task was complete. The time follows the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time is displayed in UTC. |
TranscodeJobInfoSummary: the summary of a transcoding job
Parameter | Type | Description |
TranscodeTemplateId | String | The ID of the transcoding template. |
Width | String | The image width of the output video. Unit: pixels. |
Height | String | The image height of the output video. Unit: pixels. |
Duration | String | The duration of the output video. Unit: seconds. |
Filesize | String | The size of the output video file. Unit: bytes. |
Bitrate | String | The average bitrate of the output video. Unit: Kbit/s. |
Fps | String | The frame rate of the output video. Unit: frames per second. |
Format | String | The container format of the output video. |
WatermarkIdList | String[] | The IDs of the watermarks that are applied to the output video. |
TranscodeProgress | Long | The transcoding progress. Valid values: [0,100]. |
TranscodeJobStatus | String | The status of the transcoding job. Valid values:
|
CreationTime | String | The time when the transcoding job was created. The time follows the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time is displayed in UTC. |
CompleteTime | String | The time when the transcoding job was complete. The time follows the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time is displayed in UTC. |
ErrorCode | String | The error code returned when the transcoding job failed. |
ErrorMessage | String | The error message returned when the transcoding job failed. |
TranscodeTask: the information about a transcoding task
Parameter | Type | Description |
TranscodeTaskId | String | The ID of the transcoding task. |
TranscodeTemplateGroupId | String | The ID of the transcoding template group. |
VideoId | String | The ID of the audio or video file. |
TaskStatus | String | The status of the transcoding task. Valid values:
|
CreationTime | String | The time when the transcoding task was created. The time follows the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time is displayed in UTC. |
CompleteTime | String | The time when the transcoding task was complete. The time follows the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time is displayed in UTC. |
Trigger | String | The type of the trigger. Valid values:
|
TranscodeJobInfoList | The information about transcoding jobs. |
TranscodeJobInfo: the information about a transcoding job
Parameter | Type | Description |
TranscodeTaskId | String | The ID of the transcoding task. |
TranscodeJobId | String | The ID of the transcoding job. |
VideoId | String | The ID of the audio or video file. |
TranscodeProgress | Long | The progress of the transcoding job. Valid values: [0,100]. |
TranscodeJobStatus | String | The status of the transcoding job. Valid values:
|
Priority | String | The priority of the transcoding task. |
Definition | String | The definition. Note This parameter indicates the definition that is configured in the transcoding template and does not indicate the actual resolution of the output video. |
TranscodeTemplateId | String | The ID of the transcoding template. |
CreationTime | String | The time when the transcoding job was created. |
CompleteTime | String | The time when the transcoding job was complete. |
InputFileUrl | String | The OSS URL of the source file. |
OutputFile | The information about the output file. | |
ErrorCode | String | The error code returned when the transcoding job failed. |
ErrorMessage | String | The error message returned when the transcoding job failed. |
OutputFile: the information about an output file after transcoding
Parameter | Type | Description |
OutputFileUrl | String | The OSS URL of the output file. |
Format | String | The container format of the output file. |
Width | String | The image width of the output file. Unit: pixels. |
Height | String | The image height of the output file. Unit: pixels. |
Duration | String | The duration of the output file. Unit: seconds. |
Bitrate | String | The average bitrate of the output file. Unit: Kbit/s. |
Fps | String | The frame rate of the output file. Unit: frames per second. |
Filesize | Long | The size of the output file. Unit: bytes. |
EncryptType | String | The encryption type that is used for the output file. The value is a JSON string. |
WatermarkIdList | String | The IDs of the watermarks that are applied to the output file. |
VideoStreamList | String | The video streams. For more information, see VideoStream: the information about a video stream. |
AudioStreamList | String | The audio streams. For more information, see AudioStream: the information about an audio stream |
Data statistics
TopPlayVideoStatis: the daily playback statistics on one of the top videos
Parameter | Type | Description |
VideoId | String | The ID of the audio or video file. |
PlayDuration | String | The playback duration of the video. Unit: milliseconds. |
Title | String | The title of the video. |
VV | String | The number of video views. |
UV | String | The number of unique visitors. |
VideoPlayStatisDetail: the daily playback statistics on a specific video
Parameter | Type | Description |
Date | String | The date in the yyyyMMdd format. Example: 20170120. |
PlayDuration | String | The playback duration of the video. Unit: milliseconds. |
Title | String | The title of the video. |
VV | String | The number of video views. |
UV | String | The number of unique visitors. |
PlayRange | String | The distribution of the playback duration. |
UserPlayStatisTotals: the statistics on total playbacks per day
Parameter | Type | Description |
Date | String | The date in the yyyyMMdd format. Example: 20170120. |
PlayDuration | String | The playback duration of the video. Unit: milliseconds. |
PlayRange | String | The distribution of the playback duration. |
VV | VV | The total number of video views. |
UV | UV | The total number of unique visitors. |
UserPlayStatisAvgs: the statistics on average playbacks per day
Parameter | Type | Description |
Date | String | The date in the yyyyMMdd format. Example: 20170120. |
AvgPlayDuration | String | The average playback duration of the video. Unit: milliseconds. |
AvgPlayCount | String | The average number of video views. |
VV: the number of video views
Only statistics on video playbacks that use ApsaraVideo Player SDKs are supported.
Parameter | Type | Description |
Android | String | The total number of video views that is collected for videos that are played by using ApsaraVideo Player SDK for Android. |
iOS | String | The total number of video views that is collected for videos that are played by using ApsaraVideo Player SDK for iOS. |
Flash | String | The total number of video views that is collected for videos that are played by using ApsaraVideo Player SDK for Flash. |
HTML5 | String | The total number of video views that is collected for videos that are played by using ApsaraVideo Player SDK for HTML5. |
UV: the number of unique visitors
Only statistics on video playbacks that use ApsaraVideo Player SDKs are supported.
Parameter | Type | Description |
Android | String | The total number of unique visitors who use ApsaraVideo Player SDK for Android. |
iOS | String | The total number of unique visitors who use ApsaraVideo Player SDK for iOS. |
Flash | String | The total number of unique visitors who use ApsaraVideo Player SDK for Flash. |
HTML5 | String | The total number of unique visitors who use ApsaraVideo Player SDK for HTML5. |
Event notifications
MessageCallback: the configurations of an event notification
Parameter | Type | Description |
CallbackType | String | The callback method. Valid values: HTTP and MNS. |
CallbackURL | String | The callback URL. This parameter is returned only for HTTP callbacks. |
MnsEndpoint | String | The public endpoint of Message Service (MNS). This parameter is returned only for MNS callbacks. |
MnsQueueName | String | The name of the MNS queue. This parameter is returned only for MNS callbacks. |
EventTypeList | String | The type of the callback event. |
AuthSwitch | String | Indicates whether callback authentication is enabled. This parameter is returned only for HTTP callbacks. Valid values:
|
AuthKey | String | The cryptographic key. This parameter is returned only for HTTP callbacks. |
Multi-application service
AppInfo: the information about an application
Parameter | Type | Description |
AppId | String | The ID of the application. |
AppName | String | The name of the application. |
Description | String | The description of the application. |
Type | String | The type of the application. Valid values:
|
Status | String | The status of the application. Valid values:
|
CreationTime | String | The time when the application was created. The time is displayed in UTC. |
ModificationTime | String | The time when the application was last modified. The time is displayed in UTC. |
AppPolicy: the information about an application policy
Parameter | Type | Description |
AppId | String | The ID of the application. |
PolicyType | String | The type of the policy. Valid values:
|
PolicyName | String | The name of the policy. |
CreationTime | String | The time when the policy was created. The time is displayed in UTC. |
Description | String | The rule description. |