Fed*_*ico 26 linux hardware graphics framebuffer
我正在尝试让 PCMCIA 调谐器卡在我的无头家庭服务器中运行,运行 Debian Squeeze。现在,由于我很难找到正确的命令行进行捕获,使用 VLC 将视频转码端流式传输到网络,因此我决定逐步进行,并首先处理本地输出。
这就是问题所在:似乎没有帧缓冲设备 (/dev/fb0) 可以访问以在附加屏幕上显示图形!事实上,我注意到我在启动时没有 Linux penguin 映像(之前没有注意,因为屏幕已连接,但始终关闭,无论如何计算机始终处于开启状态)。
由于我对Linux图形不太熟悉,我想了解:
现在一些一般信息:
关于这个问题的任何想法/评论?
J. *_*ker 39
我可以解决您的问题,之前曾与 Linux FB 合作过。
首先,您的内核中需要有 FrameBuffer 支持,与您的硬件相对应。大多数现代发行版都通过内核模块提供支持。如果您的发行版预先配置了启动徽标并不重要,我不使用它并且有 FB 支持。
如果您有专用显卡并不重要,只要支持硬件帧缓冲区,集成就可以工作。
您不需要 X,这是拥有 FrameBuffer 最诱人的方面。有些人不太清楚,所以他们提倡某种形式的 X 来解决他们的误解。
您不需要直接使用 FB,许多人错误地认为这一点。一个非常棒的用 FrameBuffer 开发的库,DirectFB
它甚至有一些基本的加速支持。我总是建议至少检查一下,如果你正在开始一个功能齐全的基于 FB 的项目(Web 浏览器、游戏、GUI ...)
使用 Vesa Generic FrameBuffer,其模块称为vesafb
. 如果可用,您可以使用命令加载它 modprobe vesafb
。许多发行版预配置它禁用,您可以签入/etc/modprobe.d/
。blacklist vesafb
可能需要用#
, 在 ablacklist-framebuffer.conf
或其他黑名单文件中注释掉。
最佳选项是特定于硬件的 KMS 驱动程序。英特尔的主要模块是英特尔 GMA,不确定其模块的名称。您需要从发行版文档中阅读有关它的信息。这是性能最好的 FB 选项,如果可能的话,我个人总是先使用 KMS。
使用旧硬件特定的 FB 驱动程序,不推荐使用,因为它们有时有问题。除非万不得已,否则我会避免使用此选项。
我相信这涵盖了您的所有问题,并且应该提供信息以使该/dev/fb0
设备可用。任何更具体的内容都需要分发详细信息,如果您有一定的经验,RTFM 应该就是您所需要的。(阅读本文后)。
我希望我有帮助,你很幸运你问了我的主题之一!这是 UNIX-SE 上的一个被忽视的主题,因为并非每个人(有意)都使用 Linux FrameBuffer。
您可能已经读过人们使用uvesafb
over vesafb
,因为它具有更好的性能。这通常是正确的,但在具有现代硬件的现代发行版中并非如此。如果您的图形硬件支持保护模式 VESA (VESA >= 2.0 ),并且您有一个较新的内核vesafb
,那么现在是更好的选择。
Fed*_*ico 11
我终于找到了解决我的问题的方法!!
首先,非常感谢所有做出贡献的人,尤其是 TechZilla 以及他提供的详细解释,如果没有这些解释,我想我早就放弃了!
所以基本上所有需要做的就是modeset=1
在i915
内核模块加载时启用模式设置( ) 。这可以通过通常的方式完成:
/etc/modprobe.d
或在命令行:
# rmmod i915
# modprobe i915 modeset=1
Run Code Online (Sandbox Code Playgroud)事实上,如果你安装 package xserver-xorg-video-intel
,你不需要做任何事情,这会创建/etc/modprobe.d/i915-kms.conf
包含options i915 modeset=1
. 但是,如果有人不想安装 X(就像我的情况),那么 KMS 不会自动启用,这就解释了为什么没有创建 FrameBuffer 设备......
归档时间: |
|
查看次数: |
75609 次 |
最近记录: |