欢迎来到天天文库
浏览记录
ID:39548556
大小:1.79 MB
页数:28页
时间:2019-07-06
《dvb over ip详解》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、dvboverip详解TS系统解码11TS流的内容21.1ES21.2PES21.3TS42TS流的解码过程(只考虑本地文件,解码只涉及到系统层打包的解码,不涉及到编码的解码)52.1PAT解码:52.2PMT解码62.3音视频解码63TS流解码73.1总用例图73.2各解码类的UML图83.2.1解码主类83.2.2事件管理类93.2.3各类包解析的关系图103.2.4输入输出类113.2.5解析PAT、PMT、私有数据等123.2.6解析TS包133.2.7解析PES包143.2.8PCR时钟类
2、153.2.9CRC校验类153.3解码流程图163.3.1TS包解析流程图163.3.2Section解码流程图173.3.3PES解码流程图184TS流合成(编码)194.1各编码类的UML图194.1.1编码主类194.1.2合成各类之间的关系204.2编码主要流程214.2.1TS编码流程图214.2.2负载(pes、section)打包过程22附表一:23附表二:25TS流的内容TS->PES->ES->NALESAnelementarystream(ES)isdefinedbyMPEGc
3、ommunicationprotocolisusuallytheoutputofanaudioorvideoencoder.PESallowsanElementarystreamtobedividedintopackets.图一:PES结构图PES结构各字段的具体含义见附表一。由图一可见,1个PES包是由包头、ES特有信息和包数据3个部分组成。由于包头和ES特有信息二者可合成1个数据头,所以可认为1个PES包是由数据头和包数据(有效载荷)两个部分组成的。包头由起始码前缀、数据流识别及PES包长信息3
4、部分构成。包起始码前缀是用23个连续“0”和1个“1”构成的,用于表示有用信息种类的数据流识别,是1个8bit的整数。由二者合成1个专用的包起始码,可用于识别数据包所属数据流(视频,音频,或其它)的性质及序号。例如:比特序110×××××是号码为××××的MPEG-2音频数据流;比特序1110××××是号码为××××的MPEG-2视频数据流。PES包长用于包长识别,表明在此字段后的字节数。如,PES包长识别为2B,即2×8=16bit字宽,包总长为216-1=65535B,分给数据头9B(包头6B+
5、ES特有信息3B),可变长度的包数据最大容量为65526B。尽管PES包最大长度可达(216-1)=65535B(Byte),但在通常的情况下是组成ES的若干个AU中的由头部和编码数据两部分组成的1个AU长度。1个AU相当于编码的1幅视频图像或1个音频帧,参见图一右上角从ES到PES的示意图。也可以说,每个AU实际上是编码数据流的显示单元,即相当于解码的1幅视频图像或1个音频帧的取样。ES特有信息是由PES包头识别标志、PES包头长信息、信息区和用于调整信息区可变包长的填充字节4部分组成的PES包控
6、制信息。其中,PES包头识别标志由12个部分组成:PES加扰控制信息、PES优先级别指示、数据适配定位指示符、有否版权指示、原版或拷贝指示、有否显示时间标记(PTS-PresentationTimeStamp)/解码时间标记(DTS-DecodeTimeStamp)标志、PES包头有否基本流时钟基准(ESCR-ElementaryStreamClockReference)信息标志、PES包头有否基本流速率信息标志、有否数字存储媒体(DSM)特技方式信息标志、有否附加的拷贝信息标志、PES包头有否循环
7、冗余校验(CRC-CyclicRedundancyCheck)信息标志、有否PES扩展标志。有扩展标志,表明还存在其它信息。如,在有传输误码时,通过数据包计数器,使接收端能以准确的数据恢复数据流,或借助计数器状态,识别出传输时是否有数据包丢失。其中,有否PTS/DTS标志,是解决视音频同步显示、防止解码器输入缓存器上溢或下溢的关键所在。因为,PTS表明显示单元出现在系统目标解码器(STD-SystemTargetDecoder)的时间,DTS表明将存取单元全部字节从STD的ES解码缓存器移走的时刻。
8、视频编码图像帧次序为I1P4B2B3P7B5B6I10B8B9的ES,加入PTS/DTS后,打包成一个个视频PES包。每个PES包都有一个包头,用于定义PES内的数据内容,提供定时资料。每个I、P、B帧的包头都有一个PTS和DTS,但PTS与DTS对B帧都是一样的,无须标出B帧的DTS。对I帧和P帧,显示前一定要存储于视频解码器的重新排序缓存器中,经过延迟(重新排序)后再显示,一定要分别标明PTS和DTS。例如,解码器输入的图像帧次序为I1P4B2B3P7B5B6I1
此文档下载收益归作者所有