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

下载本文档

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

文档简介

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

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

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

4、本流;紧接着系 统层将不同的基本流分别加包头打包为pes(packetiscd es)包,为了多路数据 节目流的复用和有效的传输,乂将pes包作为负载分割后插入传送流包(ts包) 或节目流包(ps包)中,mpeg-2标准规定了两利|码流,分别是基于可变长度打 包的节目流ps (program steam)和基于固定长度打包的传送流(tremsport stream) o这两种码流分别适应于不同的场合应用,节目流ps 适合在相对出错较少的环境下使用,其长度是变化的,而传送流ts能够把多个 节目在基于一个或多个时间标识的基础上构成一个流,传送流适合于出错较多的 场合下使用,如在存储、传输数据易丢失

5、或在噪声媒介场合使用。用于视频、咅 频同步以及系统吋钟恢复的吋间标签分别在es, pes和ts/ps这3个层次中。在 mpeg-2码流的es层,和同步有关的主要是vbv-delay域,表示mpeg-2所定义 的一个假设的解码器视频缓存校验器在收到图像起始码的最后一个字节后,至当 前解码帧解码开始所应等待的吋间,用以防止解码器的缓冲器(buffer)出现上 溢或下溢。在pes层,主要是在pes包头信息中出现的pts (显示时间标签)和dts (解码时间标签)。而在ts流中,ts包头包含了 pcr(节目时钟参考),用于解 码器的系统时钟恢复。在节目流ps包头屮包含scr,它的定义和作用与pcr域相

6、 似。3时间模型mpeg-2在其系统层语法中给出了一个貝有恒定的端到端的延迟的时间模 型,该模型可用来指导系统层编码器与解码器的同步。同步的好坏盲接影响到视 频和音频的连续性和配合效果,因而,系统层编码器与解码器之间同步的实现在 整个系统屮占有极为重要的地位,而解码器是否同步于编码器也成为解码器件设 计优劣的一个判定标准。在mpeg-2系统层时间模型中,它的端到端延迟一一从信号进入编码器到信号从 解码器输出是一个常数,信号总共经过编码器、编码缓冲器、多路复用器、传输 或存储、解复用器、解码缓冲器以及解码器等器件的延迟,其时间模型如图2 所示。所有的视频和音频采样进入编码器后,经一恒定的延迟,在

7、解码器分别输 出显示,采样率在编码器和解码器中应严格相等。在mpeg-2中,所有的时序被 定义成一个共同的系统时钟,即系统时间时钟(stc),故编码器、解码器的系 统时钟必须同步。解码器的系统时钟应由编码器的系统时钟经恒定延迟后恢复出 来,以服从于编码器。对于节目流而言,这个时钟可以与视频或音频采样时钟之间有一个严格的特 定比率,或者稍有区别,但仍足以提供精确的端到端的时序和时钟恢复,而在传 输流屮,此系统时钟频率与视频或音频采样时钟z间任何时候都必须冇严格的比 率关系,其目的是为了在解码器中恢复采样率。4时间标签定义及同步机制编码器中有单一的共同系统时钟(其频率惟27 mhz),此时钟用来产

8、生指 示音频和视频的正确显示和解码时序的时间标签,同时可用来指示在抽样间隙屮 系统时钟本身的瞬时值。指示音频和视频显示时间的时间标签称为显示时间标签 (pts),指示音频和视频的解码吋间标签称为解码吋间标签(dts),指示系统 时钟本身的瞬时值的时间标签称为节目参考时钟标签(pcr/scr) o解码器通过 vbv delay 确定解码起始,用解码时间标签(dts)和显示时间标签(pts)來 确定解码和显示次序,用pcr/scr来获得系统时钟的同步。解码器屮的系统时钟 和同步就是依*这些时间标签来进行恢复和修正。pcr/scr, pts, dts具体编码方式如下:pcr/scr的插入必须在pcr

9、/scr字段的最后离开复用器的那一时刻,同时 把27 mhz系统时钟的采样i舜时值作为pcr/scr字段插入到相应的pcr/scr域。 pcr/scr 为 42 bits 的计数值,其中 33 bits 为 pcr base/scr base,是以 27 mhz 时钟经300分频后的时钟为单位的计数值;9 bits的pcr ext/scr ext,则是以 27 mhz吋钟为单位的计数值。t (i)表示第i个包含pcr/scr字段的最后-位的 字节最后离开复用器的时间。pcr具体编码方式如下(scr的编码方式和pcr雷 同八pcr base( i )=系统时钟频率x t(i) d1v3oo%2

10、33pcr ext( i )二系统吋钟频率x t(i) %300 pcr( i )=pcr base( i ) x 300+pcr ext( i ) pts域为33 bits,编码成为3个独立的字段,表示此分组中第一个访问单元在 系统目标解码器屮的预定显示时间,其具体的编码方式如下:pts( k )二系统时间频率x tp(k) div300%2 33 式屮:tp (k)显示单垣p(k)的显示吋间;p(k) 相应于此分组数据的第一个访问单元的显示单元。dts域也为33 bits,编码成为3个独立的字段,表示此分组中第一个访问单元 在系统目标解码器屮的预定解码时间,其具体的编码方式如下:dts(

11、j )二系统时间频率x td(j) div300%2 33 式中:td (j)访问单元an(j)的解码吋间;an(j) 相应于此分组数据开始的第一个访问单元的显示单元。 一般地,解码端解码时,首先利用pcr重建和编码器同步的27 mhz系统时钟, 恢复27 mhz系统时钟后,再利用pes流中的dts, pts进行音、视频的同步,同 时利用vbv delay在解码器中的buffer充盈到相应程度后启动初始解码。由mpeg-2推荐的解码模型(见图3)可以知道,mpeg-2解码器的同步是由系统 层解复用器、时钟控制单元和基本流解码器三者共同配合來完成的。根据该模型以及本文前面的分析,可知解码器同步算

12、法如2(1) mpeg-2复用器从输入码流的包头屮解出时间信息pcr/scr送入到系统时 间时钟恢复电路;(2) 系统吋间吋钟恢复电路在接收到每一个新的scr/pcr吋,进行木地系统吋 间时钟恢复和锁相;(3) 解复用器从输入码流的pes包头中解出显示时间标签pts和解码时间标签 dts,并送入到基本流解码器屮;(4) 基本流解码器在接收到新的pts/dts存入对应的fifo中进行管理;(5) 对于没有dts/pts的显示单元,需要对其吋间标签进行插值,并送入到 fifo中管理;(6) 每一显示单元开始解码前,用其对应的dts与stc进行比较,当stc与 dts相等时开始解码;(7) 每一显示

13、单元开始显示前,用其对应的pts与stc进行比较,当stc与 pts相等时开始显示。在理想情况下,pts和dts的值应该是相同的,但曲于实际解码器解码需 要一定的时间,一般pts和dts的值是不同的。如杲在pes包头中只出现了 pts, 我们就认为dts二pts。5系统时钟(stc)恢复在编码器中,stc的恢复是同步的关键。如果解码器中的时钟频率和编码 器的时钟频率严格匹配,那么视频和咅频的解码和显示将口动和编码器保持相同 的速率,而端到端的延迟将为常数。当编码器与解码器匹配时,任何正确的 scr/pcr值可用来设置解码器stc的瞬时值,而且此后不需要更多的调整,解码 器的stc就与编码器的s

14、tc相匹配。但在实际屮,解码器均有自主的系统吋间频 率,并不和编码器的系统时钟匹配,因而需要利用接收到的scr/pcr值來使解码 器服从于编码器,使解码器的时钟服从于接收的数据流的典型方法是通过锁相环 (pll)。用锁相环技术进行系统吋钟恢复的框图如图4所示。当一个新节目的pcr到达解码器时,需要更新时间基点,stc被设置为编 码于pcr/scr中的当前值。通常第一个从解复用器中解出的pcr/scr被直接装入 到stc的计数器,其后pll为闭环操作。每当一个新节目的pcr/scr到达解码器 时,此值被认为是锁相环的参考频率,用来和stc的当前值比较,产生的差值e 经过脉宽调制后被输入低通滤波器

15、并经放大,输出为控制信号f ,用来控制振 荡器(vco)的瞬时频率,vco输出的频率是在27 mhz左右振荡信号,它作为解 码器的系统时钟。27 miiz时钟经波形整理后输入到计数器中,产生当前的stc 值,其33 bits的90 khz部分用于和pts/dts比较,产生解码和显示的同步信 号。6dts/pts的管理stc输出的33 bits中,90 khz部分(即pcr-base域)用于与pts和dts 作比较,当二者相同时,相应的单元被显示或者解码。但按照mpeg-2标准的规 定,pts/dts位于pes包的包头中,而解复用器所解出的pes包头的字节不被送 入到任何基木流解码器的输入缓冲区

16、,仅用于控制各解码器工作。每当解复用解 到一个pts/dts时,就表明其后送入各个基本流解码器的输入缓冲器中的编码数 据的显示/解码时间,但此时送入信道缓冲器中的基木流并不一定立即被解码, 因此基本流解码器必须记录当前这个pts/dts及所对应的码流位置,以利于后而 的解码和显示同步。针对以上分析,我们采用如下方法来达到解码与显示的同步:在每一个基 本流解码器中建立一个33 bits的pts/dts先入先出存储器(fifo),用以存放 pts/dts值,同时mpeg-2码流解复用器中加入一个检测电路,每当码流开始新 的一帧图像时,则产生一个信号,用来通知基本流解码器,并将该帧图像的 pts/d

17、ts写入到fifo中,同时,每当解码器解到一帧图像时,就从fifo中读出 相应的pts/dts,此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+a pts

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

19、到scr与pts/dts相等时,就可显示/解码。per pts dts2009-05-06 15:12dm500卫星接收机小系统时钟电路的正常工作,是确保整机能够正常工作的前 提。在mpeg-2解码方案的dvb系统时钟电路屮,绝大多数采用27mhz的系统时 钟。主要为接收机中的解复用和解码器提供系统基准时钟和视频时钊|,接收机所 需的其他时钟(除lan电路外)如252mhz的cpu工作时钟,均由27mhz时钟经 芯片内部的pll电路分倍频产生。pcr时钟恢复功能1、pcr时钟恢复功能原理为了保持时钟频率的稳定性,数字接收机都应该具有pcr时钟恢复功能。因 为数字电视系统是一个实吋传输系统,为了

20、保证收发端的正常工作,接收端与发 送端的频率和相位一致,必须建立收发端的pcr(program  clock  pefcrcncc:节口参考时钟)时钟恢复功能。如果 没有这个功能,接收机工作较长时间后,时钟误差就会累积,累积到一定程度就 会出现接收画面停帧或技帧现象。pcr时钟恢复功能原理,在发送端的视频编码器中,有一个由硕件时钟电路 产生的27mhz时钟,编码过程屮不断读取27mhz时钟。同时利用计数器对系统时 钟计数,形成pcr,然后每隔一段时间将pcr随基本流数据一起放入传送流编码 器中,在传送流编码器中汇同咅频帧、视频帧等一起编码成以188字节为1包

21、、 符合mpeg-2标准的ts流,传送出去。接收端有一个正在工作的本地系统27mhz时钟,其额定频率与发送端时钟相 等,同样也有一个计数器对它计数形成一个本地pcr。接收端将从发送端获取的 ts流经过传送流解码器解码后,将取得的pcr与木地pcr比较,并用比较结果 形成的控制屯压经低通滤波器滤波后,产生一个宜流电压去控制27mhz压控振荡 (vc0)电路,vc0电路调整本地27mhz时钟,使之与发送端时钟同步,这样就 完成pcr时钟的恢复,实现收发端声音和图像完全同步。2、pcr吋钟恢复功能的实现对于dvb时钟恢复功能的实现对于dvb系统传输来说,恢复pcr时钟是一个基本要求,因为只冇pcr时

22、钟 正确,接收机才能恢复基准27mhz (±30ppm)时钟。在dvb系统时钟电路中, 通过增设对27mhz吋钟电路屮的vco闭路锁相的硬件控制,来达到pcr时钟恢复 的目的。一些普及型卫星接收机为节省硬件成本,并未采用vcxo电路,而是通过系 统软件程序避免这种情况,或让这种情况出现时不那么明显。不过在dm500原厂 机和早期仿制机中,均运用了普通晶振+压控晶振(vcxo:voltage  control  x-tal  osc订lator)芯片的解决方案。vcxo芯片简介1、pll502-02芯片简介在电路板上印制标记为p50

23、2 (u23)芯片,是美国phaselink公司压控晶振 专用pll502系列芯片小的一种,为pll502-02 z1倍频芯片,其典型可调频率范 围是土250ppm,额定工作电源电压为3. 3vo釆用soic(small out 1 ine  ic:小输出线集成电路)封装方式。其中1、8脚接晶振两端,6脚接+3.3v电源,4脚接地,3脚vc0n接cpu 的pwm信号控制端,5脚为27mhz输出端。在pll502-02内部,主要由vcxo电 路和pll (锁相环)电路构成,其中pll电路部分由基准频率、相位检波器、电 荷泵、环路滤波器、压控振荡器vco和分频器

24、组成。晶体振荡电路配合外部的晶振产生基准频率,和位检波器用于比较基准频率 信号和反馈信号的相位,环路滤波器对rfl相位检波器的电荷泵所产生的电流脉冲 进行积分,以生成施加于vco的调谐控制电压。vco输出通过分频器负反馈到相 位检波器,迫使vco在达到平衡时产生与基准频率两倍相等的频率。当vco的输 岀频率和相位都与基准频率和相位相等时,就认为pll处于“锁定”状态。与pll502-02芯片功能结构相同的还有美国一些公司的产品,如ics公罚的 mk3727、ami 半导体公司(amts)的 fs6128、pert com 半导体公司的 p16cx100-35、 tlsi公司的t83027a-0

25、2等,可以直接代换。2、t73227芯片简介美国test公司的t73227芯片,是一款高精度压控品振专用芯片。输入标准 的27mhz晶振信号,输出27mhz的时钟信号,其典型可调频率范围是±150ppm, 额定电源电压为3. 3vo有soic和msop两种封装方式封装。系统时钟电路dm500接收机所采用的系统时钟电路,主要有pll502-02芯片+13. 5mhz晶振 和t73227芯片+27mhz品振两种方案,其电路原理是一样的。1、pll502-02+13. 5mhz 方案采用pll502-02+13. 5mhz方案的系统时钟部分电路板。在该电路中,ft 13. 5mhz晶振(y

26、2)和负载电容c217、c218和pll5o2-o2 (u23)芯片内部的vcxo电路构成时钟振荡,再经过芯片内部的pll锁相、缓冲 整形输出27mhz的系统时钟,这也是机器刚开始复位工作时本地的强制时钟。一旦接收机接收到信号并成功锁定后,则通过主芯片u15在软件的控制 卜',实地地解析出pcr与木地pcr的差值后,再通过主芯片内部的pwm (脉宽调 制)单元输出pwm控制信号,经过外部的r205、c215组成的低通滤波器,滤掉 pwm输出的高频信号,保留低频的直流分量,送到u23的3脚,调节片内的变容 二极管,使产生的木地系统吋钟频率,使之与发送端节口的系统吋钟频率同步。2、t732

27、27+27miiz 方案彩t73227+27mhz方案的系统时钟部分电路板,实际上t73227芯片和 pll502-02芯片完全兼容,因此组成的电路也完成相同,只是将晶振由13. 5mhz 更换为27mhz即可。3、74hcu04+27mhz 方案后期的dm500灰壳机采用74hcu04+27mhz晶振方案74hcu04是74系列逻辑集成电路中一种六反相器,芯片含有6个非门, 该方案系统时钟电路。该电路采用皮尔斯振荡电路,使用74hcu04 (u23)芯片中的f6、f2两 个反相器,其中f6和27mhz晶振以及c217、c218构成构成27mhz时钟振荡电路, f6在电路屮起反相激励振荡作用,

28、f2为输出的振荡波形进行缓冲和整形。c217、c218为负载电容,与晶振一起决定负载谐振频率,负载电容常用 标准值有 12pf、16pf、20pf 和 30pf 等。r203、r204为负载电阻,其中r203和品振并联,在电路上起反馈作用, 以唯反相器输入端的工作点电压在vdd/2;这样在振荡信号反馈在输入端时,能 保证反相器工作在适当的工作区,使得振荡幅度趋于稳定。如果用芯片屮的反相 器來作振荡,必须外接这个电阻,对于cmos芯片而言,该反馈电阻一般选取 21mq阻值。r204和晶振串联,作为驱动电位调整z用,预防止晶振被过分驱 动而引起频率上升,导致品振早期失效。该电路输出的是固定的27m

29、hz本地系统时钟,不能够随发送端的时钟作 同步调节mpeg-2的同步及时间恢复2009-05-06 14:52一、引言mpeg-2用于视音频同步以及系统时钟恢复的时间标签分别在es, pes和ts 这3个层次中。在es层,与同步有关的主要是视频缓冲验证vbv (video buffer verifier),用以防止解码器的缓冲器岀现上溢或者下溢;在pes层,主要是在 pes头信息里岀现的显示时间标签pts (presentation time stamp)和解码时间 标签dts (decoding time stamp);在ts层中,ts头信息包含了节目时钟参考pcr (program clo

30、ck reference),用于恢复出与编码端一致的系统时序时钟 stc (system time clock)。通常的视频压缩算法都采用了可变长编码,编码生成的视频码流是可变码率的。 为了能够在实际的固定码率信道或者可变码率信道上传输,需要引入缓冲区缓存 视频码流数据。因此,视频编码算法必须提供一个有效的缓冲区管理策略,确保 缓冲区不会发生上溢和下溢。编码器通过码率控制算法,调整生成的视频码流满 足既定的缓冲区管理策略;同时在码率控制算法屮使用自适应量化方法,确保压 缩视频的质量。缓冲区管理策略通常都是建立在一个假想的解码器模型上,该解码器模型直 接和编码器的输出和连接,缓冲区管理策略通过控

31、制编码视频数据流移入和移出 解码器缓冲区的时间以保证解码器模型的数据缓冲区不上溢也不下溢。在mpeg 标准中,该解码器模型称为vbv。vbv在es层中定义。在mpeg-2编码器屮冇单一的共同系统时钟,此时钟用来产生指示音频和视 频的正确显示和解码时序的时间标签,同时可用来指示在抽样瞬间系统时钟时间 的瞬吋值。正是编码器屮共同系统吋钟的出现,以及解码器屮吋钟的重新生成和 吋间标签的正确使用,才为解码器中操作的正确同步提供了基准。mpcg-2规定的系统吋钟频率为27mhz,传输流中的pcr, pts/dts等均为对 该共同系统时钟的采样值。解码端捕获pcr,恢复岀本地的stc,作为音视频同 步控制

32、的基准,并依据pts (dts)时间标签來安排解码和显示时间表,使咅视 频分别同步于stc,以实现音视频之间的同步。标准规定在原始音频和视频流中, pts的间隔不能超过0. 7s,而出现在ts包头的pcr间隔不能超过0. is。二、stc 与 pcrstc是视音频同步控制的基准,它是一串频率为27mhz的脉冲,触发计数器 而形成一个二进制表示的时间基准,再通过对该时间基准sct进行取样得到pcr、 pts和dts等吋间标签。在编码和解码端,系统吋钟脉冲是由振荡器等硬件产生, 在解码端stc通过在码流中定时传送的pcr利用锁相环(pi丄)技术來与编码端 stc保持一致。pcr是由对系统时钟脉冲触

33、发的计数器状态抽样而来,是放在ts包头的自适 应区中传送。pcr共占6bytes,其中6bits预留,42bits有效位。42bits的pcr 分为两部分:33bits 的 pcr-base 和 9bits 的 pcr-ext。pcr-base 是由 27mhz 脉 冲经300分频后的90kilz脉冲触发计数器,再对计数器状态进行取样得到的。 pcr-ext是由27mhz脉冲直接触发计数器,再对计数器状态进行取样得到的。pcr 的具体编码方式如下(编码在pcr(i)中的数值代表了 t(i), i指包含pcr-base 字段的最后一位的字节):pcr-base (i)=90khz xt(i),

34、mod (233)pcr-ext (i)=27mhz xt(i), mod (300)pcr (i)=pcr-base (i) x 300+pcr-ext (i)当新节口的pcr到达解码器时,需要更新时间基点,stc就被置位。通常第 一个从解复用器屮解出的pcr被直接装入到stc计数器,其后pll闭环操作。每 当一个新节目的pcr到达解码器时,此值被认为是锁和环的参考频率,用來与 stc的当前值比较,产生的差值e经过脉宽调制后被输入低通滤波器并经放人, 输出控制信号f,用來控制振荡器(vc0)的瞬时频率,vc0输出的频率是在27mhz 左右振荡的信号,作为解码器的系统时钟。27mhz时钟经过波

35、形整理后输入到计 数器屮,产生当前的stc值,其33bits的90khz部分用于和pts/dts比较,产 生解码和显示的同步信号。pcr-base的作用是在解码器切换节廿时,提供对解码器pcr计数器的初始 值,以让该pcr值与pts、dts最大可能地达到相同的时间起点。pcr-cxt的作 用是通过解码器端的锁相环电路修正解码器的系统时钟,使其达到和编码器一致 的 27mhzo图1显示了解码器如何用pcr来重建每个节目的远地27mhz时钟。图1用pcr重建远地27mhz时钟三、dts 和 ptsdts是编码器在编码时定义的,为解码器预定的解码时间。该时间标记岀现 在pes层,在pes头部时间域中

36、存在。它也是一个33bits的计数值,也是对系 统时钟的300分频的时钟的计数值。由于它和pcr有相同的起点,在pcr值连续 的情况下,可以起到时间定时的作用,当木机pcr值(连续)和dts值相等时, 表示它们计算了同样的时钟,也即它们经过了相同的时间。本机pcr起到的是连 续计数的功能,dts则是在等待这个时间,一旦等到这个时间,就表明它的解码 次序排好了,因为这个解码次序是在编码的时候规定的,对编码的具休细节我们 可以不做了解,我们只要查询到dts就可以进行下一步的工作。这个也有利于编 码器和解码器研发的独立性,少了一些捆绑,多了一些兼容。dts就视频来说, 因为视频编码的时候用到了双向预

37、测,一个图像单元被解出,并非马上就被显示, 可能在存储器屮留一段时间,作为其余图像单元的解码参考,在被参考完毕后, 才被显示。针对视频的显示,mpeg还提出了一个视频pts。针对音频和视频的同 步显示,乂提出了一个咅频pts。由于声咅没有用到双向预测,它的解码次序就 是它的显示次序,故对它只提出pts的概念。pts是编码器定义的,为解码器规定某个单元的显示时间。它也是一个33b 的计数值,也是对系统时钟的300分频的时钟的计数值。要注意的是,pcr、dts、 pts应该具有相同的时间起点,选在模拟图像的场同步处开始计时是很好的办 法。一个单元解码后被显示,pcr计数器重新计数,开始下一个单元的

38、工作。四、pcr测量pcr精度(pcr_ac):接收pcrm所含27mhz时钟的不准确度,但不包含任何传 输定时损伤。测量时传输码流屮pcr字节位置作为起点,计算出pcr到达时间。pcr漂移率(pcr_dr): pcr漂移率测量指的是pcr屮的低频误差并计入了由pcr 发生和再生引起的误并以及由传输损伤所引起的到达时间误并。即pcr内所含 27m脱吋钟的低频变化速率,测量吋以某一稳定外部基准作为参考,因此包含了 任何传输定时变化。下面的例子可用來说明pcr漂移率的重要性:我们来看一下由pll控制的本地时钟再生器。再生器输出端的信号频率应当 跟踪输入信号频率,随着输入信号频率的变化,pll也随之

39、作出响应,本地再生 器将跟踪输入信号,随着输入信号变化速率的增加,pll的跟踪能力会有所降低, 最后将导致本地发生信号失锁而丢失节目。pcr漂移率的测量给出了一种测定方 法,即如何更好地使去复用器/解码器或再复用器的节目时钟锁定于输入ts中 所包含的pcr(注意这里指的是漂移率的测量而不是绝对频率的测量,接收机端 的pll电路可以锁定于系统时钊a该时钟有着固定的频率误差一如果是快速变化 或漂移率大,则会出现问题)。pcr总抖动(pcr_0j): pcr内所含27mhz时钟的高频变化,测量时以某一稳定 外部基准作为参考,因此包含了任何传输定时变化。它是pcr测量中最重要的一 项,是pcr中高频误

40、差的总体测量并且还包括來自pcr发生和pcr再生的误差 以及由传输损伤引起的到达时间谋差。例如该项传输损伤可能会引入到接收机中 的rf解调器屮。接收机内再生的ts时钟以及去复用器/解码器所使用的ts时钟 可能包含有基本高频变化,它会对pcr的恢复带来直接影响。在这种情形下,解 码器在复原pcr屮所发现的pcr到达吋间误差可能是±500ns容限的许多倍, 给pcr精度带來不利。任何解码器均靠接收pcr以准确再生其节0时钟并提供稳 定的视频输出。与此相同,任何再复用器均靠接收pcr以在其输出端精确地重新 作出pcr标记。pcr的到达时间是严格的;因此,测量包含冇到达时间误差和精 度误差的

41、总抖动(pcr_oj)就是非常必要的。在理想运行系统中,传输损伤应当是可以设计的。然而在目前典型的分配网 络中,包含有再复用器、atm层等各级链路,它们均会引入误差。pcr_ac是在 复用器输出端直接测量的数值,不过它在网络屮的运行监视常会使人迷惑不解, 因为按照定义,它应当消除一切传输损伤。pcr频率偏置(pcr.fo):即pcr屮所含27mhz时钟的频率偏置,测量时以某一 稳定的外部基准作为参考。mpeg-2编码器中有单一的共同系统时钟stc (27mhz),此时钟用來产生指示咅频 /视频正确解码和显示时序的时间标签,同吋,可用来指示在抽样瞬间系统吋钟 时间的ii舜时值。该时钟由输入视频的

42、行同步锁相,当输入是sdi信号时,由其时 钟经10分频产生编码器的系统时钟。正是编码器屮共同系统时钟的出现,以及 解码器屮时钟的重新生成和时间标签的止确使用,才为解码器中操作的正确同步 提供了基准。为实现编解码器的时钟同步,在编码器中对stc系统时钟进行计数, 每隔一定的传输时间,在经过选择的ts包的适应头中,传输该计数器的抽样值 给接收机,作为解码器的节目时钟参考信号,既pcr。pcr有效位为42b,其中 高33b为pcr.base,是以27mhz时钟,经300分频后的时钟为单位的计数值, 低9b为pcrextension,是以27mhz时钟为单位的计数值。除pcr外,解码时 间标签dts和

43、显示时间标签pts,也非常重要。它们与pcr.base ffl似,也是以 编码器27mhz的系统吋钟,经300分频后为单位的计数值亲创建的。其中,dts 用于指示解码器何时对接收的图像、音频帧进行解码,pts用于通知何时显示已 解码的图像帧。pts和dts只是一个33b的数值,如果没有pcr所代表的时间轴做参考,这个数 值是没有意义的。为了保持正确解码,必须使编码器和解码器(机顶盒)的系统吋 钟保持锁定,即它们的频率保持一致,以及它们各自的计数器的初始值一致。数据ii腳i n编h 编码!stc 3cc计数器系统时钟 pcr baseda:a计数器pcr extendatats汀包复用器图4 m

44、peg-m系蔬樨图解码器(机顶盒)屮有一个频率为27mhz左右的压控振荡器(vco),输出信号作为 系统时钟送入计数器屮产生当前的stc样值,它与pcr 一样也是42b的一个数值。 其中,高33b是以27mhz经过300粉频后的时钟为单位的计数值,低9b是以27mhz 吋钟为单位的计数值。当一个新节目到达解码器(机顶盒)吋,解码器(机顶盒) 从码流中获得pcr值,用其pcr_extention值与当前stc的低9b位作比较,得 到误差信号,再通过锁相环电路玉调整压控振荡器,使解码器(机顶盒)的系统时 钟频率,与编码器的系统时钟频率保持一致。从码流小依次获得各帧的pts与 dts值,将其和当前s

45、tc值的高33b位作比较。如果dts值大于stc值,则对码 流进行缓存,同时监测stc值的变化,当stc值增大到与dts值和等时,对该帧 码流进行解码,当stc值与pts值相等吋,播放该帧。如果rfl于传输网络的缓冲 延时抖动,当码流到达解码器(机顶盒)时,其pts值己经小于stc值,则解码器 (机顶盒)跳过这帧,丢弃该帧数据。由于pts和dts是根据pcr值产生的,因 此必须将获得的第一个pcr值,作为初始值去置位解码器(机顶盒)的stc计数器, 使它们的值一样,否则,将导致时基不同,从而解码出错。咅频与视频的处理和 似,只是不存在时序重排的问题。图5所示是解码器(机顶盒)pcr工作原理图。

46、视频pew计数誥理频稱码300分频音频pes咅频解码比较器肖5解码器(枇网和pcr工作棣理咅画不同步产生原因在实际应用中,有些编码器由于输入视频信号的时基不稳,导致其输出时钟发生 抖动,帧同步的间隔不是40mso这些编码器,在根据pcr和缓冲延吋设定初始 的dts值后,每帧的dts值,由上一个dts加上一个固定值得到(该值可由如下 计算而得:27miiz经300分频后为90khz, pal制电视每秒为25帧,由此,该值 是90000/25=3600),并根据帧类型和g0p类型计算出pts值。但这段时间pcr 值并不是增加3600,导致dts和pts和对pcr变大或变小。有些解码器(机顶盒) 没

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

48、, pts2009-04-09 16:38摘mpeg-2同步及吋间恢复在编码、传输和解码屮占有重要的地位,它不仅 直接影响视音频的解码质量,还是衡量整个传输网络优劣的重要指标。本文将从 原理上介绍mpcg-2同步及时间恢复方法,并给出pcr测量的几个项目。关键字:stc, pcr, dts, pts一、引言mpeg-2用于视音频同步以及系统吋钟恢复的吋间标签分别在es, pes和ts 这3个层次中。在es层,与同步冇关的主要是视频缓冲验证vbv (video buffer verifier),用以防止解码器的缓冲器出现上溢或者下溢;在pes层,主要是在 pes头信息里出现的显示时间标签pts

49、(presentation time stamp)和解码时间 标签dts (decoding time stamp);在ts层中,ts头信息包含了节目时钟参考 pcr (program clock reference),用于恢复出与编码端一致的系统时序时钟 stc (system time clock)。通常的视频压缩算法都采用了可变长编码,编码生成的视频码流是可变码率的。 为了能够在实际的固定码率信道或者可变码率信道上传输,需要引入缓冲区缓存 视频码流数据。因此,视频编码算法必须提供一个有效的缓冲区管理策略,确保 缓冲区不会发生上溢和下溢。编码器通过码率控制算法,调整生成的视频码流满 足既定

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

51、的正确同步提供了基准。mpeg-2规定的系统时钟频率为27mhz,传输流中的pcr, pts/dts等均为对 该共同系统时钟的采样值。解码端捕获pcr,恢复岀本地的stc,作为音视频同 步控制的基准,并依据pts (dts)时间标签来安排解码和显示时间表,使音视 频分别同步于stc,以实现咅视频z间的同步。标准规定在原始咅频和视频流中, pts的间隔不能超过0. 7s,而出现在ts包头的pcr间隔不能超过0. is。二、stc 与 pcrstc是视音频同步控制的基准,它是一串频率为27mhz的脉冲,触发计数器 而形成一个二进制表示的时间基准,再通过对该时间基准sct进行取样得到pcr、 pts

52、和dts等吋间标签。在编码和解码端,系统吋钟脉冲是由振荡器等硬件产生, 在解码端stc通过在码流中定时传送的pcr利用锁相环(pi丄)技术來与编码端 stc保持一致。pcr是由对系统时钟脉冲触发的计数器状态抽样而来,是放在ts包头的自适 应区中传送。pcr共占6bytes,其中6bits预留,42bits有效位。42bits的pcr 分为两部分:33bits 的 pcr-base 和 9bits 的 pcr-ext。pcr-base 是由 27mhz 脉 冲经300分频后的90kilz脉冲触发计数器,再对计数器状态进行取样得到的。 pcr-ext是由27mhz脉冲直接触发计数器,再对计数器状态

53、进行取样得到的。pcr 的具体编码方式如下(编码在pcr(i)中的数值代表了 t(i), i指包含pcr-base 字段的最后一位的字节):pcr-base (i) =90khz xt(i), mod (233)pcr-ext (i)二27mhz xt(i),mod (300)pcr(i)二pcr-base(i) x300 + pcr-ext(i)当新节目的pcr到达解码器时,需要更新时间基点,stc就被置位。通常第 一个从解复用器屮解出的pcr被直接装入到stc计数器,其后pll闭环操作。每 当一个新节目的pcr到达解码器时,此值被认为是锁相环的参考频率,用来与 stc的当前值比较,产生的并

54、值e经过脉宽调制后被输入低通滤波器并经放大, 输出控制信号f,用来控制振荡器(vco)的瞬时频率,vco输出的频率是在27mhz 左右振荡的信号,作为解码器的系统时钟。27mhz时钟经过波形整理后输入到计 数器屮,产生当前的stc值,其33bits的90khz部分用于和pts/dts比较,产 生解码和显示的同步信号。pcr-base的作用是在解码器切换节口吋,提供对解码器pcr计数器的初始 值,以让该pcr值与pts、dts最大可能地达到相同的时间起点。pcr-ext的作 用是通过解码器端的锁相环电路修止解码器的系统时钟,使其达到和编码器一致 的 27mhzo图1显示了解码器如何用pcr來重建每个节目

温馨提示

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

评论

0/150

提交评论