数字电视机顶盒的同步问题_第1页
数字电视机顶盒的同步问题_第2页
数字电视机顶盒的同步问题_第3页
数字电视机顶盒的同步问题_第4页
数字电视机顶盒的同步问题_第5页
已阅读5页,还剩12页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、scrpcrptsdts这些都是时间概念2009-04-09 10:35scr (system_clock_reference)系统参考时钟 存在于ts流和program流中,用于多节目流间的同步;pcr (program-_clock_reference)节目参考时钟 存在于ts流里,用于确定同一节目的解码时序;pts (presentation_time_stamp) 显示时钟标签 pes里的字段,dts (decod_time-stamp)解码时间标签 pes里的字段,用于指明一个访问单元在系统目标解码器(std)里的的解码时间。当解码时间不同于显示时间时出现。数字电视广播中的编解码器的

2、同步机制(转)2009-04-09 10:381引言     高清晰度数字电视(HDTV)信源解码器的同步系统是高清晰电视解码器中的重要部分。由于全数字电视系统采用数字编解码和数字电视传输技术,因而和传统的模拟电视有本质的区别。高清晰度电视与模拟信号的重要区别除了信号传输的压缩编码方式外,由于数字电视在编解码过程中因存储、传输等一起延时,在同步方式上也有明显的区别。对于模拟电视而言,图像信息以同步方式传输,因而接收机可以从图像同步信号中直接获得时钟信号,其每一帧端到端的传输延时自然是固定的,同步相对简单,其发送和接收是严格同步的。但对数字压缩系统而言,每

3、一帧图像所占的数据量是不同的,其依赖于图像的编码方式和图像的复杂度,而一般无线广播的传输信道码率是固定的,因而对于每一帧而言,其传输时延是可变的,从而不能从图像数据的开始处获得定时信息,传输和显示之间没有自然的同步概念。为了解决这一问题,MPEG-2采用了在ES,PES和TS/PS这3个码流层次中设置相关的时钟信息,并通过其联合作用达到编解码器的同步和音频、视频的同步。2MPEG-2码流层次简介     MPEG-2的结构可分为压缩层和系统层。一路节目的视频、音频及其他辅助数据经过数字化后通过压缩层完成信源压缩编码,分别形成视频的基本流ES(Elemen

4、tary   Stream)、音频的基本流和其他辅助数据的基本流;紧接着系统层将不同的基本流分别加包头打包为PES(Packetised ES)包,为了多路数据节目流的复用和有效的传输,又将PES包作为负载分割后插入传送流包(TS包)或节目流包(PS包)中,MPEG-2标准规定了两种码流,分别是基于可变长度打包的节目流PS(Program   Steam)和基于固定长度打包的传送流(Transport   Stream)。这两种码流分别适应于不同的场合应用,节目流PS适合在相对出错较少的环境下使用,其长度是变化的,而传送流TS能够把多

5、个节目在基于一个或多个时间标识的基础上构成一个流,传送流适合于出错较多的场合下使用,如在存储、传输数据易丢失或在噪声媒介场合使用。用于视频、音频同步以及系统时钟恢复的时间标签分别在ES,PES和TS/PS这3个层次中。在MPEG-2码流的ES层,和同步有关的主要是VBV-Delay域,表示MPEG-2所定义的一个假设的解码器视频缓存校验器在收到图像起始码的最后一个字节后,至当前解码帧解码开始所应等待的时间,用以防止解码器的缓冲器(buffer)出现上溢或下溢。在PES层,主要是在PES包头信息中出现的PTS(显示时间标签)和DTS(解码时间标签)。而在TS流中,TS包头包含了PCR(节目时钟参

6、考),用于解码器的系统时钟恢复。在节目流PS包头中包含SCR,它的定义和作用与PCR域相似。3时间模型     MPEG-2在其系统层语法中给出了一个具有恒定的端到端的延迟的时间模型,该模型可用来指导系统层编码器与解码器的同步。同步的好坏直接影响到视频和音频的连续性和配合效果,因而,系统层编码器与解码器之间同步的实现在整个系统中占有极为重要的地位,而解码器是否同步于编码器也成为解码器件设计优劣的一个判定标准。在MPEG-2系统层时间模型中,它的端到端延迟从信号进入编码器到信号从解码器输出是一个常数,信号总共经过编码器、编码缓冲器、多路复用器、传输或存储、

7、解复用器、解码缓冲器以及解码器等器件的延迟,其时间模型如图2所示。     所有的视频和音频采样进入编码器后,经一恒定的延迟,在解码器分别输出显示,采样率在编码器和解码器中应严格相等。在MPEG-2中,所有的时序被定义成一个共同的系统时钟,即系统时间时钟(STC),故编码器、解码器的系统时钟必须同步。解码器的系统时钟应由编码器的系统时钟经恒定延迟后恢复出来,以服从于编码器。    对于节目流而言,这个时钟可以与视频或音频采样时钟之间有一个严格的特定比率,或者稍有区别,但仍足以提供精确的端到端的时序和时钟恢复,而在传输流中,此系统时钟频

8、率与视频或音频采样时钟之间任何时候都必须有严格的比率关系,其目的是为了在解码器中恢复采样率。4时间标签定义及同步机制     编码器中有单一的共同系统时钟(其频率惟27 MHz),此时钟用来产生指示音频和视频的正确显示和解码时序的时间标签,同时可用来指示在抽样间隙中系统时钟本身的瞬时值。指示音频和视频显示时间的时间标签称为显示时间标签(PTS),指示音频和视频的解码时间标签称为解码时间标签(DTS),指示系统时钟本身的瞬时值的时间标签称为节目参考时钟标签(PCR/SCR)。解码器通过VBV Delay来确定解码起始,用解码时间标签(DTS)和显示时间标签

9、(PTS)来确定解码和显示次序,用PCR/SCR来获得系统时钟的同步。解码器中的系统时钟和同步就是依*这些时间标签来进行恢复和修正。PCR/SCR,PTS,DTS具体编码方式如下:     PCR/SCR的插入必须在PCR/SCR字段的最后离开复用器的那一时刻,同时把27 MHz系统时钟的采样瞬时值作为PCR/SCR字段插入到相应的PCR/SCR域。PCR/SCR为42 bits的计数值,其中33 bits为PCR Base/SCR Base,是以27 MHz时钟经300分频后的时钟为单位的计数值;9 bits的PCR Ext/SCR Ext,则是以27

10、 MHz时钟为单位的计数值。 t(i)表示第i 个包含PCR/SCR字段的最后一位的字节最后离开复用器的时间。PCR具体编码方式如下(SCR的编码方式和PCR雷同):PCR Base( i )=系统时钟频率× t(i) DIV300%2 33PCR Ext( i )=系统时钟频率× t(i) %300PCR( i )=PCR Base( i )×300+PCR Ext( i )PTS域为33 bits,编码成为3个独立的字段,表示此分组中第一个访问单元在系统目标解码器中的预定显示时间,其具体的编码方式如下:PTS( k )=系统时间频率× tp(k) D

11、IV300%2 33式中: tp(k) 显示单垣p(k) 的显示时间;p(k) 相应于此分组数据的第一个访问单元的显示单元。DTS域也为33 bits,编码成为3个独立的字段,表示此分组中第一个访问单元在系统目标解码器中的预定解码时间,其具体的编码方式如下:DTS( j )=系统时间频率× td(j) DIV300%2 33式中: td(j)访问单元An(j)的解码时间;An(j) 相应于此分组数据开始的第一个访问单元的显示单元。一般地,解码端解码时,首先利用PCR重建和编码器同步的27 MHz系统时钟,恢复27 MHz系统时钟后,再利用PES流中的DTS,PTS进行音、视频的同步,

12、同时利用VBV Delay在解码器中的Buffer充盈到相应程度后启动初始解码。 由MPEG-2推荐的解码模型(见图3)可以知道,MPEG-2解码器的同步是由系统层解复用器、时钟控制单元和基本流解码器三者共同配合来完成的。     根据该模型以及本文前面的分析,可知解码器同步算法如下:(1) MPEG-2复用器从输入码流的包头中解出时间信息PCR/SCR送入到系统时间时钟恢复电路;(2) 系统时间时钟恢复电路在接收到每一个新的SCR/PCR时,进行本地系统时间时钟恢复和锁相;(3) 解复用器从输入码流的PES包头中解出显示时间标签PTS和解码时间标签DT

13、S,并送入到基本流解码器中;(4) 基本流解码器在接收到新的PTS/DTS存入对应的FIFO中进行管理;(5) 对于没有DTS/PTS的显示单元,需要对其时间标签进行插值,并送入到FIFO中管理;(6) 每一显示单元开始解码前,用其对应的DTS与STC进行比较,当STC与DTS相等时开始解码;(7) 每一显示单元开始显示前,用其对应的PTS与STC进行比较,当STC与PTS相等时开始显示。     在理想情况下,PTS和DTS的值应该是相同的,但由于实际解码器解码需要一定的时间,一般PTS和DTS的值是不同的。如果在PES包头中只出现了PTS,我们就认为

14、DTS=PTS。5系统时钟(STC)恢复     在编码器中,STC的恢复是同步的关键。如果解码器中的时钟频率和编码器的时钟频率严格匹配,那么视频和音频的解码和显示将自动和编码器保持相同的速率,而端到端的延迟将为常数。当编码器与解码器匹配时,任何正确的SCR/PCR值可用来设置解码器STC的瞬时值,而且此后不需要更多的调整,解码器的STC就与编码器的STC相匹配。但在实际中,解码器均有自主的系统时间频率,并不和编码器的系统时钟匹配,因而需要利用接收到的SCR/PCR值来使解码器服从于编码器,使解码器的时钟服从于接收的数据流的典型方法是通过锁相环(PLL)

15、。用锁相环技术进行系统时钟恢复的框图如图4所示。     当一个新节目的PCR到达解码器时,需要更新时间基点,STC被设置为编码于PCR/SCR中的当前值。通常第一个从解复用器中解出的PCR/SCR被直接装入到STC的计数器,其后PLL为闭环操作。每当一个新节目的PCR/SCR到达解码器时,此值被认为是锁相环的参考频率,用来和STC的当前值比较,产生的差值 e 经过脉宽调制后被输入低通滤波器并经放大,输出为控制信号 f ,用来控制振荡器(VCO)的瞬时频率,VCO输出的频率是在27 MHz左右振荡信号,它作为解码器的系统时钟。27 MHz时钟经波形整理后

16、输入到计数器中,产生当前的STC值,其33 bits的90 kHz部分用于和PTS/DTS比较,产生解码和显示的同步信号。6DTS/PTS的管理     STC输出的33 bits中,90 kHz部分(即PCR-Base域)用于与PTS和DTS作比较,当二者相同时,相应的单元被显示或者解码。但按照MPEG-2标准的规定,PTS/DTS位于PES包的包头中,而解复用器所解出的PES包头的字节不被送入到任何基本流解码器的输入缓冲区,仅用于控制各解码器工作。每当解复用解到一个PTS/DTS时,就表明其后送入各个基本流解码器的输入缓冲器中的编码数据的显示/解码时

17、间,但此时送入信道缓冲器中的基本流并不一定立即被解码,因此基本流解码器必须记录当前这个PTS/DTS及所对应的码流位置,以利于后面的解码和显示同步。     针对以上分析,我们采用如下方法来达到解码与显示的同步:在每一个基本流解码器中建立一个33 bits的PTS/DTS先入先出存储器(FIFO),用以存放PTS/DTS值,同时MPEG-2码流解复用器中加入一个检测电路,每当码流开始新的一帧图像时,则产生一个信号,用来通知基本流解码器,并将该帧图像的PTS/DTS写入到FIFO中,同时,每当解码器解到一帧图像时,就从FIFO中读出相应的PTS/DTS,此

18、PTS/DTS与STC进行比较,当两者相等时,当前图像就开始显示/解码。   在MPEG-2标准中,并非每一个PES包或每一帧图像均有PTS和DTS,一般PS流中每两个PTS之间的间隔是0.7 s,而TS流中每两个PTS之间的间隔是0.1 s,所以在没有PTS和DTS的一帧图像出现时,我们可以在前一PTS/DTS的基础上加一增量得到对应该帧图像的PTS/DTS,并将计算出来的新的PTS/DTS插入到存放PTS/DTS的FIFO中去,即:PTS n =PTS n -1+PTS7PTS/DTS同步实现和失步处理     27 MHz系统时

19、钟经过1/300分频后,得到本地的33 bits PCR Base,该时钟与寄存器中当前图像的PTS/DTS进行比较,系统软件根据比较结果做出相应的处理:(1) 若当前的PTS/DTS比PCR计数器的值小于半帧以上,即PTS-SCR Base-PTS/2此时说明系统解码过慢,解码器处于失步状态,应根据该帧的结构做出相应的同步调整;(2) 若当前的PTS/DTS比SCR计数器的值在半帧时间以内,我们认为此时系统解码正常,立即显示/解码当前帧;(3) 若当前的PTS/DTS大于SCR计数器的值,则此时解码器正常或稍快,在这种情况下,只需等到SCR与PTS/DTS相等时,就可显示/解码。pcr pt

20、s dts2009-05-06 15:12DM500卫星接收机中系统时钟电路的正常工作,是确保整机能够正常工作的前提。在MPEG-2解码方案的DVB系统时钟电路中,绝大多数采用27MHZ的系统时钟。主要为接收机中的解复用和解码器提供系统基准时钟和视频时钟,接收机所需的其他时钟(除LAN电路外)如252MHZ的CPU工作时钟,均由27MHZ时钟经芯片内部的PLL电路分倍频产生。PCR时钟恢复功能1、PCR时钟恢复功能原理    为了保持时钟频率的稳定性,数字接收机都应该具有PCR时钟恢复功能。因为数字电视系统是一个实时传输系统,为了保证收发端的正常工作,接收端与发送

21、端的频率和相位一致,必须建立收发端的PCR(Program Clock Peference:节目参考时钟)时钟恢复功能。如果没有这个功能,接收机工作较长时间后,时钟误差就会累积,累积到一定程度就会出现接收画面停帧或技帧现象。        PCR时钟恢复功能原理,在发送端的视频编码器中,有一个由硬件时钟电路产生的27MHZ时钟,编码过程中不断读取27MHZ时钟。同时利用计数器对系统时钟计数,形成PCR,然后每隔一段时间将PCR随基本流数据一起放入传送流编码器中,在传送流编码器中汇同音频帧、视频帧等一

22、起编码成以188字节为1包、符合MPEG-2标准的TS流,传送出去。        接收端有一个正在工作的本地系统27MHZ时钟,其额定频率与发送端时钟相等,同样也有一个计数器对它计数形成一个本地PCR。接收端将从发送端获取的TS流经过传送流解码器解码后,将取得的PCR与本地PCR比较,并用比较结果形成的控制电压经低通滤波器滤波后,产生一个直流电压去控制27MHZ压控振荡(VCO)电路,VCO电路调整本地27MHZ时钟,使之与发送端时钟同步,这样就完成PCR时钟的恢复,实现收发端声音和图像完全同步。   

23、2、PCR时钟恢复功能的实现        对于DVB时钟恢复功能的实现        对于DVB系统传输来说,恢复PCR时钟是一个基本要求,因为只有PCR时钟正确,接收机才能恢复基准27MHZ(±30PPM)时钟。在DVB系统时钟电路中,通过增设对27MHZ时钟电路中的VCO闭路锁相的硬件控制,来达到PCR时钟恢复的目的。        一些普及型卫星接收机为节省硬件成本,并未采用VCXO电路,而是通过系

24、统软件程序避免这种情况,或让这种情况出现时不那么明显。不过在DM500原厂机和早期仿制机中,均运用了普通晶振+压控晶振(VCXO:Voltage Control X-tal Oscillator)芯片的解决方案。   VCXO芯片简介    1、PLL502-02芯片简介        在电路板上印制标记为P502(U23)芯片,是美国Phaselink公司压控晶振专用PLL502系列芯片中的一种,为PLL502-02二倍

25、频芯片,其典型可调频率范围是±250PPM,额定工作电源电压为3.3V。采用SOIC(Small Outline IC:小输出线集成电路)封装方式。        其中1、8脚接晶振两端,6脚接+3.3V电源,4脚接地,3脚VCON接CPU的PWM信号控制端,5脚为27MHz输出端。在PLL502-02内部,主要由VCXO电路和PLL(锁相环)电路构成,其中PLL电路部分由基准频率、相位检波器、电荷泵、环路滤波器、压控振荡器VCO和分频器组成。    

26、0;   晶体振荡电路配合外部的晶振产生基准频率,相位检波器用于比较基准频率信号和反馈信号的相位,环路滤波器对由相位检波器的电荷泵所产生的电流脉冲进行积分,以生成施加于VCO的调谐控制电压。VCO输出通过分频器负反馈到相位检波器,迫使VCO在达到平衡时产生与基准频率两倍相等的频率。当VCO的输出频率和相位都与基准频率和相位相等时,就认为PLL处于“锁定”状态。        与PLL502-02芯片功能结构相同的还有美国一些公司的产品,如ICS公司的MK3727、AMI半导体公司(AMIS)的FS6128、PERI

27、COM半导体公司的P16CX100-35、TLSI公司的T83027A-02等,可以直接代换。    2、T73227芯片简介        美国TLSI公司的T73227芯片,是一款高精度压控晶振专用芯片。输入标准的27MHz晶振信号,输出27MHz的时钟信号,其典型可调频率范围是±150PPM,额定电源电压为3.3V。有SOIC和MSOP两种封装方式封装。            系统时钟电路&

28、#160;           DM500接收机所采用的系统时钟电路,主要有PLL502-02芯片+13.5MHZ晶振和T73227芯片+27MHz晶振两种方案,其电路原理是一样的。                1、PLL502-02+13.5MHz方案         

29、60;         采用PLL502-02+13.5MHz方案的系统时钟部分电路板。                       在该电路中,由13.5MHZ晶振(Y2)和负载电容C217、C218和PLL502-02(U23)芯片内部的VCXO电路构成时钟振荡,再经过芯片内部的PLL锁相、缓冲整形输出27MHz的

30、系统时钟,这也是机器刚开始复位工作时本地的强制时钟。                       一旦接收机接收到信号并成功锁定后,则通过主芯片U15在软件的控制下,实地地解析出PCR与本地PCR的差值后,再通过主芯片内部的PWM(脉宽调制)单元输出PWM控制信号,经过外部的R205、C215组成的低通滤波器,滤掉PWM输出的高频信号,保留低频的直流分量,送到U23的3脚,调节片内的变容

31、二极管,使产生的本地系统时钟频率,使之与发送端节目的系统时钟频率同步。                        2、T73227+27MHz方案                   

32、       彩T73227+27MHz方案的系统时钟部分电路板,实际上T73227芯片和PLL502-02芯片完全兼容,因此组成的电路也完成相同,只是将晶振由13.5MHZ更换为27MHz即可。                    3、74HCU04+27MHz方案       

33、60;           后期的DM500灰壳机采用74HCU04+27MHZ晶振方案       74HCU04是74系列逻辑集成电路中一种六反相器,芯片含有6个非门,该方案系统时钟电路。                       该

34、电路采用皮尔斯振荡电路,使用74HCU04(U23)芯片中的F6、F2两个反相器,其中F6和27MHZ晶振以及C217、C218构成构成27MHz时钟振荡电路,F6在电路中起反相激励振荡作用,F2为输出的振荡波形进行缓冲和整形。       C217、C218为负载电容,与晶振一起决定负载谐振频率,负载电容常用标准值有12PF、16PF、20PF和30PF等。               

35、;                R203、R204为负载电阻,其中R203和晶振并联,在电路上起反馈作用,以唯反相器输入端的工作点电压在VDD/2;这样在振荡信号反馈在输入端时,能保证反相器工作在适当的工作区,使得振荡幅度趋于稳定。如果用芯片中的反相器来作振荡,必须外接这个电阻,对于CMOS芯片而言,该反馈电阻一般选取1M阻值。R204和晶振串联,作为驱动电位调整之用,预防止晶振被过分驱动而引起频率上升,导致晶振早期失效。  

36、0;                                该电路输出的是固定的27MHz本地系统时钟,不能够随发送端的时钟作同步调节       Mpeg-2的同步及时间恢复2009-05-06 14:52一、引言Mpe

37、g-2用于视音频同步以及系统时钟恢复的时间标签分别在ES,PES和TS这3个层次中。在ES层,与同步有关的主要是视频缓冲验证VBV(Video Buffer Verifier),用以防止解码器的缓冲器出现上溢或者下溢;在PES层,主要是在PES头信息里出现的显示时间标签PTS(Presentation Time Stamp)和解码时间标签DTS(Decoding Time Stamp);在TS层中,TS头信息包含了节目时钟参考PCR(Program Clock Reference),用于恢复出与编码端一致的系统时序时钟STC(System Time Clock)。通常的视频压缩算法都采用了可变

38、长编码,编码生成的视频码流是可变码率的。为了能够在实际的固定码率信道或者可变码率信道上传输,需要引入缓冲区缓存视频码流数据。因此,视频编码算法必须提供一个有效的缓冲区管理策略,确保缓冲区不会发生上溢和下溢。编码器通过码率控制算法,调整生成的视频码流满足既定的缓冲区管理策略;同时在码率控制算法中使用自适应量化方法,确保压缩视频的质量。缓冲区管理策略通常都是建立在一个假想的解码器模型上,该解码器模型直接和编码器的输出相连接,缓冲区管理策略通过控制编码视频数据流移入和移出解码器缓冲区的时间以保证解码器模型的数据缓冲区不上溢也不下溢。在Mpeg标准中,该解码器模型称为VBV。VBV在ES层中定义。在M

39、peg-2编码器中有单一的共同系统时钟,此时钟用来产生指示音频和视频的正确显示和解码时序的时间标签,同时可用来指示在抽样瞬间系统时钟时间的瞬时值。正是编码器中共同系统时钟的出现,以及解码器中时钟的重新生成和时间标签的正确使用,才为解码器中操作的正确同步提供了基准。Mpeg-2规定的系统时钟频率为27MHz,传输流中的PCR,PTS/DTS等均为对该共同系统时钟的采样值。解码端捕获PCR,恢复出本地的STC,作为音视频同步控制的基准,并依据PTS(DTS)时间标签来安排解码和显示时间表,使音视频分别同步于STC,以实现音视频之间的同步。标准规定在原始音频和视频流中,PTS的间隔不能超过0.7s,

40、而出现在TS包头的PCR间隔不能超过0.1s。二、STC与PCRSTC是视音频同步控制的基准,它是一串频率为27MHz的脉冲,触发计数器而形成一个二进制表示的时间基准,再通过对该时间基准SCT进行取样得到PCR、PTS和DTS等时间标签。在编码和解码端,系统时钟脉冲是由振荡器等硬件产生,在解码端STC通过在码流中定时传送的PCR利用锁相环(PLL)技术来与编码端STC保持一致。PCR是由对系统时钟脉冲触发的计数器状态抽样而来,是放在TS包头的自适应区中传送。PCR共占6Bytes,其中6bits预留,42bits有效位。42bits的PCR分为两部分:33bits的PCR-Base和9bits

41、的PCR-Ext。PCR-Base是由27MHz脉冲经300分频后的90kHz脉冲触发计数器,再对计数器状态进行取样得到的。PCR-Ext是由27MHz脉冲直接触发计数器,再对计数器状态进行取样得到的。PCR的具体编码方式如下(编码在PCR(i)中的数值代表了t(i),i指包含PCR-Base字段的最后一位的字节):PCR-Base(i)=90kHz×t(i),    mod(233) PCR-Ext(i)=27MHz×t(i),    mod(300)PCR(i)=PCR-Base(i)×300PCR-

42、Ext(i)当新节目的PCR到达解码器时,需要更新时间基点,STC就被置位。通常第一个从解复用器中解出的PCR被直接装入到STC计数器,其后PLL闭环操作。每当一个新节目的PCR到达解码器时,此值被认为是锁相环的参考频率,用来与STC的当前值比较,产生的差值e经过脉宽调制后被输入低通滤波器并经放大,输出控制信号f,用来控制振荡器(VCO)的瞬时频率,VCO输出的频率是在27MHz左右振荡的信号,作为解码器的系统时钟。27MHz时钟经过波形整理后输入到计数器中,产生当前的STC值,其33bits的90kHz部分用于和PTS/DTS比较,产生解码和显示的同步信号。PCR-Base的作用是在解码器切

43、换节目时,提供对解码器PCR计数器的初始值,以让该PCR值与PTS、DTS最大可能地达到相同的时间起点。PCR-ext的作用是通过解码器端的锁相环电路修正解码器的系统时钟,使其达到和编码器一致的27MHz。图1显示了解码器如何用PCR 来重建每个节目的远地27MHz时钟。 图1 用PCR重建远地27MHz时钟三、DTS和PTSDTS是编码器在编码时定义的,为解码器预定的解码时间。该时间标记出现在PES层,在PES头部时间域中存在。它也是一个33bits的计数值,也是对系统时钟的300分频的时钟的计数值。由于它和PCR有相同的起点,在PCR值连续的情况下,可以起到时间定时的作用,当本机PCR值(

44、连续)和DTS值相等时,表示它们计算了同样的时钟,也即它们经过了相同的时间。本机PCR起到的是连续计数的功能,DTS则是在等待这个时间,一旦等到这个时间,就表明它的解码次序排好了,因为这个解码次序是在编码的时候规定的,对编码的具体细节我们可以不做了解,我们只要查询到DTS就可以进行下一步的工作。这个也有利于编码器和解码器研发的独立性,少了一些捆绑,多了一些兼容。DTS就视频来说,因为视频编码的时候用到了双向预测,一个图像单元被解出,并非马上就被显示,可能在存储器中留一段时间,作为其余图像单元的解码参考,在被参考完毕后,才被显示。针对视频的显示,Mpeg还提出了一个视频PTS。针对音频和视频的同

45、步显示,又提出了一个音频PTS。由于声音没有用到双向预测,它的解码次序就是它的显示次序,故对它只提出PTS的概念。PTS是编码器定义的,为解码器规定某个单元的显示时间。它也是一个33b的计数值,也是对系统时钟的300分频的时钟的计数值。要注意的是,PCR、DTS、PTS应该具有相同的时间起点,选在模拟图像的场同步处开始计时是很好的办法。一个单元解码后被显示,PCR计数器重新计数,开始下一个单元的工作。四、PCR测量PCR 精度(PCR_AC):接收PCR中所含27MHz时钟的不准确度,但不包含任何传输定时损伤。测量时传输码流中PCR字节位置作为起点,计算出PCR 到达时间。PCR 漂移率(PC

46、R_DR):PCR漂移率测量指的是PCR中的低频误差并计入了由PCR发生和再生引起的误差以及由传输损伤所引起的到达时间误差。即PCR内所含27MHz时钟的低频变化速率,测量时以某一稳定外部基准作为参考,因此包含了任何传输定时变化。下面的例子可用来说明PCR 漂移率的重要性:我们来看一下由PLL控制的本地时钟再生器。再生器输出端的信号频率应当跟踪输入信号频率,随着输入信号频率的变化,PLL也随之作出响应,本地再生器将跟踪输入信号,随着输入信号变化速率的增加,PLL的跟踪能力会有所降低,最后将导致本地发生信号失锁而丢失节目。PCR 漂移率的测量给出了一种测定方法,即如何更好地使去复用器/ 解码器或

47、再复用器的节目时钟锁定于输入TS中所包含的PCR(注意这里指的是漂移率的测量而不是绝对频率的测量,接收机端的PLL电路可以锁定于系统时钟,该时钟有着固定的频率误差如果是快速变化或漂移率大,则会出现问题)。PCR 总抖动(PCR_OJ):PCR内所含27MHz时钟的高频变化,测量时以某一稳定外部基准作为参考,因此包含了任何传输定时变化。它是PCR测量中最重要的一项,是PCR中高频误差的总体测量并且还包括来自PCR发生和PCR 再生的误差以及由传输损伤引起的到达时间误差。例如该项传输损伤可能会引入到接收机中的RF解调器中。接收机内再生的TS时钟以及去复用器/解码器所使用的TS时钟可能包含有基本高频

48、变化,它会对PCR的恢复带来直接影响。在这种情形下,解码器在复原PCR 中所发现的PCR 到达时间误差可能是±500ns容限的许多倍,给PCR精度带来不利。任何解码器均靠接收PCR以准确再生其节目时钟并提供稳定的视频输出。与此相同,任何再复用器均靠接收PCR以在其输出端精确地重新作出PCR标记。PCR的到达时间是严格的;因此,测量包含有到达时间误差和精度误差的总抖动(PCR_OJ)就是非常必要的。在理想运行系统中,传输损伤应当是可以设计的。然而在目前典型的分配网络中,包含有再复用器、ATM 层等各级链路,它们均会引入误差。PCR_AC是在复用器输出端直接测量的数值,不过它在网络中的运

49、行监视常会使人迷惑不解,因为按照定义,它应当消除一切传输损伤。PCR频率偏置(PCR_FO):即PCR中所含27MHz 时钟的频率偏置,测量时以某一稳定的外部基准作为参考。MPEG-2编码器中有单一的共同系统时钟STC (27MHz),此时钟用来产生指示音频/视频正确解码和显示时序的时间标签,同时,可用来指示在抽样瞬间系统时钟时间的瞬时值。该时钟由输入视频的行同步锁相,当输入是SDI信号时,由其时钟经10分频产生编码器的系统时钟。正是编码器中共同系统时钟的出现,以及解码器中时钟的重新生成和时间标签的正确使用,才为解码器中操作的正确同步提供了基准。为实现编解码器的时钟同步,在编码器中对STC系统

50、时钟进行计数,每隔一定的传输时间,在经过选择的TS包的适应头中,传输该计数器的抽样值给接收机,作为解码器的节目时钟参考信号,既PCR。PCR有效位为42b,其中高33b为PCR_Base,是以27MHz时钟,经300分频后的时钟为单位的计数值,低9b为PCR_Extension,是以27MHz时钟为单位的计数值。除PCR外,解码时间标签DTS和显示时间标签PTS,也非常重要。它们与PCR_Base相似,也是以编码器27MHz的系统时钟,经300分频后为单位的计数值来创建的。其中,DTS用于指示解码器何时对接收的图像、音频帧进行解码,PTS用于通知何时显示已解码的图像帧。 PTS和DTS只是一个

51、33b的数值,如果没有PCR所代表的时间轴做参考,这个数值是没有意义的。为了保持正确解码,必须使编码器和解码器(机顶盒)的系统时钟保持锁定,即它们的频率保持一致,以及它们各自的计数器的初始值一致。 解码器(机顶盒)中有一个频率为27MHz左右的压控振荡器(VCO),输出信号作为系统时钟送入计数器中产生当前的STC样值,它与PCR一样也是42b的一个数值。其中,高33b是以27MHz经过300粉频后的时钟为单位的计数值,低9b是以27MHz时钟为单位的计数值。当一个新节目到达解码器(机顶盒)时,解码器(机顶盒)从码流中获得PCR值,用其PCR_Extention值与当前STC的低9b位作比较,得

52、到误差信号,再通过锁相环电路去调整压控振荡器,使解码器(机顶盒)的系统时钟频率,与编码器的系统时钟频率保持一致。从码流中依次获得各帧的PTS与DTS值,将其和当前STC值的高33b位作比较。如果DTS值大于STC值,则对码流进行缓存,同时监测STC值的变化,当STC值增大到与DTS值相等时,对该帧码流进行解码,当STC值与PTS值相等时,播放该帧。如果由于传输网络的缓冲延时抖动,当码流到达解码器(机顶盒)时,其PTS值已经小于STC值,则解码器(机顶盒)跳过这一帧,丢弃该帧数据。由于PTS和DTS是根据PCR值产生的,因此必须将获得的第一个PCR值,作为初始值去置位解码器(机顶盒)的STC计数

53、器,使它们的值一样,否则,将导致时基不同,从而解码出错。音频与视频的处理相似,只是不存在时序重排的问题。图5所示是解码器(机顶盒)PCR工作原理图。 音画不同步产生原因 在实际应用中,有些编码器由于输入视频信号的时基不稳,导致其输出时钟发生抖动,帧同步的间隔不是40ms。这些编码器,在根据PCR和缓冲延时设定初始的DTS值后,每帧的DTS值,由上一个DTS加上一个固定值得到(该值可由如下计算而得:27MHz经300分频后为90kHz,PAL制电视每秒为25帧,由此,该值是90000/25=3600),并根据帧类型和GOP类型计算出PTS值。但这段时间PCR值并不是增加3600,导致DTS和PT

54、S相对PCR变大或变小。有些解码器(机顶盒)没有采用压控震荡器,其系统时钟为固定的27MHz,只是用接收到的PCR值,初始化本地系统时钟计数器的值。编码器和解码器(机顶盒)之间不能保持严格的锁定,这样就可能导致解码器(机顶盒)丢帧。而有的解码器(机顶盒)在发生丢帧的情况后就不再严格按DTS和PTS解码显示,而是根据缓冲区的情况来解码,由于视音频编码的延时不一样,就可能导致音画不同步。 此外,在从编码器到解码器(机顶盒)的传输过程中,由于存在着复用器、调制器等变延时缓存的环节,可能导致PCR包的传输延时不恒定,有大有小。如果不对PCR进行修正,也可能导致以上问题的发生。Mpeg-2的同步及时间恢

55、复(转载)STC,PCR,DTS,PTS2009-04-09 16:38摘要:Mpeg-2同步及时间恢复在编码、传输和解码中占有重要的地位,它不仅直接影响视音频的解码质量,还是衡量整个传输网络优劣的重要指标。本文将从原理上介绍Mpeg-2同步及时间恢复方法,并给出PCR测量的几个项目。关键字:STC,PCR,DTS,PTS 一、引言Mpeg-2用于视音频同步以及系统时钟恢复的时间标签分别在ES,PES和TS这3个层次中。在ES层,与同步有关的主要是视频缓冲验证VBV(Video Buffer Verifier),用以防止解码器的缓冲器出现上溢或者下溢;在PES层,主要是在PES头信息里出现的显

56、示时间标签PTS(Presentation Time Stamp)和解码时间标签DTS(Decoding Time Stamp);在TS层中,TS头信息包含了节目时钟参考PCR(Program Clock Reference),用于恢复出与编码端一致的系统时序时钟STC(System Time Clock)。通常的视频压缩算法都采用了可变长编码,编码生成的视频码流是可变码率的。为了能够在实际的固定码率信道或者可变码率信道上传输,需要引入缓冲区缓存视频码流数据。因此,视频编码算法必须提供一个有效的缓冲区管理策略,确保缓冲区不会发生上溢和下溢。编码器通过码率控制算法,调整生成的视频码流满足既定的缓

57、冲区管理策略;同时在码率控制算法中使用自适应量化方法,确保压缩视频的质量。缓冲区管理策略通常都是建立在一个假想的解码器模型上,该解码器模型直接和编码器的输出相连接,缓冲区管理策略通过控制编码视频数据流移入和移出解码器缓冲区的时间以保证解码器模型的数据缓冲区不上溢也不下溢。在Mpeg标准中,该解码器模型称为VBV。VBV在ES层中定义。在Mpeg-2编码器中有单一的共同系统时钟,此时钟用来产生指示音频和视频的正确显示和解码时序的时间标签,同时可用来指示在抽样瞬间系统时钟时间的瞬时值。正是编码器中共同系统时钟的出现,以及解码器中时钟的重新生成和时间标签的正确使用,才为解码器中操作的正确同步提供了基

58、准。Mpeg-2规定的系统时钟频率为27MHz,传输流中的PCR,PTS/DTS等均为对该共同系统时钟的采样值。解码端捕获PCR,恢复出本地的STC,作为音视频同步控制的基准,并依据PTS(DTS)时间标签来安排解码和显示时间表,使音视频分别同步于STC,以实现音视频之间的同步。标准规定在原始音频和视频流中,PTS的间隔不能超过0.7s,而出现在TS包头的PCR间隔不能超过0.1s。二、STC与PCRSTC是视音频同步控制的基准,它是一串频率为27MHz的脉冲,触发计数器而形成一个二进制表示的时间基准,再通过对该时间基准SCT进行取样得到PCR、PTS和DTS等时间标签。在编码和解码端,系统时

59、钟脉冲是由振荡器等硬件产生,在解码端STC通过在码流中定时传送的PCR利用锁相环(PLL)技术来与编码端STC保持一致。PCR是由对系统时钟脉冲触发的计数器状态抽样而来,是放在TS包头的自适应区中传送。PCR共占6Bytes,其中6bits预留,42bits有效位。42bits的PCR分为两部分:33bits的PCR-Base和9bits的PCR-Ext。PCR-Base是由27MHz脉冲经300分频后的90kHz脉冲触发计数器,再对计数器状态进行取样得到的。PCR-Ext是由27MHz脉冲直接触发计数器,再对计数器状态进行取样得到的。PCR的具体编码方式如下(编码在PCR(i)中的数值代表了

60、t(i),i指包含PCR-Base字段的最后一位的字节):PCR-Base(i)=90kHz×t(i),    mod(233) PCR-Ext(i)=27MHz×t(i),    mod(300)PCR(i)=PCR-Base(i)×300PCR-Ext(i)当新节目的PCR到达解码器时,需要更新时间基点,STC就被置位。通常第一个从解复用器中解出的PCR被直接装入到STC计数器,其后PLL闭环操作。每当一个新节目的PCR到达解码器时,此值被认为是锁相环的参考频率,用来与STC的当前值比较,产生的差值e经过脉宽调制后被输入低通滤波器并经放大,输出控制信号f,用来控制振荡器(VCO)的瞬时频率,VCO输

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论