当前位置:首页 >> 信息与通信 >>

数字电视数据广播中对象轮播发生器的实现


上海交通大学 硕士学位论文 数字电视数据广播中对象轮播发生器的实现 姓名:王先农 申请学位级别:硕士 专业:电子与通信工程 指导教师:李建华;王福良 20081001

上海交通大学工程硕士学位论文

数字电视数据广播中对象轮播发生器的实现 摘 要
电视经历了黑白、彩色,又从模拟逐步向数字过渡、标清向高清过 渡,极大的丰富了人民

的生活,同时随着社会的进步,信息变得越来越 重要。传统的电视广播已经不仅仅停留在传达党和政府信息、家庭视听 娱乐上,通过数据广播,将在现代社会的信息传播中占据了越来越重要 的地位。 通过数字电视前端的数据广播系统和终端的机顶盒、数字电视一体 机等终端接收设备的内置软件接收系统,可以给用户带来阳光政务、气 象预报、股票信息、新闻时事、教育、游戏、网上购物、银行结算等等 功能,用户可以花最小的代价获得最多的服务,真正方便到每个家庭的 衣食住行。而数据广播系统和终端接收系统的关键部件,就是前端数据 广播系统中的对象轮播发生器(OCG) ,通过 OCG 把各种信息、程序发 给终端的中间件,然后在电视机上表现出来。 本文主要是围绕数字电视及其相关的标准来研究,首先介绍了数字 电视的组成,包括前端播发系统和终端接收系统、数字电视的标准等, 然后重点介绍 MPEG2 传输标准、DSM-CC 标准和 DVB 数据广播协议, 其中数据广播中有 5 种数据播发机制,数据管道、数据流、多协议封装、 数据轮播和对象轮播,对象轮播是最上层最重要的一种机制,通过对象 的播发,可以实现各种功能,尤其是现在大家都非常关注的增值业务。 本文研究了对象轮播的国家标准, 并给出了一种 OCG 的实现方案和性能 方面的测试数据,这个 OCG 的方案已经成为实用的产品,配合终端的中 间件,在市场上得到了大规模的应用。 关键词:数字电视、数据广播、对象轮播、中间件

上海交通大学工程硕士学位论文

THE RESERCH AND IMPLEMENT OF OBJECT CAROUSEL GENERATOR IN DATA BROADCAST OF DVB

Abstract
The television developed through B/W-TV to color-TV, analog TV to digital TV, standard-definition to high-definiton, and fully entertained the people’s life. With the society’s continuous progression, informations become more and more important. The digital video broadcast is not only bringing the voice of our government to people, make home entertainments. By using the data broadcast, it also acted as the most important roles to spread information everywhere in modern society. With digital video broadcast headend system and terminal set-top-box or integrated digital TV set’s internal software receiver system(middle ware), the digital TV system can bring people the government’s information, weather forecast, stock information, NEWS, education, games, online shopping, online payment etc. People can spend less and get more service. As the key component of the data broadcast system, the object carousel generator (OCG) brings information and executable programs to terminal’s middle-ware system, display or run it on the TV’s screen. This paper mainly focused on the researches of the digital video broadcst and data broadcast standards. First introduce the DTV’s structure include the broadcast system and receiver system. Next describe the MPEG2 transmit protocaol, DSM-CC standards and DVB data broadcast standards. In DVB system there are 5 protocaols: Data Piping, Data Stream, Multiprotocol Encapsulation, Data Carousel and Object Carousel. The Object Carousel is the most important protocol and described in a separated chapter. Successively present an OCG principle researched by our team and the test result. This OCG product was widely in commercial using already with the Middle-ware system. KEY WORDS: digital TV,data broadcasting,object carousel,middle-ware

1

上海交通大学工程硕士学位论文

上海交通大学 学位论文原创性声明

本人郑重声明:所呈交的学位论文,是本人在导师的指导下, 独立进行研究工作所取得的成果。除文中已经注明引用的内容外,本 论文不包含任何其他个人或集体已经发表或撰写过的作品成果。 对本 文的研究做出重要贡献的个人和集体,均已在文中以明确方式标明。 本人完全意识到本声明的法律结果由本人承担。

学位论文作者签名:王先农

日期: 年 月 日

2

上海交通大学工程硕士学位论文

上海交通大学 学位论文版权使用授权书

本学位论文作者完全了解学校有关保留、使用学位论文的规定, 同意学校保留并向国家有关部门或机构送交论文的复印件和电子版, 允许论文被查阅和借阅。 本人授权上海交通大学可以将本学位论文的 全部或部分内容编入有关数据库进行检索,可以采用影印、缩印或扫 描等复制手段保存和汇编本学位论文。 保密□,在 本学位论文属于 不保密□。 (请在以上方框内打“√” ) 年解密后适用本授权书。

学位论文作者签名:王先农

指导教师签名:李建华

日期: 年





日期:







3

淘宝网购物商城

淘宝网购物

http://www.521taobao.com/

上海交通大学工程硕士学位论文

第一章 绪论
广播电视正在迅速的从模拟走向数字时代,数字电视的飞速发展己经极大地超 出了人们的想象。作为世界用户最多的国家,中国已经确定了在近期内全面转向数字 电视,有线电视将在 2015 年前全面转成数字电视,停播模拟信号,地面无线广播电 视也正在积极转向数字,并且制定了中国的制式标准,卫星数字电视广播随着直播卫 星的发射成功,将覆盖中国大地。

1.1 数字电视的优越性
数字电视之所以得到人们青睐,不仅仅因为它有个时髦的词“数字” ,而是具有 三大优越性: ① 增加节目频道,减少传输成本, :由于数字电视是以压缩方式传播节目内容, 使得其传输所需要的带宽比模拟电视小的多。 以前一个模拟频道传输所需的带宽可以 用来传输 6~8 个数字频道,因而在不增加带宽的情况下,用数字电视传输方式可以 大大节省因增加电视节目频道而需要的传输成本,提高经济效益。 ② 优美的音质和清晰的图像:由于采用数字形式传输和广播,电视的音视频信 息在播发过程中几乎没有损失,且数字传播还可以采用超前纠错方式,接收端接收到 的电视图像便极为清晰,电视伴音(音频流)以立体声或家庭影院环绕立体声的形式 与电视图像一起播出,使得人们可以欣赏到清新悦耳的电视节目,感受到电视节目给 娱乐和消遣带来的美妙享受。 ③ 节目形式丰富,增加互动性:由于数据能和音视频流一起混合传播,这就为 交互电视提供了必要的技术基础,有了增强电视互动性的可能。数据的传输和应用, 使得能在数字电视的接收设备上运行很多交互式的应用程序, 如电子节目菜单 (EPG) 、 股票信息、游戏等,而且还可以开辟新的节目,如即时节目点播(VOD)和准即时节 目点播(NVOD)等。 借助于数字电视的数据传输功能,数据广播是一种能将文本、图形、视频、音频、 数据等传输到诸如 PC、机顶盒等设备的一项技术。数据广播服务商可以从因特网或 其他途径获取大量的信息,通过数字广播信道,将丰富的多媒体信息送到用户家中。 这种数据传播方式不仅信源丰富,而且还能避免信道拥堵、不能保存等短处,因而继 广播电视和互联网之后被称为第五媒体。

1

淘宝网购物商城

淘宝网购物

http://www.521taobao.com/

上海交通大学工程硕士学位论文

1.2 数字电视结构
数字电视由几大部分组成,分别是数字电视台、数字发射前端、广播网络和数字 电视用户等(见图 1-1) : 数字电视台:由数字摄像机、演播室编录播设备以及数据业务和条件接收等组成。 节目源分为高清、标清等视音频节目等,在经过 MPEG2、MPEG4、VC-1 或 H.264、AVS 等方式的编码压缩和复用后由原始的 SDI 格式变换成压缩的 ASI 数据流, 传送到数字 发射前端。 数字发射前端:接收到数字电视台和其它信号源的节目(包括卫星下行信号、国 家/省/市光纤、微波干线传输信号等) ,通过再编码、复用、CA 加扰、插播当地节目 流、数据信息等,由信道调制器,按卫星广播、地面数字广播、有线网络信道等方式 调制,送到广播网络。 广播网络:目前主要有卫星广播、地面广播和有线广播等组成。 数字电视用户端:由机顶盒(支持卫星、地面和有线等)显示器(传统模拟电视 机等)或集成了机顶盒的电视一体机组成。

图 1-1 数字电视组成结构 Fig 1-1 Structure of Digital TV system

数字电视数据广播前端播发结构如图 1-2 所示。 数据广播系统(DBS)由 SI 编辑器、EPG 编辑器、SI 生成器、OC 发生器(OCG) 、 机顶盒升级器(SSU)以及应用(新闻、天气预报、网页等)等模块组成,生成的 TS

2

淘宝网购物商城

淘宝网购物

http://www.521taobao.com/

上海交通大学工程硕士学位论文

流由复用器加入到一个或多个数字频道中。
SI编辑器 EPG编辑器

文件系统

数据库

Webgetter, Epgfilter Webtranslater,Ums

SI生成器

OCG(DC), SSU 互联网 News,Weather,Stock,WebPage

D B S

Others

图 1-2 前端数据广播结构 Fig1-2 structure of data broadcastin

1.3 机顶盒
数字电视机顶盒接收数字电视节目、处理数据业务和完成多种应用的解析。信源 在进入有线电视网络前完成两级编码,一是传输用的信道编码,另一级是音、视频信 号的信源编码和所有信源封装成传输流。与前端相应,接收端机顶盒首先从传输层提 取信道编码信号,完成信道解调; 其次是还原压缩的信源编码信号,恢复原始音、视 频流,同时完成数据业务和多种应用的接收、解析。[1] 机顶盒由高频头、信道解调器、信源解复用器、MPEG-2 解码器、视频编码器、 音频 D/A、嵌入式 CPU 系统和外围接口、条件接收模块等组成。具有交互功能的机顶 盒则需回传通道。 高频头接收来自广播网络的高频信号,通过解调器完成信道解码,从载波中分离 出包含音、视频和其它数据信息的传送流(TS)。传送流中一般包含多个音、视频流及 一些数据信息。解复用器则用来区分不同的节目,提取相应的音、视频流和数据流, 送入 MPEG-2 解码器和相应的解析软件,完成数字信息的还原。对于付费电视,条件 接收模块对音、视频流实施解扰,并采用含有识别用户和进行记账功能的智能卡,保 证合法用户正常收看。MPEG-2 解码器完成音、视频信号的解压缩,经视频编码器和

3

淘宝网购物商城

淘宝网购物

http://www.521taobao.com/

上海交通大学工程硕士学位论文

音频 D/A 变换,还原出模拟音、视频信号,在常规彩色电视机上显示高质量图像,并 提供多声道立体声节目。
1.3.1 机顶盒关键技术

A.机顶盒硬件技术 (1)信道解调技术: 国际、国内标准均规定,在有线网络中传输数字电视及增值 业务采用 QAM 调制方式,其中 16QAM、32QAM、64QAM 必选,128QAM 和 256QAM 可选。 由于有线网络信道质量好,只用 RS 编码作为纠错编码。 (2)信源解码技术: 模拟信号数字化后,信息量激增,必须采用相应的数据压缩 标准。数字电视广播采用 MPEG-2 视频压缩标准,适用多种清晰度图像质量。音频目 前则有 AC-3 和 MPEG-2 两种标准。信源解码器必须适应不同编码策略,正确还原原始 音、视频数据。 (3)大规模集成芯片技术: 为实现实时的解复用和数据信息处理,目前的系统大 多采用专用芯片,将 CPU 内核与 MPEG-2 传输流解复用器,DVB 通用解扰器,MPEG 音 视频解码器,NTSC/PAL 编码器集成,形成 STB 的核心芯片。 (4)上行数据的调制编码: 开展交互式应用, 需要考虑上行数据的调制编码问题。 目前普遍采用的有 3 种方式,采用电话线传送上行数据,采用以太网卡传送上行数据 和通过有线网络传送上行数据。

4

淘宝网购物商城

淘宝网购物

http://www.521taobao.com/

上海交通大学工程硕士学位论文

图 1-3 机顶盒结构 Fig1-3 Structure of Set-top Box

1.3.2 机顶盒软件结构

广播数字化后,数字电视技术中软件技术占有更为重要的位置。除了音视频的解 码由硬件实现外,包括电视内容的重现、操作界面的实现、数据广播业务的实现,直 至机顶盒和个人计算机的互联以及和 Internet 的互联都需要由软件来实现。 除去硬件,第一层软件提供操作系统内核以及各种硬件驱动程序,第二层中间件 将应用软件与依赖于硬件的底层软件分隔开来,使应用不依赖于具体的硬件平台,第 三层应用软件包括本机存储的应用和用户即时下载的应用。 (1)硬件驱动层软件: 驱动程序驱动硬件功能,如射频解调器、传输解复用器、 A/V 解码器、OSD、视频编码器等。 (2)实时操作系统: 与 PC 操作系统不同, 机顶盒中的操作系统采用实时操作系统 (RTOS),可以在实时的环境中工作,并能在较小的内存空间中运行。目前流行的实时 操作系统有 VxWorks、Psos、OS20、Windows CE 等。这些操作系统各有所长,在机顶

5

淘宝网购物商城

淘宝网购物

http://www.521taobao.com/

上海交通大学工程硕士学位论文

盒中都有应用。 (3)中间件: 在开发机顶盒上层应用中常常会面对如下问题: 实时多任务操作系 统,硬件平台原理细节,复杂的行业标准,繁杂的用户界面以及实用功能等各项跨行 业的难题。为了解决上述问题,中间件技术应运而生,并成为数字电视核心技术,也 就是我们前面提到的开放式业务平台。 中间件是在数字电视接收机的应用程序和操作 系统、 硬件平台之间嵌入的一个中间层, 定义一组较为完整的、 标准的应用程序接口, 使应用程序独立于操作系统和硬件平台,从而将应用的开发变得更加简捷,使产品的 开放性和可移植性更强。它通常由 Java 虚拟机、网络浏览器、图像与多媒体模块等 组成。开放的业务平台上的特点在于产品的开发和生产以一个业务平台为基础,开放 的业务平台为每个环节提供独立的运行模式,每个环节拥有自身的利润,能产生多个 供应商。只有采用开放式业务平台才能保证机顶盒的扩展性,保证投资的有效回收。 (4)上层应用软件: 执行服务商提供的各种服务功能,如: 电子节目指南、准视 频点播、数据广播、IP 电话和可视电话等。上层应用软件独立于 STB 的硬件,它可 以用于各种 STB 硬件平台,消除应用软件对硬件的依赖。 在本项目中采用的机顶盒硬件平台是意法半导体公司的 STi5105 主芯片, 软件平 台为上海蓝信软件技术有限公司开发的中间件。中间件的结构如图 1-4 所示。

应用程序系统

EPG

浏览器

应用程序
应用编程接口

Java虚拟机
交互媒休平台 系统

网页解析引擎 核心模块

应用程序管理器

MBT系统移植接口

实时操作系统
驱动及系统 资源

CA模块

驱动资源模块

驱动资源模块

图 1-4 中间件平台结构
Fig1-4 Structure of Middle-ware

6

淘宝网购物商城

淘宝网购物

http://www.521taobao.com/

上海交通大学工程硕士学位论文

1.4 本文组织结构
第一章绪论简单介绍了数字电视的大致情况以及组成网络的结构、接收端的硬 件、软件结构,说明了在数字电视中数据广播实施的基础和优势。 第二章介绍了相关的国内外数字电视的标准,中间件标准等情况。 第三章介绍了数字电视数据广播方面的标准, 包括 MPEG2 传输、 DSM-CC、 DVB 对象轮播等标准。 第四章提出了前端 OC 发生器的一种开发实现实例,并且已经成为产品,在国内 市场上得到了实际的应用。 第五章给出了上述 OC 发生器的界面设计和内部测试结果,证明其是个完整、成 熟的产品。 第六章对本文做了总结。

7

淘宝网购物商城

淘宝网购物

http://www.521taobao.com/

上海交通大学工程硕士学位论文

第二章 数字电视标准
模拟电视有 PAL、NTSC 和 SECAM 三种制式,与此类似,在数字化的进程之中也曾 经形成过几个不同的标准。日本、欧洲、美国都曾经提出自己完整的数字电视标准, 但是由于市场竞争和世界格局的影响, 在我国只有欧洲的标准在卫星和有线传输方面 得到了推广和应用。在地面开路播出的数字电视标准方面,几家国内的大学和科研机 构还在做一些研究,目前也已经达成一个最后的标准。 由于应用环境和商业的运作模式的不同, 数据在卫星和有线传输的方面应用的比 较广泛,而地面播出的数字电视的主要关注点在于移动接收和高清晰度播出等方面。 下面介绍几种标准情况:

2.1

美国数字电视标准 ATSC
美国地面电视广播迄今仍占其电视业务的一半以上,因此,美国在发展高清晰度

电视时首先考虑的是如何通过地面广播网进行传播, 并提出了以数字高清晰度电视为 基础的标准 ATSC(Advanced Television System Committee 先进电视制式委员会)。 美国 HDTV 地面广播频道的带宽为 6MHz,调制采用 8VSB。预计美国的卫星广播电视会 采用 QPSK 调制,有线电视会采用 QAM 或 VSB 调制。 ATSC 数字电视标准由四个分离的层级组成,层级之间有清晰的界面。最高为图 像层,确定图像的形式,包括象素阵列、幅型比和帧频。接着是图像压缩层,采用 MPEG2 压缩标准。再下来是系统复用层,特定的数据被纳入不同的压缩包中,采用 MPEG2 压缩标准。最后是传输层,确定数据传输的调制和信道编码方案。对于地面 广播系统,采用 Zenith 公司开发的 8-VSB 传输模式,在 6MHz 地面广播频道上可实 现 19.3Mb/s 的传输速率。 该标准也包含适合有线电视系统高数据率的 16-VSB 传输模 式,可在 6MHz 有线电视信道中实现 38.6 的传输速率。 下面两层共同承担普通数据的传输。 上面两层确定在普通数据传输基础上运行的 特定配置,如 HDTV 或 SDTV,还确定 ATSC 标准支持的具体图像格式,共有 18 种 (HDTV6 种、SDTV12 种) ,其中 14 种采用逐行扫描方式。

2.2

日本数字电视标准 ISDB
日本数字电视首先考虑的是卫星信道,采用 QPSK 调制。并在 1999 年发布了数

字电视的标准 ISDB。ISDB 是日本的 DIBEG(Digital Broadcasting Experts Group)数 字广播专家组制订的数字广播系统标准, 它利用一种已经标准化的复用方案在一个普 通的传输信道上发送各种不同种类的信号, 同时已经复用的信号也可以通过各种不同 的传输信道发送出去。ISDB 具有柔软性、扩展性、共通性等特点,可以灵活地集成

8

淘宝网购物商城

淘宝网购物

http://www.521taobao.com/

上海交通大学工程硕士学位论文

和发送多节目的电视和其它数据业务。

2.3

欧洲数字电视标准 DVB
欧洲 DVB 方式规划最早开始于 1993 年的 9 月,包括了欧洲几十个国家的大约

200 个组织参加, 其中既有设备制造商、 广播电视运营商, 也有大学和研究单位。 DVB 组织的目的是制订欧洲的数字电视标准,并且向世界推广。 DVB 标准的核心技术包括了以下的几点: ①系统采用 MPEG 压缩的音频、视频及数据格式作为数据源; ②系统采用公共 MPEG-2 传输流 TS 复用方式; ③系统采用公共的用于描述广播节目的系统服务信息 SI; ④系统的第一级信道编码采用 RS 前向纠错编码保护; ⑤调制与其他附属的信道编码方式由不同的传输媒介来确定; ⑥使用通用的加扰方式与条件接收界面。 DVB 标准设计的是一个通用的数字电视系统,在这个系统中,各种传输方式之 间的转换可以使用最简单的方式, 使得技术的通用性和节目的保密性很好的结合在一 起。
2.3.1 DVB 数字电视传输标准.

在 DVB 系统的家族中,其主要的标准有以下的几个:[2,3] DVB-S:DVB-S 称为 ETS300421 标准,用于 11/12GHz 频段的卫星系统,可以 进行配转,以便使适用于各种转发器带宽和功率的要求; DVB-C:DVB-C 称为 ETS300429 标准,用于有线传输系统,与 DVB-S 标准相 兼容,用于有线系统中现有的 8MHz 带宽的频道; DVB-CS:DVB-CS 用于 MATV 系统,成为 PRETS300473 标准,由 DVB-C 和 DVB-S 标准修改而来,适用于共用天线设施; DVB-T:用于地面频道的数字电视广播,其标准为 ETS300774,此项标准也是目 前最为争议的标准之一; DVB-SI:PRETS300468 标准,它是业务信息标准。在 MPEG 标准中,有 PSI (Program Specific Information) 可以帮助用户将业务信息形成 DVB 码流,而 SI 是 DVB 对于 PSI 的一个扩展; DVB-TXT:PRETS300472 标准,用于 DVB 的固定格式文本传送规范; DVB-CI:用于条件接收的 DVB 公共接口。 以上的标准主要应用于信道的编码和传输方面,在信源编码方面 DVB 组织基本 沿用了国际组织的标准和编码方式。

9

淘宝网购物商城

淘宝网购物

http://www.521taobao.com/

上海交通大学工程硕士学位论文

DVB 标准是开放的,并且是可以互操作的。所有的标准首先经过联合技术委员 会 JTC(Joint Technical Committee Ebu)批准,然后再由各国标准化组织批准,最后 才会得到 ETSI 的批准。
2.3.2 DVB 的传输系统

DVB 各种系统的核心技术是通用的 MPEG2 视频和音频编码,目前主要应用于 数字卫星电视、地面和有线电视的是 MP@ML,三者的主要差别在于信道编码和调 制技术上。[4,5,6,7] 信道编码的目的是保证信息的正确传送, 目前使用比较广泛的 DVB-S 和 DVB-C 标准均使用了两层的编码方式内码编码和外码编码。内码编码采用卷积码,外层编码 采用 R-S 码, 中间加上交织, 使用这种级联的编码纠错方式可以保证系统的误码性能 满足传输的要求。 图 2-1 是传输系统的一个示意图:

图 2-1 DVB 传输系统示意图
Fig2-1 Structure of DVB transmitter system

从图中可见,信源编码采用 MPEG2 编码,经复用器对视音频节目码流进行复用, 然后将多个电视码流复用。信道编码包括了前向纠错、解码、调制、解调和上变频, 在卫星传输中使用 QPSK 调制方式,在有线传输中使用 QAM 调制方式。
2.3.2.1 DVB-S 系统

DVB-S 系统可以适应多种卫星广播系统从 26MHz 到 72MHz 的转发器,转发器功率 从 49dBW 到 61dBW。7、8、9、10、11、12、13. DVB-S 系统的框图如图 2-2 所示:

10

淘宝网购物商城

淘宝网购物

http://www.521taobao.com/

上海交通大学工程硕士学位论文

图 2-2 DVB-S 系统框图
Fig2-2 Structure of DVB-S system

它对码流做了以下的处理: ① 传输复用的适配和能量分配随机化 ② 外码编码 ③ 卷积交织 ④ 内码编码 ⑤ 基带成形 ⑥ QPSK 调制 系统采用卷积码及 R-S 码的级联,可以提供一个“准无误码”的质量目标,保证 在每个传输小时内未纠正的误码不多于 1 个, 相应于在 MPEG2 解复用的输入处的误码 率 BER=10-10~10-11。 表 2-1 为 DVB-S 采用各种不同的转发器带宽和不同的纠错方式时相应的码率表:

11

淘宝网购物商城

淘宝网购物

http://www.521taobao.com/

上海交通大学工程硕士学位论文

表 2-1 各种转发器带宽和相应的码率

2.3.2.2 DVB-C 系统

DVB-C 系统中的大部分处理与 DVB-S 相同,图 2-3 是 DVB-C 的框图,在采用不同 的调制方式时的传输速率和所占用的带宽如表 2-2 所示。[14、15、16、17、18]

图 2-3 DVB-C 系统框图
Fig2-3 Structure of DVB-C system

从图中可见,信道编码和调制部分与卫星系统 DVB-S 一大致相同,可以保持传输 方式的兼容。调制系统采用了正交幅度调制 QAM,而不是以卫星传输中采用的 QPSK, 并且不在使用内码正向误码校正。因为有线传输与卫星传输相比,外界干扰较小,信 号强度高,所以在前向纠错保护中取消了内码编码,同时调制方式也变成了 QAM。

12

淘宝网购物商城

淘宝网购物

http://www.521taobao.com/

上海交通大学工程硕士学位论文

表 2-2 DVB-C 在有线网络中的传输数率和带宽。

2.3.2.3 DVB-T 系统

作为地面传输标准,DVB-T 最早于 1998 年被批准通过,在 DVB-T 中,MPEG-2 数 字音频、视频压缩编码仍然是地面广播传输的核心,其他的特点是采用了 COFDM (Coded Orthogonal Frequency Division Multiplexing)的调制方式。[19、20]在这种 调制方式中,可以分成适用于小范围的单发射机运行的 2K 载波方式和适用于大范围 的 8K 载波方式,图 2-4 是 DVB-T 传输系统的方框图。

13

淘宝网购物商城

淘宝网购物

http://www.521taobao.com/

上海交通大学工程硕士学位论文

图 2-4 DVB-T 系统框图
Fig2-4 Structure of DVB-T system

由于传输环境的复杂性,一系统不仅包含了内外码,而且加入了内外交织(外码 扰码,内码交织) ,以保证传输的可靠性。 在调制方式上,DVB-T 采用了 COFDM 的调制方式。COFDM 调制方式将信息分布在 多个调制载波上面,用来避免传输环境造成的多径反射效应,其代价是引进了传输的 “保护间隔”由于 COFDM 调制方式的抗多径反射功能,它可以允许单频网中的相邻网 络中的电磁覆盖重复。

2.4

数据广播中间件标准
中间件是驻留在机顶盒内的系统软件,它是建立在数字电视接收设备驱动层之

上,为交互应用提供一个完整的应用编程接口的软件系统。它包含一系列的功能,如 内存管理、通信管理、图形系统管理、SI 数据装载、系统资源管理以及与前端系统 之间的通信及控制等。[21] 不同的中间件系统会提供不同的与下层驱动资源模块接口以及与上层应用编程 接口,因此不同的系统之间是不能互通的。目前国际上主要的中间件标准有欧洲的 DVB-MHP、美国的 ATSC 的 ATVEF 规范和 Cablabs 的 QCAP 和日本的 ARIB。中国的中间 件标准是以欧洲的 DVB-MHP 为基础的,而我们设计开发的数据广播对象轮播发生器 (OCG)的接收端就是符合中国中间件标准草案的 Java 核心中间件,因此在此对中间 件技术和标准加以介绍。
2.4.1 欧洲的中间件标准:

欧洲人对数字电视交互式业务重要性的认识和对交互式数字电视技术的研发早

14

淘宝网购物商城

淘宝网购物

http://www.521taobao.com/

上海交通大学工程硕士学位论文

于世界上的其他地方。 数字电视商业运营在欧洲的迅速发展使人们认识到制定一个共 同标准的重要性。在 DVB 的倡导和资助下,欧洲于 1998 年成立中间件标准工作组 (TAM) ,致力于数字电视通用家庭平台的研究,这就是后来的 MHP 标准。 MHP 标准明确地提出数字电视中间件系统中必须包含一个 Java 虚拟机,用以解 释和执行 Java 程序,也就是说,交互式应用使用 Java 语言进行编程,同时也倡导使 用 HTML。MHP 目前的版本是 1.1.2,在欧洲影响较大。MHP 无疑为为中间件标准的制 定提供了一个范例,已经被一些国家借鉴。
2.4.2 美国的中间件标准

美国也是数字电视发展较早的国家之一, 但美国人在过去不太重视数字电视的交 互性,认为只要能收看电视就行了。因此在较长的一段时间内,他们用数字机顶盒只 是收看电视节目,而交互式应用除了一个电子节目指南(EPG)外其它就没有什么了。 同样在美国,标准的重要性也早就为人们所认识。他们制定了一系列标准,如 ATVEF、DASE 等。ATVEF 是一种旨在将 HTML 作为数字电视内容的主要格式额标准,它 比较简单,与目前的互联网在较大的程度上兼容。Liberate 就是符合 ATVEF 标准的。 DASE 主要以 SUN 公司的 JavaTV 为基础,力图制定出一个以 Java 为核心的标准。 OpenCable 是以 CableLabes 为核心的网络公司组成的一个标准化组织,基于欧洲的 MHP 标准, 制定了用于网络数字电视的标准 OCAP OpenCable Application Platform) ( 。 最近 ATSC 与 CableLabes 联合起来,将 DASE 和 ATVEF 进行整合,形成了以 OCAP 标准 为基础和 Java 技术为核心的中间件技术规范 ACAP(Advanced Common Application Platform).
2.4.3 日本的中间件标准

日本在数字电视标准制定方面并不落后。日本的 ARIB 标准主要是基于 BML(XML 的一种形式,作为内容的播发形式)和 DSMCC DataCarousel(数据转盘) ,并增加扩 展了 JavaScript 以便更好地编写交互式应用。日本并不像欧洲和美国那样大肆向外 推销他们的标准,主要是日本各数字电视企业能够团结一致,制定标准是他们用来太 高门槛,阻止外国公司进入日本市场的主要手段。日本的一些软件企业和数字电视机 顶盒企业,如 Access,Pioneer,Fujistu 等都在研发符合日本标准 ARIB,能够解释 BML 的中间件系统。目前尚未在国际性展会上见到日本企业介绍他们的中间件技术。 但日本的标准 ARIB 有其参考借鉴的意义。因为 BML 语言很规范,符合未来电子商务 的需求;而 DSMCC 数据转盘式一种实现起来也不复杂的数据传输标准。
2.4.4 中国的中间件标准

中国政府由原来国家计委(现发展改革委员会)与 2002 年设立数字电视标准专

15

上海交通大学工程硕士学位论文

项,牵头与信息产业部、广电总局的成立数字电视标准专家小组,致力于研究和制定 符合数字电视产业的实际情况和中国市场特点的具有自主知识产权的数字电视标准。 中国标准也是与国际潮流一致,在 MHP 的基础上,吸收了 MHP 的可用之处,除去了 MHP 包中冗余的部分,以 Java 语言为基础,定义了符合数字电视应用开发的 Java 功 能包。
2.4.5 DVB MHP 标准技术规范

鉴于目前流行的中间件标准都是以 MHP 为基础,美国、日本和中国等都是在此基 础上加以改进,形成符合本国市场需求的标准,在此对其技术稍作介绍:
[22、23、24、25、26]

MHP主要定义了机顶盒中间件的整体结构、传送协议、内容格式、Java虚拟机和 DVB-J APIs、安全性、各层的细节、应用状态和表现、应用的自动启动等,还定义了 专用的应用信令。MHP标准将其终端接收设备的系统架构分为三层——资源层,系统 软件层和应用层,并规范各个层次的功能,以及定义提供交互应用程序可使用的应用 程序接口(Application Program Interface, API),使得MHP标准具有最大的跨平台 能力。图2-5是MHP系统架构图:

图2-5 MHP系统架构图
Fig2-5 Structure of MHP system

①. 资源层(Resources) 资源层,MPEG Processing、I/O Devices、Memory、CPU、绘图器(Graphics)等 资源。资源层通过广播通道(Broadcast Channel),使得MHP终端接收设备可以通过 MPEG-2 TS流和DSM-CC OC等通信协议接收广播讯号。并且,资源层也可以通过回传通

16

上海交通大学工程硕士学位论文

道,使得MHP终端接收设备通过TCP/IP与UDP/IP等通信协议回传信息给头端设备,或 是与其他终端设备进行信息交换。另外,资源层也输出信号到显示设备,并接收遥控 器的输入信号。 ②. 系统软件层(System Software) 系统软件层包含交互应用程序管理器(Applications Manager, AM),负责管理所 有在MHP终端接收设备上的交互应用程序。例如,交互应用程序的生命周期的控制、 交互应用程序使用资源的分配、以及交互应用程序之间的沟通,都是由应用程序管理 器来管理。此外,应用程序管理器也提供观众切换频道与选择节目等功能。系统软件 层也包含了操作系统、Java 虚拟机(Java Virtual Machine, JVM)、以及Sun Java、 HAVI、 DAVIC、 DVB所制定的应用程序接口, 以提供交互应用程序去使用资源层的资源。 ③. 应用层(Applications) 交互应用程序位于应用层。 交互应用程序可利用软件层提供的应用程序接口,来 使用资源层的资源,以执行各种各样的交互功能。采用Java技术的交互应用程序,在 生命周期机制下, 将可以确保交互应用程序的行为与观从的期待是一致的。 也就是说, 交互应用程序的启动时间很短,交互应用程序可以进入没有提供服务的状态、以及随 时都可以终止交互应用程序。另外,MHP交互应用程序可以经由使用者来启动,或是 由MHP交互应用程序自行启动。并且,MHP标准也支持多个交互应用程序同时执行。 MHP标准支持的内容格式有JPEG、PNG、GIF、MPEG-2 I-Frame等图形格式,以及 MPEG-1/2 Audio、MPEG-2 Video、DVB subtitles、Teletext、驻留字符、下载字符、 HTML和XML等码流格式,具有广泛的互操作性,使得MHP交互应用程序可以提供给观众 各种各样的多媒体交互服务。另外,也可以采用外挂功能模块的方式,使得MHP交互 应用程序可以支持更多的内容格式。 随着各国相继采用MHP作为交互数字电视的标准, 交互数字电视标准DVB-MHP成为 主流之一。2005年,MHP 1.1.2发布,支持高清 (High Definition),改善了信息、 投票等相关应用问题,加强了智能卡在解密与使用认证方面的功能。2005年4月,DVB 组织发表了两份文件Document A087(PVR/PDR Extension tothe Multimedia Home Platform)与DVB Document A088(Digital Recording Extension to GloballyExecutable MHP),使得MHP标准与GEM参考构架,在PVR/PDR方面的功能更加 完善功能。 DVB-MHP的技术核心和应用层次:

17

上海交通大学工程硕士学位论文

Java 是 MHP 的核心技术。作为一种程序设计语言,Java 提供简化的优点和面向 对象而又不依赖于机器的开放结构,具有卓越的可移植性、安全性特点,并且可通过 并发机制带来强大的性能。Java 技术的软件能够运行在从小型设备到超级计算机的 任何机器上,其兼容性几乎无所不在。借助 Java 技术,无论用户使用的是 PC、 Macintosh 计算机、网络计算机,还是机顶盒、数字电视、Internet 可视电话、各种 掌上设备,可以在不同的设备上运行同样的应用,这就给交互式数字平台提供了一个 非常好的兼容环境,可以让数字电视平台上的所有硬件和软件,不论是前端的还是终 端的,不论是各种服务提供设备,还是机顶盒和数字电视,都可以不加修改地相互移 植,相互衔接,具有极高的兼容性。利用 Java 技术的特性,Java 语言使广播节目开 发商能更得心应手地、灵活地开发应用界面,以提供给观众更加引人入胜的交互电视 节目;此外,Java 语言编写的数字电视内容具有安全、可扩展和可移植的特点,可 用于各种不同的电视接收机,还可大大节省开发商把交互应用投放市场的时间和成 本。 DVB MHP 共有三个应用领域和层次, 如图 2-6 所示: 分别为增强性广播 (MHP 1.0) 、 交互性广播(MHP 1.0)和互联网接入(MHP 1.1)。基层是增强性广播(Enhanced Broadcasting Profile)仅支持单向广播业务和本地交互业务,包括 Java VM、DVB-J APIs 和广播传送协议,HTML 子集作为即插件,提供本地端交互的相关服务,例如气 象资讯服务、 旅游资讯服务、 股市交易、 各种运输工具时刻表、 交互体育信息等服务, 它不需要回传通道;交互性广播 (Interactive Broadcast Profile) 支持交互业务, 这意味着有相应的硬软件支持,对增强性广播的扩展有用于交互应用的 DVB-J API 和交互传送协议,HTML 子集作为选件,提供本地端与其它端的交互应用服务。例如 投票、电视商务、电视银行等服务,它需要回传通道;仍在完善中的是互联网接入 (Internet Access),增加的 API 有互联网接入 APIs、IP 广播传送协议和 HTML, ECMA script 等描述协议,提供了访问互联网的功能,提供电视收发 Email、浏览网 页等功能。

18

上海交通大学工程硕士学位论文

图 2-6 MHP 应用层次
Fig2-6 layers of MHP application

2.5 本章小结
本章介绍了与数字电视数据广播播发和终端接收的相关的各种标准,包括美国、 日本欧洲的数字电视标准,欧洲采用的 DVB 的各种标准以及数据广播中间件标准,着 重介绍了欧洲的数字电视中间件 MHP 标准, 因为本文研究的数据广播的对象轮播主要 是为中国标准的 Java 中间件的实际应用开发的,终端的 Java 中间件所需要的数据, 包括各种 Java 执行程序都是依赖前端的对象轮播来发送的,而中间件本身的升级和 补丁则是通过前端数据轮播来实现。下面的章节将详细介绍前端数据广播的标准。

19

上海交通大学工程硕士学位论文

第三章 DVB 数据广播标准和原理
上一章对数字电视的标准、中间件的标准做了介绍,本章进一步对数据广播中 用到的传输标准 MPEG-2、DSM-CC、数据轮播等规范进行介绍。

3.1 MPEG 标准的发展和技术现状
3.1.1 MPEG 标准简介

MPEG(Moving Picture Expert Group)是运动图像专家组的英文字头缩写,它 成立于 1988 年,目标为建立活动图像以及相应的音频编码标准。MPEG 是一个标准系 列,有 MPEG-1,MPEG-2 和 MPEG-7 标准。[27
、28]

MPEG-1 标准是用于数字存储媒体、码率直到 1.5Mbps 的活动图像的编码标准。 MPEG-2 标准分为 9 个部分: 标准的第一部分主要解决多个视频、音频和数据基本码流的组合复用,并且生成 两种码流: 节目码流和传输码流, 以用于不同的环境。 其中节目码流的包可变也较长, 由打包的基本码流组合而成,用于误码较小的环境。而传输码流是将相互独立的打包 的基本码流组合成单一的码流, 适用于误码较多的环境, 传输码流的包长为 188 字节。 第二部分视频中, 按清晰度将图像分为四个等级,按使用的工具和方法不同分为 5 种处理类型,普通清晰度数字电视使用主类和主级 MP@ML。第三部分音频中,与 MPEG-1 的音频标准反向兼容,第四和第五部分与 MPEG-1 的相应部分对应。第六部分 规定数字存储媒体指令和控制协议 DSM-CC(Digital Storage Media Command and Control),用以支持单独或者网络环境下的 DSMCC 模式。第七与第八部分因为感兴趣 的厂商不多,己经停止开发,第九部分规定了传输码流的实时接口 RTL(Real Time Interface) 。 除了以上的两个标准之外,目前有关组织还制定了的标准包括 MPEG-4 和 MPEG-7 标准,因为与研究内容的关系不是特别紧密,所以不再赘述。
3.1.2 MPEG-2 的系统结构

图 3-1 是 MPEG 的简化系统结构,它可以分为三个部分:编码、打包、复用。前 面的是视频编码和音频编码部分,输出视频和音频的基本码流 ES(Elementary Stream) 。经过打包,输出打包的基本码流 PES(Packetized Elementary Stream), 打包的基本码流包长度可变,视频一般一帧一个包,音频包一般不超过 64KB。打包 的基本码流再经过两种不同的打包和复用形成不同的码流:节目流 PS(Program Stream)和传送流 TS(Transport Stream) 。

20

上海交通大学工程硕士学位论文

图 3-1 MPEG-2 系统简化结构
Fig3-1 Structure of MPEG-2 system

3.1.3 MPEG-2 的传输流

MPEG-2 标准的系统部分规定了两种系统流节目流和传输流,在数据广播中用到 的是传输流,在此对传输流做一个简介。[29、30、31] 传输流主要应用于在可能发生错误的环境, 进行一路或者多路节目的传输或者存 储,广泛应用于 DVB 和多媒体通信。 传输流由一系列长度固定为 188 个字节的传输流数据包构成, 每个传输流的分组 由包头和净荷构成, 传输流的包头包括 4 个字节固定和长度不固定的适应调整字段构 成,其余的是净荷,净荷的内容可以来自 PES 分组或者私有数据。 采用传输流的优点 传输流的包长为 188 个字节,其中 4 个字节是包头,其余 184 个字节为净荷,采 用固定的包长有一下的几个优点: ① 动态的带宽分配 由于视频、音频和数据的传输流的包长度相同,都是 188 个字节,因此通过 PID 可以将规定的信道带宽在视频、音频、数据之间灵活分配。 ② 可分级性 TS 包的格式允许一个复接好的传输流与另外的视、音频码流进行二次复接,生 成更高一级的 TS 流。这个特性允许网络运营商在网络的每一个节点上面灵活的复接 或者分离多路节目。 ③ 扩展性 固定包长的 TS 流对于将来的业务提供了一种“向后兼容”的可能性,对于新业 务的基本码流,只要在发送端赋予新的 PID 值,就可以将其加入 TS 流中,而无需硬 件上面的改动 ④ 抗干扰性

21

上海交通大学工程硕士学位论文

由于 TS 包的包长固定, 所以传输系统中的误码纠正和检测处理就可以与 TS 包同 步,并且以 TS 包为单位。当传输过程出现误码时,解码器可以从第一个无误码的 TS 包恢复数据。 ⑤ 接收机成本低廉 固定长度的 TS 包结构可以使系统分接非常简单, 分接器只需要识别每个 TS 包中 的 PID 即可,不需要了解信源比特率方面的情况。一旦 TS 包一级和比特一级的同步 建立,系统就可以正常的工作。
3.1.4 PES 分组

在 MPEG-2 的系统中,编码的音、视频数据或者数据流都被称为原始流,对原始 流进行打包之后形成打包的基本码流,而原始流作为负载加入到 PES 分组中,而 PES 分组又作为负载加入传输流的数据包中。通常 PES 包的长度不固定,音频 PES 包的长 度不超过 64K 字节,而视频一般一帧一个包。同时在 PES 包中加有 DTS 和 PTS 数据。
[29]

3.1.5 节目专用信息

节目专用信息(PSI:Program Special Information)是 MPEG-2 特有的说明信 息,包含所有使解码器能进行多路节目解码的规格化数据和私有数据,用来自动设置 和引导解码器进行解码。[29] 在 MPEG-2 的传输流中包含四种 PSI 表: 节目关联表(PAT:Program Associated Table) ,由于实际的传输频道带宽常常 大于一路数字电视节目所需的带宽,所以为了提高频带利用率,一般将多路节目复接 在一起进行传输。PAT 表给出复接码流中有多少路节目,以及每路节目相应的 PMT 表 的 PID 值。PAT 的传输作为一个独立的码流,被装载在 TS 流的净荷中传输。 节目映射表(PMT:Program Mapping Table),PMT 表指出节目中有多少码流,其 各自的 PID 是多少,提供节目号码与组成它们的节目原始码流之间的映射。PMT 表在 分组中传输,其 PID 值是可变的。如果需要,可以使用多个 PID 值。PMT 表包含了与 单路节目复接的有关信息,完整的描述出一路节目由哪些 PES 流组成,其各自的 PID 值是多少,解码器可以根据指出的 PID 值找到要解码的码流。 网络信息表(NIT:Network Information Table),NIT 表说明节目来源的网络信 息,如物理参数,转发器编号等。 条件访问表(CAT:Conditional Access Table) ,CAT 表说明是否加密,帮助解 码器找到控制加密的加密控制信息(ECM)和加密管理信息(EMM)。 接收端解码时,解码器首先找到 PAT 表,找出相应节目的 PMT 表的 PID 值,再由

22

上海交通大学工程硕士学位论文

该 PID 值找到该 PMT 表,在 PMT 表中找到相应的码流,开始解码。
3.1.6 DVB-SI

MPEG-2 定义了节目专用信息 PSI,使得 MPEG 解码器可以获得码流结构的信 息。对此 DVB 加以补充,形成了一个新的业务信息系统:DVB-SI。在数据广播中主 要用到以下的几个 SI 表:
[32、33]

① BAT(Bouquet Association Table 节目组相关表) :BAT 提供一种把业务分类 的方法,用作向观众显示一些可获得的业务的一个途径。 ② SDT(Service Description Table 业务描述表) :SDT 列出了在一个特定的 TS 流中所有业务的名称和其它参数,根据描述的业务是否复用在该 SDT 所在的传输 流中,SDT 可以分为 Actual TS 和 Other TS,以不同的 Table ID 区分。 ③ EIT(Event Information Table 事件信息表) :EIT 用于发送己经出现或者即 将出现在传输流中的所有事件相联系的信息。 ④ RST(Running Status Table 运行状态表) :RST 的各个部分被用于快速刷新 一个或多个事件的运行状态。 ⑤ TDT(Time and Date 时间和日期表) :TDT 用于更新 IRD 内部时钟。 ⑥ NIT(Network Information Table 网络信息表) :NIT 用于把属于某个特殊网 络提供者的业务聚合在一起,它包含在配置 IRD 期间可能用到的全部调节信息,在 PSI 中只是定义了 NIT 的名称,其语法结构在是在 SI 中定义的。 ⑦ TOT(Time offset Table 时间偏移表) :TOT 描述了当前时间、日期和本时区 时间的偏移量,用于在不同时区间共享业务的情况。 ⑧ SIT(Selection Information Table 可选信息表):SIT 仅用于部分码流,描 述了该部分码流中所需服务信息的摘要。 ⑨ DIT(Discontinuity Information Table 不连续信息表) :DIT 仅用于部分码 流,用于在该部分码流和之前的码流不连续的情况之下。 ⑩ ST(Stuffing Table 填充表) :用于替代或者废除一个子表或者整个 SI 表。

3.2

DSM-CC 协议
DSM-CC(Digital Storage Media-Command and Control)协议是 ISO/IEC13818

标准之一,用于提供宽带多媒体业务。其主要的目的就是在接收端资源有限的情况之 下实现快速的数据传输。此开放性的协议可以保证机顶盒、PC 和其它的信息终端以 统一的接口接收不同的服务商提供的不同服务。[29、34] ISO/IEC13818-1 标准在附录中包含了一个 DSM-CC 的早期标准,但是其只是提供 一个对 MPEG-2 标准传输流的简单控制, ISO/IEC13818-6 将其扩展为一个独立的标 而

23

上海交通大学工程硕士学位论文

准,包含一套完整的协议,以实现数据传输等服务。 DSM-CC 独立于网络传输层,因此任何基于 DSM-CC 的业务都不需要考虑底层的网 络传输协议,保证了同一个业务可以在不同的网络中进行传输。
3.2.1 DSM-CC 协议栈

DSM-CC 是一个协议栈,由不同的网络协议所组成,主要包括以下的几个方面: 网络会话和资源控制(Network Session And Resource Control) 。 客户终端下载(Configuration of a Client) 对于视频流类似于 VCR 的控制(VCR-Like Control Of The Video Stream) 交互式应用协议(Generic Interactive Application Services) 广播式应用协议(Generic Broadcast Application Services) ,主要包括数据 转盘 (Data Carousel) 频道切换协议 、 (Switched Digital Broadcast Channel Change) 等。 DSM-CC 协议栈的一个重要的特性就是它的灵活性,协议栈中的每一个标准可以 单独使用,也可以和其它的协议结合使用。协议栈主要提供浏览、选择、下载和对于 各种类型比特流控制的能力,通过会话的思想,也提供管理网络和应用资源的机制。
3.2.2 DSM-CC 客户-网络-服务器模型

如图 3-2 所示, DSM-CC 是根据一个十分简单的参考模型加以定义的。 在模型中, 客户用户实体和服务器用户实体通过网络进行通信。会话和资源管理实体(Session And Resource Manager, SARM)对 DSM-CC 会话和资源作逻辑上的管理。 客户是接收信息的设备,如机顶盒,PC 等,而服务器是信息的提供者。网络的 定义十分广泛,它是为用户提供通信连接的通信设备的集合,连接被定义为在两个或 者多个终端间进行信息传输的通道,客户和服务器都被称为 DSM-CC 用户。通过这 种定义, DSM-CC 可以适用于多种连接的通道, 适用于多种不同的低层网络拓朴结构, 包括一点到多点的广播连接。DSM-CC 用户到网络消息(User To Network, UN)用来 在客户和 SRM 以及服务器和 SRM 之间的消息交换。U-N 会话协议用来建立一个会 话,并且集结传递一个服务所需要的资源。服务的交互作用是在客户和服务器之间通 过 DSM-CC 用户到用户消息来传递的。SRM 观还提供 U-N 配置管理以及 DSM-CC 中客户和服务器参与的管理。 DSM-CC 协议主要由一系列的用户到网络协议和用户到 用户协议所组成,其中用户到网络的协议有: DSM-CC 消息头(DSM-CC Message Header) ; U-N 配置消息(U-N Configuration Message) ; U-N 会话消息和会话和资源管理流图(U-N Session Message And Flow Diagrams

24

上海交通大学工程硕士学位论文

For Session Resource Management) ;

图 3-2 DSM-CC 功能参考模型
Fig3-2 DSM-CC Session Refrerence Model

U-N 下载消息(U-N Download Message) : U-N 数字广播信道切换协议(U-N Switched Digital Broadcast Channel Change Protocol) ; U-N 通传消息(U-N Pass Thru Message) ; 采用 MPEG-2 系统传输 DSM-CC U-N 消息(The Transport Of DSM-CC U-N Message Using MEPG-2 Systems) ; 采用 MPEG-2 系统和 DSM-CC 会话传送通用的 IP 消息(The Transport Of Generic IP Message Using DSM-CC Section And MPEG-2 Systems) 用户到用户的协议有 U-U 远程调用(U-U Remote Procedure Call) ; U-U 会话接口(U-U Session Interface) : U-U 下载接口(U-U Download Interface) ; U-U 对象转盘接口(U-U Object Carousel Interface) U-U 本地对象接口(U-U Local Object Interface) U-U 流描述子(U-U Stream Descriptors) 在基于 DVB 的数据广播通信中,以上的协议是通信的基础。
3.2.3 U-U 对象转盘(Object Carousel)

DSM-CC 在 Data Carousel 的基础之上建立了 Object Carousel 标准,U-U Object Carousell 协议定义了如何在广播网络上面传送 U-U 对象以及如何进行在线编码使用 户可以通过 U-U API 进入这些对象。 为了实现 U-U 对象的传输, DSM-CC 还定义了 BIOP (Broadcast Interoperability Protocol)标准,规定了在广播信道中封装对象指

25

上海交通大学工程硕士学位论文

示 (Object Reference) 的标准方式, U-U 对象的种类包括流 (Stream) 和文件 (File) 等。 DSM-CC 标准的消息或者接口都不是必须以 MPEG-2 标准来封装的,但是在采用 MPEG-2 传输流来传送 DSM-CC 协议时必须采用规定的消息封装格式。 DSM-CC 中严格定义了流的类型值,表 3-1 是 DSM-CC 指定的流的类型。 这些流的类型在 DVB 中有所扩展。
表 3-1 DSM-CC 指定的流类型

3.3

DVB 的数据广播协议
DVB 标准提供了通过不同的数据媒质传输 MPEG-2 传输流的方法,而数据广播是

基于 DVB 传输标准的 MPEG-2 的重要扩充。DVB 的数据传输协议建立在 MPEG-2 传输流 基础之上,在 DVB 数据广播标准 EN301192 中规定了如下的对于数据的封装方式:[32、
34、35]

数据管道(Data Piping) 数据流(Data Stream) 多协议封装(Multiprotocol Encapsulation) 数据轮播(Data Carousel) 对象轮播(Object Carousel) 图 3-3 是数据广播各种类型的协议结构:EN301192 为不同的应用提供了不同的 服务级别,其中数据管道标准对于数据传输所做的限制很少,仅仅是规定如何将数据 信息加载到 MPEG-2 标准的传输流之中,而数据流标准对于数据传输有了比较多的限 制,并且基于 MPEG-2 标准中的 PES 包。而多协议封装、数据轮、对象轮等都是基于 DSM-CC 的基础之上,并且与 DVB 的 SI 标准 EN300468 相结合。

26

上海交通大学工程硕士学位论文

应 应用层接口 应 用 说 明 应 用 说 明 应用 说明 数据报 多协议 封装



应用 说明

应用 说明
对象轮播 应 用 说 明

数据流

数据轮播 DSM-CC 对象轮播 DSM-CC 数据轮播 段 DSM-CC 数据轮播

数据 管道 PES

DSM-CC 私有数据

MPEG-2 传输流 应用领域 数据 管道 数据 流 多协议 封装 数据 轮播 对象 轮播 注册 业务 未定义

Data_broad cast_id:

0x0001

0x0002 0x0003 0x0004

0x0005

0x0006

0x0007

图 3-3 数据广播各种类型协议结构
Fig3-3 Structures of Data Broadcasting protocols

不同的数据传输方式适用于不同的应用领域, 数据轮和对象轮比较适用于周期播 放的数据应用,比如应用较多的 VOD 之类,而多协议封装比较适合 IP 数据的传输。
3.3.1 数据管道(Data Piping)

数据管道是一种非常简单的异步传输方式,数据被直接插入到传输流之中。在数 据管道的方式下,数据被封装到 TS 流的净荷中,而 TS 包的 PUSI 和 TP 由实现的系统 自己定义。数据管道的封装方式不提供纠错和安全机制,所以应用的并不多见。
3.3.2 数据流(Data Streaming)

数据流模式可以用于需要面向数据流、端对端数据传输的数据广播业务。在数据 流方式中,数据被作为 PES 包的负载加以传输。PES 是打包的基本码流,是编码器和 解码器的直接连接形式,包的结构侧重于编解码的控制,在 PES 包的包头中定义了与 时间有关的两个域:时间标志表述时间 PTS(Presentation Time Stamp)和显示时 间印记 DTS(Decode Time Stamp) ,可以实现数据传输的时间同步。通常 PES 包的长 度不固定,音频 PES 包一般不超过 64kbytes,而视频一般一帧一个 PES 包,PES 包可 以经过复用再打成 188bytes 长度的固定长度的包。
3.3.3 多协议封装(Multiprotocol Encapsulation)

27

上海交通大学工程硕士学位论文

多协议封装为在 DVB 网络中以 TS 流的方式传输其它数据网络的协议数据提供 了一个机制,除 IP 协议之外,还可以封装其它协议的数据,适用于数据报的点-点 (Unicast) 点-多点 , (Multicast) 广播方式的传输 , (Broadcast) 它使用 48 位的 MAC 。 地址,来寻址接收机。并且支持通过数据包加密和动态变化 MAC 地址来保证数据的 传输安全。 多协议封装还对于 SI 信息中的 data_broadcast_descriptor 作了规定,并且规定传 输多协议封装的数据流在 PMT 中的 Stream_id 应该为 0X0D 或者用户规定的值。
3.3.4 数据轮播

数据轮播(Data Carousel)是一种允许服务器或者某个应用循环地、一次或者 多次地发送一组相同数据模块的服务。 如果一个接收者希望访问其中的某一个特定的 模块,则仅仅需要等到下一次广播的时候即可。一个典型的数据轮播的应用是图文广 播。数据轮播是定义在 DSM-CC 的数据轮播的基础上的,提供一种循环传递数据到接 收者的机制。[36] 在数据轮播中数据被划分成模块(modules) ,每个模块被划分成大小完全一样的 块(block) 。除了最后一个块可能会小一些,一个数据轮播中其他所有的块的大小都 是一样的。每个模块代表逻辑上相互独立的数据。根据服务的需要,多个模块可以组 织成一个组(group) ,类似的多个组可以进一步构成超组(Super group) 。 数据轮播规范使用到了 DSM-CC 下载规范中的四条消息;数据存放在下载数据块 (DownloadDataBlock DDB)消息中,关于模块的控制信息存放在下载信息说 明 (DownloadlnfoIndication DII) 下载服务初始化 、 (Download ServerInitiate DSI) 以及下载取消(DownloadCancel)消息中。其中下载服务初始化消息(DSI)描述一 个超组中组的信息,而下载信息说明消息(DII)描述一个组中模块的信息。基于这 些控制消息,用户可以从网络中获取模块的子集,DVB 标准定义了如何使用上面四条 消息。一个典型的数据轮播的应用就是电子节目指南(EPG)的传送。
3.3.5 对象轮播

我们所要设计构造的对象轮播发生器(OCG) ,就是依据 DSM-CC 对象轮播的规 范来实现的,因此在这里花一定篇幅来描述对象轮播规范。[33、34、35、37]
3.3.5.1 简介:

DSM-CC对象轮播使得利用目录对象,文件对象和流对象的,从广播服务器到广播 接收端(客户端)的对象的结构化的群的传输变得容易。 实际的目录和内容(对象实现) 都位于该服务器上。该服务器不断地将相关的对象插入到使用对象轮播协议的、数字 电视相兼容的MEPG-2 TS当中去。如图3-4所示,数据轮播是数字电视业务的一部分。 传输的目录和文件对象包含对象的内容, 而传输的流对象在广播中是其它流的参考基

28

上海交通大学工程硕士学位论文

准。该流对象可能包含在一个特定流中广播的关于DSM-CC事件的信息。DSM-CC事件可 以通过一般流数据来广播并且可以用来触发DSM-CC应用。
文件 对象轮播 目录 流

目录 文件 目录 流+事件 文件 流事件 AV 节目 业务 AV 节目 业务 文件 流 目录

图 3-4 含有对象轮播的业务示例
Fig3-4 Example of service with Object Carousel

通过读取反复传输的轮播数据,多个客户端可以恢复对象实施,因此在本地对象 实施中可以模仿服务器的对象。 轮播中的对象为客户提供了访问应用和应用内容的方 式,或多或少的,似乎与服务器之间存在交互连接一样。
应 用 U-U API

DSM-CC U-U 对象轮播 (BIOP) 下载 数据轮播 DSM-CC 段 MPEG2 TS UNO-CDR/ RPC(IIOP) TCP IP PPP-MP

广播网络

交互网络

图 3-5 对象轮播协议在交互业务结构框架中的位置
Fig3-5 Position of OC protocol in Interactivel service frame

29

上海交通大学工程硕士学位论文

3.3.5.2 平台无关(platform independence)

对象轮播规范是平台独立的,与DSM-CC U-U规范以及CORBA定义的ORB(Object Request Broker)结构兼容。在DSM-CC U-U系统环境中,对象的结构化组被称作业务 域。业务域有一个业务网关,该网关可以看作是对象结构化组最高一级的目录,而且 这样一个业务网关可以为公布给客户端的业务名称(也就是对象名称)的图表提供相 互关系。 业务域可以在交互网络的服务器上定位, 也可以在广播网络的服务器上定位, 在后面一种情况下,业务域中的对象通过对象轮播的方式广播。 对象轮播中一个对象的数据和特性是在单独一个消息中传输的。 消息的格式由对 象轮播规范指定,称做BIOP消息格式。BIOP消息通过DSM-CC数据轮播的一个模块来广 播,但是一个模块可包含一个或多个BIOP信息。依照DSM-CC 数据轮播规范,一个模 块 可 以 被 分 成 一 个 或 多 个 块 , 块 在 DownloadDataBlock 消 息 中 传 输 。 每 个 DownloadDataBlock消息大小相同(除了模块的最后一个数据块可能小些),并且按照 DSM-CC的规定在MEPG-2数据段中依次传输。DownloadDataBlock消息在MEPG-2数据段 中封装的规则是通过解复用器中常见的硬件过滤器,块能够直接从TS流中得到。 业务域中的对象通过使用对象基准来标识。DSM-CC U-U 使用CORBA定义的IOR() 结构。对象基准包含了在网络中一个或多个服务器上检索对象所需的全部信息。IOR 中包含有被存储对象的实例的位置信息的结构体称作Profile Body。一个IOR可以包 含多个Profile Body以指示对象的多个(网络)位置。 对象轮播规范使用两个类型体:BIOP类型体和LiteOptions类型体。BIOP类型体 用于在同一个对象轮播里检索对象,LiteOptions类型体用于在另一个对象轮播里检 索对象。
3.3.5.3 U-U对象支持(supported of U-U object)

对象包含信息如下(见图3-6) 目录对象:绑定列表,每个绑定都会绑定一个名字在IOR,另外,每个绑定还可以包 含 其 他 信 息 来 支 持 通 过 目 录 进 行 快 速 浏 览 , 在 目 前 的 对 象 轮 播 规 范 中 (object carousel specifications)只用到了文件对象的内容大小。 文件对象:包含文件内容和大小。 流对象:标识符(identifiers)列表.(称之为taps)涉及到一个或多个广播网络中 的流,每个tap可以对应到一个基本流(elementary stream)(BiopEsTap)或一个完整 的MPEG 节目流(BiopProgramTap),还有一些标识符用于指明广播频道中包含有流的 的控制信息(例如NPT的流描述(streamdescriptor),状态,模式和事件),流对象还可 以包含流信息属性(streaminfo attribute)。

30

上海交通大学工程硕士学位论文

服务网关对象:标识目录对象,由于服务网关继承目录,用于指明服务域的跟目录 专用服务网关。 流事件对象:与流对象类似,扩展了事件列表属性(eventlist attribute)和 eventid列表,这些属性包含了DSMCC的事件命名和eventid的映射。
对象

关联



文件

目录

1+ Tap BIOP::StreamEvent 服务网关 绑定

事件列表

内容

名字

IOR

BiopEsTap

BiopProgramTap

StrNptTap

StrStatusTap

StrEventTap

图3-6 对象轮播支持对象图
Fig3-6 Supported objects of OC

3.3.5.4 对象传输(transmission of objects)

在对象轮播中一个U-U对象通过一个消息(message)传送数据和属性.也就是说所 有的对象都要用消息(message)来封装,不同的对象采用不用的消息格式封装。消 息格式由broadcast inter ORB Protocol(BIOP)指定并且依照BIOP通用对象消息格式. 一个BIOP消息由消息头(messageheader),消息子头(messagesubheader)和消息体 (messagebody)组成.消息头提供了关于BIOP协议版本和BIOP消息长度信息.消息子头 包含了被传送的对象的信息,如objecttype(文件,流,目录)和objectkey(在模块中的 唯一标识值).消息体根据objecttype包含了实际的U-U对象的数据.BIOP消息长度不 固定。

31

上海交通大学工程硕士学位论文

BIOP消息将在数据轮播的模块中广播,一个模块由一个或多个BIOP消息组成,在 消息中每个对象将由唯一的对象键值(objectkey)标识,一个对象可以在此消息长度 范围内通过解析对象键值被快速找到。 依 照 DSM-CC 数 据 轮 播 规 范 每 个 模 块 被 分 割 为 一 个 或 多 个 BLOCK 到 downloaddatablock(DDB)消息中,每个DDB消息具有相同的大小(最后一块除外).DDB 作为MPEG-2私有section封装,可通过ts流硬件过虑收取。
MessageHeader 和 SubHeader 对象轮播: BIOP 消息 对象-1(目录) 下载 数据轮播: 对象-2(流) 对象-3(文件)

模块-1 下载数据块 Header

模块 和 块

块-1

块-2

块-3

块-4

块-5

DSM-CC 段

段-1

段-2

段-3

段-4

段-5

Section Header

图 3-7 BIOP 消息在模块、数据块、MEPG-2 数据段中的封装和切分 Fig3-7 Pack and unpack of BIOP messages in modules,data blocks and mpeg-2 data segment

在广播网络中收取一个对象需要完全收取一个包含此对象的模块,这需要知道相 关的传输参数,如模块版本,模块大小,块(BLOCK)大小,时间和广播频道.传输参数通 过downloadinfoindication(DII)传送,在获取一个模块DDB前须获取DII,DII消息可 以描述多个模块的传输参数.因此获取一个对象的过程是两步过程.DII->DDB, 并且这 种两步过程在反复的执行。 服务网关对象说明在downloadserverinitiate(DSI)消息中,此消息可以通过PSI 或者PSI+SI获取。 对象收取流程如下:

32

上海交通大学工程硕士学位论文

PSI+SI-

DSI

Server Gateway IOR

传输 参数

BIOP:file BIOP:stream BIOP:streamevent BIOP:dir

文件 流 事件

DII

目录

module

图 3-8 对象收取流程 Fig3-8 Process of object’s receive

通过DII可以定位一个或多个module,每个module含有一个或多个object,当需 要定位某个目录对象中绑定的object时,通过对象说明找到对象传输参数(DII), 通过DII可以知道对象所在module的传输参数,然后定位到所需要的module ,根据 objectkey过虑出需要定位的object。
3.3.5.5 BIOP 控制结构

BIOP控制和数据结构由13818-6[4]定义,采用了平台无关的OMG IDL语言BIOP用 CDR(common data representation)LITE 定位,相对于CDR更为紧凑。 DSMCC采用IOR作为对象说明,IOR的结构如表3-2:
IOP::IOR Syntax IOP::IOR { type_id_length for (i=0; i<N1; i++) { type_id_byte } taggedProfiles_count IOP::taggedProfile() for (n=0; n<N2-1;n++) { IOP::taggedProfile() } } bits 32 8 32 Type uimsbf uimsbf uimsbf Value N1 + N2 Short alias type_id (e.g. "dir") Profile bodies(至少包含一个) For objects in broadcast carousels: either BIOPPro leBody or LiteOptionsProfileBody. MHP terminal may ignore other profiles (2...N1) if present Comment

编码规则,此规则采用最大数据长度和字节

在profile目前分为两种:BIOP profile 和lite option profile,前者用于定位 对象在当前的服务域中,后者表明在其他的服务域中。

33

上海交通大学工程硕士学位论文

3.3.5.6 BIOP 消息

采用BIOP的通用消息格式来定义.BIOP消息由消息头,消息子头和消息体组成,在 DSMCC有5种消息被传送: ① Dir 消息 ② File 消息 ③ Servicegateway 消息 ④ Stream 消息 ⑤ Streamevent 消息
3.3.5.7 Download Data carousel 消息

a) DSI,Groupinfo 字段为 BIOP::servicegatewayinfo b) DII,Moduleinfo 字段为 BIOP::moduleinfo c) DDB,Blockdata 为 BIOP 消息(File,Directory,Stream)
3.3.5.8 MEPG-2 段

DSM-CC用private_section将TS包重组成DSM-CC信息, DSM-CC为private_section 定 义 了 附 加 的 语 义 以 支 持 DSM-CC 的 额 外 需 要 。 由 此 得 到 的 section 称 为 DSMCC_section, 其结构与private_section的句法兼容以便MEPG-2系统兼容的解码器 可用。DSM-CC_section的句法在ISO/IEC 13818-6中定义。 table_id_extension, version_number,
表 3-3 DSMCC_section 域编码
消息 Download-ServerInitiate( DSI) Download-InfoIndication( DII) Download-DataBlock (DDB) Table _id 0x3B Table_id_extensio n DSI 中 transaction_id 的 两个 LSB 字节 DII 中 transaction_id 的 两个 LSB 字节 moduleId Version_n umber 0x00 Section_n umber 0x00 Last_section_ number 0x00

section_number,



last_section_number的编码在表3-3中定义。

0x3B

0x00

0x00

0x00

0x3C

Module Version % 32

blockNumb er %256

Max(section_n umber)

数字电视对关于transaction_id域的DSM-CC规范给出了一些限制, 以方便客户接 收端的过滤操作。特别的,DSI消息的最低两个有效字节为0x0000或0x0001,这使得接 收端通过设置table_id = 0x3B (DownloadControlMessages)与table_id_extension = 0x0000或0x0001的section过滤器,来自动引导轮播。一旦DSI消息被获取,接收端可 以设置section过滤器来监测transaction_id的最低两个有效字节的其它值。这样轮 播内容一旦改变,接收端能立即被触发。

34

上海交通大学工程硕士学位论文

3.3.5.9 PSI 描述器的使用

ISO/IEC 13818-6的对象轮播规范与网络无关,因此可以应用到各种广播网络中。 网络独立性通过Tap概念的使用来获得。通过使用关联标签,一个Tap可以方便地与某 个特定的网络连接关联起来。在对象解析的过程中,客户必须将Tap与网络连接关联 起来。因此,客户需要一个关联表,该表确定了各Tap与网络连接的对应关系。 对于基于MEPG-2 TS流的广播网络中实现U-U对象轮播,PSI机制有利于: 1 将 MEPG-2 节目(即利用 PMT 表) 和对象轮播关联起来; 2 将 Tap 与某个 PID 或 MEPG-2 节目关联起来; 3 用于广播业务网关的 IOR 的 PID 的定位; 4 一个对象轮播在多个 MEPG-2 节目上的分布式实现。
3.3.5.10 应用 PSI 描述(图 3-9)

① carousel id descriptor 原本被定义在PMT的第一循环中,在DVB被定义在第二循环中,用于表明一个对象 轮播在那个ES流上,可以通过对formatid的用法跳过DSI-DII的传统模式达到快速定 位的目的.必须存在。 ② association tag descriptor 位于PMT的第二循环,与stream id descriptor类似,用于指明association_tag 和PID(es流)的对应关系.可选. ③ stream id descriptor 位于PMT的第二循环,用于指明component_tag和PID(es流)的对应关系,必须存在 ④ deferred association tag descriptor 位于PMT的第一循环,表明不同service上的对象轮播association_tag和service 的对应关系,处于PMT的第一循环中 ⑤ association_tag 和 component_tag 的关系 association_tag的低位字节应该等于此ES对应的component_tag ⑥ association_tag 的映射流程

35

上海交通大学工程硕士学位论文

association_tag

association_tag in (any of the) deferred_association_descript ors No

Yes

Go to PMT

association_tag_descriptors in the elementary stream loopMatch No

Yes match

LSB of association_tag in (any of the) stream_identi.er_descriptors in the elementary stream loop Match

Yes match

Invalid Object Carousel

图 3-9 应用 PSI 描述
Fig3-9 Describe of using PSI Table

如果deferred_association_tag_desc中的transport_stream_id为0x0000,则表 示接收端当获得一个服务时可以自由选择ts流。
3.3.5.11 轮播无效

出现以下几种情况可以认为轮播无效了: PMT中移除了DSI所对应的component_tag DSI中任意值的变化 Carousel id值的变化 PAT中移除了对应的PMT 相关的信息无法获取,如PMT

36

上海交通大学工程硕士学位论文

3.5 本章小结
在DVB系统结构中是用MPEG-2传送流的数据结构来传送数字视频服务数的。 MPEG-2数据结构中复用后码流的系统描述信息是放在PSI、SI表中的。PSI表主要是由 程序关联单(PAT)、程序映射表(PMT)、条件访问表(CAT)等组成,它可以使接收端的 集成接收解码器自动地为解复用和解码被复用在同一TS码流中的不同的节日码流进 行配置。SI服务信息最主要的四类表是:NIT, BAT, SDT, EIT,它是DVB数据流的一 部分,它可提供有关服务和事件的辅助信息。表中包含了整个广播网络的物理特征和 节目信息。 DSM-CC来源于ISO/IEC13818-6,定义了用户-用户、用户-网络的各种协议栈。 根据DVB数据广播标准,数据广播标准规定的协议主要有:数据管道(Data piping),数据流(Data streaming),多协议封装(Multiprotocol encapsulation), 数据轮播和对象轮播(Data Carousel and Object Carousel). 对象轮播标准是我们开发对象轮播器的基础,定义了文件、目录、流媒体等作为 对象播发的原理和过程,下面一章我们将详细描述如何来具体实现对象轮播发生器。

37

上海交通大学工程硕士学位论文

第四章 DVB 数据广播中对象轮播器的实现
对象轮播器(OCG)是数据广播中一个非常重要的工具,终端机顶盒的中间件或 浏览器所能显示的信息、数据或执行的各种应用程序,都依赖 OCG 的播发,就像在第 一章的图 1-2 所示,前端系统必须支持 OC 播发才能发挥终端系统软件的作用,因此 说 OCG 在数据广播中具有非常重要的地位。我们根据国家的相关数据广播规范,结合 自己的 SI 编辑器、中间件等产品,开发了前端 OCG。下面将阐述 OCG 开发的要点和 过程。 OCG 定位为一个支持 oc 协议的播发软件,要求能做到支持网关,文件,目录对 象的播发, 以后可方便扩充到支持流, 流事件对象的播发, 要求可对各个对象, module 进行相关的属性控制, DSI, 对 DII, 数据的播发策略的支持。 DDB 最终一个 oc carousel 可以“绑定”到一个或多个 application,从而实现 DVB-J 和 DVB-HTML 的应用的支 持。[23、33、34、35、38]

4.1 OC 数据模型
从用户的需要播发的数据到最终生成的 TS 流,为了控制相关的属性,我们定义 了四层数据模型,这些数据模型的转换代表了整个程序的控制流程。 (1)外部数据模型。 表示为物理存储介质上的真实目录结构,作为 OC 发生器的数据输入源。以某一 个目录为入口, 由此可映射为 OC 的网关 (gateway) 他们是产生对象模型的基础源。 。 (2)对象模型。 代表 OC 中的各种不同的对象的实体,是真正需要播发的数据。由外部数据模型 转化而成,但是外部数据模型只能构造网关,目录和文件对象,流(stream)和流事 件(stream event)在转化后的对象模型上可通过增加动作插入到整个对象模型中。其 他的对象同样也具有增加,删除和修改的动作。他们是产生模块模型的基础源。 (3)模块模型。 在对象模型构造好了之后,我们要依据一定的策略需要归并一个或多个对象到某 个模块(module)中,一个或多个 module 需要归并到某个组(group)中,每个模块 都可以设置各自的属性, 通常属性是压缩的支持。 这个过程我们称之为构造模块模型, 它是产生 DSMCC MESSAGE 的基础源。 (4)DSMCC MESSAGE 数据模型 在模块模型构造好了之后,我们就在他的基础上生成 DSI,DII,DDB 等 DSMCC MESSAGE 消息,构造此模型的目的是用于播发策略的支持和 dump 数据的需要。

38

上海交通大学工程硕士学位论文

构造到这一步一个完整的 oc 轮播就算建立完毕了, 在此轮播基础上我们可以 “绑 定”一个或多个应用,以支持 mhp AIT 的支持。

4.2 DC 数据模型
从用户的需要播发的数据到最终生成的 ts 流,为了控制相关的属性,我们定义 了四层数据模型,这些数据模型的转换代表了整个程序的控制流程。 (1)外部数据模型。 表示为物理存储介质上的真实目录结构,作为发生器的数据输入源。以某一个目 录为入口。他们是产生对象模型的基础源。 (2)对象模型。 代表oc中的各种不同的对象的实体,是真正需要播发的数据。由外部数据模型转 化而成, 但是外部数据模型只能构造, 目录和文件对象, (stream) 流 和流事件 (stream event)在转化后的对象模型上可通过增加动作插入到整个对象模型中。其他的对象 同样也具有增加,删除和修改的动作。他们是产生DC模块和组模型的基础源。 (3)模块模型。 在对象模型构造好了之后,我们要分别构造Module和Group模型,在DC中我们用 目录构造每个Group,然后将每个目录下的文件作为Module归并到相对应的Group中, 每个模块都可以设置各自的属性,通常属性是压缩的支持。这个过程我们称之为构造 模块模型,它是产生DSMCC MESSAGE的基础源。 (4)DSMCC MESSAGE数据模型。 在模块模型构造好了之后, 我们就在他的基础上生成 DSI, DII, DDB 等 DSMCC MESSAGE 消息,构造此模型的目的是用于播发策略的支持和 dump 数据的需要。

4.3 系统结构
OC发生器是和目前整个前端系统是紧密联系的。 前端系统含有SIG,OCG,DBS,数据 库 等 相 关 组 件 。 其 相 应 的 carousel 信 息 , carousel 的 具 体 配 置 信 息 , 绑 定 的 application信息和PSI/SI信息都需要写到前端数据库中。OC发生器最终生成的TS数 据通过网络接口传到DBS。图4-1是OCG和前端的网络结构。

39

上海交通大学工程硕士学位论文

视频
文件服务器

数据库服务器 播发服务 器DBS, 带播出卡 SI编辑器

复用器

调制器

混合器

H F C 网 络

SI发生器

OC发生器

播发服务 器DBS, 带播出卡

复用器

调制器

图4-1 前端网络结构
Fig4-1 Configuration of Headend

每个轮播维护各自的DBS端口,负责将生成的DSI/DII/DDB的ts包传送给DBS,每 个轮播可以选择是否和一个应用绑定, 由此产生的AIT/PSI/SI的相关描述写入到数据 库中。本轮播的配置信息,object和module的组织和属性信息将以XML的格式存放到 数据库中,以供下次能自动的恢复配置和属性信息,同时供SIG (Si generator)生 成相应的PAT,PMT,SDT,AIT,NIT等表。如图4-2所示:

40

上海交通大学工程硕士学位论文

Si generator

DB read data

数据库

Net data DBS

Send

数据库 接口

Port A Port1
Net Send

DB read/write data

DB r/w data

DB read/write data

Oc 1 Oc2

bind

Applicatio 1 Application2

Ts

调 度

Port2

Net Send

bind

Port3

Net Send

Oc3

No bind

网络 接口

Oc generator

图 4-2 OCG 和前端的关系
Fig4-2 Relationship between OCG and Headend

DBS 主要是将 SIG 和 OCG 产生的码流按特定的调度策略复用传输。

41

上海交通大学工程硕士学位论文

图 4-3 为 OC 与 SI 之间的关系,图 4-4 是 OC 实例图。
SDT Program_num Data_broadcast_desc Transcationid(DSI) Data_broadcast_id Component_tag transport stream id Program_num PMT association_tag deferred_tag_desc Association_tag_desc Component_tag Element stream Stream_id_desc carousel_id_desc Data_broadcast_id_d esc Formatid=0x01 map (LSB)association_tag =Component_tag

PAT Program_num

Y

DSI(transcationid) Servicegatewayinfo() IOP::IOR() IOP:IOR() Profile() BIOP:profile() Objlocation() Objkey Moduleid Connbinder() Tap() Association_tag Transcationid(DII) LiteProfile() Servicelocation() NSAP()

Moduleid objectkey DII() transcationid Module fo() Moduleid Tap() Association tag

DDB(moduleid) BIOP::Message Filemessage() Objectkey Dirmessage() Objectkey Bind() IOR() Objectkey Message()…

图 4-3 OC-SI 关系图 Fig4-3 OC-SI relationship

42

上海交通大学工程硕士学位论文

图 4-4 OC 实例图 Fig4-4 Example of OC

43

上海交通大学工程硕士学位论文

4.4 数据库设计
4.4.1 概述 前端数据库服务器,运行于 Windows2000 Server 平台之上,采用 Microsoft SQL Server200 数据库系统,默认数据库名为 XXX。数据库是 OCG 用于存储,修改和前端 系统其它模块进行数据交互的核心。该数据库包括以下主要功能: (1)SI 基础信息的存储(如:网络类型、业务类型、ES 流类型等) ; (2)SI 网络信息的存储; (3)SI 传输流信息的存储; (4)SI 业务信息的存储; (5)SI ES 流信息的存储; (6)SI EPG 信息的存储; (7)DVB 数据广播信息的存储; (8)MHP 应用信息的存储; (9)SI 扩展、自定义描述子的存储; (10)OUI 系统升级信息的存储; (11)对 NVOD、马赛克、CA 信息的存储; (12)数据库更新的自动监控; (13)数据库不同版本历史信息的存储。

44

上海交通大学工程硕士学位论文

4.4.2 数据库关系图
图 4-5 是数据库的关系结构图。
NetworkType TS_Define Satellite UpdateLog PrivateData

ONIT

NIT

Cable

LanguageCode

PrivateDescriptor

CA_Define

TSDT

Terrestrial

CountryCode

CN_1

ServiceType

SDT

BAT

BDT

CN_2

PID_Map

EIT

StreamContent

UN_1

StreamCategory

PMT

Event_Component

ComponentType

UN_2

StreamType

AIT_APP

OUI_Info

OUI_Define

Broadcast_Define

APPT

Carousel_Info

App_Bind

图 4-5 数据库关系
Fig4-5 Instruction of Database 外键 –> 主键 相关字段值可在所指向的表中找到 4.4.3 关键表定义

限于篇幅和产品的知识产权保护,本文只给出和 OCG 相关的部分表定义。 表 1【NIT】Network Information Table
序号 1★↑ 2↑ 3 列名 network_id priority default_language_code 数据类 长度 允许空 默认值 型 int int char 4 4 3 0 "CHI" 描述 【ONIT】级联 Update、不级 联 Delete 显示优先级 该网络默认语言,具体描述 见【LanguageCode】

45

上海交通大学工程硕士学位论文

表 2【TSDT】Transport Stream Information Table
序号 1★ 2↑ 3↑ 4 5 6 列名 数据类型 inside_ts_id int network_id int transport_stream_id int original_network_id int delivery_system_id description int varchar 长度 4 4 4 4 4 127 "" 允许空 默认值 描述 IDENTITY(1,1) 【NIT】 级联 Update、 级联 Delete 16 位无符号 0x0001~0xFFFF 16 位无符号 0x0001~0xFFFF 根据网络类型,关联到 Cable,Satellite,Terrestrial 16 位无符号 0x0001~0xFFFF 该 TS 详细描述

表 3【SDT】Service Description Table
序号 1★ 2↑ 3↑ 列名 inside_service_id inside_ts_id service_id 数据类型 int int int 长度 4 4 4 允许 空 默认值 描述 IDENTITY(1,1) 【TSDT】级联 Update、级联 Delete 16 位无符号 0x0001~0xFFFF TS 内唯一 当 Service_type=5 时起作用 该 inside_service_id 指向的 Service 的 Service_type 必须 为4 16 位无符号 0x0001~0xFFFF, 0: 不使用频道号, 网络内唯 一 ,由应用负责检查 每日节目开始时间, NVOD 时有 特殊作用 13 位无符号 0x0080~0x1FFF, 由 PID_Map 表映射, 内唯一, TS 由应用负责检查 13 位无符号 0x0080~0x1FFF, 由 PID_Map 表映射 1:not running 2:starts in a few seconds 3:pausing 4:running no EIT schedule information no EIT present/following information 0: not scrambled 1: Scrambled for enable CA_identifer_desc use

4

TVOD_reference_service_id

int

4

0

5 6 7 8 9 10 11 12

channel_number start_time PMT_PID PCR_PID service_type running_status EIT_schedule_flag

int datetime smallint smallint tinyint tinyint bit

4 4 8 2 2 1 1 1 1

0 6:00:00

0x1FFFF 1 4 0 0

EIT_present_following_flag bit

13

free_CA_mode

bit

1

0

46

上海交通大学工程硕士学位论文

14 15 16 17

service_name provider_name description country_avail

varchar varchar varchar varchar

127 127 127 127

"" "" "" ""

不能为空 不能为空 Country Availability [country_code] & [country_code] Country unAvailability [country_code] & [country_code] multilingual_service_name_ descriptor, excluding header CA_identifier_descriptor Data, excluding header Mosaic_descriptor Data, excluding header

18

country_unavail

varchar

127

""

19 20 21

multi_service_name_desc CA_identifier_desc Mosaic_desc

varbinary varbinary varbinary

255 255 255

√ √ √

47

上海交通大学工程硕士学位论文

表 4【PMT】Elementary Stream Information Table
序号 1★ 2↑ 3↑ 4↑ 列名 inside_ES_id inside_service_id stream_type ES_PID 数据类型 int int tinyint smallint 长度 4 4 1 2 允许 默认值 空 描述 IDENTITY(1,1) 【SDT】 级联 Update、 级联 Delete 2: 13818-2 Video 13 位无符号 0x0080~0x1FFF, 由 PID_Map 表映射, TS 内唯一, 由应用负责检查 12 位无符号 0x0000~0x0FFF, 高 8 位为 stream_content, 低 8 位为 component_type 16 位无符号 0x0001~0xFFFF 低 8 位相当于 component_tag, 0 表示不用 Stream_ID_Descriptor 16 位无符号 1:Bit Pipe 2,3,4:Data Stream 5:Mp en 6:DC 7:OC 10:SSU association_tag_descriptor, excluding header data_carousel_info or object_carousel_info carousel_identifier_ descriptor, excluding header ancillary_data_descriptor, excluding header ISO_639_LANGUAGE_DESCRPITOR, excluding header AC_3_descriptor, excluding header

2

5

Component_type_id

smallint

2

0

6

association_tag

int

4

0

7 8 9 10 11 12 13 14 15 16 17 18

data_broadcast_id description association_tag_desc data_broadcast_selector carousel_identifier_desc ancillary_data_desc iso_639_language_desc AC3_desc teletext_desc VBI_teletext_desc VBI_data_desc subtitling_desc

int varchar varbinary varbinary varbinary binary varbinary varbinary varbinary varbinary varbinary varbinary

4 127 255 255 255 1 255 255 255 255 255 255 √ √ √ √ √ √ √ √ √ √

0 ""

48

上海交通大学工程硕士学位论文

表 5【APPT】Application Define Table
序号 1★ 2↑ 3↑ 4↑ 5 6 7 7 8 9 10 11 12 13 14 15 16 17 18 19 列名 inside_APP_id application_type organisation_id application_id inside_ES_id app_control_code data_available_flag service_bound_flag visibility application_priority icon_flags icon_locator application_name parameter base_directory classpath_extension initial_class description application_profiles application_name_desc 数据类型 int smallint bigint int int tinyint bit bit tinyint tinyint int varchar varchar varchar varchar varchar varchar varchar varbinary varbinary 长度 允许空 默认值 描述 4 IDENTITY(1,1) 0x00~0x7FFF 1:DVB-J 2 1 2:DVB-HTML 8 0 32 位无符号 4 0 16 位无符号 0x00-0xfffd 4 0 the ES that Transport the App 1:AutoStart 2:Present 3:Destroy 4:Kill 5:Prefetch 1 2 6:Remote 1 0 应用的数据是否正在播发 1 0 1 3 0 1 2 3 1 0 4 0 16 位无符号 127 "" Now only support the default 127 "" language name 127 "" for DVB-J and DVB-HTML DVB-J:base_directory 127 "" DVB-HTML: physical_root 127 "" only for DVB-J DVB-J:initial_class 127 "" DVB-HTML: initial_path 127 "" 255 √ application_name_descriptor, 255 √ excluding header

注: 当前通过字段5[inside_ES_id]表示该Application的传输方式, 且只支持OC/DC, 所以表[APP_TP] 暂不使用,仅供必要时扩展。

49

上海交通大学工程硕士学位论文

表 6【APP_TP】Application Transport Protocol Table(仅供必要时扩展)
序号 列名 1 ★ inside_APP_id ↑ 2 ★ transport_protocol_label ↑ 3 4 5 6 7 8 protocol_id inside_ES_id alignment_indicator URL_base URL_extension prefetch_desc 数据类型 int 长度 允许空 默认值 4 描述 【APPT】级联 Update、 级联 Delete

tinyint int int bit varchar varchar varbinary

1 4 4 1 127 127 255 √

1 1 0 0 "" "" 0x0000~0xFFFF 1:OC 2:IP 3:HTTP the ES that Transport the App for transport via IP for transport via IP & HTTP for transport via HTTP for MHP OC, prefetch_descriptor , excluding header

表 7【AIT_APP】AIT & App Association Table
序号 列名 数据类型 长度 允许空 默认值 描述 the ES that Transport the AIT 【PMT】级联 Update、级联 Delete 【APPT】级联 Update、级联 Delete

1★↑

inside_ES_id

int

4

2★ 3 4 5 6↑

inside_APP_id app_control_code service_bound_flag visibility application_priority

int tinyint bit tinyint tinyint

4 1 1 1 1 2 0 3 0

7

external_app_flag

bit

1

0

是否为 External Application, 参见 MHP external application authorization descriptor

50

上海交通大学工程硕士学位论文

表 8【Carousel_Info】Object&Data Carousel Information Table
序号 1★ 2↑ 3 4 5 6 列名 carousel_id inside_ES_id inside_APP_id time_interval enable_flag data_broadcast_id 数据类型 bigint int int int bit int 长度 8 4 4 4 1 4 0 0 1 7 允许空 默认值 描述 32 位无符号 【PMT】级联 Update、级联 Delete 用来播 DSI 的 ESID 该 Carousel 绑定的 App, OC 自动检测更新间隔 0: disenabled 1: enabled 16 位无符号 1:Bit Pipe 2,3,4:Data Stream 5:Mp en 6:DC 7:OC 该 Crousel 所对应的 CMS 项目数据, [Project_Info]表 XML 格式

7 8 9

cms_project_id config_data description

int text varchar

4 16 127

0 "" ""

注:当该表中inside_ES_id字段值变化时,须通过触发器同时修改【APPT】表对应的 inside_ES_id字段值

表 9【APP_BIND】Carousel & App Association Table
序号 1★ 2↑ 列名 inside_APP_id Carousel_id 数据类型 int bigint 长度 4 8 允许空 默认值 描述 【APPT】级联 Update、 级联 【Carousel_Info】 级联 Update、级联

注:此表表示应用和一个crousel关联的信息,一个carousel上可以关联多个应用,当插入 或删除记录时应该有触发器维护APPT表对应的inside_ES_id值
CREATE VIEW [dbo].[v_Appt_Bind_Carousel] AS SELECT dbo.APPT.* , dbo.Carousel_Info.carousel_id , dbo.Carousel_Info.inside_ES_id AS ES_id FROM dbo.APPT INNER JOIN dbo.APP_BIND ON dbo.APPT.inside_APP_id = dbo.APP_BIND.inside_APP_id INNER JOIN dbo.Carousel_Info ON dbo.APP_BIND.carousel_id = dbo.Carousel_Info.carousel_id GO

51

上海交通大学工程硕士学位论文

4.5 程序流程
4.5.1 产生新的轮播
构 造 carousel 初 始 状 态 为 Object 链表校验无效

说明:虚线框为可选动作

选取外部数据源

设置 carousel 与 DBS 接口属性

删除,添加 object
Obj 校验

构造 object 模型

修改 module 属性 构造 XML

依据策略构造 group/module 模型

失败 数据库操作 结束 1、 不删除,继续校验 2、 不删除,不在校验

失败 Object 链表校验
继续校验

3、删除

成功 模块校验 成功 初始状态无效 失败

构造 DSMCC MESSAGE 模型

数据经过处理

初始状态为有效,依据 策略播发传送 TS
经过处理的数据

图 4-4 产生新的轮播
Fig4-4 Generate the new Object Carousel

52

上海交通大学工程硕士学位论文

在该过程中,OC和DC略有不同,DC没有删除和添加object的过程,也不考虑模型 构造策略问题,除了可以对Module进行是否压缩的设置外,不需要进行其他的设置
4.5.2 从数据库还原一个轮播

该过程 OC 和 DC 均相同
失败 结束

连接数据库读 取信息

XML 模型 依 据 XML 构 造 object 模 型 和 group/module 模型 Obj,group/module 模型 失败@ Obj 校验 构造 XML 成 功 校验模块模型 成 功 构造 DSMCC MESSAGE 模型

失败@ 数据库操作

失败 数据库保留原 来的数据

成 功

状态为有效,依据策略 播发传送

经过处理的数据

初始状态无 效。 不能播发 数据

注释:失败@ :obj链表被改变,需要重新写数据库。

图 4-5 从数据库还原一个轮播 Fig4-5 revert an Object Carousel from database

53

上海交通大学工程硕士学位论文

4.5.3 删除一个轮播

注:该过程 OC 和 DC 均相同
失败 连接数据库读 取信息 失败 数据库操作 结束 结束

界面删除

图4-6 删除一个轮播 Fig4-6 Delete an Object Carousel 4.5.4 XML 格式定义

XML 格式定义
<?xml version="1.0" encoding="GB2312" standalone="yes"?> <carousel> <carousel-attribute entry="" carousel_name=""carouselId = "" version = "" blockSize="" dbs_ip ="" dbs_port =""compress =""type ="" network ="" ts= ""service=""tag ="" pid =""state="" keyvalue="" modulevalue=""policy=""> <directory> <srg moduleid=""key=""fkey=""name=""pathname=""netpath=""location= ""carouselId =""/> <dir moduleid="" key= "" fkey ="" name=""pathname=""netpath=""location=""carouselId=""/> <file moduleid="" key=""fkey=""name="" pathname=""netpath="" location=""carouselId =""/> <str moduleid="" key=""fkey=""name=""pathname=""netpath=""location=""carouselId ="" video = ""audio = "" data = "" biop_program = ""npt = ""/> <ste moduleid="" key=""fkey=""name=""pathname=""netpath=""location=""carouselId ="" video = "" audio = ""data = ""biop_program = "" npt = ""status = ""event = ""> <event_node eventid = "" eventname = ""/> <ste/> </dir> </srg> </directory> </carousel_attribute> <group groupid = ""modulenumbers = ""> <module moudleid = "" compress = "" lable = "" lable_name = "" caching = "" caching_priority_value = ""

54

上海交通大学工程硕士学位论文

caching_transparentcy_level = ""/> </group> </carousel>

Xml 各项数据的含义: 其中 DC 只含有轮播属性,其他属性不存入 xml 文件。
轮播属性 :

entry: 入口路径,是整个Carousel的入口 carousel_name:Carousel名称 carouselId:Carousel标识,唯一确定一个Carousel version:版本号 blockSize:块大小 dbs_ip:相对于DBS的IP地址 dbs_port:对应DBS的端口号 compress:是否压缩 type:carousel类型,OC或者DC,目前只有OC network、ts、service、tag、pid:网络属性 state:是否包含外部数据 keyvalue:当前最大的key值 modulevalue:当前最大的模块值 policy:分组策略
dir,srg,file,ste,str(共同属性)

moduleid:模块ID key:本身Key值,fkey:父key值 name:本身的名称 pathname:绝对路径 netpath:相对于网关的路径,包含名称 location:是否为外部对象 carouselId:所属Carousel的carouselId
str,ste(共同属性)

video:视频 audio:音频 data:数据 biop_program: 是否含有用途值为BIOP_PROGRAM_USE的tap描述 npt:是否含有用途值为STR_NPT_USE的tap描述

55

上海交通大学工程硕士学位论文

ste

status:STR_STATUS_AND_EVENT_USE的tap描述 event:是否含有用途值为STR_EVENT_USE的tap描述 eventid:事件ID eventname:事件名称
group

groupid:组号 modulenumbers:组中含有的模块个数
module

moduleid:模块号 compress:是否压缩 lable:是否含有lable描述 lable_name:lable名称 caching:是否含有caching描述 caching_priority_value:优先级 caching_transparentcy_level:传送级别

4.6 前端OC数据打包流程
OCG 用于产生传输符合 OC 协议的 TS 包,是属于整个前端系统的一部分,在前端 系统中同时工作的还有 SIG,用于完成 SI/PSI 信息的封装,如 PAT,PMT,SDT,AIT 等。 数据的打包过程(见图4-7): 首先在数据的打包前,需要为对象轮播的传输分配 一些标识符,如为DSI分配PID、component_tag, Transactionid,为DII分配PID, component_tag, Transaction_id,为DDB分配PID、component-tag,为其中的数据域 分配service_id, download_id以及为所传输的对象分配ObjectType, ObjectKey等: 然后将要传输的H录、文件等对象进行对象轮播的打包成TS流等待传输。打包过程为: 先按照单对象轮播域数据生成将多对象轮播中的一个对象轮播域的对象进行封装, 然 后根据在对象轮播中数据生成过程中构造DDB时记录的downloadid, ModuleId, ModuleSize, ModuleVersion, modulelnfoByte等模块描述信息来生成DII消息。 将DII 消息以DSM-CC Section的格式进行打包,也就是将DII的内容作为Section中的有效负 载;再将Section打包成TS流。此轮过程完成后,若此时整个网络中还有对象轮播域没 有完成上述的打包过程,则转到上面进行下一个对象轮播域的处理。 描述信息的打包过程:根据在对象打包过程中所记录的ModuleId, ModuleSize, ModuleVersion ,ModulelnfoByte以及分配carousel_id,moduleId, objectKey值,为

56

上海交通大学工程硕士学位论文

Tap指定相应的值以及分配的轮播NSAP地址等模块描述信息来构造所传输的对象参考 IOR,然后使用构造完成的IOR中的相关域来构造下载控制信息DSI消息。对DSI消息进 行DSM-CC Section打包,再进行TS流的打包,打包过程与上面描述的相同。 控制信息的生成过程:其实也就是PSI/Sl信息中一系列表的生成过程,由SIG完 成。在SDT表中对数据广播服务进行描述,完成对分配的service id以 service_descriptor, data_broadcast_descriptor的描述。其中service_ descriptor中包括:服务类型service type ,服务提供商、名称等。 Databroadcast_descriptor中包括:databroadcagt_id , componen_tag,carousel_type_id, transaction_id;在PMT表中对该服务对应的 program进行描述,完成对分配的program_number, data-broadcast_id_descriptor 以及各TS流的elementary_PID, stream_type, stream_identifier_descriptor等的 描述;在PAT表中对该program对应的PMT进行描述,完成对分配的program number及 PMT PID的描述; 如果一段oc码流和某个应用相关,还要生成AIT表,用于描述应用的名称, application_id,application_controlcode_descriptor, transport_protocol_descriptor等相关描述。

57

上海交通大学工程硕士学位论文

数据打包准备

分配标志符

以下载数据块(DDB)格式装载模块(Block)

以 DSM-CC Section 的格式进行打包

传输流封装

N 完成? Y 构造传输对象参考(IOR)

构造下载信息指示(DII)

传输流封装

插入节目业务描述表(SDT)

插入节目映射表(PMT)

插入节目关联表(PAT)

插入节目业务关联表(BAT)

插入网络信息表(NIT)

图4-7 OC数据打包流程
Fig4-7 Process of OC data packet

58

上海交通大学工程硕士学位论文

4.7 归并策略
由于 OC 协议的中心思想是每个“物件”都是对象,gateway(网关,文件系统入 口) ,文件,目录,流,流事件都是一个个对象,而对象理论上是可以松散的分布在 任何地方的,对应于 OC 协议就是可以处于任何 DDB 中,这是 OC 中最为灵活也最为麻 烦的地方,同时,每个 DDB 是通过 DII 中的相关信息来定位,无形中大大增加了收端 还原数据的复杂度。在轮播的环境中,后端如何快速建立以及还原整个文件系统取决 于轮播周期,后端的收取效率以及前端的数据组织方式,我们说的归并策略就是指的 数据组织方式。对象可以松散的分布,可以按目录分布,也可以按模块大小分布,可 以按名字分布等等。不同的归并策略直接影响到后端效率。 通常的将数据采用 oc 协议打包是将所有的对象按个数或按大小或目录顺序生成 数据,我们称为普通归并。后端还原文件系统是一个先还原目录后挂接文件的过程, 因此一个好的归并策略直接影响到后端的效率。针对这一技术特点,我们整合了一套 我们称之为智能归并的最佳策略: 先将网关和所有的目录对象按深度优先策略收集起 来,将他们放置于同一个 DDB 中,然后将文件按大小(以 64k)为单位(大于 64K 的 独立放置)放置在其它不同的 DDB 中。这样做的好处是: 1. 便于后端快速还原文件目录树 2. 64K 的大小方便接受,利于在嵌入式环境中使用 3. 方便后端实现文件监控 4. 提供收端接收数据有效性,避免接收端的空转。

4.8 本章小结
实现 OCG,首先要建立数据模型,包括对象轮播和数据轮播,然后根据 OC 与 前端的关系、OC 与 SI 的关系来,依据前述的流程来构造并实现 OCG。在 OCG 的构 造中采用了 XML 模型的数据库, 因此对 XML 作了描述, 最后描述了 OCG 的打包过 程。通过前面的这些步骤,整个 OCG 就构造完成了。由于本文的重点是 OCG,基于 整个前端系统的 SIG 和 DBS 就不再详细介绍了。下面一章将对实现的 OCG 进行程 序界面流程的构造和测试。

59

上海交通大学工程硕士学位论文

第五章 OCG 系统的实现和测试
我们前面实现了前端 OC 发生器,本章将对 OCG 进行界面设计和功能、性能测 试。

5.1 界面流程的实现
界面以轮播为单位,支持轮播的建立和删除,每个轮播下可挂 object 树形图和 grp/module 树形图,支持属性查看和某些属性的修改,支持发送和生成数据,支持多 个 application 的绑定,属性设置,应用删除。支持操作 LOG 信息。
5.1.1 主界面

OCG 的主界面如图 5-1 所示,左边一栏是轮播视图,右边栏目是属性视图,下面 是 LOG 信息栏。

②属性视图 ①轮播视 图

③Log 信息

图 5-1 OCG 的主界面图 Fig5-1 Main interface of the OCG

在主界面上可以进行轮播的添加, 删除, 修改, 应用的绑定、 修改和删除等操作。

60

上海交通大学工程硕士学位论文

5.1.2 轮播的添加

在主界面中可以通过三种方法来添加新的轮播: 轮播视图中通过右键菜单添加新 的轮播;通过工具栏添加;通过菜单进行添加。 添加轮播的流程可以通过七个步骤来实现: 步骤一 基本设置,首先对文件路径、轮播名称、轮播 ID、块大小等进行配置, 然后对 DBS 进行配置,包括 IP 地址、节点号等,再对轮播进行配置,包括轮播类型、 是否压缩等。基本配置完成以后,如果轮播类型选择 OC 则进入步骤二,如果选择 DC 则进入 步骤五 步骤二 ES 流的选择, 以选择适当的 ES 流。 通过 ES 流过滤,该步显示的 ES 流为满足条件的 ES 流,类型为 11,广播 ID 为 7 的 ES 流。 步骤三 OC 对象列表部分, 在对话筐中显示对象列表, 并显示相应的 key 和 fkey 值。
归并策略:

a、按模块大小归并,在归并对象到模块时,按模块的大小归并,模块值在全局设置 中设定,默认值为 65535 字节。取值范围为 (1024~1040896(4066*256)). b、按文件个数归并,在归并对象到模块时,按文件的个数归并到模块,文件个数在 全局设置中设定。默认值为 20 个文件。 c、按目录归并,在归并对象到模块时,按目录来归并,一个目录默认为一个模块。 具体可以被添加的对象包括目录对象,文件对象,流对象,流事件对象和外部对 象。通过选择相应的归并策略,完成增加,删除,修改对象列表的构造,然后进入步 骤四操作。 步骤四 模块模型,改变模块的相关属性:标签、缓存、模块压缩,设置完成以 后,点击“完成” ,一个新的对象轮播(OC)就建立完成,并显示在左边的轮播视图中。 步骤五 通过ES流过滤(该步显示的ES流为满足条件的ES流,类型为11,广播ID 为6的ES流)选择适当的ES流。刷新:用来重新从数据库读取SI配置信息。 步骤六 对象列表显示DC数据列表,见图5-2。下一步,进入第七步 步骤七 DC模块列表显示组和模块的列表,见图5-2。点击完成,即完成了一个 数据轮播的创建,同时在左边树状试图中显示出来。

61

上海交通大学工程硕士学位论文

图5-2 对象列表和模块列表
Fig5-2 Objects list and Modules list

5.1.3 轮播删除

删除轮播有三种方法:右键菜单删除;工具栏删除;主菜单删除。
5.1.4 轮播修改
单个轮播的修改

在左边视图中,选中要修改的轮播,点击右键进行对选中轮播的修改,如图 5-3 所示:

图5-3 单个轮播的修改
Fig5-3 Single OC’s modification

62

上海交通大学工程硕士学位论文

多个轮播的简单修改

此项同上述方法的区别在于不能对基本流进行修改,只能修改一些基本的属性。
5.1.5 应用的绑定,修改和删除

OC和DC绑定应用的不同在于两者的描述子不同。详见数据库设计和相关标准。
5.1.5.1 应用添加和删除

步骤一:应用属性设定,包括应用选择、可视性、应用名称、语言、图标类型、 控制代码、Service绑定、优先级。 步骤二:HTML设定(应用属性中选择应用类型为DVB-HTML时,DVB-J的各个选项 不能编辑)包括Physical_Root、Initial_Path、图标文件、参数、描述。DVB-J设定 包括根目录、主类文件、图标文件、扩展路径、参数、描述。
5.1.5.2 应用的修改

在左边的视图中,选中要修改的应用,通过右键菜单进行修改,修改与添加应用 的不同之处在于应用的选择和控制代码的固定性, 只能对已经绑定的应用的属性进行 修改,而不能改变应用选择和控制代码(如图5-4所示)。其他参数和选项都同应用 的绑定相同。可以参考添加应用。

图 5-4 应用的修改
Fig5-4 Modification of Applications

63

上海交通大学工程硕士学位论文

5.1.5.3 应用的删除

选中要删除的应用,通过右键菜单即可把选定的应用删除。应用删除以后,可以 释放原来占用的应用。
5.1.5.4 应用的状态

有效状态:Carousel被正常播发时,应用为有效状态。 无效状态:1、DBS端数据被清空。2、Carousel没有被正常播发。3、OCGen退出。
5.1.6 全局设置

在全局设置中 “打包策略(测试专用)”选项是为了测试DDB打包发送时section是 否连续的选项,一般为不可操作,默认为不联系,也就是均匀发送,如图5-5所示:

图5-5 全局设置
Fig5-5 Entire configuration

该相的激活是在该对话筐的标题栏双击鼠标左键,然后进行该项的设置。

5.2 测试结果
我们采用了 Dell 的 poweredge1800 服务器、 Dectek 的播出卡, 泽华园的 QAM 调 制器,STi5105 平台的机顶盒作为接收端,内置了 Java 中间件系统,构成一个实际的 系统来对 OCG 进行测试,测试的内容主要包括三部分: ① 文件,目录,流,流事件,lite 数据,及网络数据等码流的正确性。

64

上海交通大学工程硕士学位论文

② 应用测试。 ③ 界面测试 其中第 1 部分在计算机的 simulator 上来进行,第 2、3 部分应用和界面在实际系 统中进行测试。 做出不同的码流文件,通过码流分析器和 simlater 上模拟测试,来检验码流的正 确性。通过手工操作,简单的测试界面流程的正确。
5.2.1 功能测试结果
5.2.1.1 码流测试

测试前提:网络 ID: 4698,TS_id: 1,Service_id :2 ,Es_pid : 1501,tag : 10,带宽:5M(针对 OC 码流的测试) 。

65

上海交通大学工程硕士学位论文

表 5-1 码流测试
编 号 1 2 3 4 测试条件 原始的目录树结构 在创建 OC 的过程中,添加文件 在创建 OC 的过程中,添加文件 夹 在创建 OC 的过程中,添加流事 件,添加到现有目录的不同目录 下(其中包含音频,视频,数据, 和不同用途的各项测试) 在创建 OC 的过程中,添加流, 添加到现有目录结构的不同目录 下(其中包含音频,视频,数据, 和不同用途的各项测试) 在创建 OC 的过程中,添加流, 流事件,进行流和流事件的综合 测试 在创建 OC 的过程中,添加外部 数据到现有目录结构的不同目录 下 流,流事件,目录,文件,外部 数据不同组合的综合测试 在现有目录结构上添加流,流事 件,目录,文件,外部数据等不 同组合的综合测试 在存在的对象列表中删除文件, 目录,流,流事件,外部对象等 各种对象的测试 应用 amici amici,俄罗斯方块等应用 修改 OC 绑定的基本流 期望结果 能够在 simulator 上显示出码流的原始目录树 能够在 simulator 上显示出码流的原始目录树 能够在 simulator 上显示出码流的原始目录树 能够在 simulator 上显示出码流的原始目录树 结果 通过 通过 通过 通过

5

能够在 simulator 上显示出码流的原始目录树

通过

6

能够在 simulator 上显示出码流的原始目录树

通过

7

能够在 simulator 上显示出码流的原始目录树

通过

8 9

能够在 simulator 上显示出码流的原始目录树 能够在 simulator 上显示出码流的原始目录树

通过 通过

10

能够在 simulator 上显示出码流的原始目录树

通过

11 12 13

14 15 16

OC 版本号的修改 OC 名称,DBS 服务器,节点号 的更改 重新开启程序

能够在 simulator 上运行 实际运行 删除原来基本流上的描述, 并在新的基本流选 项 上 打 入 描 述 ( 包 括 association_tag_descriptor,carousel_identifiter,d ata_broadcast_selector 等描述) 在界面, 数据库和码流中都能正确体现版本号 的修改,并在数据库中正确保存 能够把数据正确的发送到指定的 DBS,并能 够给出正确的提示,并在数据库中正确保存 能够正确的还原轮播

通过 通过 通过

通过 通过 通过

66

上海交通大学工程硕士学位论文

5.2.1.2 应用测试

前提条件: 已经存在所要添加应用的对象轮播, 并且应用已经在 SIEditor 中正确 编辑。测试针对 DVB-J(DVB-HTML 测试不具备条件,暂时没有测试) 表 5-2 应用测试

编号 测试内容
1 在现有轮播上添加一个应用, 并 播发和清空数据 在现有轮播上添加多个应用, 播 发和清空数据 在现有轮播上添加多个应用, 播 发后, 改变某些应用是否有效的 状态 关闭程序 开启程序 删除应用 应用控制代码的改变

期望结果
播发的时候,应用状态有效,清空数据时 应用状态无效, 根据状态的改变, SIG 能够 正确的生成 AIT 表。 播发时,所有应用状态都有效,清空数据 时所有应用状态处于无效 能够在播发后,使应用处于改变后应用本 身是否有效的状态,根据应用的有效状态, SIG 能够正确的生成 AIT 表。 发送清空命令,清空 DBS 数据,并把所有 绑定的应用状态在数据库中置为无效 所有绑定的应用正确还原 正确的释放资源,以便其他的轮播使用。 并能在界面上正确的显示出来 所做的码流能够正确体现控制代码的改变 (PRESENT,AUTOSTART 等代码)并在界 面上和数据库中正确的表现出来 刷新数据库,不能还原已经删除的应用 刷新数据库,显示已经更改以后的应用名 称 修改的属性能够正确的在界面上和数据库 中显示出来 弹出应用修改对话框,修改了第一属性页, 如果其他属性页设置是正确的,没有重新 修改,完成的时候不应给出设置其他属性 页的提示 弹出添加应用对话框,完成第一属性页的 设置,如果没有设置其他的属性页,应给 出提示设置相应的属性页 如果应用列表已经用完,应该提示用户到 SIEditor 中编辑应用。 根据应用选择中应用的不同类型,后面给 出相应的可编辑的应用界面(例如:选择 DVB-J 类型, 后面只能设置 DVB-J 属性页, 而另一属性页为非编辑状态) 释放所有绑定到该轮播的应用,以便其他 轮播绑定应用进行选择

结 果
通过

2 3

通过 通过

4 5 6 7

通过 通过 通过 通过

8 9 10 11

SIEditor 中删除已经绑定的应用 SIEditor 中修改已经绑定的应用 名称 应用修改 应用修改

通过 通过 通过 通过

12

添加应用

通过

13 14

添加应用 添加应用

通过 通过

15

删除轮播

通过

67

上海交通大学工程硕士学位论文

5.2.1.3 界面测试

表 5-3 界面测试
编号 1 2 测试内容 点击工具栏 “刷新” 按钮或者执 行菜单 “控制->刷新数据库” 执行菜单 “控制->重置数据库” 期望结果 重新读取数据库,从数据库中正确还原轮 播 弹出对话框,显示全局设置中预制的数据 库,更改以后,重新连接到新的数据库, 并把新数据库的内容正确的还原出来。 程序退出,并发送清空命令到 DBS,如果 DBS 存在,清空 DBS 上相应节点的数据, 同时,如果有应用存在,把应用的状态置 为无效。 隐藏 或者显示报告栏。 弹出全局设置对话筐,在此设置的变量, 全局有效 弹出添加轮播向导,并能够完成轮播的添 加 基本设置对话框:IP 地址和输入节点 ID 的唯一性,文件路径的有效性,轮播 ID 的 唯一性 等合法性校验 对象列表对话框:添加删除对象的有效 性,返回上一步,在回到这一步,添加删 除对象保持不变。返回到第一步后,在到 这一步,重新按照文件目录生成新的对象 链表,原来的修改不再有效 模块列表对话框:对象列表选择不同的归 并策略,模块列表中显示不同的归并效 果,同时,插入不同描述,能够正确的在 主界面上标识出来 主界面正确显示,释放所有的应用资源, 发送清空命令数据到 DBS。 选择不同的节点执行不同的操作,选择根 节点,发送所有的轮播,选择对象轮播, 发送对象轮播下的所有轮播,选择单个轮 播,则发送选定的轮播,在右边视图中, 根据选择轮播的多少,发送选中的轮播数 据到 DBS,及发送按钮的有效性检验 焦点在左边视图时,选中轮播时,清空数 据菜单和工具条选项有效,否则选项无 效,执行命令,清空被选中的轮播在 DBS 端的数据,同时置相应的绑定应用的状态 为无效 焦点在右边视图时,只有选中轮播,可以 多选,清空数据菜单和工具条选项有效, 结果 通过 通过

3

执行菜单”控制->退出” 或者工 具栏 “退出”按钮

通过

4 5 6 7

执行菜单”视图->报告栏” 执行菜单”操作->全局设置” 执行菜单”操作->添加轮播” 执行菜单”操作->添加轮播”

通过 通过 通过 通过

8

执行菜单”操作->添加轮播”

通过

9

执行菜单” 操作->添加轮播”

通过

10 11

执行菜单” 操作->删除轮播” 发送数据

通过 通过

12

清空数据

通过

13

清空数据

通过

68

上海交通大学工程硕士学位论文

14 15 16 17

执行菜单”操作->删除所有” 在左边视图中选择不同的对象 在左边视图中选择不同的对象, 点击右键 在左边视图中,选中需要 Dump 数据的轮播,点击右键菜单,执 行”Dump 数据到文件”子菜单 右边视图的右键操作

否则选项无效,执行命令,清空右边视图 选中的轮播在 DBS 端的数据, 同时置相应 的绑定应用的状态为无效 从数据库中删除所有的轮播,同时释放所 有绑定的应用资源 在右边视图中能够正确显示相应对象的 属性 根据选中的对象不同,弹出不同的可以操 作的菜单 把选中轮播的 TS 流和 section 数据 dump 到相关的文件中,并在报告栏中有提示 右边视图为轮播列表时,能够执行右键发 送和清除数据的操作,其他列表时,右键 操作不起作用 添加含有大于 1M 文件的目录, 给出提示, 不能完成轮播的建立 所有文件大小大于 8M,给出提示,并不 能完成轮播的建立 创建新的轮播时,输入节点可以选择下拉 筐,可以手动输入端口号 创建新的轮播时,输入节点选择下拉筐 时,选项内容为当前轮播没有用到的节 点,过滤已经用到的节点号 右键菜单修改轮播,输入节点可以选择下 拉筐,可以手动输入端口号 右键菜单修改轮播,输入节点选择下拉筐 时, 选项内容为当前轮播没有用到的节点, 过滤已经用过的节点号 菜单修改多个轮播, ,输入节点可以选择 下拉筐,可以手动输入端口号 菜单修改多个轮播, ,输入节点选择下拉 筐时,选项内容为当前轮播没有用到的节 点,过滤已经用过的节点号

通过 通过 通过 通过

18

通过

19 20 21

大于 1M 文件的 文件总大小大于 8M 的 输入节点选择,DBS 存在

OK OK OK OK

OK OK

OK OK

69

上海交通大学工程硕士学位论文

5.2.2 性能测试

数据源:采用层深大于 3 级,文件总数 400 左右的目录,测试结果采用 50 次取 平均值。 数据广播系统中单个 TS 的最大带宽为 38Mbits,考虑到实际应用,真实输数据 源通常在 1Mbytes 以下。超大的文件系统不具备实际意义。因此测试数据源以 10Mbytes 作为最大值。
目 录 大 小 (bytes) 100K 播 发 带 宽 (bits) 500K 1M 3M 500K 500K 1M 3M 1000K 1M 2M 3M 2000K 1M 2M 3M 10000K 1M 2M 3M 归并策略 普通归并 智能归并 普通归并 智能归并 普通归并 智能归并 普通归并 智能归并 普通归并 智能归并 普通归并 智能归并 普通归并 智能归并 普通归并 智能归并 普通归并 智能归并 普通归并 智能归并 普通归并 智能归并 普通归并 智能归并 普通归并 智能归并 普通归并 智能归并 普通归并 智能归并 播出速度(s) 1.71 1.6 2.1 1.71 0.6 1.5 0.87 0.87 0.29 0.28 8.52 8.52 4.33 4.33 1.42 1.42 8.52 8.52 4.33 4.33 2.76 2.76 17.06 17.06 8.64 8.64 5.98 5.98 92.6 92.6 47.5 47.5 33.8 33.8 目录结构还 原速度(s) 2.73 0.92 1.392 0.52 0.47 0.19 13.6 5.11 6.92 2.59 2.31 0.84 11.92 4.26 7.01 2.62 4.14 1.65 25.59 11.34 12.03 4.18 9.56 3.58 138.9 55.56 71.25 28.5 50.7 20.28 整体接收速度 (s) 4.10 2.56 1.91 1.21 0.66 0.39 19.68 13.63 9.09 7.31 2.98 2.27 17.04 12.43 9.23 7.57 5.65 4.41 34.13 24.90 18.01 11.93 13.15 8.97 185.71 148.16 99.75 76.32 70.98 54.08

70

上海交通大学工程硕士学位论文

测试结论: 播发带宽与播出速度是成正比的, 归并策略并不影响前端的播发效率, 前端的播发速度和数据源大小以及相应的带宽是成正比的。 但是不同的归并策略对收 端是有很大的影响的,数据表明采用智能归并策略打包的 OC 会大大提高收端效率, 整体提升约 50%左右。

5.3 本章小结
本章对 OCG 的界面进行了构造, 在构造好的界面上可以进行 OC 的建立、 修改、 删除等操作,使得 OCG 真正的实用化,在整个前端系统播发软件中成为了一个重要 的组成部分;对设计构造好的 OCG 进行了功能和性能的测试,证明了本文所实现的 OCG 能够达到设计要求,性能优良、工作正常。而在实际中,本文研究开发的 OCG 已经作为产品在几个省级网络公司中得到了应用,并且能够长时间的稳定的工作,用 户对 OCG 的功能、性能都表示了肯定。

71

上海交通大学工程硕士学位论文

第六章 结束语
6.1 全文总结
全球正在大规模的进行模拟电视向数字电视过渡的工作,发达的国家地区,如欧 美、日本等地已经接近完成,而中国正处于转换的关键阶段,确定了关闭模拟播出的 时间表。中国在推进模数转换的过程中,借鉴了国外的经验教训、规避了很多国外的 专利陷阱, 制定了相关的标准, 才能保障中国数字电视的健康发展。 从相关标准来看, 前端播发的标准已经完善,而终端接收部分还没有全部完成。 数字电视不仅仅给用户带来更清晰和更多的电视频道, 它同时还给用户带去大量 的文字、图片信息和游戏、教育、公告、电子商务等服务,这些服务全部是要借助数 据广播来实现的。中国的数据广播已经确定了 5 种播出方式:数据管道、数据流、多 协议播发、数据轮播和对象轮播,其中又以对象轮播最为重要。在终端的机顶盒或一 体机内中国普遍采用了国外淘汰的 HTML 技术,而真正能给国内电视用户带来实际 利益的 Java 中间件技术还在推广的阶段。 不论终端采用 HTML 还是 Java 中间件技术, 其显示内容或执行的程序均是由前端的 OC 来播出的,DC 一般作为终端软件升级来 用,而其它几种播出方式主要用于私有数据的播出和 EPG 等。OC 是基于 DC 的,是 最上层的数据传输方式,也是能实际给用户带来信息和服务的数据传输方式。 国内多家公司已经开发出了 DC 和 OC,并且已经在规模应用,但是能同时完美 支持 HTML 和中间件的还不多,本文所设计的方案在这方面做的是比较完善的,因 为我们同时也在开发符合国标的中间件并在国内进行推广。本文参阅了大量资料,对 数字电视、数据广播、中间件等发展情况、相关技术、标准、协议作了介绍,对 OCG 的标准作了重点描述;本文作者参与了研究和开发符合国家标准的前端 OCG 系统方 案和产品,经过内部测试和省级用户的实际使用,达到设计要求,实现了 OCG 的商 品化。

6.2 后续研究展望
1 本系统构架十分灵活多变,既可构建完整的前端播发系统,也可以整合相关 模块, 各自成为独立系统, 因此后续可以开发独立系统, 以满足用户降低成本的需求。 2 由于有数据库的支持可以开发 B-S 架构的系统,满足使用的便利和降低维护 成本。 3 可以在 OCG 中集成应用仿真系统,将播发的应用在仿真系统上试运行,使系 统更加完善和高级。

72

上海交通大学工程硕士学位论文

参考文献
【1】 .作者: elle_china 数字电视机顶盒原理 中国有线电视技术 2007-12-29 【2】 .余兆明,余智,数字电视传输与组网(M) ,北京人民邮电出版社 2003 【3】 .余智,余兆明,数字电视传输中的关键技术(J) ,中国多媒体视讯,2003-3: 35-38 【4】 .郑志航,数字电视原理与应用(M) ,北京中国广播电视出版社,2001 【5】 .王明臣,数字电视与高清晰度电视(M) ,北京中国广播电视出版社,2003 【6】 .余兆明,李晓飞,陈来春,MPEG 标准及其应用〔M〕 ,北京北京邮电大学出版 社,2002 【7】 .郑志航,全数字高清晰度电视和 DVB(M) ,北京中国广播电视出版社,1997 【8】 .车晴,王京玲,数字卫星广播系统(M) ,北京,北京广播学院出版社,2000 【9】 .沈少阳,苏凯雄,DVB-S 数字解调信道编码器及其实现〔J〕 ,现代电子技术, 2003-3,35-37 【10】 .刘祥龙,李华,数字卫星电视接收应用方案(J) ,中国有线电视,2002-24: 55-58 【11】 .吕海寰,蔡建民,甘仲民,陈九治,卫星通信系统(M) ,北京人民邮电出版, 1999 【12】 .DVB Document A016 Rev 2-1999, Interface for DVB Integrated Receiver Decoder (DVB IRD). [S] 【13】 .ETS300421 Framing Structure,Channel Coding Modulation For 11/12 GHz Satellite Service.[S] 【14】 .冯传岗,宋茜,数字电视广播系统:CADTV 信道调制和编码[J],中国有线电 视,2004(5) :68~71 【15】 ETS300429 Framing Structure, channel coding modulation for cable system . (S) 【16】 .刘修文数字电视有线传输技术(M) ,北京电子工业出版社,2002 【17】 .刘修文数字机顶盒技术概述中国有线电视,2004(6) :81~84,2004(7) : 80~83 【18】 .中国广播电视设备工业协会,有线电视网络技术手册(M) ,北京电子工业出 版社,2002 【19】 .彭丹丹,邹志勇,王匡数字电视地面传输标准 ISDB-T 系统传输方案(J) ,中

73

上海交通大学工程硕士学位论文

国有线电视,2004(2) :71~74 【20】 .张健,钟清华,DVB-T 系统的信道特性研究〔J〕 ,中国有线电视,2002(24) : 13~15 【21】 .廖洪涛,数字电视交互系统中间件,中国广播电视出版社,2004 年 【22】 .DVB project, “Multimedia Home Platform (MHP) Specification 1.1.2”, 2005 【23】 .ETSI TS 101 812 v.1.3.1, Technical Specification, “DVB: Multimedia Home Platform (MHP) Specification 1.0.3”, June 2003. 【24】 .DVB Project, http://www.dvb.org/ 【25】 .DVB MHP, http://www.mhp.org/ 【26】 .CableLabs, http://www.cablelabs.com/ 【27】 .胡国荣,数字视频压缩及其标准〔M〕北京北京广播学院出版社,1999 【28】 .何智玲,唐泽鹏,基于对象的视频编码方法-MPEG-4〔J〕 ,中国有线电视, 2003(23):49~53〕 【29】 .ISO/IEC 13818-1.1996 Information technology-Generic coding of moving pictures and associated audio information: Part 1: System, [S] 【30】 .ISO/IEC 13818-2. 1996 Information technology-Generic coding of moving pictures and associated audio information: Part 2: Video,[S] 【31】 .沈克勇,基于 HFC 网络视频点播系统 MPEG-2 TS 传输的实现[J].中国有线电 视,2002, (24) :21-24 【32】 .TR101 192 v1.2.1.Europran Telecommunications Standards Institute, Digital Video Broadcasting: DVB specification for Data Broadcasting,[S] 【 33 】 .EN300468-1998. specification for Service Information (SI) in DVB systems.[S] 【 34 】 ISO/IEC 13818-6. Information technology-Generic coding of moving . pictures and associated audio information-Part 6:Extension for Digital Storage Meida Command Control (DSM-CC)-International Standard.[S] 【35】 .TR101 202 v1.2.1. European Telecommunications Standards Institute, Digital Video Broadcasting: Implementation guidelines for Data Broadcasting, [S] 【36】 ETSI standard Report TR 101 202. Implementation guidelines for DataBroadcasting. 1999:51-55 【37】 .ESTI EN 301 192 V1.2.1 Digital Video Broadcasting (DVB); DVB specification for data broadcasting. 【38】 .ESTI MHP (Media Highway Platform) EN TS 101 812 ANNEX B

74

上海交通大学工程硕士学位论文

附录 符号与标记
API:Application Portability Interface BIOP:Broadcast Inter ORB Protocol CA:Conditional Access 条件接收 公用数据表示 公共对象请求代理结构 循环冗余校验 CDR:Common Data Representation CRC:Cyclic Redundancy Check DC:Data Carousel 数据轮播 下载的DSM-CC数据块信息 下载的DSM-CC指示信息 数字化存储媒体-命令与控 应用移植接口 广播ORB间协议

CORBA:Common Object Request Broker Architecture DDB:Download Data Block message of DSM-CC

DII:Download InfoIndication message of DSM-CC

DSI:DownloadServerInitiate message of DSM-CC 下载的DSM-CC业务器初始化信息 DSM-CC:Digital Storage Media - Command & Control 制 DSM-CC U-N:DSM-CC User to Network DSM-CC U-U:DSM-CC User to User EIT: Event Information Table 基本流 图形交换格式 超文本描述语言 互联网ORB间协议 互操作对象基准 联合图像专家组 EPG:Electrical Program Guide ES:Elementary Stream DSM-CC用户-网络模式 DSM-CC用户-用户模式 事件信息表 电子节目指南

GIF:Graphics Interchange Format HTML:HyperText Mark-up Language IIOP:Internet Inter ORB Protoco IP:Internet Protocol 互联网协议

IOR:Interoperable Object Reference JPEG Joint Photographic Experts Group LLC:Logical Link Control MTU:Maximum Transport Unit OC:Object Carousel 对象轮播

逻辑连接控制 运动图像专家组 网络业务接入点 最大传输单元

MPEG:Moving Pictures Expert Group NSAP:Network Service Access Point ORB:Object Request Broker

目标请求代理 节目关联表

PAT:Program Association Table

75

上海交通大学工程硕士学位论文

PCR:Program Clock Reference PID:Packet Identifier PMT:Program Map Table 包标识

节目时钟基准 打包的基本流

PES:Packetized Elementary Stream 节目映射表

PSI:Program Specific Information PTS:Presentation Time Stamp RFC:Request For Comments SI:Service Information SDT:Service Description Table 注解请求

节目特定信息

显示时间标记 业务描述表 子网附属点 传输控制协议

业务信息

SNAP:SubNetwork Attachment Point TCP:Transport Control Protocol TS:Transport Stream 传输流

76

上海交通大学工程硕士学位论文





由于本人是在职的工程硕士, 工作比较繁忙, 因此本文的写作花了比较长的时间。 在我论文的写作期间,得到了上海交通大学的李建华教授、薛质教授、潘理老师的大 力支持和鼓励,老师们渊博的知识、高尚的道德情操让我非常敬佩。尤其是潘老师, 经常鼓励我,指导我,让我满怀信心的去工作和学习;薛教授,经常关心我的论文进 展情况,为我提出了很多宝贵的意见。 同时我还要感谢上海宜腾电子设备有限公司的同事们、朋友们,在他们的帮助和 指导下,我参与并完成了对象轮播发生器的部分架构和开发工作,特别需要感谢的是 总工程师王福良老师, 他在我的工作中给予了极大的帮助, 不仅指导我完成开发任务, 还对我的论文的写作提供了非常宝贵的建议。还要感谢王青、赵杰平、胡智慧、何玉 霞、沈江涛、王贤生、徐晨明等同事,在和大家一起工作、学习的日子里,他们让我 感到团队的力量、同事的友情。
最后我还要感谢我的家人,正是他们的支持和鼓励,我才能全身心的投入工作和学习,完成 论文的写作。

77

上海交通大学工程硕士学位论文

攻读硕士学位期间已发表或录用的论文

【1】王先农,中间件技术和数字电视产业链建设,广播电视信息,2008 年第一期

78

521 淘宝网是淘宝网购物的导购平台,为您收集淘宝网网上购物女 装,男装,手机,包包,数码,化妆品等各种热销商品的打折优惠信息,这 里是您在淘宝网购物的理想助手.

http://www.521taobao.com/list.php?catid=16 http://www.521taobao.com/list.php?catid=30 http://www.521taobao.com/list.php?catid=50008165 http://www.521taobao.com/list.php?catid=50006843 http://www.521taobao.com/list.php?catid=1801 http://www.521taobao.com/list.php?catid=50006842 http://www.521taobao.com/list.php?catid=14 http://www.521taobao.com/list.php?catid=1512 http://www.521taobao.com/list.php?catid=1201 http://www.521taobao.com/list.php?catid=50012164 淘宝网网上购物女装,淘宝网购物,淘宝网购物商城, 淘宝网品牌女装,淘宝网上购物女装,淘宝网女装,淘宝网商城,淘宝 网首页商品

数字电视数据广播中对象轮播发生器的实现
作者: 学位授予单位: 王先农 上海交通大学

相似文献(10条) 1.期刊论文 林东民 高档数字电视/数据广播通用机顶盒的设计要求 -广播与电视技术2004,31(6)
本文阐述了推出高档数字电视/数据广播通用机顶盒的需要、前景和意义,对当前推进数字电视和数据广播进程中的问题提出了自己的看法.文中也对国际上数字电视和数据广播 服务的发展作了一些综合分析.在分析国际市场现状和我国推广数字电视发展的基础上,提出了对高档数字电视/数据广播通用机顶盒的设计要求.

2.会议论文 北京蓝拓扑电子技术有限公司 数字电视传输监视系统及在数据广播系统中的应用 2003
数字电视服务已经在全球迅速普及,我国的数字电视产业也蓬勃兴起.为了保证数字电视服务的质量,尽可能迅速地处理遇到的故障,运营和服务提供者需要具备完整的服务和设备 故障监测系统。该系统的目的为实时、迅捷地检测到系统运行错误判断错误的严重性并报告给运营者,同时提供分析结果提示以便于故障的修复,必要时提供自动应急手段,例如自动 倒换到备份设备等。图1是数字电视系统的基本结构示意。本文论述了数字电视服务质量监测、数字电视传输监测系统、监测系统的具体实现以及在数据广播系统中的应用。

3.学位论文 翟恩 数字电视数据广播的研究与应用 2006
随着国家数字电视广播制定的“2008年数字高清晰电视将在国内主要城市普及和商用播出;2010年计划全面实现数字电视广播;2015年停止播放模拟电视广播”的“三步走”计 划,国内的数字电视产业正在迅速蓬勃地发展。做为数字电视和传统模拟电视的一个主要的区别——数据业务为数字电视用户提供内容丰富、形式多样信息服务,同时也成为数字电 视产业的重要增值业务。 目前,在数字有线电视网上提供宽带数字业务的主要途径是数据广播系统,数据广播做为数字电视的一个重要部分,欧洲的DVB系统和北美的ATSC都开展了相应的研究和标准制 定工作。本文根据国内普遍采用的DVB标准规范的数据广播原理,设计和实现了基于DVB数据广播技术的数字机顶盒软件在线更新和数字电视数据广播的U-U系统。 首先介绍了数字电视及其标准、数据广播和数字电视机顶盒的基本概念,并引出了本文的研究任务。并对项目开发中运用的DVB数据广播规范进行了研究,介绍了MPEG-2和DVB的 基本概念,讨论了在数据广播系统中,两者间的相互关系,为实际应用打好了理论基础。其次,分别重点描述了基于DVB数据广播的数字机顶盒软件在线更新和数字电视数据广播系 统的实现方案。并分别给出了具体实现方法。 最后,对论文期间的工作进行了总结,并对今后的数字电视数据广播业务的发展进行了展望。

4.会议论文 胡毓铭.崔竞飞.朱佩江 数字电视系统数据广播的介绍 2003
数据广播是介于简单的单向传输(如电视和广播)和通常的双向点到点的传输网络之间的一种传输方式。本文论述了数据广播的通用概念、数字电视系统中的数据广播以及解码器 模型。

5.会议论文 张文鹏.符洪涛 数据广播与数字电视的关系 2003
本文从技术观点出发,论述了数据广播与数字电视的关系,阐明了数据广播在技术上是数字电视的高端产品.并随着技术的发展,二者必将走向融合.

6.期刊论文 王兴东.余松煜.陈颖琪 数字电视数据广播系统设计 -通信技术2002,""(5)
介绍了数字电视数据广播系统的技术基础,提出了一套数据广播服务器硬软件系统设计方案.

7.会议论文 韩伟 开放的数据广播体制——数字电视增值业务发展的关键 2005
传统电视转变成数字电视,不仅仅是传输方式的数字化,更重要的是提供了一个开展新业务的平台.在数字平台上,许多的应用成为现实,区别于传统的电视应用,这些增值应用为广 播电视带来巨大的盈利空间.发展数字电视增值业务应用成为今后的热门之一. 数字电视因为技术体系的优势,可以实现传统所无法做到的业务模式.在数字电视发展的现阶段,实现增强电视和交互电视是两个主要的工作目标.在传统电视节目中增加更多的信 息,使电视内容更加丰富,已经被证明是有价值的.在模拟电视时代就进行了这种类型的技术和商业尝试,基于Teletext的图文电视直到现在都在使用.而互联网的快速发展,使得人们充 分认识到了交互能力带来的优势.把交互带入电视节目,将大大提高电视节目的吸引力.传统电视的技术体系中,是无法实现这些特色的,而数字电视技术使得增强电视和交互电视成为 可能.本文探讨数字电视增值业务发展的关键—— 开放的数据广播体制。

8.学位论文 马希俊 数字电视系统中数据广播标准的研究及实现 2001
数据广播是未来数字电视系统的重要组成部分和基础,数字电视系统中的交互式应用大都需要建立在数据广播的基础上.该文简要介绍了数字电视方面的标准组织,引入了交互式 数字电视系统的参考模型,并在此基础上介绍了数据广播的概念,简要回顾了数据广播的发展.分析了美国数字电视的字幕标准DTVCC(EIA-708-B),该标准是从模拟电视字幕标准(EIA608)发展而来,EIA-608用于在NTSC信号中传输字幕信息.在对标准进行分析的基础上,该文提出了DTVCC解码器的一种软件设计方法.文中介绍了解码器的模块划分及模块内部函数的设 计.分析了DVB的广播信道传输协议栈.该文结合作者课题组设计的增强型数字电视的软件仿真演示系统,讨论了数据广播标准中数据转盘(Data Carousel)协议的软件设计和实现.讨论 了系统中Data Carousel协议相关模块的设计实现,包括前端编码和后端解码.该文分析了机顶盒的软件结构,讨论了数据广播应用,并介绍了国内、外对数据广播应用研究开发的现状.

9.会议论文 杜百川 数字电视与数据广播 2000
本文对数字电视与数据广播的关系进行了探讨。文章围绕信息到户的四大媒体、中国广播电视的特点、数字化带来的技术可能性、数字电视中的数据广播的有关标准等进行了论 述。

10.期刊论文 周丹.ZHOU Dan 数字电视数据广播平台的搭建 -中国有线电视2007,""(18)
在数字电视建设中,如何搭建一个经济、实用、符合发展潮流的数据广播信息平台是各电视台面临的难题.介绍湛江数据广播信息平台搭建的经验.

本文链接:http://d.g.wanfangdata.com.cn/Thesis_D056428.aspx 授权使用:吕先竟(wfxhdx),授权号:274af83b-99e8-4480-957b-9e3b01806f7f 下载时间:2010年11月27日


相关文章:
数字电视数据下载器的设计应用
本设计是在深圳清华大学研究院数字电视前端系统紫荆神网的基础上,设计 实现的比...数据广播协议主要有数据管道、数据流、多协议封装、数据轮播对象 轮播 等几种...
数据广播制播系统方案
实现数据广播平台向广播、交互、多功能方向发 展,...复用器/调制器,最后输出至HFC网络进行传输,数字电视...(对象轮播数据或互联网数据)的接 收、解析、显示、...
HFC单向网络数据广播性能分析和优化
数据广播播发原理和优化策略,对现有数据 广播实现...网络、数字电视、软件、网站、技术管理中的一项填写...那么必须等待对象轮播完这一轮,再重头开始,然后再...
数据广播OC与DC比较
一个轮播需要几秒或十几秒的时 间,这样装载每个文件(对象 Object)所花费的...数字电视数据广播中对象... 85页 免费 主流数字广播技术比较 5页 免费©...
数字电视业务
网络中模拟转数字的电视节目,以及整体转换中增加的新...服务 广播式信息服务是指以推送方式向观众传送数据...数字电视传输容量大的特点,以轮播方式进行数字电视...
数据广播系统
数字电视系统中的数据广播 37页 8财富值 数据广播系统接收端方案 6页 免费 数据...OCG 系统的主要功能是播发与控制交互应用及其数据,它支持对象轮播(DSM-OC)协议...
嵌入式浏览器的研究
我国的有线数字电视标准 是以欧洲 DVB 标准为基础, 在数据广播中采用以 DSMCC 中基于对象的数据轮播 ( OC )作为数据传输标准,因此数字电视嵌入式浏览器技术...
应急广播项目技术方案
具有不同消费层次的广泛用户 对象,是未来可预见的“...通过平台,用码流通道视频播放(轮播)农业养 殖、农业...实现数字电视、 电话广播、视频会议广播、户户响...
电视媒体:如何面对新媒体
数字电视还提供其它服务, 包括数据传送,图文广播,...凤凰宽频涵盖点播,直播,轮播,播客及专业制作的网 络...①齐鲁网实现齐鲁台的节目 24 小时同步播出; ②...
从台网融合看大视频格局进阶
同步首 轮播出传奇历史题材的古装动作喜剧《穆桂英...信息的辐射和对流,在这个选秀节目中得以很好地实现...则重要新闻是——上海广播电视台旗 下、由上海东方...
更多相关标签:
单片机实现波形发生器 | js实现图片轮播 | jquery实现图片轮播 | 轮播图实现原理 | 用jquery实现图片轮播 | css实现图片轮播 | jq实现图片轮播 | js实现图片轮播原理 |