CN109035131A - 显示图像的方法、装置、可读存储介质及电子设备 - Google Patents
显示图像的方法、装置、可读存储介质及电子设备 Download PDFInfo
- Publication number
- CN109035131A CN109035131A CN201710440187.0A CN201710440187A CN109035131A CN 109035131 A CN109035131 A CN 109035131A CN 201710440187 A CN201710440187 A CN 201710440187A CN 109035131 A CN109035131 A CN 109035131A
- Authority
- CN
- China
- Prior art keywords
- buffer area
- screen
- under
- window
- image
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T1/00—General purpose image data processing
- G06T1/20—Processor architectures; Processor configuration, e.g. pipelining
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/14—Digital output to display device ; Cooperation and interconnection of the display device with other functional units
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- General Engineering & Computer Science (AREA)
- Controls And Circuits For Display Device (AREA)
Abstract
本发明实施例提供了一种显示图像的方法、装置、可读存储介质及电子设备,其中所述方法包括:创建屏下前缓冲区、屏下后缓冲区以及图像绘制窗口;向所述屏下后缓冲区中写入第一图像数据,以使GPU依据所述第一图像数据绘制第一图像帧;调用窗口系统将所述屏下后缓冲区与所述屏下前缓冲区进行交换,所述窗口系统为实时操作系统中的子系统;通过所述窗口系统调用GPU,由所述GPU将所述屏下前缓冲区中的第一图像帧拷贝至所述图像绘制窗口中进行显示,同时向所述屏下后缓冲区中写入第二图像数据。通过本发明实施例提供的显示图像的方案,能够提升图像的绘制效率。
Description
技术领域
本发明涉及窗口系统技术领域,特别是涉及一种显示图像的方法、装置、可读存储介质及电子设备。
背景技术
在通信、军事、航空、航天等高精尖技术及实时性要求极高的领域中,随着对高效显示3D图像的需求逐步增加,需要在实时嵌入式操作系统上设计开发具备3D功能图形系统,其中在实时嵌入式操作系统上的窗口系统中实现3D绘制功能是一个很重要的组成部分。
目前能够在实时操作系统上绘制3D图像的系统为,由美国风河公司在vxWorks上实现的图形系统windml。该图形系统虽然具有3D绘制功能,但图像绘制效率低,前一帧图像绘制完成后需等待较长时间才可以完成下一帧图像的绘制,时常会出现卡顿现象,影响用户的使用体验。
发明内容
本发明提供了一种显示图像的方法、装置、可读存储介质及电子设备,以解决现有技术中存在的图像绘制效率低的问题。
为了解决上述问题,本发明公开了一种显示图像的方法,包括:创建屏下前缓冲区、屏下后缓冲区以及图像绘制窗口;向所述屏下后缓冲区中写入第一图像数据,以使GPU依据所述第一图像数据绘制第一图像帧;调用窗口系统将所述屏下后缓冲区与所述屏下前缓冲区进行交换,所述窗口系统为实时操作系统中的子系统;通过所述窗口系统调用GPU,由所述GPU将所述屏下前缓冲区中的第一图像帧拷贝至所述图像绘制窗口中进行显示,同时向所述屏下后缓冲区中写入第二图像数据。
为了解决上述问题,本发明公开了一种显示图像的装置,包括:创建模块,用于创建屏下前缓冲区、屏下后缓冲区以及图像绘制窗口;数据写入模块,用于向所述屏下后缓冲区中写入第一图像数据,以使GPU依据所述第一图像数据绘制第一图像帧;第一调用模块,用于调用窗口系统将所述屏下后缓冲区与所述屏下前缓冲区进行交换,所述窗口系统为实时操作系统中的子系统;第二调用模块,用于通过所述窗口系统调用GPU,由所述GPU将所述屏下前缓冲区中的第一图像帧拷贝至所述图像绘制窗口中进行显示,同时向所述屏下后缓冲区中写入第二图像数据。
为了解决上述问题,本发明公开了一种电子设备,包括有存储器,以及一个或者一个以上的程序,其中一个或者一个以上程序存储于存储器中,且经配置以由一个或者一个以上处理器执行本发明实施例中所述的任意一种显示图像的方法。
为了解决上述问题,本发明还公开了一种可读存储介质,当所述存储介质中的指令由电子设备的处理器执行时,使得电子设备能够执行本发明实施例中所述的任意一种显示图像的方法。
与现有技术相比,本发明包括以下优点:
本发明提供的显示图像的方法、装置、可读存储介质及电子设备,在显示图像时设置屏下前缓冲区以及屏下后缓冲区两个缓冲区,GPU(Graphic Processing Unit,图像处理器)从一个缓冲区中向图像绘制窗口拷贝前一帧图像的同时,CPU(Central ProcessingUnit,中央处理器)即可向另一个缓冲区中写入下一帧图像数据,CPU与GPU并行运行能够提升图像的绘制效率。
附图说明
图1是根据本发明实施例一的一种显示图像的方法的步骤流程图;
图2是根据本发明实施例二的一种显示图像的方法的步骤流程图;
图3是根据本发明实施例三的一种显示图像的装置的结构框图;
图4是根据本发明实施例三的一种显示图像的装置的结构框图;
图5是根据本发明实施例四的一种电子设备的结构框图。
具体实施方式
为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本发明作进一步详细的说明。
实施例一
参照图1,示出了本发明实施例一种显示图像的方法的步骤流程图。
本发明实施例提供的显示图像的方法,其执行主体可以是CPU,包括以下步骤:
步骤101:创建屏下前缓冲区、屏下后缓冲区以及图像绘制窗口。
在操作系统运行过程中,预进行图像显示时CPU创建屏下前缓冲区、屏下后缓冲区以及图像绘制窗口。其中,所创建的屏下前缓冲区、屏下后缓冲区用于存储CPU写入的图像数据,以及GPU依据图像数据绘制的图像帧。图像绘制窗口用于显示GPU绘制完成的图像帧。
CPU可以通过调用窗口系统中预设的窗口创建函数来创建缓冲区以及图像绘制窗口。
步骤102:向屏下后缓冲区中写入第一图像数据,以使GPU依据第一图像数据绘制第一图像帧。
具体的,在本实施例中,CPU可以通过调用图形绘制接口,向屏下后缓冲区中写入第一图像数据。图形绘制接口可以OpenGL接口即开放图形语言接口。
当第一图像数据写入完成后,CPU可以通过窗口系统调用GPU,由GPU将第一图像数据绘制成第一图像帧,此时屏下后缓冲区中存储有第一图像帧。
步骤103:调用窗口系统将屏下后缓冲区与屏下前缓冲区进行交换。
具体地,窗口系统可以通过调用预设的swap buffer接口将屏下后缓冲区与屏下前缓冲区进行交换。
步骤104:通过窗口系统调用GPU,由GPU将屏下前缓冲区中的第一图像帧拷贝至图像绘制窗口中进行显示,同时向屏下后缓冲区中写入第二图像数据。
GPU将第一图像帧拷贝至绘制窗口中后,在绘制窗口中即可显示出第一图像帧。由于在GPU向图像绘制窗口中拷贝第一图像帧的同时,CPU向屏下后缓冲区中写入第二图像数据,因此在第一图像帧拷贝完毕后GPU可直接将第二图像数据绘制成第二图像帧,而无需再耗时等待CPU写入第二图像数据,GPU绘制完成第二图像帧后,窗口系统再次进行屏下后缓冲区与屏下前缓冲区的交换,由GPU继续向图像绘制窗口中拷贝第二图像帧,同时CPU向屏下后缓冲区中写入第三图像数据。重复执行步骤102至步骤104如此往复可在图像绘制窗口中显示各帧图像。
本发明实施例提供的显示图像的方法,在显示图像时设置屏下前缓冲区以及屏下后缓冲区两个缓冲区,GPU从一个缓冲区中向图像绘制窗口拷贝前一帧图像的同时,CPU即可向另一个缓冲区中写入下一帧图像数据,CPU与GPU并行运行能够提升图像的绘制效率。
实施例二
参照图2,示出了本发明实施例二的一种显示图像的方法的步骤流程图。
本发明实施例的显示图像的方法具体包括以下步骤:
步骤201:接收到对应的应用程序的开启指令时,调用窗口系统中预设的窗口创建函数。
在操作系统中安装有一个或多个应用程序,当应用程序开启时需要将待显示的界面在桌面中显示,因此需要借助窗口系统创建图像绘制窗口、屏下前缓冲区以及屏下后缓冲区,通过这两个缓冲区来绘制图像帧,在图像绘制窗口中显示相应的图像。本发明实施例中的显示图像的方法可以适用于实时操作系统如:Linux系统。
其中,窗口系统为操作系统中的子系统。
步骤202:根据窗口创建函数创建屏下前缓冲区、屏下后缓冲区以及图像绘制窗口。
需要说明的是,图像绘制窗口的大小可以由本领域技术人员根据实际需求进行设置,本发明实施例中对此不做具体限制。
在具体使用过程中,CPU可以通过调用OpenGL接口向屏下后缓冲区中写入图像数据,CPU通过窗口系统调用GPU由GPU将CPU写入的图像数据绘制成图像帧。
步骤203:接收窗口创建函数返回的屏下前缓冲区、屏下后缓冲区以及图像绘制窗口创建完毕信息。
当CPU接收到缓冲区创建完毕信息后,即可开始向屏下前缓冲区中写入第一图像数据。
步骤204:向屏下后缓冲区中写入第一图像数据,以使GPU依据第一图像数据绘制第一图像帧。
CPU可以调用图形绘制接口如OpenGL接口在屏下后缓冲区中写入第一图像数据。
CPU可以通过窗口系统调用GPU,由GPU依据第一图像数据绘制第一图像帧,绘制完成后屏下后缓冲区中则存储有第一图像帧。
步骤205:当第一图像数据写入完成后,休眠应用程序。
应用程序进入休眠状态后,调用窗口系统。
步骤206:调用窗口系统将屏下后缓冲区与屏下前缓冲区进行交换。
至此,屏下后缓冲区中绘制有第一图像帧,屏下前缓冲区中不包含图像帧。将屏下后缓冲区与屏下前缓冲区进行交换后,原屏下前缓冲区域则被交换成屏下后缓冲区,原屏下后缓冲区则被交换成屏下前缓冲区。
步骤207:当屏下后缓冲区与屏下前缓冲区交换完成后,唤醒应用程序以进行第二图像数据的写入。
缓冲区交换完成后窗口系统向CPU发送消息,CPU唤醒应用程序,由应用程序提供第二图像数据。
步骤208:通过窗口系统调用GPU,由GPU将屏下前缓冲区中的第一图像帧拷贝至图像绘制窗口中进行显示,同时向屏下后缓冲区中写入第二图像数据。
具体地,CPU调用窗口系统,由窗口系统向GPU驱动发送调用指令;GPU驱动响应调用指令调用GPU,由GPU将屏下前缓冲区中的第一图像帧拷贝至图像绘制窗口中。本发明实施例中基于双缓冲区,CPU与GPU并行执行图像绘制操作,前一图像帧的绘制及更新,与后一图像帧数据准备并行化,能够提升图像的绘制效率,重复执行步骤204至步骤208如此往复可在图像绘制窗口中显示各帧图像。
本发明实施例提供的显示图像的方法,在显示图像时,设置屏下前缓冲区以及屏下后缓冲区两个缓冲区,GPU从一个缓冲区中向图像绘制窗口拷贝前一帧图像的同时,CPU即可向另一个缓冲区中写入下一帧图像数据,CPU与GPU并行运行能够提升图像的绘制效率。
实施例三
参照图3,示出了本发明实施例三的一种显示图像的装置的结构框图。
本发明实施例的显示图像的装置包括:创建模块301,用于创建屏下前缓冲区、屏下后缓冲区以及图像绘制窗口;数据写入模块302,用于向所述屏下后缓冲区中写入第一图像数据,以使GPU依据所述第一图像数据绘制第一图像帧;第一调用模块303,用于调用窗口系统将所述屏下后缓冲区与所述屏下前缓冲区进行交换,所述窗口系统为实时操作系统中的子系统;第二调用模块304,用于通过所述窗口系统调用GPU,由所述GPU将所述屏下前缓冲区中的第一图像帧拷贝至所述图像绘制窗口中进行显示,同时向所述屏下后缓冲区中写入第二图像数据。
本发明实施例提供的显示图像的装置,在显示图像时,设置屏下前缓冲区以及屏下后缓冲区两个缓冲区,GPU从一个缓冲区中向图像绘制窗口拷贝前一帧图像的同时,CPU即可向另一个缓冲区中写入下一帧图像数据,CPU与GPU并行运行能够提升图像的绘制效率。
实施例四
参照图4,示出了本发明实施例四的一种显示图像的装置的结构框图。
本发明实施例的显示图像的装置是对实施三中显示图像的装置的进一步优化,优化后的显示图像的装置包括:创建模块401,用于创建屏下前缓冲区、屏下后缓冲区以及图像绘制窗口;数据写入模块402,用于向所述屏下后缓冲区中写入第一图像数据,以使GPU依据所述第一图像数据绘制第一图像帧;第一调用模块403,用于调用窗口系统将所述屏下后缓冲区与所述屏下前缓冲区进行交换,所述窗口系统为实时操作系统中的子系统;第二调用模块404,用于通过所述窗口系统调用GPU,由所述GPU将所述屏下前缓冲区中的第一图像帧拷贝至所述图像绘制窗口中进行显示,同时向所述屏下后缓冲区中写入第二图像数据。
可选地,所述创建模块401包括:函数调用子模块4011,用于接收到对应的应用程序的启动指令时,调用窗口系统中预设的窗口创建函数;创建子模块4012,用于根据所述窗口创建函数创建屏下前缓冲区、屏下后缓冲区以及图像绘制窗口。
可选地,所述装置还包括:接收模块405,用于在所述创建子模块4012创建屏下前缓冲区、屏下后缓冲区以及图像绘制窗口之后,接收所述窗口创建函数返回的屏下前缓冲区、屏下后缓冲区以及图像绘制窗口创建完毕信息。
可选地,所述装置还包括:休眠模块406,用于在所述数据写入模块402向所述屏下后缓冲区中写入第一图像数据之后,休眠所述应用程序;唤醒模块407,用于当所述屏下后缓冲区与所述屏下前缓冲区交换完成后,唤醒所述应用程序以进行所述第二图像数据的写入。
可选地,所述第二调用模块404具体用于:调用所述窗口系统,由所述窗口系统向GPU驱动发送调用指令;所述GPU驱动响应所述调用指令调用GPU,由所述GPU将所述屏下前缓冲区中的第一图像帧拷贝至所述图像绘制窗口中进行显示;同时调用所述数据写入模块向所述屏下后缓冲区中写入第二图像数据。
本发明实施例中的显示图像的装置用于实现前述方法实施例中相应的显示图像的方法,并且具有相应的方法实施的有益效果,在此不再赘述。
实施例五
参照图5,示出了本发明实施例五的一种用于显示图像的电子设备的结构示意图。
图5是根据一示例性实施例示出的一种用于显示图像的电子设备的框图。
参照图5,终端可以包括以下一个或多个组件:处理组件602,存储器604,电源组件606,多媒体组件608,音频组件610,输入/输出(I/O)的接口612,传感器组件614,以及通信组件616。
处理组件602通常控制终端的整体操作,诸如与显示,数据通信,相机操作和记录操作相关联的操作。处理元件602可以包括一个或多个处理器620来执行指令,以完成上述的方法的全部或部分步骤。此外,处理组件602可以包括一个或多个模块,便于处理组件602和其他组件之间的交互。例如,处理部件602可以包括多媒体模块,以方便多媒体组件608和处理组件602之间的交互。
存储器604被配置为存储各种类型的数据以支持在终端的操作。这些数据的示例包括用于在终端上操作的任何应用程序或方法的指令,联系人数据,电话簿数据,消息,图片,视频等。存储器604可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(SRAM),电可擦除可编程只读存储器(EEPROM),可擦除可编程只读存储器(EPROM),可编程只读存储器(PROM),只读存储器(ROM),磁存储器,快闪存储器,磁盘或光盘。
电源组件606为终端的各种组件提供电力。电源组件606可以包括电源管理系统,一个或多个电源,及其他与为终端600生成、管理和分配电力相关联的组件。
多媒体组件608包括在所述终端和用户之间的提供一个输出接口的屏幕。在一些实施例中,屏幕可以包括液晶显示器(LCD)和触摸面板(TP)。如果屏幕包括触摸面板,屏幕可以被实现为触摸屏,以接收来自用户的输入信号。触摸面板包括一个或多个触摸传感器以感测触摸、滑动和触摸面板上的手势。所述触摸传感器可以不仅感测触摸或滑动动作的边界,而且还检测与所述触摸或滑动操作相关的持续时间和压力。在一些实施例中,多媒体组件608包括一个前置摄像头和/或后置摄像头。当终端处于操作模式,如拍摄模式或视频模式时,前置摄像头和/或后置摄像头可以接收外部的多媒体数据。每个前置摄像头和后置摄像头可以是一个固定的光学透镜系统或具有焦距和光学变焦能力。
音频组件610被配置为输出和/或输入音频信号。例如,音频组件610包括一个麦克风(MIC),当终端处于操作模式,如呼叫模式、记录模式和语音识别模式时,麦克风被配置为接收外部音频信号。所接收的音频信号可以被进一步存储在存储器604或经由通信组件616发送。在一些实施例中,音频组件610还包括一个扬声器,用于输出音频信号。
I/O接口612为处理组件602和外围接口模块之间提供接口,上述外围接口模块可以是键盘,点击轮,按钮等。这些按钮可包括但不限于:主页按钮、音量按钮、启动按钮和锁定按钮。
传感器组件614包括一个或多个传感器,用于为终端600提供各个方面的状态评估。例如,传感器组件614可以检测到设备600的打开/关闭状态,组件的相对定位,例如所述组件为终端的显示器和小键盘,传感器组件614还可以检测终端或终端一个组件的位置改变,用户与终端接触的存在或不存在,终端方位或加速/减速和终端的温度变化。传感器组件614可以包括接近传感器,被配置用来在没有任何的物理接触时检测附近物体的存在。传感器组件614还可以包括光传感器,如CMOS或CCD图像传感器,用于在成像应用中使用。在一些实施例中,该传感器组件614还可以包括加速度传感器,陀螺仪传感器,磁传感器,压力传感器或温度传感器。
通信组件616被配置为便于终端和其他设备之间有线或无线方式的通信。终端可以接入基于通信标准的无线网络,如WiFi,2G或3G,或它们的组合。在一个示例性实施例中,通信部件616经由广播信道接收来自外部广播管理系统的广播信号或广播相关信息。在一个示例性实施例中,所述通信部件616还包括近场通信(NFC)模块,以促进短程通信。例如,在NFC模块可基于射频识别(RFID)技术,红外数据协会(IrDA)技术,超宽带(UWB)技术,蓝牙(BT)技术和其他技术来实现。
在示例性实施例中,终端可以被一个或多个应用专用集成电路(ASIC)、数字信号处理器(DSP)、数字信号处理设备(DSPD)、可编程逻辑器件(PLD)、现场可编程门阵列(FPGA)、控制器、微控制器、微处理器或其他电子元件实现,用于执行上述方法。
在示例性实施例中,还提供了一种包括指令的非临时性计算机可读存储介质,例如包括指令的存储器604,上述指令可由终端的处理器620执行以完成上述方法。例如,所述非临时性计算机可读存储介质可以是ROM、随机存取存储器(RAM)、CD-ROM、磁带、软盘和光数据存储设备等。
一种非临时性计算机可读存储介质,当所述存储介质中的指令由电子设备的处理器执行时,使得电子设备能够执行上述实施例中所示的任意一种显示图像的方法。
本发明实施例的电子设备用于实现前述多个方法实施例中相应的显示图像的方法,并且具有相应的方法实施的有益效果,在此不再赘述。
本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。对于装置实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
以上对本发明所提供的一种显示图像的方法、装置、可读存储介质及电子设备进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。
在此提供的算法和显示不与任何特定计算机、电子系统或者其它设备固有相关。各种通用系统也可以与基于在此的示教一起使用。根据上面的描述,构造这类系统所要求的结构是显而易见的。此外,本发明也不针对任何特定编程语言。应当明白,可以利用各种编程语言实现在此描述的本发明的内容,并且上面对特定语言所做的描述是为了披露本发明的最佳实施方式。
在此处所提供的说明书中,说明了大量具体细节。然而,能够理解,本发明的实施例可以在没有这些具体细节的情况下实践。在一些实例中,并未详细示出公知的方法、结构和技术,以便不模糊对本说明书的理解。
类似地,应当理解,为了精简本公开并帮助理解各个发明方面中的一个或多个,在上面对本发明的示例性实施例的描述中,本发明的各个特征有时被一起分组到单个实施例、图、或者对其的描述中。然而,并不应将该公开的方法解释成反映如下意图:即所要求保护的本发明要求比在每个权利要求中所明确记载的特征更多的特征。更确切地说,如下面的权利要求书所反映的那样,发明方面在于少于前面公开的单个实施例的所有特征。因此,遵循具体实施方式的权利要求书由此明确地并入该具体实施方式,其中每个权利要求本身都作为本发明的单独实施例。
本领域那些技术人员可以理解,可以对实施例中的设备中的模块进行自适应性地改变并且把它们设置在与该实施例不同的一个或多个设备中。可以把实施例中的模块或单元或组件组合成一个模块或单元或组件,以及此外可以把它们分成多个子模块或子单元或子组件。除了这样的特征和/或过程或者单元中的至少一些是相互排斥之外,可以采用任何组合对本说明书(包括伴随的权利要求、摘要和附图)中公开的所有特征以及如此公开的任何方法或者设备的所有过程或单元进行组合。除非另外明确陈述,本说明书(包括伴随的权利要求、摘要和附图)中公开的每个特征可以由提供相同、等同或相似目的的替代特征来代替。
此外,本领域的技术人员能够理解,尽管在此所述的一些实施例包括其它实施例中所包括的某些特征而不是其它特征,但是不同实施例的特征的组合意味着处于本发明的范围之内并且形成不同的实施例。例如,在下面的权利要求书中,所要求保护的实施例的任意之一都可以以任意的组合方式来使用。
本发明的各个部件实施例可以以硬件实现,或者以在一个或者多个处理器上运行的软件模块实现,或者以它们的组合实现。本领域的技术人员应当理解,可以在实践中使用微处理器或者数字信号处理器(DSP)来实现根据本发明实施例的浏览器客户端设备中的一些或者全部部件的一些或者全部功能。本发明还可以实现为用于执行这里所描述的方法的一部分或者全部的设备或者装置程序(例如,计算机程序和计算机程序产品)。这样的实现本发明的程序可以存储在计算机可读介质上,或者可以具有一个或者多个信号的形式。这样的信号可以从因特网网站上下载得到,或者在载体信号上提供,或者以任何其他形式提供。
应该注意的是上述实施例对本发明进行说明而不是对本发明进行限制,并且本领域技术人员在不脱离所附权利要求的范围的情况下可设计出替换实施例。在权利要求中,不应将位于括号之间的任何参考符号构造成对权利要求的限制。单词“包含”不排除存在未列在权利要求中的元件或步骤。位于元件之前的单词“一”或“一个”不排除存在多个这样的元件。本发明可以借助于包括有若干不同元件的硬件以及借助于适当编程的计算机来实现。在列举了若干装置的单元权利要求中,这些装置中的若干个可以是通过同一个硬件项来具体体现。单词第一、第二、以及第三等的使用不表示任何顺序。可将这些单词解释为名称。
Claims (12)
1.一种显示图像的方法,其特征在于,包括:
创建屏下前缓冲区、屏下后缓冲区以及图像绘制窗口;
向所述屏下后缓冲区中写入第一图像数据,以使GPU依据所述第一图像数据绘制第一图像帧;
调用窗口系统将所述屏下后缓冲区与所述屏下前缓冲区进行交换,所述窗口系统为实时操作系统中的子系统;
通过所述窗口系统调用GPU,由所述GPU将所述屏下前缓冲区中的第一图像帧拷贝至所述图像绘制窗口中进行显示,同时向所述屏下后缓冲区中写入第二图像数据。
2.根据权利要求1所述的方法,其特征在于,所述创建屏下前缓冲区、屏下后缓冲区以及图像绘制窗口的步骤,包括:
接收到对应的应用程序的启动指令时,调用窗口系统中预设的窗口创建函数;
根据所述窗口创建函数创建屏下前缓冲区、屏下后缓冲区以及图像绘制窗口。
3.根据权利要求2所述的方法,其特征在于,在所述创建屏下前缓冲区、屏下后缓冲区以及图像绘制窗口的步骤之后,所述方法还包括:
接收所述窗口创建函数返回的屏下前缓冲区、屏下后缓冲区以及图像绘制窗口创建完毕信息。
4.根据权利要求2所述的方法,其特征在于,所述向所述屏下后缓冲区中写入第一图像数据的步骤之后,所述方法还包括:
休眠所述应用程序;
当所述屏下后缓冲区与所述屏下前缓冲区交换完成后,唤醒所述应用程序以进行所述第二图像数据的写入。
5.根据权利要求1-4任一项所述的方法,其特征在于,所述通过所述窗口系统调用GPU,由所述GPU将所述屏下前缓冲区中的第一图像帧拷贝至所述图像绘制窗口中进行显示的步骤,包括:
调用所述窗口系统,由所述窗口系统向GPU驱动发送调用指令;
所述GPU驱动响应所述调用指令调用GPU,由所述GPU将所述屏下前缓冲区中的第一图像帧拷贝至所述图像绘制窗口中进行显示。
6.一种显示图像的装置,其特征在于,包括:
创建模块,用于创建屏下前缓冲区、屏下后缓冲区以及图像绘制窗口;
数据写入模块,用于向所述屏下后缓冲区中写入第一图像数据,以使GPU依据所述第一图像数据绘制第一图像帧;
第一调用模块,用于调用窗口系统将所述屏下后缓冲区与所述屏下前缓冲区进行交换,所述窗口系统为实时操作系统中的子系统;
第二调用模块,用于通过所述窗口系统调用GPU,由所述GPU将所述屏下前缓冲区中的第一图像帧拷贝至所述图像绘制窗口中进行显示,同时向所述屏下后缓冲区中写入第二图像数据。
7.根据权利要求6所述的装置,其特征在于,所述创建模块包括:
函数调用子模块,用于接收到对应的应用程序的启动指令时,调用窗口系统中预设的窗口创建函数;
创建子模块,用于根据所述窗口创建函数创建屏下前缓冲区、屏下后缓冲区以及图像绘制窗口。
8.根据权利要求7所述的装置,其特征在于,所述装置还包括:
接收模块,用于在所述创建子模块创建屏下前缓冲区、屏下后缓冲区以及图像绘制窗口之后,接收所述窗口创建函数返回的屏下前缓冲区、屏下后缓冲区以及图像绘制窗口创建完毕信息。
9.根据权利要求7所述的装置,其特征在于,所述装置还包括:
休眠模块,用于在所述数据写入模块向所述屏下后缓冲区中写入第一图像数据之后,休眠所述应用程序;
唤醒模块,用于当所述屏下后缓冲区与所述屏下前缓冲区交换完成后,唤醒所述应用程序以进行所述第二图像数据的写入。
10.根据权利要求6-9任一项所述的装置,其特征在于,所述第二调用模块具体用于:
调用所述窗口系统,由所述窗口系统向GPU驱动发送调用指令;所述GPU驱动响应所述调用指令调用GPU,由所述GPU将所述屏下前缓冲区中的第一图像帧拷贝至所述图像绘制窗口中进行显示;同时调用所述数据写入模块向所述屏下后缓冲区中写入第二图像数据。
11.一种电子设备,其特征在于,包括有存储器,以及一个或者一个以上的程序,其中一个或者一个以上程序存储于存储器中,且经配置以由一个或者一个以上处理器执行如权利要求1-5中一个或多个所述的显示图像的方法。
12.一种可读存储介质,其特征在于,当所述存储介质中的指令由电子设备的处理器执行时,使得电子设备能够执行如权利要求1-5中一个或多个所述的显示图像的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710440187.0A CN109035131A (zh) | 2017-06-12 | 2017-06-12 | 显示图像的方法、装置、可读存储介质及电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710440187.0A CN109035131A (zh) | 2017-06-12 | 2017-06-12 | 显示图像的方法、装置、可读存储介质及电子设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN109035131A true CN109035131A (zh) | 2018-12-18 |
Family
ID=64628497
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710440187.0A Pending CN109035131A (zh) | 2017-06-12 | 2017-06-12 | 显示图像的方法、装置、可读存储介质及电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109035131A (zh) |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110399076A (zh) * | 2019-07-31 | 2019-11-01 | 北京金山云网络技术有限公司 | 一种图像显示方法、装置、电子设备及可读存储介质 |
CN111354060A (zh) * | 2020-02-19 | 2020-06-30 | 安凯(广州)微电子技术有限公司 | 基于双缓冲技术的窗口动画加速方法、装置及存储介质 |
CN112486606A (zh) * | 2020-11-19 | 2021-03-12 | 湖南麒麟信安科技股份有限公司 | 一种基于Android系统的云桌面显示优化方法及系统 |
CN112988103A (zh) * | 2021-05-13 | 2021-06-18 | 统信软件技术有限公司 | 一种数据显示方法及计算设备 |
CN113096054A (zh) * | 2020-01-09 | 2021-07-09 | 北京小米移动软件有限公司 | 图像帧合成方法、装置及存储介质 |
CN116909511A (zh) * | 2023-09-12 | 2023-10-20 | 西安芯云半导体技术有限公司 | 提升gpu双缓冲显示效率的方法、装置及存储介质 |
CN117058291A (zh) * | 2023-07-12 | 2023-11-14 | 荣耀终端有限公司 | 一种显存切换方法和电子设备 |
CN117094876A (zh) * | 2023-07-12 | 2023-11-21 | 荣耀终端有限公司 | 数据处理的方法、电子设备及可读存储介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20030098866A1 (en) * | 2001-11-29 | 2003-05-29 | Ruen-Rone Lee | Apparatus and method for controlling a stereo 3D display using BITBLT operation |
CN103049883A (zh) * | 2013-01-29 | 2013-04-17 | 陕西汽车集团有限责任公司 | 一种快速绘图的方法和装置 |
CN106098022A (zh) * | 2016-06-07 | 2016-11-09 | 北京小鸟看看科技有限公司 | 一种缩短图像延迟的方法和装置 |
-
2017
- 2017-06-12 CN CN201710440187.0A patent/CN109035131A/zh active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20030098866A1 (en) * | 2001-11-29 | 2003-05-29 | Ruen-Rone Lee | Apparatus and method for controlling a stereo 3D display using BITBLT operation |
CN103049883A (zh) * | 2013-01-29 | 2013-04-17 | 陕西汽车集团有限责任公司 | 一种快速绘图的方法和装置 |
CN106098022A (zh) * | 2016-06-07 | 2016-11-09 | 北京小鸟看看科技有限公司 | 一种缩短图像延迟的方法和装置 |
Non-Patent Citations (1)
Title |
---|
聂烜: "《计算机图形学》", 31 January 2013, 西北工业大学出版社 * |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110399076A (zh) * | 2019-07-31 | 2019-11-01 | 北京金山云网络技术有限公司 | 一种图像显示方法、装置、电子设备及可读存储介质 |
CN113096054A (zh) * | 2020-01-09 | 2021-07-09 | 北京小米移动软件有限公司 | 图像帧合成方法、装置及存储介质 |
CN111354060A (zh) * | 2020-02-19 | 2020-06-30 | 安凯(广州)微电子技术有限公司 | 基于双缓冲技术的窗口动画加速方法、装置及存储介质 |
CN112486606A (zh) * | 2020-11-19 | 2021-03-12 | 湖南麒麟信安科技股份有限公司 | 一种基于Android系统的云桌面显示优化方法及系统 |
CN112988103A (zh) * | 2021-05-13 | 2021-06-18 | 统信软件技术有限公司 | 一种数据显示方法及计算设备 |
CN117058291A (zh) * | 2023-07-12 | 2023-11-14 | 荣耀终端有限公司 | 一种显存切换方法和电子设备 |
CN117094876A (zh) * | 2023-07-12 | 2023-11-21 | 荣耀终端有限公司 | 数据处理的方法、电子设备及可读存储介质 |
CN117094876B (zh) * | 2023-07-12 | 2024-10-29 | 荣耀终端有限公司 | 数据处理的方法、电子设备及可读存储介质 |
CN116909511A (zh) * | 2023-09-12 | 2023-10-20 | 西安芯云半导体技术有限公司 | 提升gpu双缓冲显示效率的方法、装置及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109035131A (zh) | 显示图像的方法、装置、可读存储介质及电子设备 | |
JP7337968B2 (ja) | 垂直同期信号に基づいた画像処理の方法及び電子機器 | |
US10853979B2 (en) | Electronic device and method for displaying screen thereof | |
JP7480931B2 (ja) | アプリケーションアイコンを表示する方法および電子デバイス | |
CN104035672B (zh) | 用于通过检测摩擦手势提供预览的移动设备及其控制方法 | |
KR102311221B1 (ko) | 오브젝트 운용 방법 및 이를 지원하는 전자 장치 | |
KR102689503B1 (ko) | 전자 장치 및 그의 표시 방법 | |
WO2021110133A1 (zh) | 一种控件的操作方法及电子设备 | |
AU2014250635B2 (en) | Apparatus and method for editing synchronous media | |
KR101718046B1 (ko) | 동적 해상도 제어를 수행하는 이동 단말기 및 그 제어방법 | |
WO2020114047A1 (zh) | 图像风格迁移及数据存储方法、装置和电子设备 | |
TW201342188A (zh) | 用以提供與程式的多階層互動之方法、裝置與電腦程式產品 | |
KR102072509B1 (ko) | 그룹 리코딩 방법, 저장 매체 및 전자 장치 | |
KR102606693B1 (ko) | 전자 장치 및 전자 장치의 동작 제어 방법 | |
US20140043255A1 (en) | Electronic device and image zooming method thereof | |
EP3236355B1 (en) | Method and apparatus for managing task of instant messaging application | |
US20240320009A1 (en) | Data access method and apparatus, and non-transient computer-readable storage medium | |
CN107967915A (zh) | 显示装置及其控制方法 | |
CN112181571A (zh) | 浮窗显示方法、装置、终端及存储介质 | |
CN111026463B (zh) | 一种页面加载方法、装置、设备和存储介质 | |
KR20150057714A (ko) | 이미지 처리 방법 및 그 전자 장치 | |
KR20170114625A (ko) | 소모 전류를 줄이는 방법 및 전자 장치 | |
CN107111429B (zh) | 在设备上显示对象的方法及其设备 | |
CN110134370B (zh) | 一种图形绘制的方法、装置、电子设备及存储介质 | |
CN114442845A (zh) | 书写轨迹渲染方法、装置、书写屏设备及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
CB02 | Change of applicant information | ||
CB02 | Change of applicant information |
Address after: 100095 Building 2, Longxin Industrial Park, Zhongguancun environmental protection technology demonstration park, Haidian District, Beijing Applicant after: Loongson Zhongke Technology Co.,Ltd. Address before: 100095 Building 2, Longxin Industrial Park, Zhongguancun environmental protection technology demonstration park, Haidian District, Beijing Applicant before: LOONGSON TECHNOLOGY Corp.,Ltd. |
|
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20181218 |