一种基于频差检测和补偿的PCR校正方法和系统技术方案

技术编号:33082269 阅读:31 留言:0更新日期:2022-04-15 10:38
本发明专利技术提供一种基于频差检测和补偿的PCR校正方法、系统,方法包括以下步骤:接收TS码流,从所述TS码流中获取PCR值,从本地计数器中获取本地计数器值;根据所述PCR值和本地计数器值计算本地时钟与源端时钟的频差信息;根据所述频差信息,对本地时基进行同步及频差补偿;利用频差补偿后的本地时基对PCR值进行再生校正。本发明专利技术相对于传统方法,频差计算的收敛时间要大大缩短,其得到足够精度的频差信息是按指数级速度收敛的,具有更高的实用意义,得到本地时钟与源端时钟的频差信息后,则可以利用频差信息来对本地再生的PCR值进行补偿。利用频差信息来对本地再生的PCR值进行补偿。利用频差信息来对本地再生的PCR值进行补偿。

【技术实现步骤摘要】
一种基于频差检测和补偿的PCR校正方法和系统


[0001]本专利技术涉及数字领域,更具体地,涉及一种基于频差检测和补偿的PCR校正方法和系统。

技术介绍

[0002]电视运动图像及伴音在数字化以后通常是使用TS流(Transport Stream,传送数据流)的格式传输。TS传输流在应用的过程中,经常需要进行节目的复用操作,复用后的节目PCR包的位置变更,PCR值所指示的时间信息已不准确,需要进行PCR校正,以保证后端设备能从流中依靠PCR准确地恢复出编码端时钟及进行解码操作。
[0003]现有的PCR校正算法,有三种方式:
[0004]第一种是再生型PCR校正,其核心思想就是用源端输入的PCR对本地PCR进行初始同步,然后依靠本地时钟再生复用后的PCR值。再生型PCR校正具有简单、方便、多节目同时校正,且无需考虑接口转换形式等优点,尤其适用于IP输入输出接口。其缺点在于由于源端时钟与本地时钟存在频差,长时间的运行将导致PCR与PTS/DTS之间的误差逐步累积,解码端会出现ES缓存溢出无法解码现象,因此为了解决ES缓存溢出无法解码问题,需要本地时钟定期同步源时钟,而在同步源时钟操作的初始化本地计数器的瞬间会影响到PCR精度指标,这是周期性的,只要频差问题不解决,再生型PCR校正无法从根源上解决这个问题。
[0005]第二种是跟随型PCR校正,其核心思想是使用本地时钟进行时间戳计数,在码流输入端打上输入时间戳标签,经过复用码率调整之后再打上输出时间标签,通过输入输出时间戳确定PCR包在系统中的时延,并将此时延叠加到原PCR值上。跟随型的PCR校正方法,其优点是不会因此引入本地时钟与源时钟的频差因素,只要源端PCR正常即可保证输出端PCR正常。其缺点是其使用有较严格的限制条件:一是必须保证TS传输流在输入侧和输出侧TS包都是均匀间隔的,不能有抖动的存在,否则TS包的抖动将会引入到PCR精度中,从而影响PCR校正结果;二是必须保证输入的TS流其PCR是正常的,跟随型的PCR校正无法对源端错误的PCR指标进行校正回来。
[0006]第三种是完全用本地时钟再生PCR、PTS和DTS,这种方式优点是无需考虑源端时钟与本地时钟的频差,也无需输入输出码流均匀及是PCR是否正常等限制。但是此种方式的缺点是实现起来最为复杂,处理模块多,资源消耗最大,很难应用于多通道多节目场景。
[0007]现有技术公开了一种基于直通音频的TS传输流音视频同步装置和方法,所述TS再编码模块,用于对源TS传输流进行再编码,获得再编码TS传输流;所述音频延时模块,用于将源TS传输流中的音频包进行延时,延时的时间对应为源TS传输流再编码所需时间;所述频差计算模块,用于计算并输出源编码基准时钟与再编码基准时钟之间的频率偏差表征量;所述校准模块,用于根据所述频差计算模块所输出的频率偏差表征量,校准再编码TS传输流;所述码流复用模块,将校准后的再编码TS传输流与延时后的源TS传输流中的音频包进行复用输出。但是该方案无法解决TS码流传输时由于抖动出现的偏差问题。

技术实现思路

[0008]本专利技术的首要目的是提供一种基于频差检测和补偿的PCR校正方法,能够检测TS流源端和本地端时钟的频差特性,且解决了TS码流传输时由于抖动出现的偏差问题。
[0009]本专利技术的进一步目的是一种基于频差检测和补偿的PCR校正系统。
[0010]为解决上述技术问题,本专利技术的技术方案如下:
[0011]一种基于频差检测和补偿的PCR校正方法,包括以下步骤:
[0012]接收TS码流,从所述TS码流中获取PCR值,从本地计数器中获取本地计数器值;
[0013]根据所述PCR值和本地计数器值计算本地时钟与源端时钟的频差信息;
[0014]根据所述频差信息,对本地时基进行同步及频差补偿;
[0015]利用频差补偿后的本地时基对PCR值进行再生校正。
[0016]本地时基与本地计数器为不同的计数器,其中本地计数器的作用是用来和源端PCR值进行比较运算得到本地时钟和源端时钟的频差信息,在整个校正过程中是不调整的。而本地时基是另外一个计数器,本地时基会根据前面检测得到的频差进行补偿调整,使本地时基跟源端的时钟频率接近,实现了大部分的误差补偿。
[0017]优选地,从所述TS码流中获取PCR值,具体为:
[0018]所述TS码流包括若干PCR包,所述获取PCR值为获取每个PCR包中对应的PCR值。
[0019]优选地,所述从本地计数器中获取本地计数器值,具体为:
[0020]所述本地计数器值为接收到TS码流中每个PCR包时对应的本地计数器值。
[0021]优选地,根据所述PCR值和本地计数器值计算本地时钟与源端时钟的频差信息,具体为:
[0022]根据本地时钟计数器值计算本地计数器差值:
[0023]ΔCnt
n
'=Cnt
n
'

Cnt0'
[0024]式中,ΔCnt
n
'为第n+1个PCR包时对应的本地计数器差值,Cnt
n
'表示接收到TS码流中第n+1个PCR包时对应的本地计数器值,Cnt0'表示接收到TS码流中第1个PCR包时对应的本地计数器值;
[0025]根据所述PCR值计算PCR差值:
[0026]ΔPCR
n
=PCR
n

PCR0[0027]式中,ΔPCR
n
为第n+1个PCR包时对应的PCR差值,PCR
n
表示第n+1个PCR包对应的PCR值,PCR0表示第1个PCR包对应的PCR值;
[0028]计算第一参数A
n

[0029][0030]计算第二参数B
n

[0031][0032]所述本地时钟与源端时钟的频差信息Δf'为:
[0033]Δf'=floor(10
M
×
A
n
/B
n
)
[0034]式中,floor()为取整函数,M为大于等于6的整数。
[0035]优选地,根据所述频差信息,对本地时基进行同步及频差补偿,具体为:
[0036]根据所述PCR值对本地时基进行初始同步,然后本地时基按照本地时钟进行计数,在计数过程中使用频差信息对本地时基进行均匀化补偿。
[0037]优选地,还包括将初步再生校正的PCR值与从TS码流中获取的PCR值比较,判断是否存在偏差,若存在偏差,则对本地时基进行偏差补偿,由本地时基得到最终校正的PCR值。
[0038]优选地,所述将初步再生校正的PCR值与从TS码流中获取的PCR值比较,判断是否存在偏差,具体为:
[0039]将校正后的PCR值与从所述TS码流中获取的PCR值作差,连续监测N次所述差值,如果所述差值均为正值或负值,则判断存在偏差。<本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于频差检测和补偿的PCR校正方法,其特征在于,包括以下步骤:接收TS码流,从所述TS码流中获取PCR值,从本地计数器中获取本地计数器值;根据所述PCR值和本地计数器值计算本地时钟与源端时钟的频差信息;根据所述频差信息,对本地时基进行同步及频差补偿;利用频差补偿后的本地时基对PCR值进行再生校正。2.根据权利要求1所述的基于频差检测和补偿的PCR校正方法,其特征在于,从所述TS码流中获取PCR值,具体为:所述TS码流包括若干PCR包,所述获取PCR值为获取每个PCR包中对应的PCR值。3.根据权利要求2所述的基于频差检测和补偿的PCR校正方法,其特征在于,所述从本地计数器中获取本地计数器值,具体为:所述本地计数器值为接收到TS码流中每个PCR包时对应的本地计数器值。4.根据权利要求3所述的基于频差检测和补偿的PCR校正方法,其特征在于,根据所述PCR值和本地计数器值计算本地时钟与源端时钟的频差信息,具体为:根据本地时钟计数器值计算本地计数器差值:ΔCnt
n
'=Cnt
n
'

Cnt0'式中,ΔCnt
n
'为第n+1个PCR包时对应的本地计数器差值,Cnt
n
'表示接收到TS码流中第n+1个PCR包时对应的本地计数器值,Cnt0'表示接收到TS码流中第1个PCR包时对应的本地计数器值;根据所述PCR值计算PCR差值:ΔPCR
n
=PCR
n

PCR0式中,ΔPCR
n
为第n+1个PCR包时对应的PCR差值,PCR
n
表示第n+1个PCR包对应的PCR值,PCR0表示第1个PCR包对应的PCR值;计算第一参数A
n
:计算第二参数B
n
:所述本地时钟与源端时钟的频差信息Δf'为:Δf'=floor(10
M
×
A
n
/B
n
)式中,floor()为取整函数,M为大于等于...

【专利技术属性】
技术研发人员:黄化吉江锐袁金保
申请(专利权)人:伟乐视讯科技股份有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1