我正在为嵌入式 linux/MIPS 设备开发 Qt 应用程序。到目前为止,我设法在设备上执行了我的 Qt 应用程序。现在我需要在视频之上创建叠加层。硬件提供四个叠加窗口,不支持 OpenGL。
到目前为止尝试过:
- 尝试在视频之上创建
QStackedLayout
和创建叠加层。QGraphicsView
但是覆盖显示为黑色,尽管覆盖上的小部件会响应用户点击。 - 试图直接访问多个帧缓冲区。我可以访问/dev/fb0但不能访问 / dev/fb1 , 2 , 3。
- 尝试创建一个简单的 Qt 应用程序,上面有一个对话框和一个按钮。我尝试使用此命令在嵌入式设备上执行它
./<appname> -display directfb:/dev/fb1:2
。但它无法打开/dev/fb1。
问题:
- 如何使用 LCD 控制器提供的覆盖窗口?
- 是否可以使用 QT 提供的 directfb 插件并利用其对 OpenGL 的支持?
- 我是否必须将/dev/fb1显式映射到用户空间才能使用它?
在这方面需要紧急帮助。