[发明专利]一种提高实时视频平滑性的方法有效
申请号: | 201110442134.5 | 申请日: | 2011-12-27 |
公开(公告)号: | CN102413382A | 公开(公告)日: | 2012-04-11 |
发明(设计)人: | 刘念林;兰俊松;范高生 | 申请(专利权)人: | 四川九洲电器集团有限责任公司 |
主分类号: | H04N21/8547 | 分类号: | H04N21/8547;H04N21/643 |
代理公司: | 成都九鼎天元知识产权代理有限公司 51214 | 代理人: | 徐宏;吴彦峰 |
地址: | 621000 四*** | 国省代码: | 四川;51 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 提高 实时 视频 平滑 方法 | ||
技术领域
本发明涉及视频图像处理领域,本发明公开了一种提高实时视频平滑性的方法。
背景技术
现有技术中前端设备中发过来的视频数据有时会出现显示不平滑的现象,原因是:在TCP模式下假定帧率是25的情况下,在复杂的实际运行环境中,并不是每一秒都是收到恒定的25帧,有时候一秒钟可能只收到15帧,而在下一秒有可能就会收到35帧,如果客户端在收到一帧就解码和渲染一帧的话有时候会出现显示过快或过慢的情况,从而导致了图像不平滑现象。
发明内容
本发明的目的是针对上述图像不平滑的问题,提供一种提高实时视频平滑性的方法。
本发明的目的通过下述技术方案来实现:
一种提高实时视频平滑性的方法,其具体包含以下步骤:计算出收到第一帧时的时间戳为Tfirst,收到第一帧时的本地时间为Tlocal,后面每一帧的时间戳为Tsrc,每帧解码前时的本地时间为Tnow;判断Tnow-Tlocal〉=Tsrc-Tfirst是否成立,如果成立就进行解码渲染,如果不成立就进行sleep,直到条件成立为止。
优选地,上述sleep的时间为(Tsrc–Tfirst)–(Tnow–Tlocal)。
优选地,上述时间戳为当前时间减去实时流初始时间得到的差值。
优选地,上述方法还包括:每次得到本地时间后进行存储,当本次得到的本地时间小于上一次存储的本地时间时,进行时间翻转。
优选地,上述方法还包括:当连续多帧的时间戳相同时,后续帧的时间依序做加1处理。
本发明的有益效果:根据相邻两帧的时间戳差值的恒定性,采用了动态计算码流的相对时间戳和本地的绝对时间戳,通过其差值的大小,决定是否对当前帧进行解码,这样就能避免每收到一帧就解码和渲染的话有时候会出现显示过快或过慢的情况,从而提高实时视频渲染的平滑性。
附图说明
附图1为本发明的提高实时视频平滑性方法的流程图。
具体实施方式
下面结合说明书附图,详细说明本发明的具体实施方式。
本发明公开了一种提高实时视频平滑性的方法,其具体包含以下步骤:计算出收到第一帧时的时间戳为Tfirst,收到第一帧时的本地时间为Tlocal,后面每一帧的时间戳为Tsrc,每帧解码前时的本地时间为Tnow;判断Tnow–Tlocal>=Tsrc-Tfirst是否成立,如果成立就进行解码渲染,如果不成立就进行sleep,直到条件成立为止。在TCP传输模式的基础上,通过对实时视频数据加上时间戳进行验证的机制,在每帧解码前,首先计算出本地绝对时间,将其与收到第一帧本地绝对时间进行求差,再计算出后面每帧的相对时间戳,并将其与收到第一帧的相对时间戳进行求差,比较两者的差值决定是否对当前帧进行解码渲染。根据相邻两帧的时间戳差值的恒定性,采用了动态计算码流的相对时间戳和本地的绝对时间戳,通过其差值的大小,决定是否对当前帧进行解码,这样就能避免每收到一帧就解码和渲染的话有时候会出现显示过快或过慢的情况,从而提高实时视频渲染的平滑性。针对实时视频不平滑现象,利用了对视频数据加相对时间戳机制,动态计算两帧的缓冲解码渲染时间,并且保证了只会缓冲一次,从根本上解决了实时视频渲染时不平滑问题,很大程度上提高了实时视频图像的流畅性。
优选地,sleep的时间为(Tsrc–Tfirst)–(Tnow–Tlocal)。sleep的最短时间为(Tsrc–Tfirst)–(Tnow–Tlocal),也就是说只要Tnow–Tlocal=Tsrc-Tfirst一成立,就开始进行解码和渲染,避免数据帧堆积,影响后续的解码和渲染。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于四川九洲电器集团有限责任公司,未经四川九洲电器集团有限责任公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201110442134.5/2.html,转载请声明来源钻瓜专利网。