The embodiment of the present invention provides an image frame rendering method, which can determine the size of the image frame decoded from the video file, create a texture buffer in the display memory according to the size of the image frame, backup the image frame to the texture buffer, and render the image frame stored in the texture buffer. Because of the existence of the texture buffer, the image frame obtained by the decoder can be obtained. By backing up to the texture buffer, the decoder can decode the next image frame while rendering the backup image frame in the texture buffer, so that the decoder does not have to wait until the end of the rendering to decode the next image frame, and for the soft decoded image frame, backup operation is not needed in memory, so that the memory consumption is not increased. In this case, decoding and rendering are decoupled.
【技术实现步骤摘要】
一种图像帧渲染方法、装置及电子设备
本专利技术涉及视频播放
,特别是涉及一种图像帧渲染方法、装置及电子设备。
技术介绍
现有的视频播放技术,一般可以先对视频文件进行硬解码,然后进行渲染操作,也可以先对视频文件进行软解码,再进行渲染操作。其中,通过硬解码得到的图像帧保存显存中,但是为了避免覆盖之前解码得到的还未进行渲染的图像帧,会解码一帧,渲染一帧,再解码下一帧,渲染下一帧;而通过软解码得到的图像帧保存在内存中,同时会对解码得到的图像帧进行数据备份,得到备份图像帧,当需要进行渲染操作时,会将备份图像帧加载到显存中进行渲染。专利技术人在实现本专利技术的过程中发现,现有技术至少存在如下问题:现有的硬解码-渲染无法做到解码与渲染的解耦,即解码一帧后,在对该帧渲染完成之前,无法解码下一帧,也就是说,无法实现解码与渲染的分离,而现有的软解码-渲染虽然实现了解码与渲染的解耦,但是同时也增加了内存的消耗。
技术实现思路
本专利技术实施例的目的在于提供一种图像帧渲染方法,以实现在不增加内存消耗的情况下,实现视频解码与渲染的解耦。具体技术方案如下:本专利技术实施提供了一种图像帧渲染方法,所述方法包括:确定对视频文件解码得到的图像帧的大小;按照所述图像帧的大小,在显存中创建纹理缓存;将所述图像帧备份至所述纹理缓存中;对所述纹理缓存中存储的所述图像帧进行渲染。进一步的,所述确定对视频文件解码得到的图像帧的大小,包括:获取对视频文件解码得到的图像帧的宽度、高度及格式类型;基于所述图像帧的宽度、高度及格式类型,计算出所述图像帧的大小。进一步的,所述对所述纹理缓存中存储的所述图像帧进 ...
【技术保护点】
1.一种图像帧渲染方法,其特征在于,所述方法包括:确定对视频文件解码得到的图像帧的大小;按照所述图像帧的大小,在显存中创建纹理缓存;将所述图像帧备份至所述纹理缓存中;对所述纹理缓存中存储的所述图像帧进行渲染。
【技术特征摘要】
1.一种图像帧渲染方法,其特征在于,所述方法包括:确定对视频文件解码得到的图像帧的大小;按照所述图像帧的大小,在显存中创建纹理缓存;将所述图像帧备份至所述纹理缓存中;对所述纹理缓存中存储的所述图像帧进行渲染。2.根据权利要求1所述的方法,其特征在于,所述确定对视频文件解码得到的图像帧的大小,包括:获取对视频文件解码得到的图像帧的宽度、高度及格式类型;基于所述图像帧的宽度、高度及格式类型,计算出所述图像帧的大小。3.根据权利要求2所述的方法,其特征在于,所述对所述纹理缓存中存储的所述图像帧进行渲染,包括:基于所述图像帧的格式类型,确定对应所述图像帧的格式类型的着色器;将所述纹理缓存中的所述图像帧绑定到纹理单元;调用所述着色器,通过对绑定到纹理单元的所述图像帧进行采样,获取所述图像帧的图像值;调用所述着色器对获取到的所述图像帧的所述图像值进行计算并渲染输出。4.根据权利要求1所述的方法,其特征在于,所述图像帧为采用硬解码方式对所述视频文件解码得到的;所述将所述图像帧备份至所述纹理缓存中,包括:将硬解码得到的存储于显存中的所述图像帧通过离屏渲染的方式备份至所述纹理缓存中;或着,将硬解码得到的存储于显存中的所述图像帧通过显存拷贝的方式备份至所述纹理缓存中。5.根据权利要求1所述的方法,其特征在于,所述图像帧为采用软解码方式对所述视频文件解码得到的;所述将所述图像帧存储至所述纹理缓存中,包括:调取纹理加载函数;利用所述纹理加载函数,将软解码得到的存储于内存中的所述图像帧加载至所述纹理缓存中。6.一种图像帧渲染装置,其特征在于,所述装置包括:大小确定模块,用于确定对视频文件解码得到的图像帧的大小;缓存创建模块,用于按照...
【专利技术属性】
技术研发人员:刘小辉,陈建生,
申请(专利权)人:北京奇艺世纪科技有限公司,
类型:发明
国别省市:北京,11
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。