ETSI TS 103 606 V1.2.1 (2024-03)
Hybrid Broadcast Broadband Television; Operator Applications
Hybrid Broadcast Broadband Television; Operator Applications
RTS/JTC-064
General Information
Standards Content (Sample)
TECHNICAL SPECIFICATION
Hybrid Broadcast Broadband Television;
Operator Applications
2 ETSI TS 103 606 V1.2.1 (2024-03)
Reference
RTS/JTC-064
Keywords
broadcasting, DVB, HTML, internet
ETSI
650 Route des Lucioles
F-06921 Sophia Antipolis Cedex - FRANCE
Tel.: +33 4 92 94 42 00 Fax: +33 4 93 65 47 16
Siret N° 348 623 562 00017 - APE 7112B
Association à but non lucratif enregistrée à la
Sous-Préfecture de Grasse (06) N° w061004871
Important notice
The present document can be downloaded from:
https://www.etsi.org/standards-search
The present document may be made available in electronic versions and/or in print. The content of any electronic and/or
print versions of the present document shall not be modified without the prior written authorization of ETSI. In case of any
existing or perceived difference in contents between such versions and/or in print, the prevailing version of an ETSI
deliverable is the one made publicly available in PDF format at www.etsi.org/deliver.
Users of the present document should be aware that the document may be subject to revision or change of status.
Information on the current status of this and other ETSI documents is available at
https://portal.etsi.org/TB/ETSIDeliverableStatus.aspx
If you find errors in the present document, please send your comment to one of the following services:
https://portal.etsi.org/People/CommiteeSupportStaff.aspx
If you find a security vulnerability in the present document, please report it through our
Coordinated Vulnerability Disclosure Program:
https://www.etsi.org/standards/coordinated-vulnerability-disclosure
Notice of disclaimer & limitation of liability
The information provided in the present deliverable is directed solely to professionals who have the appropriate degree of
experience to understand and interpret its content in accordance with generally accepted engineering or
other professional standard and applicable regulations.
No recommendation as to products and services or vendors is made or should be implied.
No representation or warranty is made that this deliverable is technically accurate or sufficient or conforms to any law
and/or governmental rule and/or regulation and further, no representation or warranty is made of merchantability or fitness
for any particular purpose or against infringement of intellectual property rights.
In no event shall ETSI be held liable for loss of profits or any other incidental or consequential damages.
Any software contained in this deliverable is provided "AS IS" with no warranties, express or implied, including but not
limited to, the warranties of merchantability, fitness for a particular purpose and non-infringement of intellectual property
rights and ETSI shall not be held liable in any event for any damages whatsoever (including, without limitation, damages
for loss of profits, business interruption, loss of information, or any other pecuniary loss) arising out of or related to the use
of or inability to use the software.
Copyright Notification
No part may be reproduced or utilized in any form or by any means, electronic or mechanical, including photocopying and
microfilm except as authorized by written permission of ETSI.
The content of the PDF version shall not be modified without the written authorization of ETSI.
The copyright and the foregoing restriction extend to reproduction in all media.
© ETSI 2024.
© European Broadcasting Union 2024.
All rights reserved.
ETSI
3 ETSI TS 103 606 V1.2.1 (2024-03)
Contents
Intellectual Property Rights . 10
Foreword . 10
Modal verbs terminology . 10
1 Scope . 11
2 References . 11
2.1 Normative references . 11
2.2 Informative references . 12
3 Definition of terms, symbols and abbreviations . 13
3.1 Terms . 13
3.2 Symbols . 14
3.3 Abbreviations . 14
4 Overview . 15
4.1 Operator applications (informative) . 15
4.1.1 Scope and motivation. 15
4.1.2 Types of operator applications . 15
4.1.3 Standard operator applications . 16
4.1.3.1 Introduction . 16
4.1.3.2 Features of standard operator applications . 16
4.1.3.3 Design policy for standard operator applications . 16
4.1.3.4 TV channels . 16
4.1.3.5 Activating and launching of standard operator applications . 16
4.1.3.6 User input for standard operator applications . 16
4.1.4 Privileged operator applications . 17
4.1.5 Operator-specific operator applications . 17
4.1.6 Coexistence between multiple types of operator application . 18
4.1.7 Operator applications and channel binding . 18
4.1.8 Enabling operator applications to be installed and run . 18
4.1.9 Number of operator applications . 18
4.2 Architecture (informative) . 18
4.2.1 Introduction. 18
4.2.2 System overview . 19
4.3 Referenced W3C and WHATWG Specifications . 19
4.4 Dependencies . 19
5 User experience (informative) . 20
5.1 Introduction . 20
5.2 Using operator applications . 20
5.2.1 Activation and deactivation . 20
5.2.2 User input . 21
5.3 Displaying operator applications . 22
5.3.1 General visibility of operator applications . 22
5.3.2 Start page . 22 ®
5.3.3 Co-existence of operator application and regular HbbTV applications . 22
5.3.4 Co-existence of operator application and terminal UI . 23
5.4 Design policy . 23
5.4.1 Branding . 23
5.4.2 User interface design constraints . 23
5.5 Further concepts . 23
5.5.1 Channels not offered by the operator . 23
6 Service and application model . 24
6.1 Operator application discovery and installation . 24
6.1.1 Overview . 24
6.1.2 Triggering operator application discovery . 25
6.1.3 Operator application discovery methods . 26
ETSI
4 ETSI TS 103 606 V1.2.1 (2024-03)
6.1.3.1 Introduction . 26
6.1.3.2 Broadcast NIT/BAT with URI_linkage_descriptor with operator FQDN. 26
6.1.3.3 Broadcast NIT/BAT with URI_linkage_descriptor with URI of AIT . 27
6.1.3.4 NIT from CICAM with uri_linkage_descriptor with URI of XML AIT . 27
6.1.3.5 Hardwired in terminal with operator FQDN . 27
6.1.3.6 Hardwired in terminal with URI of XML AIT . 27
6.1.3.7 DNS SRV lookup to a standardized address . 27
6.1.4 DNS SRV lookup process . 27
6.1.5 (XML) AIT acquisition and download . 28
6.1.5.1 XML AIT acquisition . 28
6.1.5.2 AIT Acquisition . 30
6.1.6 Deciding which operator applications to install . 31
6.1.7 Encrypted application package download . 31
6.1.7.1 Introduction (informative) . 31
6.1.7.2 Encrypted application package download via IP . 32
6.1.7.3 Encrypted application package download via DSM-CC object carousel . 32
6.1.7.4 Encrypted application package download from CI Plus AuxFS . 32
6.1.8 Decrypt, verify, unpack and installation of the application package . 32
6.1.9 Installation failures . 33
6.1.9.1 Installation failure overview. 33
6.1.9.2 Failure handling on first-time installation . 33
6.1.9.3 Failure handling when updating an operator application . 33
6.2 Updating operator applications . 34
6.3 Operator application lifecycle . 34
6.3.1 Introduction. 34
6.3.2 Starting and stopping operator applications . 35
6.3.2.1 Summary (Informative) . 35
6.3.2.2 Starting operator applications. 35
6.3.2.3 Stopping operator applications . 35
6.3.2.4 Co-existence of multiple operator applications . 36
6.3.3 Operator application states . 36
6.3.3.1 Introduction . 36
6.3.3.2 Foreground state . 37
6.3.3.3 Background state . 38
6.3.3.4 Transient state . 39
6.3.3.5 Overlaid foreground state . 40
6.3.3.6 Overlaid transient state . 41
6.3.4 Standby states . 41
6.4 UI elements provided by an operator application . 42 ®
6.5 Regular HbbTV application signalling and lifecycle . 43
6.5.1 Application signalling . 43 ®
6.5.2 Starting and stopping regular HbbTV applications . 43 ®
6.5.3 Running regular HbbTV applications with an operator application in the foreground . 44
6.5.4 Application signalling for operator application created channels . 44
6.6 Multiple operator applications . 44
6.6.1 Supported operators . 44
6.6.2 Adding operators and operator applications to terminals. 45
6.6.3 Installed operator applications . 45
6.7 Removal of operator applications . 46
7 Formats and protocols . 46
7.1 Operator application signalling . 46
7.1.1 Launch and startup context signalling . 46
7.1.2 Status launch parameter . 48
7.2 Extensions to broadcast signalling . 49
7.2.1 Application overlay descriptor . 49
7.2.2 Application version descriptor . 49
7.3 Extensions to broadcast-independent application signalling . 50
7.3.1 Minimum application version . 50
7.3.2 Operator application images . 51
7.4 Operator application ZIP File . 51
7.4.1 Operator application ZIP File Format . 51
ETSI
5 ETSI TS 103 606 V1.2.1 (2024-03)
7.4.2 Interoperability Considerations . 52
7.4.3 Operator application ZIP File failure conditions . 52
7.4.4 Application ZIP file contents . 53
7.5 Extensions to DVB-I signalling. 53
7.5.1 Operator application controlling media presentation . 53
7.6 Metadata for operator application created channels . 54
7.6.1 Overview (informative) . 54
7.6.2 DVB-I profile . 54
8 Browser application environment . 54
8.1 Execution model . 54
8.2 DAE specification usage . 55
8.3 New JavaScript APIs . 55
8.3.1 APIs for access to proprietary functions . 55
8.3.1.1 The ProprietaryFunctionProvider class . 55
8.3.1.2 Deprecated functions . 57
8.4 Web APIs . 57
8.4.1 Web Notifications . 57
8.4.1.1 Requirements . 57
8.4.1.2 Usage guidelines . 58
8.5 APIs defined in ETSI TS 102 796 . 58
8.5.1 Modification to terminalChannel . 58
9 System integration . 58
9.1 Media decoder and tuner resource conflict resolution . 58
9.1.1 Overview (informative) . 58
9.1.2 Sharing resources for a video/broadcast object . 59
9.1.3 Sharing resources for other media decoders . 59
9.1.4 Broadcast video presentation and privileged operator applications . 59
9.2 Channel lists (informative) . 60
9.2.1 Background . 60
9.2.2 Operator applications and channel lists . 60
9.2.3 CICAM integration . 62
9.3 Display model . 62
9.4 URLs . 62
9.4.1 Origin for an installed operator application . 62
9.4.2 Referencing installed operator applications and resources . 63
9.5 Access to broadcast carousels . 63
9.6 Operator applications and DVB-I . 63
9.6.1 Overview (informative) . 63
9.6.2 Operator application presentation of DVB-I services . 64
9.6.3 Linkage of both regular and operator applications . 64
9.6.4 Example usage (informative) . 64
9.6.4.1 Example 1 . 64
9.6.4.2 Example 2 . 64
9.7 Parental Controls . 65
9.7.1 General . 65
9.7.2 Examples (Informative) . 66
9.8 WebSocket Server and JSON-RPC Implementation . 67
9.8.1 WebSocket server . 67
9.8.2 Operator application usage . 67
9.8.3 API access . 67
9.9 Operator application presented channels . 68
9.9.1 Overview (informative) . 68
9.9.2 Scope . 69
9.9.3 Operator application video window . 69
9.9.4 API for operator application presented channels . 71
9.9.4.1 Introduction (informative) . 71
9.9.4.2 JSON-RPC usage . 71
9.9.4.2.1 Supported methods . 71
9.9.4.2.2 Request capability negotiation . 71
9.9.4.2.3 Application and terminal responses . 72
ETSI
6 ETSI TS 103 606 V1.2.1 (2024-03)
9.9.4.3 Concepts . 72
9.9.4.3.1 Channel selection and channel sessions . 72
9.9.4.3.2 Channel status . 73
9.9.4.3.3 Session identifier . 73
9.9.4.4 Operator application video window to terminal JSON-RPC requests . 73
9.9.4.4.1 org.hbbtv.ipplayback.statusUpdate . 73
9.9.4.4.2 org.hbbtv.ipplayback.mediaPositionUpdate . 74
9.9.4.4.3 org.hbbtv.ipplayback.setComponents . 75
9.9.4.4.4 org.hbbtv.ipplayback.setTimelineMapping . 78
9.9.4.4.5 org.hbbtv.ipplayback.setPresentFollowing . 79
9.9.4.5 Terminal to operator application video window JSON-RPC requests . 81
9.9.4.5.1 org.hbbtv.ipplayer.selectChannel . 81
9.9.4.5.2 org.hbbtv.ipplayer.stop . 82
9.9.4.5.3 org.hbbtv.ipplayer.play . 83
9.9.4.5.4 org.hbbtv.ipplayer.setVideoWindow . 84
9.9.4.5.5 org.hbbtv.ipplayer.setRelativeVolume . 85
9.9.4.5.6 org.hbbtv.ipplayer.pause. 86
9.9.4.5.7 org.hbbtv.ipplayer.resume . 87
9.9.4.5.8 org.hbbtv.ipplayer.seek . 88
9.9.4.5.9 org.hbbtv.ipplayer.selectComponents . 88
9.9.4.5.10 org.hbbtv.ipplayer.resolveTimeline . 89
9.9.5 Regular application control of media presentation . 90
9.9.6 Resource management considerations . 93
10 Capabilities . 94
10.1 Terminal capabilities and functions . 94
10.1.1 Component selection. 94
10.1.1.1 Introduction . 94
10.1.1.2 Component selection via user preferences . 94
10.1.1.3 Direct component selection via BroadcastSupervisor class . 95
10.1.1.4 Standard direct component selection . 95 ®
10.1.1.5 Clarification of component selection by regular HbbTV applications . 96
10.1.1.6 Integration between MSE-based media playback and terminal user interface for component
selection . 96
10.1.2 Minimum terminal capabilities . 97
10.1.3 User Input . 97 ®
10.1.4 HbbTV reported capabilities and option strings . 99
11 Security. 99
11.1 Overview . 99
11.2 Device and Server Authentication . 99
11.2.1 Mutual TLS Authentication . 99
11.2.1.1 Overview . 99
11.2.1.2 Client certificate . 100
11.2.1.2.1 Client certificate overview. 100
11.2.1.2.2 Operational considerations . 101
11.2.1.2.3 Client Root and Intermediate Certificate Authority Certificate Profiles . 101
11.2.1.2.4 Client certificate profile . 102
11.2.2 Device authentication in broadcast (informative) . 102
11.3 Operator application authentication . 102
11.3.1 Encrypted application package overview . 102
11.3.2 Operator Signing Certificate . 103
11.3.3 Terminal Packaging Certificate . 104
11.3.4 Encrypted application packaging process . 105
11.3.4.1 Encrypted application packaging process overview . 105
11.3.4.2 Operator application signing process . 106
11.3.4.3 Process for encrypting an application package . 106
11.3.4.4 Process for decrypting an application package . 107
11.3.4.5 Application ZIP package signature verification process . 108
11.4 CI Plus . 109
11.4.1 CI Plus communication . 109
11.4.2 IP Delivery CICAM Player Mode . 109
ETSI
7 ETSI TS 103 606 V1.2.1 (2024-03)
12 Privacy . 109
13 Media synchronization . 110
14 Companion screens. 110 ®
15 Communication with regular HbbTV applications . 110
15.1 General . 110
15.2 Service endpoints provided by the terminal . 110
15.3 Handling of new connections from clients . 111
15.4 Connection Pairing . 111
15.5 Paired Connections . 111
Annex A (normative): OIPF specification profile . 113
A.1 Detailed section-by-section definition for volume 5 . 113
A.2 Modifications, extensions and clarifications to OIPF volume 5 . 120
A.2.1 Configuration class . 120
A.2.1.1 Constants . 120
A.2.1.2 Properties . 122
A.2.1.3 Methods . 122
A.2.1.4 Replacing UI relating to scheduled recordings . 123
A.2.1.4.1 Messages . 123
A.2.1.4.2 Conflict resolution (informative) . 124
A.2.1.5 Replacing reminders (informative) . 124
A.2.2 Application class . 124
A.2.2.1 Properties . 124
A.2.2.2 Methods . 126
A.2.2.3 Events . 129
A.2.3 ChannelConfig class . 129
A.2.4 Operator applications and the video/broadcast object . 130
A.2.4.1 Modifications to the state machine . 130
A.2.4.2 Modification to onChannelChangeSucceeded . 131
A.2.5 The BroadcastSupervisor class . 131
A.2.6 oipfDrmAgent . 136
A.2.6.1 Shared use of DRM and
...








Questions, Comments and Discussion
Ask us and Technical Secretary will try to provide an answer. You can facilitate discussion about the standard in here.
Loading comments...