Transport protocols
HTTP or HTTPS using HTTP protocol v1.1 and Range requests.
Transport Layer Security (TLS) version 1.2 with forward security.
TLS key support 2048 bits for RSA and 256 bits for EC.
TLS does not use any known insecure cryptographic primitives (e.g., RC4 encryption, SHA-1 certificate signatures).
Progressive download
Progressive download of video and audio is supported but below notes apply:
Content which is protected with DRM not supported via progressive download
In-band subtitles not supported via progressive download
Exception is Out-of-band subtitles, because they are supported with both streaming and download as they are handled outside of the media scope
Following combinations are supported:
Container | Audio codecs | Video codecs | DRM | DRM trigger | In-band subtitles |
ISO BMFF | AAC-LC HE-AAC v1 HE-AAC v2 MP3 Dolby AC3 Dolby AC4 Dolby E-AC-3 | H.264 H.265 | None | None | Not supported |
MPEG2-TS | AAC-LC HE-AAC v1 HE-AAC v2 MP3 Dolby AC3 Dolby AC4 Dolby E-AC-3 | H.264 | None | None | Not supported |
WebM | Opus | VP9 | None | None | Not supported |
ADTS / AAC MP3 | AAC-LC HE-AAC v1 HE-AAC v2 MP3 | None | None | None | Not supported |
Adaptive Bitrate streaming protocols
The following Adaptive Bitrate (ABR) streaming protocols MUST be supported:
Streaming Type | MIME-Types | Notes |
Apple HTTP Live Streaming (HLS) | application/vnd.apple.mpegurl application/x-mpegURL | VoD (append-mode window) and Event (sliding window) |
MPEG-DASH | application/dash+xml | Main and Live profiles of MPEG-DASH |
Microsoft Smooth Streaming (MSS) | application/vnd.ms-sstr+xml application/vnd.ms-playready.initiator+xml |
Apple HTTP Live Streaming (HLS)
We support HTTP Live Streaming Protocol version 3, both Live and On-Demand streams.
Support for the following M3U8 playlist tags is available:
#EXTM3U
#EXTINF
#EXT-X-TARGETDURATION
#EXT-X-MEDIA-SEQUENCE
#EXT-X-KEY
#EXT-X-ENDLIST
#EXT-X-STREAM-INF
#EXT-X-DISCONTINUITY
#EXT-X-VERSION
Container | Audio codecs | Video codecs | Encryption | Decryption trigger | In-band subtitles |
MPEG2-TS | AAC-LC HE-AAC v1 HE-AAC v2 MP3 Dolby AC3 Dolby AC4 Dolby E-AC-3 | H.264 H.265 | None | Not supported | |
MPEG2-TS | AAC-LC HE-AAC v1 HE-AAC v2 MP3 Dolby AC3 Dolby AC4 Dolby E-AC-3 | H.264 H.265 | AES-128 | Manifest | Not supported |
ADTS | AAC-LC HE-AAC v1 HE-AAC v2 | None | None | Not supported | |
ADTS | AAC-LC HE-AAC v1 HE-AAC v2 | None | AES-128 | Manifest | Not supported |
MP3 | MP3 | None | None | Not supported | |
MP3 | MP3 | None | AES-128 | Manifest | Not supported |
Restrictions for HLS content
Below is the list of limitations :
Parameter | Requirements |
Frame rate | Up to 60fps |
Audio sampling rate | Up to 48000 Hz |
Number of audio channels | Up to 8 (7+LFE) |
Media segment file size | Up to 15MB |
Segment duration | In range 1s - 12s |
Average bitrate over one segment | Up to 8 Mbit/s (for up to 1080p) |
Manifest file size | Up to 2MB |
Number of tracks in one M3U8 manifest file | Up to 36 |
MPEG-DASH
The following combinations of containers and codecs can be used for MPEG-DASH profiles:
Container | Audio codecs | Video codecs | DRM | DRM Trigger | In-band subtitles |
ISO BMFF | AAC-LC HE-AAC v1 HE-AAC v2 MP3 Dolby AC3 Dolby AC4 Dolby E-AC-3 | H.264 H.265 | None | None | Supported |
ISO BMFF | AAC-LC HE-AAC v1 HE-AAC v2 MP3 Dolby AC3 Dolby AC4 Dolby E-AC-3 | H.264 H.265 | ClearKey PlayReady | EME | Supported |
Profile | Identifier |
ISO Base Media File Format Live | urn:mpeg:dash:profile:isoff-live:2011 |
ISO Base Media File Format Main | urn:mpeg:dash:profile:isoff-main:2011 |
DASH-AVC/264 | urn:com:dashif:dash264 http://dashif.org/guidelines/dash264 |
DASH-AVC/264 SD | http://dashif.org/guidelines/dash264#sd |
DASH-AVC/264 HD | http://dashif.org/guidelines/dash264#hd |
DASH-AVC/264 Main | http://dashif.org/guidelines/dash264main |
DASH-AVC/264 Live | http://dashif.org/guidelines/dash264live |
Restrictions for MPEG-DASH content
Below is the list of limitations :
Parameter | Requirements |
Frame rate | Up to 60fps |
Audio sampling rate | Up to 48000 Hz |
Number of audio channels | Up to 8 (7+LFE) |
Media segment file size | Up to 15MB |
Segment duration | In range 1s - 12s |
Average bitrate over one segment | Up to 8 Mbit/s (for up to 1080p) |
Manifest file size | Up to 2MB |
Number of tracks in one MPD file | Up to 36 |
Microsoft Smooth Streaming (MSS)
Microsoft Smooth Streaming Transport Protocol v2.2, both Live and On-Demand streams.
The following combinations of containers and codecs can be used:
Container | Audio codecs | Video codecs | DRM | DRM Trigger | In-band subtitles |
PIFF v1.1 | AAC-LC HE-AAC v1 HE-AAC v2 | H.264 | None | None | Supported |
PIFF v1.1 | AAC-LC HE-AAC v1 HE-AAC v2 | H.264 | PlayReady | Manifest | Supported |
PIFF v1.1 | AAC-LC HE-AAC v1 HE-AAC v2 | H.264 | PlayReady | WebInitiator | Supported |
Restrictions for Smooth Streaming content
Below is the list of limitations :
Parameter | Requirements |
Frame rate | Up to 60fps |
Audio sampling rate | Up to 48000 Hz |
Number of audio channels | Up to 8 (7+LFE) |
Media segment file size | Up to 15MB |
Segment duration | In range 1s - 12s |
Average bitrate over one segment | Up to 8 Mbit/s (for up to 1080p) |
Manifest file size | Up to 2MB |
Media Source Extensions (MSE)
Media Source Extensions is supported according to the MSE specification.
The following combinations of containers and codecs can be used:
Container | Audio codecs | Video codecs |
MP4 | AAC / MP3 | H.264 / H.265 |
WebM | Opus | VP9 |
MP4 | AAC / MP3 | <no video> |
WebM | Opus | <no video> |
MP4 | <no audio> | H.264 / H.265 |
WebM | <no audio> | VP9 |
MP4 | <no audio> | AV1 |
MP4 | AAC / MP3 | AV1 |
Subtitles and Closed Captioning
To display subtitles or Closed Captions, the apps can use WebVTT to the extent that it is supported by the Chromium engine, and MUST support the EBU-TT-D text track profile, which is a subset of the TTML text track format.
Apps can use in-band and out-of-band subtitles (text tracks) according to the table below:
Media delivery method | In-band subtitles | Out-of-band subtitles |
Progressive playback | Not supported | Supported |
HLS | Not supported | Supported |
MPEG-DASH | Supported | Supported |
Smooth Streaming | Supported | Supported |
MSE | Not supported | Supported |