CN1835597A - 一种节目参考时钟调整的方法及装置 - Google Patents
一种节目参考时钟调整的方法及装置 Download PDFInfo
- Publication number
- CN1835597A CN1835597A CN 200510055438 CN200510055438A CN1835597A CN 1835597 A CN1835597 A CN 1835597A CN 200510055438 CN200510055438 CN 200510055438 CN 200510055438 A CN200510055438 A CN 200510055438A CN 1835597 A CN1835597 A CN 1835597A
- Authority
- CN
- China
- Prior art keywords
- pcr
- clock reference
- program clock
- unit
- adjustment
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Landscapes
- Synchronisation In Digital Transmission Systems (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
本发明公开了一种节目参考时钟的调整方法,包括以下步骤:从当前数据包中读取节目参考时钟的输入值,得到当前构造节目参考时钟的值;获得当前构造节目参考时钟的值与当前数据包的节目参考时钟输入值的差值;当所述差值的绝对值超过预定调整阈值时,根据所述差值修正调整系数;将所述当前构造节目参考时钟的值替换输出数据包中的节目参考时钟的输入值。本发明还提供了应用上述方法的节目参考时钟调整装置。本发明能够保持输入码流中节目参考时钟的精度,而且能够消除输入码流中节目参考时钟的抖动,从而提高了解码端运动图像的品质。
Description
技术领域
本发明涉及多媒体通信领域中的视音频压缩编码技术领域,尤其涉及一种节目参考时钟的调整方法及装置。
背景技术
运动图像(Moving Picture)传输流的生成过程如图1所示。编码器110将模拟视频信号和模拟音频信号转换成传输流,每路传输流中包含一套节目的运动图像信号。复用器120接收多路传输流,将多路传输流复合成一路传输流,或者从多个传输流中挑选一些节目生成新的传输流。经过复用器120重新构造的传输流通过传输网络传送到远端的解码器130,解码器130从传输流中挑选一套节目进行解码,将数字信号还原成视频信号、音频信号,通过播放器140播出。
由于运动图像传输流中既包括图像信号,又包括声音信号,要使解码端能够按照时间顺序播放图像,并确保图像信号和声音信号的对应关系,必须在码流中包含准确的时钟信息,即节目参考时钟(PCR,Program ClockReference)。参考图1,在输入到复用器120的码流的一些数据包中已经包括了PCR,由于在复用器120中有可能对数据包中的数据进行多次插入和删除,这些操作会导致数据包中的时钟发生变化,因此在复用器120中要对数据包里的PCR作出相应的调整。
现有技术中应用的对PCR的调整方法为:在数据包进入复用器时,用复用器本地的系统时钟(STC,System Time Clock)记录其进入时间STC(In)和其从复用器输出的时间STC(Out),并计算得出各个数据包在复用器中的平均停留时间STC(Avg)。对当前数据包根据公式(1)计算得出要补偿的时间STCcom:
STCcom=STCcal(Out)-STC(In)-STC(Avg)……………………(1)
上式中,STCcal(Out)为根据上一个包括PCR的数据包实际输出复用器的时间预测的当前数据包从复用器输出的时间。
之后,从当前输入的数据包中取出其中PCR字段的值PCR(In),根据公式(2)得出调整后的PCR(Out),并将其写入输出数据包中:
PCR(Out)=PCR(In)+STCcom…………………………………(2)
应用上述方法的PCR调整装置如图2所示。基准系统时钟单元260为复用器270提供本地系统时钟STC,由与其连接的输入系统时钟单元210记录数据包进入复用器270的时间STC(In),与其连接的输出系统时钟单元240记录数据包实际从复用器270输出的时间STC(Out)。数据包处理单元250完成码流的复用,并配合节目参考时钟调整单元230从数据包中读取PCR和将调整后的PCR写入到数据包中。数据延迟统计单元220根据输入系统时钟单元210和输出系统时钟单元240记录的数据包实际输入和输出的本地时间,计算出各个数据包在复用器270停留的平均时间STC(Avg)。
节目参考时钟调整单元230从数据包中读取节目参考时钟的输入值PCR(In),结合从输入系统时钟单元210得到的STC(In)、从数据延迟统计单元220得到的数据包在复用器中的平均停留时间STC(Avg)、和根据从输出系统时钟单元240得到的上一个包括PCR的数据包实际输出时间预测的当前数据包输出时间STCcal(Out),对当前数据包中的PCR(In)进行调整,并将调整后的PCR(Out)写入数据包中。
可见,现有的PCR调整方案是以输入数据包中的PCR值为基准,根据数据包输入和输出复用器的时间差对PCR的值进行补偿。这种方案并不关心PCR值本身的准确性,因此只能在输入数据包PCR的精度上引入误差,而且每通过一级复用,误差会增加一些,使得PCR的性能越来越差。如果编码时钟或网络传输使得输入码流发生抖动,这种方案也无法将其纠正。这样,在解码端播放的运动图像品质不高,甚至会出现失真。
发明内容
本发明要解决的技术问题是提供一种复用器中节目参考时钟的调整方法和应用该方法的装置,能够精确地跟踪输入码流的PCR,不会引入误差。
本发明所述运动图像传输流复用器的节目参考时钟调整方法,包括以下步骤:
a)从当前数据包中读取节目参考时钟的输入值PCR(In),根据本地时钟和设定的调整系数x得出当前构造节目参考时钟的值PCR(Out);
b)所述的当前构造节目参考时钟的值PCR(Out)减去当前数据包的节目参考时钟输入值PCR(In)得出二者间的差值PCRdiff;
c)判断所述差值PCRdiff的绝对值是否超过预定调整阈值,如果是,执行下一步;如果否,转步骤e);
d)根据所述差值PCRdiff修正所述调整系数x;
e)将所述当前构造节目参考时钟的值PCR(Out)替换输出数据包中的PCR(In);
优选地,步骤a)中所述当前构造节目参考时钟的值PCR(Out)根据下式得到:
式中PCRpre(Out)为上一个构造节目参考时钟的值,STCcal(Out)为当前数据包的本地预测输出时间,STCpre(Out)为上一个构造节目参考时钟所在数据包的本地实际输出时间,x为调整系数。
优选地,步骤d)所述修正调整系数x的具体过程为:当所述差值PCRdiff大于零时,则调整系数x减小预定微调步长;当所述差值PCRdiff小于零时,则调整系数x增大预定微调步长。
优选地,所述步骤c)与步骤d)之间包括:
cd1)判断所述差值PCRdiff的绝对值是否超过预定码流突变阈值,如果是,则置位粗调标志,设置粗调结束条件;如果否,则不做处理;
cd2)判断粗调标志是否置位,如果否,转步骤d);如果是,根据所述差值PCRdiff以预定粗调步长修正调整系数x;
cd3)判断是否满足粗调结束条件,如果是,则清除粗调标志,转步骤e);如果否,直接转步骤e)。
优选地,步骤cd1)所述粗调结束条件包括以下之一:预定粗调次数、预定粗调时间。
优选地,所述步骤a)之前包括:记录当前数据包的到达时间STC(In);
所述步骤cd1)与步骤cd2)之间还包括:判断当前数据包的到达时间STC(In)与包括上一个节目参考时钟的数据包的到达时间STCpre(In)的差值是否大于预定码流中断阈值,如果是,则置位粗调标志,设置粗调结束条件;如果否,则不做处理。
优选地,步骤cd2)所述根据差值PCRdiff以预定粗调步长修正调整系数x具体为:当所述差值PCRdiff大于零时,则调整系数x减小预定粗调步长;当所述差值PCRdiff小于零时,则调整系数x增大预定粗调步长。
优选地,对第一个到达复用器的数据包,STCpre(Out)的初始值为当前数据包的预测输出时间STCcal(Out),PCRpre(Out)的初始值为当前数据包的节目参考时钟输入值PCR(In),调整系数x的初始值为1,STCpre(In)的初始值为当前数据包的到达时间STC(In)。
本发明还提供了一种节目参考时钟的调整装置,包括数据包处理单元、基准系统时钟单元和输出系统时钟单元,其特征在于,还包括节目参考时钟构造单元、调节系数修正单元、节目参考时钟读取单元、节目参考时钟写入单元,其中:
所述节目参考时钟读取单元从进入数据包处理单元的输入数据包中读取节目参考时钟的输入值PCR(In),并将该值提供给调节系数修正单元;
所述节目参考时钟写入单元将节目参考时钟构造单元输出的当前构造节目参考时钟PCR(Out)替换数据包处理单元输出数据包中的PCR(In);
所述基准系统时钟单元为节目参考时钟构造单元和输出系统时钟单元提供本地基准时钟;
所述输出系统时钟单元记录包括节目参考时钟的数据包的实际输出的本地时间值,并将该时间值提供给节目参考时钟构造单元;
所述节目参考时钟构造单元根据本地时钟和设定的调整系数x得出当前构造节目参考时钟的值PCR(Out);
所述调整系数修正单元根据从节目参考时钟构造单元得到的当前构造节目参考时钟的值PCR(Out),与当前数据包中节目参考时钟输入值PCR(In)的差值对所述调整系数x进行修正。
优选地,所述节目参考时钟构造单元根据下式得到当前构造节目参考时钟的值PCR(Out):
式中PCRpre(Out)为上一个构造节目参考时钟的值,STCcal(Out)为当前数据包的本地预测输出时间,STCpre(Out)为上一个构造节目参考时钟所在数据包的本地实际输出时间,x为调整系数。
优选地,还包括输入系统时钟单元,用于根据基准系统时钟单元提供的本地时钟,记录包括节目参考时钟的数据包到达数据包处理单元的本地时间STC(In);
所述调整系数修正单元包括调整比较单元、步长控制单元和调整系数控制单元,其中:
所述调整比较单元获得节目参考时钟构造单元输出的PCR(Out)、节目参考时钟读取单元输出的PCR(In)之间的差值PCRdiff,获得相邻两个包括节目参考时钟的输入数据包的到达时间差(STC(In)-STCpre(In));当(STC(In)-STCpre(In))超过预定码流中断阈值、或PCRdiff的绝对值超过预定码流突变阈值时,向所述步长控制单元发送粗调指令;当PCRdiff的绝对值超过预定调整阈值时,向所述调整系数控制单元发送调整指令;
所述步长控制单元向所述调整系数控制单元输出调整步长;缺省输出预定微调步长;在接收到所述调整比较单元的粗调指令后,在预定时间内输出预定粗调步长,或输出预定次数的预定粗调步长;
所述调整系数控制单元向节目参考时钟构造单元提供调整系数x;在接收到所述调整比较单元的调整指令后,根据从所述调整比较单元得到的PCRdiff的值和从所述步长控制单元输入的调整步长,修正调整系数x。
优选地,还包括写入比较单元,所述写入比较单元根据节目参考时钟构造单元输出的PCR(Out)、节目参考时钟读取单元输出的PCR(In)获得节目参考时钟发生变化的位数,向所述节目参考时钟写入单元输出写入区域指令;
所述节目参考时钟写入单元根据接收的写入区域指令和节目参考时钟构造单元输出的PCR(Out),将数据包中PCR(In)字段对应区域的值修改为PCR(Out)的值。
本发明采用复用器的本地时钟重新构造PCR,使其逼近输入数据包的PCR,并根据本地PCR计算数据包在输出复用器时PCR的理论值,根据该值来调节输出数据包中的PCR。应用本发明后,输出码流中的PCR可以保持输入码流PCR的精度,而且能够消除输入码流中PCR的抖动,使输出码流的PCR具有良好的性能,从而提高了解码端运动图像的品质。
附图说明
图1所示为生成运动图像传输信号的系统结构图;
图2所示为现有技术中PCR调整装置的结构图;
图3所示为本发明所述PCR调整方法的流程图;
图4所示为本发明所述PCR调整装置实施例一的结构图;
图5所示为本发明所述PCR调整装置实施例二的结构图。
具体实施方式
本发明中,对PCR的调整不是以输入码流中的PCR为基础进行的,而是通过复用器的本地时钟重新构造PCR,并使该构造的PCR实时地保持和输入PCR有近似的值,在经过复用器复用输出后能够恢复到理想的PCR。
图3所示为本发明所述PCR调整方法的流程图。在步骤S010,从当前输入到复用器的数据包中读取PCR的输入值PCR(In)。
在步骤S020,记录当前数据包的到达时间STC(In)。
在步骤S030,通过复用器的本地时钟构造当前数据包的输出PCR,当前构造PCR的值PCR(Out)根据公式(3)和公式(4)得出:
STCcom=STCcal(Out)-STCpre(Out)…………………………(3)
PCR(Out)=PCRpre(Out)+STCcom*x…………………………(4)
公式(3)中,STCpre(Out)为上一个包括PCR的数据包从复用器输出的实际时间,STCcal(Out)为当前数据包的预测输出时间,STCcom为本发明采用的补偿时间。由于数字图像采用了复杂的压缩编码算法,造成每幅图像的数据长度各不相同,使得无法直接从压缩编码图像数据的开始部分获取时钟信息,所以采用在数据包中写入PCR来传输数据的定时信息。PCR无需伴随每个数据包发送,输入到复用器的一路码流中数据包以时间顺序排列,不含PCR的数据包的定时信息可以根据上一个PCR推算出来。同理,当前数据包的预测输出时间STCcal(Out)也是根据上一个包括PCR的数据包的输出时间预测的,本发明采用的预测方法与现有技术相同,此处不再赘述。
公式(4)中,PCRpre(Out)为上一个构造节目参考时钟的值,x为调整系数。由于在传输和复用的过程中,可能由于各种因素使得码流发生抖动、复用器处理时间变化等情况,在后续步骤中,x将随着PCR(Out)与PCR(In)的差值而改变,以使PCR(Out)跟踪PCR(In)的值。根据实验结果,在码流不发生突变或中断的情况下,x的值一般在0.999995到1.000005之间。
对于一路码流中第一个到达复用器的包括PCR的数据包,STCpre(Out)的初始值为当前数据包的预测输出时间STCcal(Out),PCRpre(Out)的初始值为当前数据包的节目参考时钟输入值PCR(In),调整系数x的初始值为1.000000。
在步骤S040,根据公式(5)得出当前构造节目参考时钟的值PCR(Out)与当前数据包的节目参考时钟输入值PCR(In)的差值PCRdiff:
PCRdiff=PCR(Out)-PCR(In)……………………………(5)
PCRdiff反映了复用器本地构造的PCR与输入PCR的差距。
在步骤S050,判断PCRdiff的绝对值是否超过预定调整阈值,如果是,执行步骤S060;如果否,则执行步骤S140。在PCRdiff的绝对值超过预定调整阈值时,意味着PCR(Out)与PCR(In)的偏差已经超过可以容忍的范围,而需要修正调整系数x的值以使二者同步。预定调整阈值的推荐值为20ns(纳秒)。
在步骤S060,判断PCRdiff的绝对值是否超过预定码流突变阈值,如果是,则执行步骤S080;如果否,继续步骤S070。在运动图像的正常传输情况下,输入码流中的PCR将平稳的增长,但当输入端码流进行切换等操作时,会导致码流中的PCR发生突变,这时复用器本地构造的PCR(Out)应当尽快作出调整,重新与输入PCR同步。预定码流突变阈值的推荐值为20ms(毫秒)。
在步骤S070,判断当前数据包的到达时间STC(In)与包括上一个节目参考时钟的数据包的到达时间STCpre(In)的差值是否大于预定码流中断阈值,如果是,则执行步骤S080;如果否,执行步骤S090。如果两次包括PCR的数据包的到达间隔较大,通常是由于更换输入码流等原因发生了输入码流中断,而中断后输入码流中的PCR会和中断前有较大差距。此时也应当对复用器本地构造的PCR(Out)作出快速调整。推荐预定码流中断阈值设置为1s(秒)。
对于一路码流中第一个到达复用器的包括PCR的数据包,STCpre(In)的初始值为当前数据包的到达时间STC(In)。
在步骤S080,置位粗调标志,设置粗调结束条件。在步骤S060或步骤S070中检测到发生了码流突变或码流中断后,要使PCR(Out)在短时间内重新与PCR(In)同步,需要增大调整系数x的变化步长。粗调标志对应于调整系数x的预定粗调步长。
粗调结束条件可以选择设置,既可以是设置一定的粗调次数,也可以是设置一定的粗调时间。
在步骤S090,判断粗调标志是否置位,如果是,执行步骤S100;如果否,转步骤S130。
在步骤S100,根据PCRdiff的值以预定粗调步长修正调整系数x。当PCRdiff大于零时,意味着PCR(Out)超前于PCR(In),则应当减小调整系数x;当PCRdiff小于零时,意味着PCR(Out)滞后于PCR(In),则应当增大调整系数x,以使PCR(Out)逐步逼近PCR(In)。
在步骤S110,判断是否满足粗调结束条件,如果是,执行步骤S120;如果否,则执行步骤S140。
在步骤S120,清除粗调标志,转步骤S140。
在步骤S130,根据PCRdiff的值以预定微调步长修正调整系数x。与步骤S100中相同,当PCRdiff大于零时,意味着PCR(Out)超前于PCR(In),应当减小调整系数x;当PCRdiff小于零时,意味着PCR(Out)滞后于PCR(In),则应当增大调整系数x,以使PCR(Out)逐步逼近PCR(In)。
根据MPEG-2(Moving Picture Experts Group-2,运动图像专家组-2)标准,时钟精度应满足(27,000,000±810)MHz。因此,本发明推荐采用的预定粗调步长为3e-7,而在微调阶段,要尽可能地使输出码流的PCR抖动小,推荐采用的预定微调步长为1e-8。
在步骤S140,用复用器本地构造的PCR(Out)替换输出数据包中的PCR(In),完成PCR的调整。
需要说明的是,步骤S060和步骤S070中所检测的码流突变或码流中断是很少发生的,通常只有在输入端或传输过程中发生故障或意外情况时才会出现。而且,解码端在绝大多数情况下播放的节目会有中断或其他异常现象,在PCR(Out)与PCR(In)重新同步的过程中,解码端会表现为节目正在恢复正常,这时即使所需时间略长一些也是可以容忍的。因此,步骤S020、步骤S060至步骤S120是可选的,这些步骤可以缩短同步时间,但会增加复用器的工作负荷,推荐处理能力较强的复用器采用。
MPEG-1标准中,数据包中用于表示时钟的字长为33位,可以提供的时钟精度为90KHz;在发展到MPEG-2标准后,时钟精度提高到27MHz,而数据包中用于表示时钟的字长也增加到42位,其中前33位为基本区,后9位为扩展区。使用方法是将扩展区的后9位用作循环计数器,计数到300时,向33位基本区进位,同时扩展区计数器清零。因此,在将复用器本地构造的PCR(Out)写入数据包时,可以根据PCR(Out)与PCR(In)的二进制异或值得到需要修改原PCR(In)的二进制字长。当该字长不超过9位时,只需要用PCR(Out)的最低9位二进制数覆盖原PCR(In)的扩展区,而不必修改基本区;而当该字长超过9位时,则将PCR(Out)的全部二进制数覆盖原PCR(In)的扩展区和基本区。
以上所述是当一个包括PCR的数据包进入复用器后所进行的PCR调整过程。可见,PCR(Out)对PCR(In)的跟踪是一个逐步逼近的过程:当前构造PCR时采用的调整系数x的值是根据上一个构造的PCR与上一个PCR(In)的差值进行修正的,也就是说,每次对调整系数x进行的修正会在下一个本地构造的PCR(Out)上体现出来。在PCR(Out)与PCR(In)基本同步后,只需要在二者的偏差增大的情况下对PCR(Out)进行微小的调整即可保持良好的同步状态。这样,从复用器输出的PCR会保持输入PCR的精度,并且能够消除输入PCR的抖动,从而得到接近于理想的PCR。
本发明还提供了两个PCR调整装置,其中,图4所示为实现不进行粗调(即去掉可选的步骤S020、步骤S060至步骤S120后)的上述方法的装置,图5所示为实现完整上述方法的装置。
图4中,数据包处理单元430、基准系统时钟单元410和输出系统时钟单元420的功能与现有技术中相同。其中,基准系统时钟单元410向输出系统时钟单元420和节目参考时钟构造单元450提供本地基准时钟;数据包处理单元430完成码流复用,并配合其他单元完成PCR的调整。
当码流中包括PCR的数据包进入数据包处理单元430后,节目参考时钟读取单元460读取该数据包中PCR的输入值PCR(In),并将PCR(In)提供给调整系数修正单元440。
此时,输出系统时钟单元420中记录的是上一个包括PCR的数据包的实际输出复用器的时间STCpre(Out)。节目参考时钟构造单元450从输出系统时钟单元420读入STCpre(Out),据此估算当前包括PCR的数据包的预测输出时间STCcal(Out),并从调整系数修正单元440中读出当前调整系数x的值,再结合保存在本单元中的上一个构造PCR的输出值PCRpre(Out),根据公式(6)得出当前构造PCR的值PCR(Out):
节目参考时钟构造单元450将PCR(Out)输出到调整系数修正单元440和节目参考时钟写入单元470。调整系数修正单元440得到当前构造PCR的值PCR(Out)后,结合从节目参考时钟读取单元460得到的当前数据包的PCR输入值PCR(In),对调整系数x的值进行修正,使得PCR(Out)尽可能地接近于PCR(In)。修正后的调整系数x将用来生成下一个复用器本地构造的PCR(Out)。
节目参考时钟写入单元470从节目参考时钟构造单元450得到PCR(Out)后,将写入数据包处理单元430的输出数据包中,用PCR(Out)替换原来的PCR(In)。
数据包处理单元430将完成复用和PCR调整的数据包输出复用器,此时,输出系统时钟单元420记录包括PCR的数据包输出复用器的实际时间值,该时间值将用来生成下一个复用器本地构造的PCR(Out)。
图5所示的PCR调整装置为在图4中装置的基础上增加了调整系数的粗调功能。在码流突变或码流中断的情况下,需要增大调整系数x的变化步长,以使PCR(Out)尽快与PCR(In)同步。码流突变的判断条件是当前构造节目参考时钟的值PCR(Out)与当前数据包的节目参考时钟输入值PCR(In)的差值PCRdiff的绝对值超过预定码流突变阈值,码流中断的判断条件是当前数据包的到达时间STC(In)与包括上一个节目参考时钟的数据包的到达时间STCpre(In)的差值是否大于预定码流中断阈值。
因此,图5所示的装置中增加了输入系统时钟单元480,该单元根据基准系统时钟单元410提供的本地时钟,在每个包括节目参考时钟的数据包到达数据包处理单元430时,记录其到达时间STC(In)。
同时,调整系数修正单元440包括调整比较单元441、步长控制单元442和调整系数控制单元443。对调整系数x的修正以粗调步长或微调步长进行,调整比较单元441根据从其他单元读入的数据决定是否进行修正和以何种步长修正,步长值由步长控制单元442根据调整比较单元441的指令输出,而对调整系数x的修正和输出由调整系数控制单元443完成。
具体过程如下:在每个包括PCR的数据包到达数据包处理单元430时,输入系统时钟单元480记录其到达时间STC(In)。在节目参考时钟构造单元450生成本地构造的PCR(Out)前,由调整系数控制单元443向其提供当时的调整系数x;在节目参考时钟构造单元450生成PCR(Out)后,向调整比较单元441输出PCR(Out)。
调整比较单元441得到PCR(Out),从节目参考时钟读取单元460读入PCR(In),根据公式(5)得出其差值PCRdiff。同时,由输入系统时钟单元480读入STC(In),得出与保存的上一个包括PCR的数据包的到达时间STCpre(In)的差值(STC(In)-STCpre(In))。当(STC(In)-STCpre(In))超过预定码流中断阈值、或PCRdiff的绝对值超过预定码流突变阈值时,向步长控制单元442发送粗调指令。同时,调整比较单元441还要比较PCRdiff的绝对值是否超过预定调整阈值,在超过时向调整系数控制单元443发送调整指令。
步长控制单元442缺省向调整系数控制单元443输出的调整步长为预定微调步长,在接收到所述调整比较单元441的粗调指令后,在预定时间内输出预定粗调步长,或输出预定次数的预定粗调步长。输出预定时间内或预定次数的粗调步长可以根据实际应用中的条件设置,考虑到码流中的数据包之间具有的时间关系,这两种粗调结束条件对调整结果而言并没有大的差别。
调整系数控制单元443在接收到所述调整比较单元441的调整指令后,根据从调整比较单元441得到的PCRdiff的值和从步长控制单元442读入的调整步长,修正调整系数x,使PCR(Out)向PCR(In)逼近。当PCRdiff大于零时,将调整系数x减小调整步长;当PCRdiff小于零时,将调整系数x增大调整步长,修正后的调整系数x将用来生成下一个复用器本地构造的PCR(Out),使PCR(Out)逐步逼近PCR(In)。
在增加了粗调功能后,可以加快码流突变或码流中断后PCR重新同步的过程,使解码端的视音频更快地恢复。
在将复用器本地构造的PCR(Out)写入数据包中时,对应于本发明所述调整方法中的两种写入方式,还可以在上述装置中增加一个写入比较单元。请参见图5,写入比较单元490在得到节目参考时钟构造单元450输出的PCR(Out)后,从节目参考时钟读取单元读入PCR(In),根据PCR(Out)与PCR(In)的二进制异或值得出需要修改的PCR(In)的二进制字长。当该字长不超过9位时,写入比较单元490向节目参考时钟写入单元470输出写入扩展区指令;当该字长超过9位时,向节目参考时钟写入单元470输出写入基本区指令。
节目参考时钟写入单元470在接收的写入区域指令为写入扩展区指令时,将PCR(Out)的最低9位二进制数写入原PCR(In)的扩展区;在接收的写入区域指令为写入基本区指令时,将PCR(Out)的全部二进制数写入原PCR(In)的扩展区和基本区。
经过多次实验证明,在应用本发明后,能够校正PCR抖动高达到±15ms的码流,校正后的PCR抖动控制在±110ns(纳秒)之内,远远小于MPEG-2协议规定的±500ns。而本发明构造本地PCR可能引入的PCR误差在37ns之内,对解码端几乎没有任何影响。
为描述方便,在以上说明中只提到了一路输入码流,本发明同样适用于多路码流复用器,只需对各路码流分别进行PCR调整即可。
以上所述的本发明实施方式,并不构成对本发明保护范围的限定。任何在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的权利要求保护范围之内。
Claims (12)
1.一种节目参考时钟的调整方法,其特征在于,包括以下步骤:
a)从当前数据包中读取节目参考时钟的输入值PCR(In),根据本地时钟和设定的调整系数x得出当前构造节目参考时钟的值PCR(Out);
b)所述的当前构造节目参考时钟的值PCR(Out)减去当前数据包的节目参考时钟输入值PCR(In)得出二者间的差值PCRdiff;
c)判断所述差值PCRdiff的绝对值是否超过预定调整阈值,如果是,执行下一步;如果否,转步骤e);
d)根据所述差值PCRdiff修正所述调整系数x;
e)将所述当前构造节目参考时钟的值PCR(Out)替换输出数据包中的PCR(In)。
3、按照权利要求2所述节目参考时钟调整方法,其特征在于,步骤d)所述修正调整系数x的具体过程为:当所述差值PCRdiff大于零时,则调整系数x减小预定微调步长;当所述差值PCRdiff小于零时,则调整系数x增大预定微调步长。
4.按照权利要求2、3或4所述节目参考时钟调整方法,其特征在于,所述步骤c)与步骤d)之间包括:
cd1)判断所述差值PCRdiff的绝对值是否超过预定码流突变阀值,如果是,则置位粗调标志,设置粗调结束条件:如果否,则不做处理;
cd2)判断粗调标志是否置位,如果否,转步骤d);如果是,根据所述差值PCRdiff以预定粗调步长修正调整系数x;
cd3)判断是否满足粗调结束条件,如果是,则清除粗调标志,转步骤e);如果否,直接转步骤e)。
5.按照权利要求4所述节目参考时钟的调整方法,其特征在于,步骤cd1)所述粗调结束条件包括以下之一:预定粗调次数、预定粗调时间。
6.按照权利要求5所述节目参考时钟调整方法,其特征在于,所述步骤a)之前包括:记录当前数据包的到达时间STC(In);
所述步骤cd1)与步骤cd2)之间还包括:判断当前数据包的到达时间STC(In)与包括上一个节目参考时钟的数据包的到达时间STCpre(In)的差值是否大于预定码流中断阈值,如果是,则置位粗调标志,设置粗调结束条件;如果否,则不做处理。
7.按照权利要求6所述节目参考时钟的调整方法,其特征在于,步骤cd2)所述根据差值PCRdiff以预定粗调步长修正调整系数x具体为:当所述差值PCRdiff大于零时,则调整系数x减小预定粗调步长;当所述差值PCRdiff小于零时,则调整系数x增大预定粗调步长。
8.按照权利要求7所述节目参考时钟的调整方法,其特征在于:对第一个到达复用器的数据包,STCpre(Out)的初始值为当前数据包的预测输出时间STCcal(Out),PCRpre(Out)的初始值为当前数据包的节目参考时钟输入值PCR(In),调整系数x的初始值为1,STCpre(In)的初始值为当前数据包的到达时间STC(In)。
9.一种节目参考时钟的调整装置,包括数据包处理单元、基准系统时钟单元和输出系统时钟单元,其特征在于,还包括节目参考时钟构造单元、调节系数修正单元、节目参考时钟读取单元、节目参考时钟写入单元,其中:
所述节目参考时钟读取单元从进入数据包处理单元的输入数据包中读取节目参考时钟的输入值PCR(In),并将该值提供给调节系数修正单元;
所述节目参考时钟写入单元将节目参考时钟构造单元输出的当前构造节目参考时钟PCR(Out)替换数据包处理单元输出数据包中的PCR(In);
所述基准系统时钟单元为节目参考时钟构造单元和输出系统时钟单元提供本地基准时钟;
所述输出系统时钟单元记录包括节目参考时钟的数据包的实际输出的本地时间值,并将该时间值提供给节目参考时钟构造单元;
所述节目参考时钟构造单元根据本地时钟和设定的调整系数x得出当前构造节目参考时钟的值PCR(Out);
所述调整系数修正单元根据从节目参考时钟构造单元得到的当前构造节目参考时钟的值PCR(Out),与当前数据包中节目参考时钟输入值PCR(In)的差值对所述调整系数x进行修正。
11.按照权利要求9或10所述节目参考时钟的调整装置,其特征在于:还包括输入系统时钟单元,用于根据基准系统时钟单元提供的本地时钟,记录包括节目参考时钟的数据包到达数据包处理单元的本地时间STC(In);
所述调整系数修正单元包括调整比较单元、步长控制单元和调整系数控制单元,其中:
所述调整比较单元获得节目参考时钟构造单元输出的PCR(Out)、节目参考时钟读取单元输出的PCR(In)之间的差值PCRdiff,获得相邻两个包括节目参考时钟的输入数据包的到达时间差(STC(In)-STCpre(In));当(STC(In)-STCpre(In))超过预定码流中断阈值、或PCRdiff的绝对值超过预定码流突变阈值时,向所述步长控制单元发送粗调指令;当PCRdiff的绝对值超过预定调整阈值时,向所述调整系数控制单元发送调整指令;
所述步长控制单元向所述调整系数控制单元输出调整步长;缺省输出预定微调步长;在接收到所述调整比较单元的粗调指令后,在预定时间内输出预定粗调步长,或输出预定次数的预定粗调步长;
所述调整系数控制单元向节目参考时钟构造单元提供调整系数x;在接收到所述调整比较单元的调整指令后,根据从所述调整比较单元得到的PCRdiff的值和从所述步长控制单元输入的调整步长,修正调整系数x。
12.按照权利要求11所述节目参考时钟的调整装置,其特征在于:还包括写入比较单元,所述写入比较单元根据节目参考时钟构造单元输出的PCR(Out)、节目参考时钟读取单元输出的PCR(In)获得节目参考时钟发生变化的位数,向所述节目参考时钟写入单元输出写入区域指令;
所述节目参考时钟写入单元根据接收的写入区域指令和节目参考时钟构造单元输出的PCR(Out),将数据包中PCR(In)字段对应区域的值修改为PCR(Out)的值。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2005100554380A CN100407796C (zh) | 2005-03-17 | 2005-03-17 | 一种节目参考时钟调整的方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2005100554380A CN100407796C (zh) | 2005-03-17 | 2005-03-17 | 一种节目参考时钟调整的方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN1835597A true CN1835597A (zh) | 2006-09-20 |
CN100407796C CN100407796C (zh) | 2008-07-30 |
Family
ID=37003169
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2005100554380A Expired - Fee Related CN100407796C (zh) | 2005-03-17 | 2005-03-17 | 一种节目参考时钟调整的方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN100407796C (zh) |
Cited By (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1997162B (zh) * | 2006-12-25 | 2010-10-27 | 华为技术有限公司 | Pcr校正方法及装置 |
CN101051836B (zh) * | 2007-03-30 | 2012-01-11 | 北京中星微电子有限公司 | 传输流解码与编码定时同步的装置及方法 |
CN101848396B (zh) * | 2009-11-30 | 2012-10-17 | 深圳市华曦达科技股份有限公司 | 传输流音视频同步及防抖动方法 |
WO2013020441A1 (zh) * | 2011-08-05 | 2013-02-14 | 中兴通讯股份有限公司 | 相位跳变的处理方法及装置 |
CN103684733A (zh) * | 2013-09-28 | 2014-03-26 | 国家电网公司 | 一种时钟同步对时的自动校验方法及其专用设备 |
CN104320676A (zh) * | 2014-07-02 | 2015-01-28 | 浙江广播电视集团 | 一种视频传输流中节目时钟参考异常跳动校正的方法 |
CN106059697A (zh) * | 2015-04-14 | 2016-10-26 | Ls产电株式会社 | 用于时间同步的方法 |
CN106375823A (zh) * | 2016-10-08 | 2017-02-01 | 广东欧珀移动通信有限公司 | 一种时钟调节方法、装置、终端及多媒体同步播放系统 |
CN105306971B (zh) * | 2014-06-30 | 2019-07-12 | 惠州市伟乐科技股份有限公司 | 一种多节目pcr校正系统及方法 |
CN114598909A (zh) * | 2022-03-30 | 2022-06-07 | 青岛海信宽带多媒体技术有限公司 | 一种智能机顶盒及直播节目的时间轴显示方法 |
WO2023108500A1 (zh) * | 2021-12-15 | 2023-06-22 | 深圳Tcl新技术有限公司 | 一种数据处理方法、系统及存储介质和终端设备 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3666625B2 (ja) * | 1998-03-20 | 2005-06-29 | パイオニア株式会社 | データ記録方法およびデータ記録装置 |
JP3526225B2 (ja) * | 1998-11-04 | 2004-05-10 | シャープ株式会社 | デジタル放送受信装置 |
CN1720749B (zh) * | 2002-12-04 | 2010-12-08 | 三叉微系统(远东)有限公司 | 自动测试音频/视频同步的方法 |
CN100438635C (zh) * | 2002-12-16 | 2008-11-26 | 皇家飞利浦电子股份有限公司 | 用于修改视频信号的时基的系统 |
-
2005
- 2005-03-17 CN CN2005100554380A patent/CN100407796C/zh not_active Expired - Fee Related
Cited By (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1997162B (zh) * | 2006-12-25 | 2010-10-27 | 华为技术有限公司 | Pcr校正方法及装置 |
CN101051836B (zh) * | 2007-03-30 | 2012-01-11 | 北京中星微电子有限公司 | 传输流解码与编码定时同步的装置及方法 |
CN101848396B (zh) * | 2009-11-30 | 2012-10-17 | 深圳市华曦达科技股份有限公司 | 传输流音视频同步及防抖动方法 |
WO2013020441A1 (zh) * | 2011-08-05 | 2013-02-14 | 中兴通讯股份有限公司 | 相位跳变的处理方法及装置 |
CN103684733A (zh) * | 2013-09-28 | 2014-03-26 | 国家电网公司 | 一种时钟同步对时的自动校验方法及其专用设备 |
CN105306971B (zh) * | 2014-06-30 | 2019-07-12 | 惠州市伟乐科技股份有限公司 | 一种多节目pcr校正系统及方法 |
CN104320676B (zh) * | 2014-07-02 | 2017-07-28 | 浙江广播电视集团 | 一种视频传输流中节目时钟参考异常跳动校正的方法 |
CN104320676A (zh) * | 2014-07-02 | 2015-01-28 | 浙江广播电视集团 | 一种视频传输流中节目时钟参考异常跳动校正的方法 |
CN106059697A (zh) * | 2015-04-14 | 2016-10-26 | Ls产电株式会社 | 用于时间同步的方法 |
CN106059697B (zh) * | 2015-04-14 | 2019-03-22 | Ls产电株式会社 | 用于时间同步的方法 |
US10263760B2 (en) | 2015-04-14 | 2019-04-16 | Lsis Co., Ltd. | Method for time synchronization |
CN106375823A (zh) * | 2016-10-08 | 2017-02-01 | 广东欧珀移动通信有限公司 | 一种时钟调节方法、装置、终端及多媒体同步播放系统 |
CN106375823B (zh) * | 2016-10-08 | 2018-03-27 | 广东欧珀移动通信有限公司 | 一种时钟调节方法、装置、终端及多媒体同步播放系统 |
WO2023108500A1 (zh) * | 2021-12-15 | 2023-06-22 | 深圳Tcl新技术有限公司 | 一种数据处理方法、系统及存储介质和终端设备 |
CN114598909A (zh) * | 2022-03-30 | 2022-06-07 | 青岛海信宽带多媒体技术有限公司 | 一种智能机顶盒及直播节目的时间轴显示方法 |
CN114598909B (zh) * | 2022-03-30 | 2023-12-01 | 青岛海信宽带多媒体技术有限公司 | 一种智能机顶盒及直播节目的时间轴显示方法 |
Also Published As
Publication number | Publication date |
---|---|
CN100407796C (zh) | 2008-07-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN1835597A (zh) | 一种节目参考时钟调整的方法及装置 | |
CN1146159C (zh) | 数据多路复用器和数据多路复用方法 | |
CN1248505C (zh) | 用于处理包括传输流的数据流的方法和装置 | |
CN1315328C (zh) | 在一统计式多工器中决定传输比特率的方法及装置 | |
CN1112050C (zh) | 同步再生装置 | |
CN1255800C (zh) | 产生要记录的信息信号的方法和设备 | |
CN1196338C (zh) | 传送流编码器及对传送流编码的方法 | |
CN1726720A (zh) | 用于修改视频信号的时基的系统 | |
CN1902697A (zh) | 用于数字音频信号和数字音频/视频信号的时标修改方法和通过使用该方法的数字电视信号的可变速度再现方法 | |
CN1277722A (zh) | 对编码的a/v序列实行精确到帧的编辑 | |
CN1826812A (zh) | 视频编码器和编码视频的方法 | |
CN1476726A (zh) | 用于活动图像专家组(mpeg)传输流的程序时钟基准数据的再生 | |
CN1822507A (zh) | 多路传输设备以及多路传输数据发送与接收系统 | |
CN101056401A (zh) | 信息传送设备和信息传送方法 | |
CN1705017A (zh) | 数字信息再生装置和方法 | |
CN101079989A (zh) | 视频处理装置,及添加时间代码和准备编辑列表的方法 | |
CN1607815A (zh) | Av同步系统 | |
CN1189017C (zh) | 用于信息处理的装置和方法 | |
CN1106082C (zh) | 译码方法及其装置 | |
CN1650560A (zh) | 编码分组传送接收方法及其装置以及程序 | |
CN1284718A (zh) | 同步活动图像专家组解码器的方法和装置 | |
CN1878303A (zh) | 记录输出装置和记录输出方法 | |
CN1270540C (zh) | 声音图像多路复用数据生成装置和重放装置及生成重放方法 | |
CN1290334C (zh) | 用于校正时钟频率的方法、接收设备、再现设备和程序 | |
CN1863322A (zh) | 再现设备和方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
C17 | Cessation of patent right | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20080730 Termination date: 20130317 |