WO2019242488A1 - 丢帧补偿方法、装置、存储介质及终端 - Google Patents

丢帧补偿方法、装置、存储介质及终端 Download PDF

Info

Publication number
WO2019242488A1
WO2019242488A1 PCT/CN2019/089786 CN2019089786W WO2019242488A1 WO 2019242488 A1 WO2019242488 A1 WO 2019242488A1 CN 2019089786 W CN2019089786 W CN 2019089786W WO 2019242488 A1 WO2019242488 A1 WO 2019242488A1
Authority
WO
WIPO (PCT)
Prior art keywords
frame
compensation
buffer queue
screen
dropped
Prior art date
Application number
PCT/CN2019/089786
Other languages
English (en)
French (fr)
Inventor
陈岩
Original Assignee
Oppo广东移动通信有限公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Oppo广东移动通信有限公司 filed Critical Oppo广东移动通信有限公司
Publication of WO2019242488A1 publication Critical patent/WO2019242488A1/zh

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M1/00Substation equipment, e.g. for use by subscribers
    • H04M1/72Mobile telephones; Cordless telephones, i.e. devices for establishing wireless links to base stations without route selection
    • H04M1/724User interfaces specially adapted for cordless or mobile telephones
    • H04M1/72403User interfaces specially adapted for cordless or mobile telephones with means for local support of applications that increase the functionality
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/14Digital output to display device ; Cooperation and interconnection of the display device with other functional units
    • G06F3/1407General aspects irrespective of display type, e.g. determination of decimal point position, display with fixed or driving decimal point, suppression of non-significant zeros
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M1/00Substation equipment, e.g. for use by subscribers
    • H04M1/72Mobile telephones; Cordless telephones, i.e. devices for establishing wireless links to base stations without route selection
    • H04M1/724User interfaces specially adapted for cordless or mobile telephones
    • H04M1/72448User interfaces specially adapted for cordless or mobile telephones with means for adapting the functionality of the device according to specific conditions
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/44Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream, rendering scenes according to MPEG-4 scene graphs
    • H04N21/44004Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream, rendering scenes according to MPEG-4 scene graphs involving video buffer management, e.g. video decoder buffer or video display buffer
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/44Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream, rendering scenes according to MPEG-4 scene graphs
    • H04N21/44008Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream, rendering scenes according to MPEG-4 scene graphs involving operations for analysing video streams, e.g. detecting features or characteristics in the video stream

Definitions

  • the embodiments of the present application relate to the technical field of mobile terminals, for example, to a method, a device, a storage medium, and a terminal for frame loss compensation.
  • the embodiments of the present application provide a method, a device, a storage medium, and a terminal for frame loss compensation, which can improve the screen display fluency of a mobile terminal.
  • an embodiment of the present application provides a frame loss compensation method, including:
  • frame drop detection is performed according to a frame rate and a display buffer queue, and the screen frame is a frame corresponding to a terminal screen display content;
  • a screen frame and the compensation frame are output according to the display buffer queue inserted into the compensation frame.
  • an embodiment of the present application provides a frame loss compensation device, including:
  • the detection module is configured to perform frame drop detection according to a frame rate and a display buffer queue when a screen frame update instruction is triggered, where the screen frame is a frame corresponding to a terminal screen display content;
  • Cache module set to store display cache queue
  • a compensation module configured to generate a compensation frame if the detection module detects a dropped frame
  • An interpolation module configured to insert the compensation frame generated by the compensation module into the display buffer queue stored by the buffer module
  • the display module is configured to output a screen frame and the compensation frame according to the display buffer queue inserted into the compensation frame stored by the buffer module.
  • an embodiment of the present application provides a computer-readable storage medium on which a computer program is stored, and when the program is executed by a processor, the frame drop compensation method shown in the first aspect is implemented.
  • an embodiment of the present application provides a terminal, including a memory, a processor, and a computer program stored in the memory and executable by the processor.
  • the processor executes the computer program, the implementation is implemented as in the first aspect The lost frame compensation method shown below.
  • the frame loss compensation scheme provided in the embodiment of the present application firstly detects a frame drop detection according to a frame rate and a display buffer queue when a screen frame update instruction is triggered, and the screen frame is a frame corresponding to a terminal screen display content; Generate a compensation frame when a dropped frame is generated; again, insert the compensation frame into the display buffer queue; finally, output a screen frame and the compensation frame according to the display buffer queue inserted into the compensation frame, which can detect a dropped frame.
  • a compensation frame is generated to improve the screen display fluency of the mobile terminal.
  • FIG. 1 is a schematic flowchart of a frame loss compensation method according to an embodiment of the present application
  • FIG. 2 is a schematic flowchart of another frame loss compensation method according to an embodiment of the present application.
  • FIG. 3 is a schematic flowchart of another frame loss compensation method according to an embodiment of the present application.
  • FIG. 4 is a schematic flowchart of another frame loss compensation method according to an embodiment of the present application.
  • FIG. 5 is a schematic flowchart of another frame loss compensation method according to an embodiment of the present application.
  • FIG. 6 is a schematic flowchart of another frame loss compensation method according to an embodiment of the present application.
  • FIG. 7 is a schematic structural diagram of a frame loss compensation device according to an embodiment of the present application.
  • FIG. 8 is a schematic structural diagram of a mobile terminal according to an embodiment of the present application.
  • the method of adding frames is used to improve the image quality and fluency.
  • the motion compensation algorithm is used to improve the smoothness of the picture.
  • the original 24 Hertz (Hz) video can reach 60 Hz or even 120 Hz after being processed by the algorithm.
  • the core problem solved by this method is the smear caused by the large screen display instead of the stutter caused by dropped frames.
  • An embodiment of the present application provides a frame loss compensation method, which can perform frame loss detection based on a frame rate.
  • a compensation frame is generated, and the compensation frame is inserted into a display buffer queue to compensate for a lost screen frame, thereby improving Mobile terminal screen display fluency.
  • the scenario is as follows:
  • FIG. 1 is a schematic flowchart of a frame loss compensation method according to an embodiment of the present application.
  • the method is used to display a frame loss when a screen frame is displayed based on a display buffer queue.
  • the method may be executed by a mobile terminal, which may be a smart phone. , Tablet, wearable, laptop, etc., the method includes the following steps:
  • Step 110 When the screen frame update instruction is triggered, frame drop detection is performed according to the frame rate and the display buffer queue, and the screen frame is a frame corresponding to the display content of the terminal screen.
  • the operating system establishes a display cache queue.
  • the display buffer queue is used to store any frame screen displayed by the terminal, including: the terminal startup screen, the lock screen screen, the unlocked operation interface, and the shutdown interface.
  • the system stores the screen frames in the display buffer queue, then reads the screen frames in the display buffer queue, and outputs the screen frames in the screen.
  • the display frequency of the mobile terminal can be 30 frames per second (Frames Per Second) (fps) or 60 fps.
  • fps frames per second
  • the update period of the system screen frame is 33.34 milliseconds (ms), that is, the display buffer queue is updated every 33.34 ms, so that there is continuous screen frame input in the display buffer queue.
  • the system reads screen frames from the display queue every 33.34ms, and displays the screen frames on the screen of the mobile terminal.
  • Step 120 When a dropped frame is detected, a compensation frame is generated.
  • a frame inserting module can be set, and a compensation frame is generated by the frame inserting module.
  • the frame inserting module can be an independent hardware module.
  • DSP digital signal processing
  • AI artificial intelligence
  • a compensation frame generation request is generated, and the request is sent to the frame insertion module.
  • the frame insertion module receives the request, it generates a compensation frame through a preset algorithm.
  • multiple reference frames are obtained; and a compensation frame is generated according to the multiple reference frames and a preset interpolation algorithm.
  • the preset interpolation algorithm may be a motion estimation and motion compensation algorithm (MEMC).
  • MEMC motion estimation and motion compensation algorithm
  • multiple screen frames are acquired in the display buffer queue, such as screen frame A, screen frame B, screen frame C.
  • MEMC motion estimation and motion compensation algorithm
  • an intermediate frame is inserted between multiple screen frames, and screen frame AB is generated based on screen frame A and screen frame B.
  • Screen frame C and screen frame B generate screen frame BC
  • screen frame AB and screen frame BC are compensation frames.
  • the frame images in the display buffer queue are curtain frame A, screen frame AB, screen frame B, screen frame BC, and screen frame C.
  • Step 130 Insert the compensation frame into the display buffer queue.
  • the positions of the generated compensation frames are different.
  • the position of the compensation frame is located in the middle of the queue.
  • the position of the compensation frame may be at the head or tail of the display buffer queue.
  • Step 140 Output the screen frame and the compensation frame according to the display buffer queue into which the compensation frame is inserted.
  • the system reads the display buffer queue with the compensation frames inserted, and outputs the screen frames and compensation frames in the display buffer queue in order according to the preset frame rate.
  • the preset frame rate is 30fps or 60fps.
  • the frame loss compensation method provided in the embodiment of the present application firstly detects a frame drop detection according to a frame rate and a display buffer queue when a screen frame update instruction is triggered, and the screen frame is a frame corresponding to a terminal screen display content; secondly, when a frame drop is detected Compensation frames are generated at the time of frames; again, the compensation frames are inserted into the display buffer queue; finally, the screen frames and compensation frames are output according to the display buffer queue into which the compensation frames are inserted.
  • the frame loss compensation method provided by the embodiment of the present application can reduce power consumption. Provide more smooth screen frame display, improve system resource utilization, and improve the smoothness of the display.
  • FIG. 2 is a schematic flowchart of another frame loss compensation method according to an embodiment of the present application, as an illustration of the foregoing embodiment.
  • the method provided in this embodiment includes the following steps.
  • Step 210 When a screen frame update instruction is triggered, determine a plurality of detection time windows according to a frame rate.
  • the detection time window is a window that continuously scrolls, that is, when the screen frame update instruction is triggered, one second corresponds to 30 or 60 detection time windows, and update detection is performed in each detection time window.
  • Step 220 In each detection time window, check whether the cache queue is updated.
  • each detection time window it is determined whether the system inserts a new screen frame into the display buffer queue to determine whether the display buffer queue is updated in each detection time window. If the display cache queue is not updated in each detection time window, it is determined that the display cache queue has dropped frames. If the display buffer queue is updated in each detection time window, it is determined that the display buffer queue does not drop frames.
  • Step 230 Generate a compensation frame when a dropped frame is detected.
  • Step 240 Insert the compensation frame into the display buffer queue.
  • Step 250 Output the screen frame and the compensation frame according to the display buffer queue into which the compensation frame is inserted.
  • the frame loss compensation method provided in the embodiment of the present application can determine a detection time window according to the frame rate, and detect and display the update status of the cache queue within each detection time window, thereby determining whether a frame drop has occurred and improving the accuracy of frame drop detection .
  • FIG. 3 is a schematic flowchart of another frame loss compensation method according to an embodiment of the present application, as an illustration of the foregoing embodiment.
  • the method provided in this embodiment includes the following steps.
  • Step 310 When the screen frame update instruction is triggered, frame drop detection is performed according to the frame rate and the display buffer queue, and the screen frame is a frame corresponding to the display content of the terminal screen.
  • Step 320 When a dropped frame is detected, determine a plurality of screen frames in the display buffer queue as reference frames.
  • the number of frames in the display buffer queue can be set, and the number of frames can be set from 3 to 5 frames. If it is 3 frames, the frames in the display buffer queue are used as reference frames.
  • Step 330 Generate a compensation frame according to a plurality of reference frames and a preset interpolation algorithm.
  • the preset difference algorithm may be the closest to the interpolation algorithm, that is, copying each reference frame to obtain a compensation frame.
  • the preset difference algorithm may also be an average difference algorithm, that is, an average pixel value at each pixel is determined according to a pixel value corresponding to each pixel point in the two reference frames, so as to obtain compensation between the two reference frames. frame.
  • the preset difference algorithm may also be a Lagrangian interpolation algorithm, that is, a polynomial corresponding to a graphic change trend is fitted according to a reference frame, and a compensation frame is determined according to the polynomial.
  • Step 340 Insert the compensation frame into the display buffer queue.
  • Compensation frames can be inserted at the end of the display queue. Or insert to the next frame position adjacent to each reference frame.
  • Step 350 Output the screen frame and the compensation frame according to the display buffer queue into which the compensation frame is inserted.
  • the frame loss compensation method provided in the embodiment of the present application can determine the compensation frame according to the screen frames not displayed in the display buffer queue, thereby more accurately generating the compensation frame and improving the system resource utilization rate.
  • FIG. 4 is a schematic flowchart of another frame loss compensation method according to an embodiment of the present application, as an illustration of the foregoing embodiment.
  • the method provided in this embodiment includes the following steps.
  • Step 410 When the screen frame update instruction is triggered, frame drop detection is performed according to the frame rate and the display buffer queue, and the screen frame is a frame corresponding to the display content of the terminal screen.
  • Step 420 When the screen frames in the display buffer queue are output, the output screen frames are stored in the compensation buffer queue, and a preset number of valid screen frames are stored in the compensation buffer queue.
  • the system After the system reads and outputs the screen frames in the display buffer queue, it stores the screen frames in the compensation buffer queue.
  • the preset number of valid screen frames may be at least two valid screen frames, and may be selected as five valid screen frames.
  • the compensation buffer queue is the same as the display buffer queue. It maintains a fixed number of valid screen frames and updates based on the frame rate.
  • Step 430 In the case where a dropped frame is detected, a reference frame is determined according to a valid screen frame stored in the compensation buffer queue.
  • a valid screen frame stored in the compensation buffer queue is determined as a reference frame.
  • Step 440 Generate a compensation frame according to a plurality of reference frames and a preset interpolation algorithm.
  • the compensation frame may be calculated by referring to a preset interpolation algorithm adopted in step 330.
  • Step 450 Insert the compensation frame into the display buffer queue.
  • Compensation frames can be inserted at the head of the display buffer queue.
  • Step 460 Output the screen frame and the compensation frame according to the display buffer queue into which the compensation frame is inserted.
  • the frame loss compensation method provided in the embodiment of the present application can extend the display time of the screen frame and improve the resource utilization rate according to the effective screen frame.
  • FIG. 5 is a schematic flowchart of another frame loss compensation method according to an embodiment of the present application. As a description of the foregoing embodiment, the method includes:
  • Step 510 When the screen frame update instruction is triggered, frame drop detection is performed according to the frame rate and the display buffer queue, and the screen frame is a frame corresponding to the display content of the terminal screen.
  • Step 520 When a dropped frame is detected, a compensation frame is generated.
  • Step 530 Obtain the calculation time of the compensation frame.
  • the time from the detection of a dropped frame to the generation of a compensation frame is the calculation time.
  • the calculation time may change due to the resource occupation inside the terminal.
  • Step 540 Insert the compensation frame into the display buffer queue according to the calculation time and the frame rate.
  • the detection time window is determined according to the frame rate.
  • the calculation time is shorter than the detection time window, the compensation frame is inserted at the end of the display buffer queue.
  • the calculation time is greater than the detection time window, after the detection time window, a new frame is input to the display buffer queue, and the insertion position corresponding to the compensation frame is determined according to the calculation time.
  • Step 550 Output the screen frame and the compensation frame according to the display buffer queue into which the compensation frame is inserted.
  • the frame loss compensation method provided in the embodiment of the present application can determine the insertion position of the compensation frame according to the calculation time, so that the compensated screen frame is smoother, frame skipping is avoided, and stability is improved.
  • FIG. 6 is a schematic flowchart of another frame loss compensation method according to an embodiment of the present application. As a description of the foregoing embodiment, the method includes:
  • Step 610 When the screen frame update instruction is triggered, frame drop detection is performed according to the frame rate and the display buffer queue, and the screen frame is a frame corresponding to the display content of the terminal screen.
  • Step 620 In the case where a dropped frame is detected, the first frame rate is determined according to the number of dropped frames and the frame rate.
  • the number of dropped frames is calculated, and the number of frames that can be output per minute is determined according to the frame rate, thereby determining the first frame rate.
  • the first frame rate is a frame rate of a predicted output screen frame.
  • determining the first frame rate according to the number of dropped frames and the frame rate includes: determining the duration of the time detection window according to the frame rate, and sequentially detecting whether the cache queue is updated in multiple detection time windows, and detecting N consecutive times. In the case where the display cache queue is not updated within the time window, the number of dropped frames in N consecutive detection time windows is determined to be N, and the first frame rate is determined to be (N + 1) times the frame rate, where N is greater than or Is equal to 1.
  • Step 630 Generate a compensation frame when the first frame rate is less than the second frame rate, and the second frame rate is a smooth frame rate recognized by the naked eye of the user.
  • the second frame rate can be a frame rate in the range of 25pfs-30fps. If the first frame rate is less than the second frame rate, it means that the user can recognize the dropped frame with the naked eye, and a compensation frame needs to be generated at this time.
  • the user can choose to wait for the display cache queue to be updated.
  • Step 640 Insert the compensation frame into the display buffer queue.
  • Step 650 Output the screen frame and the compensation frame according to the display buffer queue into which the compensation frame is inserted.
  • the frame loss compensation method provided in the embodiment of the present application can generate a compensation frame when the first frame rate is less than the second frame rate, that is, when a user will find a dropped frame, while ensuring smooth pictures, reducing system resource power consumption. To improve system resource utilization.
  • FIG. 7 is a schematic structural diagram of a frame loss compensation device according to an embodiment of the present application. As shown in FIG. 7, the device includes a detection module 710, a cache module 720, a compensation module 730, an interpolation module 740, and a display module 750.
  • the detection module 710 is configured to perform frame drop detection according to a frame rate and a display buffer queue when a screen frame update instruction is triggered, where the screen frame is a frame corresponding to a terminal screen display content; the cache module 720 is configured to store a display cache A queue; a compensation module 730 configured to generate a compensation frame when the detection module 710 detects a dropped frame; an interpolation module 740 configured to insert the compensation frame generated by the compensation module 730 into the buffer module 720 The stored display buffer queue; a display module 750 configured to output a screen frame and the compensation frame according to the display buffer queue inserted into the compensation frame and stored by the buffer module 720.
  • the detection module 710 is configured to perform frame loss detection according to the frame rate and the display cache queue by determining multiple detection time windows according to the frame rate; and in each detection time window, detecting whether the display cache queue is updated If the display cache queue is not updated in each detection time window, it is determined that a frame is dropped; if the display cache queue is updated in each detection time window, it is determined that no frame is dropped.
  • the compensation module 730 is configured to: obtain a plurality of reference frames when a dropped frame is detected; and generate a compensation frame according to the plurality of reference frames and a preset interpolation algorithm.
  • the compensation module 730 is configured to determine a plurality of screen frames in the display buffer queue as reference frames when a dropped frame is detected in the following manner: When a dropped frame is detected, Determining a plurality of screen frames in the display buffer queue as reference frames.
  • the compensation module 730 is configured to determine a plurality of screen frames in the display buffer queue as reference frames when a dropped frame is detected in the following manner: screen frames in the output display buffer queue In the case of storing the output screen frame to a compensation buffer queue, and the compensation buffer queue stores a preset number of valid screen frames; in the case of detecting a dropped frame, according to the stored in the compensation buffer queue The effective screen frame determines a reference frame.
  • the interpolation module 740 is configured to: obtain a calculation time of the compensation frame; and insert the compensation frame into the display buffer queue according to the calculation time and the frame rate.
  • the compensation module 730 is configured to determine a first frame rate according to the number of dropped frames and the frame rate when a dropped frame is detected; when the first frame rate is less than the frame rate and If it is larger than the second frame rate, a compensation frame is generated, and the second frame rate is a smooth frame rate recognized by the naked eye of the user.
  • the compensation module 730 is configured to determine a reference frame according to the valid screen frame stored in the compensation buffer queue when a dropped frame is detected by: In this case, the effective screen frame stored in the compensation buffer queue is determined as a reference frame.
  • the interpolation module 740 is configured to insert the compensation frame into the display buffer queue according to the calculation time and the frame rate by: determining a detection time window according to the frame rate; When the calculation time is shorter than the detection time window, the compensation frame is inserted at the end of the display buffer queue.
  • the frame loss compensation device provided in the embodiment of the present application, first, when a screen frame update instruction is triggered, the detection module 710 performs frame drop detection according to a frame rate and a display buffer queue, and the screen frame is a frame corresponding to a terminal screen display content; At the same time, the cache module 720 stores the display cache queue. Secondly, the compensation module 730 generates a compensation frame when the detection module 710 detects a dropped frame; again, the interpolation module 740 generates the compensation generated by the compensation module 730. A frame is inserted into the display buffer queue stored by the buffer module 720; finally, the display module 750 outputs a screen frame and the compensation frame according to the display buffer queue inserted by the buffer module 720 into the compensation frame.
  • the frame loss compensation provided by the embodiments of this application can be performed at a lower power consumption. Provide a smoother screen frame display, improve system resource utilization, and improve the smoothness of the display.
  • the above device can execute the methods provided by all the foregoing embodiments of the present application, and has corresponding functional modules and beneficial effects for performing the above methods.
  • the above device can execute the methods provided by all the foregoing embodiments of the present application, and has corresponding functional modules and beneficial effects for performing the above methods.
  • FIG. 8 is a schematic structural diagram of a terminal device according to an embodiment of the present application.
  • the terminal may include: a casing (not shown in FIG. 8), a memory 801, a central processing unit (CPU) 802 (also referred to as a processor, hereinafter referred to as a CPU), and stored in the memory
  • CPU central processing unit
  • the circuit board is disposed in a space surrounded by the housing; the CPU 802 and the memory 801 are disposed on the circuit board; and the power supply circuit is configured to supply power to various circuits or devices of the terminal;
  • the memory 801 is configured to store executable program code; the CPU 802 runs a program corresponding to the executable program code by reading the executable program code stored in the memory 801.
  • the terminal also includes a peripheral interface 803, a radio frequency (RF) circuit 805, an audio circuit 806, a speaker 811, a power management chip 808, an input / output (I / O) subsystem 809, a touch screen 812, and other inputs.
  • RF radio frequency
  • I / O input / output subsystem 809
  • touch screen 812 a touch screen 812
  • Control device 810 and external port 804 these components communicate through one or more communication buses or signal lines 807.
  • terminal device 800 shown in FIG. 8 is only an example of a terminal, and the terminal device 800 may have more or fewer components than those shown in FIG. 8, and two or more may be combined Components, or can have different component configurations.
  • the various components shown in Figure 8 may be implemented in hardware, software, or a combination of hardware and software including one or more signal processing and / or application specific integrated circuits.
  • the terminal device is a smart phone as an example.
  • Memory 801 which can be accessed by CPU 802, peripheral interface 803, etc.
  • the memory 801 can include high-speed random access memory, and can also include non-volatile memory, such as one or more disk storage devices, flash memory devices , Or other volatile solid-state storage devices.
  • the I / O subsystem 809 which can connect input / output peripherals on the device, such as touch screen 812 and other input / control devices 810, to peripheral interface 803.
  • the I / O subsystem 809 may include a display controller 8091 and one or more input controllers 8092 configured to control other input / control devices 810.
  • one or more input controllers 8092 receive electrical signals from or send electrical signals to other input / control devices 810.
  • the other input / control devices 810 may include physical buttons (press buttons, Rocker button, etc.), dial, slide switch, joystick, click wheel.
  • the input controller 8092 may be connected to any of the following: a keyboard, an infrared port, a universal serial bus (Universal Serial Bus, USB) interface, and a pointing device such as a mouse.
  • USB Universal Serial Bus
  • the touch screen 812 may be a resistive type, a capacitive induction type, an infrared type, or a surface acoustic wave type.
  • the touch screen 812 can be: plug-in type, built-in type or integral type.
  • the touch screen 812 may be: a vector pressure sensing technology touch screen, a resistive technology touch screen, a capacitive technology touch screen, an infrared technology touch screen, or a surface acoustic wave technology touch screen.
  • a touch screen 812 which is an input interface and an output interface between a user terminal and a user, and displays a visual output to the user.
  • the visual output may include graphics, text, icons, videos, and the like.
  • the touch screen 812 sends an electrical signal (such as an electrical signal on the contact surface) triggered by the user on the touch screen to the processor 802.
  • the display controller 8091 in the I / O subsystem 809 receives electric signals from the touch screen 812 or sends electric signals to the touch screen 812.
  • the touch screen 812 detects contacts on the touch screen, and the display controller 8091 converts the detected contacts into interactions with user interface objects displayed on the touch screen 812, that is, realizes human-computer interaction.
  • the user interface objects displayed on the touch screen 812 can be running Icons for games, icons connected to the appropriate network, etc.
  • the device may further include a light mouse, which is a touch-sensitive surface that does not display a visible output, or an extension of the touch-sensitive surface formed by a touch screen.
  • the RF circuit 805 is mainly configured to establish communication between the smart speaker and a wireless network (that is, a network side), and realize data reception and transmission of the smart speaker and the wireless network. For example, send and receive text messages, e-mail, and so on.
  • the audio circuit 806 is mainly configured to receive audio data from the peripheral interface 803, convert the audio data into an electrical signal, and send the electrical signal to the speaker 811.
  • the speaker 811 is configured to restore the voice signal received by the smart speaker from the wireless network through the RF circuit 805 to a sound and play the sound to a user.
  • the power management chip 808 is configured to provide power and power management for the hardware connected to the CPU 802, the I / O subsystem, and the peripheral interface.
  • the central processing unit 802 is configured to: in the case of triggering a screen frame update instruction, perform frame drop detection according to a frame rate and a display buffer queue, the screen frame is a frame corresponding to a terminal screen display content; In the case of dropped frames, a compensation frame is generated; the compensation frame is inserted into the display buffer queue; and a screen frame and the compensation frame are output according to the display buffer queue into which the compensation frame is inserted.
  • the performing frame drop detection according to the frame rate and the display cache queue includes: determining a plurality of detection time windows according to the frame rate; in each detection time window, detecting whether the display cache queue is updated; and in the display cache, When the queue is not updated in each of the detection time windows, the queue is determined to be dropped; and when the display buffer queue is updated in the each of the detection time windows, it is determined that no frames are dropped.
  • the generating a compensation frame when a dropped frame is detected includes: obtaining a plurality of reference frames when a dropped frame is detected; and according to the plurality of reference frames and a preset interpolation algorithm. Generate compensation frames.
  • the obtaining a plurality of reference frames when a dropped frame is detected includes: determining a plurality of screen frames in the display buffer queue as a reference frame when a dropped frame is detected. .
  • acquiring a plurality of reference frames when a dropped frame is detected includes: storing the output screen frames to a compensation buffer queue when outputting screen frames in a display buffer queue. A preset number of valid screen frames are stored in the compensation buffer queue; and when a dropped frame is detected, a reference frame is determined according to the valid screen frames stored in the compensation buffer queue.
  • the inserting the compensation frame into the display buffer queue includes: obtaining a calculation time of the compensation frame; and inserting the compensation frame into the display frame according to the calculation time and the frame rate. Display the cache queue.
  • the generating a compensation frame when a dropped frame is detected includes: determining a first frame rate according to the number of dropped frames and the frame rate when the dropped frame is detected; Compensation frames are generated when the first frame rate is less than the frame rate and greater than the second frame rate, and the second frame rate is a smooth frame rate recognized by a user's naked eye.
  • An embodiment of the present application further provides a storage medium including executable instructions of a terminal device, which are used to execute a frame drop compensation method when executed by a terminal device processor, and the method includes: triggering a screen In the case of a frame update instruction, frame loss detection is performed according to a frame rate and a display buffer queue, and the screen frame is a frame corresponding to a terminal screen display content; when a frame loss is detected, a compensation frame is generated; Inserting the display buffer queue; and outputting a screen frame and the compensation frame according to the display buffer queue into which the compensation frame is inserted.
  • the performing frame drop detection according to the frame rate and the display cache queue includes: determining a detection time window according to the frame rate; and in a first detection time window, detecting whether the display cache queue is updated, the first detecting The time window is any detection time window after the screen frame update instruction is triggered; if the display buffer queue is not updated in the first detection time window, the frame is determined to be dropped; the display buffer queue is at the first detection time In the case of window updates, it is determined that no frames have been dropped.
  • the generating a compensation frame when a dropped frame is detected includes: obtaining a plurality of reference frames when a dropped frame is detected; and according to the plurality of reference frames and a preset interpolation algorithm. Generate compensation frames.
  • the obtaining a plurality of reference frames when a dropped frame is detected includes: determining a plurality of screen frames in the display buffer queue as a reference frame when a dropped frame is detected. .
  • acquiring a plurality of reference frames when a dropped frame is detected includes: storing the screen frames to the compensation cache queue in the case of outputting the screen frames in the display buffer queue, so that The compensation buffer queue stores a preset number of valid screen frames; and when a dropped frame is detected, a reference frame is determined according to the valid screen frames stored in the compensation buffer queue.
  • the inserting the compensation frame into the display buffer queue includes: obtaining a calculation time of the compensation frame; and inserting the compensation frame into the display frame according to the calculation time and the frame rate. Display the cache queue.
  • the generating a compensation frame when a dropped frame is detected includes: determining a first frame rate according to the number of dropped frames and the frame rate when the dropped frame is detected; When the first frame rate is less than the frame rate and greater than the second frame rate, a compensation frame is generated, and the second frame rate is a smooth frame rate recognized by a user's naked eye.
  • the computer storage medium in the embodiments of the present application may adopt any combination of one or more computer-readable media.
  • the computer-readable medium may be a computer-readable signal medium or a computer-readable storage medium.
  • the computer-readable storage medium may be, for example, but not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any combination thereof.
  • Examples (non-exhaustive list) of computer-readable storage media include: electrical connections with one or more wires, portable computer disks, hard disks, random access memory (RAM), read-only memory (Read- Only Memory (ROM), Erasable Programmable Read Only Memory (EPROM) or flash memory, optical fiber, Compact Disc Read-Only Memory (CD-ROM), optical storage devices , Magnetic storage devices, or any suitable combination of the foregoing.
  • a computer-readable storage medium may be any tangible medium that contains or stores a program that can be used by or in combination with an instruction execution system, apparatus, or device.
  • the computer-readable signal medium may include a data signal propagated in baseband or transmitted as part of a carrier wave, which carries a computer-readable program code. Such a propagated data signal may take many forms, including but not limited to electromagnetic signals, optical signals, or any suitable combination of the foregoing.
  • the computer-readable signal medium may also be any computer-readable medium other than a computer-readable storage medium, and the computer-readable medium may send, propagate, or transmit a program for use by or in connection with an instruction execution system, apparatus, or device. .
  • Program code embodied on a computer-readable medium may be transmitted using any appropriate medium, including but not limited to wireless, wireline, optical fiber cable, RF, etc., or any suitable combination of the foregoing.
  • the computer program code for performing the operations of this application can be written in one or more programming languages or combinations thereof.
  • the programming languages include object-oriented programming languages such as Java, Smalltalk, C ++, and also include conventional procedural Programming language—such as "C" or a similar programming language.
  • the program code can be executed entirely on the user's computer, partly on the user's computer, as an independent software package, partly on the user's computer, partly on a remote computer, or entirely on a remote computer or server.
  • the remote computer can be connected to the user's computer through any kind of network, including a local area network (LAN) or a wide area network (WAN), or it can be connected to an external computer ( (E.g. using an Internet service provider to connect via the Internet).
  • LAN local area network
  • WAN wide area network
  • a storage medium including computer-executable instructions provided in the embodiments of the present application is not limited to the frame loss compensation operation described above, and may also perform frame loss compensation provided by any embodiment of the application Related operations in the method.

Abstract

本申请实施例公开了一种丢帧补偿方法、装置、存储介质及终端,该方法包括:在触发屏幕帧更新指令的情况下,根据帧率和显示缓存队列进行丢帧检测,所述屏幕帧为终端屏幕显示内容对应的帧;在检测出丢帧的情况下,生成补偿帧;将所述补偿帧插入所述显示缓存队列;根据插入所述补偿帧的所述显示缓存队列输出屏幕帧和所述补偿帧。

Description

丢帧补偿方法、装置、存储介质及终端
本申请要求在2018年06月22日提交中国专利局、申请号为201810651274.5的中国专利申请的优先权,该申请的全部内容通过引用结合在本申请中。
技术领域
本申请实施例涉及移动终端技术领域,例如涉及丢帧补偿方法、装置、存储介质及终端。
背景技术
随着移动终端的不断发展,移动终端中安装的应用程序越来越多。但是,随着应用程序的增多,前台界面切换速率逐渐增加,常常出现移动终端显示卡顿的问题,影响用户的使用。
发明内容
本申请实施例提供一种丢帧补偿方法、装置、存储介质及终端,可以提高移动终端屏幕显示流畅性。
第一方面,本申请实施例提供了一种丢帧补偿方法,包括:
在触发屏幕帧更新指令的情况下,根据帧率和显示缓存队列进行丢帧检测,所述屏幕帧为终端屏幕显示内容对应的帧;
在检测出丢帧的情况下,生成补偿帧;
将所述补偿帧插入所述显示缓存队列;
根据插入所述补偿帧的所述显示缓存队列输出屏幕帧和所述补偿帧。
第二方面,本申请实施例提供了一种丢帧补偿装置,包括:
检测模块,设置为在触发屏幕帧更新指令的情况下,根据帧率和显示缓存队列进行丢帧检测,所述屏幕帧为终端屏幕显示内容对应的帧;
缓存模块,设置为存储显示缓存队列;
补偿模块,设置为在所述检测模块检测出丢帧的情况下,生成补偿帧;
插值模块,设置为将所述补偿模块生成的所述补偿帧插入所述缓存模块存储的所述显示缓存队列;
显示模块,设置为根据所述缓存模块存储的插入所述补偿帧的所述显示缓 存队列输出屏幕帧和所述补偿帧。
第三方面,本申请实施例提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如第一方面所示的丢帧补偿方法。
第四方面,本申请实施例提供了一种终端,包括存储器,处理器及存储在存储器上并可在处理器运行的计算机程序,所述处理器执行所述计算机程序时实现如第一方面所示的丢帧补偿方法。
本申请实施例中提供的丢帧补偿方案,首先当触发屏幕帧更新指令时,根据帧率和显示缓存队列进行丢帧检测,所述屏幕帧为终端屏幕显示内容对应的帧;其次,当检测出丢帧时生成补偿帧;再次,将所述补偿帧插入所述显示缓存队列;最后,根据插入所述补偿帧的所述显示缓存队列输出屏幕帧和所述补偿帧,能够在检测出丢帧的情况下,生成补偿帧,提高移动终端屏幕显示流畅性。
附图说明
图1为本申请实施例提供的一种丢帧补偿方法的流程示意图;
图2为本申请实施例提供的另一种丢帧补偿方法的流程示意图;
图3为本申请实施例提供的另一种丢帧补偿方法的流程示意图;
图4为本申请实施例提供的另一种丢帧补偿方法的流程示意图;
图5为本申请实施例提供的另一种丢帧补偿方法的流程示意图;
图6为本申请实施例提供的另一种丢帧补偿方法的流程示意图;
图7为本申请实施例提供的一种丢帧补偿装置的结构示意图;
图8为本申请实施例提供的一种移动终端的结构示意图。
具体实施方式
下面结合附图并通过具体实施方式来进一步说明本申请的技术方案。可以理解的是,此处所描述的具体实施例仅仅用于解释本申请,而非对本申请的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本申请相关的部分而非全部结构。
随着移动终端的不断发展,移动终端中安装的应用程序越来越多。但是,随着应用程序的增多,前台界面切换速率逐渐增加,常常出现移动终端显示卡顿的问题,影响用户的使用。在电视领域采用加帧的方式,以提高画质流畅性。例如,通过运动补偿算法来提升画面的流畅度,原本24赫兹(Hz)的视频,通 过算法处理之后达到60Hz甚至120Hz。该方式核心解决的问题是大屏幕显示出现的拖影而非丢帧引起的卡顿。但是,通过运动补偿进行插帧虽然可以提高帧率,但是会耗费很高的系统资源,且无法检测出是否丢帧,进而无法针对丢帧情况进行修复。同时,在移动终端领域,例如智能手机领域,缺少对显示缓存队列的丢帧监控方法,进而无法解决移动终端显示卡顿的问题。
本申请实施例提供了一种丢帧补偿方法,能够基于帧率进行丢帧检测,当检测出丢帧时生成补偿帧,并将补偿帧插入至显示缓存队列,补偿丢失的屏幕帧,进而提高移动终端屏幕显示流畅性。方案如下所示:
图1为本申请实施例提供的丢帧补偿方法的流程示意图,该方法用于基于显示缓存队列显示屏幕帧时丢帧的情况,该方法可以由移动终端来执行,该移动终端可以为智能手机、平板电脑、可穿戴设备、笔记本电脑等,该方法包括如下步骤:
步骤110、在触发屏幕帧更新指令的情况下,根据帧率和显示缓存队列进行丢帧检测,屏幕帧为终端屏幕显示内容对应的帧。
终端启动后,操作系统建立显示缓存队列。显示缓存队列用于存储终端显示的任意一个帧画面,包括:终端启动画面、锁屏画面、解锁后的操作界面、关机界面等。终端启动后,系统将屏幕帧存储到显示缓存队列中,然后读取显示缓存队列中的屏幕帧,并在屏幕中输出屏幕帧。
移动终端的显示频率,即帧率,可以为30每秒帧数(Frames Per Second,fps)或60fps。示例性的,如果采用30fps的帧率,则系统屏幕帧的更新周期为33.34毫秒(ms),即每隔33.34ms对显示缓存队列进行更新,以便显示缓存队列中持续有屏幕帧输入。同时,系统每隔33.34ms从显示队列里中读取屏幕帧,并将屏幕帧显示到移动终端屏幕中。
但是,由于中央处理器(Central Processing Unit,CPU)或图形处理器(Graphics Processing Unit,GPU)等性能等限制,常常会出现显示丢帧卡顿。可以通过检测显示缓存队列中屏幕帧的更新时间,确定是否在与帧率对应的更新周期中进行了屏幕帧的更新,即向显示缓存队列输入了屏幕帧。如果在更新周期中未更新屏幕帧,则确定丢帧。如果在更新周期中已更新屏幕帧,则确定未丢帧。
步骤120、在检测出丢帧的情况下,生成补偿帧。
可设置插帧模块,通过插帧模块生成补偿帧。插帧模块可以为独立的硬件模块,在性能和功耗满足的情况下也可以采用数字信号处理(Digital Signal Processing,DSP)或者人工智能(Artificial Intelligence,AI)加速器实现此功能。 当检测出丢帧时,生成补偿帧生成请求,将该请求发送至插帧模块,插帧模块在接收到该请求时,通过预设算法生成补偿帧。
在一实施例中,获取多个参考帧;根据多个参考帧和预设插值算法生成补偿帧。
在一实施例中,预设插值算法可以为运动估计和运动补偿算法(Motion Estimate and Motion Compensation,MEMC),示例性的,在显示缓存队列中获取多个屏幕帧,如屏幕帧A、屏幕帧B、屏幕帧C。当检测到丢帧时,在水平和垂直两个方向上对图象的运动趋势加以分析以后,在多个屏幕帧之间插入中间帧,根据屏幕帧A和屏幕帧B生成屏幕帧AB、根据屏幕帧C和屏幕帧B生成屏幕帧BC,屏幕帧AB和屏幕帧BC为补偿帧。此时,显示缓存队列中的帧图像为幕帧A、屏幕帧AB、屏幕帧B、屏幕帧BC以及屏幕帧C。
步骤130、将补偿帧插入显示缓存队列。
根据不同的预设差值算法,生成的补偿帧的位置不同。例如,上述MEMC算法中,补偿帧的位置位于队列中间。在其他实现方式中,补偿帧的位置可以位于显示缓存队列的队首或队尾。
步骤140、根据插入补偿帧的显示缓存队列输出屏幕帧和补偿帧。
系统读取插入补偿帧的显示缓存队列,按照预设帧率按顺序输出显示缓存队列中的屏幕帧和补偿帧。预设帧率为30fps或60fps。
本申请实施例中提供的丢帧补偿方法,首先当触发屏幕帧更新指令时,根据帧率和显示缓存队列进行丢帧检测,屏幕帧为终端屏幕显示内容对应的帧;其次,当检测出丢帧时生成补偿帧;再次,将补偿帧插入显示缓存队列;最后,根据插入补偿帧的显示缓存队列输出屏幕帧和补偿帧。相对于移动终端无法检测丢帧造成屏幕卡顿,以及通过增加每秒播放的帧数提高流畅性,造成功耗大幅提高,本申请实施例提供的丢帧补偿方法,能够在较低功耗下,提供更加流畅的屏幕帧显示,提高系统资源利用率,同时提高显示画面的流畅性。
图2为本申请实施例提供的另一种丢帧补偿方法的流程示意图,作为对上述实施例的说明。本实施例提供的方法包括如下步骤。
步骤210、在触发屏幕帧更新指令的情况下,根据帧率确定多个检测时间窗口。
获取当前移动终端使用的帧率,根据帧率的倒数确定检测时间窗口。示例性的,如果帧率为30fps,则检测时间窗口为33.34ms。如果帧率为60fps,则检测时间窗口为16.67ms。检测时间窗口为持续滚动进行的窗口,即当触发屏幕帧更新指令时,一秒对应30或60个检测时间窗口,每个检测时间窗口内均进行 更新检测。
步骤220、在每个检测时间窗口中,检测显示缓存队列是否更新。
在每个检测时间窗口内,判断系统是否向显示缓存队列中插入新的屏幕帧,以确定显示缓存队列在所述每个检测时间窗口中是否更新。如果显示缓存队列在所述每个检测时间窗口中未更新,则确定显示缓存队列丢帧。如果显示缓存队列在所述每个检测时间窗口中更新,则确定显示缓存队列未丢帧。
步骤230、在检测出丢帧的情况下,生成补偿帧。
步骤240、将补偿帧插入显示缓存队列。
步骤250、根据插入补偿帧的显示缓存队列输出屏幕帧和补偿帧。
本申请实施例提供的丢帧补偿方法,能够根据帧率确定检测时间窗口,并在每个检测时间窗口内检测显示缓存队列的更新情况,进而确定是否出现丢帧,提高丢帧检测的准确性。
图3为本申请实施例提供的另一种丢帧补偿方法的流程示意图,作为对上述实施例的说明。本实施例提供的方法包括如下步骤。
步骤310、在触发屏幕帧更新指令的情况下,根据帧率和显示缓存队列进行丢帧检测,屏幕帧为终端屏幕显示内容对应的帧。
步骤320、在检测出丢帧的情况下,将显示缓存队列中的多个屏幕帧确定为参考帧。
显示缓存队列中的帧数可以设置,帧数可设置为3帧-5帧。如果为3帧,则将显示缓存队列中的帧作为参考帧。
步骤330、根据多个参考帧和预设插值算法生成补偿帧。
预设差值算法可以为,最接近插值算法,即复制每个参考帧,得到补偿帧。
预设差值算法还可以为,平均差值算法,即根据两个参考帧中每个像素点对应的像素值确定每个像素点上的平均像素值,进而得到两个参考帧之间的补偿帧。
预设差值算法还可以为,拉格朗日插值算法,即根据参考帧拟合出图形变化趋势对应的多项式,根据该多项式确定补偿帧。
步骤340、将补偿帧插入显示缓存队列。
可以将补偿帧插入至显示队列的队尾位置。或者插入至每个参考帧相邻的下一帧位置。
步骤350、根据插入补偿帧的显示缓存队列输出屏幕帧和补偿帧。
本申请实施例提供的丢帧补偿方法,能够根据显示缓存队列中未显示的屏幕帧确定补偿帧,进而更加准确的生成补偿帧,提高系统资源利用率。
图4为本申请实施例提供的另一种丢帧补偿方法的流程示意图,作为对上述实施例的说明。本实施例提供的方法包括如下步骤。
步骤410、在触发屏幕帧更新指令的情况下,根据帧率和显示缓存队列进行丢帧检测,屏幕帧为终端屏幕显示内容对应的帧。
步骤420、在输出显示缓存队列中的屏幕帧的情况下,将输出的屏幕帧存储至补偿缓存队列,补偿缓存队列中存储预设数量的有效屏幕帧。
系统读取并输出显示缓存队列中的屏幕帧后,将该屏幕帧存储至补偿缓存队列。预设数量的有效屏幕帧可以为至少两个有效屏幕帧,可选为5个有效屏幕帧。补偿缓存队列与显示缓存队列相同,在保持固定数量的有效屏幕帧的同时,根据帧率进行更新。
步骤430、在检测出丢帧的情况下,根据补偿缓存队列中存储的有效屏幕帧确定参考帧。
当检测出丢帧时,将补偿缓存队列中存储的有效屏幕帧确定为参考帧。
步骤440、根据多个参考帧和预设插值算法生成补偿帧。
可以参照步骤330中采用的预设插值算法计算补偿帧。
步骤450、将补偿帧插入显示缓存队列。
可以将补偿帧插入至显示缓存队列的队首位置。
步骤460、根据插入补偿帧的显示缓存队列输出屏幕帧和补偿帧。
本申请实施例提供的丢帧补偿方法,能够根据有效屏幕帧,延长屏幕帧的显示时间,提高资源利用率。
图5为本申请实施例提供的另一种丢帧补偿方法的流程示意图,作为对上述实施例的说明,包括:
步骤510、在触发屏幕帧更新指令的情况下,根据帧率和显示缓存队列进行丢帧检测,屏幕帧为终端屏幕显示内容对应的帧。
步骤520、在检测出丢帧的情况下,生成补偿帧。
步骤530、获取补偿帧的计算时间。
从检测出丢帧至生成补偿帧的时间为计算时间。计算时间可以因终端内部的资源占用而发生改变。
步骤540、根据计算时间和帧率,将补偿帧插入显示缓存队列。
根据帧率确定检测时间窗口,在计算时间小于检测时间窗口的情况下,将补偿帧插入至显示缓存队列的队尾。在计算时间大于检测时间窗口的情况下,在检测时间窗口之后,有新的帧输入至显示缓存队列,则根据计算时间确定补偿帧对应的插入位置。
步骤550、根据插入补偿帧的显示缓存队列输出屏幕帧和补偿帧。
本申请实施例提供的丢帧补偿方法,能够根据计算时间确定补偿帧的插入位置,使得补偿后的屏幕帧更加流畅,避免出现跳帧,提高稳定性。
图6为本申请实施例提供的另一种丢帧补偿方法的流程示意图,作为对上述实施例的说明,包括:
步骤610、在触发屏幕帧更新指令的情况下,根据帧率和显示缓存队列进行丢帧检测,屏幕帧为终端屏幕显示内容对应的帧。
步骤620、在检测出丢帧的情况下,根据丢帧数量和帧率确定第一帧率。
当检测出丢帧时,计算丢帧数量,并根据帧率确定每分钟可输出的帧数量,进而确定第一帧率。
本实施例中,所述第一帧率为预计输出屏幕帧的帧率。
在一实施例中,根据丢帧数量和帧率确定第一帧率包括:根据帧率确定时间检测窗口的时长,依次在多个检测时间窗口内检测显示缓存队列是否更新,在连续N个检测时间窗口内检测到显示缓存队列没有更新的情况下,确定在连续N个检测时间窗口内丢帧数量为N,确定第一帧率为帧率的(N+1)分之一,N大于或等于1。
步骤630、在第一帧率小于第二帧率的情况下,生成补偿帧,第二帧率为用户肉眼识别的流畅帧率。
第二帧率可以为25pfs-30fps范围内的帧率。如果第一帧率小于第二帧率,则说明用户肉眼可识别出丢帧,此时需生成补偿帧。
如果第一帧率大于第二帧率,则说明即使丢帧用户也不会察觉,此时可以选择等待显示缓存队列更新。
步骤640、将补偿帧插入显示缓存队列。
步骤650、根据插入补偿帧的显示缓存队列输出屏幕帧和补偿帧。
本申请实施例提供的丢帧补偿方法,能够在第一帧率小于第二帧率的情况下,即用户将发现丢帧时,生成补偿帧,在保证画面流畅的同时,降低系统资 源功耗,提高系统资源利用率。
图7为本申请实施例提供的一种丢帧补偿装置的结构示意图。如图7所示,该装置包括:检测模块710、缓存模块720、补偿模块730、插值模块740和显示模块750。
检测模块710,设置为在触发屏幕帧更新指令的情况下,根据帧率和显示缓存队列进行丢帧检测,所述屏幕帧为终端屏幕显示内容对应的帧;缓存模块720,设置为存储显示缓存队列;补偿模块730,设置为在所述检测模块710检测出丢帧的情况下,生成补偿帧;插值模块740,设置为将所述补偿模块730生成的所述补偿帧插入所述缓存模块720存储的所述显示缓存队列;显示模块750,设置为根据所述缓存模块720存储的插入所述补偿帧的所述显示缓存队列输出屏幕帧和所述补偿帧。
在一实施例中,检测模块710设置为通过如下方式根据帧率和显示缓存队列进行丢帧检测:根据帧率确定多个检测时间窗口;在每个检测时间窗口中,检测显示缓存队列是否更新;如果显示缓存队列在所述每个检测时间窗口中未更新,则确定丢帧;如果显示缓存队列在所述每个检测时间窗口中更新,则确定未丢帧。
在一实施例中,补偿模块730是设置为:在检测出丢帧的情况下,获取多个参考帧;根据所述多个参考帧和预设插值算法生成补偿帧。
在一实施例中,补偿模块730是设置为通过如下方式在检测出丢帧的情况下,将所述显示缓存队列中的多个屏幕帧确定为参考帧:在检测出丢帧的情况下,将所述显示缓存队列中的多个屏幕帧确定为参考帧。
在一实施例中,补偿模块730是设置为通过如下方式在检测出丢帧的情况下,将所述显示缓存队列中的多个屏幕帧确定为参考帧:在输出显示缓存队列中的屏幕帧的情况下,将输出的所述屏幕帧存储至补偿缓存队列,所述补偿缓存队列中存储预设数量的有效屏幕帧;在检测出丢帧的情况下,根据所述补偿缓存队列中存储的所述有效屏幕帧确定参考帧。
在一实施例中,插值模块740是设置为:获取所述补偿帧的计算时间;根据所述计算时间和所述帧率,将所述补偿帧插入所述显示缓存队列。
在一实施例中,补偿模块730是设置为:在检测出丢帧的情况下,根据丢帧数量和所述帧率确定第一帧率;在所述第一帧率小于所述帧率且大于第二帧率的情况下,生成补偿帧,所述第二帧率为用户肉眼识别的流畅帧率。
在一实施例中,所述补偿模块730是设置为通过如下方式在检测出丢帧的情况下,根据所述补偿缓存队列中存储的所述有效屏幕帧确定参考帧:在检测 出丢帧的情况下,将所述补偿缓存队列中存储的所述有效屏幕帧确定为参考帧。
在一实施例中,插值模块740是设置为通过如下方式根据所述计算时间和所述帧率,将所述补偿帧插入所述显示缓存队列:根据所述帧率确定检测时间窗口;在所述计算时间小于所述检测时间窗口的情况下,将所述补偿帧插入至显示缓存队列的队尾。
本申请实施例中提供的丢帧补偿装置,首先,当触发屏幕帧更新指令时,检测模块710根据帧率和显示缓存队列进行丢帧检测,所述屏幕帧为终端屏幕显示内容对应的帧;同时,缓存模块720存储显示缓存队列;其次,补偿模块730在所述检测模块710检测出丢帧的情况下,生成补偿帧;再次,插值模块740,将所述补偿模块730生成的所述补偿帧插入所述缓存模块720存储的所述显示缓存队列;最后,显示模块750,根据所缓存模块720存储的插入所述补偿帧的所述显示缓存队列输出屏幕帧和所述补偿帧。相对于移动终端无法检测丢帧造成屏幕卡顿,以及通过增加每秒播放的帧数提高流畅性,造成功耗大幅提高,本申请实施例提供的丢帧补偿,能够在较低功耗下,提供更加流畅的屏幕帧显示,提高系统资源利用率,同时提高显示画面的流畅性。
上述装置可执行本申请前述所有实施例所提供的方法,具备执行上述方法相应的功能模块和有益效果。未在本实施例中详尽描述的技术细节,可参见本申请前述所有实施例所提供的方法。
图8是本申请实施例提供的一种终端设备的结构示意图。如图8所示,该终端可以包括:壳体(图8中未示出)、存储器801、中央处理器(Central Processing Unit,CPU)802(又称处理器,以下简称CPU)、存储在存储器801上并可在处理器802上运行的计算机程序、电路板(图8中未示出)和电源电路(图中未示出)。所述电路板安置在所述壳体围成的空间内部;所述CPU802和所述存储器801设置在所述电路板上;所述电源电路,设置为为所述终端的各个电路或器件供电;所述存储器801,设置为存储可执行程序代码;所述CPU802通过读取所述存储器801中存储的可执行程序代码来运行与所述可执行程序代码对应的程序。
所述终端还包括:外设接口803、射频(Radio Frequency,RF)电路805、音频电路806、扬声器811、电源管理芯片808、输入/输出(I/O)子系统809、触摸屏812、其他输入/控制设备810以及外部端口804,这些部件通过一个或多个通信总线或信号线807来通信。
应该理解的是,图8所示的终端设备800仅仅是终端的一个范例,并且终端设备800可以具有比图8中所示出的更多的或者更少的部件,可以组合两个或更多的部件,或者可以具有不同的部件配置。图8中所示出的多种部件可以 在包括一个或多个信号处理和/或专用集成电路在内的硬件、软件、或硬件和软件的组合中实现。
下面就本实施例提供的用于丢帧补偿的一种终端设备进行描述,该终端设备以智能手机为例。
存储器801,所述存储器801可以被CPU802、外设接口803等访问,所述存储器801可以包括高速随机存取存储器,还可以包括非易失性存储器,例如一个或多个磁盘存储器件、闪存器件、或其他易失性固态存储器件。
外设接口803,所述外设接口803可以将设备的输入和输出外设连接到CPU802和存储器801。
I/O子系统809,所述I/O子系统809可以将设备上的输入输出外设,例如触摸屏812和其他输入/控制设备810,连接到外设接口803。I/O子系统809可以包括显示控制器8091和设置为控制其他输入/控制设备810的一个或多个输入控制器8092。在一实施例中,一个或多个输入控制器8092从其他输入/控制设备810接收电信号或者向其他输入/控制设备810发送电信号,其他输入/控制设备810可以包括物理按钮(按压按钮、摇臂按钮等)、拨号盘、滑动开关、操纵杆、点击滚轮。在一实施例中,输入控制器8092可以与以下任一个连接:键盘、红外端口、通用串行总线(Universal Serial Bus,USB)接口以及诸如鼠标的指示设备。
其中,按照触摸屏的工作原理和传输信息的介质分类,触摸屏812可以为电阻式、电容感应式、红外线式或表面声波式。按照安装方式分类,触摸屏812可以为:外挂式、内置式或整体式。按照技术原理分类,触摸屏812可以为:矢量压力传感技术触摸屏、电阻技术触摸屏、电容技术触摸屏、红外线技术触摸屏或表面声波技术触摸屏。
触摸屏812,所述触摸屏812是用户终端与用户之间的输入接口和输出接口,将可视输出显示给用户,可视输出可以包括图形、文本、图标、视频等。在一实施例中,触摸屏812将用户在触屏幕上触发的电信号(如接触面的电信号),发送给处理器802。
I/O子系统809中的显示控制器8091从触摸屏812接收电信号或者向触摸屏812发送电信号。触摸屏812检测触摸屏上的接触,显示控制器8091将检测到的接触转换为与显示在触摸屏812上的用户界面对象的交互,即实现人机交互,显示在触摸屏812上的用户界面对象可以是运行游戏的图标、联网到相应网络的图标等。在一实施例中,设备还可以包括光鼠,光鼠是不显示可视输出的触摸敏感表面,或者是由触摸屏形成的触摸敏感表面的延伸。
RF电路805,主要设置为建立智能音箱与无线网络(即网络侧)的通信,实现智能音箱与无线网络的数据接收和发送。例如收发短信息、电子邮件等。
音频电路806,主要设置为从外设接口803接收音频数据,将该音频数据转换为电信号,并且将该电信号发送给扬声器811。
扬声器811,设置为将智能音箱通过RF电路805从无线网络接收的语音信号,还原为声音并向用户播放该声音。
电源管理芯片808,设置为为CPU802、I/O子系统及外设接口所连接的硬件进行供电及电源管理。
在本实施例中,中央处理器802设置为:在触发屏幕帧更新指令的情况下,根据帧率和显示缓存队列进行丢帧检测,所述屏幕帧为终端屏幕显示内容对应的帧;在检测出丢帧的情况下,生成补偿帧;将所述补偿帧插入所述显示缓存队列;根据插入所述补偿帧的所述显示缓存队列输出屏幕帧和所述补偿帧。
在一实施例中,所述根据帧率和显示缓存队列进行丢帧检测,包括:根据帧率确定多个检测时间窗口;在每个检测时间窗口中,检测显示缓存队列是否更新;在显示缓存队列在所述每个检测时间窗口中未更新的情况下,确定丢帧;在显示缓存队列在所述每个检测时间窗口中更新的情况下,确定未丢帧。
在一实施例中,所述在检测出丢帧的情况下,生成补偿帧,包括:在检测出丢帧的情况下,获取多个参考帧;根据所述多个参考帧和预设插值算法生成补偿帧。
在一实施例中,所述在检测出丢帧的情况下,获取多个参考帧,包括:在检测出丢帧的情况下,将所述显示缓存队列中的多个屏幕帧确定为参考帧。
在一实施例中,所述在检测出丢帧的情况下,获取多个参考帧,包括:在输出显示缓存队列中的屏幕帧的情况下,将输出的所述屏幕帧存储至补偿缓存队列,所述补偿缓存队列中存储预设数量的有效屏幕帧;在检测出丢帧的情况下,根据所述补偿缓存队列中存储的所述有效屏幕帧确定参考帧。
在一实施例中,所述将所述补偿帧插入所述显示缓存队列,包括:获取所述补偿帧的计算时间;根据所述计算时间和所述帧率,将所述补偿帧插入所述显示缓存队列。
在一实施例中,所述在检测出丢帧的情况下,生成补偿帧,包括:在检测出丢帧的情况下,根据丢帧数量和所述帧率确定第一帧率;在所述第一帧率小于所述帧率且大于第二帧率的情况下生成补偿帧,所述第二帧率为用户肉眼识别的流畅帧率。
本申请实施例还提供一种包含终端设备可执行指令的存储介质,所述终端设备可执行指令在由终端设备处理器执行时用于执行一种丢帧补偿方法,该方法包括:在触发屏幕帧更新指令的情况下,根据帧率和显示缓存队列进行丢帧检测,所述屏幕帧为终端屏幕显示内容对应的帧;在检测出丢帧的情况下,生成补偿帧;将所述补偿帧插入所述显示缓存队列;根据插入所述补偿帧的所述显示缓存队列输出屏幕帧和所述补偿帧。
在一实施例中,所述根据帧率和显示缓存队列进行丢帧检测,包括:根据帧率确定检测时间窗口;在第一检测时间窗口中,检测显示缓存队列是否更新,所述第一检测时间窗口为触发屏幕帧更新指令后的任意一个检测时间窗口;在显示缓存队列在所述第一检测时间窗口中未更新的情况下,确定丢帧;在显示缓存队列在所述第一检测时间窗口中更新的情况下,则确定未丢帧。
在一实施例中,所述在检测出丢帧的情况下,生成补偿帧,包括:在检测出丢帧的情况下,获取多个参考帧;根据所述多个参考帧和预设插值算法生成补偿帧。
在一实施例中,所述在检测出丢帧的情况下,获取多个参考帧,包括:在检测出丢帧的情况下,将所述显示缓存队列中的多个屏幕帧确定为参考帧。
在一实施例中,所述在检测出丢帧的情况下,获取多个参考帧,包括:在输出显示缓存队列中的屏幕帧的情况下,将所述屏幕帧存储至补偿缓存队列,所述补偿缓存队列中存储预设数量的有效屏幕帧;在检测出丢帧的情况下,根据所述补偿缓存队列中存储的所述有效屏幕帧确定参考帧。
在一实施例中,所述将所述补偿帧插入所述显示缓存队列,包括:获取所述补偿帧的计算时间;根据所述计算时间和所述帧率,将所述补偿帧插入所述显示缓存队列。
在一实施例中,所述在检测出丢帧的情况下,生成补偿帧,包括:在检测出丢帧的情况下,根据丢帧数量和所述帧率确定第一帧率;在所述第一帧率小于所述帧率且大于第二帧率的情况下,生成补偿帧,所述第二帧率为用户肉眼识别的流畅帧率。
本申请实施例的计算机存储介质,可以采用一个或多个计算机可读的介质的任意组合。计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机存取存储器(Random Access Memory,RAM)、只读 存储器(Read-Only Memory,ROM)、可擦式可编程只读存储器(Erasable Programmable Read Only Memory,EPROM)或闪存、光纤、便携式紧凑磁盘只读存储器(Compact Disc Read-Only Memory,CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本申请中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。
计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。
计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括——但不限于无线、电线、光缆、RF等等,或者上述的任意合适的组合。
可以以一种或多种程序设计语言或其组合来编写用于执行本申请操作的计算机程序代码,程序设计语言包括面向对象的程序设计语言—诸如Java、Smalltalk、C++,还包括常规的过程式程序设计语言—诸如”C”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络——包括局域网(Local Area Network,LAN)或广域网(Wide Area Network,WAN)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
当然,本申请实施例所提供的一种包含计算机可执行指令的存储介质,其计算机可执行指令不限于如上所述的丢帧补偿操作,还可以执行本申请任意实施例所提供的丢帧补偿方法中的相关操作。

Claims (20)

  1. 一种丢帧补偿方法,包括:
    在触发屏幕帧更新指令的情况下,根据帧率和显示缓存队列进行丢帧检测,所述屏幕帧为终端屏幕显示内容对应的帧;
    在检测出丢帧的情况下,生成补偿帧;
    将所述补偿帧插入所述显示缓存队列;
    根据插入所述补偿帧的所述显示缓存队列输出屏幕帧和所述补偿帧。
  2. 根据权利要求1所述的丢帧补偿方法,其中,所述根据帧率和显示缓存队列进行丢帧检测,包括:
    根据帧率确定多个检测时间窗口;
    在每个检测时间窗口中,检测显示缓存队列是否更新;
    在所述显示缓存队列在所述每个检测时间窗口中未更新的情况下,确定丢帧;
    在所述显示缓存队列在所述每个检测时间窗口中更新的情况下,确定未丢帧。
  3. 根据权利要求1所述的丢帧补偿方法,其中,所述在检测出丢帧的情况下,生成补偿帧,包括:
    在检测出丢帧的情况下,获取多个参考帧;
    根据所述多个参考帧和预设插值算法生成补偿帧。
  4. 根据权利要求3所述的丢帧补偿方法,其中,所述在检测出丢帧的情况下,获取多个参考帧,包括:
    在检测出丢帧的情况下,将所述显示缓存队列中的多个屏幕帧确定为参考帧。
  5. 根据权利要求3所述的丢帧补偿方法,其中,所述在检测出丢帧的情况下,获取多个参考帧,包括:
    在输出所述显示缓存队列中的屏幕帧的情况下,将输出的所述屏幕帧存储至补偿缓存队列,所述补偿缓存队列中存储预设数量的有效屏幕帧;
    在检测出丢帧的情况下,根据所述补偿缓存队列中存储的所述有效屏幕帧确定参考帧。
  6. 根据权利要求1所述的丢帧补偿方法,其中,所述将所述补偿帧插入所述显示缓存队列,包括:
    获取所述补偿帧的计算时间;
    根据所述计算时间和所述帧率,将所述补偿帧插入所述显示缓存队列。
  7. 根据权利要求1所述的丢帧补偿方法,其中,所述在检测出丢帧的情况下,生成补偿帧,包括:
    在检测出丢帧的情况下,根据丢帧数量和所述帧率确定第一帧率,所述第一帧率为预计输出屏幕帧的帧率;
    在所述第一帧率小于所述帧率且大于第二帧率的情况下,生成补偿帧,所述第二帧率为用户肉眼识别的流畅帧率。
  8. 根据权利要求5所述的丢帧补偿方法,其中,所述在检测出丢帧的情况下,根据所述补偿缓存队列中存储的所述有效屏幕帧确定参考帧,包括:
    在检测出丢帧的情况下,将所述补偿缓存队列中存储的所述有效屏幕帧确定为参考帧。
  9. 根据权利要求6所述的丢帧补偿方法,其中,根据所述计算时间和所述帧率,将所述补偿帧插入所述显示缓存队列,包括:
    根据所述帧率确定检测时间窗口;
    在所述计算时间小于所述检测时间窗口的情况下,将所述补偿帧插入至所述显示缓存队列的队尾。
  10. 一种丢帧补偿装置,包括:
    检测模块,设置为在触发屏幕帧更新指令的情况下,根据帧率和显示缓存队列进行丢帧检测,所述屏幕帧为终端屏幕显示内容对应的帧;
    缓存模块,设置为存储显示缓存队列;
    补偿模块,设置为在所述检测模块检测出丢帧的情况下,生成补偿帧;
    插值模块,设置为将所述补偿模块生成的所述补偿帧插入所述缓存模块存储的所述显示缓存队列;
    显示模块,设置为根据所述缓存模块存储的插入所述补偿帧的所述显示缓存队列输出屏幕帧和所述补偿帧。
  11. 根据权利要求10所述的装置,其中,所述检测模块是设置为通过如下方式:根据帧率和显示缓存队列进行丢帧检测:
    根据帧率确定多个检测时间窗口;
    在每个检测时间窗口中,检测显示缓存队列是否更新;
    在所述显示缓存队列在所述每个检测时间窗口中未更新的情况下,确定丢帧;
    在所述显示缓存队列在所述每个检测时间窗口中更新的情况下,确定所述显示缓存队列未丢帧。
  12. 根据权利要求10所述的装置,其中,所述补偿模块是设置为:在检测出丢帧的情况下,获取多个参考帧;根据所述多个参考帧和预设插值算法生成补偿帧。
  13. 根据权利要求12所述的装置,其中,所述补偿模块是设置为通过如下方式在检测出丢帧的情况下,获取多个参考帧:在检测出丢帧的情况下,将所述显示缓存队列中的多个屏幕帧确定为参考帧。
  14. 根据权利要求12所述的装置,其中,所述补偿模块是设置为通过如下方式在检测出丢帧的情况下,获取多个参考帧:
    在输出所述显示缓存队列中的屏幕帧的情况下,将输出的所述屏幕帧存储至补偿缓存队列,所述补偿缓存队列中存储预设数量的有效屏幕帧;
    在检测出丢帧的情况下,根据所述补偿缓存队列中存储的所述有效屏幕帧确定参考帧。
  15. 根据权利要求10所述的装置,其中,所述插值模块是设置为:
    获取所述补偿帧的计算时间;
    根据所述计算时间和所述帧率,将所述补偿帧插入所述显示缓存队列。
  16. 根据权利要求10所述的装置,其中,所述补偿模块是设置为:
    在检测出丢帧的情况下,根据丢帧数量和所述帧率确定第一帧率;
    在所述第一帧率小于所述帧率且大于第二帧率的情况下,生成补偿帧,所述第二帧率为用户肉眼识别的流畅帧率。
  17. 根据权利要求14所述的装置,其中,所述补偿模块是设置为通过如下方式在检测出丢帧的情况下,根据所述补偿缓存队列中存储的所述有效屏幕帧确定参考帧:
    在检测出丢帧的情况下,将所述补偿缓存队列中存储的所述有效屏幕帧确定为参考帧。
  18. 根据权利要求15所述的装置,其中,所述插值模块是设置为通过如下方式根据所述计算时间和所述帧率,将所述补偿帧插入所述显示缓存队列:
    根据所述帧率确定检测时间窗口;
    在所述计算时间小于所述检测时间窗口的情况下,将所述补偿帧插入至所述显示缓存队列的队尾。
  19. 一种计算机可读存储介质,存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1-9中任一所述丢帧补偿方法。
  20. 一种终端,包括存储器,处理器及存储在存储器上并可在处理器运行的计算机程序,所述处理器执行所述计算机程序时实现如权利要求1-9任一所述的丢帧补偿方法。
PCT/CN2019/089786 2018-06-22 2019-06-03 丢帧补偿方法、装置、存储介质及终端 WO2019242488A1 (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201810651274.5A CN108810281B (zh) 2018-06-22 2018-06-22 丢帧补偿方法、装置、存储介质及终端
CN201810651274.5 2018-06-22

Publications (1)

Publication Number Publication Date
WO2019242488A1 true WO2019242488A1 (zh) 2019-12-26

Family

ID=64085046

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2019/089786 WO2019242488A1 (zh) 2018-06-22 2019-06-03 丢帧补偿方法、装置、存储介质及终端

Country Status (2)

Country Link
CN (1) CN108810281B (zh)
WO (1) WO2019242488A1 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2024066926A1 (zh) * 2022-09-30 2024-04-04 荣耀终端有限公司 显示方法及装置

Families Citing this family (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108810281B (zh) * 2018-06-22 2020-12-11 Oppo广东移动通信有限公司 丢帧补偿方法、装置、存储介质及终端
US20220199098A1 (en) * 2019-03-29 2022-06-23 Telefonaktiebolaget Lm Ericsson (Publ) Method and apparatus for low cost error recovery in predictive coding
CN110270092A (zh) * 2019-06-27 2019-09-24 三星电子(中国)研发中心 用于电子设备的帧率提升的方法及装置以及电子设备
CN110618801B (zh) * 2019-10-08 2023-07-18 Oppo(重庆)智能科技有限公司 平滑画面帧率表现方法、装置、终端设备及存储介质
CN110933454B (zh) * 2019-12-06 2021-11-02 广州酷狗计算机科技有限公司 处理直播萌脸礼物的方法、装置、设备及存储介质
CN111367741B (zh) * 2020-02-28 2022-07-08 Oppo广东移动通信有限公司 用户界面卡顿检测方法与装置、电子设备
CN111327959A (zh) * 2020-03-05 2020-06-23 Oppo广东移动通信有限公司 视频插帧方法及相关装置
CN111711718B (zh) * 2020-05-07 2021-11-19 荣耀终端有限公司 电子设备
CN114531519B (zh) * 2020-10-31 2024-04-26 华为技术有限公司 一种基于垂直同步信号的控制方法及电子设备
CN112839241A (zh) * 2020-12-31 2021-05-25 贵阳动视云科技有限公司 一种云游戏图像丢帧补偿方法及装置
CN113660494A (zh) * 2021-07-19 2021-11-16 惠州Tcl云创科技有限公司 一种帧率稳定输出方法、系统及智能终端
CN114153408B (zh) * 2021-11-27 2024-01-16 深圳曦华科技有限公司 图像显示控制方法及相关设备
CN114327127B (zh) * 2021-11-27 2022-12-23 荣耀终端有限公司 滑动丢帧检测的方法和装置
CN114584835B (zh) * 2022-02-10 2024-04-02 百果园技术(新加坡)有限公司 一种视频处理方法、装置、设备及存储介质

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101217339A (zh) * 2007-12-29 2008-07-09 华为技术有限公司 进行丢帧检测的方法、装置和基站
CN102611894A (zh) * 2012-03-02 2012-07-25 华为技术有限公司 检测视频传输丢包的方法、装置和系统
US20150062436A1 (en) * 2013-08-29 2015-03-05 Samsung Electronics Co., Ltd. Method for video recording and electronic device thereof
CN106791899A (zh) * 2016-12-13 2017-05-31 飞狐信息技术(天津)有限公司 直播中减少观众端画面卡顿的方法及装置以及客户端
CN108810281A (zh) * 2018-06-22 2018-11-13 Oppo广东移动通信有限公司 丢帧补偿方法、装置、存储介质及终端

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040202249A1 (en) * 2003-04-08 2004-10-14 Newsoft Technology Corporation Real-time MPEG video encoding method of maintaining synchronization between video and audio
CN105681653A (zh) * 2016-01-12 2016-06-15 深圳市云智易联科技有限公司 一种视频文件生成方法及装置
CN106447595A (zh) * 2016-09-23 2017-02-22 努比亚技术有限公司 一种分布式图像图形的渲染方法及终端
CN107959965B (zh) * 2017-11-20 2021-03-19 Oppo广东移动通信有限公司 应用程序的降帧方法、装置、移动终端及可读存储介质

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101217339A (zh) * 2007-12-29 2008-07-09 华为技术有限公司 进行丢帧检测的方法、装置和基站
CN102611894A (zh) * 2012-03-02 2012-07-25 华为技术有限公司 检测视频传输丢包的方法、装置和系统
US20150062436A1 (en) * 2013-08-29 2015-03-05 Samsung Electronics Co., Ltd. Method for video recording and electronic device thereof
CN106791899A (zh) * 2016-12-13 2017-05-31 飞狐信息技术(天津)有限公司 直播中减少观众端画面卡顿的方法及装置以及客户端
CN108810281A (zh) * 2018-06-22 2018-11-13 Oppo广东移动通信有限公司 丢帧补偿方法、装置、存储介质及终端

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2024066926A1 (zh) * 2022-09-30 2024-04-04 荣耀终端有限公司 显示方法及装置

Also Published As

Publication number Publication date
CN108810281B (zh) 2020-12-11
CN108810281A (zh) 2018-11-13

Similar Documents

Publication Publication Date Title
WO2019242488A1 (zh) 丢帧补偿方法、装置、存储介质及终端
CN106933328B (zh) 一种移动终端帧率的控制方法、装置及移动终端
US20220053068A1 (en) Methods, apparatuses and computer storage media for applet state synchronization
WO2019184643A1 (zh) 一种视频编码码率控制方法、装置、设备及存储介质
KR101005094B1 (ko) 향상된 비디오 디스플레이 인터페이스를 가지는 이동 단말 기기, 동글 및 외부 디스플레이 기기
US8711284B2 (en) LCD television set capable of external connection with application processor
CN109157839B (zh) 帧率调控方法、装置、存储介质及终端
CN112445315A (zh) 屏幕刷新帧率的控制方法、装置及存储介质
KR101590820B1 (ko) 멀티 터치 인터페이스 방안
US20120005630A1 (en) Highly Responsive Screen Output Device, Screen Output System, and Screen Output Method
CN108513671B (zh) 一种2d应用在vr设备中的显示方法及终端
KR20140044840A (ko) 변경된 영역들을 이용한 매체 인코딩
CN114286138A (zh) 显示设备、外接设备及多视角比例显示方法
CN107077313B (zh) 用于非媒体内容的远程显示的改进延迟和效率
CN107402625B (zh) 触摸屏扫描方法、装置、终端及计算机可读存储介质
CN103168466A (zh) 虚拟视频俘获装置
CN108693948B (zh) 帧率调整方法、装置、终端设备及存储介质
WO2019105391A1 (zh) 无线局域网络的连接方法、设备及计算机可读存储介质
CN108811055B (zh) 帧率调整方法、装置、终端设备及存储介质
CN109302563B (zh) 防抖处理方法、装置、存储介质及移动终端
CN111790148B (zh) 游戏场景中的信息交互方法、设备及计算机可读介质
WO2022135210A1 (zh) 一种增强的屏幕共享方法和系统、电子设备
US20120005587A1 (en) Performing Remoting Operations For Different Regions Of A Display Surface At Different Rates
KR20150115454A (ko) 서비스 화면을 표시하기 위한 전자 장치 및 방법
WO2023197679A1 (zh) 视频播放方法、装置、电子设备及存储介质

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 19822192

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 19822192

Country of ref document: EP

Kind code of ref document: A1