Answers:
您尝试过Fbida吗?
fbida
包含fbi
,用于帧缓冲区的图像查看器。
链接到fbi
手册页-http://manpages.ubuntu.com/manpages/lucid/man1/fbi.1.html
PS-我不确定它是否可以在Raspbian中使用。
-noverbose
选项可以使它仅显示图像本身。但是,这没有在手册页中记录,而是仅在“用法:”中进行了说明。
-noverbose
我使用时fbi
,@ Jules在raspbian上为我工作apt-get install fbi
。
详细的手册http://hacklab.cz/2012/04/22/usefulness-linux-framebuffer-virtual-console可能对您有帮助我认为关于Linux Framebuffer的所有论述
帧缓冲图像数据采用什么格式?
Linux内核4.2文档https://github.com/torvalds/linux/blob/v4.2/Documentation/fb/api.txt#45说:
像素以硬件相关格式存储在内存中。应用程序需要注意像素存储格式,以便以硬件期望的格式将图像数据写入帧缓冲存储器。
格式由帧缓冲区类型和视觉效果描述。某些视觉效果需要其他信息,这些信息存储在可变屏幕信息bits_per_pixel,灰度,红色,绿色,蓝色和transp字段中。
视觉描述了如何对颜色信息进行编码和组合以创建宏像素。类型描述了宏像素如何存储在内存中。支持以下类型和视觉效果。
下面是视觉效果和类型的列表,但是该描述不足以让我立即了解确切的格式。
如果可以安装它们,fbcat
将创建ppm图像,并fbgrab
创建png图像。
在类似fb_var_screeninfo的结构中查看/usr/include/linux/fb.h。可以有多种颜色深度和格式。我经常看到16位/像素,现在我有32位。单独键入fbset,它将显示当前设置。这几乎肯定是/etc/fb.modes中的条目之一。
upstairs# fbset
mode "1920x1080"
geometry 1920 1080 1920 1080 32
timings 0 0 0 0 0 0 0
rgba 8/16,8/8,8/0,8/24
endmode
如果可以使Imagemagick与所需的模式完全匹配,则它可能会起作用。我可能会用C写一些东西,调用libjpeg或libpng的十几行代码可以将图像解压缩到内存数组中。您的位/颜色等需要匹配,或者您需要写一些东西进行转换。好的经历。
同样,与其将文件/ dev / fb0读/写为文件,不如对其进行open()获取文件描述符,然后对它进行mmap()获取,这样您就可以使用指向内存的指针。进行传输要快得多,至少10倍。
但是为了在屏幕上放置图像,我只安装了qiv。然后按F1寻求帮助,但是如果您要的是在显示图像时将x永久写入根窗口。或者只是在“桌面偏好设置”中将其设置为墙纸,它将在每次启动时显示。