当前位置:首页 >> 家电维修 >> 电视技术 >> 电视与接收 >> 正文

数字电视中的编解码器同步机制(图)

作者:bondeit | 来源:本站整理 | 日期:2008-07-26 17:08 | 点击

    5、DTS/PTS的管理
    在PCR域的33 bits中的90 kHz部分(即PCR-Base域)用于与PTS和DTS作比较,当二者相同时,相应的单元被显示或者解码。但按照MPEG-2标准的规定,PTS/DTS位于PES包的包头中,而解复用器所解出的PES包头的字节不被送入到任何基本流解码器的输入缓冲区,仅用于控制各解码器工作。每当解复用器解到一个PTS/DTS时,PTS/DTS就作为其后送入各个基本流解码器的输入缓冲器中的数据的显示/解码时间,但此时送入信道缓冲器中的基本流并不一定立即被解码,因此基本流解码器必须记录当前这个PTS/DTS及所对应的码流位置,以利于后面的解码和显示同步。
    针对以上分析,我们采用如下方法来达到解码与显示的同步:在每一个基本流解码器中建立一个33 bits的PTS/DTS先入先出存储器(FIFO),用以存放PTS/DTS值,同时在解复用器中加入一个检测电路,每当码流开始新的一帧图像时,则产生一个信号,用来通知基本流解码器,并将该帧图像的PTS/DTS写入到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中去,即:PTSn=PTSn-1+ΔPTS(n为第n帧图像)。
    6、PTS/DTS同步实现和失步处理
    27 MHz系统时钟经过300分频后,得到本地的33 bits PCR_Base,该时钟与寄存器中当前图像的PTS/DTS进行比较,系统软件根据比较结果做出相应的处理:
   (1) 若当前的PTS/DTS比PCR计数器的值小于半帧以上,即PTS_Base≤-ΔPTS/2,此时说明系统解码过慢,解码器处于失步状态,应根据该帧的结构做出相应的同步调整;
   (2) 若当前的PTS/DTS比PCR计数器的值在半帧时间以内,我们认为此时系统解码正常,立即显示/解码当前帧;
   (3) 若当前的PTS/DTS大于PCR计数器的值,则此时解码器稍快,在这种情况下,只需等到PCR与PTS/DTS相等时,就可显示/解码。
9 7 3 1 2 3 4 8 :
上一篇:
下一篇:
关键字: