《EPG功能实现介绍.doc》由会员分享,可在线阅读,更多相关《EPG功能实现介绍.doc(19页珍藏版)》请在金锄头文库上搜索。
1、目录EPG功能实现2第一章EPG简介21.EPG的产生2第二章.EPG信息的构成与传输31 EPG信息的构成32 基本EPG 信息的传输方式32.1 说明52.2 段到传送流(TS)包的映射62.3 PID 及表标识符字段编码62.4 重复率73 SI信息的插入84 网络信息84.1网络基本信息的构成84.2 TS流信息84.3 网络信息在NIT表中的表示95.PSI/SI主要字表之间逻辑关系11第三章 EPG在STB上的实现121 EPG信息的提取122 实际应用中EPG接收的步骤123 节目内容和时间信息的获取143.1 接收TDT表143.2 接收EIT表143.3 注意事项164.MJ
2、D和UTC时间转换17EPG功能实现第一章 EPG简介1.EPG的产生EPG的英文全称是Electronic Program Guide,一般称“电子节目指南”,它是传输流中所包含的信息。数字电视相对于传统的模拟电视而言,传输更多的数字化信息,多种业务可以混合在一起通过一个信道传输。因此,数字电视已经不是单一的电视业务,而是指通过电视传输通道传输的数字业务,包括视频、音频、图像、数据等。这就需要引入一个重要的概念-服务信息(Service Information, SI)。全球数字电视已经进入快速发展阶段,可以预见,在今后几年,与数字电视相关的业务将大幅度增长。随之而来的问题是,当数字电视能为
3、用户提供数倍于目前节目量的节目及多种业务时,用户怎样才能便捷地找到所要的节目和信息呢?通过SI信息实现的电子节目指南(EPG)能更好的帮助用户搜索数字电视频道,获得节目播出时间,了解节目内容,预定喜爱的节目,找到更多的对用户有用的信息,使数字电视具备更多的交互功能。因此,电子节目指南(EPG)显然是必不可少的工具。 数字电视与模拟电视节目选择的方式完全不同,模拟电视每个频道对应一个节目,只要调到相应的频率,就可以看到图像。而在数字电视中,多个节目被复用到一个码流中,每个节目只占有码流中的部分包,一个物理的频道只能给出包含多个节目的传输流,要观看其中的某个节目,还必须从码流中提取出节目对应的传输
4、包,然后再进行解码。怎样从众多的节目和服务中选取所需要的服务就变得比较复杂。此外,各种影响接收的技术参数对用户来说也是非常难懂的。为此,提供一些必要的服务信息以帮助用户选择节目使非常必要的。第二章.EPG信息的构成与传输1 EPG信息的构成EPG信息分为基本EPG信息和扩展EPG信息两种。基本EPG信息是用SI信息表进行描述,以文本格式表示的与节目描述有关的网络信息、节目群信息、业务描述信息和事件信息,可以完全通过GY/Z 174-2001中规定的NIT、BAT、SDT、EIT和EMT进行表示和传输,这些表被分为一个或若干个段(SECTION),每个分段包含有一部分或全部关于表的信息,然后插入
5、到TS流传输包中。构成图如下: 基本EPG信息的组成构成扩展EPG信息是在基本EPG信息基础上的扩充,它描述网络、业务群、业务、事件、EPG提供商以及广告等方面的扩充信息。当用于数字电视平台之间交换EPG信息时,按XML格式描述全部EPG信息,内容被封装成具有多级目录结构的文件系统,通过数据转盘传递,这些信息的入口采用EPG映射表(EMT)进行描述。基本EPG信息是必需的,扩展EPG信息是可选的。EPG信息组织层次图2 基本EPG 信息的传输方式基本EPG信息采用表传输方式。在数字电视中,所有视频、音频、文字、图片等经数字化处理后都变成了数据,并按照MPEG-2的标准打包,形成固定长度(188
6、个字节)的传送包,然后将这些数据包进行复用,形成传送码流(TS),通常一个频道对应一个TS流,一个频道的TS流由多个节目及业务组成。在TS流中如果没有引导信息,机顶盒将无法找到需要的码流,所以在MPEG-2中,专门定义了PSI信息,其作用是自动设置和引导接收机进行解码。PSI信息在复用时通过复用器插入到TS流中,并用特定的PID(包标识符)进行标识。 在MPEG-2标准中定义的节目信息PSI,是对单一码流的描述,由于系统通常存在多个码流,为了使使用者能在多码流中快速地找出自己需要的业务,在DVB标准中对MPEG-2的PSI进行了扩充,在PSI四个表的基础上再增加了九个表,形成SI。SI是对整个
7、系统所有码流的描述,描述系统传输内容、广播数据流的编排和时间表等的数据,它包括PSI信息。PSI即为节目专用信息。PSI由节目关联表(PAT)、条件接收表(CAT)、节目映射表(PMT)和网络信息表(NIT)组成。节目关联表(Program Association Table,PAT):PAT由PID0X0000标识,它的主要作用是指出传输码流中包括那些节目,节目的编号与对应的节目映射表(Program Map Table, PMT),并指定网络信息表(Network Information Table, NIT)所对应的PID。 条件接收表(Conditional Access Table,
8、 CAT):CAT由PID0X0001标识,CAT提供系统中条件接收的信息,指定CA系统与它们相应的授权管理信息EMM之间的联系,指定EMM的PID,以及其它相关的参数。在武汉数字电视平台中它指定爱迪德CA系统的EMM为0X66,永新同方CA系统的EMM为0X68,这样机顶盒根据这一数值去解析CA加密信息。 PMT:PMT指出相应节目中包含的内容,即节目由那些流构成,以及这些流的类型(视频、音频、数据),指定节目中各流所对应的PID,以及该节目的PCR所对应的PID。 NIT:NIT提供与多组传输流、物理网络及网络传输相关的一些信息,比如用于调谐的频率信息以及编码方式、调制方式等参数方面的信息
9、,例如武汉电视台的传输频点为459MHz,调制方式为64QAM,纠错方式为RS方式等。SI信息共定义了9个表,但有一些表实际意义不大 :1)业务群关联表(BAT):- 业务群关联表提供了业务群相关的信息,给出了业务群的名称以及每个业务群中的业务列表。 2)业务描述表(SDT): - 业务描述表包含了描述系统中业务的数据,例如业务名称、业务提供者等。3)事件信息表(EIT): - 事件信息表包含了与事件或节目相关的数据,例如事件名称、起始时间、持续时间等。 - 不同的描述符用于不同类型的事件信息的传输,例如不同的业务类型。 4)运行状态表(RST): - 运行状态表给出了事件的状态(运行/非运行
10、)。运行状态表更新这些信息,允许自动适时切换事件。 5)时间和日期表(TDT): - 时间和日期表给出了与当前的时间和日期相关的信息。由于这些信息频繁更新,所以需要使用一个单独的表。 6)时间偏移表(TOT): - 时间偏移表给出了与当前的时间、日期和本地时间偏移相关的信息。由于时间信息频繁更新,所以需要使用一个单独的表。 7)填充表(ST): - 填充表用于使现有的段无效,例如在一个传输系统的边界。 8)选择信息表(SIT): - 选择信息表仅用于码流片段(例如,记录的一段码流)中,它包含了描述该码流片段的业务信息的概要数据。 9)间断信息表(DIT): - 间断信息表仅用于码流片段(例如,
11、记录的一段码流)中,它将插入到码流片段业务信息间断的地方。GY/Z 174-2001中NIT、BAT、SDT、EIT都被分成为一个或若干个段表示,然后插入到TS包中。段是一种用来把SI信息表和EPG信息表映射成TS包的语法结构。这些信息语法结构符合GB/T17975.1-2000定义的专用段语法结构。EPG的功能均可通过SI来实现,也就是说SI是实现EPG功能的前提。在SI中,最重要的是NIT、EIT和SDT,利用这3个表中的数据就可以构成功能不同的EPG。 NIT的作用在于提供调谐的频率信息以及编码方式、调制方式等参数方面的信息。SDT的作用是提供对每个业务的描述,使用户能方便地了解每个业务
12、的内容。对于每一个TS都有一个SDT与之对应。EIT实际上是一个节目表,对于每一个节目都存在一个独立的EIT。EPG包含两个部分:一是播出前端的EPG编辑器;二是用户端接收机相应的控制软件,两部分一一对应,每个接收机的相关部分必须要按照前端定义的数据结构来定制,从而接收显示前端送出的业务信息。以上这些表在传送流中以数据段的形式传送,不同的信息表在传送流中通过赋予不同的特定的PID来进行区分。而具有相同PID的不同信息表则进行由表标识符TABLE ID来区分,在接收端通过查这些特定的PID来找到它们。这里说明一下,TS中有两种标识符,一种是包标识符,一种是表标识符。例如SI中的SDT的每一个表都
13、对一个特定TS中的业务进行描述,这些业务可能是这个表所存在的TS的一部分,也可能是其它TS的一部分,这些SDT的PID都是相同的,这时候我们就可以通过不同的表标识符来区分它们,从而识别出那一个表所描述的业务是那一个TS的。2.1 说明段的长度是可变的。除EIT表外,每个表中的段限长为1024 字节,但EIT中的段限长为4096 字节。每一个段由以下元素的组合唯一标识:a) 表标识符(table_id) 1) 表标识符标识段所属的表;2) 一些表标识符已分别被ISO 和ETSI 定义。表标识符的其它值可以由用户根据特定目的自行分配。b) 表标识符扩展(table_id_extension) 1)
14、 表标识符扩展用于标识子表;2) 子表的解释:子表 sub_table,具有相同表标识符(table_id)的段的集合,并且: 对NIT 具有相同的table_id_extension(network_id)和version_number; 对BAT 具有相同的table_id_extension(bouquet_id)和version_number; 对SDT 具有相同的table_id_extension(transport_stream_id ),相同的original_network_id 和version_number; 对EIT 具有相同的table_id_extension (
15、service_id ),相同的transport_stream_id 、original_network_id和version_number。当段语法指示(section_syntax_indicator )字段置“1”时,表标识符扩展(table_id_extension) 字段等同于段的第四和第五字节。c) 段号(section_number) 1) 段号字段用于解码器将特定子表的段以原始顺序重新组合。本指导性技术文件建议段按顺序传输,除非某些子表的段需要比其它的段更频繁地传输,例如出于随机存取的考虑;2) 在本指导性技术文件中指定的各种SI 信息表和EPG 映射表,段编号也适用于子表;d) 版本号(version_number) 1) 当本指导性技术文件中规定的SI信息表和EPG映射表所描述的TS流特征发生变化时(例如:新事件开始,给定业务的组成的基本流发生变化),应发送更新了的业务信息数据。GY/Z 2032004 新版本的业务信息以传送一子表为标志,它与前子表具有相同的标识符,但版