SurfaceView Transition Rendering to Prevent GPU Display Stutter
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Electronic devices experience stuttering or screen freezing when displaying complex content due to excessive GPU load from rendering layers using both view and SurfaceView classes.
Innovation Solution
Implement a method where GPU renders layers using both view and SurfaceView classes during application interface display, and switches to rendering only using view during interface transitions, reducing GPU load by managing buffer queues and animation effects.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If both view and SurfaceView classes are used to draw layers during application display, then the application interface can be displayed with proper UI rendering, but the GPU load becomes excessively heavy causing stuttering or screen freezing
Solution Approach 1:
The patent dynamically adjusts the rendering strategy based on the display scenario. During animation transitions, it temporarily suspends SurfaceView rendering and switches to view-only rendering. During stable display periods, it resumes SurfaceView rendering for high-quality UI presentation. This dynamic switching resolves the contradiction between display stability and GPU load by adapting the rendering approach to real-time needs.
Solution Approach 2:
The patent implements periodic switching between different rendering modes. It alternates between full rendering (view + SurfaceView) during stable states and reduced rendering (view only) during animation periods. This periodic action pattern allows the system to manage GPU load cyclically, preventing continuous high load while maintaining display quality when needed.
2Speed
If SurfaceView class is used to redraw pictures on a separate thread to avoid UI main thread blocking, then image refreshing performance is improved, but GPU rendering load increases during application transitions causing stuttering
Solution Approach 1:
The patent segments the rendering process into two distinct phases: a first rendering process that includes both view and SurfaceView rendering for complete UI display, and a second rendering process that includes only view rendering for animation transitions. This segmentation allows the system to isolate high-GPU-load operations from transition periods, maintaining fast UI refreshing while preventing GPU overload during critical moments.
Solution Approach 2:
The patent performs preliminary identification of animation transition states before they fully occur. By detecting the transition state in advance, it proactively switches to the low-GPU-load rendering mode (view only) before the animation begins, preventing the GPU load spike that would otherwise occur during the transition. This preliminary action resolves the contradiction by preparing the rendering system ahead of time.
3Adaptability or versatility
If complex content is displayed using both view and SurfaceView layers, then the user interface can be rendered with proper functionality, but the rendering process becomes too complex causing screen freezing
Solution Approach 1:
The patent changes the rendering parameters dynamically based on the display state. During animation transitions, it modifies the rendering configuration to exclude SurfaceView layers, effectively reducing the rendering complexity parameter. During stable display states, it restores the full rendering configuration for complete UI functionality. This parameter change approach maintains UI versatility while managing rendering complexity through state-dependent configuration adjustments.
Data Source
Figure 1
Figure 2A
Figure 2B
AI summary
This application provides an interface display method, an electronic device, a storage medium, and a chip, and relates to the field of image processing technologies. The method is applicable to an animation effect period of switching from displaying an interface of a first application to displaying a system desktop or a multi-task interface. The first application is an application that needs to draw a layer by using a Surface View in a display process. The following may be set in the animation effect period: temporarily preventing a GPU from rendering a layer drawn based on the Surface View, to reduce load of the GPU. This method can reduce phenomena of stuttering or screen freezing that are caused by an excessively heavy load of the GPU in the animation effect period.