[图文]MPEG-2压缩编码技术原理应用(三)

来源:百度文库 编辑:神马文学网 时间:2024/04/20 13:39:00
4.系统的复用
多个信号在同1个信道传输而不相互干扰,称为多路复用。如果将第一层的多个多路复用器先分别进行单节目传输复用,而后再进行第二层的多节目传输复用,就形成了双层复用。图8是系统双层复用原理图。由图可见,编码器不仅有视频编码器和音频编码器,还有系统编码器。第一层的每个多路单节目传输复用器输入信号有:ITU -R.601标准数字视频,如视频帧顺序为 I1B2B3 P4B5B6 P7B8B9 I10;AES/EBU数字音频数据;节目专用信息PSI及系统时钟STC 1-N等控制信号。其中视频编码器、音频编码器和数据提供给系统编码器的是基本流ES,视频ES的帧顺序为I1P4B2B3P7B5B6I10B8B9。经过系统编码器加入PTS及DTS,并分别打包成视频PES、音频PES,数据本身提供的就是PES。PSI插入数据流,数据加密将有关的调用权、编码密钥通过条件收视表插入MPEG-2 TS ,并将传输复用器从STC导出的PCR插入相应区段。这些视频PES、音频PES、数据PES及PSI,经过加入PID及PCR的传输复用器后,将输入基本流ES分割成传输包片段,并为每个片段配备1个数据头(Header),就形成了一系列的TS包。然后,通过各个不同性质的数据流的数据包交织后,输出MPEG-2 TS,其包含相应传输系统解码器所需要的所有数据。这样,从第一层的N个单节目复用器输出N股MPEG-2 TS,通过各自的传输链路输入第二层多路多节目传输复用器。从N路MPEG-2 TS中提取出N个PCR,从而再生出STC 1-N,最后产生出N个第二层多路多节目传输复用器用的新PCR。多节目传输复用器的任务是在分析的基础上,对多套节目复用合成,对数据包时标更新。因为,MPEG只允许1个TS只能有1张节目源结合表PAT,多节目传输复用器需要对PSI表进行分析,以便建立对新数据流适用的PAT,修正有关数据包中的时间标志,完成时标更新。经过第二层多节目传输复用器复用后,输出MPEG-2 TS,可以继续通过传输链路传输到解复用器,也可以采用误码保护编码、信道编码、调制技术后,通过卫星、有线电视、地面无线电视传输。例如,将第二层多节目传输复用的MPEG-2 TS,经过QPSK信道调制上卫星,地面用户通过数字电视接收机的QPSK解调器、解复用器、解码器直接接收;有线电视台前端将卫星下行信号先后经过解调器、解复用器、再复用器、QAM电缆调制器后,馈送至有线电视网,用户数字电视接收机通过QAM电缆解调器、解复用器、解码器接收;地面无线电视台将接收的卫星信号先后经过解调器、解复用器、再复用器、COFDM电缆调制器后,馈送至地面发射台发射,用户可通过数字电视接收机的COFDM解调器、解复用器、解码器接收。由上述可明白:

1)数据流的分割
将1个数据流逐段分割成多个数据包,便利于不同数据流的数据包交织。
2)节目最小组合
1个电视节目是由多个不同性质的数据流的ES组成的,1个电视节目的最小组合为1个视频流,1个音频流, 1个带字母、字符的数据流(Tele text),其它信息业务数据流。
3)PS与TS区别
节目流PS只能由1套节目的ES组成,传输流TS一般由多套节目的ES组成。由于在说明TS的基本流时标时,总是针对某1节目而言,因此TS选择了节目时钟基准PCR的概念,而不是系统时钟基准SCR。
5.系统的解码
由前述,MPEG-2系统要解决的问题是:
1)系统的复用与解复用
MPEG-2采用时分多路复用技术,让多路信号在同一信道上占用不同的时隙进行存储和传输,以提高信道利用率。
2)声音图像要同步显示
由于时分多路复用中的位时隙、路时隙、帧之间具有严格的时间关系,这就是同步。区分各路信号以此为据。为了恢复节目,先对ES进行解码。声音、图像信号的重现需要同步显示,从而要求收发两端数据流要达到同步。为此,MPEG-2系统规范通过在数据中插入时间标志来实现:SCR或PCR为重建系统时间基准的绝对时标;在有效PS和TS产生前,已插入PES的DTS和PTS为解码和重现时刻的相对时标。
3)解码缓存器无上下溢
MPEG-2系统是由视音频编码器、编码缓存器、系统编码器及复用器、信道网络编解码器及存储环境编解码器、系统解码器及解复用器、解码缓存器和视音频解码器构成。其中,编码缓存器和解码缓存器延迟是可变的;信道网络编解码器及存储环境编解码器和从视/音频编码器输入到视音频解码器输出,延迟是固定的。这表明,输入视/音频编码器的数字图像和音频取样,经过固定的、不能变的点到点延迟后,应该精确地同时出现在视音频解码器的输出端。编码及解码缓存器的可变延迟的范围就应该受到严格限制,使解码缓存器无上、下溢。
为了解决复用、同步、无溢出问题,需要定义1个系统目标解码器(STD-System Target Decoder)模型。用于解释传输流TS解码并恢复基本流ES时的过程;用于在复用器数据包交织时确定某些时间的边界条件。因此,每个相应的MPEG-2 TS必须借助于专门的解码器模型来解码。图9为TS的系统目标解码器模型。

STD与实际解码器的主要差别是:STD对数据流的操作是瞬时完成的,无须时间延迟。而实际解码器是有延迟的。于是,可以利用这个差别,根据STD设计解码器的缓存器的容量。例如,PAL制视频图像每隔1/25 s解码出1帧,压缩视频以4Mb/s码率到达视频解码器。要完全移走1帧图像,视频解码器比STD的时间要延迟1/25 s ,其缓存器容量要比STD规定容量大4Mb/s×1/25s = 0.16Mb。相对于STD,视频解码及显示有延迟,音频解码及显示也应延迟同样的时间,以便视音频正确同步。
要防止STD上溢或下溢,首先要确定解码延迟时间。为此,就要找出第一个DTS字段值与起始SCR字段值的差值。这个差值指出解码器第一个I帧在复用数据流第一个SCR字段的最后1个字节之后的解码的时刻。利用I帧和P帧编码时间和显示时间的不同时性,计算出PTS与DTS之时间差,从而确定P帧在重新排序缓存器中存储的时间,或P帧在重新排序缓存器中停留多长时间后开始解码。只要在解码器开始解码前,完全传送完1个存取单元,就不会产生下溢。若每个存取单元在解码前瞬时的缓存器最大充满度与STD数据流缓存器容量大小比较适配,就不会产生上溢。
由图9可见,MPEG-2 TS包含N个ES的数据。按照PID值,根据ES的性质是视频的还是音频的或系统的,通过换向器,将每个相关数据包切换到相应路径,并分别传送给各个传输缓存器(TB-Transport Buffer)。如视频ES输入到传输缓存器TB-1,音频ES输入到传输缓存器TB-N,PSI输入到系统缓存器SB-PSI.从STD输入端传送到TB或SB是瞬时的。
TB的容量略大于2个传输流包的相应长度,MPEG规定为512 B。有利于较高复用器码率与较低解码存储器存取速度相适应,因缓存器读出采用较低的ES速率就可以实现。之所以要采用ES速率,是因为要降低解码硬件对处理器支持的PSI信息分析的复杂性,从而规定缓存器读出速度最大不超过传输速率0.2%。视频基本数据流从TB-1输出时,由于包头再也不能识别TS数据包结构,并已去除了全部相关传输记录信息,同时误差指示器查询可能有的包误差。因此,要抛弃PES包头,并将所有存储在TB-1中的PES包的净负荷数据全部送到主存储器1,以便为解码器1提供数据。净负荷数据从TB-1传送到主存储器1是瞬时完成的。
DTS标明从STD的ES解码缓存器移走存取单元全部数据的时刻。对输入到主存储器1-N的所有存取单元的数据,都必须在DTS规定的瞬时移走。解码器1-N及系统信息解码器的解码是瞬时完成的。顺便说明的是:传输数据包的同时,应将误差信息传送给解码器,以便对数据内容解扰,至于对内容的进一步解码,已不是传输解码器的事情。数据解压缩、显示单元重建及在正确的显示时间显示已同步的序列,是解码系统的任务。
PTS标明STD出现显示单元(PU-Presentation Unit)的时间,显示之前,I帧和P帧需要经过重新排序缓存器的延迟。
节目专用信息PSI包括节目源结合表PAT(PID=0)、条件接收表CAT(PID=1)、节目源映射表PMT。由于PSI的数据量比较小,系统缓存器SB-PSI的规模限制在1536B。到达系统信息解码器的PSI传输流,在该解码器中检查所期望节目的相关信息。解码器通过PSI表了解来自数据流的哪些数据包,即数据中哪些PID应继续传送,其余不期望的节目数据包可忽略。显然,存储在节目源映射表PMT中的PID值,是用于检测TS内所需要的数据包的。(