读取android层的内容



我正在做一个项目,这个项目涉及到读取一个图层的内容,这个图层将由surfaceflinger合成。

我特别需要检查要合成的层是全1位0还是全0位。

这是为了在SurfaceFlinger合成前应用一些优化。

我通过adb-logcat(通过添加我自己的日志消息)跟踪缓冲区的创建,但无法找到读取层实际内容的方法。

谁能告诉我这是可能的,如果是,怎么做?

一般来说,它不是。例如,如果该层正在显示受drm保护的视频,则无法读取数据。

对于未受保护的图层,你可以用glReadPixels()读取像素值——在SurfaceFlinger的截图代码中有一些代码可以用来检查空白截图——但这将会很慢。

请记住,不是所有的图层都是RGB的。如果图层为YUV,则"全零"图层实际上是暗绿色。

相关内容

  • 没有找到相关文章