数据处理方法、装置、终端设备和计算机可读介质制造方法及图纸

技术编号:24332276 阅读:28 留言:0更新日期:2020-05-29 20:14
本申请实施例公开了数据处理方法、装置、终端设备和计算机可读介质。该方法的实施例包括:通过开放图形库创建第一像素缓冲区对象PBO和第二PBO;执行如下数据处理步骤:通过该开放图形库对第一像素数据进行渲染,生成第一渲染数据;将该第一渲染数据传输至该第一PBO,同时,通过该开放图形库对第二像素数据进行渲染,生成第二渲染数据;将该第二渲染数据传输至该第二PBO,同时,将该第一PBO中的该第一像素数据传输至内存;将该第二渲染数据从该第二PBO传输至内存。该实施方式提高了数据处理效率。

Data processing methods, devices, terminal equipment and computer-readable media

【技术实现步骤摘要】
数据处理方法、装置、终端设备和计算机可读介质
本申请实施例涉及计算机
,具体涉及数据处理方法、装置、终端设备和计算机可读介质。
技术介绍
开放图形库(OpenGraphicsLibrary,OpenGL)是用于渲染二维或三维矢量图形的跨语言、跨平台的应用程序编程接口。开放图形库可以采用像素缓冲区对象(PixelBufferObject,PBO)进行像素数据的传递。PBO可接收由中央处理器(CentralProcessingUnit,CPU)传递的像素数据,并可以将该像素数据传递给图形处理器(GraphicsProcessingUnit,GPU),以使GPU进行对像素数据进行渲染。现有的方式,在需要边渲染边保存渲染数据的场景下(例如视频直播场景或短视频录制场景等),需要将像素数据传输至GPU后,通过OpenGL进行渲染并将渲染后生成的渲染数据存入显存,而后将该渲染数据由显存复制到内存,之后,再进行下一像素数据的渲染。由于这种方式需要等待GPU对当前像素数据渲染完成后再进行渲染数据的存储,以及,需要等待渲染数据存储完成后再进行下一像素数据的渲染,因而,处理数据的耗时较长,导致数据的处理效率较低。
技术实现思路
本申请实施例提出了数据处理方法、装置、终端设备和计算机可读介质,以解决现有技术中对像素数据的处理效率较低的技术问题。第一方面,本申请实施例提供了一种数据处理方法,应用于终端设备,终端设备安装有开放图形库,该方法包括:通过开放图形库创建第一像素缓冲区对象PBO和第二PBO;执行如下数据处理步骤:通过开放图形库对第一像素数据进行渲染,生成第一渲染数据;将第一渲染数据传输至第一PBO,同时,通过开放图形库对第二像素数据进行渲染,生成第二渲染数据;将第二渲染数据传输至第二PBO,同时,将第一PBO中的第一像素数据传输至内存;将第二渲染数据从第二PBO传输至内存。在一些实施例中,终端设备安装有图像采集装置;以及第一像素数据和第二像素数据为图像采集装置采集的相邻帧,且第一像素数据的采集时间早于第二像素数据的采集时间。在一些实施例中,该方法还包括:将图像采集装置采集的、下一组相邻帧中的像素数据分别作为第一像素数据和第二像素数据,重新执行数据处理步骤。在一些实施例中,将第一渲染数据传输至第一PBO,包括:绑定第一PBO;调用开放图形库中的目标函数,从显存中读取第一渲染数据,其中,目标函数用于从显存中读取数据;通过异步DMA传输方式,将第一渲染数据传输至第一PBO;将第一PBO解除绑定。在一些实施例中,将第二渲染数据传输至第二PBO,包括:绑定第二PBO;调用目标函数,从显存中读取第二渲染数据;通过异步DMA传输方式,将第二渲染数据传输至第二PBO;将第二PBO解除绑定。在一些实施例中,将第一渲染数据从第一PBO传输至内存,包括:建立第一PBO与目标内存区域的第一映射;将第一渲染数据从第一PBO传输至目标内存区域;释放第一映射。在一些实施例中,将第二渲染数据从第二PBO传输至内存,包括:建立第二PBO与目标内存区域的第二映射;将第二渲染数据从第二PBO传输至目标内存区域;释放第二映射。在一些实施例中,该方法还包括:依次显示第一渲染数据和第二渲染数据,并依次将第一渲染数据和第二渲染数据上传至服务器或存储至目标文件。在一些实施例中,通过开放图形库对第一像素数据进行渲染,包括:调用开放图形库中的一个或多个绘制指令;通过绘制指令对第一像素数据进行渲染,生成第一渲染数据。在一些实施例中,将第一渲染数据从第一PBO传输至目标内存区域,包括:通过Neon并行指令,将第一渲染数据从第一PBO传输至目标内存区域。第二方面,本申请实施例提供了一种数据处理装置,应用于终端设备,终端设备安装有开放图形库,该装置包括:创建单元,被配置成通过开放图形库创建第一像素缓冲区对象PBO和第二PBO;第一执行单元,被配置成执行如下数据处理步骤:通过开放图形库对第一像素数据进行渲染,生成第一渲染数据;将第一渲染数据传输至第一PBO,同时,通过开放图形库对第二像素数据进行渲染,生成第二渲染数据;将第二渲染数据传输至第二PBO,同时,将第一PBO中的第一像素数据传输至内存;将第二渲染数据从第二PBO传输至内存。在一些实施例中,终端设备安装有图像采集装置;以及第一像素数据和第二像素数据为图像采集装置采集的相邻帧,且第一像素数据的采集时间早于第二像素数据的采集时间。在一些实施例中,该装置还包括:第二执行单元,被配置成将图像采集装置采集的、下一组相邻帧中的像素数据分别作为第一像素数据和第二像素数据,重新执行数据处理步骤。在一些实施例中,第一执行单元进一步被配置成:绑定第一PBO;调用开放图形库中的目标函数,从显存中读取第一渲染数据,其中,目标函数用于从显存中读取数据;通过异步DMA传输方式,将第一渲染数据传输至第一PBO;将第一PBO解除绑定。在一些实施例中,第一执行单元进一步被配置成:调用目标函数,从显存中读取第二渲染数据;通过异步DMA传输方式,将第二渲染数据传输至第二PBO;将第二PBO解除绑定。在一些实施例中,第一执行单元进一步被配置成:建立第一PBO与目标内存区域的第一映射;将第一渲染数据从第一PBO传输至目标内存区域;释放第一映射。在一些实施例中,第一执行单元进一步被配置成:建立第二PBO与目标内存区域的第二映射;将第二渲染数据从第二PBO传输至目标内存区域;释放第二映射。在一些实施例中,该装置还包括:上传单元,被配置成依次显示第一渲染数据和第二渲染数据,并依次将第一渲染数据和第二渲染数据上传至服务器或存储至目标文件。在一些实施例中,第一执行单元进一步被配置成:调用开放图形库中的一个或多个绘制指令;通过绘制指令对第一像素数据进行渲染,生成第一渲染数据。在一些实施例中,第一执行单元进一步被配置成:通过Neon并行指令,将第一渲染数据从第一PBO传输至目标内存区域。第三方面,本申请实施例提供了一种终端设备,包括:一个或多个处理器;存储装置,其上存储有一个或多个程序,当一个或多个程序被一个或多个处理器执行,使得一个或多个处理器实现如上述第一方面中任一实施例的方法。第四方面,本申请实施例提供了一种计算机可读介质,其上存储有计算机程序,该程序被处理器执行时实现如上述第一方面中任一实施例的方法。本申请实施例提供的数据处理方法、装置、终端设备和计算机可读介质,通过开放图形库创建第一PBO和第二PBO;而后通过开放图形库对第一像素数据进行渲染,生成第一渲染数据;之后将第一渲染数据传输至第一PBO,同时,通过开放图形库对第二像素数据进行渲染,生成第二渲染数据;然后将第二渲染数据传输至第二PBO,同时,将第一PBO中的第一像素数据传输至内存;最后将第二渲染数据从第二PBO传输至内存。由此,能够在将第一渲染数据传递给第一PBO的同时,对第二像素数据进行渲染;此外,能够在将第二渲染数据传递给第二PBO的同时,本文档来自技高网...

【技术保护点】
1.一种数据处理方法,其特征在于,应用于终端设备,所述终端设备安装有开放图形库,所述方法包括:/n通过所述开放图形库创建第一像素缓冲区对象PBO和第二PBO;/n执行如下数据处理步骤:/n通过所述开放图形库对第一像素数据进行渲染,生成第一渲染数据;/n将所述第一渲染数据传输至所述第一PBO,同时,通过所述开放图形库对第二像素数据进行渲染,生成第二渲染数据;/n将所述第二渲染数据传输至所述第二PBO,同时,将所述第一PBO中的所述第一像素数据传输至内存;/n将所述第二渲染数据从所述第二PBO传输至内存。/n

【技术特征摘要】
1.一种数据处理方法,其特征在于,应用于终端设备,所述终端设备安装有开放图形库,所述方法包括:
通过所述开放图形库创建第一像素缓冲区对象PBO和第二PBO;
执行如下数据处理步骤:
通过所述开放图形库对第一像素数据进行渲染,生成第一渲染数据;
将所述第一渲染数据传输至所述第一PBO,同时,通过所述开放图形库对第二像素数据进行渲染,生成第二渲染数据;
将所述第二渲染数据传输至所述第二PBO,同时,将所述第一PBO中的所述第一像素数据传输至内存;
将所述第二渲染数据从所述第二PBO传输至内存。


2.根据权利要求1所述的方法,其特征在于,所述终端设备安装有图像采集装置;以及
所述第一像素数据和第二像素数据为所述图像采集装置采集的相邻帧,且所述第一像素数据的采集时间早于所述第二像素数据的采集时间。


3.根据权利要求2所述的方法,其特征在于,所述方法还包括:
将所述图像采集装置采集的、下一组相邻帧中的像素数据分别作为第一像素数据和第二像素数据,重新执行所述数据处理步骤。


4.根据权利要求1所述的方法,其特征在于,所述将所述第一渲染数据传输至所述第一PBO,包括:
绑定所述第一PBO;
调用所述开放图形库中的目标函数,从显存中读取所述第一渲染数据,其中,所述目标函数用于从显存中读取数据;
通过所述异步DMA传输方式,将所述第一渲染数据传输至所述第一PBO;
将所述第一PBO解除绑定。


5.根据权利要求4所述的方法,其特征在于,所述将所述第二渲染数据传输至所述第二PBO,包括:
绑定所述第二PBO;
调用所述目标函数,从显存中读取所述第二渲染数据;
通过所述异步DMA传输方式,将所述第二渲染数据传输至所述第二PBO;
将所述第二PBO解除绑定。


6.根据权利要求1所述的方法,其特征在于,所述将所述第一渲染数据从所述第一PBO传输至内存,包括:
建立所述第一PBO与所述目标内存区域的第一映射;
将所述第一渲染数据从所述第一PBO传输至所述目标内存区域;
释放所述第一映射。
...

【专利技术属性】
技术研发人员:陈新泽
申请(专利权)人:广州市百果园信息技术有限公司
类型:发明
国别省市:广东;44

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

1