All Products
Search
Document Center

ApsaraVideo VOD:Features

Last Updated:Jan 16, 2025

As a module of ApsaraVideo MediaBox SDK, ApsaraVideo Player SDK provides the video playback feature for live streaming and video-on-demand (VOD) scenarios. ApsaraVideo Player SDK supports multiple platforms, such as web, Android, iOS, Flutter, HarmonyOS, Windows, and macOS. This topic describes the features supported by ApsaraVideo Player SDK.

Standard features

The following tables describe the standard features of ApsaraVideo Player SDK for web, Android, iOS, Flutter, and HarmonyOS.

Playback protocols and formats

Feature

Description

Android

iOS

Flutter

HarmonyOS

Web

VOD

Supports common audio and video formats in VOD scenarios, such as Flash Video (FLV), HTTP Live Streaming (HLS), MP4, and MP3.

️️️️️️️️️Supported

️️️️️️️️️Supported

️️️️️️️️️Supported

️️️️️️️️️Supported

️️️️️️️️️Supported

Live streaming

Supports common audio and video formats in live streaming scenarios, such as Real-Time Messaging Protocol (RTMP), FLV, and HLS.

️️️️️️️️️Supported

️️️️️️️️️Supported

️️️️️️️️️Supported

️️️️️️️️️Supported

Only the RTMP protocol is not supported.

Time shifting

Allows you to play live streams in time shifting mode. You can set the start, stop, and current playback time and seek to a specific point in time.

️️️️️️️️️Supported

️️️️️️️️️Supported

️️️️️️️️️Supported

️️️️️️️️️Supported

️️️️️️️️️Supported

H.264 encoding

Allows you to play video streams encoded in the H.264 format and switch between hardware and software decoding.

️️️️️️️️️Supported

️️️️️️️️️Supported

️️️️️️️️️Supported

️️️️️️️️️Supported

Hardware or software decoding depends on the browser settings

H.265 encoding

Allows you to play video streams encoded in the H.265 format and switch between hardware and software decoding.

️️️️️️️️️Supported

️️️️️️️️️Supported

️️️️️️️️️Supported

️️️️️️️️️Supported

Supported after you submit an application. For more information, see Value-added services. Hardware or software decoding depends on the browser settings.

H.266 encoding

Allows you to play video streams encoded in the H.266 format.

Supported after you submit an application. For more information, see Value-added services.

Supported after you submit an application. For more information, see Value-added services.

Supported after you submit an application. For more information, see Value-added services.

Not supported

Supported after you submit an application. For more information, see Value-added services.

Real-Time Streaming (RTS)

Supports Alibaba Cloud RTS that is characterized by high concurrency, low stuttering rate, and low latency within milliseconds.

️️️️️️️️️Supported

️️️️️️️️️Supported

️️️️️️️️️Supported

️️️️️️️️️Supported

️️️️️️️️️Supported

Low-latency streaming

Supports low-latency streaming based on low-latency HLS (LL-HLS) and Dynamic Adaptive Streaming over HTTP (DASH).

️️️️️️️️️Supported

️️️️️️️️️Supported

️️️️️️️️️Supported

️️️️️️️️️Supported

️️️️️️️️️Supported

DASH

Supports the playback of video streams that are packaged by using DASH. For example, you can play video files that are encapsulated by using the SegmentBase and SegmentTemplate segment referring schemes.

️️️️️️️️️Supported

️️️️️️️️️Supported

️️️️️️️️️Supported

️️️️️️️️️Supported

️️️️️️️️️Supported

QUIC acceleration

Supports the Quick UDP Internet Connections (QUIC) protocol to improve video transmission efficiency.

️️️️️️️️️Supported

️️️️️️️️️Supported

️️️️️️️️️Supported

️️️️️️️️️Supported

N/A

High dynamic range (HDR) video playback

Supports multiple HDR formats such as HDR10 and hybrid log-gamma (HLG).

️️️️️️️️️Supported

️️️️️️️️️Supported

️️️️️️️️️Supported

Not supported

The type of your browser determines whether HTTP/2 is supported.

URL-based playback

Supports URL-based playback of online or local videos.

️️️️️️️️️Supported

️️️️️️️️️Supported

️️️️️️️️️Supported

️️️️️️️️️Supported

️️️️️️️️️Supported

Video ID (VID)-based playback

Supports VID-based playback. You can specify the streaming URLs of a video stream in multiple definitions at a time. For example, you can use VidAuth and VidSts sources for playback.

️️️️️️️️️Supported

️️️️️️️️️Supported

️️️️️️️️️Supported

️️️️️️️️️Supported

️️️️️️️️️Supported

Supplemental enhancement information (SEI)

Allows you to read SEI messages.

️️️️️️️️️Supported

️️️️️️️️️Supported

️️️️️️️️️Supported

️️️️️️️️️Supported

️️️️️️️️️Supported

Network protocols

Feature

Description

Android

iOS

Flutter

HarmonyOS

Web

Custom headers

Allows you to customize HTTP headers when you request audio and video resources.

️️️️️️️️️Supported

️️️️️️️️️Supported

️️️️️️️️️Supported

️️️️️️️️️Supported

MP4 videos are not supported. HLS and DASH videos are partially supported.

HTTPDNS

Supports HTTPDNS to prevent Domain Name System (DNS) hijacking.

️️️️️️️️️Supported

️️️️️️️️️Supported

️️️️️️️️️Supported

️️️️️️️️️Supported

Not supported

HTTP/2

Supports HTTP/2 and uses the latest features such as binary framing, multiplexing, and header compression to significantly improve web performance and reduce data interaction latency.

️️️️️️️️️Supported

️️️️️️️️️Supported

️️️️️️️️️Supported

️️️️️️️️️Supported

Depends on whether your browser supports HTTP/2. For more information, see Can I use http2?

HTTP/3

Supports HTTP/3 and accelerates content delivery based on the Quick UDP Internet Connections (QUIC) protocol.

️️️️️️️️️Supported

️️️️️️️️️Supported

️️️️️️️️️Supported

️️️️️️️️️Supported

Depends on whether your browser supports HTTP/3. For more information, see Can I use http3?

Playback control

Feature

Description

Android

iOS

Flutter

HarmonyOS

Web

Basic playback control

Supports playback control features, including start, stop, pause, video seeking, and autoplay.

️️️️️️️️️Supported

️️️️️️️️️Supported

️️️️️️️️️Supported

️️️️️️️️️Supported

️️️️️️️️️Supported

seek

Allows you to drag the slider on the progress bar to the specified point in time. You can use gestures to control the slider on the UI. You can experience quick seeking and retain the cached video content during seeking without clearing the cached video content.

️️️️️️️️️Supported

️️️️️️️️️Supported

️️️️️️️️️Supported

️️️️️️️️️Supported

️️️️️️️️️Supported

Precise seeking

Supports video seeking to a specified frame.

️️️️️️️️️Supported

️️️️️️️️️Supported

️️️️️️️️️Supported

️️️️️️️️️Supported

Supports precise seeking in milliseconds.

Seeking inside a cached video

Allows you to perform quick seeking and retain the cached video content during seeking.

️️️️️️️️️Supported

️️️️️️️️️Supported

️️️️️️️️️Supported

️️️️️️️️️Supported

Not supported

Resumed playback

Allows you to specify the point in time for resuming playback.

️️️️️️️️️Supported

️️️️️️️️️Supported

️️️️️️️️️Supported

️️️️️️️️️Supported

️️️️️️️️️Supported

Loop playback

Supports automatic replay after the playback of an audio or video file ends.

️️️️️️️️️Supported

️️️️️️️️️Supported

️️️️️️️️️Supported

️️️️️️️️️Supported

️️️️️️️️️Supported

List playback

Supports list playback for short videos to improve the loading speed.

️️️️️️️️️Supported

️️️️️️️️️Supported

️️️️️️️️️Supported

️️️️️️️️️Supported

️️️️️️️️️Supported

Configurable playback speeds

Allows you to adjust the playback speed. The audio pitch remains unchanged at different playback speeds.

️️️️️️️️️Supported

️️️️️️️️️Supported

️️️️️️️️️Supported

️️️️️️️️️Supported

️️️️️️️️️Supported

Manual definition switching

Allows you to switch video streams in different definitions.

️️️️️️️️️Supported

️️️️️️️️️Supported

️️️️️️️️️Supported

️️️️️️️️️Supported

️️️️️️️️️Supported

Seamless resolution switching

Allows you to seamlessly switch live streams between different resolutions to improve playback experience when you use Alibaba Cloud streaming URLs.

️️️️️️️️️Supported

️️️️️️️️️Supported

️️️️️️️️️Supported

Not supported

Supports the seamless switching between the HLS and DASH formats.

Audio track switching

Allows you to switch among multiple audio tracks in VOD scenarios.

️️️️️️️️️Supported

️️️️️️️️️Supported

️️️️️️️️️Supported

Not supported

️️️️️️️️️Supported

Snapshot capture

Allows you to capture the current frame of a video and save the frame as a static image.

️️️️️️️️️Supported

️️️️️️️️️Supported

️️️️️️️️️Supported

️️️️️️️️️Supported

N/A

Screen lock

Allows you to lock the screen orientation and hide UI elements.

️️️️️️️️️Supported

️️️️️️️️️Supported

️️️️️️️️️Supported

️️️️️️️️️Supported

N/A

Video effects

Feature

Description

Android

iOS

Flutter

HarmonyOS

Web

Video image resizing

Supports image padding and cropping.

️️️️️️️️️Supported

️️️️️️️️️Supported

️️️️️️️️️Supported

️️️️️️️️️Supported

️️️️️️️️️Supported

Video image rotation

Supports the following rendering angles for video images: 0°, 90°, 180°, and 270°.

️️️️️️️️️Supported

️️️️️️️️️Supported

️️️️️️️️️Supported

️️️️️️️️️Supported

️️️️️️️️️Supported

Mirroring

Supports the following image rendering modes: no mirroring, horizontal mirroring, and vertical mirroring.

️️️️️️️️️Supported

️️️️️️️️️Supported

️️️️️️️️️Supported

️️️️️️️️️Supported

️️️️️️️️️Supported

Thumbnail preview (sprite snapshot)

Supports thumbnail preview on the progress bar.

️️️️️️️️️Supported

️️️️️️️️️Supported

️️️️️️️️️Supported

Not supported

️️️️️️️️️Supported

Brightness adjustment

Allows you to adjust the system brightness. You can use gestures to adjust the brightness on the UI.

️️️️️️️️️Supported

️️️️️️️️️Supported

️️️️️️️️️Supported

️️️️️️️️️Supported

N/A

Custom player size

Supports custom settings for the width and height of the player.

️️️️️️️️️Supported

️️️️️️️️️Supported

️️️️️️️️️Supported

️️️️️️️️️Supported

️️️️️️️️️Supported

Picture-in-picture (PiP)

Supports picture-in-picture playback.

️️️️️️️️️Supported

Playback in PiP mode is not supported for iOS 14 and earlier.

Supports the PiP API for iOS, but does not support the PiP API for Android.

Not supported

Not supported

Audio effects

Feature

Description

Android

iOS

Flutter

HarmonyOS

Web

Volume change

Allows you to change the volume of a video during playback.

️️️️️️️️️Supported

️️️️️️️️️Supported

️️️️️️️️️Supported

️️️️️️️️️Supported

️️️️️️️️️Supported

Mute mode

Allows you to enable or disable the mute mode.

️️️️️️️️️Supported

️️️️️️️️️Supported

️️️️️️️️️Supported

️️️️️️️️️Supported

️️️️️️️️️Supported

Audio-only playback

Allows you to play only the audio stream in a video file and common audio files, such as audio files in the MP3 and Advanced Audio Coding (AAC) formats.

️️️️️️️️️Supported

️️️️️️️️️Supported

️️️️️️️️️Supported

️️️️️️️️️Supported

️️️️️️️️️Supported

Binaural audio

Allows you to play binaural audio tracks.

️️️️️️️️️Supported

️️️️️️️️️Supported

️️️️️️️️️Supported

️️️️️️️️️Supported

️️️️️️️️️Supported

Multiple-track

Allows you to play video files with multiple audio tracks. You can switch audio tracks during playback, such as from English to Chinese.

️️️️️️️️️Supported

️️️️️️️️️Supported

️️️️️️️️️Supported

Not supported

️️️️️️️️️Supported

Background playback

Allows you to continue playing audio streams when the application is switched from the UI to the background.

️️️️️️️️️Supported

️️️️️️️️️Supported

️️️️️️️️️Supported

️️️️️️️️️Supported

N/A

Playback performance

Feature

Description

Android

iOS

Flutter

HarmonyOS

Web

Retry of playback upon failures

Supports automatic retries once the playback fails.

️️️️️️️️️Supported

️️️️️️️️️Supported

️️️️️️️️️Supported

️️️️️️️️️Supported

️️️️️️️️️Supported

Automatic reconnection

ApsaraVideo Player SDK supports automatic reconnection during live streaming.

️️️️️️️️️Supported

️️️️️️️️️Supported

️️️️️️️️️Supported

️️️️️️️️️Supported

️️️️️️️️️Supported

Local caching

Supports the play-and-cache feature for the loop playback of short videos. This feature allows caching during video playback and helps reduce traffic consumption.

️️️️️️️️️Supported

️️️️️️️️️Supported

️️️️️️️️️Supported

️️️️️️️️️Supported

N/A

Preloading

Preloads videos to accelerate the startup of video playback. This feature is an enhancement to the local caching feature.

️️️️️️️️️Supported

️️️️️️️️️Supported

️️️️️️️️️Supported

️️️️️️️️️Supported

️️️️️️️️️Supported

Multi-player playback

Allows you to add multiple players on one UI to simultaneously play videos.

️️️️️️️️️Supported

️️️️️️️️️Supported

️️️️️️️️️Supported

️️️️️️️️️Supported

️️️️️️️️️Supported

Network-adaptive playback of multi-bitrate video streams

Supports seamless multi-bitrate switching of live streams in the HLS and DASH formats.

️️️️️️️️️Supported

️️️️️️️️️Supported

️️️️️️️️️Supported

️️️️️️️️️Supported

️️️️️️️️️Supported

Dynamic frame synchronization

Supports dynamic frame synchronization for live streaming to reduce latency.

️️️️️️️️️Supported

️️️️️️️️️Supported

️️️️️️️️️Supported

️️️️️️️️️Supported

️️️️️️️️️Supported

Interactive features

Feature

Description

Android

iOS

Flutter

HarmonyOS

Web

Subtitles

Allows you to import custom subtitle files.

SubRip Text (SRT), SubStation Alpha (SSA), Advanced SubStation Alpha (ASS), and VTT subtitle files are supported.

SRT, SSA, ASS, and VTT subtitle files are supported.

SRT, SSA, ASS, and VTT subtitle files are supported.

Only subtitle text parsing is supported.

Only Video Text Tracks (VTT) subtitle files are supported.

Video security

Feature

Description

Android

iOS

Flutter

HarmonyOS

Web

Referer blacklist or whitelist

Allows you to configure a Referer blacklist or whitelist to identify the source of a playback request based on the Referer and filter requests based on the blacklist or whitelist.

️️️️️️️️Supported

️️️️️️️️️Supported

️️️️️️️️️Supported

️️️️️️️️️Supported

️️️️️️️️️Supported

HLS encryption

Supports the playback of streams encrypted based on the HLS AES-128 standard.

️️️️️️️️️Supported

️️️️️️️️️Supported

️️️️️️️️️Supported

️️️️️️️️️Supported

️️️️️️️️️Supported

Alibaba Cloud proprietary cryptography

Supports Alibaba Cloud proprietary cryptography for HLS videos, whose URL suffix is .m3u8, and MP4 videos to prevent video leaks and hotlinking.

️️️️️️️️️Supported

️️️️️️️️️Supported

️️️️️️️️️Supported

Not supported

For more information about the browsers that support HTML5, see Browsers supported by the HTML5 player.

Secure download

Allows you to use the specified application to download and encrypt videos.

️️️️️️️️️Supported

️️️️️️️️️Supported

️️️️️️️️️Supported

️️️️️️️️️Supported

N/A

DRM management

Supports Widevine DRM and FairPlay DRM.

️️️️️️️️️Supported

️️️️️️️️️Supported

️️️️️️️️️Supported

Not supported

️️️️️️️️️Supported

Quality monitoring

Feature

Description

Android

iOS

Flutter

HarmonyOS

Web

Log reporting

Allows you to collect tracking information about VOD playback and live streaming based on reported SDK logs.

️️️️️️️️️Supported

️️️️️️️️️Supported

️️️️️️️️️Supported

️️️️️️️️️Supported

️️️️️️️️️Supported

Playback exception troubleshooting

Allows you to locate and troubleshoot playback exceptions by specifying the user or playback session.

The free edition allows you to query data in the previous three days.

The free edition allows you to query data in the previous three days.

The free edition allows you to query data in the previous three days.

The free edition allows you to query data in the previous three days.

The free edition allows you to query data in the previous three days.

Data dashboard

Allows you to view macro statistics such as the number of playback requests and users.

The free edition allows you to query data in the previous three days.

The free edition allows you to query data in the previous three days.

The free edition allows you to query data in the previous three days.

The free edition allows you to query data in the previous three days.

The free edition allows you to query data in the previous three days.

Development support

Feature

Description

Android

iOS

Flutter

HarmonyOS

Web

Data output during audio and video rendering

Supports the output of pulse-code modulation (PCM) and YUV data during rendering.

️️️️️️️️️Supported

️️️️️️️️️Supported

️️️️️️️️️Supported

Not supported

Not supported

Event callbacks

Allows you to set callbacks for playback status, the first audio or video frame that is rendered, the completion of playback, and playback failures.

️️️️️️️️️Supported

️️️️️️️️️Supported

️️️️️️️️️Supported

️️️️️️️️️Supported

️️️️️️️️️Supported

Decoding blacklist

Provides a list of models that do not support hardware decoding, along with optimization support.

️️️️️️️️️Supported

️️️️️️️️️Supported

️️️️️️️️️Supported

Not supported

N/A

Network speed display

Supports the feature of reporting the network speed of a player in real time.

️️️️️️️️️Supported

️️️️️️️️️Supported

️️️️️️️️️Supported

️️️️️️️️️Supported

Supports this feature only for RTS.

UI components

Provides complete UI components that you can use based on your business requirements.

️️️️️️️️️Supported

️️️️️️️️️Supported

️️️️️️️️️Supported

Not supported

️️️️️️️️️Supported

Value-added services

The following tables describe the value-added services of ApsaraVideo Player SDK for web, Android, and iOS. To use value-added services, submit a ticket.

Feature

Description

Android

iOS

Flutter

HarmonyOS

Web

H.265 video playback

Supports the playback of video streams encoded in the H.265 format. This consumes less bandwidth and delivers better playback performance than the playback of video streams encoded in the H.264 format.

Note

To play H.265 videos on web browsers, submit a ticket or contact your Alibaba Cloud account manager.

️️️️️️️️️Supported

️️️️️️️️️Supported

️️️️️️️️️Supported

️️️️️️️️️Supported

️️️️️️️️️Supported

H.266 video playback

Supports the playback of video streams encoded in the H.266 format. This consumes less bandwidth and delivers better playback performance than the playback of video streams encoded in the H.264 or H.265 format.

Note

To play H.266 videos, submit a ticket or contact your Alibaba Cloud account manager.

️️️️️️️️️Supported

️️️️️️️️️Supported

️️️️️️️️️Supported

Not supported

️️️️️️️️️Supported

Advanced adaptive bitrate streaming (ABR) policies

Supports advanced ABR policies. Compared with a general ABR policy, an advanced ABR policy better adapts to multi-bitrate HLS or DASH video streams, significantly reduces the stuttering rate, and improves the average playback bitrate.

️️️️️️️️️Supported

️️️️️️️️️Supported

️️️️️️️️️Supported

️️️️️️️️️Supported

Not supported

On-device super resolution

Allows you to upscale videos from a low resolution to a high resolution. This improves video quality and playback experience.

You can use a video source that has a lower bitrate without compromising playback experience. This helps reduce video transmission costs.

️️️️️️️️️Supported

️️️️️️️️️Supported

Not supported

Not supported

Not supported

Sharpening

Allows you to sharpen the image and highlight the details to improve playback experience.

️️️️️️️️️Supported

️️️️️️️️️Supported

️️️️️️️️️Supported

Not supported

Not supported

Frame interpolation

Allows you to use frame interpolation to fix stuttering when you play low-bitrate videos. This ensures smooth playback experience.

️️️️️️️️️Supported

️️️️️️️️️Supported

️️️️️️️️️Supported

Not supported

Not supported

Audio enhancement

Allows you to use Dolby Atmos and spatial audio technologies to provide immersive user experience.

️️️️️️️️️Supported

️️️️️️️️️Supported

️️️️️️️️️Supported

Not supported

Not supported

Enhanced HTTPDNS

Allows you to implement precise scheduling and real-time resolution for domain names that are accelerated by Alibaba Cloud CDN. This improves network performance.

Note

The enhanced HTTPDNS feature is supported in ApsaraVideo Player SDK V6.7.0 or later. To use the enhanced HTTPDNS feature in ApsaraVideo Player SDK V6.7.0 to V6.11.0, submit a ticket or contact your Alibaba Cloud account manager. If you use ApsaraVideo Player SDK V6.12.0 or later, the enhanced HTTPDNS feature is enabled by default and no application is required.

️️️️️️️️️Supported

️️️️️️️️️Supported

️️️️️️️️️Supported

️️️️️️️️️Supported

Not supported