Image display method, image display apparatus and electronic device

By drawing the focus window and the non-focus window separately under heavy load scenarios, and synthesizing the frame buffer through the hardware interface layer, the problem of stuck and stuck problems of the focus window under heavy load scenarios is solved, and the user interaction is improved. Fluency.

WO2025015944A1PCT designated stage expired Publication Date: 2025-01-23HUAWEI TECH CO LTD
View PDF 6 Cites 0 Cited by

Patent Information

Application Number
PCT/CN2024/080962
Authority / Receiving Office
WO · WO
Patent Type
Applications
Current Assignee / Owner
Priority Date
2023-07-18
Filing Date
2024-03-11
Publication Date
2025-01-23

AI Technical Summary

Technical Problem

In heavy load scenarios, the user's operation focus window still has lag and stuck, affecting the user's interactive experience.

Method used

By drawing the focus window in the first frame buffer, the non -focus window is drawn in the second frame buffer, and the frame buffer area of ​​each frame is synthesized through the hardware interface layer to ensure the priority visibility and efficient rendering of the focus window.

Benefits of technology

Effectively reduce the stuck and stuck phenomenon of the focus window, and improve the fluency and operating response speed of user interaction.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN2024080962_23012025_PF_FP_ABST
    Figure CN2024080962_23012025_PF_FP_ABST
Patent Text Reader

Abstract

Provided in the embodiments of the present application are an image display method, an image display apparatus and an electronic device. The method can be applied to the field of electronic devices, and the method comprises: acquiring a first window and a second window on a first interface, wherein the first window is a focus window, and the second window is a non-focus window; drawing the first window in a first frame buffer, and drawing the second window in a second frame buffer, wherein the drawing of the first window and the second window is executed by means of a process of an operating system; performing composition on the first frame buffer by means of a first hardware interface layer, so as to obtain a first composite frame, and performing composition on the second buffer by means of a second hardware interface layer, so as to obtain a second composite frame; and according to the first composite frame and the second composite frame, controlling a display apparatus to display a second interface. By means of the method, in a heavy-load scenario, it can be ensured that the focus window is preferentially visible, and lagging and freezing of the focus window are reduced.
Need to check novelty before this filing date? Find Prior Art

Description

Image display method, image display device, and electronic equipment

[0001] This application claims priority to the Chinese patent application filed with the State Intellectual Property Office of China on July 18, 2023, with application number 202310883194.3 and application name “Image display method, image display device and electronic device”, the entire contents of which are incorporated by reference into this application. Technical Field

[0002] The embodiments of the present application relate to the field of electronic devices, and more specifically, to an image display method, an image display device, and an electronic device. Background Art

[0003] With the continuous updates of various smart devices such as mobile phones, tablets, and personal computers (PCs), major software manufacturers are constantly upgrading their applications. As application animations become increasingly complex, the rendering load of graphics displays is also increasing. Especially in the use scenarios of PCs and tablets, the rendering load of multiple windows and multiple applications is becoming increasingly heavy. As a result, optimization technologies have emerged to address this problem. For example, rendering techniques such as partial refresh and occlusion culling can effectively alleviate the repeated drawing of redundant windows in heavy load scenarios.

[0004] However, when the above technology is applied in a heavy-load scenario, users still experience freezes and freezes when operating the focus window. Therefore, how to ensure that the focus window is visible first and reduce freezes and freezes in a heavy-load scenario is an urgent problem that needs to be solved.

[0005] Summary of the Invention

[0006] The embodiments of the present application provide an image display method, an image display device, and an electronic device, which can ensure that the focus window is visible first in a heavy-load scenario and reduce the phenomenon of the focus window being stuck or frozen.

[0007] In a first aspect, an image display method is provided, the method comprising: acquiring a first window and a second window on a first interface, the first window being a focus window and the second window being a non-focus window; drawing the first window in a first frame buffer, and drawing the second window in a second frame buffer, the drawing of the first window and the second window being performed by a process of an operating system; synthesizing the first frame buffer through a first hardware interface layer to obtain a first synthesized frame, and synthesizing the second frame buffer through a second hardware interface layer to obtain a second synthesized frame; and controlling a display device to display a second interface according to the first synthesized frame and the second synthesized frame.

[0008] Optionally, the first window and the second window on the first interface may be in a stacked relationship, for example, the z-order of the first window is higher than the z-order of the second window.

[0009] Optionally, the first interface may further include a third window, which may be a mouse and / or system user interface (UI) window. When window drawing is performed, the first window and the third window may be drawn in the first frame buffer.

[0010] Optionally, the first interface may include one second window or multiple second windows. When the first interface includes multiple second windows, the multiple second windows may all be drawn in the second frame buffer during window drawing.

[0011] Optionally, the above-mentioned image display method can be used in smart devices such as mobile phones, tablets or personal computers. When displaying images, the above-mentioned first window can be the window corresponding to application 1 of the smart device, and the above-mentioned second window can be the window corresponding to application 2 of the smart device.

[0012] Alternatively, drawing the window into a frame buffer may be understood as drawing the visible contents of the window into a frame buffer during graphics rendering. The frame buffer may be a memory area for storing image data. The first frame buffer and the second frame buffer may be understood as two different memory areas for storing image data, having different memory addresses.

[0013] Optionally, the operating system process may be a rendering service process, which may receive rendering tasks sent by various applications, convert them into commands executable by the GPU, and perform data transmission with the CPU to achieve efficient graphics rendering and window drawing.

[0014] It should be understood that the name of the rendering service process is only an exemplary description, and any process that can execute the drawing of the first window and the second window in the operating system can be understood as the rendering service process in this application.

[0015] Optionally, synthesizing the frame buffer through the hardware interface layer can be understood as: the hardware interface layer combines and processes the pixel data in the frame buffer to generate a final display frame (for example, a first synthesized frame and a second synthesized frame), which can be displayed on a display device. Therefore, synthesizing the first frame buffer through the first hardware interface layer can be understood as: the first hardware interface layer processes the pixel data corresponding to the first window in the first frame buffer. When the first interface includes a first window and a third window, synthesizing the first frame buffer through the first hardware interface layer can be understood as: the first hardware interface layer processes the pixel data corresponding to the first window and the third window in the first frame buffer.

[0016] The image display method provided by the embodiment of the present application can improve the efficiency of window rendering and user experience. Specifically, in the embodiment of the present application, by drawing the focus window in the first frame buffer and the non-focus window in the second frame buffer, this window drawing method helps to avoid drawing all windows in the same frame buffer, thereby avoiding the rendering process of the non-focus window from causing jamming or affecting the drawing of the focus window. In addition, the first frame buffer is synthesized through the first hardware interface layer, and the second frame buffer is synthesized through the second hardware interface layer. Such a synthesis method ensures the priority visibility of the focus window. Even if the non-focus window is jammed or stuck, it will not affect the drawing and rendering process of the focus window.

[0017] In combination with the first aspect, in certain implementations of the first aspect, the synthesizing the first frame buffer through the first hardware interface layer to obtain a first synthesized frame, and synthesizing the second frame buffer through the second hardware interface layer to obtain a second synthesized frame, include: synthesizing the first frame buffer through the first hardware interface layer at a first frame rate to obtain the first synthesized frame; synthesizing the second frame buffer through the second hardware interface layer at a second frame rate to obtain the second synthesized frame, the second frame rate being less than or equal to the first frame rate.

[0018] Optionally, the first frame rate may be 60 frames per second (FPS), and the second frame rate may be less than or equal to 60 FPS.

[0019] In an embodiment of the present application, when the drawing load of the non-focus window is heavy, the second hardware interface layer can synthesize the second frame buffer at a lower second frame rate, and the first hardware interface layer can always synthesize the first frame buffer at a higher first frame rate. In this way, when the drawing load of the non-focus window is heavy, the system can give priority to ensuring the rendering synthesis frame rate of the focus window. Since the first frame buffer is synthesized by the first hardware interface layer and operates at a higher frame rate, the rendering and display of the focus window will not be affected by the drawing load of the non-focus window. At the same time, the second hardware interface layer synthesizes the second frame buffer at a lower frame rate. In this way, the drawing pressure of the non-focus window can be reduced, ensuring that the rendering and interaction of the focus window can continue smoothly.

[0020] In combination with the first aspect, in certain implementations of the first aspect, the first synthesized frame includes: the synthesized frame of the first hardware interface layer in the N+1 frame, and the second synthesized frame includes the synthesized frame of the second hardware interface layer in the N frame, where N is a positive integer; controlling the display device to display the second interface based on the first synthesized frame and the second synthesized frame includes: when in the N+1 frame, if the frame rate synthesized by the second hardware interface layer is less than or equal to a preset threshold, controlling the display device to display the second interface based on the synthesized frame of the first hardware interface layer in the N+1 frame and the synthesized frame of the second hardware interface layer in the N frame.

[0021] Optionally, the synthesis frame rate of the second hardware interface layer to the second frame buffer being less than a preset threshold can be understood as: when rendering the synthesized non-focus window, the electronic device is heavily loaded and a freeze phenomenon occurs.

[0022] Optionally, the preset threshold is 60 FPS, or the preset threshold is 30 FPS.

[0023] In an embodiment of the present application, in the N+1 frame, when the second hardware interface layer synthesizes the second frame buffer, if a freeze occurs, the second hardware interface layer can send the synthesized frame of the Nth frame to the display device for display, and the first hardware interface layer still sends the synthesized frame of the N+1th frame to the display device for display. This processing method can ensure that when a freeze occurs in the non-focus window, the display device can correctly display the second interface. Specifically, the second hardware interface layer sends the synthesized frame of the Nth frame to the display device for display, so that the user can still see the latest visual content when a freeze occurs in the rendering of the non-focus window, and the picture will not stagnate. At the same time, the first hardware interface layer still sends the synthesized frame of the N+1th frame to the display device for display. This means that the rendering and display of the focus window can still maintain continuity and smoothness, and will not be affected by the freeze of the non-focus window. The user can continue to interact with the focus window, and the operation response speed of the focus window will not be significantly delayed.

[0024] In combination with the first aspect, in some implementations of the first aspect, obtaining the first window and the second window on the first interface includes: detecting a first input for the first window on the first interface; and obtaining the first window and the second window in response to the first input.

[0025] Optionally, the first input may be moving or scaling the first window.

[0026] In an embodiment of the present application, when a user operates the focus window, the electronic device can retrieve the first and second windows to perform subsequent layered drawing and rendering operations. This prevents the impact of the focus window's displacement and size changes on dirty areas on the first interface, thereby preventing fluctuations in the focus window's rendering frame rate. This approach ensures the focus window's drawing priority, improving operational responsiveness and visual quality during user interaction.

[0027] In combination with the first aspect, in some implementations of the first aspect, the method further includes: detecting a second input for the second window on the second interface; drawing the second window in the first frame buffer in response to the second input, and drawing the first window in the second frame buffer; synthesizing the first frame buffer through the first hardware interface layer to obtain a third synthesized frame, and synthesizing the second frame buffer through the second hardware interface layer to obtain a fourth synthesized frame; and controlling the display device to display a third interface based on the third synthesized frame and the fourth synthesized frame.

[0028] Optionally, the second input may be moving or scaling the second window. When the second input of the second window is detected, the second window is switched to the focus window, and the first window is switched to the non-focus window.

[0029] In an embodiment of the present application, when a user is detected operating a second window, the electronic device may draw the second window in the first frame buffer and the first window in the second frame buffer. In this way, the electronic device can ensure the priority visibility of the second window when the user operates the second window, and reduce the phenomenon of the second window being stuck or frozen. In addition, the user can interact with the window of interest more smoothly, improving the user experience and the real-time responsiveness of the operation.

[0030] In a second aspect, an image display device is provided, comprising: an acquisition unit for acquiring a first window and a second window on a first interface, wherein the first window is a focus window and the second window is a non-focus window; a processing unit for drawing the first window in a first frame buffer and drawing the second window in a second frame buffer, wherein the drawing of the first window and the second window is performed by a process of an operating system; synthesizing the first frame buffer through a first hardware interface layer to obtain a first synthesized frame, and synthesizing the second frame buffer through a second hardware interface layer to obtain a second synthesized frame; and controlling a display device to display a second interface based on the first synthesized frame and the second synthesized frame.

[0031] In combination with the second aspect, in certain implementations of the second aspect, the processing unit is specifically used to: synthesize the first frame buffer at a first frame rate through the first hardware interface layer to obtain the first synthesized frame; synthesize the second frame buffer at a second frame rate through the second hardware interface layer to obtain the second synthesized frame, and the second frame rate is less than or equal to the first frame rate.

[0032] In combination with the second aspect, in certain implementations of the second aspect, the first synthesized frame includes: the synthesized frame of the first hardware interface layer in the N+1 frame, and the second synthesized frame includes the synthesized frame of the second hardware interface layer in the N frame, where N is a positive integer; the processing unit is specifically used to control the display device to display the second interface according to the synthesized frame of the first hardware interface layer in the N+1 frame and the synthesized frame of the second hardware interface layer in the N frame when the frame rate synthesized by the second hardware interface layer in the N+1 frame is less than or equal to a preset threshold.

[0033] In combination with the second aspect, in some implementations of the second aspect, the processing unit is further used to detect a first input for the first window on the first interface; and the acquisition unit is specifically used to acquire the first window and the second window in response to the first input.

[0034] In combination with the second aspect, in some implementations of the second aspect, the processing unit is further used to: detect a second input for the second window on the second interface; in response to the second input, draw the second window in the first frame buffer, and draw the first window in the second frame buffer; synthesize the first frame buffer through the first hardware interface layer to obtain a third synthesized frame, and synthesize the second frame buffer through the second hardware interface layer to obtain a fourth synthesized frame; and control the display device to display a third interface based on the third synthesized frame and the fourth synthesized frame.

[0035] In a third aspect, a rendering method is provided, which includes: obtaining first information sent by a CPU, the first information including: a first window and a second window, the first window being a focus window, and the second window being a non-focus window; a processing unit, for drawing the first window in a first frame buffer, and drawing the second window in a second frame buffer, the drawing of the first window and the second window being performed by a process of an operating system; a transceiver unit, for sending data in the first frame buffer and the second frame buffer to a hardware synthesizer.

[0036] In a fourth aspect, a rendering device is provided, which includes: an acquisition unit for acquiring first information sent by a CPU, the first information including: a first window and a second window, the first window being a focus window, and the second window being a non-focus window; a processing unit for drawing the first window in a first frame buffer, and drawing the second window in a second frame buffer, the drawing of the first window and the second window being performed by a process of an operating system; a transceiver unit for sending data in the first frame buffer and the second frame buffer to a hardware synthesizer.

[0037] In a fifth aspect, an image display device is provided, which includes: at least one processor and a memory, wherein the at least one processor is coupled to the memory and is used to read and execute instructions in the memory, so that the device implements the method in any one of the implementation methods in the above-mentioned first aspect.

[0038] In a sixth aspect, a computer-readable storage medium is provided, wherein the computer-readable storage medium stores a program code, and when the computer program code is run on a computer, the computer executes the method in any one of the implementation modes of the first aspect or the third aspect.

[0039] In a seventh aspect, a chip is provided, which includes a circuit for executing the method in any one of the implementations of the first or third aspect.

[0040] In an eighth aspect, a computer program product is provided, which includes a computer program. When the computer program is run, the computer is caused to execute the method in any one of the implementations of the first aspect or the third aspect.

[0041] In a ninth aspect, an electronic device is provided, comprising: a device according to any one of the implementations of the second or fourth aspects above. BRIEF DESCRIPTION OF THE DRAWINGS

[0042] FIG1 is a schematic diagram of the hardware structure of an electronic device to which an embodiment of the present application is applicable;

[0043] FIG2 is a schematic diagram of a separate rendering architecture provided by an embodiment of the present application;

[0044] FIG3 is a system architecture applicable to the image display method provided in an embodiment of the present application;

[0045] FIG4 is a schematic flow chart of an image display method provided in an embodiment of the present application;

[0046] FIG5 is a scene to which the image display method provided in an embodiment of the present application is applicable;

[0047] FIG6 is a schematic diagram showing independent rendering of a focus layer and a non-focus layer at different frame rates according to an embodiment of the present application;

[0048] FIG7 is a schematic diagram of a device provided in an embodiment of the present application;

[0049] FIG8 is a schematic diagram of another device provided in an embodiment of the present application. DETAILED DESCRIPTION

[0050] The technical solutions in the embodiments of the present application will be described below with reference to the accompanying drawings.

[0051] The terms used in the following embodiments are only for the purpose of describing specific embodiments and are not intended to limit the present application. As used in the specification of this application and the appended claims, the singular expressions "a", "an", "said", "above", "the" and "this" are intended to also include expressions such as "one or more", unless there is a clear contrary indication in the context. It should also be understood that in the following embodiments of the present application, "at least one", "one or more" refer to one, two or more. The term "and / or" is used to describe the association relationship of associated objects, indicating that three relationships can exist; for example, A and / or B can mean: A exists alone, A and B exist at the same time, and B exists alone, where A and B can be singular or plural. The character " / " generally indicates that the previous and subsequent associated objects are in an "or" relationship.

[0052] References to "one embodiment" or "some embodiments" in this specification mean that a particular feature, structure, or characteristic described in conjunction with that embodiment is included in one or more embodiments of the present application. Thus, phrases such as "in one embodiment," "in some embodiments," "in other embodiments," and "in yet other embodiments" appearing in various places in this specification do not necessarily refer to the same embodiment, but rather mean "one or more but not all embodiments," unless otherwise specifically emphasized. The terms "including," "comprising," "having," and variations thereof mean "including but not limited to," unless otherwise specifically emphasized.

[0053] The methods provided in the embodiments of the present application are applicable to electronic devices, including but not limited to mobile phones, tablet computers, in-vehicle devices, wearable devices, augmented reality (AR) / virtual reality (VR) devices, laptop computers, ultra-mobile personal computers (UMPCs), netbooks, personal digital assistants (PDAs), smart screens, and other electronic devices with display screens. The embodiments of the present application do not impose any restrictions on the specific types of electronic devices.

[0054] For example, FIG1 shows a schematic diagram of the hardware structure of an electronic device provided in an embodiment of the present application.

[0055] As shown in Figure 1, the electronic device 100 may include: a processor 110, a memory 120, a universal serial bus (USB) interface 130, a charging management module 140, a power management module 141, a battery 142, an antenna 1, an antenna 2, a mobile communication module 150, a wireless communication module 160, an audio module 170, a speaker 170A, a receiver 170B, a microphone 170C, an earphone interface 170D, a sensor module 180, a camera 191, a display screen 192, a button 193, etc.

[0056] The processor 110 may include one or more processing units. For example, the processor 110 may include an application processor (AP), a modem processor, a graphics processing unit (GPU), an image signal processor (ISP), a controller, a memory, a video codec, a digital signal processor (DSP), a baseband processor, and / or a neural-network processing unit (NPU). The different processing units may be independent devices or integrated into one or more processors.

[0057] The controller may be the nerve center and command center of the electronic device 100. The controller may generate an operation control signal according to the instruction operation code and the timing signal to complete the control of fetching and executing instructions.

[0058] Processor 110 may also include a memory for storing instructions and data. In some embodiments, the memory in processor 110 is a cache memory. This memory can store instructions or data that have just been used or are being recycled by processor 110. If processor 110 needs to use the same instruction or data again, it can directly access it from this memory, avoiding repeated accesses and reducing processor 110 latency, thereby improving system efficiency.

[0059] In some embodiments, the processor 110 may include one or more interfaces. The interfaces may include an inter-integrated circuit (I2C) interface, an inter-integrated circuit sound (I2S) interface, a pulse code modulation (PCM) interface, a universal asynchronous receiver / transmitter (UART) interface, a mobile industry processor interface (MIPI), a general-purpose input / output (GPIO) interface, a subscriber identity module (SIM) interface, and / or a universal serial bus (USB) interface.

[0060] For example, the processor 110 and the touch sensor 180E can communicate via an I2C bus interface to implement the touch function of the electronic device 100. The processor 110 and the camera 191 can communicate via a CSI interface to implement the shooting function of the electronic device 100. The processor 110 and the display screen 192 can communicate via a DSI interface to implement the display function of the electronic device 100.

[0061] It is understood that the interface connection relationship between the modules illustrated in the embodiments of the present application is merely an illustrative illustration and does not constitute a structural limitation on the electronic device 100. In other embodiments of the present application, the electronic device 100 may also adopt different interface connection methods from the above embodiments, or a combination of multiple interface connection methods.

[0062] The wireless communication module 160 can provide wireless communication solutions including wireless local area networks (WLAN) (such as wireless fidelity (Wi-Fi) networks), Bluetooth (BT), global navigation satellite system (GNSS), frequency modulation (FM), near field communication (NFC), infrared (IR), etc., which are applied to the electronic device 100. The wireless communication module 160 can be one or more devices that integrate at least one communication processing module. The wireless communication module 160 receives electromagnetic waves via the antenna 2, frequency modulates and filters the electromagnetic wave signals, and sends the processed signals to the processor 110. The wireless communication module 160 can also receive the signal to be sent from the processor 110, frequency modulate it, amplify it, and convert it into electromagnetic waves for radiation through the antenna 2.

[0063] Electronic device 100 implements display functionality through a GPU, display screen 192, and an application processor. A GPU is a microprocessor for image processing that connects display screen 192 and the application processor. The GPU is used to perform mathematical and geometric calculations for graphics rendering. Processor 110 may include one or more GPUs that execute program instructions to generate or modify display information.

[0064] Display screen 192 is used to display images, videos, and the like. Display screen 192 includes a display panel. The display panel can be a liquid crystal display (LCD), an organic light-emitting diode (OLED), an active-matrix organic light-emitting diode (AMOLED), a flexible light-emitting diode (FLED), a MiniLED, a MicroLED, a Micro-oLed, or a quantum dot light-emitting diode (QLED). In some embodiments, electronic device 100 may include one or N display screens 192, where N is a positive integer greater than one.

[0065] The electronic device 100 can implement a shooting function through an ISP, a camera 191, a video codec, a GPU, a display screen 192, and an application processor. The ISP is used to process data fed back by the camera 191. The camera 191 is used to capture still images or videos. The object generates an optical image through the lens and projects it onto the photosensitive element. The photosensitive element can be a charge coupled device (CCD) or a complementary metal-oxide-semiconductor (CMOS) phototransistor. In some embodiments, the electronic device 100 may include 1 or N cameras 191, where N is a positive integer greater than 1.

[0066] The memory 120 is used to store data and / or instructions.

[0067] The memory 120 may include an internal memory. The internal memory is used to store computer executable program code, which includes instructions. The processor 110 executes various functional applications and data processing of the electronic device 100 by running the instructions stored in the internal memory. The internal memory may include a program storage area and a data storage area. The program storage area may store an operating system; the program storage area may also store one or more applications (such as a gallery, contacts, etc.). The data storage area may store data (such as images, contacts, etc.) created during the use of the electronic device 100. In addition, the internal memory may include a high-speed random access memory, and may also include a non-volatile memory, such as one or more disk storage devices, flash memory devices, universal flash storage (UFS), etc. In some embodiments, the processor 110 may execute the card sharing method provided in the embodiments of the present application by running instructions stored in the internal memory and / or instructions stored in a memory provided in the processor 110.

[0068] The memory 120 may also include an external memory, such as a Micro SD card, to expand the storage capacity of the electronic device 100. The external memory can communicate with the processor 110 via an external memory interface to implement a data storage function. For example, files such as music and videos can be stored in the external memory.

[0069] It should be understood that in the embodiment of the present application, there is no limitation on the type of sensors included in the sensor module 180. The sensor module 180 may include more or fewer sensors, depending on actual needs, which will not be described in detail here.

[0070] It is understood that the structures illustrated in the embodiments of the present application do not constitute specific limitations on the electronic device. In other embodiments of the present application, the electronic device may include more or fewer components than shown, or may combine or separate certain components, or arrange the components differently. The illustrated components may be implemented in hardware, software, or a combination of software and hardware.

[0071] The following takes the electronic device 100 as an example of a smart device to introduce the technical problems to be solved by this application and the technical solutions adopted.

[0072] With the iterative updates of various smart devices such as mobile phones, tablets and PCs, major software manufacturers are also constantly upgrading their applications. The animation effects of applications are becoming more and more complex, and the drawing load of graphics displays is also increasing. Especially in the usage scenarios of PCs and tablets, the rendering load of multiple windows and multiple applications is becoming heavier. Therefore, optimization technologies for this technology have also emerged. For example, the use of rendering technologies such as local refresh and occlusion culling can effectively alleviate the repeated drawing of redundant windows in heavy-load scenarios. Among them, local refresh can be understood as: in separate rendering, each window has its own layer, and the smart device can record the drawing area of ​​each window and only redraw the area that needs to be updated, reducing the content of window drawing; occlusion culling can be understood as: in separate rendering, the smart device can remove invisible windows from the drawing list, reducing the number of windows drawn.

[0073] However, when the above technology is applied in a heavy load scenario, users still experience lag or freezing when operating the focus window.

[0074] For example, as shown in the separated rendering architecture of Figure 2, in this architecture, each application (APP) can independently perform window drawing and send the drawing results to the rendering service process. The rendering service process can convert the format of the received data and then transfer the data to the GPU's video memory for processing by the GPU. In a heavy-load scenario with multiple windows and multiple applications, this architecture can occlude obscured windows, that is, obscured windows can be not rendered, thereby improving the rendering efficiency to a certain extent. However, for multi-window scenarios (for example, 40 windows) or typical scenarios of window operations (for example, moving and zooming), after the above processing, the frame rate of the focus window is still lower than 60FPS, that is, the user still experiences freezes and freezes when operating the focus window, which seriously affects the user's interactive experience.

[0075] For another example, a unified rendering architecture can be used instead of the separate rendering architecture shown in Figure 2. Compared to separate rendering, unified rendering changes the original logic of separate application processes. Unified rendering can integrate different types of rendering tasks into a unified rendering framework. In this unified rendering architecture, application processes can send rendering instructions directly to the operating system's (OS) rendering service for unified rendering processing. This allows a more flexible rendering process and higher rendering efficiency, while also reducing development and maintenance costs. However, in a unified rendering architecture, all windows are drawn within the same framebuffer. The displacement and size changes of the focused window directly affect the occlusion culling benefits of the underlying non-focused windows. At the same time, the dirty region (DR) of the entire screen will also change, causing fluctuations in the focus window's drawing refresh rate. This means that users may still experience lags or freezes when operating the focused window, severely impacting the user's interactive experience.

[0076] It should be understood that the introduction of dirty regions is intended to reduce the performance requirements of the computer. When each frame is drawn, only the changed parts are drawn, which can save a lot of rendering resources in the software.

[0077] The embodiments of the present application provide an image display method, an image display device, and an electronic device, which can ensure that the focus window is visible first in heavy-load scenarios and reduce the phenomenon of focus window freezing and freezing.

[0078] FIG3 is a system architecture applicable to the image display method provided in an embodiment of the present application. This system architecture can be applied to the electronic device 100 of FIG1 .

[0079] As shown in FIG3 , the system architecture 300 includes an application layer, a framework layer, a system service layer, and a kernel layer. Each layer has a clear role and division of labor; the layers can communicate with each other through software interfaces.

[0080] Among them, the application layer can provide a network interface to the application program, so that the application program can directly provide services to the user. The application layer can include a series of applications, such as system applications, desktops, settings, and telephones. The framework layer can provide an application programming interface (API) and a programming framework for the application program of the application layer. The framework layer can include some pre-defined functions. As shown in Figure 2, the framework layer can include: a user program framework, a UI development framework, a capability framework, and a graphics subsystem. Among them, the rendering service component in the graphics subsystem can execute the image display method provided in the embodiment of the present application. The system service layer can implement the scheduling and data management of rendering tasks, and the system service layer can include: a distributed scheduling module, a distributed management module, and a graphics subsystem. The kernel layer can be an intermediate layer between software and hardware, which can pass the application program's request to the hardware and act as a bottom-level driver to address various devices and components in the system. The hardware layer can include a kernel subsystem and a driver subsystem.

[0081] Figure 4 is a schematic flowchart of an image display method provided in an embodiment of the present application. The execution subject of method 400 may be electronic device 100. When the execution subject of method 400 is electronic device 100, it may be executed by processor 110 in electronic device 100. Method 400 may include steps S401 to S404.

[0082] S401: Acquire a first window and a second window on a first interface.

[0083] The first window is a focus window, and the second window is a non-focus window.

[0084] Optionally, the first window and the second window on the first interface may be in a stacked relationship, for example, the z level of the first window is higher than the z level of the second window.

[0085] Optionally, the first interface may further include a third window, which may be a mouse and / or system user interface (UI) window. When window drawing is performed, the first window and the third window may be drawn in the first frame buffer.

[0086] Optionally, the first interface may include one second window or multiple second windows. When the first interface includes multiple second windows, the multiple second windows may all be drawn in the second frame buffer during window drawing.

[0087] Optionally, the above-mentioned image display method can be used in smart devices such as mobile phones, tablets or personal computers. When displaying images, the above-mentioned first window can be the window corresponding to application 1 of the smart device, and the above-mentioned second window can be the window corresponding to application 2 of the smart device.

[0088] It should be understood that the focused window refers to the window currently interacting with the user and is responsible for receiving key events and touch events. When starting a new activity, adding a new window, removing an old window, or switching between split screens, the focused window may be updated. The non-focused window refers to the window that is currently inactive or not interacting with the user.

[0089] In one embodiment, step S401 includes: detecting a first input directed to a first window on a first interface; and acquiring the first window and a second window in response to the first input. Thus, when a user operates the first window, the electronic device can execute method 400.

[0090] Optionally, the first input may be moving or scaling the first window.

[0091] S402 : Drawing the first window in the first frame buffer, and drawing the second window in the second frame buffer.

[0092] Alternatively, drawing the window into a frame buffer may be understood as drawing the visible contents of the window into a frame buffer during graphics rendering. The frame buffer may be a memory area for storing image data, temporarily storing the rendered image data before sending it to a display device for display. The first frame buffer and the second frame buffer may be understood as two different memory areas for storing image data, having different memory addresses.

[0093] The drawing of the first window and the second window is executed by a process of the operating system.

[0094] Optionally, the operating system process may be a rendering service process, which may receive rendering tasks sent by various applications, convert them into commands executable by the GPU, and perform data transmission with the CPU to achieve efficient graphics rendering and window drawing.

[0095] It should be understood that the name of the rendering service process is only an exemplary description, and any process that can execute the drawing of the first window and the second window in the operating system can be understood as the rendering service process in this application.

[0096] S403 , synthesizing the first frame buffer through the first hardware interface layer to obtain a first synthesized frame, and synthesizing the second frame buffer through the second hardware interface layer to obtain a second synthesized frame.

[0097] During the window drawing process, the hardware interface layer refers to the interface between the operating system or window manager and the underlying hardware, used to send the drawn image data to the display device for display. Specifically, the hardware interface layer is responsible for communicating with the graphics hardware (such as a graphics card or integrated graphics card) and transmitting the drawn image data to the display device.

[0098] In one embodiment, step S403 includes: synthesizing the first frame buffer at a first frame rate through the first hardware interface layer to obtain a first synthesized frame; synthesizing the second frame buffer at a second frame rate through the second hardware interface layer to obtain a second synthesized frame, and the second frame rate is less than or equal to the first frame rate. In this way, when the drawing load of the non-focus window is heavy, the system can give priority to ensuring the rendering synthesis frame rate of the focus window. Since the first frame buffer is synthesized by the first hardware interface layer and operates at a higher frame rate, the rendering and display of the focus window will not be affected by the drawing load of the non-focus window. At the same time, the second hardware interface layer synthesizes the second frame buffer at a lower frame rate. In this way, the drawing pressure of the non-focus window can be reduced, ensuring that the rendering and interaction of the focus window can continue smoothly.

[0099] For example, the first frame rate may be 60 FPS, and the second frame rate may be less than or equal to 60 FPS.

[0100] Optionally, synthesizing the frame buffer through the hardware interface layer can be understood as: the hardware interface layer combines and processes the pixel data in the frame buffer to generate a final display frame (for example, a first synthesized frame and a second synthesized frame), which can be displayed on a display device. Therefore, synthesizing the first frame buffer through the first hardware interface layer can be understood as: the first hardware interface layer processes the pixel data corresponding to the first window in the first frame buffer. When the first interface includes a first window and a third window, synthesizing the first frame buffer through the first hardware interface layer can be understood as: the first hardware interface layer processes the pixel data corresponding to the first window and the third window in the first frame buffer.

[0101] In one embodiment, the first synthesized frame includes: a synthesized frame of the first hardware interface layer at frame N+1, and the second synthesized frame includes: a synthesized frame of the second hardware interface layer at frame N, where N is a positive integer. Step S403 includes: if, at frame N+1, the frame rate synthesized by the second hardware interface layer is less than or equal to a preset threshold, controlling a display device to display the second interface based on the synthesized frame of the first hardware interface layer at frame N+1 and the synthesized frame of the second hardware interface layer at frame N. This processing approach ensures that the display device can correctly display the second interface even when a non-focused window experiences lag. Specifically, by sending the synthesized frame of frame N to the display device for display, the user can still see the latest visual content without experiencing a stagnant display even when a non-focused window experiences lag. Simultaneously, the first hardware interface layer continues to send the synthesized frame of frame N+1 to the display device for display. This means that the rendering and display of the focused window remains continuous and smooth, unaffected by the lag of the non-focused window. The user can continue to interact with the focused window, and the response speed of the focused window's operations is not significantly delayed.

[0102] Optionally, the synthesis frame rate of the second hardware interface layer to the second frame buffer being less than a preset threshold can be understood as: when rendering the synthesized non-focus window, the electronic device is heavily loaded and a freeze phenomenon occurs.

[0103] Optionally, the preset threshold is 60 FPS, or the preset threshold is 30 FPS.

[0104] S404: Control the display device to display a second interface according to the first synthesized frame and the second synthesized frame.

[0105] Alternatively, step S404 may be replaced by sending a first instruction to the display device, where the first instruction is used to instruct the display device to display the first synthesized frame and the second synthesized frame.

[0106] The image display method provided by the embodiment of the present application can improve the efficiency of window rendering and user experience. Specifically, in the embodiment of the present application, by drawing the focus window in the first frame buffer and the non-focus window in the second frame buffer, this window drawing method helps to avoid drawing all windows in the same frame buffer, thereby avoiding the rendering process of the non-focus window from causing jamming or affecting the drawing of the focus window. In addition, the first frame buffer is synthesized through the first hardware interface layer, and the second frame buffer is synthesized through the second hardware interface layer. This synthesis method ensures the priority visibility of the focus window. Even if the non-focus window is jammed or stuck, it will not affect the drawing and rendering process of the focus window.

[0107] Optionally, when the method 400 is executed by a processor, steps S401 , S403 , and S404 may be executed by the CPU, and step S402 may be executed by the GPU.

[0108] In method 400 , if a window switch occurs, the electronic device may identify a new focus window and draw the new focus window in the first frame buffer, thereby performing subsequent composition operations.

[0109] In one embodiment, method 400 further includes: detecting a second input for a second window on a second interface; drawing the second window in a first frame buffer and drawing the first window in a second frame buffer in response to the second input; synthesizing the first frame buffer through a first hardware interface layer to obtain a third synthesized frame, and synthesizing the second frame buffer through a second hardware interface layer to obtain a fourth synthesized frame; and controlling a display device to display a third interface based on the third synthesized frame and the fourth synthesized frame. In this way, when it is detected that a user operates the second window, the electronic device can draw the second window in the first frame buffer and the first window in the second frame buffer. In this way, the electronic device can ensure the priority visibility of the second window when the user operates the second window, and reduce the phenomenon of the second window being stuck or frozen. In addition, the user can interact with the window of interest more smoothly, improving the user experience and the real-time responsiveness of the operation.

[0110] Optionally, the second input may be moving or scaling the second window. When the second input of the second window is detected, the second window is switched to the focus window, and the first window is switched to the non-focus window.

[0111] It should be understood that in the various embodiments of the present application, unless otherwise specified or there is a logical conflict, the terms and / or descriptions between the various embodiments are consistent and can be referenced by each other, and the technical features in different embodiments can be combined to form new embodiments according to their internal logical relationships.

[0112] It should also be understood that, for different application scenarios, some steps in method 400 may be executed, or some of the executed steps may be transformed accordingly.

[0113] FIG5 is a scenario in which the image display method provided in an embodiment of the present application is applicable, and method 400 can be applied to this scenario.

[0114] As shown in (a) in Figure 5, the window 511 of the email application is at the bottom layer, the window 512 of the chat application is in the middle layer, and the window 513 of the video application is at the top layer. The z level can be used to describe the stacking relationship of all windows on the user interface. Assume that the z level of the window 513 of the video application is z3, the z level of the window 512 of the chat application is z2, and the z level of the window 511 of the email application is z1, where z3>z2>z1. The larger the z level, the closer the window display is to the top of the display interface.

[0115] Among them, the window 513 of the video application can be called the focus window, and the window 513 of the video application can be the first window in method 400; the window 511 of the email application and the window 512 of the chat application can be called non-focus windows or windows with a z-level below the focus window, and the window 511 of the email application and the window 512 of the chat application can be the second window in method 400; in addition, windows with a z-level above the focus window can also be defined, and the windows with a z-level above the focus window can include: start and search box 514, APP icon 515, display interface 516 and mouse 517, and these windows can be the third window in method 400.

[0116] When applying method 400 to draw windows, the focus window and the windows above the focus window at the z level can be synthesized into a first hardware interface layer (also referred to as the focus layer, corresponding to (b) in Figure 5); the non-focus window and the windows below the focus window at the z level can be synthesized into a second hardware interface layer (also referred to as the non-focus layer, corresponding to (c) in Figure 5). The focus window is drawn in the first frame buffer, and the non-focus window is drawn in the second frame buffer. Then, the first frame buffer is synthesized through the first hardware interface layer, and the second frame buffer is synthesized through the second hardware interface layer. Finally, the synthesized interface can be displayed on the display device of the electronic device.

[0117] In addition, when the focus window switches, the electronic device can make the original focus window lose focus and draw the out-of-focus window in the second frame buffer; wherein, the new focus window can be started for the first time or can be focused from a non-focus window, and the new focus window can be drawn in the first frame buffer.

[0118] In an embodiment of the present application, by drawing the focus window and the non-focus window separately, when the non-focus layer freezes or drops frames due to heavy drawing load, the focus window will not be affected by the freeze of the non-focus layer and the refresh rate of the drawing will be affected. In this way, it can be ensured that the focus window is visible first during the window rendering process, reducing the phenomenon of the focus window freezing or stuck.

[0119] It should be understood that the application scenarios shown in (a) to (c) in Figure 5 are merely illustrative illustrations and should not be understood as limitations on the present application. Method 400 can also be applied to application scenarios of other operating systems (for example, Linux system, Android system or IOS system).

[0120] FIG6 is a schematic diagram showing that the focus layer and the non-focus layer are independently drawn at different frame rates according to an embodiment of the present application.

[0121] In Figure 6, (a) in Figure 6 is the picture of the display device in the Nth frame, (b) in Figure 6 is the picture of the display device in the N+1th frame, and (c) in Figure 6 is the picture of the display device in the N+2th frame, where N is a positive integer.

[0122] When using method 400 for window synthesis, if the second hardware interface layer freezes in the N+1 frame, the first hardware interface layer does not freeze in the N+1 frame. At this time, in the N+1 frame, the electronic device can control the display device to display the synthesized picture (i.e., the picture displayed by the display device in the N+1 frame) based on the synthesized frame of the second hardware interface layer in the N frame and the synthesized frame of the first hardware interface layer in the N+1 frame. In the N+2 frame, the second hardware interface layer no longer freezes, and the electronic device can control the display device to display the synthesized picture (i.e., the picture displayed by the display device in the N+2 frame) based on the synthesized frame of the second hardware interface layer in the N+2 frame and the synthesized frame of the first hardware interface layer in the N+2 frame.

[0123] In this scenario, the first hardware interface layer can always perform rendering and synthesis at a high frame rate (for example, 60FPS). When the second hardware interface layer cannot perform full-frame rendering and synthesis, it will not cause the first hardware interface layer to be synchronously blocked. In this way, the focus window and non-focus window can be independently drawn at different frame rates, ensuring that the focus window is visible first.

[0124] The above describes the image display method provided by the embodiment of the present application. The following describes the device and apparatus of the embodiment of the present application in conjunction with Figures 7 and 8 respectively.

[0125] FIG7 is a schematic diagram of an apparatus 700 provided in an embodiment of the present application. The apparatus 700 may include an acquisition unit 710, a storage unit 720, and a processing unit 730. The acquisition unit 710 is used to acquire instructions and / or data. The acquisition unit 710 may also be referred to as a communication interface or a communication unit. The storage unit 720 is used to implement a corresponding storage function and store corresponding instructions and / or data. The processing unit 730 can read the instructions and / or data in the storage unit to enable the apparatus 700 to implement the aforementioned image display method or rendering method.

[0126] Optionally, the apparatus 700 further includes a transceiver unit configured to receive and send instructions and / or data.

[0127] As a design, the device 700 includes: an acquisition unit 710, used to acquire a first window and a second window on a first interface, the first window is a focus window, and the second window is a non-focus window; a processing unit 730, used to: draw the first window in a first frame buffer, and draw the second window in a second frame buffer, the drawing of the first window and the second window being performed by a process of the operating system; synthesizing the first frame buffer through a first hardware interface layer to obtain a first synthesized frame, and synthesizing the second frame buffer through a second hardware interface layer to obtain a second synthesized frame; and controlling the display device to display the second interface according to the first synthesized frame and the second synthesized frame.

[0128] In one possible implementation, the processing unit 730 is specifically used to: synthesize the first frame buffer at a first frame rate through a first hardware interface layer to obtain a first synthesized frame; synthesize the second frame buffer at a second frame rate through a second hardware interface layer to obtain a second synthesized frame, where the second frame rate is less than or equal to the first frame rate.

[0129] In one possible implementation, the first synthesized frame includes: the synthesized frame of the first hardware interface layer in the N+1 frame, and the second synthesized frame includes the synthesized frame of the second hardware interface layer in the N frame, where N is a positive integer; the processing unit 730 is specifically used to control the display device to display the second interface according to the synthesized frame of the first hardware interface layer in the N+1 frame and the synthesized frame of the second hardware interface layer in the N frame when the frame rate synthesized by the second hardware interface layer in the N+1 frame is less than or equal to a preset threshold.

[0130] In a possible implementation, the processing unit 730 is further configured to detect a first input directed to the first window on the first interface; and the acquiring unit 710 is specifically configured to acquire the first window and the second window in response to the first input.

[0131] In one possible implementation, the processing unit 730 is further used to: detect a second input for the second window on the second interface; draw the second window in the first frame buffer and the first window in the second frame buffer in response to the second input; synthesize the first frame buffer through the first hardware interface layer to obtain a third synthesized frame, and synthesize the second frame buffer through the second hardware interface layer to obtain a fourth synthesized frame; and control the display device to display the third interface based on the third synthesized frame and the fourth synthesized frame.

[0132] As a design, the device 700 includes: an acquisition unit 710, used to obtain first information sent by the CPU, the first information including: a first window and a second window, the first window is a focus window, and the second window is a non-focus window; a processing unit 730, used to draw the first window in a first frame buffer, and draw the second window in a second frame buffer, the drawing of the first window and the second window is performed by a process of the operating system; a transceiver unit, sending the data in the first frame buffer and the second frame buffer to a hardware synthesizer.

[0133] Optionally, if the apparatus 700 is located in the electronic device 100 , the processing unit 730 may be the processor 110 shown in FIG. 1 .

[0134] FIG8 is a schematic diagram of another device 800 provided in an embodiment of the present application.

[0135] The device 800 includes a memory 810, a processor 820, and a communication interface 830. The memory 810, processor 820, and communication interface 830 are connected via an internal connection path. The memory 810 is used to store instructions, and the processor 820 is used to execute the instructions stored in the memory 810 to control the communication interface 830 to obtain information, so that the device 800 implements the aforementioned image display method or rendering method. Optionally, the memory 810 can be coupled to the processor 820 via an interface or integrated with the processor 820.

[0136] It should be noted that the communication interface 830 may be a transceiver such as, but not limited to, a transceiver. The communication interface 830 may also include an input / output interface.

[0137] The processor 820 stores one or more computer programs, which include instructions. When the instructions are executed by the processor 820, the apparatus 800 executes the image display method or rendering method in the above-mentioned embodiments.

[0138] In one possible implementation, the processor 820 includes: a CPU and a GPU, the CPU is used to obtain a first window and a second window on a first interface, the first window is a focus window, and the second window is a non-focus window; the GPU is used to draw the first window in a first frame buffer, and draw the second window in a second frame buffer, and the drawing of the first window and the second window is performed by a process of the operating system; the CPU is used to control the hardware synthesizer to synthesize the first frame buffer through a first hardware interface layer to obtain a first synthesized frame, and to synthesize the second frame buffer through a second hardware interface layer to obtain a second synthesized frame; the CPU is also used to control the display device to display the second interface based on the first synthesized frame and the second synthesized frame.

[0139] In one possible implementation, the processor 820 includes: a GPU, which is used to obtain first information sent by the CPU, the first information including: a first window and a second window, the first window is a focus window, and the second window is a non-focus window; drawing the first window in a first frame buffer, and drawing the second window in a second frame buffer, the drawing of the first window and the second window being performed by a process of the operating system; and sending data in the first frame buffer and the second frame buffer to a hardware synthesizer.

[0140] It should be understood that in the embodiments of the present application, the processor may be a central processing unit (CPU), or may be other general-purpose processors, digital signal processors (DSP), application-specific integrated circuits (ASIC), field programmable gate arrays (FPGA), or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, etc. The general-purpose processor may be a microprocessor or any conventional processor.

[0141] It should also be understood that in the embodiments of the present application, the memory may include read-only memory and random access memory, and provide instructions and data to the processor. A portion of the processor may also include non-volatile random access memory. For example, the processor may also store device type information.

[0142] During implementation, each step of the above method can be completed by an integrated logic circuit of the hardware in the processor 820 or by instructions in the form of software. The method disclosed in conjunction with the embodiments of the present application can be directly embodied as being executed by a hardware processor, or can be executed by a combination of hardware and software modules in the processor. The software module can be located in a storage medium mature in the art, such as a random access memory, a flash memory, a read-only memory, a programmable read-only memory or an electrically erasable programmable memory, a register, etc. The storage medium is located in the memory 810, and the processor 820 reads the information in the memory 810 and completes the steps of the above method in combination with its hardware. To avoid repetition, it will not be described in detail here.

[0143] Optionally, the communication interface 830 in FIG. 8 may implement the acquisition unit 710 in FIG. 7 , the memory 810 in FIG. 8 may implement the storage unit 720 in FIG. 7 , and the processor 820 in FIG. 8 may implement the processing unit 730 in FIG. 7 .

[0144] Optionally, the apparatus 700 or the apparatus 800 may be located in the electronic device 100 in FIG. 1 .

[0145] An embodiment of the present application further provides a computer-readable storage medium, wherein the computer-readable storage medium stores a program code. When the computer program code is executed on a computer, the computer executes any one of the methods in FIG. 4 to FIG. 6 .

[0146] An embodiment of the present application further provides a computer program product, which includes a computer program. When the computer program is executed, the computer executes any one of the methods in Figures 4 to 6 above.

[0147] An embodiment of the present application further provides a chip, comprising: a circuit, wherein the circuit is used to execute any one of the methods in FIG. 4 to FIG. 6 above.

[0148] Optionally, the above-mentioned chip may include: one or more of a CPU chip, a GPU chip, an ASIC chip, and an NPU chip.

[0149] An embodiment of the present application further provides an electronic device, including: any image display device or rendering device as shown in FIG. 7 or FIG. 8 .

[0150] Those skilled in the art will appreciate that the units and algorithm steps of each example described in conjunction with the embodiments disclosed herein can be implemented in electronic hardware, or a combination of computer software and electronic hardware. Whether these functions are performed in hardware or software depends on the specific application and design constraints of the technical solution. Professional and technical personnel can use different methods to implement the described functions for each specific application, but such implementation should not be considered beyond the scope of this application.

[0151] Those skilled in the art will clearly understand that, for the convenience and brevity of description, the specific working processes of the systems, devices and units described above can refer to the corresponding processes in the aforementioned method embodiments and will not be repeated here.

[0152] In the several embodiments provided in this application, it should be understood that the disclosed systems, devices and methods can be implemented in other ways. For example, the device embodiments described above are merely schematic. For example, the division of the units is merely a logical function division. In actual implementation, there may be other division methods, such as multiple units or components can be combined or integrated into another system, or some features can be ignored or not executed. Another point is that the mutual coupling or direct coupling or communication connection shown or discussed can be through some interfaces, indirect coupling or communication connection of devices or units, which can be electrical, mechanical or other forms.

[0153] The units described as separate components may or may not be physically separate, and the components shown as units may or may not be physical units, that is, they may be located in one place or distributed across multiple network units. Some or all of these units may be selected to achieve the purpose of this embodiment according to actual needs.

[0154] In addition, each functional unit in each embodiment of the present application may be integrated into one processing unit, or each unit may exist physically separately, or two or more units may be integrated into one unit.

[0155] If the functions are implemented in the form of software functional units and sold or used as independent products, they can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of the present application, or the part that contributes to the prior art, or the part of the technical solution, can be embodied in the form of a software product. The computer software product is stored in a storage medium and includes several instructions for enabling a computer device (which can be a personal computer, a server, or a network device, etc.) to execute all or part of the steps of the method described in each embodiment of the present application. The aforementioned storage medium includes various media that can store program codes, such as a USB flash drive, a mobile hard disk, a read-only memory (ROM), a random access memory (RAM), a magnetic disk, or an optical disk.

[0156] The above description is merely a specific embodiment of the present application, but the scope of protection of the present application is not limited thereto. Any changes or substitutions that can be easily conceived by a person skilled in the art within the technical scope disclosed in this application should be included in the scope of protection of this application. Therefore, the scope of protection of this application should be based on the scope of protection of the claims.

Claims

1. An image display method, characterized in that: The method comprises: Acquire a first window and a second window on a first interface, wherein the first window is a focus window and the second window is a non-focus window; Drawing the first window in a first frame buffer, and drawing the second window in a second frame buffer, wherein drawing of the first window and the second window is performed by a process of an operating system; Synthesizing the first frame buffer through a first hardware interface layer to obtain a first synthesized frame, and synthesizing the second frame buffer through a second hardware interface layer to obtain a second synthesized frame; According to the first synthesized frame and the second synthesized frame, a display device is controlled to display a second interface.

2. The method according to claim 1, characterized in that The synthesizing the first frame buffer through the first hardware interface layer to obtain a first synthesized frame, and synthesizing the second frame buffer through the second hardware interface layer to obtain a second synthesized frame, comprises: synthesizing the first frame buffer at a first frame rate through the first hardware interface layer to obtain the first synthesized frame; The second frame buffer is synthesized at a second frame rate through the second hardware interface layer to obtain the second synthesized frame, where the second frame rate is less than or equal to the first frame rate.

3. The method according to claim 1 or 2, characterized in that The first synthesized frame includes: a synthesized frame of the first hardware interface layer in the N+1th frame, and the second synthesized frame includes a synthesized frame of the second hardware interface layer in the Nth frame, where N is a positive integer; The controlling the display device to display the second interface according to the first synthesized frame and the second synthesized frame includes: In the N+1th frame, when the frame rate synthesized by the second hardware interface layer is less than or equal to a preset threshold, the display device is controlled to display the second interface according to the synthesized frame of the first hardware interface layer in the N+1th frame and the synthesized frame of the second hardware interface layer in the Nth frame.

4. The method according to any one of claims 1 to 3, characterized in that The obtaining of the first window and the second window on the first interface includes: Detecting a first input to the first window on the first interface; In response to the first input, the first window and the second window are acquired.

5. The method according to any one of claims 1 to 4, characterized in that: The method further comprises: Detecting a second input for the second window on the second interface; In response to the second input, drawing the second window in the first frame buffer, and drawing the first window in the second frame buffer; synthesizing the first frame buffer through the first hardware interface layer to obtain a third synthesized frame, and synthesizing the second frame buffer through the second hardware interface layer to obtain a fourth synthesized frame; According to the third synthesized frame and the fourth synthesized frame, the display device is controlled to display a third interface.

6. An image display device, characterized in that: The device comprises: An acquiring unit, configured to acquire a first window and a second window on a first interface, wherein the first window is a focus window and the second window is a non-focus window; A processing unit for: Drawing the first window in a first frame buffer, and drawing the second window in a second frame buffer, wherein drawing of the first window and the second window is performed by a process of an operating system; Synthesizing the first frame buffer through a first hardware interface layer to obtain a first synthesized frame, and synthesizing the second frame buffer through a second hardware interface layer to obtain a second synthesized frame; According to the first synthesized frame and the second synthesized frame, a display device is controlled to display a second interface.

7. The device according to claim 6, characterized in that The processing unit is specifically used for: synthesizing the first frame buffer at a first frame rate through the first hardware interface layer to obtain the first synthesized frame; The second frame buffer is synthesized at a second frame rate through the second hardware interface layer to obtain the second synthesized frame, where the second frame rate is less than or equal to the first frame rate.

8. The device according to claim 6 or 7, characterized in that The first synthesized frame includes: a synthesized frame of the first hardware interface layer in the N+1th frame, and the second synthesized frame includes a synthesized frame of the second hardware interface layer in the Nth frame, where N is a positive integer; The processing unit is specifically used to control the display device to display the second interface according to the synthesized frame of the first hardware interface layer in the N+1 frame and the synthesized frame of the second hardware interface layer in the N frame when the frame rate synthesized by the second hardware interface layer in the N+1 frame is less than or equal to a preset threshold.

9. The device according to any one of claims 6 to 8, characterized in that The processing unit is further configured to detect a first input directed to the first window on the first interface; The acquisition unit is specifically configured to acquire the first window and the second window in response to the first input.

10. The device according to any one of claims 6 to 9, characterized in that The processing unit is further used for: Detecting a second input for the second window on the second interface; In response to the second input, drawing the second window in the first frame buffer, and drawing the first window in the second frame buffer; The first frame buffer is synthesized through the first hardware interface layer to obtain a third synthesized frame, and the second frame buffer is synthesized through the second hardware interface layer to obtain a fourth synthesized frame; according to the third synthesized frame and the fourth synthesized frame, the display device is controlled to display a third interface.

11. An image display device, characterized in that: include: A processor and a memory, wherein the processor is coupled to the memory and is configured to read and execute instructions in the memory to perform the method according to any one of claims 1 to 5.

12. A computer-readable storage medium, characterized in that: The computer-readable storage medium stores a program code, and when the computer program code is executed on a computer, the computer is caused to execute the method according to any one of claims 1 to 5.

13. A chip, characterized in that: include: A circuit for executing the method according to any one of claims 1 to 5.

14. An electronic device, characterized in that: include: An image display device as claimed in any one of claims 6 to 11.

Citation Information

Patent Citations

  • Image display method, image display device and electronic equipment

    CN119336421A

  • Method and system for directly displaying drm of video and UI based on Wayland protocol

    CN113050899A

  • Method for displaying multiple windows and electronic equipment

    CN114040238A

  • Multi-window display picture processing method and device and electronic equipment

    CN115629697A

  • Display device and window display method

    CN116347166A