[发明专利]基于简化时间戳的音视频同步方法有效
申请号: | 201310287533.8 | 申请日: | 2013-07-10 |
公开(公告)号: | CN103338386A | 公开(公告)日: | 2013-10-02 |
发明(设计)人: | 胡宇;余福荣;王婷;高蔚;李爽;王书省 | 申请(专利权)人: | 航天恒星科技有限公司 |
主分类号: | H04N21/236 | 分类号: | H04N21/236;H04N21/434;H04N21/24;H04N21/8547 |
代理公司: | 中国航天科技专利中心 11009 | 代理人: | 安丽 |
地址: | 100086 *** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 基于 简化 时间 视频 同步 方法 | ||
技术领域
本发明涉及一种基于简化时间戳的音视频同步方法,应用于音视频传输与处理领域。
背景技术
多媒体数据中的音视频等相关媒体之间及媒体流内通常存在着较严格的时序关系,在经过存储、处理和传输过程后,媒体间和媒体内通常会出现展现时间不一致的现象,影响用户的视听感受。时间戳同步技术是指通过时间戳来实现媒体间同步的一种技术。时间戳是用于同步的时间信息,其记录可以有多种表达形式。发送方把时间戳信息装载在数据分组中进行传输,接收方根据时间戳对不同对象进行同步。
目前,基于时间戳方法制定的标准协议(例如IETF制定的RTP/RTCP协议)都是针对多终端、大规模、网络环境的应用场合。它们通常需要维护一个全网同步化时钟,需要对时间戳协议进行较多处理,需要全局时间协议的支持以及本地系统时钟的调整,复杂度较高,资源开销较大。而一些基于标准协议提出的无全网同步化时钟的时间戳方法则是采用反馈机制来控制发送方的传输速率,或是在数据发送前进行同步预处理。这些方法同样需要占用一定的系统资源,在针对点到点、信道较稳定的应用场合时,效费比不高。
发明内容
本发明解决的技术问题是:克服现有技术的不足,提供一种基于简化时间戳的音视频同步方法,解决了面向点对点、信道稳定应用场合时现行标准协议方法实现复杂,系统资源开销过大的问题。
本发明的技术方案是:基于简化时间戳的音视频同步方法,步骤如下:
1)采用一个连续工作的计数器作为时钟源;接收原始视频和原始音频信号,当检测到一帧原始视频或一帧原始音频起始信号后;记录下当前时钟源的数值作为该帧视频时间戳或音频时间戳;当该帧完整接收后,启动音频或视频编码处理;当该帧编码完成后,获得该帧的码流帧;将该帧的时间戳插入码流帧的帧头后;送入码流发送存储区等待发送;
2)当码流发送存储区内存有等待发送的音频码流或视频码流时,将该音频码流或视频码流填充到复合帧中的指定位置;当码流发送存储区内没有等待发送的音频码流或视频码流时,在复合帧中对应音频码流或视频码流的指定位置填充无效数据;然后将复合帧发往信道;所述的复合帧包括音频码流、视频码流、帧头、校验位;
3)信道接收端接收到复合帧时,将复合帧中的音频码流、视频码流进行分离;将分离后带时间戳的音频码流和视频码流帧分别送至预先设置好的音频码流数据缓冲区队列和视频码流数据缓冲区队列中,等待解码;
4)对音频码流数据缓冲区队列和视频码流数据缓冲区队列进行检测,当检测到有等待解码的码流帧时,调用解码器进行解码,获得解码数据;设置音频输出缓冲区队列、视频输出缓冲区队列、音频时间戳缓冲区队列、视频时间戳缓冲区队列;将得到的解码数据存入音频输出缓冲区队列或视频输出缓冲区队列,并将码流帧中的音频时间戳或视频时间戳送入对应的音频时间戳缓冲区队列或视频时间戳缓冲区队列;
5)设置视频输出缓冲区队列中视频缓存帧数的上下门限和音频输出缓冲区队列中音频缓存帧数的上下门限;当视频缓存帧数和音频缓存帧数均满足下门限,或音频缓存帧数达到上门限时,启动音频播放;否则输出静默帧;音频播放时,当音频缓存帧数低于其下门限,则进行重复帧操作,当音频缓存帧数高于其上门限,则进行跳帧操作;设置一个全局音频时间戳,全局音频时间戳的值等于音频时间戳缓冲区队列中当前播放音频帧的时间戳的值,全局音频时间戳随音频播放实时更新;
6)当视频缓存帧数和音频缓存帧数均满足下门限,或视频缓存帧数达到上门限时,启动视频播放;否则输出蓝屏帧;设置时间戳正负失步门限;视频播放时,计算视频时间戳缓冲区队列中当前待播放视频的时间戳与当前全局音频时间戳的差值,若差值大于正失步门限,进行重复帧操作,若差值小于负失步门限,则进行跳帧操作,否则正常输出当前帧。
所述步骤1)中,音频和视频各自独立进行时间戳记录和插入。
本发明与现有技术相比的优点在于:
(1)本方法在音视频编码负担较重的信源端,只需给音视频码流帧引入一个时间戳字段,不干预音视频编码处理流程,无额外开销,资源占用少,音频和视频各自独立进行时间戳记录、编码处理、时间戳插入以及码流发送,组帧简单,实现方便。
(2)所述方法不需要全网同步化时钟和本地系统时钟的调整,依据缓冲区空满程度进行音频流内失步判定,并以音频流为参考流,直接比对视频与音频时间差是否超过设定门限判定流间失步情况,采用跳帧或重复帧进行媒体流内和流间的同步处理,简单高效。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于航天恒星科技有限公司,未经航天恒星科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201310287533.8/2.html,转载请声明来源钻瓜专利网。