基于opengl es的arm终端系统及视频显示方法
【技术领域】
[0001]本发明涉及计算机技术领域,尤其涉及远程控制,具体是指一种基于OPENGL ES的ARM终端系统及视频显示方法。
【背景技术】
[0002]SPICE:一种开源的远程桌面连接协议,和微软的RDP协议类似,但实现方式完全不同;
[0003]ARM:一种中央处理器,属于低功耗处理器;
[0004]CPU:中央处理器;
[0005]GPU:图形图像处理器;
[0006]OPENGL ES:一种3D图形处理的标准,有一致的应用程序开发接口 ;
[0007]目前使用ARM终端系统作为访问远程桌面的客户端,普遍存在体验差,即显示内容时比较慢,主要原因是由于ARM的CPU处理能力低造成的,而客户端程序采用CPU的处理方式来处理图形,图像的各种处理,比如图像融合;
[0008]现有技术中存在以下缺点:
[0009](I)现有技术是采用纯CPU处理的方式进行图形,图像的处理,在处理过程中耗费大量的CPU资源,而且还比较耗时,这就造成在显示远程桌面上内容时有延迟,用户体验就差;
[0010](2)现有技术的缺点是反应速度慢,终端用户体验差;
【发明内容】
[0011]本发明的目的是克服了上述现有技术的缺点,提供了一种能够实现的基于OPENGLES的ARM终端系统及视频显示方法。
[0012]为了实现上述目的,本发明的基于OPENGL ES的ARM终端系统及视频显示方法具有如下构成:
[0013]该基于OPENGL ES的ARM终端系统,其主要特点是,所述的终端系统包括:
[0014]客户端,用以通过协议远程连接服务器,以接收服务器发送的绘图指令;
[0015]GPU,通过OPENGL ES接口与客户端相连接,用以接收客户端所接收的绘图命令并绘制以显示。
[0016]进一步地,所述的客户端为SPICE客户端,所述的服务器为SPICE服务器。
[0017]本发明还涉及一种ARM终端视频显示的方法,其主要特点是,所述的方法包括以下步骤:
[0018](I)所述的服务器生成绘图命令并发送至所述的客户端;
[0019](2)所述的客户端通过OPENGL ES接口将所述的绘图命令发送至所述的GPU ;
[0020](3)所述的GPU执行所述的绘图命令并显示。
[0021]进一步地,所述的客户端为SPICE客户端,所述的服务器为SPICE服务器;所述的步骤(I)具体包括以下步骤:
[0022](1.1)所述的SPICE服务器生成绘图命令;
[0023](1.2)所述的SPICE服务器将所述的绘图命令通过网络传输至所述的SPICE客户端。
[0024]更进一步地,所述的步骤(2)具体包括以下步骤:
[0025](2.1)所述SPICE客户端初始化OPENGL ES环境并设置GPU运行参数;
[0026](2.2)所述的SPICE客户端创建显示窗口 ;
[0027](2.3)所述的SPICE客户端解析所述的绘图命令,并转化为OPENGL ES命令;
[0028](2.4)所述的SPICE客户端通过OPENGL ES接口将所述的绘图命令发送至所述的GPU0
[0029]再进一步地,所述的步骤(3)具体包括以下步骤:
[0030](3.1)所述的GPU将所述的绘图命令绘制到所述的显示窗口 ;
[0031](3.2)所述的GPU将绘制结果显示到显示屏幕。
[0032]采用了该发明中的基于OPENGL ES的ARM终端系统及视频显示方法,解决了现有技术中ARM终端系统作为访问远程桌面的客户端,普遍存在体验差,即显示内容时比较慢的问题,本发明的基于OPENGL ES的ARM终端系统能够明显提升远程桌面的显示效果。降低显示延迟。
【附图说明】
[0033]图1为本发明的ARM终端视频显示的方法的步骤流程图。
【具体实施方式】
[0034]为了能够更清楚地描述本发明的技术内容,下面结合具体实施例来进行进一步的描述。
[0035]针对现有技术的图形、图像采用CPU处理比较慢的情况,本发明采用ARM所带的GPU硬件进行处理,把之前放在CPU上处理的事件交由GPU来处理,从而节省CPU资源,减少图形,图像从处理到显示的时间。
[0036]GPU硬件本身对图形、图像具有很强的处理能力,ARM平台上的GPU硬件大部分支持OPENGL ES标准,本发明所提出的优化是基于OPENGL ES标准来编写的SPICE客户端程序。
[0037]请参阅图1所示,图1为本发明的ARM终端视频显示的方法的步骤流程图,该方法是基于ARM终端系统实现的,该基于OPENGL ES的ARM终端系统包括:
[0038]客户端,用以通过协议远程连接服务器,以接收服务器发送的绘图指令;
[0039]GPU,通过OPENGL ES接口与客户端相连接,用以接收客户端所接收的绘图命令并绘制以显示。
[0040]在一种优选的实施方式中,所述的客户端为SPICE客户端,所述的服务器为SPICE服务器。
[0041]SPICE服务端提供远程桌面服务,SPICE客户端通过SPICE协议连接SPICE服务端,SPICE客户端程序接收SPICE服务端的各种绘图指令,然后调用OPENGL ES的标准接口,交由GPU来进行绘图。
[0042]本发明是基于SPICE的远程控,在基于SPICE的远程控制中引入上述ARM终端系统时,显示视频流是有技术难点,需要最优化使用系统内存和显存,使视频的每一帧以最快的方式绘制完成,并显示到屏幕上。
[0043]本发明的是通过以下技术方案实现的:
[0044]步骤一:SPICE服务端生成各种绘图命令,如画点,画线,画一幅图片;
[0045]步骤二:SPICE服务端把绘图命令通过网络传输到客户端程序;
[0046]步骤三:在ARM中初始化OPENGL ES环境,设置GPU运行所需要的参数;
[0047]步骤四:在ARM中创建显示窗口,用于显示绘图后的结果;
[0048]步骤五:在ARM中解析绘图命令,把绘图命令转化为OPENGL ES命令;
[0049]步骤六:把OPENGL ES命令传递给GPU,由GPU进行实际的绘制操作;
[0050]步骤七:GPU接收绘图命令;
[0051]步骤八:GPU根据绘图命令绘制到显示平面;
[0052]步骤九:绘图完成后,显示到屏幕。采用了该发明中的基于OPENGL ES的ARM终端系统及视频显示方法,解决了现有技术中ARM终端系统作为访问远程桌面的客户端,普遍存在体验差,即显示内容时比较慢的问题,本发明的基于OPENGL ES的ARM终端系统能够明显提升远程桌面的显示效果。降低显示延迟。
[0053]在此说明书中,本发明已参照其特定的实施例作了描述。但是,很显然仍可以作出各种修改和变换而不背离本发明的精神和范围。因此,说明书和附图应被认为是说明性的而非限制性的。
【主权项】
1.一种基于OPENGL ES的ARM终端系统,其特征在于,所述的终端系统包括: 客户端,用以通过协议远程连接服务器,以接收服务器发送的绘图指令; GPU,通过OPENGL ES接口与客户端相连接,用以接收客户端所接收的绘图命令并绘制以显不O2.根据权利要求1所述的基于OPENGLES的ARM终端系统,其特征在于,所述的客户端为SPICE客户端,所述的服务器为SPICE服务器。3.一种基于权利要求1或2中所述的系统实现ARM终端视频显示的方法,其特征在于,所述的方法包括以下步骤: (1)所述的服务器生成绘图命令并发送至所述的客户端; (2)所述的客户端通过OPENGLES接口将所述的绘图命令发送至所述的GPU ; (3)所述的GPU执行所述的绘图命令并显示。4.根据权利要求3所述的ARM终端视频显示的方法,其特征在于,所述的客户端为SPICE客户端,所述的服务器为SPICE服务器;所述的步骤(I)具体包括以下步骤: (1.D所述的SPICE服务器生成绘图命令; (1.2)所述的SPICE服务器将所述的绘图命令通过网络传输至所述的SPICE客户端。5.根据权利要求4所述的ARM终端视频显示的方法,其特征在于,所述的步骤(2)具体包括以下步骤: (2.1)所述SPICE客户端初始化OPENGL ES环境并设置GPU运行参数; (2.2)所述的SPICE客户端创建显示窗口 ; (2.3)所述的SPICE客户端解析所述的绘图命令,并转化为OPENGL ES命令; (2.4)所述的SPICE客户端通过OPENGL ES接口将所述的绘图命令发送至所述的GPU。6.根据权利要求5所述的ARM终端视频显示的方法,其特征在于,所述的步骤(3)具体包括以下步骤: (3.1)所述的GPU将所述的绘图命令绘制到所述的显示窗口 ; (3.2)所述的GPU将绘制结果显示到显示屏幕。
【专利摘要】本发明涉及一种基于OPENGL?ES的ARM终端及视频显示方法,所述的终端包括:客户端,用以通过协议远程连接服务器,以接收服务器发送的绘图指令;GPU,通过OPENGL?ES接口与客户端相连接,用以接收客户端所接收的绘图命令并绘制以显示;所述的客户端为SPICE客户端,所述的服务器为SPICE服务器。采用该种结构的基于OPENGL?ES的ARM终端及视频显示方法,解决了现有技术中ARM终端作为访问远程桌面的客户端,普遍存在体验差,即显示内容时比较慢的问题,其结构简单,应用范围广泛。
【IPC分类】H04N21/235, G06T15/00, H04N21/431
【公开号】CN105187853
【申请号】CN201510569642
【发明人】陈立新
【申请人】上海赛为信息技术有限公司
【公开日】2015年12月23日
【申请日】2015年9月9日