一 EPG简介
电子节目指南(Electronic Program Guide,EPG),是指在符合MPEG-2 (13818-1)的TS传输流中插入DVB标准定义的业务信息(Service Information,SI),使机顶盒(Set-Top-Box)的综合接收解码器(IRD)可以从TS流中提取出节目提供商播出节目的列表和播出参数, 以直观的形式显示给数字电视用户,使得用户可以方便地接收、选择数字电视节目。EPG信息由两部分信息组成(如图):基本EPG信息和扩展EPG信息。
基本EPG信息是指完全可以用《数字广播业务信息规范(GY/Z174-2001)》中的网络信息表(Network Information Table,NIT)、业务群关联表(BAT)、业务描述表(SDT)和事件信息表(EIT)进行描述的EPG信息。扩展EPG信息是指在基本EPG信息之外,通过数据轮播传递的EPG信息,这些信息的入口采用EPG映射表(EMT)进行描述,信息的内容被封装成具有多级目录结构的文件系统,称为扩展EPG内容信息(XECI)。
在数字电视节目的播出过程中,可以加入辅助的SI信息,供机顶盒解码器的开发者来实现五花八门的电子节目指南的导航功能。利用机顶盒收看数字电视节目,用户通过EPG不仅能够接收普通的电视节目、广播节目或图文电视节目,而且,还可以查看感兴趣的信息,比如:按节目分类(如音乐节目、体育节目、电影等)检索节目、按节目提供者检索节目、查看未来一段时间内节目播出表以及视频网络中节目播出情况等信息。
二 PSI/SI信息及其功能
1. PSI信息
MPEG-2中的传送码流是根据ITU-TRecH220、ISO/IECDIS13818-2和ISO/IEC13818-3协议定义的一种数据流,其目的是为了在有可能发生严重错误的环境下进行一道或多道程序的编码数据的传送和存储。这种错误表现为比特值错误或分组丢失。传送流的速率可以是变化的或固定不变的。传送流速率由节目参考时钟(PCR)字段的位置和数值决定,通常对于每个程序都有自己的PCR字段。传送流中有关PID的信息及各PID之间的关系包含在节目特定信息(Program Specific Information,PSI)中,MPEG-2解码器将使用PSI信息来自动设置解码所需的各种参数。PSI信息使用4个表来定义码流的结构:节目关联表(Program Association Table,PAT)、节目映射表(Program Map Table,PMT)、NIT、条件访问表(Conditional Access Table,CAT)。
(1)PAT:PAT表的PID号为“0x00”,解复用器工作总是通过寻找PAT表开始。PAT给出了构成传送流中各个节目业务的PMT的PID,可根据节目PID找到相应的PMT包;同时也给出了NIT的PID号。
(2)PMT:PMT表指出了组成节目业务(Service)的各个码流的PID号,并对各路码流进行描述。PMT表提供程序号码与组成它们的原始流之间的映射,这种映射表是一个传送流中所有程序定义的集合。此表将在分组中传送,其PID值是私自选择的。如果需要的话,可以使用多个PID值。
(3)NIT:NIT表由ETS300468定义,它符合ISO/IEC13818-1标准,其内容是私有的,目的是提供有关物理网络的信息。如果存在,Network PID值由用户定义,并且应在PAT表中定义,其Program Number为保留的0x0000。
(4)CAT:CAT表提供一个或多个CA系统,PID值固定由0x0001标识。CAT表提供系统中条件接入的信息,指定CA系统与它们相应的权限管理信息EMM(Entitlement Management Messages)信息之间的联系,指定EMM的PID,以及其它相关的参数。
2. SI信息
MPEG-2在PSI中提供了不少有关节目组成和相互关系的信息,从而使得在接收端可以正确地对TS流进行解复用。但是这些信息在实际使用时仍然显得不够,为此在DVB标准中采用SI信息对PSI信息进行了进一步的扩展。PSI中的信息基本上都是与当前码流相关,即它们所涉及的内容都与当前码流中的部分信息相关;而SI信息可以包括不在当前码流中的一些服务和事件,允许用户进行更多的选择和了解更多的其他服务。
SI信息表主要有以下内容:
(1)BAT:BAT表提供了所涉及的有关节目业务群的信息,包括节目业务群名称及节目业务群所包含的节目业务清单。利用BAT可以方便地进行相关节目或某一类节目的浏览和选择。
(2)SDT:SDT表用于描述系统中服务的名称、服务提供者、是否有相应的事件描述表等方面的信息;服务描述表可以描述当前传输流,也可以描述其他传输流,这由表的Table ID来区分。
(3)EIT:EIT表包含事件或节目的有关数据,如事件的名称、开始时间、时间长度、运行状态等。
(4)RST:RST表提供某一事件或多个事件的运行状态和时间,即某一事件运行或不运行的信息,如:正在运行、即将运行、暂停、不运行等,可用于按时自动切换到指定的事件。
(5)TDT:TDT表给出了当前的时间和日期相关的信息。由于这些信息更新频繁,所以需要使用一个单独的表。
(6)TOT:TOT表给出当前的时间、日期和本地时间偏移相关的信息。
(7)ST:ST表的作用是表明其内容是无效的,只是作为填充字节,不传递有用信息。
SI信息是用来描述传送系统,传送内容和广播数据流时间表等的数据,是补充MPEG-2中PSI的附加数据,这些数据帮助IRD自动调谐,给用户提供附加信息,使IRD能自动设置可供选择的业务。各业务信息表均分配了特定的PID,如表所示。
头端系统每隔一定周期将重复传送SI信息,对于最高速率为100Mb/s的传送流而言,重复传送SI信息的最小间隔为25ms。这样,对于新开机的用户,在很短的时间内,就可以接收到SI,构成EPG所需的各项条款。
三 EPG的设计和实现方法
1. EPG信息的提取
一般而言,PAT表的PID号为“0x00”,解复用器工作总是通过寻找PAT表开始。PAT给出了构成传送流中各个节目业务的PMT的PID,同时也给出了NIT的PID号。根据PID值及对应的Table ID值可以从流中解出相应的PMT、NIT、SDT、EIT等信息。机顶盒接收端的解析主要负责这些SI数据信息的重建。信息内容应与PSI和SI表中的信息相对应,它可按照Network-Transport Stream-Service-Event的分层顺序描述,同时内嵌Transport Stream-Program(Service)-Element Stream的分层顺序。SI数据信息必须按照一定的数据结构进行存储,这样才能方便、快捷地对其进行检索和提取数据。特别是对于运行于机顶盒的实时操作系统中的EPG,需要对用户的交互进行实时的动作,所以对响应速度的要求很高,SI数据库建立的好坏对其性能有重要的影响。SI数据主要有:网络信息、传输流信息、业务(节目)信息,业务的事件信息等,并且大量的信息都是通过描述子来传输的,所以可用树状链表来存储数据,构成从网络、传输流、业务、事件的树状结构,传送不同信息的描述子用继承于同一基类的描述子类来表示。
网络信息表传送本网络以及与此有关的其它网络的一些信息。每个网络都有唯一的识别符,网络编码请参看ETR162。网络信息表主要携带:网络识别符(Network_ID)、网络名称、传输系统参数(有线传输系统参数包括:频率、调制方式、FEC外码、符号率、FEC内码)、节目业务类型及Service_ID等信息。如果NIT表中有关于传输系统参数的正确描述,只要调谐到携带此NIT表的传送流中,即可提取其它网络的参数,一般解码器便可根据提取出来的信息,自动搜索频道。
节目业务描述表提供了如下的信息:属于哪一个节目业务群;节目业务的类型,如PAL、NTSC、SECAM、调频广播、图文电视、准视频点播等;节目业务的提供者;可以接收该节目业务的国家和不可以接收该节目业务的国家;指向特定信息的链接信息;实现准视频点播的指导信息;实现多画面的控制信息;指示使用的加密系统;给出实现交互式回传信道的电话号码;提供多语种的节目业务名称和广播者以及私有数据。
事件信息表提供如下信息:节目段的标识号、起始时间、节目长度、播放状态、是否加密;指向特定信息的链接信息;节目段多语种的简短介绍;节目段的详细介绍;两段同样节目段的时间偏移;基本码流类型,如视频的幅型比、伴音的类型、字幕的类型等;使用的加密系统;节目类型,如电影/戏剧、新闻、综艺、体育、少儿、音乐、艺术、社会政治、文教等;节目限定年龄的级别;给出实现交互式回传信道的电话号码;为满足各节目段的码率而提供的缓存大小信息及私有数据。事件信息中提供了类似于广播电视报所提供的节目表的内容,根据EIT及其它表所提供的信息,可以做出各种EPG功能,如按节目类型检索、按时间检索及对某类节目的锁定等。
2. EPG的实现
现在市场上的大多数机顶盒产品通常采用从PAT表→PMT表→NIT表→SDT表→EIT表解析构造EPG、搜索节目的方法。我公司在开发机顶盒过程中,根据SI标准及机顶盒的解码流程,首次提出从NIT表直接构造EPG,即先忽略PAT、PMT表,从传输流中直接提取NIT表,根据NIT表携带的传输系统参数搜索所有载波信息,再解析SDT、EIT表等信息构造出基本的EPG信息。EPG提供的信息主要包括:传送信息的天数(例如一周)、传送频道的数目和名称、传送的节目数、节目提供商的标识和名称、传送网络的信息(网络标识和网络名称),其细节信息还包括:节目名称、节目的简单介绍、节目的开始和结束时间、节目的主题、节目的类属、节目的观看分级限制(例如对某个年龄段进行限制)。
在选择频道时再判断节目信息是否已经被解析,且在切换不同频率的频道时仅解析相应的PAT和PMT表,而无需再次重复解析NIT、SDT等信息。这样,无论在时间上还是在效率上都得到很大提升,解码和频道切换速度都很快,给用户的交互使用带来方便并留下良好的印象。
EPG使用SI来帮助用户对节目进行搜索。在选择一个节目时,可能首先查找BAT,根据BAT的名称列出一系列的节目种类,比如新闻、体育、电影、音乐等,选择其中自己感兴趣的类型,如电影等,于是得到有关电影的BAT。接收应用程序根据此BAT中包含的服务信息,得到一个服务选择列表。此时可以根据喜好,选择所希望观看的电影频道。要实现这一目的,EPG需要找到服务所对应的传输流,这是EPG根据BAT中所对应的传输流标识符查找NIT中传输流的描述,直到找到相应的传输流标识流所对应的描述,根据描述子中的参数(如频率、调制方式等)将IRD调到相应的播出频道。调到该频道后,就可以解调出传输流,再根据BAT中得到的服务标识符在当前的传输流的SDT中查找对应的服务,得到有关服务的信息,然后用户就可以根据自己的兴趣来对事件项进行选择。这时EPG根据所选事件的标识符和服务标识符查找EIT,得到有关事件的信息,比如什么时间开始、共多长等。
3. EPG的显示技术
当电视节目和EPG应用同时启动时,用户看到的可能是节目画面和EPG界面的叠加,电视画面从前到后可以分为三层,依次为图形层(On Screen Display,OSD)、视频层和背景层。OSD界面显示技术指在图像画面上叠加文字显示,使屏幕为用户提供更多的附加信息;视频层为当前正在收看的节目,即解码出来的活动图像;背景层为没有播放电视节目和启动EPG菜单时的屏幕图像。EPG画面在图形层上构建,EPG画面是由许多EPG图形元素(如按钮、文本框、选择按钮、组件容器等)叠加而成。界面的状态转移是通过消息驱动的机制来实现的,在消息响应函数中进行消息处理。用户见到的是屏幕图像是这三层的叠加后的图像。
SI数据检索模块快速地检索本地SI数据库,提取数据信息供EPG显示使用;OSD层图形元素库提供界面所需的图形元素;状态转移控制器接收用户遥控器的输入,控制状态转移流向;OSD层图像是指EPG界面图形元素合成后的图像,完成图形绘制。最后是OSD层、视频层和背景层的叠加操作。
四 结束语
电视数字化,让电视以一个崭新的面貌出现,电视数字化的好处不仅仅是提供高质量的视频、音频节目,更重要的是采用数字化处理后,可以开展更多灵活多样的增值业务,EPG在其中将起到很重要的作用。如何在机顶盒中构造出美观大方、功能强大、操作简单且易于用户交互的EPG是机顶盒厂商所关注的问题。我们期待着中文EPG标准的早日出台,各厂商也能推出包含丰富内容、功能各异EPG的数字电视机顶盒。 (全文完)
分享到:
相关推荐
#### 一、EPG简介与重要性 电子节目指南(Electronic Program Guide,简称EPG)是一项重要的数字电视技术,它能够在符合MPEG-2标准的传输流中嵌入特定的服务信息(Service Information,SI),从而使机顶盒(Set-Top-Box...
- **文本内容**:具体描述每个节目的详细信息,如标题、简介等。 - **属性信息**:附加于文本内容之上,如节目类型、评级等。 #### 五、EPG的标准化 EPG的相关标准由ETSI(欧洲电信标准协会)制定,如ETR288标准...
这些信息可能包括节目的名称、简介、播出时间、持续时长等。在数字电视系统中,EPG数据通常以XML或二进制形式传输,供用户界面显示。EPG格式的解析与生成涉及到对这些数据的处理和解析规则的理解。 压缩包中的文件...
在DVB(Digital Video Broadcasting,数字视频广播)系统中,EPG扮演着至关重要的角色,因为它使得用户可以浏览未来几天或几小时的电视节目信息,包括节目名称、播出时间、节目简介等。 **DVB系统基础** DVB是一种...
在IPTV系统中,EPG通常是一个网页或应用程序,显示了当前和未来时段的电视节目信息,包括节目名称、时间、频道、简介等。用户可以通过EPG进行节目预约、回放等功能,增强了互动性和用户体验。 这个名为"epg 模板....
EPG在DVB系统中为用户提供了一种方便的方式,来浏览和选择即将播出的电视节目信息,包括节目名称、时间、频道、简介等。 文件"epg"可能包含的是EPG数据结构或者处理EPG数据的相关函数。在C语言中,EPG的实现通常...
### SI及EPG的进一步理解 #### 一、引言 随着数字广播技术的发展,特别是数字视频广播(Digital Video Broadcasting, DVB)系统的普及,**服务信息(Service Information, SI)**与**电子节目指南(Electronic ...
4. **EPG简介** EPG是用户浏览和选择电视节目的电子指南,提供节目信息、时间表等,机顶盒通过EPG服务器获取并显示给用户。 5. **机顶盒** 机顶盒作为用户端的关键设备,负责接收、解码和显示IPTV内容。它需要...
EIT包含了特定节目或事件的详细信息,如节目名称、简介、开始和结束时间等。EIT分为当前表和后续表,分别用于表示当前正在播放的节目和未来将要播放的节目。EIT是EPG的核心组成部分之一,对于用户了解节目详情、安排...
EPG为用户提供了一种直观的界面,显示未来一段时间内电视节目的详细信息,如节目名称、简介、播出时间和频道。EPG不仅限于数字电视,也适用于流媒体服务和各种设备,如智能电视、机顶盒和移动应用。在DVB系统中,EPG...
4. **EPG简介**:电子节目指南提供电视节目的时间表和信息,帮助用户选择观看内容,同时在用户认证和内容推送中起到关键作用。 5. **机顶盒**:作为用户与IPTV系统之间的接口,处理解码、用户输入等任务,还可能...
【EPG简介】 EPG(Electronic Program Guide)是IPTV系统中的一个重要组件,它提供电子化的节目指南,让用户可以方便地浏览、搜索和选择电视节目,包括直播和点播内容。 【机顶盒】 机顶盒是用户接收和处理IPTV...
软件部分则是运行在这些硬件上的程序,负责解析和呈现节目信息,例如节目名称、播出时间、频道、节目简介等。EPG的设计需要考虑用户友好性,包括清晰的布局、易于导航的菜单、快速响应的交互以及可能的个性化设置。 ...
BAT通常会包含EIT的PID(Packet Identifier),使得接收设备可以解码并显示节目的时间、日期、简介等信息。 EPG(Electronic Program Guide)电子节目指南,是基于以上这些信息构建的,它整合了SDT提供的服务信息和...
3. 节目描述的生成:根据收集的节目信息,生成节目描述,包括节目简介、演员表、导演等信息。 EPG 信息的传输 EPG 信息的传输是指将 EPG 信息从服务器传输到用户端的过程。该过程包括多个步骤: 1. EPG 信息的...
EPG的数据通常由电视服务提供商生成并发布,这些数据包含节目的标题、简介、播出时间、频道信息等。这些信息通过数字信号传输到用户的接收设备,如机顶盒或智能电视。用户设备接收到数据后,解析并显示在屏幕上形成...
- 节目简介 - 主演信息 - 导演信息 - 评级信息 - 相关链接等 扩展EPG内容信息通常会通过特定的数据结构进行封装,并与基本EPG信息一起发送。用户可以通过选择特定的节目来访问这些详细信息。 #### 3. 网络信息 ###...