视音频同步方法

文档序号:7964179阅读:266来源:国知局
专利名称:视音频同步方法
技术领域
本发明属于数字多媒体处理技术领域,特别涉及一种视音频同步方法。
背景技术
目前流行的视音频编解码器都是混和编解码。也即是说这些编解码器均采用了,时间、空间的预测,变换,量化和熵编码的技术。这使得视音频流的数据量会依据数据源的内容的不同而有较大的差异,这样会产生以下的不匹配的现象。
这种不匹配包括以下两种情况首先,数据内容的差异会导致最终解码速度的波动,但是视音频的播放速度是均匀的,这样会产生解码速度和播放速度的矛盾;其次,视音频之间存在着同步关系,由于以上所述的解码速度波动,对视音频同步也存在很大的影响。
为解决以上问题,在目前流行的视音频标准中都采用在系统层加入时间标志的办法,这包括节目参考时钟和显示时间标签。节目参考时钟是系统的参考时钟,提供视音频系统总的时间上的依据,显示时间标签是视音频的播放时间的标签,视音频流中的显示时间标签提供各自的播放时间要求。所以将视音频的显示时间标签都以节目参考时钟为参考,以保证音视频同步的要求。
传统的解码器提取系统层中的显示时间标签后,将显示时间标签存入时间标签缓冲区中,而视音频基本流存入视音频基本流缓冲区中。视音频解码器从视音频基本流缓冲区读出视音频基本流进行解码,每完成一定量的数据(比如视频可能是一个图像帧,音频可能是一个音频帧)就从视音频各自的时间标签缓冲区中读出一个时间标签,最后根据读出的时间标签实现视音频同步。这种方案使用了两组独立的缓冲区基本流缓冲区和时间标签缓冲区,时间标签缓冲区中的时间标签与基本流缓冲区中的基本流的对应关系靠解码控制逻辑实现。但是实际应用中,视音频基本流数据往往会有误码,很容易造成解码出错或者缓冲区溢出(包括基本流缓冲区和时间标签缓冲区),这种情况下时间标签缓冲区中的时间标签与基本流缓冲区中的基本流的对应关系将会被打乱,这往往会引起视音频同步的错误传播。实践中可以采用增大基本流缓冲区和时间标签缓冲区的方法弥补种种方案的上述缺点,但是这会明显提高系统成本。

发明内容
本发明的目的就是针对现有技术的不足,提出了一种视音频同步方法,从而实现当视音频解码出错或者缓冲区溢出时不产生视音频同步的错误传播。
为了实现上述目的,本发明的视音频同步方法包括下列步骤a.数据多路分离器从系统层码流中提取视频基本流、音频基本流、节目参考时钟、视频显示时间标签和音频显示时间标签数据,并把视频显示时间标签和音频显示时间标签分别存入V_REG和A_REG寄存器中;b.把V_REG送入时间标签插入器,时间标签插入器检测视频基本流中的视频图像起始码,并在其后按照指定的规则插入带屏蔽位的视频显示时间标签,得到带有视频显示时间标签的视频基本流;c.把A_REG送入时间标签插入器,时间标签插入器检测音频基本流中的音频同步码,并在其后按照指定的规则插入带屏蔽位的音频显示时间标签,得到带有音频显示时间标签的音频基本流;d.把带有视频显示时间标签的视频基本流送入视频基本流缓冲区;e.把带有音频显示时间标签的音频基本流送入音频基本流缓冲区;f.视频解码器从视频基本流缓冲区读取数据后,分析带有视频显示时间标签的视频基本流中的图像起始码,并从中取出视频显示时间标签送入播放控制器;g.音频解码器从音频基本流缓冲区读取数据后,分析带有音频显示时间标签的音频基本流中的音频同步码,并从中取出音频显示时间标签送入播放控制器;h.播放控制器将视频显示时间标签和音频显示时间标签分别和节目参考时钟比较,根据比较结果和播放需要送出视音频播放控制信号。
需要特别指出的是,上述的步骤b、c可以独立工作,步骤d、e可以独立工作,步骤f、g可以独立工作。
本发明将时间标签分别插入视音频基本流中并一起存储在基本流缓冲区中,在不需要时间标签缓冲区的情况下实现时间标签与视音频基本流的对应,向后一级视音频解码和播放模块传递,从而达到将时间标签传递到播放控制模块的目的,同时由于时间标签和视音频基本流存在一个缓冲区,所以当视音频解码出错或者缓冲区溢出时不会出现视音频同步的错误传递。


图1是使用本发明方法的解码器的结构示意图。
具体实施例方式
如图1所示,该解码器包括以下模块数据多路分离器101、时间标签插入器102、视音频基本流缓冲区103、视频解码器104、音频解码器105、播放控制器106、系统时钟恢复器107。
各模块功能和本发明的实施过程如下数据多路分离器101从输入的TS流中提取需要的视音频基本流、节目参考时钟以及视音频PTS;将节目参考时钟送入系统时钟恢复器107,并把视音频基本流和视音频PTS送入时间标签插入器。
时间标签插入器102从视音频基本流中找出视频的图像起始码和音频的同步码,并在其后分别插入带有屏蔽位的视音频PTS,这样可以防止PTS的某些位可以产生与视频图像起始码或者音频同步码相同的码字,而引起在插入PTS后的基本流产生新的视频图像起始码和音频同步码。
视音频基本流缓冲区103分开存储添加过PTS的视频基本流和音频基本流。
视频解码器104检测视频图像起始码,从后面提取V_PTS;并在播放控制信号下解码。
音频解码器105检测音频同步码,从后面提取A_PTS;并在播放控制信号下解码。
播放控制器106根据V_PTS、A_PTS和系统时钟STC来调整播放。
系统时钟恢复器107根据节目参考时钟PCR恢复出本地的系统时钟STC,并送给播放控制器106。
其中时间标签插入器102的实施细节如下对于视频基本流,在码流中查找图像起始码,在其后插入带有屏蔽位的V_PTS,带有屏蔽位的V_PTS为屏蔽位----------------------------2’b11V_PTS有效-------------------------1-bitV_PTS[32:28]----------------------5-bit屏蔽位----------------------------1’b1V_PTS[27:21]----------------------7-bit屏蔽位----------------------------1’b1V_PTS[20:14]----------------------7-bit屏蔽位----------------------------1’b1V_PTS[13:7]-----------------------7-bit屏蔽位----------------------------1’b1V_PTS[6:0]------------------------7-bit对于一个新的V_PTS,当第一次找到视频的图像起始码时,置V_PTS有效位为1,而找到下一个视频的图像起始码,若V_PTS没有更新,则置V_PTS有效位为0,若V_PTS更新了,则置V_PTS有效位为1。
对于音频基本流,在码流中查找音频同步码,在其后插入带有屏蔽位的A_PTS,带有屏蔽位的A_PTS为
1、A_PTS有效等于1时屏蔽位----------------------------2’b0A_PTS有效-------------------------1’b1A_PTS[32:28]----------------------5bit屏蔽位----------------------------1’b0A_PTS[27:21]----------------------7bit屏蔽位----------------------------1’b0A_PTS[20:14]----------------------7bit屏蔽位----------------------------1’b0A_PTS[13:7]-----------------------7bit屏蔽位----------------------------1’b0A_PTS[6:0]------------------------7bit屏蔽位----------------------------8’b02、A_PTS有效等于0时屏蔽位----------------------------2’b0A_PTS有效-------------------------1’b0屏蔽位----------------------------13’b0对于一个新的A_PTS,当第一次找到音频同步码时,置A_PTS有效位为1,而找到下一个音频同步码,若A_PTS没有更新,则置A_PTS有效位为0,若A_PTS更新了,则置A_PTS有效位为1。由于音频同步码在音频基本流中非同步码的部分也可能出现,所以对于音频,在A_PTS有效位等于0的情况下,插入的数据量非常小。有利用节省基本流缓冲区的空间。
如上所述,本发明的视音频同步方法,将时间标签分别插入视音频基本流中并一起存储在基本流缓冲区中,在不需要时间标签缓冲区的情况下实现时间标签与视音频基本流的对应,当视音频解码出错或者缓冲区溢出时不产生视音频同步的错误传播。
尽管本发明是参照其优选实施例来具体描述的,但本领域的技术人员应该理解,在不脱离有所附权利要求限定的本发明的精神和范围的情况下,可以对其进行形式和细节的各种修改。
权利要求
1.视音频同步方法,其特征在于该方法包含以下步骤a.数据多路分离器从系统层码流中提取视频基本流、音频基本流、节目参考时钟、视频显示时间标签和音频显示时间标签数据,并把视频显示时间标签和音频显示时间标签分别存入V_REG和A_REG寄存器中;b.把V_REG送入时间标签插入器,时间标签插入器检测视频基本流中的视频图像起始码,并在其后按照指定的规则插入带屏蔽位的视频显示时间标签,得到带有视频显示时间标签的视频基本流;c.把A_REG送入时间标签插入器,时间标签插入器检测音频基本流中的音频同步码,并在其后按照指定的规则插入带屏蔽位的音频显示时间标签,得到带有音频显示时间标签的音频基本流;d.把带有视频显示时间标签的视频基本流送入视频基本流缓冲区;e.把带有音频显示时间标签的音频基本流送入音频基本流缓冲区;f.视频解码器从视频基本流缓冲区读取数据后,分析带有视频显示时间标签的视频基本流中的图像起始码,并从中取出视频显示时间标签送入播放控制器;g.音频解码器从音频基本流缓冲区读取数据后,分析带有音频显示时间标签的音频基本流中的音频同步码,并从中取出音频显示时间标签送入播放控制器;h.播放控制器将视频显示时间标签和音频显示时间标签分别和节目参考时钟比较,根据比较结果和播放需要送出视音频播放控制信号。
2.如权利要求1所述的视音频同步方法,其特征在于所述的步骤b、c可以独立工作,步骤d、e可以独立工作,步骤f、g可以独立工作。
全文摘要
本发明涉及一种视音频同步方法。本发明将时间标签分别插入视音频基本流中并一起存储在基本流缓冲区中,在不需要时间标签缓冲区的情况下实现时间标签与视音频基本流的对应,向后一级视音频解码和播放模块传递。从而达到当视音频解码出错或者缓冲区溢出时不产生视音频同步的错误传播的目的,同时降低系统成本。
文档编号H04N7/62GK1878315SQ20061009890
公开日2006年12月13日 申请日期2006年7月14日 优先权日2006年7月14日
发明者梁坚, 庞智博, 朱梦尧 申请人:杭州国芯科技有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1