一种视频传输流中节目时钟参考异常跳动校正的方法技术

技术编号:10961913 阅读:135 留言:0更新日期:2015-01-28 14:24
本发明专利技术公开了一种视频传输流中节目时钟参考异常跳动校正的方法,通过利用传输流中PCR跳动发生之前统计分析出的PCR分布规律,在跳动发生时,用最新历史规律重建近期时钟,将修正之后的PCR与实际PCR值之间误差控制在±500ns以内,有效排除了PCR跳动导致解码、重封装等音视频录制处理过程中产生的异常。本方案适用于数字音视频处理播放领域。

【技术实现步骤摘要】
一种视频传输流中节目时钟参考异常跳动校正的方法
本专利技术属于计算机设计与应用
,涉及计算机软件、多媒体技术以及视音频处理技术,特别涉及一种数字视频广播传输流中节目时钟参考异常跳动校正的方法。
技术介绍
节目时钟参考简称PCR(英文全称:programclockreference),是实时传输系统中,为了保证收发端的正常工作,接收端与发射端的频率和相位一致,建立收发端的同步时钟。PCR由33bit基值(Base)和9bit扩展值(Extension)组成,PCR值以系统参考时钟周期为单位记录了源端的时间信息。在发端,将27MHz时钟进行计数,形成PCR值,然后每隔一段时间将PCR值注入码流中传送给收端;收端有一个正在工作的本地时钟,其额定频率与发端时钟相等,同样也有一个计数器对它计数形成一个本地时钟参考.这时发端会将PCR从传送流中提出来,与音频帧、视频帧的编码信息插入PES包中,接收端将音频帧、视频帧中的PCR值放在缓存器中,等待比较发端的音视频中的值出现,然后用比较的结果控制压控振荡器(VCXO),通过调整使收发端的频率锁相,从而实现收发端声音和图像完全同步。通常情况下,传输流经过复用和再复用后,PCR值并不能完全精确地反映信源编码端的时间信息,这种现象称为PCR抖动(PCRjitter)。数字视频广播系统中,传输的内容多为基于MPEG2的传输流(MPEG2-TS),为此传送流中的节目时钟参考(PCR)对MPEG2-TS流的传输速率、对接收终端解码器、重封装的正确执行等起着至关重要的作用。在全台收录系统试运行过程中,由于传输链路中某些设备的不稳定性,导致从卫星或有线数字电视收入的多个传输流信源中,都存在节目时钟参考(PCR)会偶然发生意外的大距离无规则的离散跳动现象,如果不进行校正或者校正精度不能满足要求,解码后的图像会出现周期性的黑屏、马赛克现象,严重时解码器、流封包器等的直接崩溃,导致整个收录系统极不稳定。中华人民共和国国家知识产权局于2010年09月29日公开了申请公布号为CN101848396A的专利文献,名称是传输流音视频同步及防抖动方法,具体步骤为:将获取的第一次节目时钟参考设置为基准时间;判断网络是否发生抖动;如是,更新基准时间;否则,进行下一步骤;根据基准时间以及音频展现时间戳或者视频展现时间戳计算音频有效时间戳或者视频有效时间戳。此方案解决的是节目时钟参考小范围抖动的问题,而对于大距离无规则的跳动,则无法妥善处理。
技术实现思路
本专利技术主要是解决现有技术所存在的不能处理节目时钟参考大距离无规则的离散跳动现象的技术问题,提供一种对大距离无规则的离散跳动进行校正,使解码后的图像能够正常播放的视频传输流中节目时钟参考异常跳动校正的方法。本专利技术针对上述技术问题主要是通过下述技术方案得以解决的:一种视频传输流中节目时钟参考异常跳动校正的方法,设本机时钟参考为f(t),传输流中的节目时钟参考为F(t);本机时钟参考和节目时钟参考在同一个时间点t的差值α(t)=f(t)-F(t),给定时间周期T内的最大差值为αmax,最小差值为αmin;两个连续的时间点t和t+1的节目时钟参考之间的差值为β(t+1,t)=F(t+1)-F(t),给定时间周期T内的最大差值为βmax,最小差值为βmin;节目时钟参考的两个时间点之间传输的数据量为B(t+1,t),可以得到两个时间点之间的码率为ζ(t+1,t)=B(t+1,t)/(F(t+1)-F(t)),给定时间周期T内的最大码率为ζmax,最小码率为ζmin;当两个相邻时间点F(m)和F(m+1)之间的差值的绝对值大于阈值时,认为发生异常跳动,设发生跳动的时候,本机时钟为f(m),αend=f(m)-F(m),βend=F(m)-F(m-1),ζend=B(m,m-1)/βend,此时对F(m+1)采用以下方法修正:Fc1(m+1)=f(m+1)+(αmin+αmax+4×αend)/6;Fc2(m+1)=F(m)+(βmin+βmax+4×βend)/6;Fc3(m+1)=F(m)+B(m+1,m)/(ζmin+ζmax+4×ζend)/6;Fc(m+1)=(Fc1(m+1)+2×Fc2(m+1)+3×Fc3(m+1))/6;式中,Fc3(m+1)、Fc3(m+1)和Fc3(m+1)为中间变量,Fc(m+1)为修正后的对应m+1时间点的节目时钟参考;对于m+2时间点及后续时间点的节目时钟参考,按以下方法修正:Fc(n)=Fc(n-1)+(F(n)-F(n-1))n≥m+2。认为发生异常跳动的阈值一般为100000,即PCR计数值差大于100000,每计数代表27M时钟的300分频。作为优选,对于m+2时间点及后续时间点的节目时钟参考,当出现βmin≤F(s)-Fc(s-1)≤βmax,s≥m+2,并且s时间点和开始修正的m+1时间点之间的时间间隔s-(m+1)小于1秒,则对F(s)及后续的节目时钟参考不进行修正。作为优选,出现权2所述的情形以后,对于s时间点及后续时间点的节目时钟参考,当出现F(k)和F(k-1)的差值的绝对值大于阈值,k-1>n,且Fc(k-1)-Fc(s-1)+βmin≤F(k)-F(s-1)≤Fc(k-1)-Fc(s-1)+βmax,且k时间点和s-1时间点之间的时间间隔k-(s-1)小于1秒,则对F(k)按以下方法修正:Fc1(k)=f(k)+(αmin+αmax+4×αend)/6;Fc2(k)=F(k-1)+(βmin+βmax+4×βend)/6;Fc3(k)=F(k-1)+B(m+1,m)/(ζmin+ζmax+4×ζend)/6;Fca(k)=(Fc1(k)+2×Fc2(k)+3×Fc3(k))/6;Fcb(k)=Fc(s-1)+(F(k)-F(s-1));如果Fcb(k)>Fc(k-1),则Fc(k)=Fcb(k),否则Fc(k)=Fca(k);对于k时间点以后的节目时钟参考,按以下方法修正:Fc(u)=Fc(u-1)+(F(u)-F(u-1))u≥k+1。k和k+1为连续的时间点。作为优选,所述给定时间周期T的取值范围是100毫秒至1000毫秒。修正之后的PCR与实际PCR值之间误差控制在±500ns以内,解码器按照修正后的PCR进行播放,可以得到正常的图像。本专利技术带来的实质性效果是,利用传输流中PCR跳动发生之前统计分析出的PCR分布规律,在跳动发生时,用最新历史规律重建近期时钟,解决了PCR偶然发生的大距离无规则的离散跳动问题,避免了解码后的图像出现周期性的黑屏、马赛克甚至是解码器、流封包器崩溃的现象,使整个收录系统稳定。附图说明图1是本专利技术的一种小区段偏离跳动示意图;图2是本专利技术的一种前向跃动示意图;图3是本专利技术的一种后向跃动示意图;图4是本专利技术的一种小区间重复跳动示意图。具体实施方式下面通过实施例,并结合附图,对本专利技术的技术方案作进一步具体的说明。实施例:本机时钟与传输流中PCR关联规律,设本机时钟为f(t),传输流中时钟为F(t),可以得到两时钟同一个时间点的差值α(t)=f(t)-F(t),由于PCR的抖动,α值不同时刻不是同一个值,但通常情况下较短的一个周期T内,α值将在一个较为恒本文档来自技高网
...
一种视频传输流中节目时钟参考异常跳动校正的方法

【技术保护点】
一种视频传输流中节目时钟参考异常跳动校正的方法,其特征在于,设本机时钟参考为f(t),传输流中的节目时钟参考为F(t);本机时钟参考和节目时钟参考在同一个时间点t的差值α(t)= f(t)‑ F(t),给定时间周期T内的最大差值为αmax,最小差值为αmin;两个连续的时间点t和t+1的节目时钟参考之间的差值为β(t+1,t)= F(t+1)‑ F(t),给定时间周期T内的最大差值为βmax,最小差值为βmin;节目时钟参考的两个时间点之间传输的数据量为B(t+1,t),可以得到两个时间点之间的码率为ζ(t+1,t)= B(t+1,t) /(F(t+1)‑ F(t)),给定时间周期T内的最大码率为ζmax,最小码率为ζmin;当两个相邻时间点F(m)和F(m+1)之间的差值的绝对值大于阈值时,认为发生异常跳动,设发生跳动的时候,本机时钟为f(m),αend= f(m)‑ F(m),βend= F(m)‑ F(m‑1),ζend= B(m,m‑1)/ βend,此时对F(m+1)采用以下方法修正:Fc1(m+1)=f(m+1)+ (αmin+αmax+4×αend)/6;Fc2(m+1)=F(m)+( βmin+βmax+4×βend)/6;Fc3(m+1)=F(m)+B(m+1,m)/(ζmin+ζmax+4×ζend)/6;Fc(m+1)= (Fc1(m+1)+ 2×Fc2(m+1)+ 3×Fc3(m+1))/6;式中,Fc3(m+1)、 Fc3(m+1)和 Fc3(m+1)为中间变量, Fc(m+1)为修正后的对应m+1时间点的节目时钟参考;对于m+2时间点及后续时间点的节目时钟参考,按以下方法修正:Fc(n)= Fc(n‑1)+(F(n)‑F(n‑1))   n≥m+2。...

【技术特征摘要】
1.一种视频传输流中节目时钟参考异常跳动校正的方法,其特征在于,设本机时钟参考为f(t),传输流中的节目时钟参考为F(t);本机时钟参考和节目时钟参考在同一个时间点t的差值α(t)=f(t)-F(t),给定时间周期T内的最大差值为αmax,最小差值为αmin;两个连续的时间点t和t+1的节目时钟参考之间的差值为β(t+1,t)=F(t+1)-F(t),给定时间周期T内的最大差值为βmax,最小差值为βmin;节目时钟参考的两个时间点之间传输的数据量为B(t+1,t),可以得到两个时间点之间的码率为ζ(t+1,t)=B(t+1,t)/(F(t+1)-F(t)),给定时间周期T内的最大码率为ζmax,最小码率为ζmin;当两个相邻时间点F(m)和F(m+1)之间的差值的绝对值大于阈值时,认为发生异常跳动,设发生跳动的时候,本机时钟为f(m),αend=f(m)-F(m),βend=F(m)-F(m-1),ζend=B(m,m-1)/βend,此时对F(m+1)采用以下方法修正:Fc1(m+1)=f(m+1)+(αmin+αmax+4×αend)/6;Fc2(m+1)=F(m)+(βmin+βmax+4×βend)/6;Fc3(m+1)=F(m)+B(m+1,m)/(ζmin+ζmax+4×ζend)/6;Fc(m+1)=(Fc1(m+1)+2×Fc2(m+1)+3×Fc3(m+1))/6;式中,Fc1(m+1)、Fc2(m+1)和Fc3(m+1)为中间变量,Fc(m+1)为修正后的对应m+1时间点的节目时钟参考;对于m+2时间点及后续时间点的节目时钟参考,按以下方法修正:Fc(n)=Fc(n-1)+(F(n)-F(n...

【专利技术属性】
技术研发人员:郑红哲仇玉萍吴宇超赵凡吕连新
申请(专利权)人:浙江广播电视集团杭州联汇数字科技有限公司
类型:发明
国别省市:浙江;33

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

1