您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 广告经营 > 数字电视传输流PCR抖动分析
1数字电视传输流PCR抖动分析及MPEGII解码器仿真测试田建柏(罗德与施瓦茨中国公司广播电视部)摘要:在数字电视终端MPEGII解码器测试中,解码能力测试是一个很关键的环节,即验证在前端输入码流满足TR101290标准的前提下接收终端能正常解码,输出同步的视音频模拟信号。PCR抖动是影响接收终端解码的关键因素。本文深入探究了PCR的功能和物理意义,并在分析PCR抖动原因及其测试参数的基础上,讨论了基于波形、幅度和频率三个参数的PCR抖动仿真模型,并且根据实际测试终端解码器的需要,提出了具体的参数设置方法。关键词:PCRJitter;PTS;DTS;PCR_AC;PCR_OJPCRJitterAnalysisofTSinDigitalTelevisionandSimulationTestofMPEGIIDecoderJamboTian(Rohde&SchwarzChina,Beijing100016)Abstract:InDTVReceivertestandmeasurement,thedecodingabilityisimportanttomakesurethatitcandecodeandoutputthesynchronousvideoandaudionormallyundertheconditionofrightTSinput,whiletheTSisinlinewithTR101290.PCRjitteristhekeyfactortoinfluencetheReceiver.BasedondeepstudyofPCRphysics,functionandPCRjittermeasurement,thispaperanalyzesthesimulationmethodandmoduleforreceivertest.Waveform,AmplitudeandFrequencyareusedtosimulate.Also,thetestingsettingsupareprovidedforpracticalDTVreceivertestandmeasurement.Keywords:PCRJitter;PTS;DTS;PCR_AC;PCR_OJ1引言数字电视技术发展迅猛,涵盖了从信源编码、信道编码调制、射频传输以及终端解码的各个环节。技术发展的最终目的是推动一个产业的发展,而数字电视终端接收产品是产业发展的一个重要组成部分,相应地,如何对数字电视终端产品进行测试也就成为一个必要的需求。在MPEGII数字电视终端测试中,解码能力直接关系数字电视用户体验质量(QoE)。如果要对终端做综合测试,需要测试从射频解调到基带解码的各个环节,甚至包括附加业务的处理,本文暂且不讨论综合测试,仅仅就基带解码部分做一探讨,并且假设射频传输部分没有引入干扰并导致基带信号恶化。需要指出的是,目前数字电视信源编码标准很多,本文仅仅探讨目前最普遍的MPEG2压缩编码标准,在传输系统层面,本文以DVB标准为讨论基础。若假设射频信道理想,PCR抖动将是影响终端解码的最关键因素,这也是为何TR101290测试指导中针对PCR抖动做详细论述的原因。一个合格的MPEGII终端解码器应该至少适应TR101290容限的任何PCR抖动,一个好的终端解码器还应有一定的余量,即使2输入信号的PCR抖动偶尔超过了TR101290的容限范围,解码器仍然能够正常解码。为此,一个简单的测试平台可以如图1所示。利用标准的测试码流发生器做为信号源,利用视音频显示来做主观观测。图1PCR抖动适应性测试平台该测试平台中的标准码流播放器为了满足PCR抖动适应性测试需要,应该具有如下的功能:1)能支持播放无缝循环码流,支持实时PCR修正;2)支持码流记录和重播功能,用于模拟再复用阶段的PCR抖动引入(后文会详细论述),重放时需要具有码率调整能力;3)带有特定标准的不同有效码率的动态TS流,用于测试不同比特率下终端的解码能力;4)带有PCR抖动插入功能,在忽略标准码流播放器本身引入的PCR抖动外,增强PCR抖动幅度和频率,用于测试终端解码器的PCR抖动适应性。为了理解PCR抖动适应性测试的各个不同方面,需要首先了解PCR的功能,同时熟悉TR101290对PCR抖动的测试指导,进而深入理解PCR抖动如何仿真。2PCR及其物理意义2.1PCR简介MPEG-2的结构可分为压缩层和系统层。一路节目的视频、音频及其他辅助数据经过数字化后通过压缩层完成信源压缩编码,分别形成视频的基本流、音频的基本流和其他辅助数据的基本流;紧接着系统层将不同的基本流分别加包头打包为PES包。为了多路数字节目流的复用和有效的传输,又将PES包作为负载分割后插入传输包(TS包)中。压缩以后的基本数据流如何转换成TS流?以视频数据为例,每帧图像经过压缩以后形成大小不一的访问单元AU(AccessUnits),其大小取决于不同的编码方式和编码难度,如图2所示。压缩视频基本流访问单元AUESPESTS调整字段TS包头TS负载PES包头PES负载图2视频流封包流程各访问单元组成基本数据流(ES),ES再通过加入PES头信息打包成(PES),其有效负载为ES流的连续数据字节。再把一个PES包按照188B的固定长度加上各种参数(如同步信息)分割成多个TS包。TS包有固定的4Byte包头和可选的可变长的调整字段。TS包包头都含有包标识(PID)域,用来标识包的类型(如视频、音频、节目指定信息PSI等)。当需要插入节目参考时钟PCR或其他包头信息时就要加入调整字段。图3显示了PCR在TS流中的具体位置。3图3PCR位置图示PCR非常重要,它以固定频率插入包头,表示编码端的时钟,并反映了编码输出码率。收端根据PCR可以用来调整解码端的系统时钟,以保证对节目的正确解码。如图4所示为编码器中PCR处理的框图。图4编码器中PCR处理从图中可见,在Mpeg-2编码器中有单一的共同系统时钟(27MHz),此时钟用来产生指示音频和视频的正确显示和解码时序的时间标签,同时可用来指示在抽样瞬间系统时钟时间的瞬时值。正是编码器中共同系统时钟的出现,以及解码器中时钟的重新生成和时间标签的正确使用,才为解码器中操作的正确同步提供了基准。Mpeg-2用于视音频同步以及系统时钟恢复的时间标签分别插在ES,PES和TS这3个层次中。在ES层,与同步有关的主要是视频缓冲验证(VBV),用以防止解码器的缓冲器出现上溢或者下溢;在PES层,主要是在PES头信息里出现的显示时间标签(PTS)和解码时间标签(DTS);在TS层中,TS头信息包含了节目时钟参考(PCR),用于恢复出与编码端一致的系统时序时钟(STC)。从图4,我们也可以看出传输流中的PCR,PTS/DTS等均为对系统时钟采样而获得。PTS/DTS是27MHz系统时钟300分频后进入33位的计数器计数获得采样值,命名为PCR_Base;PCR自身直接进入9位计数器获得采样值,命名为PCR_Extension。在TS包头的调整字段,共有48bit用于PCR值传输,包括33位的PCR_base、6位的预留和9位的PCR_extension。PCR有效位数为42位,如图5所示:图5PCR有效构成42.2PCR插入机制及PCR调整在图4中的节目复用部分,PCR按照某种机制插入具体的计数器采样值。如图6所示,9位的PCR_extension计数器和33位的PCR_base计数器一直在工作中,节目复用器的输出在码流速率控制模块的驱动下按照恒定比特率输出单节目码流(SPTS)。假设SPTS的码率为:Mbit/s,按照MPEG2标准要求,每间隔100ms必须发送一次PCR(如果是系统复用后,DVB标准推荐为40ms)。那么可以计算每间隔:0.1×Mbit就要插入一个PCR。具体的插入步骤为:按照标准规定,PCR_extension的最后一个bit作为时间基准,PCR插入控制单元会不断以0.1×M为递减计数标准,当该递减计数器变为0的一瞬间,复用器输出模块对42位的计数器采样,并且瞬时插入到该TS包的PCR调整字段。一个循环完成后,继续进行下一个循环。以上的插入机制是一个简单的描述,要注意的是,一般情况下,视频TS包占据码流大部分,因此PCR也一般插入在视频TS包中,视频TS包有特定的PID,因此在计算0.1×M个bit的时候,可能那个TS包并不是需要插入PCR的包,因此这种情况下,实际需要考虑的PCR插入条件变为两个:1)输出的比特数目,用于控制100ms;2)在到达100ms的时候,寻找最合适的PID。27M时钟计数器300分频计数器…………9Bit33Bit码流速率控制Header标准部分PCR_BasePCR_ExtenReservedBitPayLoad节目复用TS封包处理PCR插入控制驱动脉冲计数器取样插入PCRTS流输出图6PCR在节目复用阶段插入机制基于MPEG-2传送流TS的多路节目复用,如图7所示,首先要对各路节目的PID,PSI、PCR等信息进行滤波,重新修改和整合为复用后新的PSI等信息,同时插入符合DVB-SI规范的业务信息,并在TS包(带有PCR标志位字段的特定TS包)在离开复用器时刻,校正或重新插入新的节目参考时钟值。5…...图7MPEG2TS流复用在节目复用时,由于要满足每隔100ms必须含有至少一个属于PCRPID的PCR字段的复用要求限制,因此依据该节目的传输速率计算出100ms时间间隔内需要传输的TS包,从而确定PCR的插入位置,但是在信道再复用时,PCR的实际数值要到信道复用时才能确定。打包完成后,要进行系统复用处理:按各节目的传输速率,将各节目的TS包均匀地组合成新的信道传送流,在一定的时间间隔内,各节目的传送流包的数目应与各自的传输速率成正比,按输入各节目的传输速率和输出码流的速率,确定需要插入的空包数目以及插入位置;根据各节目生成对应的PSI信息和SI信息,将其按照一定的时间间隔均匀地插入信道传送流中,还有一点就是在预留的PCR字段处填入适当的新的PCR值。PCR的调整是所有复用器的关键技术之一。PCR调整的关键是要得到TS包在复用器停留的时间DPCR。一般而言,有如下的PCR调整方法:1)直接计算TS包在复用器停留时间,把DPCR信息置入TS流;2)利用本地VCO精确调整PCR,需要预先识别输入PCR,然后修改PCR值。3)简单化处理,先利用本地27M进行本地PCR计数,当输入含有PCR域的TS进入复用器的时候提取原PCR,用此PCR减去本地PCR计数值得到的结果更新一次PCR域;当此TS包输出时,再将更新后PCR加上此时本地PCR的值得到最后调整的PCR值。4)更简单但是精度稍差的方法是采用虚填PCR技术:复用器工作时只保留原TS流的PCR值不变,先采用软件技术在PCR字段位置虚填一个特定的标志,而在输出接口的硬件中识别由软件虚填的PCR标志,并根据27MHz的系统时钟在该位置填入实际的PCR值。由于基本数据中也可能出现此PCR标志,因此虚填PCR技术会导致一定的PCR错误。2.3PCR在解码器端的工作原理PCR/PTS/DTS的核心作用就是使解码器的系统时钟(STC)能锁定于编码器,使得两个端点的时钟偏差不至于因为时间的积累而变化过大,导致解码器无法正确同步视音频解码,如图8所示:6图8解码器PCR工作原理当新节目的PCR到达解码器时,需要更新时间基点,解码器STC(实际是计数器)就被置位。通常第一个从解复用器中解出的PCR被直接装入到STC计数器,其后PLL闭环操作。每当一个新节目的PCR到达解码器时,此值被认为是锁相环的参考频率,用来与STC的当前值比较,产生的差值经过脉宽调制后被输入低通滤波器并经放大,输出控制信号用来控制振荡器(VCO)的瞬时频率,VCO输出的频率是在27MHz左右振荡的信号,作为解码器的系统时钟。27MHz时钟经过波形整理后输入到计数器中,产生当前的STC值,其33bits的90kHz部分用于和PTS/DTS比较,产生解码和显示的同步
本文标题:数字电视传输流PCR抖动分析
链接地址:https://www.777doc.com/doc-1479059 .html