Linux 在嵌入式系统中,若不支持键盘的情况可以用以下方法进行截屏操作:
一般Linux的framebuffer 对应/dev/fb0这个字符设备文件,输入命令:
cat /dev/fb0 > frame.raw
这样就得到了原始的截屏文件frame.raw,此时将其拷贝到电脑上,利用ffmpeg工具就能够将原始文件转换成png图片:
ffmpeg -vcodec rawvideo -f rawvideo -pix_fmt rgb32 -s 800X480 -i frame.raw -f image2 -vcodec png frame-%d.png
其中需要注意:
1.bgr32是屏幕的RGB格式,这个需要确定,格式有很多,例如rgb565,rgb24,rgb32等等
2.800X480是屏幕的分辨率,宽X高
3.fram.raw是原始文件名
关于ffmpeg的安装和自己屏幕rgb格式的确定麻烦参考下其它网友经验,这里不赘述了。
ffmepeg安装参考:
安卓截屏和linux类似,只是设备文件变为/dev/graphics/fb0
具体原理参考以下: