MPEG2_pcr

                          MPEG-2传输流中的PCR分析
                 
摘 要】本文介绍了时间标签PCR在MPEG-2数字电视传输系统中进行视音频同步的作用,着重说明了PCR的原理,包括PCR在编码端的生成、传输及解码端的接收和系统时钟的恢复,描述了DVB广播中PCR可能出现的错误及产生的影响,最后,按照TR101290标准借助码流分析仪介绍了检测PCR错误的基本操作。
关键词】MPEG-2传输流;PCR ;STC;TR101290;码流分析仪
大学bbs1.引言
在模拟电视系统中,接收机从图像的同步信号中直接获得时钟信号,接收端和发送端通过行/场同步头以及度副载波信息进行同步; 而在基于ITU-R BT.601的数字电视系统中,并不需要传输度副载波同步信号,但数字化的同步信号在重建用于取样或模数转换的系统时钟时仍然不可缺少,为了解决这一问题,MPEG-2规定在压缩的数字电视传输流(TS)中,传输一种同步数据,用于重建对信号进行MPEG-2编码时的取样时钟,即旧唐书李白传节目时钟参考PCR
2.PCR的生成及STC的恢复
2.1 MPEG-2传输流的同步时间标签
MPEG-2编码器中有单一的共同系统时钟(STC),STC是视音频同步控制的基准,它是一串频率为27MHz的脉冲,用于触发计数器而形成一个二进制表示的时间基准,产生两类用于同步的时间标签:分别是指示视音频正确显示和解码时序的时间标签,通过在PES层的PES包头中的显示时间标签(PTS)和解码时间标签(DTS)表示,第二类标签用来指示在取样瞬间STC本身的瞬时值,即TS层中TS包头中的节目参考时钟标签(PCR)。
编码器、解码器的系统时钟必须同步,解码器的STC应由编码器的STC经恒定延迟后恢复,编码器中的STC,以及其在解码器中的重建和时间标签的正确使用,才为解码器中的正确同步提供了基准。
MPEG-2标准对STC有如下限制:
熊事件27000000-810(Hz)≤系统时钟频率≤27000000+810(Hz)                 
登封告成铝厂爆炸系统时钟频率的时间变化率≤75 (mHz/s)
2.2  PCR的生成
MPEG-2标准规定编码器的STC,是从输入的模拟或数字视频信号中提取的。该节目时钟的频率始终与视音频的取样时钟频率保持固定的比例关系,以便解码器对取样频率的恢复。解码器利用提取出的PCR字段恢复STC,依据PTS,DTS 所指示的时间解码并显示视频和音频,就使解码器系统实现了视音频显示的精确同步ITU-R BT.601标准的数字视频信号进行MPEG-2编码复用时PCR的生成与插入见图1
图1中,首先从输入的数字视频信号中提取27MHz系统时钟,在编码器端通过两个计数器
对STC取样,然后把计数值分两部分编码,在码流复用时以一定周期插入到TS的数据包中,PCR的插入必须在PCR字段的最后离开复用器的那一时刻,复用器输出端的TS中不仅包括编码的视音频数据包,还包括PCR数据包,MPEG-2传输流的节目映射表(PMT)中指明了携带每个节目对应的PCR字段的TS包的PID,含有多个节目的TS可以有多个PCR时间基准,但每个节目只能有一个共同的PCR时间基准。
PCR字段编码在MPEG-2 TS包的自适应字段(Adaptation field)的6个Byte中,其中6 bits为预留位,42 bits为有效位,其在TS包中的编码位置见图2,PCR分两部分编码,一个以STC频率的1/300(90KHz)为单位,称为PCR_base,共33bit;另一个以STC频率(27MHz)为单位,称为PCR_ext,共9 bit,PCR如下式表示:
PCR(i) =PCR_base(i)×300 +ogcPCR_ext(i)                        (1-1)
其中PCR_base(i) =((system_clock_ frequency×t(i)) DIV 300) % 233        (1-2)
PCR_ext(i) =((system_clock_ frequency ×t(i)) DIV 1) % 300        (1-3)
其中i指包含PCR_base 字段的最后一个bit的字节,PCR(i)表示这个字节到达TS系统目标解
码器(T-STD)的时间,具体定义请参见参考文献1。通过PCR值不但可以获得正确的解码时间, 还可以计算TS速率等与时间有关的信息。
2.3 STC在解码器中的恢复
如果解码器的时钟频率和编码器的时钟频率严格匹配那么视音频的解码和显示将和编码器保持一致的速率,而端到端的延迟将为常数,任何正确的PCR值可用来设置解码器的STC的瞬时值。然而实际应用中,解码器的自主系统时钟频率不与编码器STC匹配,这就要求利用接收的PCR使解码器的STC和编码器保持一致,典型的方法是通过在解码器中使用锁相环(PLL)来恢复STC,如图3所示
        3:使用解码器PLL电路恢复STC
解码器恢复STC过程如下:首先从PMT中查PCR的PID,并从传输流中该PID的数据包中提取出PCR,如果是带有新时间基准的节目,第一个解出的PCR被直接置入STC计数器作为初始值,其后PLL进行闭环操作:每当有PCR输入PLL时,先经过判别和滤波,若和STC计数器中PCR相差过大,可能是传输误码导致或者是一个新的节目的参考时钟视情况进行过滤或加载,把进行判断后的有效PCR值和当前STC计数器的值比较,产生的差值e经过脉宽调制后被输入低通滤波器并经放大,输出的信号f用来控制压控振荡器(VCO)的瞬时频率,输出为频率标称值为27MHz的振荡信号,把它作为解码器的系统时钟,经波形整理后输入到计数器中,产生当前的STC值。如果解码器收到的PCR值和定时反映了编码器STC的正确采样,则e将在PLL循环锁定后收敛为一个常量,而VCO瞬时频率的变化也在循环锁定后趋于0。
3. PCR的测量:
3.1 PCR的测量项目
PCR作为MPEG-2传输流中重要的同步信息,MPEG-2和DVB对PCR作了相应规定及测试项, ETR290文件共设定了三级错误,用以反映在DVB传输中系统时钟频率的误差,虽然PCR错误列在标准的第二优先级,但与第一优先级的参数有同样重要的地位
PCR重复发送间隔(PCR_AI: MPEG-2规定,同一节目中两个连续的PCR的发送间隔不能大于100ms,即相邻的PCR以至少10次/秒的频率在码流中重复, DVB规定PCR发送间隔不能大于40ms,否则为PCR重复错误(PCR_repetition_error);当两个连续的PCR的差值大于100ms,而又没有在TS包中的不连续指示符字段置位指示时,发生PCR不连续指示错误(PCR_discontinuity_indicator_error),产生PCR_AI错误时,可导致解码器时钟抖动或漂移,造成解码和显示画面的不同步。
PCR准确度(PCR_AC):如果因为时钟的突变或再复用设备对PCR的修改,导致编码器到解码器传输延时不同,实际传输的PCR值与该PCR字段在TS流中实际位置处应标示值
之间的时间差定义为PCR_AC,它描述了相对于其在TS流中的位置,PCR值本身的相位误差。DVB标准规定,在无抖动的PCR参考值上不得超出±500ns的偏离值,PCR_AC的容限规定了接收端允许收到PCR值的最大不确定度,否则会导致解码器时钟失锁,值得注意的是该参数只对恒定速率的TS有效,对于可变速率的TS流来说,该参数是无意义的。
PCR_AC的测量方法如图4所示:图4给出了在一个节目的TS中,计算两个PCR之间的时间间隔的两种方法,方法一是计算含有PCR的两个字节之间字节数,换算以bit为单位,用其除以TS的传输速率,结果用∆Tbyte表示;另一种是用两个PCR计数值的差除以节目时钟的计量频率(27MHz)单位,用∆TPCR表示。理想无差错的环境下,∆Tbyte=∆TPCR ,再复用时出现PCR插入错误时,两者的差值用来表示PCR_AC,即:
  PCR_AC=△TPCR  - △Tbyte                                                        (1-4)
                            4PCR_AC的测量方法说明
TR101290标准修订了ETR290标准,在ETR290的基础上,规定了更为完整的PCR的测量项目,除上文的测试项外,还有以下3项(具体定义可以参见标准):
PCR频率偏移(PCR_FO):编码器中作PCR取样的节目时钟频率与标准节目时钟频率(27MHz)之间的频率差,单位为Hz;通过测试频率与标准频率的差值测量,也可以ppm为单位表示,公式表示为:
PCR_FO=实际测试节目时钟频率-标准节目时钟频率(Hz)                                       
上文已经提到,其容限为±810Hz 。
PCR频率漂移率(PCR_DR):系统时钟频率对时间的一阶导数,它表示的是节目时钟频率与标准时钟频率差的低频分量,它是衡量节目时钟稳定度特性的物理量。单位是mHz/s@27MHz,容差为±75mHz/s或±10ppm/hr。
PCR总抖动(PCR_OJ):该参数测量的是一个PCR实际达到测量点的时刻与它应到时
刻之差的高频分量瞬时值。这个测试用于说明在节目流产生、复用、传输中所有影响PCR的累积错误, 尽管这些误差在接收端表现为PCR的抖动,但这些抖动实际上是由PCR的不精确计数及传输延迟两部分组成。
3.2 使用码流分析仪测量PCR
码流分析仪是数字电视传输系统中用于维护和排查故障的重要工具,它可以对在线的传输流进行PCR实时测量,也可将传送流保存进行离线分析。现以泰克的MTS400为例,分析DVB链路接收端传输流中的PCR参数。在分析软件窗口的“Program”标签中选中某一节目,如Program 3,展开图标,选择代表PCR时钟符号的图标“民粹化”。软件界面右侧即会出现“Time graphs”标签,单击观察到所有的与PCR相关的测试项目图表,如图5:

本文发布于:2024-09-20 17:00:48,感谢您对本站的认可!

本文链接:https://www.17tex.com/xueshu/603135.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:时钟   频率   节目   解码器   系统   时间   传输
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2024 Comsenz Inc.Powered by © 易纺专利技术学习网 豫ICP备2022007602号 豫公网安备41160202000603 站长QQ:729038198 关于我们 投诉建议