1、 ETSI TS 102 543 V1.1.1 (2008-03)Technical Specification Digital Video Broadcasting (DVB);Globally Executable MHP (GEM) Specification 1.2European Broadcasting Union Union Europenne de Radio-Tlvision EBUUER ETSI ETSI TS 102 543 V1.1.1 (2008-03) 2 Reference DTS/JTC-DVB-200 Keywords API, broadcasting,
2、digital, DVB, interaction, multimedia, profile, video 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 - NAF 742 C Association but non lucratif enregistre la Sous-Prfecture de Grasse (06) N 7803/88 Important
3、notice Individual copies of the present document can be downloaded from: http:/www.etsi.org The present document may be made available in more than one electronic version or in print. In any case of existing or perceived difference in contents between such versions, the reference version is the Port
4、able Document Format (PDF). In case of dispute, the reference shall be the printing on ETSI printers of the PDF version kept on a specific network drive within ETSI Secretariat. Users of the present document should be aware that the document may be subject to revision or change of status. Informatio
5、n on the current status of this and other ETSI documents is available at http:/portal.etsi.org/tb/status/status.asp If you find errors in the present document, please send your comment to one of the following services: http:/portal.etsi.org/chaircor/ETSI_support.asp Copyright Notification No part ma
6、y be reproduced except as authorized by written permission. The copyright and the foregoing restriction extend to reproduction in all media. European Telecommunications Standards Institute 2008. European Broadcasting Union 2008. All rights reserved. DECTTM, PLUGTESTSTM, UMTSTM, TIPHONTM, the TIPHON
7、logo and the ETSI logo are Trade Marks of ETSI registered for the benefit of its Members. 3GPPTM is a Trade Mark of ETSI registered for the benefit of its Members and of the 3GPP Organizational Partners. ETSI ETSI TS 102 543 V1.1.1 (2008-03) 3 Contents Intellectual Property Rights11 Foreword.11 1 Sc
8、ope 12 2 References 12 2.1 Normative references .12 2.2 Informative references13 2.3 Superseding references.13 3 Definitions and abbreviations.13 3.1 Definitions13 3.1.1 Definitions from MHP 13 3.1.2 Definitions introduced by GEM13 3.2 Abbreviations .14 4 General considerations and conventions 15 4.
9、1 General considerations .15 4.1.1 Purpose .15 4.1.2 Format.15 4.1.3 Inclusion of MHP features16 4.1.3.1 Subsetting prohibited 16 4.1.3.2 Supersetting permitted 16 4.1.4 Addition of non-GEM interfaces 16 4.1.4.1 DVB-J enumerations.16 4.1.4.2 Competitive APIs16 4.1.4.2.1 Illustration of complementary
10、 functional equivalents .17 4.1.4.2.2 Illustration of Competitive APIs17 4.1.5 Application areas 17 4.1.6 Profiles17 4.1.7 Full conformance with the present document .18 4.2 Conventions18 4.2.1 References within the MHP specification.18 4.2.2 Terminology in the MHP specification.19 4.2.2.1 MHP19 4.2
11、.2.2 Resident navigator.19 4.2.2.3 DVB service19 4.2.3 Inclusion of clauses of the MHP specification19 4.2.4 Conventions within the present document 19 5 Basic architecture .19 6 Transport protocols.19 6.1 Introduction 19 6.2 Broadcast channel protocols.20 6.2.1 MPEG-2 transport stream .20 6.2.2 MPE
12、G-2 sections 20 6.2.3 DSM-CC private data .20 6.2.4 DSM-CC data carousel .20 6.2.5 Object carousel .20 6.2.5.1 Void.20 6.2.5.2 Void.20 6.2.5.3 Loss of carousel behavior21 6.2.6 Protocol for delivery of IP multicast over the broadcast channel .21 6.2.7 Internet Protocol (IP) 21 6.2.8 User Datagram Pr
13、otocol (UDP)21 6.2.9 Service information.21 6.2.10 IP signalling21 6.3 Interaction channel protocols .22 ETSI ETSI TS 102 543 V1.1.1 (2008-03) 4 6.3.1 Network Dependent Protocols 22 6.3.2 Internet Protocol .22 6.3.3 Transmission Control Protocol .22 6.3.4 UNO-RPC.22 6.3.5 UNO-CDR 22 6.3.6 DSM-CC Use
14、r to User22 6.3.7 Hypertext Transfer Protocol (HTTP)23 6.3.7.1 HTTP 1.1.23 6.3.7.2 MHP profile of HTTP 1.0 .23 6.3.7.3 HTTPS 23 6.3.8 Service Specific 23 6.3.9 User Datagram Protocol23 6.3.10 DNS 23 6.4 Transport protocols for application loading over the interaction channel 23 6.4.1 File system imp
15、lemented only by the interaction channel 23 6.4.2 Hybrid between broadcast stream and interaction channel.23 6.5 IPTV protocols .23 7 Content formats24 7.1 Static formats24 7.1.1 Bitmap image formats.24 7.1.1.1 Image encoding restrictions 24 7.1.1.2 JPEG .24 7.1.1.3 PNG.24 7.1.1.4 GIF 24 7.1.2 MPEG-
16、2 I-Frames 24 7.1.3 MPEG-2 Video “drips“.24 7.1.4 Monomedia format for audio clips .24 7.1.5 Monomedia format for text.24 7.2 Broadcast streaming formats 25 7.2.1 Audio 25 7.2.2 Video 25 7.2.3 Subtitles 25 7.3 Resident fonts.25 7.4 Downloadable fonts25 7.4.1 PFR .25 7.4.2 OpenType .25 7.5 Colour rep
17、resentation .26 7.6 MIME types26 8 DVB-HTML.26 9 Application model26 9.1 Broadcast GEM applications26 9.2 DVB-J model27 9.3 DVB-HTML model27 9.4 Inter-application resource management27 9.5 Void27 9.6 Services and applications not related to conventional DVB services.27 9.7 Lifecycle of internet acce
18、ss applications 27 9.8 Plug-ins 27 9.9 Stored and Cached applications28 9.10 Lifecycle interactions between MHP and resident applications.28 9.11 Providers.28 9.12 Impact of graphics constraints on the application model .28 9.13 Unbound Applications28 10 Application signalling 28 10.1 Introduction 2
19、8 10.1.1 Summary of requirements on common signalling 29 10.1.2 Summary of additional signalling for DVB-J applications.29 10.2 Program specific information.29 10.3 Locators within an application description.29 ETSI ETSI TS 102 543 V1.1.1 (2008-03) 5 10.4 Application description 29 10.4.1 Applicatio
20、n description transmission and monitoring 29 10.4.2 Visibility of application description and Tuning 30 10.4.3 Content of the application description 30 10.4.4 Applications from previously selected services31 10.4.5 AIT File 31 10.5 DVB-J specific application description31 10.5.1 General31 10.5.2 Co
21、ntent of DVB-J application description32 10.6 Constant Values33 10.7 Plug-in signalling .33 10.8 Stored applications .33 11 DVB-J platform33 11.1 The virtual machine33 11.2 General issues.33 11.3 Fundamental DVB-J APIs34 11.4 Presentation APIs .34 11.5 Data access APIs 36 11.5.1 Broadcast Transport
22、Protocol Access API36 11.5.2 Support for Multicast IP over the Broadcast Channel.36 11.5.3 Support for IP over the Return Channel36 11.5.4 MPEG-2 Section Filter API36 11.5.5 Mid-Level Communications API36 11.5.6 Persistent Storage API 36 11.6 Service information and selection APIs .37 11.6.1 Signall
23、ing-bound service information API .37 11.6.2 Service selection API37 11.6.3 Tuning API .37 11.6.4 Conditional access API.37 11.6.5 Protocol independent SI API 37 11.6.6 Service discover and selection for IPTV.37 11.6.7 Integration between protocol independent SI API and TV-Anytime37 11.7 Common infr
24、astructure APIs38 11.7.1 APIs to support DVB-J application lifecycle38 11.7.2 Application discovery and launching APIs.38 11.7.3 Inter-application communication API.38 11.7.4 Basic MPEG concepts 39 11.7.5 Resource notification 39 11.7.6 Content referencing.39 11.7.7 Common error reporting .39 11.7.8
25、 Plug-in APIs40 11.7.9 Provider API .40 11.7.10 Content referencing for IPTV .40 11.7.11 TV-Anytime content referencing and metadata40 11.8 Security 40 11.8.1 Basic Security .40 11.8.2 APIs for return channel security .40 11.8.3 Additional permissions classes .40 11.8.4 General Security Issues.40 11
26、.8.5 Cryptographic API40 11.8.6 DVB Extensions for Cryptography.40 11.9 Other APIs41 11.9.1 Timer support41 11.9.2 User settings and preferences API 41 11.9.3 Profile and version properties .41 11.9.4 Non-CA smart card API .41 11.9.5 XML parsing API .41 11.9.5.1 SAX.41 11.9.5.2 JDOM41 11.9.6 MHP ter
27、minal hardware API 41 11.10 Java permissions.41 ETSI ETSI TS 102 543 V1.1.1 (2008-03) 6 11.11 Content referencing 42 11.11.0 General42 11.11.1 Transport stream .42 11.11.2 Network 42 11.11.3 Bouquet.43 11.11.4 Service 43 11.11.4.1 MPEG/GEM specific service43 11.11.4.2 Generic service43 11.11.5 Conte
28、nt referencing for IPTV .43 11.11.6 DVB event 43 11.11.7 MPEG elementary stream.44 11.11.8 File44 11.11.9 Directory.44 11.11.10 Drip feed decoder .44 11.11.11 Irrelevant.44 11.11.12 Methods working on many locator types44 11.11.13 Support for the HTTP Protocol in DVB-J 45 11.11.14 MHP Applications 4
29、5 11.12 Stand-alone Applications .45 11.12.1 Common behavior 45 11.12.2 Stored services 45 11.13 Void45 11.14 Internet Access .45 11.15 APIs defined in OCAP .45 12 Security.46 12.1 Introduction 46 12.1.1 Overview of the security framework for applications.46 12.1.2 Overview of return channel securit
30、y.46 12.1.3 Extensions to MHP application signing framework .46 12.2 Authentication of applications47 12.3 Message transport.47 12.4 Detail of application authentication messages47 12.5 Profile of X.509 certificates for authentication of applications47 12.6 Security policy for applications47 12.6.1
31、General principles.47 12.6.2 Permission request file48 12.6.2.1 File encoding.48 12.6.2.2 File integrity48 12.6.2.3 Example 48 12.6.2.4 Permission request file name and location48 12.6.2.5 Permission Request file.48 12.6.2.6 Credentials 49 12.6.2.7 File Access 49 12.6.2.8 CA API49 12.6.2.9 Applicati
32、on lifecycle control policy49 12.6.2.10 Return channel access policy 49 12.6.2.11 Tuning access policy.49 12.6.2.12 Service selection policy.49 12.6.2.13 Media API access policy.49 12.6.2.14 Inter-application communication policy .49 12.6.2.15 User Setting and Preferences access policy 50 12.6.2.16
33、Network permissions.50 12.7 Example of creating an application that can be authenticated50 12.8 GEM/MHP certification procedures.50 12.9 Certificate management50 12.9.1 Certificate Revocation Lists50 12.9.2 Root certificate management 50 12.9.2.1 Introduction.50 12.9.2.2 Security of the root certifi
34、cate replacement message 50 12.9.2.3 Format of RCMM .51 12.9.2.4 Distribution of root certificate replacement messages 51 ETSI ETSI TS 102 543 V1.1.1 (2008-03) 7 12.9.2.5 RCMM Processing51 12.9.2.6 Example: Renewal of a root certificate .51 12.9.3 Test certificates.52 12.10 Security on the return ch
35、annel52 12.11 The internet profile of X.509 (informative)52 12.12 Platform minima.52 12.13 Plug-ins 52 12.14 Applications loaded from an interaction channel .52 12.15 Stored applications .52 12.16 Void52 12.17 Authentication of unbound applications.52 12.18 Authentication of privileged applications.
36、53 13 Graphics reference model.53 13.1 General .53 13.2 Supported graphics resolutions.53 13.3 Aspect Ratio Support53 13.4 Broadcast streaming formats 53 13.5 Subtitles53 14 System integration aspects .53 14.1 Namespace mapping.53 14.2 Reserved names54 14.3 XML notation.54 14.4 Network signalling (e
37、rror behavior).54 14.5 Text encoding of application identifiers.54 14.6 Filename requirements .54 14.7 Files and file names54 14.8 Locators and content referencing .54 14.9 Content referencing for IPTV.55 14.10 Service identification55 14.11 CA system 55 14.12 Focus management.56 15 Detailed platfor
38、m profile definitions56 15.0 General .56 15.1 PNG - restrictions.58 15.2 Minimum media formats supported by DVB-J APIs .58 15.3 JPEG - restrictions58 15.4 Locale support58 15.5 Video raster format dependencies 58 15.5.1 Standard Definition (PAL/SECAM or NTSC resolution).58 15.5.1.1 Logical pixel res
39、olution.58 15.6 Functional equivalents58 15.6.1 Modifications to MHP Definitions of Functional Equivalents .61 15.6.1.1 Carousel 61 15.6.1.1.1 NSAP Address.61 15.6.1.1.2 Content type descriptor62 15.6.1.1.3 Application Icons Descriptor.62 15.6.1.2 Application Signalling 62 15.6.1.2.1 Transport proto
40、col descriptor 62 15.6.1.3 Application Name Descriptor62 16 Registry of constants 62 16.1 System constants 62 16.2 DVB-J constants.62 17 Internet access clients.62 Annex A (normative): External references; errata, clarifications and exemptions .63 Annex B (normative): Broadcast filesystem and trigge
41、r transport.64 B.0 General .64 ETSI ETSI TS 102 543 V1.1.1 (2008-03) 8 B.1 Service domain.64 B.2 Filesystem requirements.64 B.2.1 Static requirements.64 B.2.1.1 Caching behavior 65 B.2.2 Filesystem updates .65 B.3 Stream description65 B.4 Trigger signalling .66 B.4.0 General .66 B.4.1 Trigger object
42、 .66 B.4.2 Trigger event 66 B.4.2.1 Extrapolation of timebase values 67 B.4.2.2 Monitoring of trigger events .67 Annex C (informative): Informative references 68 C.1 Bibliography from MHP 68 C.2 Other informative references68 Annex D (normative): Text presentation .69 D.1 Font Technology 69 D.2 Hori
43、zontal resolution69 D.3 Text wrapping setting is true69 Annex E (normative): Character set 70 Annex F (informative): Authoring and implementation guidelines 71 Annex G (normative): Minimum platform capabilities72 G.1 Graphics .72 G.1.1 Device resolution for Standard Definition72 G.1.2 Device Resolut
44、ion for Standard Definition 72 G.1.3 Minimum Colour Lookup Table 72 G.2 Audio72 G.3 Video 72 G.4 Resident fonts and text rendering.73 G.5 Input events 73 G.6 Memory 73 G.7 Other resources.73 Annex H (normative): Extensions.74 Annex I (normative): DVB-J fundamental classes.75 Annex J (normative): DVB
45、-J event API76 Annex K (normative): DVB-J persistent storage API.77 Annex L (normative): User settings and preferences API78 Annex M (normative): SI Access API .79 Annex N (normative): Streamed media API extensions .80 N.1 Active Format Definition .80 N.1.1 MHP Signalling for Active Format Definitio
46、n.80 ETSI ETSI TS 102 543 V1.1.1 (2008-03) 9 Annex O (normative): Integration of the JavaTV SI API 81 Annex P (normative): Broadcast transport protocol access 82 P.1 Overview 82 P.2 The org.dvb.dsmcc package .83 P.2.0 General .83 P.2.1 DSMCCObject .83 P.2.1.1 DSMCCObject.getSigners() .83 P.2.1.2 DSM
47、CCObject.getSigners(boolean known_root).83 P.2.2 DSMCCStream.83 P.2.2.1 isAudio() method 83 P.2.2.2 isData() method 83 P.2.2.3 isMPEGProgram() method .84 P.2.2.4 isVideo() method 84 P.2.3 DSMCCStreamEvent .84 P.2.3.1 Lightweight binding of trigger API 84 P.2.3.1.1 DSMCCStreamEvent.getEventList() 84
48、P.2.3.1.2 StreamEvent.getEventId().84 P.2.3.1.3 DSMCCStreamEvent.unsubscribe(int, StreamEventListener)84 P.2.5 ServiceDomain .84 P.2.5.1 ServiceDomain.attach(byte).85 P.2.5.2 ServiceDomain.attach.85 P.2.5.2.1 ServiceDomain.attach(Locator) 85 P.2.5.2.2 ServiceDomain.attach(Locator, int) 85 P.2.5.3 Se
49、rviceDomain.getLocator().85 P.2.5.4 ServiceDomain.getNSAPAddress()85 P.2.5.5 ServiceDomain.getURL(Locator).85 P.2.5.6 ServiceDomain.isNetworkConnectionAvailable()86 P.2.6 ServiceXFRErrorEvent 86 P.2.7 ServiceXFRException86 P.2.8 ServiceXFRReference 86 P.2.9 StreamEvent .86 P.3 Support for Stored Applications.86 Annex Q (normative): Datagram socket buffer control88 Annex R (normative): DVB-J return channel connection management API .89 Annex S (normative): Application listing and launching.90 S.1 Additional database filter types90 Annex T (normative): Permissions.91 Annex