CN115857860B - Wayland合成器中的镜像屏优化方法 - Google Patents
Wayland合成器中的镜像屏优化方法 Download PDFInfo
- Publication number
- CN115857860B CN115857860B CN202310186368.0A CN202310186368A CN115857860B CN 115857860 B CN115857860 B CN 115857860B CN 202310186368 A CN202310186368 A CN 202310186368A CN 115857860 B CN115857860 B CN 115857860B
- Authority
- CN
- China
- Prior art keywords
- output screen
- screen
- video memory
- memory buffer
- source output
- 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.)
- Active
Links
Images
Classifications
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Image Generation (AREA)
Abstract
Wayland合成器中的镜像屏优化方法,该方法根据各个屏幕的输出频率将屏幕划分为源输出屏幕和目标输出屏幕;由目标输出屏幕共享源输出屏幕的渲染结果。本发明提供的Wayland合成器中的镜像屏优化方法,在单GPU使用场景下,源输出屏幕与目标输出屏幕使用相同的一个显存buffer,减少显存buffer使用。在多GPU使用情况,减少合成器了计算客户端提交的窗口damge的计算所耗费的时间,也减少GPU复杂的渲染过程。提高了渲染效率。
Description
技术领域
本发明涉及合成器性能优化技术领域,具体涉及Wayland合成器中的镜像屏优化方法。
背景技术
在Linux平台下,目前Wayland已经可以完全替代X11,并且采用wayland协议的Linux发行版桌面系统正应运而生。在Ubuntu17.10 版本当中就已经引入了Wayland,进而Ubuntu 21.04(2021年4月发布)正式推出,已默认使用Wayland替换了已有36年历史的Xwindow System。
Wayland 的口号是“每一帧都是完美的”。使用wayland 协议的客户端自身完成内容渲染,wayland服务端合成器将客户端内容合成最终提交输出,保证输出完美;合成器基于每个屏幕的vsync 信号进行单独渲染合成输出,使得每个屏幕输出完美无撕裂。
在现有wayland合成器渲染框架下,每个屏幕对应一个output,并且每个output都是单独进行渲染,无论扩展还是镜像都是一致,将客户端提交给服务端合成器的窗口buffer,依据客户端提交的damage 合成、裁剪最终输出对应屏幕的Framebuffer,通过drmAPI接口提交给内核成进行送显。
如图1所示,所示wayland合成器基于通用框架下镜像屏的处理流程,每个output(输出屏幕)渲染过程,都会attach一个swapchain-buffer(显存buffer),显存buffer 大小和output 输出分辨率相同。wayland合成器遍历所有客户端提交过来的窗口显示数据,进行渲染合成和裁剪,输入到对应的output(输出屏幕)申请(attach)的显存buffer上,最终调用drm API接口,提交给内核驱动进行送显操作。wayland合成器基于通用框架下的镜像模式处理流程中,对每个output进行单独渲染,合成相同的画面,重复一样的操作步骤。
具体操作步骤如下:
1、attach渲染器(后续渲染工作需要此渲染器调用opengl进行渲染)。
2、输出屏幕根据分辨率大小attach一个显存buffer,具体申请过程如下:
2-1:首先创建swahcin-buffer(显存buffer );
2-2:申请获取一个可使用的显存buffer;
2-3:将步骤2-2申请的渲染器与申请的显存buffer进行绑定。
3、渲染开始:调用wlr_reander_begin 接口,提交GPU渲染开始命令,获取GPU渲染上下文。
4、遍历每个客户端窗口,根据damage计算需要绘制的区域进行渲染、裁剪、合成到显存buffer中。
5、渲染结束:调用wlr_render_end 接口,执行GPU渲染结束命令,将步骤3-5提交命令发送给GPU命令环等待GPU执行完成。
6、将渲染完成后的显存buffer调用drm API接口提交内核显卡驱动执行送显操作。
7、执行送显后,等待屏幕输出扫描完成内核上报的pageflip信号,重复以上步骤。
如此意味着在镜像模式下,两个屏幕输出画面一致(分辨率也一致),但是渲染合成需要多一次重复渲染动作,加大合成器渲染的占用率。
中国发明专利(201910878092.6 基于wayland协议的图形合成方法、装置和系统)本申请提出一种基于wayland协议的图形合成方法、装置和系统,一种基于wayland协议的图形合成方法应用于图形显示合成端,包括:获取内核输入事件,根据内核输入事件计算窗口焦点,并通过输入管理通道将内核输入事件发送到窗口焦点对应的图形应用客户端;通过窗口管理通道接收至少一个图形应用客户端发送的窗口管理请求;通过图形管理通道接收至少一个图形应用客户端绘制的图形缓存,将至少一个图形应用客户端绘制的图形缓存应用至少一个图形应用客户端发送的窗口管理请求,得到合成后的图形窗口;将合成的图形窗口输出到至少一个显示设备。提到一种wayland合成器的对客户端的窗口管理和合成方法,不涉及合成器在镜像屏模式下的合成优化处理。
中国发明专利(201110441128.8 一种桌面镜像屏幕的图标文件拖拽方法和系统)本发明实施方式提出了一种桌面镜像屏幕的图标文件拖拽方法,包括设置外部拖拽数据结构的步骤,还包括:当图标从桌面镜像屏幕内部拖拽到外部和/或从桌面镜像屏幕外部拖拽入图标时,根据该图标的对应文件的路径信息填充该外部拖拽数据结构;解析外部拖拽数据结构以获得该图标的对应文件的路径信息,根据该路径信息将该图标的对应文件复制到桌面镜像屏幕外部和/或桌面镜像屏幕内部。本发明实施方式还提出了一种桌面镜像屏幕的图标文件拖拽系统。应用本发明实施方式以后,可以很好地响应桌面镜像屏幕上跨屏幕的拖拽,实现了一套通用的镜像屏幕拖拽方案,改善了用户操作便利性。本发明涉及到了镜像屏幕下的图标文件拖拽方法,并未涉及到镜像模式下,wayland合成器或者其他合成器合成图像流程的优化或方法。
发明内容
为解决已有技术存在的不足,本发明提供了一种Wayland合成器中的镜像屏优化方法,包括如下步骤:
步骤S1:在镜像模式下,根据各个屏幕的输出频率确定一个源输出屏幕和一个以上的目标输出屏幕;
步骤S2:获取各个屏幕支持的图像输出格式,找出各个屏幕共同支持的图像输出格式,后期以该图像输出格式申请渲染所需的显存buffer;
步骤S3:源输出屏幕对客户端提交的窗口buffer进行合成,产生一帧新的显存buffer提交送显;
步骤S4:获取源输出屏幕的显存bufferID,记录该显存bufferID并对显存buffer进行加锁操作;
步骤S5:目标输出屏幕获取源输出屏幕记录的显存bufferID,共享源输出屏幕的显存buffer,之后对源输出屏幕记录的共享的显存bufffer进行解锁和释放;
步骤S6:源输出屏幕和目标输出屏幕重复步骤S3-S5,使目标输出屏幕持续共享源输出屏幕的显存buffer。
其中,源输出屏幕和目标输出屏幕根据屏幕输出扫描完成后内核上报的pageflip信号,重复步骤S3-S6,其中,
源输出屏幕在接收到pageflip信号后,从管理的显存池中申请新的显存buffer,并重复步骤S3-S4进行新的显示内容的合成并进行送显;
目标输出屏幕在接收到pageflip信号后,重复步骤S5,再次获取并共享源输出屏幕的显存buffer,根据新的显存buffer进行提交更新显示。
其中,针对单GPU模式,或者多GPU模式且源输出屏幕和目标输出屏幕所属GPU一致的情况,目标输出屏幕通过如下方式共享源输出屏幕的显存buffer:直接获取源输出屏幕记录的显存bufferID进行提交送显。
其中,针对多GPU模式且源输出屏幕和目标输出屏幕所属GPU不一致的情况,目标输出屏幕通过如下方式共享源输出屏幕的显存buffer:
步骤S51:目标输出屏幕获取源输出屏幕记录并加锁的显存buffer,将源输出屏幕的显存buffer导出纹理;
步骤S52:目标输出屏幕从所属GPU管理的显存池中申请一个显存buffer,并且attach渲染器;
步骤S53:渲染开始:提交GPU渲染开始命令,获取GPU渲染上下文;
步骤S54:渲染纹理:将步骤S51导出的纹理,渲染到步骤S52目标输出屏幕申请的显存buffer中;
步骤S55:渲染结束:执行GPU渲染结束命令,将步骤S53-S54提交命令发送给GPU命令环等待GPU执行完成;
步骤S56:提交送显:将渲染完成后的显存buffer提交内核显卡驱动执行送显操作;
步骤S57:将步骤S51导出的纹理执行销毁操作;
步骤S58:将获取的源输出屏幕记录的共享的显存bufffer进行解锁和释放。
本发明提供的Wayland合成器中的镜像屏优化方法,在单GPU使用场景下,源输出屏幕与目标输出屏幕使用相同的一个显存buffer,减少显存buffer使用。在多GPU使用情况,减少合成器了计算客户端提交的窗口damge的计算所耗费的时间,也减少GPU复杂的渲染过程。提高了渲染效率。
附图说明
图1:已有技术中Wayland合成器中的镜像屏的实现流程图;
图2:本发明的Wayland合成器中的镜像屏优化方法在单GPU模式下的实现流程图;
图3:本发明的Wayland合成器中的镜像屏优化方法在多GPU模式下的实现流程图。
具体实施方式
为了对本发明的技术方案及有益效果有更进一步的了解,下面结合附图详细说明本发明的技术方案及其产生的有益效果。
本发明下文涉及到的术语在此介绍如下:
Wayland: 是一个用于合成器与其客户端对话的协议,用于替代X。
Wayland 合成器(Compositor): 是与wayland客户端对话的wayland服务器端,还具有窗口合成和管理功能。
本发明的目的,是实现一种wayland合成器合成渲染框架中镜像屏优化方法。旨在通过减少多个屏幕输出同样画面时的合成渲染次数,提升合成器合成渲染效率。
为了提高这一效率,如图2所示,为本发明提供的针对单GPU的镜像屏优化方案:在当前镜像模式下,比较每个output(输出屏幕)刷新频率,确定屏幕输出频率最大者作为源输出屏幕,其他输出屏幕作为目的输出屏幕。源输出屏幕(output)在渲染过程attach的显存buffer,对其进行加锁( lock)、 并记录此buffer Id。记录的显存buffer共享给其他目标输出屏幕。
具体实现的技术方案如下:
一、基础准备阶段
1、在镜像模式下,比较各个屏幕输出频率,确定屏幕输出频率最大者作为源输出屏幕,其他输出屏幕作为目的输出屏幕,共享源输出屏幕的渲染结果;
2、获取各个屏幕支持的图像输出格式,并找出共同支持的图像输出格式,使用该共同输出格式申请渲染所需的显存buffer(swapchain buffer )。这样保证源输出屏幕申请的显存buffer,可以共享给各个目标输出屏幕。
二、源输出屏幕的具体操作步骤
1、源输出屏幕开始对客户端提交的窗口buffer 进行合成,产生一帧新的显存buffer提交送显,具体包括如下步骤:
(1)attach渲染器(后续渲染工作需要此渲染器调用opengl进行渲染);
(2)根据分辨率大小attach一个显存buffer,具体申请过程如下:
2-1首先创建swahcin-buffer(显存buffer );
2-2申请获取一个可使用的显存buffer;
2-3将步骤1申请的渲染器与申请的显存buffer进行绑定;
(3)渲染开始:调用wlr_reander_begin 接口,提交GPU渲染开始命令,获取GPU渲染上下文;
(4)遍历每个客户端窗口,根据damage计算需要绘制的区域进行渲染、裁剪、合成到显存buffer中;
(5)渲染结束:调用wlr_render_end 接口,执行GPU渲染结束命令,将步骤3-5提交命令发送给GPU命令环等待GPU执行完成。
2、源输出屏幕提交送显后,通过提交回调接口,针对上述步骤(1)中申请渲染完成后的显存buffer,获取源输出屏幕的渲染显存buffer ID,并记录显存buffer ID并且对显存buffer加锁操作。
3、将渲染完成后的显存buffer调用drm API接口提交内核显卡驱动执行送显操作。
4、执行送显后,等待屏幕输出扫描完成后内核上报的pageflip信号,从管理的显存buffer池中申请新的显存buffer,重复1-3(严格来讲是重复步骤1中第(2)步之后的内容,因为第(1)步中attach的渲染器应是同一个)进行新的显示内容的合成并进行送显。
三、目标输出屏幕的具体操作步骤
1、根据输出屏幕的刷新率依次上报pageflip的事件,直接获取源输出屏幕记录的显存buffer ID进行提交送显;
2、目标输出屏幕完成送显后,对源输出屏幕记录的共享的显存buffer进行解锁和释放。
3、目标输出屏幕等待屏幕输出扫描完成后内核上报的pageflip信号,重复步骤1-2 获取源输出屏幕共享的显存buffer,根据新的显示内容的显存buffer ID 进行提交更新显示。
本发明根据用户当前模式确定,如果是镜像模式下,则省去了通用框架下,省去了每个目标output(输出屏幕)和源output(输出屏幕)一样的渲染流程,并且目标输出屏幕无需attach一个显存 buffer,直接使用源输出屏幕已经渲染完成的显存buffer id,提交输出送显,减少了CPU和GPU 的负载,效率上得到很大的提升。
作为本发明上述技术方案的进一步改进:在使用多GPU卡情况下,源输出屏幕所属GPU是合成器渲染所使用的GPU,若目标输出屏幕所属GPU与源输出屏幕所属GPU不同,目标输出屏幕不能使用源输出屏幕直接提供buffer id送显,需要进行DMA-BUF操作;源输出屏幕需要将送显的buffer数据拷贝到目标输出屏幕所属GPU显存buffer中,从而提交输出送显。我们针对此多GPU下的镜像屏模式,wayland合成器在现有的通用框架下衍生出了第二种优化方案。
如图三所示,在多GPU模式下,当源输出屏幕和目标输出屏幕所属的GPU一致时,其具体的合成器镜像屏优化方案和第一种优化方案完全一致,只有当目标输出屏幕所属的GPU和源输出屏幕合成器渲染使用的GPU不同时,需要对源输出屏幕渲染的显存buffer导出纹理,从而将此导出的纹理(texture)渲染到目标输出屏幕所属GPU申请的显存buffer中,然后使用此显存buffer进行送显,具体的技术方案如下:
基础准备阶段及源输出屏幕的具体操作步骤与上文所述第一种优化方案一致。
目标输出屏幕的具体操作步骤如下:
1、根据输出屏幕的刷新率依次上报pageflip的事件,获取源输出屏幕记录的显存buffer ID;
2、判断目标输出屏幕所属GPU与源输出屏幕所属GPU是否一致,若一致则执行图二所示优化方案相同的步骤,若不一致则执行以下步骤:
3、目标输出屏幕获取源输出屏幕记录并加锁的显存buffer,调用wlr_texture_from_buffer接口,将源输出屏幕的显存buffer导出纹理(texture);
4、目标输出屏幕从所属GPU管理的显存池中申请一个显存buffer,并且attach渲染器;
5、渲染开始:调用wlr_reander_begin 接口,提交GPU渲染开始命令,获取GPU渲染上下文;
6、渲染纹理:调用wlr_render_texture 接口,提交GPU渲染纹理命令将步骤3导出的纹理(texture)渲染到步骤4申请的显存buffer中;
7、渲染结束:调用wlr_render_end 接口,执行GPU渲染结束命令,将步骤5、6 提交命令发送给GPU命令环等待GPU执行完成。
8、提交步骤4申请的显存buffer,将渲染完成后的显存buffer调用drm API接口,提交内核显卡驱动执行送显操作。
9、解锁步骤3获取的源输出屏幕的显存buffer,将其释放。并对导出的纹理执行销毁操作。
10、等待屏幕输出扫描完成内核上报的pageflip信号,重复以上步骤。
对比通用框架下,wayland合成器在镜像模式合成送显,省略了CPU对所有客户端提交窗口的buffer-dmage的计算过程,相比第一个优化方案多了一道GPU对导出纹理渲染的过程。在使用多GPU应用场景,渲染纹理这一步又是必不可少的。所以总体来看还是提高了效率。
和现有技术相比,本发明的优势在于:
1、 wayland合成器在单GPU使用场景下,源输出屏幕与目标输出屏幕使用相同的一个显存buffer,减少显存buffer使用。渲染过程中,仅需要对源输出屏幕渲染一次,共享源输出屏幕的显存buffer,减少GPU渲染次数和CPU 渲染处理逻辑消耗的时间。
2、 wayland合成器在多GPU使用情况,减少合成器了计算客户端提交的窗口damge的计算所耗费的时间,也减少GPU复杂的渲染过程,只需要将源输出屏幕导出纹理渲染到目标输出的显存buffer中即可。
3、 wayland合成器中的镜像屏输出模式下,考虑了多种使用情况,将单GPU、多GPU处理逻辑整合在一套代码框架下。
虽然本发明已利用上述较佳实施例进行说明,然其并非用以限定本发明的保护范围,任何本领域技术人员在不脱离本发明的精神和范围之内,相对上述实施例进行各种变动与修改仍属本发明所保护的范围,因此本发明的保护范围以权利要求书所界定的为准。
Claims (3)
1.Wayland合成器中的镜像屏优化方法,其特征在于,包括如下步骤:
步骤S1:在镜像模式下,根据各个屏幕的输出频率确定一个源输出屏幕和一个以上的目标输出屏幕;
步骤S2:获取各个屏幕支持的图像输出格式,找出各个屏幕共同支持的图像输出格式,后期以该共同支持的图像输出格式申请渲染所需的显存buffer;
步骤S3:源输出屏幕对客户端提交的窗口buffer进行合成,产生一帧新的显存buffer提交送显;
步骤S4:获取源输出屏幕的显存bufferID,记录该显存bufferID并对显存buffer进行加锁操作;
步骤S5:目标输出屏幕获取源输出屏幕记录的显存bufferID,共享源输出屏幕的显存buffer,之后对源输出屏幕记录的共享的显存bufffer进行解锁和释放;
步骤S6:源输出屏幕和目标输出屏幕重复步骤S3-S5,使目标输出屏幕持续共享源输出屏幕的显存buffer;
针对多GPU模式且源输出屏幕和目标输出屏幕所属GPU不一致的情况,目标输出屏幕通过如下方式共享源输出屏幕的显存buffer:
步骤S51:目标输出屏幕获取源输出屏幕记录并加锁的显存buffer,将源输出屏幕的显存buffer导出纹理;
步骤S52:目标输出屏幕从所属GPU管理的显存池中申请一个显存buffer,并且attach渲染器;
步骤S53:渲染开始:提交GPU渲染开始命令,获取GPU渲染上下文;
步骤S54:渲染纹理:将步骤S51导出的纹理,渲染到步骤S52目标输出屏幕申请的显存buffer中;
步骤S55:渲染结束:执行GPU渲染结束命令,将步骤S53-S54提交命令发送给GPU命令环等待GPU执行完成;
步骤S56:提交送显:将渲染完成后的显存buffer提交内核显卡驱动执行送显操作;
步骤S57:将步骤S51导出的纹理执行销毁操作;
步骤S58:将获取的源输出屏幕记录的共享的显存bufffer进行解锁和释放。
2.如权利要求1所述的Wayland合成器中的镜像屏优化方法,其特征在于,源输出屏幕和目标输出屏幕根据屏幕输出扫描完成后内核上报的pageflip信号,重复步骤S3-S5,其中,
源输出屏幕在接收到pageflip信号后,从管理的显存池中申请新的显存buffer,并重复步骤S3-S4进行新的显示内容的合成并进行送显;
目标输出屏幕在接收到pageflip信号后,重复步骤S5,再次获取并共享源输出屏幕的显存buffer,根据新的显存buffer进行提交更新显示。
3.如权利要求1或2所述的Wayland合成器中的镜像屏优化方法,其特征在于,针对单GPU模式,或者多GPU模式且源输出屏幕和目标输出屏幕所属GPU一致的情况,目标输出屏幕通过如下方式共享源输出屏幕的显存buffer:直接获取源输出屏幕记录的显存bufferID进行提交送显。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310186368.0A CN115857860B (zh) | 2023-03-02 | 2023-03-02 | Wayland合成器中的镜像屏优化方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310186368.0A CN115857860B (zh) | 2023-03-02 | 2023-03-02 | Wayland合成器中的镜像屏优化方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115857860A CN115857860A (zh) | 2023-03-28 |
CN115857860B true CN115857860B (zh) | 2023-06-02 |
Family
ID=85659567
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310186368.0A Active CN115857860B (zh) | 2023-03-02 | 2023-03-02 | Wayland合成器中的镜像屏优化方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115857860B (zh) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113220474A (zh) * | 2021-04-21 | 2021-08-06 | 麒麟软件有限公司 | 一种基于Android-EMUGL的安卓应用共享Linux系统屏幕数据的方法 |
CN113672184A (zh) * | 2020-05-15 | 2021-11-19 | 华为技术有限公司 | 屏幕扩展方法、装置、终端设备及计算机可读存储介质 |
CN114489888A (zh) * | 2022-01-10 | 2022-05-13 | 麒麟软件有限公司 | 基于DRM的Android应用共享Linux系统屏幕数据的方法 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20110314387A1 (en) * | 2010-06-18 | 2011-12-22 | International Business Machines Corporation | Intelligent filtering for render status determination in a screen sharing system |
CN106209523B (zh) * | 2015-05-07 | 2020-06-02 | 华为技术有限公司 | 一种屏幕共享的实现方法、装置和媒体终端 |
KR20190042898A (ko) * | 2017-10-17 | 2019-04-25 | 최지훈 | 효과적 커뮤니케이션을 위한 화면 공유 시스템 |
CN109343929B (zh) * | 2018-09-05 | 2021-06-25 | 武汉光庭信息技术股份有限公司 | 一种基于虚拟化共享显存的多屏互动方法和系统 |
CN114022344B (zh) * | 2022-01-10 | 2022-04-05 | 北京蔚领时代科技有限公司 | 基于Linux服务器的Android容器渲染资源共享方法和装置 |
-
2023
- 2023-03-02 CN CN202310186368.0A patent/CN115857860B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113672184A (zh) * | 2020-05-15 | 2021-11-19 | 华为技术有限公司 | 屏幕扩展方法、装置、终端设备及计算机可读存储介质 |
CN113220474A (zh) * | 2021-04-21 | 2021-08-06 | 麒麟软件有限公司 | 一种基于Android-EMUGL的安卓应用共享Linux系统屏幕数据的方法 |
CN114489888A (zh) * | 2022-01-10 | 2022-05-13 | 麒麟软件有限公司 | 基于DRM的Android应用共享Linux系统屏幕数据的方法 |
Also Published As
Publication number | Publication date |
---|---|
CN115857860A (zh) | 2023-03-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP2315123B1 (en) | Methods and systems for remoting three dimensional graphics | |
US7281213B2 (en) | System and method for network transmission of graphical data through a distributed application | |
CN112269603B (zh) | 一种在Linux上兼容运行Android应用的图形显示方法与装置 | |
AU2004287140B2 (en) | System and method for a unified composition engine in a graphics processing system | |
CN114741081B (zh) | 一种基于异构缓存访问的跨运行环境显示输出共享方法 | |
CN116821040B (zh) | 基于gpu直接存储器访问的显示加速方法、装置及介质 | |
US6307559B1 (en) | Method and apparatus for color space conversion, clipping, and scaling of an image during blitting | |
CN115934383A (zh) | Wayland合成器下多显卡渲染方法 | |
JP2006060596A (ja) | 描画命令のフックを利用した画像の転送 | |
CN115857860B (zh) | Wayland合成器中的镜像屏优化方法 | |
CN115309315B (zh) | Wayland环境下X应用的截图方法、系统及介质 | |
JP3826941B2 (ja) | 描画命令のフックを利用した画像の転送 | |
CN115357328A (zh) | 一种基于Linux系统的GPU 3D送显方法 | |
JP3797371B2 (ja) | 描画命令のフックを利用した画像の転送 | |
CN112005209B (zh) | 用于以原子方式呈现覆盖多个显示器的单个缓冲器的机制 | |
CN116166367B (zh) | 提升显示帧缓存图像读取效率的方法 | |
CN111127296B (zh) | 一种在大屏可视化系统中高效图片渲染方法 | |
US20140049561A1 (en) | Pooling and tiling data images from memory to draw windows on a display device | |
JP3021159B2 (ja) | 画像処理装置及び方法 | |
TWI484472B (zh) | 顯示影像之方法及裝置 | |
CN117724797A (zh) | 一种基于异构混合渲染的自由缩放优化方法 | |
JPH04246784A (ja) | 画像処理装置 | |
TW200832212A (en) | Method for obtaining graphic equipment interface invocation with filtering drive |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |