Advertisement

如何将Android Surface的相关Buffer传输至HWC

阅读量:

Android Surface对应的Buffer怎么传递给HWC

引言

【为开展Android Video overlay的前期研究,必须将SurfaceView所关联的GraphicBuffer从drm_hwcomposer模块中分离出来,这就要求我们深入理解该GraphicBuffer的生成过程、数据传输路径及其在各个组件间的交互关系。本文将重点探讨这一GraphicBuffer是如何被传递至HWC模块的。

本文所使用的参考代码基于Android 13 AOSP版本!

Surface的Buffer是怎么传递给HWC呢

我们可通过分析代码执行流程来观察:

复制代码
    using LayerFESet = std::unordered_set<sp<LayerFE>, LayerFESpHash>;
    SurfaceFlinger::composite(...)
    compositionengine::CompositionRefreshArgs refreshArgs;  
        mDrawingState.traverseInZOrder([&refreshArgs](Layer* layer) {
            if (auto layerFE = layer->getComp

全部评论 (0)

还没有任何评论哟~