linux远程连接硬件加速,linux – 没有X的硬件加速

我想知道是否有可能在没有Xorg及其DDX驱动程序的情况下获得图形硬件加速,只有内核模块和其他用户空间驱动程序.我问这个是因为我开始在嵌入式平台上开发(比如beagleboard或更像是一个带有集成GPU的德州仪器ARM芯片),我会得到硬件加速,而不需要图形服务器的开销(不是需要).

谢谢.

解决方法:

答案取决于您的用户应用程序.如果一切都是裸机,而您的应用团队正在编写所有内容,那么DirectFB API可以用作Fredrik的建议.如果您使用GTK的帧缓冲版本,这可能会特别有趣.

但是,如果您使用Qt,那么这不是最好的前进方式. Qt5.0取消了QWS(Qt embedded acceleration). Qt正在迁移到LightHouse,现在称为QPA.如果您编写的QPA插件通过您公开的任何内核机制使用图形加速,那么您已经加速了Qt图形.也感兴趣的可能是Wayland architecture;还有适用于Wayland的QPA插件.在Qt4.8和Qt5.0中支持QPA. Skia也是一个有趣的图形API,支持OpenGL后端; Android设备使用Skia.

获得图形加速很容易.你想要合成吗?你的记忆足迹是什么?谁是您的API开发人员?您需要对象功能还是只需绘制图元? SKIA,PegUI,WindML和完整的图形框架(Gtk,Qt)之间存在很大差异,具有人们期望的所有小部件和动态效果.初看起来,编程到OpenGL ES API似乎很好,但如果您的应用程序有任何复杂性,您将需要更丰富的图形框架;主要是重复Mats Petersson的评论.

> CPU阻击 – 最慢

> Hardware blitter – 例如,directFB.快速内存移动通常使用位操作而不是机器字,如DMA.

> 2D矢量 – OpenVG,棒图绘制,带位操作.

> 3D绘图 – OpenGL(ES)具有多边形填充等.

这是您希望执行的绘图类型.像Qt和Gtk这样的框架,提供了一个API,可以在屏幕上放置单选按钮,复选框,编辑框等.它还具有文本样式和与键盘,鼠标和/或触摸屏和其他元素的交互.框架使用绘图引擎将对象放在屏幕上.

图形加速只是将像Bresenham algorithm这样的算法放在单独的CPU或专用硬件中.如果您选择的框架不支持3D对象,则框架不太可能需要OpenGL支持,并且可能无法更好地执行.

最后一块拼图是window manager.许多嵌入式设备不需要这个.然而,许多手机正在使用合成和alpha值来创建透明窗口,并允许同时看到多个应用程序.这也可能会影响您的图形API.

另外:DRI without X给出了一些令人信服的理由,说明为什么这可能不是一件好事;对于单个用户任务的情况,甚至不需要DRI.

以下是Wayland图形堆栈blog on Wayland的示意图.

标签:linux,embedded,arm,opengl-es,xorg

来源: https://codeday.me/bug/20190529/1179789.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值