|
摘要:本文阐述了创建电子节目指南系统所需的业务信息的DVB SI标准,研究了EPG系统的实现方案及系统的构成,并结合自己的实践阐述了实现EPG系统的关键技术。 关键字:电子节目指南(EPG) 业务信息SI 表 字段 描述子 1 引言 电子节目指南给用户提供一个容易使用的、界面友好的、可以快速访问节目的一种方式,用户还可以通过该功能收看一个或多个频道,甚至所有频道上近期将播放的节目。同时,EPG可提供分类功能,可以帮助用户浏览和选择各种类型的节目。同时,电子节目指南对业务提供商也有很重要的意义。 创建EPG所需的数据是在DVB—SI中定义的,但是该标准没有规定EPG系统的实现。DVB—SI在EN 300 468[1]中定义,本文只对该标准进行简单的阐述,详细信息可以查阅标准。本文主要结合我在一体机项目中的体会,阐述EPG系统的结构实现及其关键技术。
2 DVB—SI EN 300 468[1]中定义的业务信息SI(service information)是对MPEG—2 PSI(节目专用信息)的扩展,在概念上把业务信息分成许多业务信息表(table),如节目关联表(PMT:Program Map Table)、业务描述表(SDT:Service Description Table)、束状关联表(BAT:Bouquet Association Table)、网络信息表(NIT:Network Information Table)、事件信息表(EIT:Event Information Table)等,每种业务信息表提供相应的业务信息,如SDT可以提供特定业务的描述信息,BAT表可以把节目按照分类的方式组织,NIT可以提供业务传输的原始网络和当前传输网络的一些物理参数等信息。在具体实现时,业务信息表被分成一个中或多个字段(section)的形式映射到MPEG—2中的传输流中传输,字段是一个MPEG—2的语法定义。在段中包含很多描述子(descriptor),大部分的业务信息都是在描述子中传输的。SI各种表的字段(section)可以直接作为负载加载到MPEG—2传输包中,但并不是随意的,针对每种表都规定了能加载的由13位的“包标志域”(PID)标志的传输包。用于标识段的主要语法元素有:table_id(表标识)、section_length(段长度)、section_number(段序号)、last_section_number(最后段序号)、version_number(版本号)等。
3 EPG系统概述
 图
EPG系统分为前端子系统和接收端子系统,图1和图2分别给出了发端子系统和收端子系统的参考框图。前端子系统主要负责SI数据的组织和生成,一般来说,由一个专门的SI复用器(SI Server )来完成这部分工作,并把生成的SI数据与节目等的其它数据流进行系统层复用,在TS流中传输。 接收端子系统主要负责SI数据的接收、解析等。综合接收解码器(Integrated Receive Decoder,IRD)从接收的TS流中解析出SI数据,并在本地建立SI数据库,用户通过EPG界面与SI数据库进行交互。为了方便用户的随机接入,SI数据是重复发送的,有关它的重传速率在EN 300 468[1]中有详细的规定。接收端不停地接收、解析来自发端的SI数据,当发端的SI数据改变时,SI数据库更新,否则接收的SI数据被丢弃。如图.2所示,EPG应用是一个应用程序,它运行于数字电视的机顶盒中,应用程序管理器负责EPG应用的管理,上层的EPG API屏蔽了下层的软硬件实体,使编写EPG应用程序时可以不考虑底层的具体实现,只需要调用相应的API函数,下层的DVB—SI API也是起同样的作用。下层的解复用模块接收TS流,解出DVB SI数据流,再经SI数据解析模块,生在SI信息表,存于本地数据库中,由DVB—SI API提供的接口向上层提供服务。
4 EPG系统的实现方案 纵观国内外的EPG系统的实现方案,概括起来主要有以下两种: (1)本地应用方案:这种实现方案要求节目列表及详细信息作为业务信息的形式复用于MPEG—2传输层中,数据经信道传输后,在接收端的解码器对这些数据进行解码,并在接收机RAM中形成专用的EPG数据库,EPG应用将检索数据库并根据用户输入的指令显示用户关心的节目信息。目前大多数厂商提供的EPG采用该种实现方案。 |
|
|
|
|