Open GoogleCodeExporter opened 8 years ago
There are known problems with the image available from /dev/graphics/fb0 in
recent
versions of Android, which may explain this problem.
This is because /dev/graphics/fb0 on Android does not accurately reflect the
true
screen image due to double-buffering. Specifically it's caused by the
"PARTIAL_UPDATES" flag inside SurfaceFlinger, which appears to indicate that the
display hardware can be informed that only a certain area of the screen needs
updating - there is therefore no need for SurfaceFlinger to update the rest of
the
fb0 device.
Similar problems are visible when using DDMS to grab screenshots, since that too
refers to /dev/graphics/fb0.
The true screen image is only guaranteed to be available inside SurfaceFlinger
using
OpenGL calls; some future Android devices may not even have /dev/graphics/fb0.
We (at RealVNC) soon plan to submit some patches to the Android open-source
project
which will fix this problem, by providing a new API from SurfaceFlinger to grab
the
screen. It's yet to be determined exactly how this API will be secured, though,
so
it's not clear whether it will be accessible to fbvncserver.
Original comment by adetay...@gmail.com
on 24 Feb 2010 at 10:29
Original issue reported on code.google.com by
mnis...@marvell.com
on 22 Aug 2009 at 6:14