PSI-SI基本概念表结构(36页).doc
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_05.gif)
《PSI-SI基本概念表结构(36页).doc》由会员分享,可在线阅读,更多相关《PSI-SI基本概念表结构(36页).doc(36页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、- TOC O 1-3 H Z U HYPERLINK L _TOC6372180 1缩写(ABBREVIATION) PAGEREF _TOC6372180 H 12基本概念22.1传输流(Transport Stream / TS)22.2网络(network)22.3业务(service)22.4业务群(bouquet)22.5事件(event)32.6组件(Component)32.7PSI / SI33PSI/SI表的结构43.1table、sub_table和section43.2section43.2.1section_header53.2.2descriptor53.2.3ta
2、ble_loop64PSI / SI表74.1PMT(Program Map Table)74.2PAT( Program Association Table )84.3CAT( Conditional Access Table )84.4NIT( Network Information Table )94.5SDT( Service Description Table )104.6EIT ( Event Information Table )104.7BAT( Bouquet Association Table )11第 33 页-1 缩写(Abbreviation)缩写词全称中文意思MPE
3、GMotion Picture Experts Group运动图象专家组DVBDigital Video Broadcasting数字视频广播IRDIntegrated Receiver Decoder综合接收解码器PSIProgram Specific Information节目说明信息SIService Information业务信息CATConditional Access Table条件接收表PATProgram Association Table节目关联表PMTProgram Map Table节目映射表EITEvent Information Table事件信息表NITNetwor
4、k Information Table网络信息表SDTService Description Table业务描述表TDTTime and Date Table时间/日期表BATBouquet Association Table业务群关联表RSTRunning Status Table运行状态表TOTTime Offset Table时间偏移表uimsbfunsigned integer most significant bit firstbslbfbit string, left bit first2 基本概念2.1 传输流(Transport Stream / TS)传输流是MPEG II规
5、范的系统层提出的、对多路节目进行复用的两种方案之一,它主要针对数据在非可靠信道的传输(另一种方案节目流是针对可靠信道的传输而提出的),比如卫星信道、微波信道或CATV信道。传输流这种机制可将多路节目复用成一个流,并且,同一节目还可以包含多个视频和音频流。组成传输流的是一系列连续的数据包,简称TS包。TS包的长度固定,一般是188字节。如果在这种TS包的尾部加入16字节的RS纠错码,则包长为204字节。传输流的形成过程可以用图2.1来说明。组成节目的视频流和音频流经过基础流编码器之后,形成基本流,每一路视频流或音频流对应一路基本流。基本流经过打包,形成PES包流。每一个PES包都有流标识、用于视
6、、音频解码和播放同步的时戳。PES包和其它的数据、控制信息经过复用器,形成TS包。每一个TS包都有一个包标识PID,同一基础流对应的TS包,PID的值相同。TS流就是通过对各个基础流分配不同的PID号来唯一的标识各个不同的基础流、信息表和其它数据。每一个TS包最多只能包含一路基础流的内容。图2.1 传输流系统框图为了实现众多编码器与解码器之间的时钟同步,防止解码器的缓冲发生上溢或下溢,在系统流中加入了一个精确的系统级时间参考值,在TS流中,这个值被称为节目参考时钟PCR。在解码器端,当检测到本地系统时钟和PCR所表征的时钟不一致时,解码器将调整本地系统时钟。2.2 网络(network)一个传
7、输系统,可以传输一组MPEG II 码流。网络使用 network_id 来进行标识,不同运营商所运营的网络,对应的network_id不同。2.3 业务(service)在广播者的控制下,可以按照时间表分步广播的一系列节目。一个业务可以理解为一个逻辑意义上的频道。使用 service_id 来标识一个业务。同一个传输流中,service_id必须唯一。2.4 业务群(bouquet)一个业务群是一系列业务的集合。这些业务可以来自不同的TS流甚至不同的网络。业务群的概念可以这样来理解:假设有两个业务提供商PA和PB,PA提供了10套节目,PB提供了20套节目。但是,对于某一个地域的用户,只希望
8、他们收到PA提供的3套节目和PB提供的5套节目。此时,可以将这些节目组成一个业务群。2.5 事件(event)一组属于普通业务的广播数据流,它定义了起始时间和结束时间,一个事件就是一个节目,更确切的说,是一个节目段。例如:一场足球比赛的半场,新闻快报,娱乐表演的第一部分。2.6 组件(Component)组件是组成节目段的一个或多个实体,对应“传输流”概念中的基础流。以上概念之间的关系如图2.2所示。图2.22.7 PSI / SI在MPEG II标准的系统部分重点描述了MPEG II系统级传输流中包含的PSI信息。PSI描述了传输流所携带的内容,包含了对构建各节目的基本流的描述和对节目本身的
9、描述。为了给IRD提供更多的接收和解码所需信息,支持更复杂的应用,DVB又准备了一个开放的服务信息系统(DVB-SI)来辅助DVB信号。SI可以描述由某一播放者提供的每一个服务的技术特征及其他的信息,通过SI的帮助,用户可以在传输流中选择服务或事件,机顶盒使用SI信息能完成自动配置和自动接收。所有的PSI/SI信息都以表的形式从中心系统广播下来,表中包含了整个广播网络的物理特征和节目信息,所有这些表在传输时,都将被封装在大小固定的被称为段(section)的数据块中。3 PSI/SI表的结构3.1 table、sub_table和sectionPSI(节目说明信息)表包括PAT、PMT和CAT
10、,SI表包括NIT、SDT、EIT、BAT、TDT、TOT、RST等。从结构上来说,这些表都由一个或多个子表组成,而子表又进一步由一个或多个section组成。section最初是在MPEG II中定义的语法结构,在从PSI表到TS包的转换过程中,section起到了中介的作用。DVB在扩展PSI为SI的时候,沿用了这种语法结构。PSISI表的框架如图3.1所示:图3.1 Table、SubTable和Section的结构关系不同的表之间可以通过表标识(table_id)进行区分,属于同一个table_id的不同子表一般通过表的扩展标识(table_id_extension)、版本号(vers
11、ion_number)进行区分,对于EIT和SDT的子表,还要加上其它的区分条件。这些用于区分子表的数据段(field)在每一个具体的表中都作了定义。3.2 section一个比较一般的section结构如图3.2所示。图3.2 section的结构在section_header部分包含了用于区分子表的“域”(field);section_header之后可能有第一层描述符循环和表循环,一个表循环之中又可能再次包含描述符循环(习惯上称为第二层描述符循环)。所谓“循环”,就是指相同或类似的数据结构重复出现。“other_fields”位置处一般会有一个数据段用于指示表循环结构的长度(以字节为单位
12、),“section_tail”处一般是一个32位的CRC校验位。3.2.1 section_headersection_header的语法结构如表3.1所示。表3.1 section_header 语法结构SyntaxNo. of bitsIdentifierRemarksection_header table_id8 uimsbfsection_syntax_indicator1 bslbfreserved_future_use1 bslbfreserved2 bslbfsection_length12 uimsbftable_id_extension16 uimsbfIf section
13、_syntax_indicator = 1version_number5 uimsbfIf section_syntax_indicator = 1current_next_indicator1 bslbfIf section_syntax_indicator = 1section_number8 uimsbfIf section_syntax_indicator = 1last_section_number8 uimsbfIf section_syntax_indicator = 1不同的PSISI表具有不同的table_id,在文档En300468中,有PSISI表和table_id的对应
14、关系。section_syntax_indicator最早在MPEG II中使用,主要用于“私有数据表”(private data table),其值为0和1的时候,私有数据表的结构不同。DVB中也使用了section_syntax_indicator,当它的值为1时,section的第四、第五个字节表示table_id_extension,并且从section第43位开始的5位表示子表的版本号(version_number),第48位表示当前表是否有效(current_next_indicator),第7个字节表示当前section在所属子表中的编号(section_number),第8个字
15、节记录子表中section_number的最大值。section_length表示从section的第四字节开始到section结束的数据区的字节长度。对于一般的PSISI表,section_length的最大值为1024;对于EIT表,section_length的最大值为4096。当section_syntax_indicator的值为1时,section的第四、第五字节表示table_id_extension,对于不同的表,table_id_extension的物理意义不同。PSISI表中有两个表例外,即PSI表中的CAT表和SI表中的ST表。这两个表都没有table_id_extens
16、ion,但CAT表的section_syntax_indicator必须是1,ST表的section_syntax_indicator可以为0,也可以为1。当section_syntax_indicator的值为1时,从section第43位开始的5位表示子表的版本号(version_number)。version_number的值从零开始,每当子表内容改变时,version_number的值加1。当version_number增加到31后,再次回归到零。当section_syntax_indicator的值为1时,section的第48位表示当前表是否有效(current_next_indi
17、cator)。如果current_next_indicator的值为1,表示当前表有效,为0,表示当前表无效,下一个表有效。3.2.2 descriptor一个descriptor是一个语义上比较完整的语法结构,用于提供特定的信息,比如,network_name_descriptor用于描述一个网络名称,service_descriptor用于描述一个业务的类型、业务提供商的名称和业务名称。所有的descriptor都以一个8位的标识:descriptor_tag开使,后面紧跟一个8位的数表示从descriptor的第3个字节开始到descriptor结束的数据区的字节长度。从descript
18、or的第3个字节开始到descriptor结束的数据是各个descriptor的具体内容。如表3.2所示。表3.2 descriptor结构示意SyntaxNo. of bitsIdentifierPSISI_descriptor() descriptor_tag8 uimsbfdescriptor_length8 uimsbfdescriptor_contentdescriptor_tag的值可以从0255,其中,0、1保留,218是PSI中定义的描述符,1963保留,64110是SI中定义的描述符,111127保留,128254可以定义私有描述符,255禁用。如图3.3所示。图3.3 de
19、scriptor_tag allocation为了叙述方便,下文将descriptor_tag值在218的描述符称为PSI描述符,将descriptor_tag值在64110的描述符称为SI描述符。同一个descriptor可能位于不同的PSISI表中,也可能位于同一个PSISI表的第一和(或)第二层描述符序列中。文档IS13818没有规定PSI描述符在PSI表中可能出现的位置。可以认为,PSI描述符可以出现在PSI表中的任何位置,只要该描述符对于该PSI表是有特定意义的。文档En300468的表12描述了SI描述符在PSISI表中可能出现的位置,在文档Etr211中,详细规定了各个SI表中允
20、许出现的SI描述符。对于某一个特定的SI表,在section中的特定位置,只能出现特定的SI描述符,其它描述符在这个位置出现都是没有意义的。3.2.3 table_looptable_loop对应于特定的PSISI表,不同PSISI表的table_loop结构上不同,具有不同的含义。例如,NIT表的table_loop对应特定网络中的传输流,传输流的个数等于NIT中table_loop的个数;SDT表的table_loop对应特定传输流中的业务(service),service的个数等于SDT中table_loop的个数。图3.4是对本节的总结。图 3.4 PSI / SI结构4 PSI /
21、SI表4.1 PMT(Program Map Table)现在回顾一下图2.1,在节目发送端,一个节目(用program_number标识)可以由音频流、视频流组成,视、音频流经过处理,形成TS包之后,对应的TS包便带上了PID信息。不同的视、音频流对应的PID值不同。PMT描述了当前TS流中节目的视、音频PES流和PCR 的PID,PMT的个数等于当前TS流中节目的个数。通过PMT,可以从MPEG II传输流中提取指定节目的基本流并予以解码重放。PMT的语法结构如表4.1所示。表4.1 PMT语法结构SyntaxNo. of bitsIdentifierprogram_map_section
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- PSI SI 基本概念 结构 36
![提示](https://www.taowenge.com/images/bang_tan.gif)
限制150内