Dump SurfaceFlinger log解析

Build configuration: [sf PRESENT_TIME_OFFSET=0 FORCE_HWC_FOR_RBG_TO_YUV=1 MAX_VIRT_DISPLAY_DIM=4096 RUNNING_WITHOUT_SYNC_FRAMEWORK=0 NUM_FRAMEBUFFER_SURFACE_BUFFERS=3] [libui] [libgui]
Display identification data:
Display 19261116564980353 (HWC display 0): port=129 pnpId=QCM displayName="xxxxxx 38 0c "
Wide-Color information:
Device has wide color built-in display: 1
Device uses color management: 1
DisplayColorSetting: Unknown 258
Display 19261116564980353 color modes:
    ColorMode::NATIVE (0)
    ColorMode::SRGB (7)
    ColorMode::DISPLAY_P3 (9)
    Current color mode: ColorMode::SRGB (7)
Sync configuration: [using: EGL_ANDROID_native_fence_sync EGL_KHR_wait_sync]
VSYNC configuration:
        app phase:  1000000 ns         SF phase:  1000000 ns
  early app phase:  1000000 ns   early SF phase:  6100000 ns
GL early app phase:  1000000 ns GL early SF phase:  9000000 ns
    present offset:        0 ns     VSYNC period:  11111111 ns //VSync周期11.1s
Scheduler enabled.+  Smart 90 for video detection: off

//屏幕刷新率支持60Hz和90Hz两种模式

Allowed Display Configs: 60Hz, 90Hz, (config override by backdoor: no)
app: state=Idle VSyncState={displayId=19261116564980353, count=1740}
  pending events (count=0)://待处理event

//当前与VSync建立的连接个数, 用户创建的EventThreadConnection个数,比如Choreographer.java初始化的时候就会建立一条链接

  connections (count=33):

//VSyncRequest标志当前Connection是否有request,有三种值:None,Single,Periodic

    Connection{0x75f0947500, VSyncRequest::None}
    Connection{0x75e0afd3c0, VSyncRequest::None}
    Connection{0x75ec6393c0, VSyncRequest::None}
(太长了,省略部分Connection)

//这个是SF在发起合成(composition)的时候记录本次合成与上次合成之间的时间间隔之和
//其目的大概是为了记录SF的合成繁忙程度吧
//其格式是:<[1-7]表示小于x个VSync信号周期,7+表示大于7个Vsync周期,也就是90Hz屏幕中7+表示大于(1s/90)*7≈77.77ms,下面7+为10.341s则代表至多132次(可能更少,因为合成间隔可能大于7)合成是大于7个VSync周期的,大于7可能表示SF比较空闲吧

Static screen stats:
  < 1 frames: 9.407 s (27.8%)
  < 2 frames: 10.771 s (31.8%)
  < 3 frames: 1.525 s (4.5%)
  < 4 frames: 0.767 s (2.3%)
  < 5 frames: 0.502 s (1.5%)
  < 6 frames: 0.376 s (1.1%)
  < 7 frames: 0.134 s (0.4%)
  7+ frames: 10.341 s (30.6%)
Total missed frame count: 20
HWC missed frame count: 20 //丢帧数
GPU missed frame count: 0
Buffering stats:
  [Layer name] <Active time> <Two buffer> <Double buffered> <Triple buffered>
  [BootAnimation#0] 5.74 0.000 1.000 0.000
  [com.miui.miwallpaper.superwallpaper.MarsSuperWallpaper#0] 5.16 0.000 0.000 1.000
  [StatusBar#0] 4.04 0.109 0.715 0.153
  [com.miui.home/com.miui.home.launcher.Launcher#0] 1.71 0.447 1.000 0.000
Visible layers (count = 52)
GraphicBufferProducers: 7, max 4096
+ ContainerLayer (Display Background#0  screenFlags = 0)
  Region TransparentRegion (this=0 count=0)
  Region VisibleRegion (this=0 count=0)
  Region SurfaceDamageRegion (this=0 count=0)
      layerStack=  0, z=      -1, pos=(0,0), size=(  0,  0), crop=[  0,  0,  -1,  -1], cornerRadius=0.000000, isProtected=0, isOpaque=0, invalidate=1, dataspace=Default, defaultPixelFormat=Unknown/None, color=(0.000,0.000,0.000,1.000), flags=0x00000002, tr=[0.00, 0.00][0.00, 0.00]
      parent=none
      zOrderRelativeOf=none
      activeBuffer=[  0x  0:  0,Unknown/None], tr=[0.00, 0.00][0.00, 0.00] queued-frames=0, mRefreshPending=0, metadata={}
(省略一大堆ContainerLayer)
+ BufferLayer (com.miui.miwallpaper.superwallpaper.MarsSuperWallpaper#0  screenFlags = 0)
  Region TransparentRegion (this=0 count=0)
  Region VisibleRegion (this=0 count=0)
  Region SurfaceDamageRegion (this=0 count=0)
      layerStack=  0, z=        0, pos=(0,0), size=(1080,2340), crop=[  0,  0,  -1,  -1], cornerRadius=0.000000, isProtected=0, isOpaque=1, invalidate=1, dataspace=BT709 sRGB Full range, defaultPixelFormat=RGBx_8888, color=(0.000,0.000,0.000,1.000), flags=0x00000003, tr=[0.00, 0.00][0.00, 0.00]
      parent=713094b com.miui.miwallpaper.superwallpaper.MarsSuperWallpaper#0  screenFlags = 0
      zOrderRelativeOf=none
      activeBuffer=[ 864x1872: 896,RGBA_8888], tr=[0.00, 0.00][0.00, 0.00] queued-frames=0, mRefreshPending=0, metadata={windowType:2013, ownerUID:10113}
+ ColorLayer (animation background stackId=1#0  screenFlags = 0)
  Region TransparentRegion (this=0 count=0)
  Region VisibleRegion (this=0 count=0)
  Region SurfaceDamageRegion (this=0 count=0)
      layerStack=  0, z=        0, pos=(0,0), size=(  0,  0), crop=[  0,  0,  -1,  -1], cornerRadius=0.000000, isProtected=0, isOpaque=0, invalidate=0, dataspace=Default, defaultPixelFormat=Unknown/None, color=(0.000,0.000,0.000,1.000), flags=0x00000001, tr=[0.00, 0.00][0.00, 0.00]
      parent=Stack=1#0  screenFlags = 0
      zOrderRelativeOf=none
      activeBuffer=[  0x  0:  0,Unknown/None], tr=[0.00, 0.00][0.00, 0.00] queued-frames=0, mRefreshPending=0, metadata={}
+ BufferLayer (com.android.settings/com.android.settings.MainSettings#0  screenFlags = 0)
  Region TransparentRegion (this=0 count=0)
  Region VisibleRegion (this=35 count=1)
    [  0,  0, 1080, 2340]
  Region SurfaceDamageRegion (this=0 count=0)
      layerStack=  0, z=        0, pos=(0,0), size=(1080,2340), crop=[  0,  0, 1080, 2340], cornerRadius=0.000000, isProtected=0, isOpaque=1, invalidate=0, dataspace=Default, defaultPixelFormat=RGBA_8888, color=(0.000,0.000,0.000,1.000), flags=0x00000002, tr=[0.00, 0.00][0.00, 0.00]
      parent=f463b32 com.android.settings/com.android.settings.MainSettings#0  screenFlags = 0
      zOrderRelativeOf=none
      activeBuffer=[1080x2340:1088,RGBA_8888], tr=[0.00, 0.00][0.00, 0.00] queued-frames=0, mRefreshPending=0, metadata={windowType:1, ownerUID:1000}
+ BufferLayer (StatusBar#0  screenFlags = 0)
  Region TransparentRegion (this=0 count=0)
  Region VisibleRegion (this=35 count=1)
    [  0,  0, 1080,  90]
  Region SurfaceDamageRegion (this=35 count=1)
    [873,  34, 931,  90]
      layerStack=  0, z=        0, pos=(0,0), size=(1080,  90), crop=[  0,  0, 1080,  90], cornerRadius=0.000000, isProtected=0, isOpaque=0, invalidate=0, dataspace=Default, defaultPixelFormat=RGBA_8888, color=(0.000,0.000,0.000,1.000), flags=0x00000000, tr=[0.00, 0.00][0.00, 0.00]
      parent=94a55f1 StatusBar#0  screenFlags = 0
      zOrderRelativeOf=none
      activeBuffer=[1080x  90:1088,RGBA_8888], tr=[0.00, 0.00][0.00, 0.00] queued-frames=0, mRefreshPending=0, metadata={windowType:2000, ownerUID:1000}
+ BufferLayer (control_center#0  screenFlags = 0)
  Region TransparentRegion (this=0 count=0)
  Region VisibleRegion (this=0 count=0)
  Region SurfaceDamageRegion (this=0 count=0)
      layerStack=  0, z=        0, pos=(0,1170), size=(1080,  1), crop=[  0,  0,  -1,  -1], cornerRadius=0.000000, isProtected=0, isOpaque=0, invalidate=1, dataspace=Default, defaultPixelFormat=RGBA_8888, color=(0.000,0.000,0.000,1.000), flags=0x00000001, tr=[0.00, 0.00][0.00, 0.00]
      parent=d587946 control_center#0  screenFlags = 0
      zOrderRelativeOf=none
      activeBuffer=[  0x  0:  0,Unknown/None], tr=[0.00, 0.00][0.00, 0.00] queued-frames=0, mRefreshPending=0, metadata={windowType:2014, ownerUID:1000}
+ BufferLayer (NavigationBar#0  screenFlags = 0)
  Region TransparentRegion (this=0 count=0)
  Region VisibleRegion (this=35 count=1)
    [  0, 2210, 1080, 2340]
  Region SurfaceDamageRegion (this=0 count=0)
      layerStack=  0, z=        0, pos=(0,2210), size=(1080, 130), crop=[  0,  0, 1080, 130], cornerRadius=0.000000, isProtected=0, isOpaque=0, invalidate=0, dataspace=Default, defaultPixelFormat=RGBA_8888, color=(0.000,0.000,0.000,1.000), flags=0x00000000, tr=[0.00, 0.00][0.00, 0.00]
      parent=3829067 NavigationBar#0  screenFlags = 0
      zOrderRelativeOf=none
      activeBuffer=[1080x 130:1088,RGBA_8888], tr=[0.00, 0.00][0.00, 0.00] queued-frames=0, mRefreshPending=0, metadata={windowType:2019, ownerUID:1000}
+ BufferLayer (RoundCorner#0  screenFlags = 0)
  Region TransparentRegion (this=0 count=0)
  Region VisibleRegion (this=35 count=1)
    [  0,  0, 1080, 198]
  Region SurfaceDamageRegion (this=0 count=0)
      layerStack=  0, z=        0, pos=(0,0), size=(1080, 198), crop=[  0,  0,  -1,  -1], cornerRadius=0.000000, isProtected=0, isOpaque=0, invalidate=0, dataspace=Default, defaultPixelFormat=RGBA_8888, color=(0.000,0.000,0.000,1.000), flags=0x00000000, tr=[0.00, 0.00][0.00, 0.00]
      parent=8e3ad02 RoundCorner#0  screenFlags = 0
      zOrderRelativeOf=none
      activeBuffer=[1080x 198:1088,RGBA_8888], tr=[0.00, 0.00][0.00, 0.00] queued-frames=0, mRefreshPending=0, metadata={windowType:2024, ownerUID:1000}
Composition layers
* compositionengine::Layer 0x75e0b13318 (com.miui.miwallpaper.superwallpaper.MarsSuperWallpaper#0)
    frontend:
      isSecure=false geomUsesSourceCrop=true geomBufferUsesDisplayInverseTransform=false geomLayerTransform 0x00000000 (ROT_0 ) 0x00 (IDENTITY )
    1.0000  0.0000  0.0000
    0.0000  1.0000  0.0000
    0.0000  0.0000  1.0000
      geomBufferSize=[0 0 1080 2340] geomContentCrop=[0 0 864 1872] geomCrop=[0 0 -1 -1] geomBufferTransform=0
        Region geomActiveTransparentRegion (this=0x75e0b133f0, count=1)
    [  0,  0,  0,  0]
      geomLayerBounds=[0.000000 0.000000 1080.000000 2340.000000]
      blend=NONE (1) alpha=1.000000
      type=0 appId=0 composition type=DEVICE (2)
      buffer: buffer=0x75e0ca2cc0 slot=0
      sideband stream=0x0
      color=[254 5 0]
      dataspace=V0_SRGB (142671872) hdr metadata types=0 colorTransform=[[1.000,0.000,0.000,0.000][0.000,1.000,0.000,0.000][0.000,0.000,1.000,0.000][0.000,0.000,0.000,1.000]]
* compositionengine::Layer 0x75ec651518 (animation background stackId=0#0)
    frontend:
      isSecure=false geomUsesSourceCrop=false geomBufferUsesDisplayInverseTransform=false geomLayerTransform 0x00000000 (ROT_0 ) 0x00 (IDENTITY )
    1.0000  0.0000  0.0000
    0.0000  1.0000  0.0000
    0.0000  0.0000  1.0000
      geomBufferSize=[0 0 -1 -1] geomContentCrop=[0 0 -1 -1] geomCrop=[0 0 -1 -1] geomBufferTransform=0
        Region geomActiveTransparentRegion (this=0x75ec6515f0, count=1)
    [  0,  0,  0,  0]
      geomLayerBounds=[0.000000 0.000000 0.000000 0.000000]
      blend=INVALID (0) alpha=1.000000
      type=0 appId=0 composition type=INVALID (0)
      buffer: buffer=0x0 slot=-1
      sideband stream=0x0
      color=[0 0 0]
      dataspace=UNKNOWN (0) hdr metadata types=0 colorTransform=[[1.000,0.000,0.000,0.000][0.000,1.000,0.000,0.000][0.000,0.000,1.000,0.000][0.000,0.000,0.000,1.000]]
* compositionengine::Layer 0x75ec652698 (com.android.settings/com.android.settings.MainSettings#0)
    frontend:
      isSecure=false geomUsesSourceCrop=true geomBufferUsesDisplayInverseTransform=false geomLayerTransform 0x00000000 (ROT_0 ) 0x00 (IDENTITY )
    1.0000  0.0000  0.0000
    0.0000  1.0000  0.0000
    0.0000  0.0000  1.0000
      geomBufferSize=[0 0 1080 2340] geomContentCrop=[0 0 1080 2340] geomCrop=[0 0 1080 2340] geomBufferTransform=0
        Region geomActiveTransparentRegion (this=0x75ec652770, count=1)
    [  0,  0,  0,  0]
      geomLayerBounds=[0.000000 0.000000 1080.000000 2340.000000]
      blend=NONE (1) alpha=1.000000
      type=0 appId=0 composition type=DEVICE (2)
      buffer: buffer=0x75ec668d40 slot=0
      sideband stream=0x0
      color=[0 0 0]
      dataspace=UNKNOWN (0) hdr metadata types=0 colorTransform=[[1.000,0.000,0.000,0.000][0.000,1.000,0.000,0.000][0.000,0.000,1.000,0.000][0.000,0.000,0.000,1.000]]
Displays (1 entries)
+ DisplayDevice{19261116564980353, primary, "xiaomi 38 0c "}
  powerMode=2, activeConfig=1, numLayers=5
mIsScreenProjection=0,    Composition Display State: ["xiaomi 38 0c "]
  isVirtual=false hwcId=19261116564980353
  isEnabled=true isSecure=true layerStack=0 layerStackInternal=true
  transform 0x00000000 (ROT_0 ) 0x00 (IDENTITY )
    1.0000  0.0000  -0.0000
    0.0000  1.0000  -0.0000
    0.0000  0.0000  1.0000
  frame=[0 0 1080 2340] viewport=[0 0 1080 2340] scissor=[0 0 1080 2340] needsFiltering=false
  colorMode=SRGB (7) renderIntent=0x102 (258) dataspace=V0_SRGB (142671872) colorTransform=0
  Composition Display Color State:
  HWC Support: wideColorGamut=true hdr10plus=true hdr10=true hlg=true dv=false metadata=7
  Composition RenderSurface State:
  size=[1080 2340] ANativeWindow=0x75f09b1010 (format 1) flips=1833
  FramebufferSurface: dataspace: Default(0)
  mAbandoned=0
  - BufferQueue mMaxAcquiredBufferCount=2 mMaxDequeuedBufferCount=1
    mDequeueBufferCannotBlock=0 mAsyncMode=0
    mQueueBufferCanDrop=0 mLegacyBufferDrop=1
    default-size=[1080x2340] default-format=1 transform-hint=00 frame-counter=50
  FIFO(0):
  Slots:
    >[01:0x75f098d700] state=ACQUIRED 0x75f093f9f0 frame=50 [1080x2340:1088,  1]
    [00:0x75f098d480] state=FREE    0x75f093f980 frame=48 [1080x2340:1088,  1]
    [02:0x75f098d840] state=FREE    0x75f093fa60 frame=49 [1080x2340:1088,  1]
  5 Layer  - Output Layer 0x75dd718e00 (Composition layer 0x75ec652698) (com.android.settings/com.android.settings.MainSettings#0)
        Region visibleRegion (this=0x75dd718e28, count=1)
    [  0,  0, 1080, 2340]
      forceClientComposition=false clearClientTarget=true displayFrame=[0 0 1080 2340] sourceCrop=[0.000000 0.000000 1080.000000 2340.000000] bufferTransform=0 (0) z-index=0
      hwc: layer=0x08a composition=DEVICE (2)
  - Output Layer 0x75dd55cb00 (Composition layer 0x75ec651798) (StatusBar#0)
        Region visibleRegion (this=0x75dd55cb28, count=1)
    [  0,  0, 1080,  90]
      forceClientComposition=false clearClientTarget=true displayFrame=[0 0 1080 90] sourceCrop=[0.000000 0.000000 1080.000000 90.000000] bufferTransform=0 (0) z-index=1
      hwc: layer=0x086 composition=DEVICE (2)
  - Output Layer 0x75dd717000 (Composition layer 0x75e0b14218) (NavigationBar#0)
        Region visibleRegion (this=0x75dd717028, count=1)
    [  0, 2210, 1080, 2340]
      forceClientComposition=false clearClientTarget=true displayFrame=[0 2210 1080 2340] sourceCrop=[0.000000 0.000000 1080.000000 130.000000] bufferTransform=0 (0) z-index=2
      hwc: layer=0x088 composition=DEVICE (2)
  - Output Layer 0x75dd55c100 (Composition layer 0x75ec651f18) (RoundCorner#0)
        Region visibleRegion (this=0x75dd55c128, count=1)
    [  0,  0, 1080, 198]
      forceClientComposition=false clearClientTarget=true displayFrame=[0 0 1080 198] sourceCrop=[0.000000 0.000000 1080.000000 198.000000] bufferTransform=0 (0) z-index=3
      hwc: layer=0x084 composition=DEVICE (2)
  - Output Layer 0x75dd55bc00 (Composition layer 0x75ec652198) (RoundCorner#1)
        Region visibleRegion (this=0x75dd55bc28, count=1)
    [  0, 2142, 1080, 2340]
      forceClientComposition=false clearClientTarget=true displayFrame=[0 2142 1080 2340] sourceCrop=[0.000000 0.000000 1080.000000 198.000000] bufferTransform=0 (0) z-index=4
      hwc: layer=0x083 composition=DEVICE (2)
SurfaceFlinger global state:
EGL implementation : 1.5
EGL_KHR_image EGL_KHR_image_base EGL_QCOM_create_image EGL_KHR_lock_surface EGL_KHR_lock_surface2 EGL_KHR_lock_surface3 EGL_KHR_gl_texture_2D_image EGL_KHR_gl_texture_cubemap_image EGL_KHR_gl_texture_3D_image EGL_KHR_gl_renderbuffer_image EGL_ANDROID_blob_cache EGL_KHR_create_context EGL_KHR_surfaceless_context EGL_KHR_create_context_no_error EGL_KHR_get_all_proc_addresses EGL_QCOM_lock_image2 EGL_EXT_protected_content EGL_KHR_no_config_context EGL_EXT_surface_SMPTE2086_metadata EGL_ANDROID_recordable EGL_ANDROID_native_fence_sync EGL_ANDROID_image_native_buffer EGL_ANDROID_framebuffer_target EGL_EXT_create_context_robustness EGL_EXT_pixel_format_float EGL_EXT_yuv_surface EGL_IMG_context_priority EGL_IMG_image_plane_attribs EGL_KHR_cl_event EGL_KHR_cl_event2 EGL_KHR_fence_sync EGL_KHR_gl_colorspace EGL_EXT_image_gl_colorspace EGL_KHR_mutable_render_buffer EGL_KHR_partial_update EGL_KHR_reusable_sync EGL_KHR_wait_sync EGL_QCOM_gpu_perf

GLES: Qualcomm, Adreno (TM) 650, OpenGL ES 3.2 V@444.0 (GIT@856adf3, I0624de940e, 1588046914) (Date:04/27/20)

GL_OES_EGL_image GL_OES_EGL_image_external GL_OES_EGL_sync GL_OES_vertex_half_float GL_OES_framebuffer_object GL_OES_rgb8_rgba8 GL_OES_compressed_ETC1_RGB8_texture GL_AMD_compressed_ATC_texture GL_KHR_texture_compression_astc_ldr GL_KHR_texture_compression_astc_hdr GL_OES_texture_compression_astc GL_OES_texture_npot GL_EXT_texture_filter_anisotropic GL_EXT_texture_format_BGRA8888 GL_EXT_read_format_bgra GL_OES_texture_3D GL_EXT_color_buffer_float GL_EXT_color_buffer_half_float GL_QCOM_alpha_test GL_OES_depth24 GL_OES_packed_depth_stencil GL_OES_depth_texture GL_OES_depth_texture_cube_map GL_EXT_sRGB GL_OES_texture_float GL_OES_texture_float_linear GL_OES_texture_half_float GL_OES_texture_half_float_linear GL_EXT_texture_type_2_10_10_10_REV GL_EXT_texture_sRGB_decode GL_EXT_texture_format_sRGB_override GL_OES_element_index_uint GL_EXT_copy_image GL_EXT_geometry_shader GL_EXT_tessellation_shader GL_OES_texture_stencil8 GL_EXT_shader_io_blocks GL_OES_shader_image_atomic GL_OES_sample_variables GL_EXT_texture_border_clamp GL_EXT_EGL_image_external_wrap_modes GL_EXT_multisampled_render_to_texture GL_EXT_multisampled_render_to_texture2 GL_OES_shader_multisample_interpolation GL_EXT_texture_cube_map_array GL_EXT_draw_buffers_indexed GL_EXT_gpu_shader5 GL_EXT_robustness GL_EXT_texture_buffer GL_EXT_shader_framebuffer_fetch GL_ARM_shader_framebuffer_fetch_depth_stencil GL_OES_texture_storage_multisample_2d_array GL_OES_sample_shading GL_OES_get_program_binary GL_EXT_debug_label GL_KHR_blend_equation_advanced GL_KHR_blend_equation_advanced_coherent GL_QCOM_tiled_rendering GL_ANDROID_extension_pack_es31a GL_EXT_primitive_bounding_box GL_OES_standard_derivatives GL_OES_vertex_array_object GL_EXT_disjoint_timer_query GL_KHR_debug GL_EXT_YUV_target GL_EXT_sRGB_write_control GL_EXT_texture_norm16 GL_EXT_discard_framebuffer GL_OES_surfaceless_context GL_OVR_multiview GL_OVR_multiview2 GL_EXT_texture_sRGB_R8 GL_KHR_no_error GL_EXT_debug_marker GL_OES_EGL_image_external_essl3 GL_OVR_multiview_multisampled_render_to_texture GL_EXT_buffer_storage GL_EXT_external_buffer GL_EXT_blit_framebuffer_params GL_EXT_clip_cull_distance GL_EXT_protected_textures GL_EXT_shader_non_constant_global_initializers GL_QCOM_texture_foveated GL_QCOM_texture_foveated_subsampled_layout GL_QCOM_shader_framebuffer_fetch_noncoherent GL_QCOM_shader_framebuffer_fetch_rate GL_EXT_memory_object GL_EXT_memory_object_fd GL_EXT_EGL_image_array GL_NV_shader_noperspective_interpolation GL_KHR_robust_buffer_access_behavior GL_EXT_EGL_image_storage GL_EXT_blend_func_extended GL_EXT_clip_control GL_OES_texture_view GL_EXT_fragment_invocation_density GL_QCOM_validate_shader_binary GL_QCOM_YUV_texture_gather

RenderEngine supports protected context: 1
RenderEngine is in protected context: 0
RenderEngine program cache size for unprotected context: 64
RenderEngine program cache size for protected context: 0
RenderEngine last dataspace conversion: (Default) to (BT709 sRGB Full range)
RenderEngine image cache size: 18

Dumping buffer ids...
0x3b000000787
0x3b000000785
0x3b000000786
0x3b000000788
0x3b00000051b
0x3b00000051c
0x3b00000051e
0x3b000000287
0x3b00000015b
0x3b00000051d
0x3b000000157
0x3b000000097
0x3b000000098
0x3b000000099
0x3b000000159
0x3b00000008a
0x3b000000285
0x3b00000008b
RenderEngine framebuffer image cache size: 3
Dumping buffer ids...
0x3b000000002
0x3b000000001
0x3b000000000

  Region undefinedRegion (this=0x75f094c7e0, count=1)
    [  0,  0,  0,  0]
  orientation=0, isPoweredOn=1
  transaction-flags        : 00000000
  gpu_to_cpu_unsupported    : 0
  refresh-rate              : 90.000001 fps
  x-dpi                    : 386.365997
  y-dpi                    : 386.700989
  transaction time: 0.000000 us
Tracing state: disabled
  number of entries: 0 (0.00MB / 0.00MB)

//参与合成的Layer汇总,可以看出当前参与合成的Layer包括全屏的setting,状态栏,导航栏,以及两个屏幕圆角

Display 19261116564980353 HWC layers:
-------------------------------------------------------------------------------------------
Layer name
          Z |  Window Type |  Comp Type |  Transform |  Disp Frame (LTRB) |          Source Crop (LTRB)
-------------------------------------------------------------------------------------------
com.android.settings/com.android.settings.MainSettings#0
  rel      0 |            1 |    DEVICE |          0 |    0    0 1080 2340 |    0.0    0.0 1080.0 2340.0
- - - - - - - - - - - - - - - -- - - - - - - - - - - - - - - -- - - - - - - - - - - - - - -
StatusBar#0
  rel      0 |        2000 |    DEVICE |          0 |    0    0 1080  90 |    0.0    0.0 1080.0  90.0
- - - - - - - - - - - - - - - -- - - - - - - - - - - - - - - -- - - - - - - - - - - - - - -
NavigationBar#0
  rel      0 |        2019 |    DEVICE |          0 |    0 2210 1080 2340 |    0.0    0.0 1080.0  130.0
- - - - - - - - - - - - - - - -- - - - - - - - - - - - - - - -- - - - - - - - - - - - - - -
RoundCorner#0
  rel      0 |        2024 |    DEVICE |          0 |    0    0 1080  198 |    0.0    0.0 1080.0  198.0
- - - - - - - - - - - - - - - -- - - - - - - - - - - - - - - -- - - - - - - - - - - - - - -
RoundCorner#1
  rel      0 |        2024 |    DEVICE |          0 |    0 2142 1080 2340 |    0.0    0.0 1080.0  198.0
- - - - - - - - - - - - - - - -- - - - - - - - - - - - - - - -- - - - - - - - - - - - - - -
h/w composer state:
  h/w composer enabled
------------HWC----------------
HWC2 display_id: 0
layer:  10 z: 0 composition: Device/Device alpha: 255 format:        RGBA_8888_UBWC dataspace:0x00000000 transform: 0/0/0 buffer_id: 0x7e4405a770 secure: 0
layer:    6 z: 1 composition: Device/Device alpha: 255 format:        RGBA_8888_UBWC dataspace:0x00000000 transform: 0/0/0 buffer_id: 0x7e493cb3d0 secure: 0
layer:    8 z: 2 composition: Device/Device alpha: 255 format:        RGBA_8888_UBWC dataspace:0x00000000 transform: 0/0/0 buffer_id: 0x7e493cb4b0 secure: 0
layer:    4 z: 3 composition: Device/Device alpha: 255 format:        RGBA_8888_UBWC dataspace:0x00000000 transform: 0/0/0 buffer_id: 0x7e493cba60 secure: 0
layer:    3 z: 4 composition: Device/Device alpha: 255 format:        RGBA_8888_UBWC dataspace:0x00000000 transform: 0/0/0 buffer_id: 0x7e493cbb40 secure: 0
----------Color Modes---------
color modes supported:
mode: 0 RIs { 0 dynamic_range [ 0 ] 1 dynamic_range [ 0 ] 2 dynamic_range [ 0 ] 3 dynamic_range [ 0 ] }
mode: 7 RIs { 0 dynamic_range [ 0 ] 1 dynamic_range [ 0 ] 2 dynamic_range [ 0 ] 3 dynamic_range [ 0 ] 256 dynamic_range [ 0 ] 257 dynamic_range [ 0 ] 258 dynamic_range [ 0 ] 259 dynamic_range [ 0 ] 260 dynamic_range [ 0 ] 261 dynamic_range [ 0 ] 262 dynamic_range [ 0 ] 263 dynamic_range [ 0 ] 264 dynamic_range [ 0 ] 265 dynamic_range [ 0 ] 266 dynamic_range [ 0 ] 267 dynamic_range [ 0 ] 268 dynamic_range [ 0 ] 269 dynamic_range [ 0 ] 270 dynamic_range [ 0 ] }
mode: 9 RIs { 0 dynamic_range [ 0 1 ] 1 dynamic_range [ 0 1 ] 2 dynamic_range [ 0 1 ] 3 dynamic_range [ 0 1 ] 256 dynamic_range [ 0 ] 257 dynamic_range [ 0 ] 258 dynamic_range [ 0 ] 259 dynamic_range [ 0 ] 260 dynamic_range [ 0 ] 261 dynamic_range [ 0 ] 262 dynamic_range [ 0 ] 263 dynamic_range [ 0 ] 264 dynamic_range [ 0 ] 265 dynamic_range [ 0 ] 266 dynamic_range [ 0 ] 267 dynamic_range [ 0 ] 268 dynamic_range [ 0 ] 269 dynamic_range [ 0 ] 270 dynamic_range [ 0 ] }

current mode: 7
current render_intent: 258
current dynamic_range: SDR
current transform:
  1.00  0.00  0.00  0.00
  0.00  1.00  0.00  0.00
  0.00  0.00  1.00  0.00
  0.00  0.00  0.00  1.00
------------SDM----------------
device type:0
state: 1 vsync on: 0 max. mixer stages: 11
num configs: 2 active config index: 1
Display Attributes:
Mode:Command Primary:true DynFPS:false
HDR Panel:true QSync:false DynBitclk:false
Left Split:1080 Right Split:0
PartialUpdate:false
FPS min:90 max:90 cur:90 TransferTime: 9500us MaxBrightness:2047
Display WxH: 1080x2340 MixerWxH: 1080x2340 DPI: 386.366x386.701 LM_Split: false
vsync_period 11111111 v_back_porch: 8 v_front_porch: 4 v_pulse_width: 4
v_total: 2356 h_total: 1112 clk: 113668 Topology: 2
Current Color Mode: smart_MC
Available Color Modes:
  GM_1                              30  DynamicRange: sdr ColorGamut: srgb PictureQuality: GM_1 RenderIntent: 263
  GM_11                            31  DynamicRange: sdr ColorGamut: dcip3 PictureQuality: GM_11 RenderIntent: 263
  GM_2                              32  DynamicRange: sdr ColorGamut: srgb PictureQuality: GM_2 RenderIntent: 264
  GM_22                            33  DynamicRange: sdr ColorGamut: dcip3 PictureQuality: GM_22 RenderIntent: 264
  GM_3                              34  DynamicRange: sdr ColorGamut: srgb PictureQuality: GM_3 RenderIntent: 265
  GM_33                            35  DynamicRange: sdr ColorGamut: dcip3 PictureQuality: GM_33 RenderIntent: 265
  enhanced                          1  DynamicRange: sdr ColorGamut: srgb PictureQuality: enhanced RenderIntent: 1
  enhanced_hdr                      9  DynamicRange: hdr ColorGamut: dcip3 PictureQuality: enhanced RenderIntent: 1
  enhanced_native                  13  DynamicRange: sdr ColorGamut: native PictureQuality: enhanced RenderIntent: 1
  enhanced_p3                        5  DynamicRange: sdr ColorGamut: dcip3 PictureQuality: enhanced RenderIntent: 1
  expert_dcip3                      40  DynamicRange: sdr ColorGamut: srgb PictureQuality: expert_dcip3 RenderIntent: 268
  expert_dcip3_1                    41  DynamicRange: sdr ColorGamut: dcip3 PictureQuality: expert_dcip3_1 RenderIntent: 268
  expert_native                    36  DynamicRange: sdr ColorGamut: srgb PictureQuality: expert_native RenderIntent: 266
  expert_native1                    37  DynamicRange: sdr ColorGamut: dcip3 PictureQuality: expert_native1 RenderIntent: 266
  expert_srgb                      38  DynamicRange: sdr ColorGamut: srgb PictureQuality: expert_srgb RenderIntent: 267
  expert_srgb1                      39  DynamicRange: sdr ColorGamut: dcip3 PictureQuality: expert_srgb1 RenderIntent: 267
  expert_trtansition                44  DynamicRange: sdr ColorGamut: srgb PictureQuality: expert_trtansition RenderIntent: 270
  expert_trtansition1              45  DynamicRange: sdr ColorGamut: dcip3 PictureQuality: expert_trtansition1 RenderIntent: 270
  expert_wcg_dcip3                  43  DynamicRange: sdr ColorGamut: dcip3 PictureQuality: expert_wcg_dcip3 RenderIntent: 269
  expert_wcg_srgb                  42  DynamicRange: sdr ColorGamut: srgb PictureQuality: expert_wcg_srgb RenderIntent: 269
  hal_dcip3                        19  DynamicRange: sdr ColorGamut: dcip3 PictureQuality: hal_dcip3 RenderIntent: 257
  hal_display_p3_identity        1000  DynamicRange: sdr ColorGamut: dcip3 PictureQuality: standard RenderIntent: 0
  hal_native                        16  DynamicRange: sdr ColorGamut: srgb PictureQuality: hal_native RenderIntent: 256
  hal_native1                      17  DynamicRange: sdr ColorGamut: dcip3 PictureQuality: hal_native1 RenderIntent: 256
  hal_srgb                          18  DynamicRange: sdr ColorGamut: srgb PictureQuality: hal_srgb RenderIntent: 257
  hal_srgb_identity              1001  DynamicRange: sdr ColorGamut: srgb PictureQuality: standard RenderIntent: 0
  smart_MC                          20  DynamicRange: sdr ColorGamut: srgb PictureQuality: smart_MC RenderIntent: 258
  smart_MC1                        21  DynamicRange: sdr ColorGamut: dcip3 PictureQuality: smart_MC1 RenderIntent: 258
  standard                          0  DynamicRange: sdr ColorGamut: srgb PictureQuality: standard RenderIntent: 0
  standard_hdr                      8  DynamicRange: hdr ColorGamut: dcip3 PictureQuality: standard RenderIntent: 0
  standard_native                  12  DynamicRange: sdr ColorGamut: native PictureQuality: standard RenderIntent: 0
  standard_p3                        4  DynamicRange: sdr ColorGamut: dcip3 PictureQuality: standard RenderIntent: 0
  video1                            22  DynamicRange: sdr ColorGamut: srgb PictureQuality: video1 RenderIntent: 259
  video11                          23  DynamicRange: sdr ColorGamut: dcip3 PictureQuality: video11 RenderIntent: 259
  video2                            24  DynamicRange: sdr ColorGamut: srgb PictureQuality: video2 RenderIntent: 260
  video22                          25  DynamicRange: sdr ColorGamut: dcip3 PictureQuality: video22 RenderIntent: 260
  video3                            26  DynamicRange: sdr ColorGamut: srgb PictureQuality: video3 RenderIntent: 261
  video33                          27  DynamicRange: sdr ColorGamut: dcip3 PictureQuality: video33 RenderIntent: 261
  video4                            28  DynamicRange: sdr ColorGamut: srgb PictureQuality: video4 RenderIntent: 262
  video44                          29  DynamicRange: sdr ColorGamut: dcip3 PictureQuality: video44 RenderIntent: 262
  vivid                              2  DynamicRange: sdr ColorGamut: srgb PictureQuality: vivid RenderIntent: 2
  vivid_hdr                        10  DynamicRange: hdr ColorGamut: dcip3 PictureQuality: vivid RenderIntent: 2
  vivid_native                      14  DynamicRange: sdr ColorGamut: native PictureQuality: vivid RenderIntent: 2
  vivid_p3                          6  DynamicRange: sdr ColorGamut: dcip3 PictureQuality: vivid RenderIntent: 2
  warm                              3  DynamicRange: sdr ColorGamut: srgb PictureQuality: warm RenderIntent: 3
  warm_hdr                          11  DynamicRange: hdr ColorGamut: dcip3 PictureQuality: warm RenderIntent: 3
  warm_native                      15  DynamicRange: sdr ColorGamut: native PictureQuality: warm RenderIntent: 3
  warm_p3                            7  DynamicRange: sdr ColorGamut: dcip3 PictureQuality: warm RenderIntent: 3
ROI(LTRB)#0 LEFT(0 0 1080 2340)
|-----|---------------|-----------|------|-------------|--------------------------|---------------------|---------------------|----|------------|-----------|----|-----|----|
| Idx |  Comp Type  |  Split  | Pipe |    W x H    |          Format          |  Src Rect (L T R B) |  Dst Rect (L T R B) |  Z | Pipe Flags | Deci(HxV) | CS | Rng | Tr |
|-----|---------------|-----------|------|-------------|--------------------------|---------------------|---------------------|----|------------|-----------|----|-----|----|
|  0 |          SDE |    Pipe-1 |  100 | 1088 x 2352 |          RGBA_8888_UBWC |    0    0 1080 2340 |    0    0 1080 2340 |  0 | 0x00000000 |  0 x  0 |  1 |  0 |  1 |
|  1 |          SDE |    Pipe-1 |  97 | 1088 x  96 |          RGBA_8888_UBWC |    0    0 1080  90 |    0    0 1080  90 |  1 | 0x00000001 |  0 x  0 |  1 |  0 |  1 |
|  2 |          SDE |    Pipe-1 |  94 | 1088 x  144 |          RGBA_8888_UBWC |    0    0 1080  130 |    0 2210 1080 2340 |  2 | 0x00000001 |  0 x  0 |  1 |  0 |  1 |
|  3 |          SDE |    Pipe-1 |  88 | 1088 x  208 |          RGBA_8888_UBWC |    0    0 1080  198 |    0    0 1080  198 |  3 | 0x00000001 |  0 x  0 |  1 |  0 |  1 |
|  4 |          SDE |    Pipe-1 |  85 | 1088 x  208 |          RGBA_8888_UBWC |    0    0 1080  198 |    0 2142 1080 2340 |  4 | 0x00000001 |  0 x  0 |  1 |  0 |  1 |
|-----|---------------|-----------|------|-------------|--------------------------|---------------------|---------------------|----|------------|-----------|----|-----|----|
------------SDM HW EVENT----------------
vsync_enabled_:0 vsync_registered_: 0
vsync register count: 522 success: 522 failure: 0
last register time: 1594361476534085 Fri Jul 10 14:11:16 2020
vsync handle count: 519 success: 519 failure: 0
last handle time: 1594361476545157 Fri Jul 10 14:11:16 2020
panel dead count: 0
Color Sampling, dark (0.0) to light (1.0): sampled frames: 0
no color statistics collected

//针对每个Surface分配的内存大小,如第一条552.50x1024=1088x130x4,一个像素分配4个Byte,这个与color format有关,在Surface申请dequeueBuffer的时候如果需要会分配内存。
各项参数意义如下:
1. key
2. size
3. width Surface 调用dequeueBuffer的时候配置
4. stride 与buffer格式有关,是分配结果决定的,属于输出参数
5. height 同width
6. layerCount,为1
7. format
PIXEL_FORMAT_RGBA_8888 = HAL_PIXEL_FORMAT_RGBA_8888, // 4x8-bit RGBA
PIXEL_FORMAT_RGBX_8888 = HAL_PIXEL_FORMAT_RGBX_8888, // 4x8-bit RGB0
PIXEL_FORMAT_RGB_888 = HAL_PIXEL_FORMAT_RGB_888, // 3x8-bit RGB
PIXEL_FORMAT_RGB_565 = HAL_PIXEL_FORMAT_RGB_565, // 16-bit RGB
PIXEL_FORMAT_BGRA_8888 = HAL_PIXEL_FORMAT_BGRA_8888, // 4x8-bit BGRA
PIXEL_FORMAT_RGBA_5551 = 6, // 16-bit ARGB
PIXEL_FORMAT_RGBA_4444 = 7, // 16-bit ARGB
PIXEL_FORMAT_RGBA_FP16 = HAL_PIXEL_FORMAT_RGBA_FP16, // 64-bit RGBA
PIXEL_FORMAT_RGBA_1010102 = HAL_PIXEL_FORMAT_RGBA_1010102, // 32-bit RGBA
8. usage 各项数据通过位或计算所得,不同的consumer和producer配置结果可能不同
enum {
GRALLOC_USAGE_SW_READ_OFTEN = 0x00000003U,
GRALLOC_USAGE_SW_WRITE_OFTEN = 0x00000030U,
GRALLOC_USAGE_HW_TEXTURE = 0x00000100U,
GRALLOC_USAGE_HW_RENDER = 0x00000200U,
};
9. name

Allocated buffers:
0x75dd62a000:  552.50 KiB | 1080 (1088) x  130 |    1 |        1 | 0x10000900 | NavigationBar#0
0x75dd62a1c0:  382.50 KiB | 1080 (1088) x  90 |    1 |        1 | 0x10000900 | StatusBar#0
0x75ec6783f0: 9945.00 KiB | 1080 (1088) x 2340 |    1 |        1 | 0x10000900 | com.android.settings/com.android.settings.MainSettings#0
0x75ec6784d0:  841.50 KiB | 1080 (1088) x  198 |    1 |        1 | 0x10000900 | RoundCorner#1
0x75f0940f60: 6552.00 KiB |  864 ( 896) x 1872 |    1 |        1 | 0x10000b00 | com.miui.miwallpaper.superwallpaper.MarsSuperWallpaper#0
(省略部分record)
Total allocated (estimate): 98655.00 KB
Scheduler state:
+  Idle timer interval: 0 ms
+  Touch timer interval: 0 ms
+  Smart video mode: off
+  Refresh rate: running time in seconds
90fps: 0day:00:00:32.441
60fps: 0day:00:00:04.244
ScreenOff: 0day:00:00:01.565
TimeStats miniDump:
Number of tracked layers is 0
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。