我如何处理Android设备';什么是帧缓冲区?

我如何处理Android设备';什么是帧缓冲区?,android,ffmpeg,framebuffer,Android,Ffmpeg,Framebuffer,我要处理Android的帧缓冲区。我有一个根Galaxy R(SHV-E170K)用于测试,我在其上运行以下命令: adb pull /dev/graphics/fb0 fb0 然后,我运行ffmpeg命令: ffmpeg -vcodec rawvideo -f rawvideo -pix_fmt rgb0 -s 540x960 -i fb0 -f image2 -vcodec png frame-%d.png 但我得到了错误的图像 如何正确处理android的帧缓冲区 谢谢。看起来您使用

我要处理Android的帧缓冲区。我有一个根Galaxy R(SHV-E170K)用于测试,我在其上运行以下命令:

adb pull /dev/graphics/fb0 fb0
然后,我运行ffmpeg命令:

ffmpeg -vcodec rawvideo -f rawvideo -pix_fmt rgb0 -s 540x960 -i fb0 -f image2 -vcodec png frame-%d.png
但我得到了错误的图像

如何正确处理android的帧缓冲区


谢谢。

看起来您使用的分辨率不正确。。。尝试更改540x960零件…重新解决是正确的。我打电话给ioctl fb的信息是540x960…自动应答。(我还不能写自我回答。:()我预计帧缓冲区大小为6220800字节(xresv*yresv*bpp/8),但实际帧缓冲区大小为6266880字节(行长度/(bpp/8)*yresv*bpp/8)xres=540年xresv=540年xresv=2880 bpp=32行长度:2176(…预计2160)所以我只是将xres改为544,这个问题已经解决了,所以这毕竟是解决方案…;)