Interactive TV Standards: A Guide to MHP, OCAP, and JavaTV
暫譯: 互動電視標準:MHP、OCAP 與 JavaTV 指南

Steven Morris, Anthony Smith-Chaigneau

買這商品的人也買了...

相關主題

商品描述

Description:

For any digital TV developer or manager, the maze of standards and specifications related to MHP and OCAP is daunting—you have to patch together pieces from several standards to gather all the necessary knowledge you need to compete worldwide. The standards themselves can be confusing, and contain many inconsistencies and missing pieces. Interactive TV Standards provides a guide for actually deploying these technologies for a broadcaster or product and application developer.

Understanding what the APIs do is essential for your job, but understanding how the APIs work and how they relate to each other at a deeper level helps you do it better, faster and easier. Learn how to spot when something that looks like a good solution to a problem really isn’t. Understand how the many standards that make up MHP fit together, and implement them effectively and quickly. Two DVB insiders teach you which elements of the standards that are needed for digital TV, highlight those elements that are not needed, and explain the special requirements that MHP places on implementations of these standards.

Once you’ve mastered the basics, you will learn how to develop products for US, European, and Asian markets--saving time and money. By detailing how a team can develop products for both the OCAP and MHP markets, Interactive TV Standards teaches you how to to leverage your experience with one of these standards into the skills and knowledge needed to work with the critical, related standards.

Does the team developing a receiver have all the knowledge they need to succeed, or have they missed important information in an apparently unrelated standard? Does an application developer really know how to write a reliable piece of software that runs on any MHP or OCAP receiver? Does the broadcaster understand the business and technical issues well enough to deploy MHP successfully, or will their project fail? Increase your chances of success the first time with Interactive TV Standards.

 

Table of Contents:

Preface
Intended audience
How this book is organized
Versions


Chapter 1 - The middleware market
Why do we need open standards?
Driving forces behind open standard middleware
Correcting the fragmented iTV market
What are DVB and CableLabs?
The Digital Video Broadcasting Project
CableLabs
A history lesson - the background of MHP and OCAP
The MHP family tree
JavaTV, a common standard for digital TV
Harmonization - Globally Executable MHP
The hard part of standardization
Intellectual property and royalties
Where do we go from here?
Open vs. proprietary middleware


Chapter 2 - A brief introduction to digital TV
The consumer perspective
Customizable TV
Understanding digital TV services
Producing digital TV content
Elementary streams
Transport streams
The multiplexing process
Carrying transport streams in the network
Energy dispersal
Error correction
Modulation
Cable vs. satellite vs. terrestrial broadcasting
Broadcasting issues and business opportunities
Subscriber management and scrambling
The Subscriber Management System
The return channel - technical and commercial considerations


Chapter 3 - Middleware architecture
MHP and OCAP are not Java
They're not the web either
Working in the broadcast world
The anatomy of an MHP/OCAP receiver
The navigator
Differences in OCAP
A new navigator - the monitor application
Modules in the execution engine
Architectural issues for implementers
Choosing a Java VM
Sun's JVM or a clean-room implementation?
The impact of the Java Community Process
Portability
Performance issues


Chapter 4 - Applications and application management
An introduction to Xlets
Xlet contexts
Writing your first Xlet
Do's and don'ts for application developers
Application signaling
Extending the AIT
Controlling Xlets
Registering unbound applications
Making applications coexist reliably
Pitfalls for middleware developers


Chapter 5 - The JavaTV service model
What happens during service selection?
Abstract services
Managing abstract services in OCAP
Registering applications
Selecting abstract services


Chapter 6 - Resource management issues
Introducing the resource notification API
Using the resource notification API
Handling resource contention
Resource management in OCAP
Resource contention before version I12
Resource contention in later versions
Common features of resource contention handling
An example
Resource management strategies in OCAP
Merging OCAP and MHP resource management


Chapter 7 - Graphics APIs
The display model in a digital TV receiver
HScreens and HScreenDevices
Configuring screen devices
Screen devices and resource management
A practical example of device configuration

HScenes and HSceneTemplates
Creating an HScene
Developing applications using HScenes
The HAVi widget set
Changing the look of your application
HLooks in practice
The behavior of components in MHP and OCAP
Interacting with components
Co-ordinate schemes
Integrating graphics and video
Transparency
Mattes and alpha compositing
Images
Text presentation
Multilingual support
Using fonts
Handling user input
Keyboard events and input focus
Exclusive access to keyboard events
Practical issues for digital TV graphics


Chapter 8 - Basic MPEG concepts in MHP and OCAP
Content referencing in the MHP and OCAP APIs
Locators for DVB streaming content
Locators for streaming content in OCAP systems
Locators for files
Locators for video 'drips'
Locator classes
Creating a locator
Network-bound locators


Chapter 9 - Reading service information
Service information and other system components
Why do we need two SI APIs?
Caching strategies
In-band vs. out-of-band service information
The DVB service information API
The SI database
Making an SI request
Getting the results of a query
SI Events
An example
Monitoring service information
Low-level access to SI data
Using the JavaTV service information API
Basic concepts
Handling the results from an SI query
The core SI API
Access to transport information
Access to information about services
Access to information about events
Monitoring service information
The OCAP SI extensions
System integration
Caching service information
Building the API implementations
Handling the event handlers
Performance issues


Chapter 10 - Section filtering
Hardware vs. software section filters
Using section filters
The section filtering API
Section filters
Types of section filter
Section filter groups
Section filter events
An example
The middleware perspective - event dispatching
Managing section filter resources
Managing section filters in your application
Managing section filters in the middleware


Chapter 11 - Media Control
Content referencing in JMF
Basic JMF concepts
The player creation process
A closer look at data sources
JMF players
The player state machine
Player events
Timebases, clocks and the media time
DSM-CC Normal Play Time
Controls
JMF extensions for digital TV
Using players to control players
A digital TV special case - the video 'drip' content format
JMF in the broadcast world
Getting a player for the current service
Players and service selection
Integrating video with AWT
Subtitles, closed captions, and JMF players
Managing resources in JMF
Restrictions on another resource - tuning
Playing audio from sources other than files


Chapter 12 - DSM-CC and broadcast filesystems
DSM-CC background
Why choose DSM-CC?
Isn't there better documentation?
An overview of DSM-CC
Object carousels
An example object carousel
More than just a filesystem
Normal Play Time
Stream events
The relationship between Normal Play Time and stream events
DSM-CC in detail
Data carousels
Object carousels
Multi-protocol encapsulation
DSM-CC and service information
DSM-CC streams and the PMT
DSM-CC descriptors
DSM-CC messages
Data carousel messages
Object carousel messages
Referring to streams and objects
Transporting object carousels in data carousels
Parsing DSM-CC messages
Using the DSM-CC API
Manipulating DSM-CC objects
Mounting an object carousel
An example
Updating objects
Synchronization - stream events and NPT
Practical issues
Latency and caching strategies
Latency issues and application design
Application management and filesystem issues
System integration issues


Chapter 13 - Security in MHP and OCAP
How much security is too much?
The MHP and OCAP security model
Permissions
Permission request files
Signed and unsigned applications
Signing applications
Hash files
Signature files
Certificates
An example of the signing process
Revoking certificates - the certificate revocation list
Distributing certificate revocation lists
Differences between MHP and OCAP


Chapter 14 - Communicating with other Xlets
Classloader physics in MHP
The inter-Xlet communication model
Using Remote Method Invocation
Problems with RMI
RMI extensions
An example of inter-Xlet communication
Practical Issues
Generating stub classes
Calling remote methods
Arguments and return values
Managing stub classes


Chapter 15 - Building applications with HTML
Application boundaries
The core standards of DVB-HTML
CSS support
Scripting support
Dynamic HTML
Developing applications in DVB-HTML
Navigating around a DVB-HTML application
Special URLs
Displaying an HTML application
Transparent elements
Embedding video in your application
DVB-HTML application signaling
Events and HTML applications
Lifecycle Events
Stream events and DOM events
System events
Coexistence between HTML and Java applications
Accessing Java APIs from ECMAScript
Extending the Document Object Model
Real-world HTML support
The future of DVB-HTML


Chapter 16 - MHP 1.1
The Internet Access Profile
The philosophy of the Internet client API
Using the Internet client API
General operations on Internet clients
Email clients
Web browsers
Newsreaders
A practical example
Inner applications
Creating an inner application
Drawing an inner application
The lifecycle of inner applications
Stored applications
Plug-ins
Plug-ins and application signaling
Building a plug-in
The smart card API
The OCF architecture
Querying the smart card reader
Using card services
A practical example
Implementing a card service
MHP 1.1 in the real world


Chapter 17 - Advanced topics
Using the return channel
Return channel interfaces
Getting access to a return channel interface
Connection-based return channels
Using a return channel
Advanced application management
Getting information about an application
Controlling applications
Managing applications in an OCAP receiver
Tuning to a different transport stream
Network interfaces
Finding the right network interface
Tuning to a new transport stream
Tuning events
Resource management in the tuning API
An example of tuning
Tuning and other components


Chapter 18 - Building a common middleware platform
GEM and other standards
Replacement mechanisms
What GEM means for middleware implementers
Design issues
Porting to a new hardware platform
Customizing our middleware
Developing other middleware solutions
Techniques for improving re-usability
Designing re-usable components
Re-usability outside GEM
An example - the SI component
Limits to re-usability


Chapter 19 - Deploying MHP and OCAP
From vertical markets to horizontal markets
The fight for eyeballs - cable, satellite, and terrestrial
A mandatory middleware platform?
Switching off analog
Making money from interactive TV
The good news
The bad news
Other types of service
Conditional access and horizontal markets
'MHP lite' and low-end solutions
Interoperability
MHP interoperability events and plug-fests
Conformance testing
Anomalies to the conformance testing program
The MHP conformance testing process
Testing MHP - a case study
Testing OCAP
Compliance and quality
Head-end requirements
Remultiplexing issues
Conditional access
Using object carousels
OTA download and engineering channels
Convergence with the Internet - fact or fiction?


Appendix A - DVB service information
The organization of service information
Descriptors
Transmitting an SI table
Program specific information
Conditional access information
A look at DVB service information
Finding information about the network
Bouquets
Describing services in DVB
Describing events
Telling the time
Putting it all together
Optimizing bandwidth usage - the Transport Stream Description Table


Appendix B - ATSC service information
Describing available channels
The Virtual Channel Table
Describing individual channels
Event information
Event information in a satellite network
Extended text descriptions
Extended text messages
Extended descriptions in a satellite network
Parental ratings
Advanced functions - redirecting channels
Telling the time correctly
Putting it all together
PSIP profiles in cable systems
Broadcasting PSIP data

商品描述(中文翻譯)

描述:

對於任何數位電視開發者或經理來說,與 MHP 和 OCAP 相關的標準和規範的迷宮令人畏懼——您必須將幾個標準的片段拼湊在一起,以獲得在全球競爭所需的所有知識。這些標準本身可能令人困惑,並且包含許多不一致和缺失的部分。《互動電視標準》提供了一個實際部署這些技術的指南,適用於廣播商或產品和應用開發者。

了解 API 的功能對您的工作至關重要,但深入了解 API 的運作方式及其相互關係,將幫助您更好、更快、更輕鬆地完成工作。學習如何辨別看似良好的解決方案實際上並不適合問題。了解構成 MHP 的眾多標準如何相互配合,並有效且快速地實施它們。兩位 DVB 內部人士將教您數位電視所需的標準元素,突出那些不需要的元素,並解釋 MHP 對這些標準實施的特殊要求。

一旦您掌握了基礎知識,您將學會如何為美國、歐洲和亞洲市場開發產品——節省時間和金錢。通過詳細說明團隊如何為 OCAP 和 MHP 市場開發產品,《互動電視標準》教您如何利用您在這些標準中的經驗,轉化為與關鍵相關標準合作所需的技能和知識。

開發接收器的團隊是否擁有成功所需的所有知識,還是錯過了在看似不相關的標準中的重要信息?應用開發者是否真的知道如何編寫能在任何 MHP 或 OCAP 接收器上運行的可靠軟體?廣播商是否充分理解商業和技術問題,以成功部署 MHP,還是他們的項目將失敗?通過《互動電視標準》,提高您第一次成功的機會。

目錄:

前言
目標讀者
本書的組織方式
版本

第一章 - 中介軟體市場
為什麼我們需要開放標準?
開放標準中介軟體的驅動力
糾正碎片化的互動電視市場
DVB 和 CableLabs 是什麼?
數位視頻廣播專案
CableLabs
歷史課程 - MHP 和 OCAP 的背景
MHP 家譜
JavaTV,數位電視的共同標準
協調 - 全球可執行的 MHP
標準化的難點
智慧財產權和版稅
我們接下來該怎麼辦?
開放與專有中介軟體

第二章 - 數位電視簡介
消費者視角
可自定義的電視
理解數位電視服務
製作數位電視內容
基本流
傳輸流
多路復用過程
在網路中承載傳輸流
能量分散
錯誤更正
調變
有線與衛星與地面廣播
廣播問題和商業機會
訂閱者管理和加密
訂閱者管理系統
回傳通道 - 技術和商業考量

第三章 - 中介軟體架構
MHP 和 OCAP 不是 Java
它們也不是網路
在廣播世界中工作
MHP/OCAP 接收器的解剖
導航器
OCAP 的差異
一個新的導航器 - 監控應用
執行引擎中的模組
實施者的架構問題
選擇 Java VM
Sun 的 JVM 還是乾淨室實現?
Java 社群過程的影響
可攜性
性能問題

第四章 - 應用程式和應用管理
Xlet 簡介
Xlet 上下文
編寫您的第一個 Xlet
應用開發者的注意事項
應用信號
擴展 AIT
控制 Xlet
註冊未綁定的應用
使應用可靠共存
中介軟體開發者的陷阱

第五章 - JavaTV 服務模型
服務選擇期間發生了什麼?
抽象服務
在 OCAP 中管理抽象服務
註冊應用
選擇抽象服務

第六章 - 資源管理問題
介紹資源通知 API
使用資源通知 API
處理資源競爭
OCAP 中的資源管理
I12 版本之前的資源競爭
後續版本中的資源競爭
資源競爭處理的共同特徵
一個例子
OCAP 中的資源管理策略
合併 OCAP 和 MHP 資源管理

第七章 - 圖形 API
數位電視接收器中的顯示模型
HScreens 和 HScreenDevices
配置螢幕設備
螢幕設備和資源管理
設備配置的實際例子

HScenes 和 HSceneTemplates
創建 HScene
使用 HScenes 開發應用
HAVi 小工具集
改變應用的外觀
HLooks 的實踐
MHP 和 OCAP 中組件的行為
與組件互動
坐標方案
整合圖形和視頻
透明度
遮罩和 alpha 合成
圖像
文本呈現
多語言支持
使用字型
處理用戶輸入
鍵盤事件和輸入焦點
對鍵盤事件的獨佔訪問
數位電視圖形的實際問題

第八章 - MHP 和 OCAP 中的基本 MPEG 概念
MHP 和 OCAP API 中的內容引用
DVB 流媒體內容的定位器
OCAP 系統中流媒體內容的定位器
文件的定位器
視頻「滴」的定位器
定位器類別
創建定位器
網路綁定的定位器

第九章 - 讀取服務信息
服務信息和其他系統組件
為什麼我們需要兩個 SI API?
快取策略
帶內與帶外服務信息
DVB 服務信息 API
SI 數據庫
發送 SI 請求
獲取查詢結果
SI 事件
一個例子
監控服務信息
對 SI 數據的低級訪問
使用 JavaTV 服務信息 API
基本概念
處理 SI 查詢的結果
核心 SI API
訪問傳輸信息
訪問服務信息
訪問事件信息
監控服務信息
OCAP SI 擴展
系統整合
快取服務信息
構建 API 實現
處理事件處理器
性能問題

第十章 - 區段過濾
硬體與軟體區段過濾器
使用區段過濾器
區段過濾 API
區段過濾器
區段過濾器的類型
區段過濾器組
區段過濾器事件
一個例子
中介軟體的視角 - 事件調度
管理區段過濾器資源
在您的應用中管理區段過濾器
在中介軟體中管理區段過濾器

第十一章 - 媒體控制
JMF 中的內容引用
基本 JMF 概念
播放器創建過程
更深入地了解數據源
JMF 播放器
播放器狀態機
播放器事件
時間基準、時鐘和媒體時間
DSM-CC 正常播放時間
控制
數位電視的 JMF 擴展
使用播放器控制播放器
數位電視特殊情況 - 視頻「滴」內容格式
JMF 在廣播世界中的應用
獲取當前服務的播放器
播放器與服務選擇
將視頻與 AWT 整合
字幕、隱藏字幕和 JMF 播放器
在 JMF 中管理資源
對另一個資源的限制 - 調諧
從非文件來源播放音頻

第十二章 - DSM-CC 和廣播文件系統
DSM-CC 背景
為什麼選擇 DSM-CC?
難道沒有更好的文檔嗎?
DSM-CC 概述
對象旋轉木馬
一個示例對象旋轉木馬
不僅僅是文件系統
正常播放時間
流事件
正常播放時間與流事件之間的關係
DSM-CC 詳細信息
數據旋轉木馬
對象旋轉木馬
多協議封裝
DSM-CC 和服務信息
DSM-CC 流和 PMT
DSM-CC 描述符
DSM-CC 消息
數據旋轉木馬消息
對象旋轉木馬消息
引用流和對象
在數據旋轉木馬中傳輸對象旋轉木馬
解析 DSM-CC 消息
使用 DSM-CC API
操作 DSM-CC 對象
掛載對象旋轉木馬
一個例子
更新對象
同步 - 流事件和 NPT
實際問題
延遲和快取策略
延遲問題和應用設計
應用管理和文件系統問題
系統整合問題

第十三章 - MHP 和 OCAP 中的安全性
多少安全性算過多?
MHP 和 OCAP 安全模型
權限
權限請求文件
已簽名和未簽名的應用
簽署應用
哈希文件
簽名文件
證書
簽署過程的示例
撤銷證書 - 證書撤銷列表
分發證書撤銷列表
MHP 和 OCAP 之間的差異

第十四章 - 與其他 Xlet 通信
MHP 中的類加載器物理
Xlet 之間的通信模型
使用遠程方法調用
RMI 的問題
RMI 擴展
Xlet 之間通信的示例
實際問題
生成存根類
調用遠程方法
參數和返回值
管理存根類

第十五章 - 使用 HTML 構建應用
應用邊界
DVB-HTML 的核心標準
CSS 支持
腳本支持
動態 HTML
在 DVB-HTML 中開發應用
在 DVB-HTML 應用中導航
特殊 URL
顯示 HTML 應用
透明元素
在應用中嵌入視頻
DVB-HTML 應用信號
事件和 HTML 應用
生命週期事件
流事件和 DOM 事件
系統事件
HTML 和 Java 應用之間的共存
從 ECMAScript 訪問 Java API
擴展文檔對象模型
現實世界的 HTML 支持
DVB-HTML 的未來

第十六章 - MHP 1.1