Page tree

Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

HideElements
metastrue
commentstrue
childpagestrue
toolstrue
labelstrue
likestrue

Specification for Devices

...

2019

Version: 4.13-r1

Date: 2018-0702-2005

CONTENTS

Table of Contents
include^[0-9].*
excludezzzzz(^Apps.Req|^CONTENTS)

1. REVISION HISTORY

Version Number

Chromium

Date

Comment

4.9.0

53.0

2016-08-18

Publication release

4.9.0-r1

53.0

2016-11-04

Changes:

  • Removed text about terminal-defined behaviour in the exit key. The application may now manage this key event freely.
  • The Application MUST handle both VK_BACK_SPACE and VK_BACK.
  • The Application MUST support HD, Full HD or both resolutions
  • Removed mention of viewport META tag
  • The Application MUST explicitly set colors
  • Restructured content
  • Improved clarity and grammar

4.10

56.0

2017-03-16

Publication release

Changes:

4.10-r156.02017-09-14
  • Rebranded to a new company entity
4.1159.02018-02-19

Changes:

  • Updated Chromium version
  • Fixed MSE reference [30]
  • Added sections on HDR and 4K video support
4.1263.02018-04-03

Changes:

  • Added cipher suites requirements: section 3.10.4.

  • Added Advert Insertion performance requirements: section 3.11.2.

  • Devtools must be disabled: section 3.10.5.

  • Added requirement for MPEG-DASH period in section 3.2.3.2.1. 

  • Added requirement for PlayReady automatic license acquisition: 3.5.1.2.

4.1367.02018-07-20

Changes:

4.13-r167.02018-02-05

Changes:

  • Added AV1 codec requirements: section 3.6.2 

  • Added OGG Vorbis audio codec requirements: section 3.6.3

  • Added CustomData and License Acquisition override feature optional requirement 3.5.1.2.1 

  • Removed VP8 requirement.

2. INTRODUCTION

2.1. Scope


This document specifies the requirements that must be met by devices in order to be part of the Vewd Certify Program.

...

Audio:

  • Opus

  • Dolby AC3/E-AC3

  • Ogg Vorbis

Video:

  • H.265

  • VP8

  • VP9

  • AV1

Container:

  • WebM (Only required when VP8 and / or VP9 is supported)

2.4.1.3. Keys on the remote control

...

The device MUST support the following combinations:

 

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 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 E-AC-3

H.264

None

None

Not supported

WebM

Opus

VP8

VP9

None

None

Not supported

ADTS / AAC

MP3



AAC-LC

HE-AAC v1

HE-AAC v2

MP3

None

None

None

Not supported

Info

Note 1: All rules and restrictions for the support of media formats and codecs applies as outlined in the Video and audio formats section.

 

...

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

 

 

3.2.3.1. Apple HTTP Live Streaming (HLS)

...

 

Container

Audio codecs

Video codecs

Encryption

Decryption trigger

In-band subtitles

MIME type

MPEG2-TS

AAC-LC

HE-AAC v1

HE-AAC v2

MP3

Dolby AC3

Dolby E-AC-3

H.264

H.265

None

 

Not supported

application/vnd.apple.mpegurl

application/x-mpegURL

MPEG2-TS

AAC-LC

HE-AAC v1

HE-AAC v2

MP3

Dolby AC3

Dolby E-AC-3

H.264

H.265

AES-128

Manifest

Not supported

application/vnd.apple.mpegurl

application/x-mpegURL

ADTS

AAC-LC

HE-AAC v1

HE-AAC v2

None

None

 

Not supported

application/vnd.apple.mpegurl

application/x-mpegURL

ADTS

AAC-LC

HE-AAC v1

HE-AAC v2

None

AES-128

Manifest

Not supported

application/vnd.apple.mpegurl

application/x-mpegURL

MP3

MP3

None

None

 

Not supported

application/vnd.apple.mpegurl

application/x-mpegURL

MP3

MP3

None

AES-128

Manifest

Not supported

application/vnd.apple.mpegurl

application/x-mpegURL

Info

Note 1: All rules and restrictions for the support of media formats and codecs applies as outlined in the Video and audio formats section.

 

...

A device MUST be able to handle streams with the following 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

 

Devices MAY fail gracefully on streams that do not abide by the following restrictions:

...

The device MUST support the following MPEG-DASH profiles:

 

Profile

Identifier

Reference

ISO Base Media File Format Live

urn:mpeg:dash:profile:isoff-live:2011

[3], section 8.4

ISO Base Media File Format Main

urn:mpeg:dash:profile:isoff-main:2011

[3], section 8.5

DASH-AVC/264

http://dashif.org/guidelines/dash264

urn:com:dashif:dash264

[29], section 6.3

DASH-AVC/264 SD

http://dashif.org/guidelines/dash264#sd

[29], section 7.3

DASH-AVC/264 HD

http://dashif.org/guidelines/dash264#hd

[29], section 8.3

DASH-AVC/264 main

http://dashif.org/guidelines/dash264main

[5], section 8.2

DASH-AVC/264 high

http://dashif.org/guidelines/dash264high

[5], section 8.3

Info

Note that the DVB Profile of MPEG-DASH ([4]section 4.1), identified as “urn:dvb:dash:profile:dvb-dash:2014”, is required by HbbTV 2.x and Freeview Play (UK), and that support for this profile is planned to become mandatory in a later version of this specification.

 

The following combinations MUST be supported by the device:

 

Container

Audio codecs

Video codecs

DRM

DRM Trigger

In-band subtitle

MIME type

ISO BMFF

AAC-LC

HE-AAC v1

HE-AAC v2

MP3

Dolby AC3

Dolby E-AC-3

H.264

H.265

None

None

Supported

application/dash+xml

ISO BMFF

AAC-LC

HE-AAC v1

HE-AAC v2

MP3

Dolby AC3

Dolby E-AC-3

H.264

H.265

ClearKey

PlayReady

Widevine

EME

Supported

application/dash+xml

Info

Note 1: All rules and restrictions to the support of media formats and codecs applies as outlined in the Video and audio formats section.
Note 2: All rules and restrictions for the support of DRM applies as outlined in the DRM and EME sections.

 

...

A device MUST be able to handle streams, with the following 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 10Mbit/s (for 1080p content)

Manifest file size

Up to 2MB

Number of tracks in one MPD file

Up to 36

 

Clients may fail gracefully on streams that do not abide by the following restrictions and are not compliant with the [5] DASH-IF Interoperability Points documentation:

...

NOTE: The version number refers to the MajorVersion and MinorVersion attributes in the manifest, not the Smooth Streaming Protocol Specification version. As of revision 6.0 of the specification, the only valid values are 2.0 and 2.2 (see section 2.2.2.1 in [3]).

 

 

Container

Audio codecs

Video codecs

DRM

DRM Trigger

In-band subtitle

MIME type

PIFF v1.1 [13]

AAC-LC

HE-AAC v1

HE-AAC v2

H.264

None

None

Supported

application/vnd.ms-sstr+xml

PIFF v1.1 [13]

AAC-LC

HE-AAC v1

HE-AAC v2

H.264

PlayReady

Manifest

Supported

application/vnd.ms-sstr+xml

PIFF v1.1 [13]

AAC-LC

HE-AAC v1

HE-AAC v2

H.264

PlayReady

WebInitiator

Supported

application/vnd.ms-playready.initiator+xml

Info

Note 1: all rules and restrictions to the support of media formats and codecs applies as outlined in the Video and audio formats section.

Note 2: All rules and restrictions to the support of DRM applies according to the DRM and WebInitiator sections.

 

...

A device MUST be able to handle streams within the following 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 10Mbit/s (for 1080p content)

Manifest file size

Up to 2MB

 

Clients MAY fail gracefully on streams that do not abide by the following restrictions:

...

Media Source Extensions MUST be supported according to the MSE specification [7]. The following combinations of containers and codecs MUST be supported:

 

Container

Audio codecs

Video codecs

MP4

AAC / MP3

H.264 / H.265

WebM

Opus

VP8 /

VP9

MP4

AAC / MP3

<no video>

WebM

Opus

<no video>

MP4

<no audio>

H.264 / H.265

WebM

<no audio>

VP8 /

VP9

MP4<no audio>AV1
MP4AAC / MP3AV1

 

Note: All rules and restrictions to the support of media formats and codecs in MSE applies as outlined in the Video and audio formats section.

...

Support for in-band and out-of-band text tracks is REQUIRED according to the table below:

 

Media delivery method

In-band subtitles

Out-of-band subtitles

Progressive playback

Not supported

Mandatory

HLS

Not supported

Mandatory

MPEG-DASH

Mandatory

Mandatory

Smooth Streaming

Mandatory

Mandatory

MSE

Not supported

Mandatory

 

3.5. DRM

3.5.1. Content Decryption Modules (CDMs)

...

  • MUST be supported with EME

3.5.1.2. PlayReady

 

  • MUST be supported with EME

  • MUST be supported with WebInitiator

  • PlayReady Header Object v4.0.0.0 MUST be supported [8]    

  • PlayReady Header Object v4.1.0.0 SHOULD be supported [8]     

  • MUST be supported with security level “2000” or higher

3.5.1.2.1. Play Ready - License Acquisition

 

  • Device MUST support automatic license acquisition, supporting the following:

    • License Acquisition URLs provided in the manifest MUST override those provided in the PSSH boxes

    • License Acquisition URL provided in the WebInitiator MUST override those provided in the manifest and the PSSH boxes

  • PlayReady Header Object v4.0.0.0 MUST be supported [8]

  • PlayReady Header Object v4.1.0.0 SHOULD be supported [8]

  • MUST be supported with security level “2000” or higher

  • Reactive License Acquisition (Post-delivery) MAY support CustomData and License Acquisition override mechanism using LA_URL and drm_custom_data variables passed as GET parameters of video source URL to override global settings


3.5.1.3. Widevine

  • Widevine is CONDITIONALLY REQUIRED if the platform has Widevine DRM installed

  • MUST be supported with EME

  • MUST be supported with security level “L1”

  • SHOULD support ”server certificate” and “privacy mode” features

...

  • ISO Base Media File Format ISO/IEC 14496-12:2012

    • Streaming-optimized MP4 (moov box before the mdat box)

    • Unoptimized MP4 (mdat box before the moov box)

  • WebM (CONDITIONALLY REQUIRED)

    • MUST be supported when VP8 or VP9 video codecs are available on the device

  • MPEG2-TS ISO/IEC 13818-1:2000

  • ADTS / AAC (audio elementary stream)

  • MPEG-1 Layer III (audio elementary stream)

...

  • H.264 as specified in [20]

    • The device MUST support all profile/level configurations up to High Profile Level 4.1 included.

  • H.265 as specified in [19] (CONDITIONALLY REQUIRED)

    • H.265/HEVC MUST be supported when the codec is available on the device

    • The device MUST support all profile/level configurations up to High Profile Level 4.1 included.

    • HEVC Main Level 5 and 5.1 (CONDITIONALLY REQUIRED)

      • These two levels MUST be supported when the device supports Ultra HD/4K resolution (2160p)

    • HEVC Main 10 Level 4.1 and 5.1 (CONDITIONALLY REQUIRED)

      • These two levels MUST be supported when the device supports HDR, either HDR10 or HLG10

      • It is ONLY required in the case of MPEG-DASH streaming use-case
  • VP8 as specified in [21] (CONDITIONALLY  REQUIRED)

    • VP8 MUST be supported when the codec is available on the device

  • VP9 as specified in [22] (CONDITIONALLY REQUIRED)

    • VP9 MUST be supported when the codec is available on the device

    • Profile 0 (CONDITIONALLY REQUIRED)

      • When device supports VP9 then VP9 profile 0 MUST be supported

      • The following VP9 levels MUST be supported (described in [18]): 1, 1.1, 2.1, 3, 3.1, 4, 4.1

      • When the device supports video in Ultra HD/4K resolution (2160p) then it MUST support the VP9 levels (described in [18]): 5, 5.1

    • Profile 2 (CONDITIONALLY REQUIRED)

      • When the device supports HDR, either HDR10 or HLG10, then VP9 profile 2 MUST be supported

      • The device MUST support the VP9 levels (described in [18]): 1, 1.1, 2.1, 3, 3.1, 4, 4.1

      • When the device supports video in Ultra HD/4K resolution (2160p), it MUST support the VP9 levels (described in [18]): 5, 5.1

  • AV1 as specified in [21] (CONDITIONALLY  REQUIRED)AV1 MUST be supported when the codec is available on the device

    • Profile 0 (CONDITIONALLY REQUIRED)

    • When device supports AV1 then AV1 profile 0 (MAIN) MUST be supported.

    • The following AV1 levels MUST be supported (described in [21] ): 2.0, 2.1, 3.0, 3.1, 4.0, 4.1

 

Info

VP9 Profile 2 is ONLY required in the case of Media Source Extension(MSE) streaming use-case.

HEVC Main 10 is ONLY required in the case of MPEG-DASH streaming use-case

...

  • HE-AAC v1

  • HE-AAC v2

  • LC-AAC

  • MP3

  • Opus (CONDITIONALLY REQUIRED)

    • Opus MUST be supported when the codec is available on the device

  • Dolby AC3/E-AC3 (CONDITIONALLY REQUIRED)

    • Dolby AC3/E-AC3 MUST be supported when the codecs are available on the device

  • Ogg Vorbis (CONDITIONALLY REQUIRED)

    • Ogg Vorbis be supported when the codecs are available on the device

Annex A specifies the mime-types for audio and video encoding schemes.

...

The device MUST provide standardized key codes which are mapped from a remote control input to a platform key which MUST be sent to the Vewd Core. All “JavaScript key code” constants MUST be available to the web apps in the global JavaScript context.

 

Hardware key

Linux key code

Android key code

JavaScript key code

Requirement

OMI_KEY_LEFT

KEYCODE_DPAD_LEFT

VK_LEFT

Mandatory

OMI_KEY_RIGHT

KEYCODE_DPAD_RIGHT

VK_RIGHT

Mandatory

OMI_KEY_UP

KEYCODE_DPAD_UP

VK_UP

Mandatory

OMI_KEY_DOWN

KEYCODE_DPAD_DOWN

VK_DOWN

Mandatory

Confirm / Select / OK

OMI_KEY_ENTER

KEYCODE_DPAD_CENTER /

KEYCODE_ENTER

VK_ENTER

Mandatory

Back / Return

OMI_KEY_BACK

KEYCODE_BACK

VK_BACK

Mandatory

Exit/Close

N/A

N/A

N/A

CONDITIONALLY REQUIRED*

BLUE

OMI_KEY_BLUE

KEYCODE_PROG_BLUE

VK_BLUE

CONDITIONALLY REQUIRED*

RED

OMI_KEY_RED

KEYCODE_PROG_RED

VK_RED

CONDITIONALLY REQUIRED*

GREEN

OMI_KEY_GREEN

KEYCODE_PROG_GREEN

VK_GREEN

CONDITIONALLY REQUIRED*

YELLOW

OMI_KEY_YELLOW

KEYCODE_PROG_YELLOW

VK_YELLOW

CONDITIONALLY REQUIRED*

Menu

OMI_KEY_MENU

KEYCODE_MENU

VK_MENU

CONDITIONALLY REQUIRED*

0

OMI_KEY_0

KEYCODE_0

VK_0

CONDITIONALLY REQUIRED*

1

OMI_KEY_1

KEYCODE_1

VK_1

CONDITIONALLY REQUIRED*

2

OMI_KEY_2

KEYCODE_2

VK_2

CONDITIONALLY REQUIRED*

3

OMI_KEY_3

KEYCODE_3

VK_3

CONDITIONALLY REQUIRED*

4

OMI_KEY_4

KEYCODE_4

VK_4

CONDITIONALLY REQUIRED*

5

OMI_KEY_5

KEYCODE_5

VK_5

CONDITIONALLY REQUIRED*

6

OMI_KEY_6

KEYCODE_6

VK_6

CONDITIONALLY REQUIRED*

7

OMI_KEY_7

KEYCODE_7

VK_7

CONDITIONALLY REQUIRED*

8

OMI_KEY_8

KEYCODE_8

VK_8

CONDITIONALLY REQUIRED*

9

OMI_KEY_9

KEYCODE_9

VK_9

CONDITIONALLY REQUIRED*

PLAY

OMI_KEY_PLAY

KEYCODE_MEDIA_PLAY

VK_PLAY

CONDITIONALLY REQUIRED*

PAUSE

OMI_KEY_PAUSE

KEYCODE_MEDIA_PAUSE

VK_PAUSE

CONDITIONALLY REQUIRED*

STOP

OMI_KEY_STOP

KEYCODE_MEDIA_STOP

VK_STOP

CONDITIONALLY REQUIRED*

NEXT

OMI_KEY_TRACK_NEXT

KEYCODE_MEDIA_NEXT

VK_TRACK_NEXT

CONDITIONALLY REQUIRED*

PREV

OMI_KEY_TRACK_PREV

KEYCODE_MEDIA_PREVIOUS

VK_TRACK_PREV

CONDITIONALLY REQUIRED*

FF (Fast-Forward)

OMI_KEY_FAST_FWD

KEYCODE_MEDIA_FAST_FORWARD

VK_FAST_FWD

CONDITIONALLY REQUIRED*

REWIND

OMI_KEY_REWIND

KEYCODE_MEDIA_REWIND

VK_REWIND

CONDITIONALLY REQUIRED*

SUBTITLE

OMI_KEY_SUBTITLE

KEYCODE_CAPTIONS

VK_SUBTITLE

CONDITIONALLY REQUIRED*

INFORMATION

OMI_KEY_INFO

KEYCODE_INFO

VK_INFO

CONDITIONALLY REQUIRED*

Info

CONDITIONALLY REQUIRED* - MUST be supported if this particular key is available on the remote control.

...

The User Agent string MUST contain the following components:

 

 

Component

Comment

Mozilla/5.0 (<OS> <Architecture>)

 

The browser states it’s “Mozilla-compatible”

 

 

OS - operating system, e.g. Linux or Android

 

 

Architecture - CPU architecture, e.g. MIPS or ARM

 

AppleWebKit/537.36 (KHTML, like Gecko)

WebKit version

Chrome/53.0.*

The Chrome version

Safari/537.36

Safari version

OPR/40.0.2207.0

Opera Desktop version

OMI/4.9.0.*

The Vewd Core version

Model/<CustomerName>-<DeviceModel>

 

“CustomerName” MUST represent the name of the OEM company

 

 

“DeviceModel” MUST represent generalized or particular model name of the OEM device

 

Info

Note that minor versions of Chrome/ and OMI/ components MAY differ between devices, as it depends on number of builds and fixes delivered in particular project.

 

The entire User Agent string MAY resemble the following example:

Mozilla/5.0 (Linux MIPS) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/53.0.2774.3 Safari/537.36 OPR/40.0.2207.0 OMI/4.9.0.41.E107811.5 Model/MyManufacturerName-MyModelName

 

3.9. Screen resolution

The target device MUST be capable of rendering at one of the following resolutions:

 

1280 x 720

 

 

1920 x 1080

 

  • CONDITIONALLY REQUIRED if the device hardware and platform is capable of Full HD (1080p) or higher rendering

  • CONDITIONALLY REQUIRED if the video plane has Ultra HD/4K (2160p) or better resolution

When a generic browser window is opened, the graphics plane MUST be set up so that the browser can see the best resolution the device is capable of rendering. Note that this MAY be lower than the actual number of pixels in the physical display due to limitations in rendering capabilities or performance.

Depending on the resolution of the graphics plane, logical resolution and CSS pixel resolutions ([28]) WILL be supported as outlined in the following table:

 

Graphics plane resolution

Window resolution

1280 x 720

1920 x 1080

1280 x 720

MUST support at

resolution 1dppx

-

1920 x 1080

MUST support at

resolution 1.5dppx

MUST support at

resolution 1dppx

 

Note that the resolution seen in a generic browser window, and specified in this document, may differ from the resolution seen by apps running in a HbbTV Window or under control of the Vewd App Store, as follows:

 

 

Application window type

Resolution

Generic

According to the table above

TV Store

Always 1280 x 720

HbbTV

Always 1280 x 720

TV Browser UI

According to the table above

 

3.10. Security

3.10.1. Same-Origin policy

...

The device MUST NOT allow any active mixed content in:

 

<script> (src attribute)

 

 

<link> (href attribute) (this includes CSS stylesheets)

 

 

<iframe> (src attribute)

 

 

XMLHttpRequest requests

 

 

All cases in CSS where a URL value is used (@font-face, cursor, background-image, and so on)

 

 

<object> (data attribute)

 

Passive/Display mixed content MUST be allowed on the device but the browser engine SHOULD send a warning to the developer console about mixed content usage.

Passive/Display mixed content types:

 

<img> (src attribute)

 

 

<audio> (src attribute)

 

 

<video> (src attribute)

 

 

<object> subresources (when an <object> performs HTTP requests)

 

3.10.3. Root certificates

...

 The cipher suite requirements are specified in table below and are aligned with HbbTV technical specification [31]. The cipher suites are defined in IETF RFC 5246 ([32]) and IETF RFC 5289 ([33]). Devices should prioritize these cipher suites in the order shown. The device shall implement all cipher suites marked mandatory and shall not implement any cipher suites marked forbidden.

 

Cipher suite

Status

TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256 (0xc02b)

Mandatory

TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 (0xc02f)

Mandatory

TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384 (0xc02c)

Recommended

TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (0xc030)

Recommended

TLS_RSA_WITH_AES_128_CBC_SHA (0x002f)

Mandatory: this is a fallback and should be after all other mentioned ciphers

Cipher suites with anonymous key exchange

(TLS_DH_anon_* suites)

Forbidden

Cipher suites with NULL encryption

Forbidden

Cipher suites using RC4 encryption, for example:

 

TLS_RSA_WITH_RC4_128_SHA (0x0005)

 

 

TLS_RSA_WITH_RC4_128_MD5 (0x0004)

 

Forbidden

Cipher suites using encryption or signing algorithms offering less than 112 bits of security

Forbidden

 

3.10.5 Debugging tools

 Vewd Core supports the development debugging tool (Chrome DevTools) as specified in [25]. This tool can be used only in the development phase and MUST be disabled in the final version of the Vewd Integration. The status of the debugging tool in the Vewd Integration can be checked by visiting “chrome://about” URL.

...

Vewd Software AS reserves the right to review the performance of the Vewd integration running on the target device, including how quickly and smoothly the device handles animations, transitions (scale, rotate, skew, 2d, 3d), rendering full-screen images (jpg, png), 2d/3d canvas, remote control input latency, and video playback response (play, seek, pause).

The device is RECOMMENDED to maintain at least 48fps animating one object using CSS transforms.

The device is RECOMMENDED to maintain at least 26fps animating 20 objects using CSS transforms.

 

3.11.2. Video transition (Advert insertion) performance

...

Whenever a language is specified by the device:

 

The window.navigator.language JavaScript object MUST be set according to specification [9], section “7.1.6.2 Language preferences”.

 

 

Accept languages MUST be consistent between HTTP Accept-Language header and the window.navigator.languages JavaScript object and SHOULD include the current locale.

 

3.12.2. Date and time

The device MUST provide the current date and time, either set automatically, or set manually by the end user, for example, via the Settings menu, in order to successfully open secure web pages.

...

The device MUST open web pages using the following default colors:

 

Property

Default color

Background color

White

Font color

Black

 

3.12.4. Memory

The target device MUST enable and define a browser memory limit of at least 200MB. This includes memory available to the browser to render an app and to allocate the memory the application requests.

...

The device MUST ensure that the following minimum storage is available for apps:

 

64MB for localStorage ([26])

 

 

16MB for Temporary Storage ([26])

 

 

32MB for HTTP cache

 

The memory for the localStorage SHOULD be shared between all apps, and each app MAY use up to 10MB. The localStorage and sessionStorage SHOULD have a limit of 5MB per origin.

...

Text-to-Speech (TTS) is an accessibility feature enabling audible spoken words of the text strings shown in an application. Users with impaired vision disability benefit from using Text-to-Speech. Devices MAY choose to support TTS using WAI-ARIA web standards [35]. WAI-ARIA is a set of standards specifying how web applications can define the semantics of a web page, e.g. define that a link is a command, that an area is content, and navigation sequences between areas.
The hints provided by WAI-ARIA are used by the screen reader to enrich the experience and work accordingly to the expectations of web page authors building accessibility-enabled pages.

4. ABBREVIATIONS

 

AAC

Advanced Audio Coding

AC-3

(Dolby Digital) Audio Compression 3

ADTS

Audio Data Transport Stream

CENC

Common Encryption

CDM

Content Decryption Module

DASH

Dynamic Adaptive Streaming over HTTP

DASH-IF

DASH Industry Forum

DRM

Digital Rights Management

E-AC-3

(Dolby Digital) Enhanced Audio Compression 3

EBU-TT-D

EBU Timed Text format, part D - the format for the distribution of subtitles over IP

EME

Encrypted Media Extensions

HbbTV

Hybrid Broadcast Broadband TV

HDR

High Dynamic Range

HE-AAC

High-Efficiency Advanced Audio Coding

HLS

HTTP Live Streaming

HTTP

Hypertext Transfer Protocol

HTTPS

Hypertext Transfer Protocol Secure

IDR

Instantaneous Decoder Refresh

ISO BMFF

ISO base media file format

KEYIDS

Stream-independent format for specifying a list of key ID(s) for DRM initialization

LC-AAC

Low-Complexity Advanced Audio Coding

LFE

Low Frequency Effects

MPD

DASH Media Presentation Description

MPEG

Moving Picture Experts Group

MPEG2-TS

MPEG-2 Transport Stream

MSS

Microsoft Smooth Streaming

PIFF

Protected Interoperable File Format

SHA

Secure Hash Algorithm

TLS

Transport Layer Security

TTF

TrueType Font

TTML

Timed Text Markup Language

WebM

WebM Stream Format

WebVTT

Web Video Text Tracks format

WOFF

Web Open File Format

WOFF2

WOFF File Format 2.0

 

5. REFERENCES

Anchor
1
1
 [1] HLS, HTTP Live Streaming, RFC 8216 August 2017 https://tools.ietf.org/html/rfc8216

...

Anchor
20
20
[20] Advanced video coding for generic audiovisual services - International Telecommunication Union (ITU-T) Recommendation for h.264 - https://www.itu.int/rec/T-REC-H.264

Anchor
21
21
[21] VP8 Data Format and Decoding Guide - AV1 Bitstream & Decoding ProcessSpecification  https://wwwaomediacodec.rfc-editorgithub.orgio/rfc/rfc6386.txtav1-spec/av1-spec.pdf 

Anchor
22
22
[22] (Draft) VP9 Bitstream and Decoding Process Specification - http://www.webmproject.org/vp9/

...

6.1. MP4 video and audio

6.1.1. H.264 profiles

 

Profile

Level

Codec ID string [rfc6381]

Baseline

3.1

avc1.42E01F

avc3.42E01F

Main

3.1

avc1.4D401F

avc3.4D401F

Main

4

avc1.4D4028

avc3.4D4028

High

4

avc1.640028

avc3.640028

 

6.1.2. H.265/HEVC profiles

...

 

ProfileLevelConstraintsCodec ID string
Main3.1Nonehev1.1.6.L93.00
hvc1.1.6.L93.00
4Nonehev1.1.6.L120.00
hvc1.1.6.L120.00
4.1Nonehev1.1.6.L123.00
hvc1.1.6.L123.00
5.1Nonehev1.1.6.L153.00
hvc1.1.6.L153.00
Main 104.1Nonehev1.2.4.L123.00
hvc1.2.4.L123.00
5.1Nonehev1.2.4.L153.00
hvc1.2.4.L153.00

 

6.1.3. AV1 profiles

 

ProfileLevelConstraintsCodec ID string
Main2.0Noneav01.0.00M.08
2.1Noneav01.0.01M.08
3.0Noneav01.0.04M.08
3.1Noneav01.0.05M.08
4.0Noneav01.0.08M.08
4.1Noneav01.0.09M.08

 

6.1.4. AAC profiles

 

Profile name

Codec ID string

AAC-LC

mp4a.40.2

HE-AAC v1 (SBR)

mp4a.40.5

HE-AAC v2 (SBR+PS)

mp4a.40.29

 

6.1.

...

5. MP3 (MPEG-1 Layer III) profiles

 

Codec ID string

mp4a.69

mp4a.6B

 

6.1.

...

6. Dolby profiles

 

Profile name

Codec ID string

AC-3

ac-3

 

mp4a.a5

E-AC-3

ec-3

 

mp4a.a6

 

6.1.

...

7. Combination examples of media type strings

 

Video codec

Video profile

Audio codec

Audio profile

Media type string

H.264 level 3.1

baseline

AAC

aac_he

video/mp4; codecs="avc1.42E01F, mp4a.40.5"

   

aac_lc

video/mp4; codecs="avc1.42E01F, mp4a.40.2"

  

MP3

 

video/mp4; codecs="avc1.42E01F, mp4a.69"

    

video/mp4; codecs="avc1.42E01F, mp4a.6B"

H.264 level 3.1

main

AAC

aac_he

video/mp4; codecs="avc1.4D401F, mp4a.40.5"

aac_lc

video/mp4; codecs="avc1.4D401F, mp4a.40.2"

MP3

video/mp4; codecs="avc1.4D401F, mp4a.69"

video/mp4; codecs="avc1.4D401F, mp4a.6B"

H.264 level 4.0

main

AAC

aac_he

video/mp4; codecs="avc1.4D4028, mp4a.40.5"

   

aac_lc

video/mp4; codecs="avc1.4D4028, mp4a.40.2"

  

MP3

 

video/mp4; codecs="avc1.4D4028, mp4a.69"

    

video/mp4; codecs="avc1.4D4028, mp4a.6B"

H.264 level 4.0

high

AAC

aac_he

video/mp4; codecs="avc1.640028, mp4a.40.5"

   

aac_lc

video/mp4; codecs="avc1.640028, mp4a.40.2"

  

MP3

 

video/mp4; codecs="avc1.640028, mp4a.69"

    

video/mp4; codecs="avc1.640028, mp4a.6B"

 

6.2. WebM video and audio

 

Video format

Video codec

Audio codec

Media type string

WebM

VP8

Opus

video/webm; codecs="vp8, opus"

 

 

video/webm; codecs="vp8.0, opus"

VP9 profile 0

Opus

video/webm; codecs="vp9, opus"

  

video/webm; codecs="vp9.0, opus"

VP9 profile 2

Opus

video/webm; codecs="vp9.2, opus"

 

6.3. Audio only

 

Audio codec

Audio profile

Media type string

AAC

aac_he

audio/mp4; codecs="mp4a.40.5"

aac_lc

audio/mp4; codecs="mp4a.40.2"

MP3

 

audio/mp4; codecs="mp4a.69"

 

 

audio/mp4; codecs="mp4a.6B"

OGG Vorbis audio/ogg; codecs="vorbis"

 

...

Printable versions of specifications

...

Specification for Devices 2019

Version: 4.13-r1

Data: 2019-02-07

View file
nameVewd Certify for Devices 4.13-r1.pdf
height250

Older versions:

Specification for Devices 2018

Version: 4.13

Date: 2018-07-20

View file
nameVewd Certify for Devices 4.13.pdf
height250

...

 

Specification for Devices 2018

Version: 4.12

Date: 2018-04-03

 

View file
nameVewd Certify for Devices 4.12.pdf
height250

...

Specification for Devices 2018

Version: 4.11

Date: 2017-09-15

View file
nameVewd Certify Devices 4.11.pdf
height250

Specification for Devices 2017

Version: 4.10

Date: 2017-03-16

View file
nameVewd Certify Devices 4.10.pdf
height250

Specification for Devices 2017

Version: 4.9.0-r1

Date:  2016-11-01

View file
nameVewd Certify Devices 4.9.0-r1.pdf
height250