0

最近,我开始使用dumpsys SurfaceFlinger收集一些关于android图形的信息。我目前在一个名为 Odroid-XU3 的开发板上工作。显示器是戴尔显示器,通过 HDMI 电缆连接到主板。

在上述命令输出的最后几行中,我有两个显示器,而我只希望有一个。其中一个是Display[0],另一个是Display[1]。每个显示的type列可以是HWCGLES。有时它们都是 HWC 或 GLES,有时一个是 HWC,另一个是 GLES。

Display[0] 和 Display[1] 有什么区别?我试图找到一个文档来了解如何解释上述命令的输出,但我没有发现任何有用的东西。

4

1 回答 1

1

在您的问题中提供 dumpsys 输出会有所帮助,但我可以做一些一般性的观察。

display[0]是设备的内置显示屏。display[1]是“外部”显示器,在您的情况下是 HDMI。这两个指数是硬连线的。(嗯,他们是 KitKat 的;我不知道他们是否已经从非硬连线的东西开始。)虚拟显示器从索引 2 开始。

显示屏下方的文本块是硬件作曲家转储。它在屏幕上显示图层,并提供有关每个图层的位置、旋转和格式的大量信息。

最接近文档的内容可以在图形架构文档的 HWC 部分中找到。鉴于您正在使用的系统级别,我建议您阅读整个文档。除此之外,您可以尝试从源代码中辨别含义。

Arch 文档确实解释了输出中“HWC”和“GLES”之间的区别:“HWC”表示表面存在于显示覆盖层上,而“GLES”表示表面是由 GPU 组成的。

于 2015-06-19T00:03:14.860 回答