Android13 SurfaceFlinger Composite(合成)流程分析-CSDN博客
SurfaceFlinger的composite方法,用于将多个窗口的图像进行合成,主要负责对相关要进行上帧的layer进行,识别排序好,然后合成,有hwc合成的会构建对应OutputLayer传递hwc,GPU合成则直接合成,再传递到hwc中,它主要完成以下几个步骤:
SurfaceFlinger的composite方法,用于将多个窗口的图像进行合成,主要负责对相关要进行上帧的layer进行,识别排序好,然后合成,有hwc合成的会构建对应OutputLayer传递hwc,GPU合成则直接合成,再传递到hwc中,它主要完成以下几个步骤:
onComposerHalHotplug是一个Android系统中的一个事件回调函数,用于处理Composer HAL(Hardware Abstraction Layer)的热插拔事件。Composer HAL是Android系统中负责处理图形渲染和显示的硬件抽象层,它与硬件驱动程序和图形服务之间进行通信。
onComposerHalVsync是一个Android系统中的一个回调函数,用于在垂直同步(Vsync)事件发生时通知应用程序。Vsync是指显示器刷新的时间点,它通常以固定的频率发生,比如60Hz。应用程序可以通过注册onComposerHalVsync回调函数来获取Vsync事件的通知。
SurfaceFlinger的onLayerUpdate方法用于在图形层更新时进行相应的处理,代码如下:
| |
调用SurfaceFlinger的scheduleCommit方法:
SurfaceComposerClient对象是在哪里创建的呢?是在SurfaceSession构造时候创建
frameworks/base/core/jni/android_view_SurfaceSession.cpp