Chinaunix首页 | 论坛 | 博客
  • 博客访问: 161857
  • 博文数量: 8
  • 博客积分: 2535
  • 博客等级: 少校
  • 技术积分: 765
  • 用 户 组: 普通用户
  • 注册时间: 2005-06-20 16:33
文章分类

全部博文(8)

文章存档

2012年(1)

2011年(1)

2010年(1)

2009年(5)

我的朋友

分类:

2009-08-05 11:11:23

数字电视中的常用PSI/SI表

 1、引言

    在数字电视中,所有视频、音频、文字、图片等经数字化处理后都变成了数据,并按照MPEG-2的标准打包,形成固定长度(188个 字节)的传送包,然后将这些数据包进行复用,形成传送码流(TS)。通常由多个节目及业务复用组成的一个TS(Transport Stream传输流)流 对应一个8MHz带宽的频道。

    数字电视机顶盒中为了找到需要的码流,识别不同的业务信息,在TS流中必须加入一些引导信息,为此,在MPEG-2中,专门定义了PSI(Program Specific Information)信息,其作用是从一个携带多个节目的TS流中正确找到特定的节目。

1.1 PSI简介

    在MPEG-2标准中定义的PSI表,是对单一TS流的描述。

    PSI表:

    PAT(Program Association Table)节目关联表

    CAT(Conditional Access Table)条件接收表

    PMT(Program Map Table)节目映射表

    NIT(Network Information Table)网络信息表

    以上四个表在复用时通过复用器插入到TS流中,并用特定的PID(包标识)进行标识。

    由于系统通常存在多个TS流,为了引导数字电视用户能在TS流中快速地找出自己需要的业务,DVB对MPEG-2的PSI进行了扩充,在PSI四个表的基础上再增加了九个表,形成SI(Service Information)。


1.2 SI简介

   SI是对整个系统所有TS流的描述,在符合MPEG-2(13818-1)的TS传输流中插入DVB标准定义的业务信息 (Service Information,SI),使机顶盒(Set-Top-Box)的综合接收解码器(IRD)可以从TS流中提取出节目提供商播出节目的列表和播出参数,以直观的形式显示给数字电视用户,使得用户可以方便地接收、选择数字电视节目。

    SI表:

    SDT(Service Description Table)业务描述表

    EIT(Event Information Table)事件信息表

    TDT(Time and Date Table)时间和日期表

    TOT(Time Offset Table)时间偏移表

    BAT(Bouquet Association Table)业务群关联表

    RST(Running Status Table)运行状态表

    ST(Stuffing Table)填充表

    SIT(Selection Information Table)选择信息表

    DIT(Discontinuity Information Table)间断信息表

    SI中的个表在实际使用中并不都需要传送,其中NIT、SDT、EIT以及TDT是必须传送的,其他表按照需要进行选择传送。

1.2 TS流标识简介

    TS流中有两种标识,一是包标识PID,另一个是表标识TABLEID。具有相同PID的不同信息表由表标识符TABLEID来区分,在接收端通过查这些特定的PID来找到它们。

每个表都有特定的PID值,具体的值如下表:

PID值
PAT
0X0000
CAT
0X0001
PMT
0X0002
NIT
0X0010
SDT、BAT
0X0011
EIT
0X0012
TDT、TOT
0X0014

       本文以有线数字电视中某一个具体TS流配置为准,分析了PSI/SI信息表。图1为PSI/SI全表。     

图1PSI/SI表

2、PSI信息的分析

    当机顶盒要要接收某一个指定节目时,PSI表首先从节目关联表(PAT)中取得这个节目的节目映射表(PMT)的PID值,然后从TS流中找出与此PID 值相对应的节目映射表(PMT),从这个节目映射表中获得构成这个节目的基本码流的PID值,根据这个PID值滤出相应的视频、音频和数据等基本码流,解码后复原为原始信号,删除含有其余PID的传送包。

一、PAT表

    要保证TS流能正常接收,在该流中至少有一个完整有效的PAT。节目关联表PAT包括该TS流中的所有节目映射表即每个节目的PMTPID,传输流ID等。

    如图2所示,其中PAT表包标识符PID为0x0000,表标识符(table_id)为0x00,TS流 ID(transport_stream_id)为0x000D即第14个传输流,包含8个节目的PMT信息,分别为0x0061、0x0062、 0x0063、0x0064、0x0065、0x0066、0x0067、0x0083。

    由于PSI数据的完整性十分重要,因此在每个PSI段中均需要加CRC的校验码。 

图2PAT表

二、PMT表

    节目映射表(PMT)中包括每个节目的基本码流信息即视频信息、音频信息和同密的多家CA的ECM授权控制信息。如图3所示,PMT_PID为 0x0063,表标识符(table_id)为0x02,PCRPID为0x1141,视频PID为0x1141,音频 (Streamtype0x04)PID为0x1142。其中MPEG-2数字电视13818-2视频部分标准中规定视频基本流类型 (Streamtype)为0x02,13818-3音频部分标准中规定音频基本流类型(Streamtype)为0x04。

    PMT表针对节目的加密情况,还含有CA_System_ID用于节目是用何种CA系统加密和ECM_PID用于告知用户如何搜索ECM。 CA_System_ID可惟一标识CA系统,分配到用户的智能卡中。以下表中包括同密的三家CA系统CA_System_Id分别是0x491A、 0x602、0x606和,对应的ECMPID分别是0x114A、0x114B、0x114C。由于每个节目的加扰参数和加密方式不同,针对不同节目分 配不同的ECMPID,所以每个流的每个基本流对应的ECMPID不同。  

图3 PMT表

三、CAT表

    CAT表针对具体CA系统中的用户的授权情况,含有标识具体CA系统的CA_System_ID和用于获取授权管理信息EMM的索引EMM_Pid,通过 这两项内容就可以获得用户所在CA系统的EMM信息。用户端的条件接收过程就是从读取卡内的CA_System_ID开始的,获取相应的EMM,ECM 后,解密解扰的工作就按与发送端相逆的顺序开始了。

    如图4所示,CAT表PID为0x0001,table_id为0x01,其中包括同密的三家CA系统CA_System_ID分别是0x491A、 0x602、0x606,对应的EMMPID分别是0x49、0x50、0x51。由于EMM信息通过TS流的方式与其他节目信息复用传输,并且为了用户 及时获得授权信息,复用在每一个TS流中,所以在每一个传输流中的EMMPID一样的。

四、NIT表

    NIT表包括该数字电视网中的所有的传输流的物理传输网信息,包含节目的频道调谐参数、频率、符号率等,这些信息使得接收机可以按照用户的选择以很少的延时或无延时地改变频道、调谐参数,正确地解码出TS。

    如图5所示,其中NIT表PID为0x0010,table_id为0x40,网络ID(network_id)0x01,包括13个传输流,分别传输流 ID是0x0001~0x000D,显示当前传输流0x000D中的所有节目ID。以及当前流的传输参数,包括中心频率 (frequency)379MHz、数字调制方式(modulator)64QAM、符号率(symbolrate)6.875Msymbol/s。


  3、SI信息的分析

    PSI数据只提供了单个TS的信息,使数字电视机顶盒能对单个TS中的不同节目流进行解码,但它不能提供多个TS的有关业务和节目的类型、什么节目、什么时间开始等信息,因此,DVB系统对PSI进行了扩展,提供了其它不同信息种类的多种表格,形成SI。在实用中,我们将SI所提供的数据通过有序地组织起 来,生成类似节目报的形式,它能在电视机上即时浏览,这样将大大方便用户的使用,这就是电子节目指南EPG。

    SI中的常用表为网络信息表(NIT表)、业务描述表(SDT)、事件信息表(EIT)、业务群关联表(BAT)、时间和日期表(TDT)、时间偏移表(TOT)。NIT表在以上PSI表中已描述。

一、SDT表

    业务描述表(SDT):它包含了当前传输流和其他传输流的业务信息,比如当前传输流ID,当前传输流中包含的节目名称,节目类型等。

    如图6所示,SDT表PID为0x0011、table_id为0x42、当前传输流ID为0x0d、节目运行状态(running_status)为运行、服务类型(servicetype)为数字电视业务、服务名称(servicename)为七彩戏剧。

    二、EIT表

    事件信息表(EIT):它包含了与事件或节目相关的数据,EIT是生成EPG的主要表。包括每个节目的当前播出的节目名称、播出开始时间、播出时间段、父母控制级别等信息和下一个播出节目相关信息。

    如图7、图8、图9所示,section-number=0为当前播出事件信息和section-number=1

    为下一个播出事件信息,其中包括事件开始时间(starttime)、播放时间段(duration)、当前播出事件内容(eventname),父母级别控制(parantelratingdescriptor)等。

    三、TDT、TOT、BAT表

    时间和日期表(TDT):它给出了与当前的时间和日期相关的信息,由于这些信息更新频繁,所以需要单独使用一个表。时间偏移表(TOT):它给出了与当前时间、日期和本地时间偏移相关的信息,由于这些信息更新频繁,所以需要单独使用一个表。

   业务群关联表(BAT):它提供了业务群相关的信息,给出了业务群的名称以及每个业务群中的业务列表。如图11、12所示,分别存在电影、体育和升级程序 等三组业务群,其中包括属于该群的节目ID、该节目具体归属的传输流ID和节目类型等信息。利用BAT表的功能,用户根据前端的定义,方便、快捷地搜索到 不同业务群的的节目。 

    4、结束语

    通过在数字电视中插入PSI/SI信息,数字电视用户能够方便、快捷地搜索和查询到所有传输的节目名称、节目分类、一周节目内容和具体播放时间等信息,并且随自己的喜好在数字电视接收设备上预定节目,从而实现电子节目指南。



阅读(2994) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~