资源描述:
《机顶盒软件技术培训-Demux.ppt》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库。
1、DemuxIntroductionshine.wOverviewMultiplexingDefinitionsPESStructureTSStructureTSDemuxProcedureSection(introduceinPSI&SI)PSI&SI(introduceinPSI&SI)Q&AMultiplexing视频编码器1音频编码器1视频ES视频音频数据编码器打包器数据PS复用打包器系统时钟1音频ES视频PES音频PES节目时钟基准节目流PS无误码媒介视频编码器n音频编码器n视频ES视频音频打包器TS复用打包器系统时
2、钟n音频ES视频PES音频PES节目时钟基准传输流TS有误码媒介PS生成器PSI/SI节目1节目n……数据编码器数据DefinitionsMultiplexing将编码后的视频、音频以及数据的基本码流组合成一个或多个适合于存储和传送的码流节目复用:将具有共同时间基准的多个ES流复合成单路节目的TS流。复用时需加入PMT,用以指明各个ES流的位置(PID)传输复用:将多路节目的TS流复合成一路总的TS流。其中,各个TS流可以有独立的时间基准。复用时需加入PAT,用以指明各路节目的PMT在总的TS流中的位置(PID)ES(Ele
3、mentStream)组成数字电视的主要元素(视频、音频、数据等)按照相应标准,经过信源编码或其他处理后所形成的有格式的数据流PES(PacketizedElementStream)ES按一定的格式打包,构成具有某种格式的基本码流主要参数:流类型、包长度、PTS、DTS、加扰控制、版权信息等Defines(2)PS(ProgramStream)由具有公共时间基准的一个或多个视频/音频PES复用而成的单一码流包的长度可变一般用于误码率较小的演播室和存储媒介等场合TS(TransportStream)由具有一个或多个独立时间基准
4、的一路或多路节目的多个视频/音频PES复用而成的单一码流包的长度固定,188字节为易发生误码的传输信道环境和有损存储媒介设计主要参数:同步、传输错误指示、PID、连续计数、加扰控制、PCR等PESStructure24816168可变长可变长PTSDTSESCRES码率包头PES包SC前缀ES流IDPES包长度PES头标志PES头长度PES头可选字段PES净荷PESStructure(2)PES包SC前缀:packetstartcodeprefix,用于同步,0x000001ES流ID:StreamID,说明该PES包中所携
5、带的ES流的性质PES包长度:PESpacketlength,说明PES包内的字节数PES头标志:PESHeaderFlags,加扰控制、优先级、版权、原版/拷贝等信息PES头长度:PESHeaderLength,PES头可选字段占有的总字节数PES头可选字段:PESHeaderOptionalFields,PTS、DTS、ESCR、ES流码率等信息PES净荷:PESPacketDataBlock,视频、音频、数据ES流TSStructure188字节包头净荷包头净荷…包头净荷适应字段81113包同步误码指示开始指示传送优先
6、级PID加扰控制适应字段控制连续性计数器1224可变长可选字段8115适应字段长度不连续性指示随机进入指示ES优先级指示5个标志填充字节14848PCR拼接点倒计时传送私有数据8OPCR适应字段扩展TSStructure(2)包同步:SyncByte,8bits,TS包的标志符,恒值0x47误码指示:TransportErrorIndicator,1bit,1表示至少有一个不可纠正的错误位开始指示:PayloadUnitStartIndicator,1bit,1表示TS包的有效负荷以PES或PSI的第一个字节开始传送优先级:
7、TransportPriority,1bit,1表示具有相同PID但本位为0有更高优先级PID:PacketIdentifier,13bits,标示包类型加扰控制:TransportScramblingControl,2bits,00表示未加扰,其它值自定义适应字段控制:AdaptationFieldControl,2bits,01表示没有适配区域,10表示没有有效负荷,11表示适配区域后是有效负荷连续性计数器:ContinuityCounter,4bits,对有相同PID的TS包计数,达到最大值后又回复到0,适应字段控制为
8、00或10时不计数TSStructure(3)思考:我们在获取TS包时如何判断包头?先找到一个0x47,然后向后读188B数据,看看是否又碰到0x47,如果有三个0x47间隔都是188B,那么第一个就是包头TSDemuxProcedure找到码流中PID=0的TS包,从中找到PAT表在PA