0

我希望这很简单。我正在从我的 Ubuntu linux 桌面为嵌入式 linux 平台编写应用程序。该应用程序本身在 X11 下运行良好。我还可以使用 fbcon 驱动程序和 /dev/fb0 让它工作。

但是,如果我putenv("SDL_VIDEODRIVER=directfb");收到错误“没有可用的视频设备”

我对 SDL 还是很陌生,所以我不确定发生了什么。我刚刚使用“apt-get install libsdl”在我的 ubuntu 桌面上安装了 libsdl。那么标准的 ubuntu SDL 构建不支持 DirectFB 吗?在此之前我还需要安装/设置/执行其他东西吗?

或者,更重要的是,当 fbcon 工作正常时,尝试让 DirectFB 工作是否有任何意义/优势?我认为 DirectFB 将允许我正确设置视频模式并提供某种形式的硬件加速,而 fbcon 不会。

4

1 回答 1

1

SDL 为您(程序员)提供了一种抽象,作为该抽象的一部分,它可以强制在后端使用多种不同的硬件视频模式。

您试图强制它使用底层硬件不支持的硬件模式。

强制它使用特定硬件模式的唯一原因是您怀疑您可能能够从特定模式获得更高的性能,或者您希望更好地控制正在发生的事情。例如,一些硬件模式支持全屏、更智能的屏幕缩放、加速图形等。

最后,您只需将提示传递给 SDL,它可能会或可能不会做您怀疑的事情。如果您强制它使用特定的后端,则它们执行您怀疑它应该执行的操作的可能性更高。

于 2011-08-11T23:39:59.583 回答