本发明涉及计算机技术领域,特别涉及一种基于ffmpeg的视频结点的渲染方法及装置。
背景技术:
在2d开发中如果需要把视频资源嵌入到游戏中当成一个游戏节点来使用,而且要求可以随意调节层级,缩放等节点操作。目前的cocos2d-x引擎中的视频播放的接口,视频只能放在游戏界面之上,且无法调节视频的大小,不够灵活。
因此,需要一种基于ffmpeg的视频结点的渲染方法及装置,能够随意调整视频层级和大小。
技术实现要素:
(一)要解决的技术问题
为了解决现有技术的上述问题,本发明提供一种基于ffmpeg的视频结点的渲染方法及装置,能够随意调整视频层级和大小。
(二)技术方案
为了达到上述目的,本发明采用的一种技术方案为:
一种基于ffmpeg的视频结点的渲染方法,包括步骤:
s1、通过ffmpeg将视频解析为视频流和音频流;
s2、根据所述视频流获取帧率,并根据每帧视频的刷新时间,获取当前时间的图片;
s3、通过cocos2d-x对所述图片进行渲染,并根据所述音频流播放当前画面对应的音频。
为了达到上述目的,本发明采用的一种技术方案为:
一种基于ffmpeg的视频结点的渲染装置,包括存储器、处理器及存储在存储器上并可在处理器上运行的手机程序,所述处理器执行所述程序时实现以下步骤:
s1、通过ffmpeg将视频解析为视频流和音频流;
s2、根据所述视频流获取帧率,并根据每帧视频的刷新时间,获取当前时间的图片;
s3、通过cocos2d-x对所述图片进行渲染,并根据所述音频流播放当前画面对应的音频。
(三)有益效果
本发明的有益效果在于:通过ffmpeg将视频解析为视频流和音频流;根据所述视频流获取帧率,并根据每帧视频的刷新时间,获取当前时间的图片;通过cocos2d-x对所述图片进行渲染,并根据所述音频流播放当前画面对应的音频,不仅能够随意的将视屏嵌入到任何父节点中,调节视频的层级,还能够自由的调整视屏的大小。
附图说明
图1为本发明实施例的基于ffmpeg的视频结点的渲染方法流程图;
图2为本发明实施例的基于ffmpeg的视频结点的渲染装置的整体结构示意图。
【附图标记说明】
1:基于ffmpeg的视频结点的渲染装置;
2:存储器;
3:处理器。
具体实施方式
为了更好的解释本发明,以便于理解,下面结合附图,通过具体实施方式,对本发明作详细描述。
实施例一
请参照图1,一种基于ffmpeg的视频结点的渲染方法,包括步骤:
s1、通过ffmpeg将视频解析为视频流和音频流;
s2、根据所述视频流获取帧率,并根据每帧视频的刷新时间,获取当前时间的图片;
具体地,若视频未播放过,则从0帧开始播放;
s3、通过cocos2d-x对所述图片进行渲染,并根据所述音频流播放当前画面对应的音频。
步骤s3还包括:
在渲染下一帧时,释放上一帧的资源,并根据所述帧率对音频流进行切换,从而提高视频和音频的实时同步率。
实施例二
请参照图2,一种基于ffmpeg的视频结点的渲染装置1,包括存储器2、处理器3及存储在存储器2上并可在处理器3上运行的手机程序,所述处理器3执行所述程序时实现实施例一中的各个步骤。
以上所述仅为本发明的实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等同变换,或直接或间接运用在相关的技术领域,均同理包括在本发明的专利保护范围内。
1.一种基于ffmpeg的视频结点的渲染方法,其特征在于,包括步骤:
s1、通过ffmpeg将视频解析为视频流和音频流;
s2、根据所述视频流获取帧率,并根据每帧视频的刷新时间,获取当前时间的图片;
s3、通过cocos2d-x对所述图片进行渲染,并根据所述音频流播放当前画面对应的音频。
2.根据权利要求1所述的基于ffmpeg的视频结点的渲染方法,其特征在于,步骤s3还包括:
在渲染下一帧时,释放上一帧的资源,并根据所述帧率对音频流进行切换。
3.一种基于ffmpeg的视频结点的渲染装置,包括存储器、处理器及存储在存储器上并可在处理器上运行的手机程序,其特征在于,所述处理器执行所述程序时实现以下步骤:
s1、通过ffmpeg将视频解析为视频流和音频流;
s2、根据所述视频流获取帧率,并根据每帧视频的刷新时间,获取当前时间的图片;
s3、通过cocos2d-x对所述图片进行渲染,并根据所述音频流播放当前画面对应的音频。
4.根据权利要求3所述的基于ffmpeg的视频结点的渲染装置,其特征在于,步骤s3还包括:
在渲染下一帧时,释放上一帧的资源,并根据所述帧率对音频流进行切换。