![什么是内核帧缓冲区?](https://linux22.com/image/5572/%E4%BB%80%E4%B9%88%E6%98%AF%E5%86%85%E6%A0%B8%E5%B8%A7%E7%BC%93%E5%86%B2%E5%8C%BA%EF%BC%9F.png)
我正在阅读“mplayer”手册页,尝试仅使用控制台播放视频(我没有或不想安装 X11)。它提到我可以使用内核帧缓冲区设备,即 fbdev2。它有效,但我不太了解“内核帧缓冲区”是什么。我可以配置它吗?它的使用有限制吗?它是否使用视频卡来渲染图形?另外,(我的笔记本电脑上集成了英特尔显卡)是否有替代方案或更好的解决方案来从不是内核帧缓冲区的控制台播放视频?
答案1
标准拼写是“framebuffer”,不带空格。在 Linux 内核中,fbdev 是视频硬件(又名视频卡)的(可选)图形抽象层。不同的视频硬件需要不同的驱动程序(可以作为内核模块加载),但用户空间软件(例如mplayer
)使用统一的 API 对其进行写入。这个单词帧缓冲区本身是指存储视频帧的视频内存的一部分。
是的,它是可配置的。首先,您可以选择要加载(或构建到内核中)的驱动程序。其次,fbset(8) 可以更改模式和其他设置,以及一些更高级别的实用程序。限制?当您使用帧缓冲驱动程序时,您无法享受硬件(例如 VGA 兼容)文本模式并承受一些开销 - 这是最严重的一个。看http://tldp.org/HOWTO/Framebuffer-HOWTO/更多细节。
有很多视频输出驱动程序mplayer
(除了 Framebuffer 和 X11 之外),但不知道哪个更好以及在哪种意义上更好。