基于简化时间戳的音视频同步方法技术

技术编号:9225069 阅读:563 留言:0更新日期:2013-10-04 18:35
基于简化时间戳的音视频同步方法,首先产生一个计数器作为时间戳提供源,对原始输入图像和音频独立按帧创建时间戳;当音视频帧编码完成后,将时间戳打入码流帧固定字段,复合组帧。当接收到码流复合帧时,提取时间戳并解码,将恢复数据和时间戳存入缓冲区队列。播放音频时,监测音频缓冲区的空满程度,若超过限定阈值,则采用音频跳帧或重复帧调整流内失步;播放视频时,对当前待播放的视频帧与流内同步后的音频帧进行时间戳比较,若差值超过设定阈值,则采用视频跳帧或重复帧调整流间失步。本发明专利技术引入一个时间戳字段,通过缓冲区空满和时间戳差值判别流内流间失步,无需全局时钟,资源占用少;采用跳帧重复帧进行同步,简单高效。

【技术实现步骤摘要】

【技术保护点】
基于简化时间戳的音视频同步方法,其特征在于步骤如下:1)采用一个连续工作的计数器作为时钟源;接收原始视频和原始音频信号,当检测到一帧原始视频或一帧原始音频起始信号后;记录下当前时钟源的数值作为该帧视频时间戳或音频时间戳;当该帧完整接收后,启动音频或视频编码处理;当该帧编码完成后,获得该帧的码流帧;将该帧的时间戳插入码流帧的帧头后;送入码流发送存储区等待发送;2)当码流发送存储区内存有等待发送的音频码流或视频码流时,将该音频码流或视频码流填充到复合帧中的指定位置;当码流发送存储区内没有等待发送的音频码流或视频码流时,在复合帧中对应音频码流或视频码流的指定位置填充无效数据;然后将复合帧发往信道;所述的复合帧包括音频码流、视频码流、帧头、校验位;3)信道接收端接收到复合帧时,将复合帧中的音频码流、视频码流进行分离;将分离后带时间戳的音频码流和视频码流帧分别送至预先设置好的音频码流数据缓冲区队列和视频码流数据缓冲区队列中,等待解码;4)对音频码流数据缓冲区队列和视频码流数据缓冲区队列进行检测,当检测到有等待解码的码流帧时,调用解码器进行解码,获得解码数据;设置音频输出缓冲区队列、视频输出缓冲区队列、音频时间戳缓冲区队列、视频时间戳缓冲区队列;将得到的解码数据存入音频输出缓冲区队列或视频输出缓冲区队列,并将码流帧中的音频时间戳或视频时间戳送入对应的音频时间戳缓冲区队列或视频时间戳缓冲区队列;5)设置视频输出缓冲区队列中视频缓存帧数的上下门限和音频输出缓冲区队列中音频缓存帧数的上下门限;当视频缓存帧数和音频缓存帧数均满足下门限,或音频缓存帧数达到上门限时,启动音频播放;否则输出静默帧;音频播放时,当音频缓存帧数低于其下门限,则进行重复帧操作,当音频缓存帧数高于其上门限,则进行跳帧操作;设置一个全局音频时间戳,全局音频时间戳的 值等于音频时间戳缓冲区队列中当前播放音频帧的时间戳的值,全局音频时间戳随音频播放实时更新;6)当视频缓存帧数和音频缓存帧数均满足下门限,或视频缓存帧数达到上门限时,启动视频播放;否则输出蓝屏帧;设置时间戳正负失步门限;视频播放时,计算视频时间戳缓冲区队列中当前待播放视频的时间戳与当前全局音频时间戳的差值,若差值大于正失步门限,进行重复帧操作,若差值小于负失步门限,则进行跳帧操作,否则正常输出当前帧。...

【技术特征摘要】

【专利技术属性】
技术研发人员:胡宇余福荣王婷高蔚李爽王书省
申请(专利权)人:航天恒星科技有限公司
类型:发明
国别省市:

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

1