关于MPEG-2传送流的PSI信息的讨论
PSI、TS流总结
PSI、TS流总结PSI、TS流总结分类: iptv 2014-01-09 20:03 1391人阅读评论(3) 收藏举报ES:由编码器输出,可以是编码过的视频数据流,音频数据流,或其他编码数据流。
ES流经过PES打包器之后,被转换成PES包。
PES包由包头和payload组成。
PSI:MPEG-2中定义了PSI(Program Specific Information)信息,其作用是从一个携带多个节目的某一个TS流中正确找到特定的节目。
PSI表:PSI表包括节目关联表(PAT)、条件接收表(CAT)、节目映射表(PMT)和网络信息表(NIT)组成。
当机顶盒要要接收某一个指定节目流程:1. 首先从节目关联表(PAT)中取得这个节目的节目映射表(PMT)的PID值2. 然后从TS流中找出与此PID值相对应的节目映射表(PMT),从这个节目映射表中获得构成这个节目的基本码流的PID 值3. 根据这个PID值滤出相应的视频、音频和数据等基本码流4. 解码后复原为原始信号,删除含有其余PID的传送包。
TS是经过节目复用和传输复用两层完成的,即在节目复用时,加入了PMT,在传输复用时,加入了PAT。
同样在节目解复用时,可以得到PMT,在传输解复用时,可以得到PAT。
一、 PAT表节目关联表PAT的PID为0x0000,包括该TS流中的所有节目映射表即每个节目的PMT PID,传输流ID等。
二、PMT表节目映射表(PMT)中包括每个节目的基本码流信息即视频信息、音频信息和同密的多家CA的ECM授权控制信息。
PMT表针对节目的加密情况,还含有CA_System_ID。
用于节目是用何种CA系统加密和ECM_PID用于告知用户如何搜索ECM。
1. PSI依然是"根",只有定位到PSI表后,才能索引出PAT,和各个节目的PMT表。
2. PAT表记录了什么呢?表头信息和节目信息。
》表头信息包含若干字段,但最关键的是version_number,why?因为TS流里任何节目信息的变化,这个字段都会往上递加,从而使得TS解码器可以据此让Decoder对不同节目做解码复位。
SI信息入门
SI信息入门数字电视与传统模拟电视节目选择的方式完全不同,传统电视的每一个频道对应一个节目,只要调到相应的频率,就可以看到节目。
而在数字电视信号中,一路码流对应多路节目,使用复用技术就可以做到了。
一个物理的频道只能给出包含多路节目的一路传输流。
要观看其中的某一路节目,还必须从该传输流中提取出该路节目的压缩包,然后再进行解码。
所以怎样从众多的传输流中,选中一路节目播放,就变得很复杂。
在mpeg-2的传输流(Transport Stream)中,节目专用信息PSI(Program Specific Information),就是规定不同节目和节目中的不同成分如何复用成一个统一的码流。
以PSI为基础可以提供一个码流的构成,从而帮助用户对节目进行选择。
DVB中的服务信息SI(Service Information)则对此进行了进一步的扩展,加入了一些对用户有用的信息,标示节目的类型,服务商,节目的相互关系等。
正确的了解mpeg-2的PSI以及DVB的SI的结构,及其在节目组织,选择中的应用,可以正确理解service information在DVB 解码中的地位。
对于我们做好对数字节目的复用,也能起到帮助作用。
1, MPEG-2 TS中的PSIPSI信息主要包括以下的表:PAT(Program Association Table):节目群丛表,该表的PID是固定的0x0000,它的主要作用是指出该传输流ID,以及该路传输流中所对应的几路节目流的MAP 表和网络信息表的PID。
PMT(Program Map Table):节目映射表,该表的PID是由PAT提供给出的。
通过该表可以得到一路节目中包含的信息,例如,该路节目由哪些流构成和这些流的类型(视频,音频,数据),指定节目中各流对应的PID,以及该节目的PCR 所对应的PID。
NIT(Network Information Table):网络信息表,该表的PID是由PAT提供给出的。
PSI SI
5.2
业务信息SI( 业务信息SI(续) SI
时间和日期表(TDT): 它给出了与当前的时间(UTD协调世界时)和日期相 关的信息。 时间偏移表(TOT): 它给出了与当前时间(UTC)、日期和本地时间差
5.2
业务信息SI( 业务信息SI(续) SI
业务信息SI如何插入播出前端: SI一般在复用器合成TS时插入。按照SI标准形成各 表的数据段后,数据可以三种方式送入复用器: 1)将各表数据通过复用器生产厂家提供的应用 软件接口(API异步并行接口),由复用器插入节目 码流。其优点是结构简单、系统稳定;缺点是需 要复用器厂家提供接口资料和硬件支持,对不同 厂家复用器需要编写不同的软件。
5.2
业务信息SI( 业务信息SI(续) SI
事件信息表(EIT):
它包含与事件或节目相关的数据,例如事件名称,起始时间,持 续时间等。EIT是生成EPG的主要表,相当于节目表。 (事件信息表EIT按时间顺序提供每个业务中包含的事件的信息 ,包括:事件的标识号、起始时间、节目长度;播放状态、 是否加密;事件的详细介绍;两段同样事件的时间偏移;事 件多语种的简短介绍;节目限定年龄的级别等。其类型通过 表识别符进行区别。任何构成EIT段均在PID为0×0012的传送 包中进行传送。)
1.2
业务信息SI( 业务信息SI(续) SI
业务描述表(SDT) 业务描述表(SDT):
它包含了描述系统中业务的信息。例如业务名称,起始时间、持 续时间等。(业务描述表SDT的每一个子表都对一个特定TS流 中的业务进行描述。这些业务可能是实际TS流的一部分,也 可能是其它TS流的一部分,可以通过不同的表标识符来区分 。 SDT提供业务所属的业务群、业务使用的加密系统、与其它业务 的链接信息、该业务的准用国家、业务名称和业务提供者、 业务是否允许NVOD,以及多画面的控制、实现交互式回传信 道的电话号码和多语种业务名称等信息。 为了更容易获得有 关业务,一般SDT的传送是强制性的。
MPEG-2系统原理之第三章DVB SIPSI分析和处理
第三章 DVB SI/PSI分析和处理SI是Specific Information的简称,PSI是program Specific Information.该机制允许DVB传送各种各样的讯息,比如节目名称,电视台名称,各种PID,私有信息,甚至单独传送数据实现数据通信等.这些功能的实现都归功于SI/PSI.在DVB标准中,定义了一个标准的PID用来实现SI/PSI.这些PID是系统保留的,因此DVB编码的时候并不会用这些PID做为Video PID或者Audio PID或者其他PID.在一个简单的解复用程序中,只需要提供处理PAT,PMT 表格的程序即可实现解复用,当然如果需要更友好的界面和实现更复杂的功能(如CA)则必须处理其他的SI表.在这里仅仅分析PAT,PMT,SDT表格,其他SI表格的分析,请参考ISO13818-1(MPEG-2系统层标准)和EN300468(DVB SI标准)文档.DVB定义的SI保留的PID分别是:上表格的PID就是DVB保留的PID,分配的其他PID一定不会占用这些PID.解复用程序需要使用到的表格只有PAT,PMT,SDT,而CA应用还需要使用CAT,EPG应用还需要使用NIT,EIT,TDT,TOT等表格.所以在需要解复用的时候,伪代码需要这样写:void Process_Packet(unsigned char*buff){int PID=GETPID(buff);if(PID==0x0000) /*这是PAT表*/{Process_PAT(buff+4);/*处理PAT表*/}else if(PID==......)/*Video 或者Audio*/{}else/*其他不支持的PID*/{printf("Unknown PID!");}}所有的表格都开始于Packet中的184字节的数据部分,但有的时候一个表格没有184字节,这时在Packet中就可能插入一些无效信息用来填充使整个Packet依然保持是188字节.也可能用头信息中的payload_unit_start_indicator标志表格有个偏移位置(当payload_unit_start_indicator=0表示表格数据直接从Packet区的第四个字节开始,否则表示有一个偏移量位置开始,具体请参考ISO13818-1,第4字节到偏移量间的数据是系统填充的无效数据).下面针对解复用程序详细分析一下PAT,PMT和SDT三类表格的格式.PAT, Program Association Table,节目关联表PAT表携带以下信息:(1) TS流ID--- transport_stream_id,该ID标志唯一的流ID(2) 节目频道号-- program_number,该号码标志TS流中的一个频道,该频道可以包含很多的节目(即可以包含多个Video PID和Audio PID)(3) PMT的PID--- program_map_PID,表示本频道使用的哪个PID做为PMT的PID,因为可以有很多的频道,因此DVB规定PMT的PID可以由用户自己定义.PAT表定义如下:各字段含义如下:table_id:8 bits,标志本表格的类型,应该是0x00section_syntax_indicator:1 bit,段语法标志,应该是'1''0':固定的'0',这是为了防止和ISO13818Video流格式中的控制字冲突而设置的.Reserved:保留的2bits,保留位一般都是'0'section_length:12bits的段大小,单位是Bytes.transport_stream_id:16bits的当前流ID,DVB内唯一.(事实上很多都是自定义的TS ID)version_number:5bits版本号码,标注当前节目的版本.这是个非常有用的参数,当检测到这个字段改变时,说明TS流中的节目已经变化了,程序必须重新搜索节目.current_next_indicator:1bit:当前还是未来使用标志符,一般情况下为'0'section_number:8bits当前段号码last_section_number:8bits最后段号码(section_number和last_section_number的功能是当PAT内容>184字节时,PAT表会分成多个段(sections),解复用程序必须在全部接收完成后再进行PAT的分析)从for()开始,就是描述了当前流中的频道数目(N),每一个频道对应的PMT PID 是什么.解复用程序需要和上图类似的循环来接收所有的频道号码和对应的PMT PID,并把这些信息在缓冲区中保存起来.在后部的处理中需要使用到PMT PID.CRC_32:本段的CRC校验值,一般是会忽略的.N是一个变量,计算方法是N=(section_length-9)/4.从以上分析我们可以发现,PAT表主要包含频道号码和每一个频道对应的PMT 的PID号码,这些信息我们在处理PAT表格的时候会保存起来,以后会使用到这些数据.例如我们可以定义这样的数据结构保存这些信息:typedef struct{int channel_number;/*频道号*/int pmt_pid;/*对应channel_number频道号的PMT的PID*/}PMT_ITEM;PMT_ITEM pmt[64];/*定义最多64个频道,这个结构在分析PAT表格的时候会更新*/PMT, Program Map Table,节目影射表如果一个TS流中含有多个频道,那么就会包含多个PID不同的PMT表.检测是否PMT的伪代码如下:void Process_Packet(unsigned char*buff){int I;int PID=GETPID(buff);if(PID==0x0000)/*PAT表格*/{Process_PAT(buff+4);}else if(PID==.....)/*Video PID或者Audio PID*/{}else{/*在这里检测PID是否是PMT的PID*/for(i=0;i<64;i++){if(PID==pmt[i].pmt_pid)/*PID等于在PAT检测到的PMT PID相同*/{Process_PMT(buff+4);/*说明当前Packet是PMT,进入处理*/break;}}}}PMT表中包含的数据如下:(1) 当前频道中包含的所有Video数据的PID(2) 当前频道中包含的所有Audio数据的PID(3) 和当前频道关联在一起的其他数据的PID(如数字广播,数据通讯等使用的PID)PMT定义如下:各字段含义如下:table_id:8bits的ID,应该是0x02section_syntax_indicator:1bit的段语法标志,应该是'1''0':固定是'0',如果不是说明数据有错.reserved:2bits保留位,应该是'00'section_length:16bits段长度,从program_number开始,到CRC_32(包含)的字节总数.program_number:16bits的频道号码,表示当前的PMT关联到的频道.换句话就是说,当前描述的是program_number频道的信息.reserved:2bits保留位,应该是'00'version_number:版本号码,如果PMT内容有更新,则version_number会递增1通知解复用程序需要重新接收节目信息,否则version_number是固定不变的. current_next_indicator:当前未来标志符,一般是0section_number:当前段号码last_section_number:最后段号码,含义和PAT中的对应字段相同,请参考PAT 部分.reserved:3bits保留位,一般是'000'.PCR_PID:13bits的PCR PID,具体请参考ISO13818-1,解复用程序不使用该参数.reserved:4bits保留位,一般是'0000'program_info_length:节目信息长度(之后的是N个描述符结构,一般可以忽略掉,这个字段就代表描述符总的长度,单位是Bytes)紧接着就是频道内部包含的节目类型和对应的PID号码了.stream_type:8bits流类型,标志是Video还是Audio还是其他数据. reserved:3 bits保留位.elementary_PID:13bits对应的数据PID号码(如果stream_type是Video,那么这个PID就是Video PID,如果stream_type标志是Audio,那么这个PID就是Audio PID)reserved:4 bits保留位.ES_info_length:和program_info_length类似的信息长度(其后是N2个描述符号)CRC_32:32bits段末尾是本段的CRC校验值,一般忽略.从以上的分析可以看出,只要我们处理了PMT,那么我们就可以获取频道中所有的PID信息,例如当前频道包含多少个Video,共多少个Audio,和其他数据,还能知道每种数据对应的PID分别是什么.这样如果我们要选择其中一个Video和Audio收看,那么只需要把要收看的节目的Video PID和Audio PID保存起来,在处理Packet的时候进行过滤即可实现. 比较全面实现解复用的伪代码如下:int Video_PID=0x07e5,Audio_PID=0x07e6;/*一般是在PMT检索后由用户自己设置这两个全局值*/void Process_Packet(unsigned char*buff){int I;int PID=GETPID(buff);/*获取当前Packet的PID*/if(PID==0x0000)/*0x0000表示是PAT*/{Process_PAT(buff+4);}else if(PID==Video_PID)/*和Video_PID相等,说明当前Packet是一个Video Packet*/{SaveToVideoBuffer(buff+4);/*保存到Video缓冲区*/}else if(PID==Audio_PID)/*和Audio_PID相等,说明当前Packet是一个Audio Packet*/{SaveToAudioBuffer(buff+4);/*保存到Audio缓冲区*/}else{for( i=0;i<64;i++){if(PID==pmt[i].pmt_pid){Process_PMT(buff+4);Break;}}}}以上伪代码可以实现基本的解复用:检测所有的频道,检测所有stream的PID,选择特定的节目进行播放.只要读取每个Packet的188字节的内容,然后每次都调用Process_Packet()即可实现简单的解复用.介绍到这里,我们就可以总结一下DVB搜台的原理了.机顶盒先调整高频头到一个固定的频率(如498MHZ),如果此频率有数字信号,则COFDM芯片(如MT352)会自动把TS流数据传送给MPEG-2 decoder. MPEG-2 decoder先进行数据的同步,也就是等待完整的Packet的到来.然后循环查找是否出现PID==0x0000的Packet,如果出现了,则马上进入分析PAT的处理,获取了所有的PMT的PID.接着循环查找是否出现PMT,如果发现了,则自动进入PMT分析,获取该频段所有的频道数据并保存.如果没有发现PAT或者没有发现PMT,说明该频段没有信号,进入下一个频率扫描.从以上描述可以看出,机顶盒搜索频率是随机发生的,要使每次机顶盒都能搜索到信号,则要求TS流每隔一段时间就发送一次PAT和PMT.事实上DVB传输系统就是这么做的.因此无论何时接入终端系统,系统都能马上搜索到节目并正确解复用实现播放.不仅仅如此,其他数据也都是交替传送的.比如第一个Packet可能是PAT,第二个Packet可能是PMT,而第三个Packet可能是Video 1,第四个Packet可能是Video 2,只要系统传输速度足够快(就是称之为"码率"的东东),实现实时播放是没有任何问题的.到这里虽然实现了解复用,但可以看出,使用的PID都是枯燥的数字,如果调台要用户自己输入数字那可是太麻烦了,而且还容易输入错误,操作非常不直观,即使做成一个菜单让用户选择也是非常的呆板.针对这个问题,DVB系统提出了一个SDT表格,该表格标志一个节目的名称,并且能和PMT中的PID联系起来,这样用户就可以通过直接选择节目名称来选择节目了.SDT, Service description section,服务描述段SDT可以提供的信息包括:(1) 该节目是否在播放中(2) 该节目是否被加密(3) 该节目的名称SDT定义如下:各字段定义如下:table_id:8bits的ID,可以是0x42,表示描述的是当前流的信息,也可以是0x46,表示是其他流的信息(EPG使用此参数)section_syntax_indicator:段语法标志,一般是'1'reserved_future_used:2bits保留未来使用reserved:1bit保留位,防止控制字冲突,一般是'0',也有可能是'1'section_length:12bits的段长度,单位是Bytes,从transport_stream_id开始,到CRC_32结束(包含)transport_stream_id:16bits当前描述的流IDreserved:2bits保留位version_number:5bits的版本号码,如果数据更新则此字段递增1current_next_indicator:当前未来标志,一般是'0',表示当前马上使用.original_netword_id:16bits的原始网络ID号reserved_future_use:8bits保留未来使用位接下来是N个节目信息的循环:service_id:16 bits的服务器ID,实际上就是PMT段中的program_number.reserved_future_used:6bits保留未来使用位EIT_schedule_flag:1bit的EIT信息,1表示当前流实现了该节目的EIT传送EIT_present_following_flag:1bits的EIT信息,1表示当前流实现了该节目的EIT传送running_status:3bits的运行状态信息:1-还未播放 2-几分钟后马上开始,3-被暂停播出,4-正在播放,其他---保留free_CA_mode:1bits的加密信息,'1'表示该节目被加密.紧接着的是描述符,一般是Service descriptor,分析此描述符可以获取servive_id指定的节目的节目名称.具体格式请参考EN300468中的Service descriptor部分.分析完毕,则节目名称和节目号码已经联系起来了.机顶盒程序就可以用这些节目名称代替PID让用户选择,从而实现比较友好的用户界面!下面参考一下<<Seekfor MPEG2 decoder>>中的界面和显示信息.上图是<<Seekfor MPEG2 decoder>>打开三个不同的码流文件(*.ts)形成的PID 信息和节目名称.用户可以通过切换节目名称的下拉列表框切换节目,也可以通过"视频流"和"音频流"下拉列表框切换Video和Audio!这些数据都是通过分析PAT,PMT和SDT得到的.。
MPEG-2传输流的码流分析
的研究 , D B MP G一 S码流 的错 误 指示 分 为 3 将 V / E 2T 个等级 :第 一等 级 是正 确解 码所 必需 的几 个参 数 ; 第 二等 级 是 达 到 同步后 连 续 工作 所 必 需 的参 数 和 需要 周 期 监 测 的参 数 ;第 三 等级 是 依 赖 于应 用 的几 个参
04 x 7开 始 的 8 i字段 的同步 头 ,其 后 是 几 个重 要 的 b t
标 志 , “ 输 错误 指 示 ” “ 效 负 载起 始 标 志 ” “ 如 传 、有 、 传
送 优 先 指 示 ” “ I P c e ie t e ) 、 “ 整 字 段 、PD( ak t d ni r ” 调 i f
维普资讯
数字电视
有线 电视 技术
一 、 、 _ I
:
_ j
l l
__ l
蠹 1传瓣 盼 2 i ! . i  ̄ ! l
i 蔓薯 篙
哆辑
张 佳 电影频道 节 目中心
摘 要 : 文 介 绍 MP G一 本 E 2传 输 流 的 语 法结 构 及 复 用 , 及 E R 9 以 T 2 0标 准 规 定 的传 输 码 流 3级 错 误 检 测 参数 , 时 同
码 输 出压缩后 的基 本码 流 E ,它 含有 解码 器所 必需 S
的 、 于 恢 复 原 始 视 音 频 的 信 息 。 本 码 流 E 分 解 打 用 基 S
l
Ad u o厂 i
!厂 : : ] : : : :I
r ■] - = Ad S uo E iP
P S
da ! 厂 : : a l 望 ] ! : t ! : :l
MPEG-2复用器PSI信息分析部分的FPGA实现
MPEG-2复用器PSI信息分析部分的FPGA实现复用器是数字电视前端平台的关键设备,它的主要功能是完成对输入多路传输流(Transport Stream,TS)的复用工作,它的性能稳定性直接影响前端平台的运行。
而复用器对传输流中节目特殊信息(Program Spe-cial Information,PSI)的分析处理是否完整全面,则直接影响到复用器其他功能部分的运行结果是否正确。
对PSI 信息的检测分析是复用器设计中首要的也是最重要的部分之一。
下文将对PSI 信息检测问题进行深入的分析探讨。
1 TS 流语法结构传输流以TS 包为单位,其中每个包的长度为188 B,这188 个字节大致可以分为:包头、调整字段和有效负载三个主要部分。
包头占4 个字节,如图1 所示。
同步字节:8 b,值为0x47,表示一个TS 包的开始。
传输错误指示:1b,当置为1 时,表明在相关的TS 包中至少有一个不可纠正的错误。
有效负载起始指示:1 b,在带有PSI 信息时,置1 表示TS 包含有PSI 部分的第一个字节并带有pointer field 字段,否则表示不含有PSI 的第一个字节。
传输优先级:1 b,置1 表明相关的包比其他具有相同PID 但此位没有置1 的TS 包有更高的优先级。
PID:13 b 字段,指示传输流有效负载的数据类型。
传输加扰控制:2b,用来指示TS 包有效负载的加扰方式。
自适应字段控制:2b,用来指示本TS 包首部是否跟有调整字段。
连续计数器:4b,随着每一个具有相同PID 的传输流包而增加,当它达到最大值后又恢复到0。
节目专用信息PSI 用来描述TS 流的组成结构。
它包括节目关联表(Program Association Table,PAT)、节目映射表(Program Map Table,PMT)、网络信息表(Network Information Table,NIT)和条件访问表(Conditional Access Table,CAT)。
MPEG-2传输流PSI信息合成和复用技术的实现
止其 它 数 据 的复用 ,而 向 T S流 插入 携 带 P I 息 的 S 信
T S包 。
(SI P ) 处理的原理和方法进行讨论 , 描述 了 P I S 信息合成和复用插入 T S流的具体步骤 , 以及 D B标准对 P I V S 的扩展。
关 键词 : E 2 T P / 复 用 MP G一 S SI SI
在 数 字 电视 业 务 中 , 了节ቤተ መጻሕፍቲ ባይዱ约 带 宽 资 源 , 往 把 为 往 多路不 同 的节 目复 用到 一个 频 道上 。 因此 要 收看其 中
密 时 , 须使 用 C T表 。它所 指 示 的 E 必 A MM 信 息和 节
目匹配 表 中可 能含 有 的条 件 描 述 子所 描 述 的授 权 控 制 信息 ( C 共 同给 出加密 密钥 的有关 信 息 , E M) 由解码
件 接收 表 ( A ) 网络信 息表 ( I 。 C T和 N T)
20 0 7年 第 2期( 总第 2 0 6期)
维普资讯
数字电视
端在 一 定 授权 下 进 行解 密 。C T表 的 PD值 固定 为 A I
OO x 001 。
有线 电视 技 术
以及 生成 的 T S流 的相关 信 息 。 每个 T S对象 的线 程轮 流获得 输 出端 的控 制权 , 向输 出端 发送 , r 数据 。 S包 携 带 PI 息的 T S 信 S包 也存 储在 这个 缓 冲 区 中 ,也对 应
复 用所 必需 的 MP G 2规格 化数 据 和私 有数 据 , 为 E 一 分 四个 表格 : 目关 联 表 (A 、 目映射 表 ( MT 、 节 P T) 节 P ) 条
C T 表 指 出 了一 个 或 多 个 携 带 授 权 管 理 信 息 A
数字电视MPEG-2码流解析及如何制作非标码流
数字电视MPEG-2码流解析一、方案背景随着数字电视的普及,数字码流非标的问题也越来越多的出现,这给数字电视的正常解码带来很大的困扰。
为了提高数字电视解码的可靠性,需要在测试方面建立一套非标的测试码流,来验证数字电视对异常情况的处理。
由于目前使用最广泛的数字码流仪为SFEBROADCASTTESTER,因此计划对现有的数字码流进行修改,再使用SFE加载播放来完成非标码流的模拟。
二、码流数据格式对于测试的数字码流格式,我们选择了MPEG-2TransportStream,简称TS流。
它是根据ITU-TRec.H.222.0|ISO/IEC13818-2和ISO/IEC13818-3协议而定义的一种数据流,其目的是为了在有可能发生严重错误的情况下进行一道或多道程序编码数据的传送和存储。
这种错误表现为比特值错误或分组丢失。
TS流由一道或多道节目组成,每道节目由一个或多个原始流和一些其他流复合在一起,包括视频流、音频流、节目特殊信息流(PSI)和其他数据包。
其中PSI表有4种类型:节目关联表(PAT)、节目映射表(PMT)、网络信息表和条件访问表。
PSI信息是整个解码过程中涉及到的最关键的信息。
下面给出TS流的数据结构示意图:由图可以看出,TS流是使用固定188个字节的TS包进行传输。
TS包则是由固定4字节的包头、可变长度的自适应区(可选)和包数据(净荷)构成,而TS包中的包数据(净荷)所传输的信息主要包括4种:(1) 视频、音频的PES包以及辅助数据。
(2) 描述单路节目信息的节目映射表(PMT)与描述多路节目服用信息的节目关联表(PAT)以及对CA系统所要求的条件访问表(CAT)(3) 各种业务信息(SI)表,包括强制性的网络信息表(NIT)、业务描述表(SDT)、节目段信息表(EIT)与时间和日期表(TDT),还保罗可选的业务组表(BAT)、运行状态表(RST)和时间偏移表(TOT)等。
(4) DVB数据广播信息,包括数据管道、异步数据报、同步、被同步数据流、多协议封装、循环数据、循环对象。
浅析数字电视传输流中PSI/SI信息构成和作用
浅析数字电视传输流中PSI/SI信息构成和作用张晓鹏【摘要】在我国,有线数字电视传输是采用欧洲的DVB-C标准。
这个标准中,明确规定了使用MPEG-2标准来压缩和传输数字电视信号和数据信息。
文章主要分析了在DVB标准下MPEG-2传输流中PSI/SI的构成和作用。
【期刊名称】《技术与市场》【年(卷),期】2013(000)009【总页数】1页(P86-86)【关键词】数字电视;PSI;SI;信息构成【作者】张晓鹏【作者单位】灵宝市豫灵镇文化服务中心,河南灵宝 472500【正文语种】中文1 MPEG-2的编码体系一般说来,MPEG-2的编码体系可分为三部分:1)视频编码和音频编码部分。
经视音频编码后,编码输出的为音视频的原始码流(ES)。
2)分组打包部分。
打包后,输出分组后的原始码流(PES),包的长度可变,视频一般一帧一个包,音频包的长度一般不超过64 kB。
3)打包和复用。
PES再经过节目流复用或者传输流复用,重新打包和复用形成两种不同的码流:节目流(PS)和传输流(TS)。
PS流适用于误码率低的信道,而TS流则适用于误码率较高的信道。
DVB-C标准采用TS流传送电视节目。
采用MPEG-2压缩的传输流是由连续的TS包构成,每一个TS包的长度固定为188个字节,其中包头为4个字节,其余的184个字节为有效载荷。
表下的数字是在包头中所占的比特数,在TS包中,包头的第一个字节用于同步,另三个字节用于业务的识别、加扰和控制,这里不在详述。
有效载荷部分的来源包括4部分:①音视频PES数据,这一部分占了TS流有效载荷的绝大部分。
②PSI/SI 信息。
③私有数据,用来传送其它的数据信息。
④空包,用来在复用时加入TS流,以调整TS流的码率。
2 PSI信息的结构和作用在复用时,可将PSI信息通过复用器插入到TS流中,同时标识时应选用特定的PID(包识别符)。
通常,PSI信息主要有以下5个表构成:1)节目关联表(PAT)。
MPEG-2传输流中I-帧的统计分析
系统编码可有两种方法 : 传输流和节 目 , 流 分别适用于
不 同的应用 。系 统框 图如 图 1 所示 。
数字视频和音频数据分别经过视频编码器和音频
作者简介: 周 兵(9 2 ) 男, 究生, 18 - , 研 主要研 究方向为图像传输 与处理 , E—m i zobnn@ 13 cr; a :hu i j 6 .o 张兆 东( 9 1 ) 男, l g n 16 - , 副
内容 , 要求视频服务器提供一种快进、 快退的功能。对
MP G一2码 流 中的 I E 一帧进 行 统计 分 析 , 以更 好地 可
应用 I 一帧 。
1 MP G 一 E 2标 准简 介
M E 2系统是将视频、 P G一 音频及其他数据基本流 组合成 1 个或多个适于存储或传输 的数据流的规范。
( c ne& T cn l yU i r t o L J n s aj g 10 7, hn ) Si c e eh o g nv s y f A, i guN ni 0 0 C ia o e i P a n2
Ab t a t I—f me i a ma e tp ih i d f e n MP G.I i u e n ma y o c so s u h a l — sr c : r s n i g e wh c s e n d i E a y i t s s d i n c a in ,s c smu t i me i y t m a e n v d o s a c i g,p a i g vd o i p ca a . I h s p p r t o s gv n t das s e b sd o ie e rhn ly n i e n s e i lw y n t i a e ,a me h d i ie o c u tt e d sr u in o —f me i E 一2 T te m.T e e t n t r e s g n sd g t V p o r ms o n h it b t fI r n MP G i o a Ss a r h n a ts o h e e me t i i T r g a l a
MPEG_2(PSI&SI)
MPEG2的预测编码
预测编码概述:预测编码是数字电视信号信源编码的主要方式。
输入信号 X 编码器 信道编码
X
预测器
在预测编码系统中不是把信号X传送出去,而是把X与预测值X的差值传送出去。 预测值X是用于X空间上和时间上相关性强的若干数据的线性组合产生的。(就是 预测算法) 和X空间上相关:帧内预测 和X时间上相关:帧间预测
内图像相邻像素间及相邻行间的空间相关性(Intra)和相邻帧间运动图像的时间相
关性(Inter),采用压缩编码技术,将那些对人眼视觉图像和人耳听觉声音不太重要 的东西及冗余成分抛弃,从而缩减了存储、传输和处理的数据量,提高了频谱资源 利用率 。
(3)MPEG-2系统是将视频、音频及其它数据基本流组合成一个或多个适宜于存
MPEG2的传送
MPEG2的TS流中净荷所传送的信息主要包括4种类型: (1)视频、音频的PES包以及辅助数据。 (2)描述单路节目信息的节目映射表(PMT)与描述多路节目复用信息的节目 关联表(PAT)以及对CA系统所要求的条件访问表(CAT) (3)各种业务信息表(SI),包括网络信息表(NIT)、业务描述表(SDT)节 目段信息表(EIT)时间日期表(TDT),还有可选的业务组表(BAT)、运行 状态表(RST)和时间偏移表(TOT)等。 (4)DVB数据广播信息,包括数据管道、异步数据报、同步、被同步数据流、 多协议封装、循环数据、循环对象。
数字电视专用信息PSI与业务信息SI
PSI的概念: (Program Specific Information)在MPEG-2中,专门定义了PSI节目信息(由4个 表组成)。其作用是自动设置和引导接收机,在TS流中找到需要的码流进行解 码。PSI信息通过复用器 插入到TS流中,并用特定的PID(包标识符)进行标识 SI的概念: (Sevice Information)DVB对MPEG-2的PSI进行了扩充,定义了许多辅助信息, 在PSI四个表的基础上再增加了九个表,形成业务信息 SI 。业务信息(SI)是对 整个系统所有码流的描述。 几类重要的表
数字电视PSI SI信息及其功能
浅谈数字电视PSI/SI信息及其功能在DVB接收机中通常都使用电子节目指南(EPG)来达到快速查找节目的目的,而生成EPG的数据又来源于DVB码流中的有业务信息SI 信息。
在数字电视中,所有视频、音频、文字、图片等经数字化处理后都变成了数据,并按照MPEG-2的标准打包,形成固定长度(188个字节)的传送包,然后将这些数据包进行复用,形成传送码流(TS),通常一个频道对应一个TS流,一个频道的TS流由多个节目及业务组成。
在TS流中如果没有引导信息,数字电视的终端设备将无法找到需要的码流,所以在MPEG-2中,专门定义了PSI信息,其作用是自动设置和引导接收机进行解码。
PSI信息在复用时通过复用器插入到TS流中,并用特定的PID(包标识符)进行标识。
在MPEG-2标准中定义的节目信息PSI,是对单一码流的描述,由于系统通常存在多个码流,为了使使用者能在多码流中快速地找出自己需要的业务,在DVB对MPEG-2的PSI进行了扩充,在PSI四个表的基础上再增加了九个表,形成SI。
SI是对整个系统所有码流的描述,描述系统传输内容、广播数据流的编排和时间表等的数据,它包括PSI信息。
一、PSI信息PSI由节目关联表(PAT)、条件接收表(CAT)、节目映射表(PMT)和网络信息表(NIT)组成,这些表插入到TS中传输。
PSI指定了如何从一个携带多个节目的传送流中正确找到特定的节目,当接收机要接收某一个指定节目时,它首先从节目关联表中取得这个节目的节目映射表的PID值,然后从TS中找出与此PID值相对应的节目映射表,从这个节目映射表中获得构成这个节目的基本码流的PID值,根据这个PID值滤出相应的视频、音频和数据等基本码流,解码后复原为原始信号,删除含有其余PID的传送包1.PAT:节目关联表要保证TS流能正常接收,在该流中至少有一个完整有效的PAT。
节目关联表PAT包括该TS流中的所有节目映射表即每个节目的PMT的PID,传输流ID等。
浅谈MPEG2传输流的结构和分析
MPEG-2传输流的码流分析0 引言目前,我国数字电视的信道传输的三种主要传输方式都有了统一明确的国家标准。
其主要差别是信道编码、调制方法,但视频和音频信源处理和系统层复用都是以MPEG-2为基础的编码方案。
MPEG-2标准自制定以来,已经成为数字电视领域中系统层的普遍标准。
能够熟悉MPEG-2传输流码流语法结构,并运用分析工具对系统进行常规的检测分析,为快速确认系统故障,从而排除故障保证系统正常运行,对于广大工程技术人员十分必要。
本文介绍MPEG-2传输流的语法结构及复用,及ETR290标准规定的传输码流3级错误检测参数,同时结合码流分析软件对MPEG-2传输流的语法结构作一离线分析。
1.MPEG-2传输流的形成及复用:MPEG-2标准定义了一个节目中的各部分(如视频、音频和控制数据等)的格式,它也定义了各部分如何形成传输码流,即TS流,这一过程称为复用。
MPEG-2规定了两种复用形式,即MPEG-2节目流(PS)和MPEG传输流(TS)。
V ideo ESAudio ES图1 MPEG-2 系统层编码复用示意图如图1 所示:原始的视音频数据流经编码器编码输出压缩后的基本码流ES,它含有解码器所必需的、用于恢复原始视音频的信息。
基本码流ES分解打包成PES数据包,每个PES包在复用的过程中被分成固定长度的传输流包(TS Packet)。
传输流被设计用于在有噪声发生的存储或传输的环境中,如在DVB广播的传输链路中。
2 MPEG -2 传输流的语法结构:在进行MPEG-2传输流的码流分析之前,我们有必要了解MPEG-2标准中规定的传输流的语法结构。
2.1 MPEG-2传输流的包结构每个传输流中包含一系列固定长度为188 Bytes的传输流包(简称为TS包),每个TS包由4 Bytes长的包头和其后的184 Bytes 的载荷组成,如图2所示。
在4 Bytes包头中含有以下重要信息:以固定值0x47开始的8bit字段的同步头,其后是几个重要的标志,如“传输错误指示”、“有效负载起始标志”、“传送优先指示”、“PID(Packet identif i er)”、“调整字段控制”等。
PSI信息
【EPG各种表含义】1、PSI信息传送流中有关PID的信息及各PID之间的关系包含在节目特定信息(Program Specific Information,PSI)中,MPEG-2解码器将使用PSI信息来自动设置解码所需的各种参数。
PSI信息使用4个表来定义码流的结构:PAT、PMT、NIT、CAT。
(1)、PAT(节目关联表Program Association Table):机顶盒解复用工作总是通过寻找PAT表开始。
PAT给出了构成传送流中各个节目业务的PMT的PID,可根据节目PID找到相应的PMT包;同时也给出了NIT的PID号。
(2)、PMT(节目映射表Program Map Table):PMT表指出了组成节目业务(Service)的各个码流的PID号,并对各路码流进行描述。
PMT表提供程序号码与组成它们的原始流之间的映射,这种映射表是一个传送流中所有程序定义的集合。
此表将在分组中传送,其PID值是私自选择的。
如果需要的话,可以使用多个PID值。
(3)、NIT(网络信息表Network Information Table):NIT表内容是私有的,目的是提供有关物理网络的信息,其中包含运营商的网络ID和网络名称。
需要特别注意的是,NIT Version如果发生变动,则会引起全网机顶盒的自动搜台。
(4)、CAT(条件访问表Conditional Access Table):CAT表提供系统中条件接入的信息,指定CA系统与它们相应的权限管理信息EMM(Entitlement Management Messages)信息之间的联系,指定EMM的PID,以及其它相关的参数。
2、SI信息MPEG-2在PSI中提供了不少有关节目组成和相互关系的信息,从而使得在接收端可以正确地对TS流进行解复用。
但是这些信息在实际使用时仍然显得不够,为此在DVB标准中采用SI信息对PSI信息进行了进一步的扩展。
PSI中的信息基本上都是与当前码流相关,即它们所涉及的内容都与当前码流中的部分信息相关;而SI信息可以包括不在当前码流中的一些服务和事件,允许用户进行更多的选择和了解更多的其他服务。
MPEG-2传输流及PSI信息的解析
MPEG-2传输流及其PSI信息的解析在数字电视业务中,为了节约带宽资源,常常将不同的节目复用到一个信道上,并且,为了在容易发生错误的信道上进行可靠的传输,复用后的数据流称为传输流;终端在收到其中的某套节目时,必须从码流中对该节目进行提取,即在解码端必须对传输流进行解复用。
如果在传输流中不包含引导信息,由于传输流存在多套节目,数字电视终端设备将无法正确找到需要解码的信息,从而不能正确解码。
针对这一问题,MPEG2专门定义了节目专用信息PSI(Program Specific Information),它的作用是自动设置和引导终端设备进行解码。
这就需要在前端向传输流TS(Transport Stream)中进行PSI信息的复用,并用特定的包标识符(PID)进行标识。
本文就传输流TS的组成及其PSI信息进行了解析,重点对PSI信息的组成及功能进行了说明,并对终端如何利用PSI信息进行自动解码进行了阐述。
一、MPEG2传输流结构在MPEG2 中,系统编码有两种方法:程序流和传输流,其分别适用于不同的应用环境。
程序流是针对错误相对较少的环境内设计的,适用于像交互式多媒体一些涉及软件处理系统信息的应用,程序流分组是可变的而且相对较长。
MPEG2的传输流是相对于程序流而言,其主要是针对那些容易发生错误的环境而设计的,如在容易在丢失或高噪音的媒体中存储和传送,为便于处理和信道编码,传输流的分组长度一般是固定的,为188字节。
其结构如下图1所示。
图1 传输流结构如图1所示,在MPEG2的传输流中,可以包含多个节目,而每个节目又是由多个基本码流(如视频、音频、数据等)组成,基本码流、PSI信息及其他控制数据都被打成固定长度的包分组,这些数据流分组的区分都是通过PID (packet ID)来区分的。
传输流的实例可如图2表示。
TS流实例图2 传输流实例图中,PAT,PMT,NIT,CAT为PSI信息,下面将进行说明,而VIDEO,AUDIO则为视、音频传输流,ECM(Entitlement Control Message)、EMM (Entitlement Management Massage)为授权信息,用于对视音频数据的解扰。
MPEG-2传输流复用技术
二、MPEG-2传输流结构
2)分组有效负载:
分组有效负载带有原始流分组(PES)数据,或者带有程序特殊信 息表(PSI)或服务信息(SI),或者带有私有数据。 ▲ PES分组:PES分组插在传送流分组中,每个PES分组首部的第一个字 节即为传送流分组有效负载的第一个字节,也就是说,一个PES包的包 头必须包含在一个新的TS包中,同时PES包数据要充满TS传送包的有效 负荷区域,若PES包数据的结尾无法与TS包的结尾对齐,则需要在TS的 自适应区域中插入相应数量的填充字节,使得两者的结尾对齐。 ▲节目特殊信息(PSI)表:可被分成一段或多段置于传送流分组的有效 负荷部分中,分段长度可变。一个分段的最大字节数为1K,分段的开始 由传送流分组有效负载中的指针字段(pointer-field)指示。 ▲私用数据:在传送流分组中的运载方法是私自定义的,它可以按用于 携带PSI表的方法构造,一个私有分段的最大值结数为4K。
二、MPEG-2传输流结构
1、 简述:
MPEG-2传送流结构是为系统复用和传输而定义,属于系统传输 层。通过与MPEG-2系统的其他信息(时序模型、节目特殊信息PSI、 及服务信息SI)的共同作用,来实现在恶劣的信道环境中灵活可靠 的复用与解复用。
2、传送流的系统分层
▲ PES分组层----相应于特定数据流操作,可变长度结构 ▲ TS分组层----相应于多路复用宽操作,188字节固定长度结构
CAT表(PID=1) 视频 音频1 音频2 数据 16 节目2 视频 16 81 82 88 33 节目2 PMT 7 EMM
PID值: TS流:
48 节目1 音频1
16 节目2 视频
22 节目1 PMT
四、节目特殊信息PSI和服务信息SI
MPEG-2传输流PSI信息合成和复用技术的实现
MPEG-2传输流PSI信息合成和复用技术的实现
任玲;杨杰;朱佩江
【期刊名称】《有线电视技术》
【年(卷),期】2007(14)2
【摘要】本文从MPEG-2标准的角度,就数字电视信源端将节目流(PS)转换为传输流环节(TS)对节目专用信息(PSI)处理的原理和方法进行讨论,描述了PSI信息合成和复用插入TS流的具体步骤,以及DVB标准对PSI的扩展.
【总页数】3页(P37-39)
【作者】任玲;杨杰;朱佩江
【作者单位】中国传媒大学;广播科学研究院;广播科学研究院
【正文语种】中文
【中图分类】TN94
【相关文献】
1.MPEG-2传输流多路复用的软件设计与实现 [J], 侯旭柯;肖沙里;张流强;王玺;赵明;王洪建
2.基于软件实现的MPEG-2传输流复用器研究 [J], 张新安
3.MPEG-2复用器PSI信息分析部分的FPGA实现 [J], 王玉欣;杨秀芝
4.MPEG-2传输流解复用的软件实现 [J], 黄鲲鹏;刘丹;胡蓉
5.基于ARMADA1500 MPEG-2传输流解复用系统的设计与实现 [J], 江伟钊;杨华;谢冰森
因版权原因,仅展示原文概要,查看原文内容请购买。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
关于MPEG-2传送流的PSI信息的讨论2002-6-25 10:19:08 前锋数字公司岳翔四川省有线广播电视台刘晓阅读249次MPEG-2是运动图像专家组的缩写(Moving Picture Expert Group)成立于1998年以建立活动图像及相应音频的编码标准。
实际上,MPEG是一个标准系列。
有MPEG1、MPEG2、M PEG4和MPEG7。
MPEG-2目前分为9个部分,1990年成立了ATM视频编码专家组与MPEG一起开发适用于ATM传输的视频编码联合标准。
两个工作组主要在9个部分的ISO/IEC 13818国际标准中第一和第二两个部分进行合作,即:MPEG-2的ITU-T Rec﹒H﹒220,ISO/IEC DIS 13818-1系统和ITU-T Rec﹒H﹒262,ISO/IEC DIS 13818-2视频。
其他部分在不同的阶段完成,有一个已经取消。
ISO/IEC 13818-3是音频;ISO/IEC DIS 13818-4符合测试;ISO/IEC DTR 13818-5软件模拟;ISO/IEC DIS 13818-6 DSM-CC扩展的完全软件实现;ISO/IEC DIS 13818-9系统解码的实时接口扩展。
第一部分解决多个视频、音频和数据基本码流的组合问题。
产生两种码流:节目码流和传送码流,用于不同的相应环境。
节目码流类似于MPEG-1系统复用,是由打包的基本码流组合而成,用于误码相对较小的环境。
节目码流的包可变也相对较长。
传送包将时基相互独立的打包的基本码流组合成单一的码流。
适用于误码相对较多的环境,传送包长188拜特。
在第二部分视频中,按清晰度将图像分为4个等级,按使用的工具和方法不同分为5种处理类型,普通清晰度数字电视使用主类和主级MP@ML。
用于演播室编辑用的4:2:2P@ML已通过,合并于视频标准中。
目前还在开发的还有多重观看点类(Multiview Profile:MVP),允许使用现有MPEG-2视频编码工具将两个相差小角度的摄像机摄取的同一场景进行有效的编码。
第三部分音频与MPEG-1音频标准反向兼容,并支持多通道音频编码。
第四、五部分与MPEG-1第四、五部分对应。
第六部分是规定数字存储媒体指令和控制(Digital Storage Media Command and Control:DSM-CC)协议,用以支持单独或网络环境下的DSM-CC模式,将码流从服务器传送给用户。
第七部分规定不与MPEG-1音频标准反向兼容的多通道音频编码。
第八部分原计划用于10比特视频抽样的编码,但因有兴趣的厂家不多,已停止。
第九部分规定了传送码流的实时接口(Real Time Interface:RTI)。
第十部分将是DSM-CC的符合测试标准。
MPEG-2中的传送码流是根据ITU-T Rec﹒H﹒220,ISO/IEC DIS 13818-2和ISO/IEC 13 818-3协议定义的一种数据流,其目的是为了在有可能发生严重错误的环境下进行一道或多道程序的编码数据的传送和存储。
这种错误表现为比特值错误或分组丢失。
传送流的速率可以是变化的或固定不变的。
在任何情况下组成的原始流可以是变化的或固定不变,在这些情况下的语法和语义限制是相同的。
传送流速率由程序参考时钟(PCR)字段的位置和数值决定,通常对于每个程序都有自己的PCR字段。
传送流中有关PID的信息及各PID之间的关系包含在程序专用信息中(Program Specific Inf ormation:PSI)。
PSI信息可以动态变化,在PSI部分包含有版本号(Version number)和字前/下一个指示(Current next indicator),指示解码在规定时刻转向下一版本信息。
MPEG-2解码器将使用PSI信息来自动设置解码所需的各种参数。
PSI信息使用4个表来定义码流的结构:﹒程序相关表(PAT)﹒程序映射表(PMT)﹒网络信息表(NIT)﹒条件访问表(CAT)一.程序相关表(Program Association Table)程序相关表的PID是0,是PSI信息的根,要查找信息时首先必须从程序相关表开始。
表中列出了传送码流中所有节目的PID所指出的相应的程序映射表(Program Map Table:PMT),可根据节目PID找到相应的PMT包。
PAT包头:Sync byte:固定8bit域,值为0x47。
Transport error indicator:1bit标志位。
值为1时,TS包中有错。
Payload unit start indicator:1bit标志位。
携带PES包的TS,有效负载从PES包的第一个by te开始;携带PSI数据的TS,有效负载的第一个byte携带指针。
以上两种情况均为该标志位置1。
Transport priority:1bit状态指示位。
当置1时,该包优先级高于TS流中其余相同PID值PES 包中该位置0。
PID:13bit域,指出存储在包负载中数据类型。
0x0为PAT保留,0x1为CAT保留,0x2~0xF 为保留字,0x1FFF为空包预留。
Transport scrambling control:2bit状态指示位,指出TS包负载的加扰模式。
当提供TS包头和调整域时,不加扰。
Adaptation field control:2bit状态指示位,指出该TS流包头后是否跟随由调整域与/或有效负载。
当置为0x1时,无调整域,仅为有效负载。
Continuity counter:4bit域,每个TS流中的包有相同PID时,不断增加。
当连续计数到最大值后,变为零;当adaptation field control为0x00或0x10,该计数器不增加。
PAT表:Table id:8bit域,对于PAT表,设置为0。
Section syntax indicator:1bit域,对于PAT表,设置为1。
Zero:1bit域,设置为0。
Reserved:2bit域,预留为11。
Section length:12bit域,首先两位bit置为00,它指示段的byte数,由段长度域开始,包含C RC。
Transport stream id:16bit域,作为一个标签指出在网络中与其余复用流的区别标志,该值由用户定义。
Reserved:2bit域,预留为11。
Version number:5bit域,指出所有PAT的版本号。
一旦PAT表有所变化,版本号加1。
当增加为31时,它回到0。
Current next indicator:1bit指示位。
当该位置1,表示设置的PAT当前可以应用;当该位置0,表示该设置的表没有应用,下一个表变为有效。
Section number:8bit域,给出这个段的数目。
在PAT表中的第一个段的section number为0 0,在PAT表中每一个段将加1。
Last section number:8bit域,指出最后一个段的数目。
在整个PAT表中即段的最大数目值。
Program number:16bit域。
它指出节目对于哪一个program map PID是可应用的。
如果置为0x0000,后跟的PID为网络PID;对于其它情况,这个域的值由用户定义。
Reserved:3bit域,预留为111。
Network PID:13bit域,指出含有NIT表的TS包的PID值。
Network PID域的值由用户定义。
Network PID的提供可选。
Program map PID:13bit域,指定TS包中的PID值。
该TS包含有应用节目的program map section,该段由节目号指定。
一个节目号有一个Program map PID的定义。
该域的值由用户定义。
CRC:32bit域,用来证实数据正确性的循环冗余校验码。
二.程序映射表(Program Map Table)程序映射表提供程序号码与组成它们的原始流之间的映射,这种映射表是一个传送流中所有程序定义的集合。
此表将在分组中传送,其PID值是私自选择的。
如果需要的话,可以使用多个PI D值。
在被插入到传送流分组之前,此表将按一定语法分成一个或多个分段。
PMT包头:Sync byte:固定8bit域,值为0x47。
Transport error indicator:1bit标志位。
值为1时,TS包中有错。
Payload unit start indicator:1bit标志位。
携带PES包的TS,有效负载从PES包的第一个by te开始;携带PSI数据的TS,有效负载的第一个byte携带指针。
以上两种情况均为该标志位置1。
Transport priority:1bit状态指示位。
当置1时,该包优先级高于TS流中其余相同PID值PES 包中该位置0。
PID:13bit域,指出存储在包负载中数据类型。
0x0为PAT保留,0x1为CAT保留,0x2~0xF为保留字,0x1FFF为空包预留。
该处PID值由用户定义。
该处PID值可被定义为network PID、program map PID、elementary PID或其它用处。
Transport scrambling control:2bit状态指示位,指出TS包负载的加扰模式。
当提供TS包头和调整域时,不加扰。
Adaptation field control:2bit状态指示位,指出该TS流包头后是否跟随由调整域与/或有效负载。
当置为0x1时,无调整域,仅为有效负载。
Continuity counter:4bit域,每个TS流中的包有相同PID时,不断增加。
当连续计数到最大值后,变为零;当adaptation field control为0x00或0x10,该计数器不增加。
PMT表:Table id:8bit域,在TS流中Program map section将置为0x02。
Section syntax indicator:1bit域,对于PMT表,设置为1。
Zero:1bit域,设置为0。
Reserved:2bit域,预留为11(0x3)。
Section length:12bit域,首先两位bit置为00,它指示段的byte数,由段长度域开始,包含C RC。
Program number:16bit域,它指出该节目对应于可应用的Program map PID。
一个节目定义仅含一个TS流的Program map section。
这意味着一个节目的定义不超过1016byte。
Reserved:2bit域,预留为11(0x3)。
Version number:5bit域,指出TS流中Program map section的版本号。