CN113660494A - Frame rate stable output method and system and intelligent terminal - Google Patents
Frame rate stable output method and system and intelligent terminal Download PDFInfo
- Publication number
- CN113660494A CN113660494A CN202110814888.2A CN202110814888A CN113660494A CN 113660494 A CN113660494 A CN 113660494A CN 202110814888 A CN202110814888 A CN 202110814888A CN 113660494 A CN113660494 A CN 113660494A
- Authority
- CN
- China
- Prior art keywords
- image data
- screen image
- video
- frame rate
- layer
- Prior art date
- Legal status (The legal status 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 status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 64
- 238000007906 compression Methods 0.000 claims abstract description 41
- 230000006835 compression Effects 0.000 claims abstract description 41
- 230000006641 stabilisation Effects 0.000 claims description 19
- 238000011105 stabilization Methods 0.000 claims description 19
- 230000000087 stabilizing effect Effects 0.000 claims description 18
- 230000003139 buffering effect Effects 0.000 claims 1
- 230000008569 process Effects 0.000 description 8
- 230000005540 biological transmission Effects 0.000 description 7
- 230000003993 interaction Effects 0.000 description 6
- 230000006870 function Effects 0.000 description 5
- 239000004973 liquid crystal related substance Substances 0.000 description 4
- 230000000007 visual effect Effects 0.000 description 4
- 241000023320 Luma <angiosperm> Species 0.000 description 3
- 230000000694 effects Effects 0.000 description 3
- OSWPMRLSEDHDFF-UHFFFAOYSA-N methyl salicylate Chemical compound COC(=O)C1=CC=CC=C1O OSWPMRLSEDHDFF-UHFFFAOYSA-N 0.000 description 3
- 230000008901 benefit Effects 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 230000004927 fusion Effects 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000008447 perception Effects 0.000 description 2
- 230000035945 sensitivity Effects 0.000 description 2
- 230000007704 transition Effects 0.000 description 2
- 101000860173 Myxococcus xanthus C-factor Proteins 0.000 description 1
- 241000098700 Sarcocheilichthys parvus Species 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 239000003086 colorant Substances 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 238000013144 data compression Methods 0.000 description 1
- 230000001939 inductive effect Effects 0.000 description 1
- 230000002427 irreversible effect Effects 0.000 description 1
- 230000002045 lasting effect Effects 0.000 description 1
- 239000011159 matrix material Substances 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000002688 persistence Effects 0.000 description 1
- 238000009877 rendering Methods 0.000 description 1
- 230000002441 reversible effect Effects 0.000 description 1
- 229920006395 saturated elastomer Polymers 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/42—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
- H04N19/187—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being a scalable video layer
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N9/00—Details of colour television systems
- H04N9/12—Picture reproducers
- H04N9/31—Projection devices for colour picture display, e.g. using electronic spatial light modulators [ESLM]
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
Abstract
The invention discloses a frame rate stable output method, a system and an intelligent terminal, wherein the method comprises the following steps: the method comprises the following steps that a video acquisition layer acquires screen image data and sends the screen image data to a video coding layer; after receiving the screen image data, the video coding layer performs compression coding on the screen image data and sends the screen image data subjected to compression coding to the video sending layer; and the video transmitting layer transmits the screen image data subjected to compression coding to a far end through a network module. The invention temporarily stores the last frame of data acquired from the virtual display module each time by setting a data temporary storage queue and a timer, judges whether new screen image data is generated or not, and starts the timer driving software to take out the last frame of screen image data from the data temporary storage queue to fill up the current lacking screen image data if the last frame of screen image data is not generated, thereby realizing the stable output of any frame rate.
Description
Technical Field
The invention relates to the technical field of audio and video interaction, in particular to a frame rate stable output method, a frame rate stable output system, an intelligent terminal and a computer readable storage medium.
Background
The android mobile phone screen projection method includes the steps that image contents displayed by a mobile phone screen are projected to a large screen in real time to be displayed by an android mobile phone screen projection screen, a multi-screen interaction effect is achieved, currently, a virtual display module under the android is opened by the android, a plurality of use scenes of the virtual display are used, such as screen recording and WFD display, the virtual display is used for capturing contents displayed on the screen, the virtual display captures screen contents, the realization modes of the virtual display are many, an ImageReader is provided in an API for reading the contents in the virtual display, the requirement of a user for capturing screen images is supported, however, the virtual display does not provide a frame rate guarantee mechanism, the frame rate is an important factor in a real-time audio and video interaction scene, and the frame rate is the frequency (rate) of bitmap images which are called as units and continuously appear on the display; if a developer needs to realize functions such as real-time frame rate statistics, based on an android screen refreshing logic, if the screen does not have content refreshing, new image data is not generated, that is, the virtual display does not receive new screen content at this time, the frame rate becomes 0, which is obviously not desired by the developer and the user.
Accordingly, the prior art is yet to be improved and developed.
Disclosure of Invention
The invention mainly aims to provide a frame rate stable output method, a system, an intelligent terminal and a computer readable storage medium, and aims to solve the problem of unstable frame rate in the android mobile phone screen projection scene in the prior art.
In order to achieve the above object, the present invention provides a frame rate stable output method, which includes the following steps:
the method comprises the following steps that a video acquisition layer acquires screen image data and sends the screen image data to a video coding layer;
after receiving the screen image data, the video coding layer performs compression coding on the screen image data and sends the screen image data subjected to compression coding to the video sending layer;
and the video transmitting layer transmits the screen image data subjected to compression coding to a far end through a network module.
Optionally, the method for frame rate stable output, wherein the video acquisition layer acquires screen image data and sends the screen image data to the video coding layer, and before the method, the method further includes:
and a data temporary storage queue for temporarily storing data and a timer for setting a trigger time are arranged in the video acquisition layer in advance.
Optionally, the frame rate stable output method, where the video acquisition layer acquires screen image data and sends the screen image data to the video coding layer, specifically includes:
when the screen is refreshed, putting the screen image data of the last frame into the data temporary storage queue, and judging whether new screen image data are generated;
when detecting that new screen image data are generated, the video acquisition layer acquires the new screen image data and sends the acquired new screen image data to the video coding layer;
and when no new screen image data is detected to be generated, the timer drives the data temporary storage queue to take out the screen image data of the last frame and send the screen image data to the video coding layer.
Optionally, in the frame rate stable output method, the timer triggers the data temporary storage queue to take out the last frame of screen image data every preset time.
Optionally, in the method for outputting frame rate stabilization, a callback period of the timer is a preset time/frame rate.
Optionally, the frame rate stabilizing output method is that the preset time is 1000ms, and the frame rate is 60 frames.
Optionally, in the frame rate stable output method, the screen image data is YUV data.
In addition, to achieve the above object, the present invention further provides a frame rate stabilization output system, wherein the frame rate stabilization output system includes: the video acquisition layer, the video coding layer and the video sending layer;
the video acquisition layer is used for acquiring screen image data and sending the screen image data to the video coding layer;
the video coding layer is used for carrying out compression coding on the screen image data after receiving the screen image data and sending the screen image data subjected to compression coding to the video sending layer;
and the video transmitting layer is used for transmitting the screen image data subjected to compression coding to a far end through a network module.
In addition, to achieve the above object, the present invention further provides an intelligent terminal, wherein the intelligent terminal includes: the frame rate stabilizing output program is stored on the memory and can be operated on the processor, and when being executed by the processor, the frame rate stabilizing output program realizes the steps of the frame rate stabilizing output method.
Further, to achieve the above object, the present invention also provides a computer readable storage medium, wherein the computer readable storage medium stores a frame rate stabilization output program, and the frame rate stabilization output program, when executed by a processor, implements the steps of the frame rate stabilization output method as described above.
The method comprises the steps of collecting screen image data through a video collection layer, and sending the screen image data to a video coding layer; after receiving the screen image data, the video coding layer performs compression coding on the screen image data and sends the screen image data subjected to compression coding to the video sending layer; and the video transmitting layer transmits the screen image data subjected to compression coding to a far end through a network module. The invention temporarily stores the last frame of data acquired from the virtual display module each time by setting a data temporary storage queue and a timer, judges whether new screen image data is generated or not, and starts the timer driving software to take out the last frame of screen image data from the data temporary storage queue to fill up the current lacking screen image data if the last frame of screen image data is not generated, thereby realizing the stable output of any frame rate.
Drawings
FIG. 1 is a flow chart of a frame rate stabilizing output method according to a preferred embodiment of the present invention;
FIG. 2 is a flow chart illustrating the overall implementation process of the frame rate stabilizing output method according to the preferred embodiment of the present invention;
FIG. 3 is a schematic diagram of a frame rate stabilizing output system according to a preferred embodiment of the present invention;
fig. 4 is a schematic operating environment diagram of an intelligent terminal according to a preferred embodiment of the present invention.
Detailed Description
Android mobile phone projection screen projects picture content displayed by a mobile phone screen to a large screen in real time for displaying, so that a multi-screen interaction effect is achieved, a virtual display module is opened by android at present to support the requirement of a user for capturing screen pictures, but the virtual display does not provide a frame rate guarantee mechanism, the frame rate is an important factor in a real-time audio and video interaction scene, and the frame rate is the frequency (rate) of continuous appearance of bitmap images of which the frames are called units on a display; if a developer needs to realize functions such as real-time frame rate statistics, based on an android screen refreshing logic, if the screen does not have content refreshing, new image data is not generated, that is, the virtual display does not receive new screen content at this time, the frame rate becomes 0, which is obviously not desired by the developer and the user.
Therefore, in order to solve the problem of unstable video frame rate in the screen projection scene of the android mobile phone, the invention provides a method for stably outputting any frame rate by a user by taking out the previous frame of YUV data from the temporary storage queue by using a timer according to a frame rate driving program.
In order to make the objects, technical solutions and advantages of the present invention clearer and clearer, the present invention is further described in detail below with reference to the accompanying drawings and examples. It should be understood that the specific embodiments described herein are merely illustrative of the invention and are not intended to limit the invention.
As shown in fig. 1 and 2, the frame rate stabilizing output method according to the preferred embodiment of the present invention includes the following steps:
and step S10, the video acquisition layer acquires screen image data and sends the screen image data to the video coding layer.
Specifically, the method includes the steps of acquiring screen image data at the video acquisition layer and sending the screen image data to the video coding layer, and before: a data temporary storage queue for temporarily storing data (the queue is a tool for storing data, the data is stored from the bottom, the data is stored from one row to the tail, the access right of the data is shifted up by one bit, the data is taken out from the head, and the access right of the data is also shifted up by one bit) and a timer (an electronic device for timing) for setting a trigger time are arranged in advance on the video acquisition layer.
As shown in fig. 2, when a screen (e.g. a screen of a smart phone) is refreshed (refresh frequency: i.e. screen refresh rate), putting the last frame of screen image data into the data temporary storage queue (temporary storage), and determining whether new screen image data is generated; when detecting that new screen image data are generated, the video acquisition layer acquires the new screen image data and sends the acquired new screen image data to the video coding layer; and when no new screen image data is detected to be generated, the timer drives the data temporary storage queue to take out the screen image data of the last frame and send the screen image data to the video coding layer.
The timer triggers the data temporary storage queue to take out the last frame of screen image data at preset time intervals; the callback period of the timer is a preset time/frame rate, for example, the preset time is 1000ms, and the frame rate is 60 frames, where the frame rate is a frequency (rate) at which bitmap images of a frame called a unit continuously appear on the display, and then the callback period of the timer is 1000ms/60 frames or 16.7 ms/frame.
The time sensitivity and resolution of human vision varies according to the type and characteristics of the visual stimulus, and differs from individual to individual. The human visual system can process 10 to 12 images per second and perceive them separately, while higher rates are considered motion. Most study participants considered modulated light (e.g., computer displays) stable when the rate was above 50Hz to 90 Hz. This steady sense of modulated light is referred to as the flicker fusion threshold. However, when the modulated light is not uniform and contains an image, the flicker fusion threshold can be much higher, hundreds of hertz. With respect to image recognition, it has been found that one recognizes a particular image in an uninterrupted series of different images, each lasting as little as 13 milliseconds. The persistence of vision sometimes results in a very short single millisecond visual stimulus with a perceived duration between 100 milliseconds and 400 milliseconds. Multiple stimuli that are very short are sometimes considered to be a single stimulus, for example a 10 millisecond green flash followed by a 10 millisecond red flash, perceived as a single yellow flash. The number of frames per second (fps), or frame rate, indicates the number of times per second that the graphics processor can update while processing fields. A high frame rate may result in a smoother, more realistic animation. Generally 30fps is acceptable, but increasing performance to 60fps can significantly improve cross-talk and fidelity, but generally over 75fps a significant fluency increase is not easily perceived. If the frame rate exceeds the screen refresh rate, graphics processing power is wasted because the monitor cannot be updated at such a fast rate, and thus the frame rate exceeding the refresh rate is wasted. Modern video formats utilize various frame rates. Due to the mains frequency of the grid, the frame rate of analog television broadcasts is 50Hz or 60Hz, sometimes with video interlaced, so more motion information can be sent over the same available broadcast bandwidth, sometimes with video doubled at 25 or 30fps per frame. Movies are almost universally filmed at 24 frames per second, cannot be displayed at their original frame rate, requiring a pull-down conversion, often resulting in "judder": converting 24 frames per second to 60 frames per second, doubling every odd frame and tripling every even frame, would produce uneven motion. Other transitions have similar uneven frame doubling. Newer video standards support 120,240 or 300 frames per second, so frames can be uniformly multiplied by common frame rates, such as 24fps movies and 30fps video, and 25 and 50fps video in the case of a 300fps display. These standards also support video native at higher frame rates, as well as video with interpolated frames between its original frames. Some modern movies are experimenting with frame rates above 24fps, e.g., 48 and 60 fps.
The screen image data represents YUV data, YUV is a color coding method and is commonly used in each video processing component, and YUV allows the bandwidth of chroma to be reduced in consideration of human perception capability when encoding photos or videos; YUV is a kind of compiled true-color space (color space), and the proper terms such as Y' UV, YUV, YCbCr, YPbPr, etc. may be called YUV, overlapping with each other. "Y" represents brightness (Luma) or gray scale value, and "U" and "V" represent Chroma (Chroma or Chroma) and are used to describe the color and saturation of the image for specifying the color of the pixel.
The invention of the Y' UV is due to the transition period between color and black-and-white television. The monochrome video is only Y (Luma ) video, i.e., a gray scale value. When the color television specification is established, the color television image is processed in a YUV/YIQ format, UV is regarded as C (Chroma or Chroma) representing Chroma, and if the C signal is ignored, the rest Y (Luma) signal is the same as the previous black and white television video signal, so that the compatibility problem of the color television and the black and white television is solved. The greatest advantage of Y' UV is that it takes up very little bandwidth. Since UV represents different color signals, respectively, R and B signals are directly used to represent the UV of chromaticity. That is, the UV signal tells the television to shift the color of a pixel without changing its brightness. Or the UV signal tells the display to shift the brightness of a certain color by a certain reference. The higher the value of UV, the more saturated the color will be for that pixel. Common formats for color image recording include RGB, YUV, CMYK, and the like. The earliest concept of color television was to use the three primary colors of RGB for simultaneous transmission. This design was 3 times the original black and white bandwidth and was not a good design at that time. RGB appeals to the perception of color by the human eye, YUV emphasizes the sensitivity of vision to brightness, Y stands for brightness, and UV stands for chroma (so a monochrome movie can omit UV, similar to RGB), represented by Cr and Cb, respectively, so that the recording of YUV is usually presented in the format of Y: UV.
And step S20, after the video coding layer receives the screen image data, the screen image data is compressed and coded, and the compressed and coded screen image data is sent to the video sending layer.
Image compression coding (data compression coding means that the length of coded information is shorter than that of original information) can be divided into two categories: one type of compression is reversible, i.e., the original image can be completely restored from the compressed data without loss of information, which is called lossless compression coding; another type of compression is irreversible, i.e. the original image cannot be completely restored from the compressed data, and there is a certain loss of information, which is called lossy compression coding. Under the condition of meeting the requirement of certain fidelity, the image data is transformed, coded and compressed, redundant data is removed, and the data quantity required by representing the digital image is reduced, so that the image can be conveniently stored and transmitted. That is, a technique of expressing the original pixel matrix with a small amount of data with loss or without loss is also called image coding.
Specifically, after receiving the screen image data, the video coding layer performs compression coding on the screen image data, performs compression coding to facilitate data transmission, improves data transmission efficiency, and sends the screen image data subjected to compression coding to the video sending layer.
And step S30, the video sending layer sends the screen image data after compression coding to the far end through the network module.
Specifically, the video sending layer sends the screen image data after compression coding to a far end (for example, sends the screen image data to a smart television for screen projection display through a network module (for example, a WIFI module), the smart television is based on the Internet application technology, is provided with an open operating system and a chip, is provided with an open application platform, can realize a two-way man-machine interaction function, integrates various functions such as audio and video, entertainment, data and the like into a whole to meet the diversified and personalized requirements of users, and aims to bring more convenient experience to the users, which is the trend of the television at present, the smart television is provided with a fully open platform, is provided with an operating system, can automatically install and uninstall various application software while enjoying common television content, and continuously expands and upgrades the functions of a new television product, the smart television can continuously bring a difference to the users, rich personalized experience with cable digital television receivers (set-top boxes).
Further, as shown in fig. 2, the frame rate stabilizing output method of the present invention includes:
(1) starting the process;
(2) when the screen is refreshed, the video acquisition layer puts the screen image data of the last frame into the data temporary storage queue and judges whether new screen image data are generated or not;
(3) when detecting that new screen image data are generated, the video acquisition layer acquires the new screen image data and sends the acquired new screen image data to the video coding layer;
(4) when no new screen image data is detected to be generated, the timer drives the data temporary storage queue to take out the last frame of screen image data and send the screen image data to the video coding layer;
(5) after receiving the screen image data, the video coding layer performs compression coding on the screen image data and sends the screen image data subjected to compression coding to the video sending layer;
(6) the video sending layer sends the screen image data after compression coding to a far end through a network module;
(7) and (6) ending.
Before the implementation of the present invention, if the content of the smart phone screen is not refreshed, for example, the smart phone screen displays a still image, and the user does not Touch the Touch screen (Touch Panel, also called "Touch screen" or "Touch Panel"), which is an inductive liquid crystal display device capable of receiving input signals such as a Touch head, when touching the graphic button on the screen, the Touch feedback system on the screen can drive various connecting devices according to the pre-programmed program, which can replace the mechanical button Panel and create vivid video and audio effects by using the liquid crystal display image Military command, electronic games, multimedia teaching and the like), no new data is generated based on android rendering logic, and the acquisition module does not transmit data to the subordinate, so that the frame rate of the receiving end is finally 0.
The video acquisition layer is a data generation layer and often needs to generate stable and continuous data, namely the current pain point is solved by the invention, the data is sent to a video coding layer for coding and compressing the data after being generated, and finally the coded data is sent out by a video sending layer.
Further, as shown in fig. 3, based on the frame rate stabilizing output method, the present invention also provides a frame rate stabilizing output system, wherein the frame rate stabilizing output system includes: a video acquisition layer 51, a video coding layer 52 and a video transmission layer 53;
the video acquisition layer 51 is configured to acquire screen image data and send the screen image data to the video coding layer 52;
the video coding layer 52 is configured to, after receiving the screen image data, perform compression coding on the screen image data, and send the screen image data subjected to compression coding to the video sending layer 53;
the video transmission layer 53 is configured to transmit the screen image data after compression encoding to a remote end through a network module.
Specifically, a data temporary storage queue for temporarily storing data and a timer for setting a trigger time are previously set in the video acquisition layer 51.
Specifically, when the screen is refreshed, the video acquisition layer 51 puts the last frame of screen image data into the data temporary storage queue, and determines whether new screen image data is generated; when detecting that new screen image data is generated, the video acquisition layer 51 acquires the new screen image data and sends the acquired new screen image data to the video coding layer 52; when no new screen image data is detected to be generated, the timer drives the data temporary storage queue to take out the last frame of screen image data and send the screen image data to the video coding layer 52.
Specifically, the timer triggers the data temporary storage queue to take out the last frame of screen image data at preset time intervals; the callback period of the timer is a preset time/frame rate; the preset time is 1000ms, and the frame rate is 60 frames.
Specifically, the screen image data is YUV data.
The invention designs a YUV memory temporary storage area (data temporary storage queue) and a timer, the triggering interval time of the timer is 1000 ms/(preset frame rate), the last frame of data acquired from Virtualdisplay each time is temporarily stored, whether new YUV data is generated is judged, if not, the timer driving software is started to take out the last frame of YUV data from the temporary storage area to fill up the current lacking YUV, and the stable output of any frame rate can be realized by the way.
In fig. 2 and fig. 3, a video acquisition layer, a video coding layer, and a video transmission layer are sequentially arranged from top to bottom, the video acquisition layer of the present invention is a data generation layer, and data is often required to be stable and continuous, that is, the current pain point solved by the present invention is that data is generated and then sent to the video coding layer for data coding compression, and finally the video transmission layer transmits the coded data.
Further, as shown in fig. 4, based on the frame rate stable output method and system, the present invention also provides an intelligent terminal, which includes a processor 10, a memory 20, and a display 30. Fig. 4 shows only some of the components of the smart terminal, but it should be understood that not all of the shown components are required to be implemented, and that more or fewer components may be implemented instead.
The memory 20 may be an internal storage unit of the intelligent terminal in some embodiments, such as a hard disk or a memory of the intelligent terminal. The memory 20 may also be an external storage device of the Smart terminal in other embodiments, such as a plug-in hard disk, a Smart Media Card (SMC), a Secure Digital (SD) Card, a Flash memory Card (Flash Card), and the like, which are provided on the Smart terminal. Further, the memory 20 may also include both an internal storage unit and an external storage device of the smart terminal. The memory 20 is used for storing application software installed in the intelligent terminal and various data, such as program codes of the installed intelligent terminal. The memory 20 may also be used to temporarily store data that has been output or is to be output. In an embodiment, the memory 20 stores a frame rate stabilizing output program 40, and the frame rate stabilizing output program 40 can be executed by the processor 10, so as to implement the frame rate stabilizing output method in the present application.
The processor 10 may be a Central Processing Unit (CPU), a microprocessor or other data Processing chip in some embodiments, and is used for executing program codes stored in the memory 20 or Processing data, such as executing the frame rate stabilizing output method.
The display 30 may be an LED display, a liquid crystal display, a touch-sensitive liquid crystal display, an OLED (Organic Light-Emitting Diode) touch panel, or the like in some embodiments. The display 30 is used for displaying information at the intelligent terminal and for displaying a visual user interface. The components 10-30 of the intelligent terminal communicate with each other via a system bus.
In one embodiment, when the processor 10 executes the frame rate stabilization output program 40 in the memory 20, the following steps are implemented:
the method comprises the following steps that a video acquisition layer acquires screen image data and sends the screen image data to a video coding layer;
after receiving the screen image data, the video coding layer performs compression coding on the screen image data and sends the screen image data subjected to compression coding to the video sending layer;
and the video transmitting layer transmits the screen image data subjected to compression coding to a far end through a network module.
The video acquisition layer acquires screen image data and sends the screen image data to the video coding layer, and the method also comprises the following steps:
and a data temporary storage queue for temporarily storing data and a timer for setting a trigger time are arranged in the video acquisition layer in advance.
The video acquisition layer acquires screen image data and sends the screen image data to the video coding layer, and the method specifically comprises the following steps:
when the screen is refreshed, putting the screen image data of the last frame into the data temporary storage queue, and judging whether new screen image data are generated;
when detecting that new screen image data are generated, the video acquisition layer acquires the new screen image data and sends the acquired new screen image data to the video coding layer;
and when no new screen image data is detected to be generated, the timer drives the data temporary storage queue to take out the screen image data of the last frame and send the screen image data to the video coding layer.
And triggering the data temporary storage queue to take out the last frame of screen image data at preset time intervals by the timer.
And the callback period of the timer is preset time/frame rate.
Wherein the preset time is 1000ms, and the frame rate is 60 frames.
The screen image data is YUV data.
The present invention also provides a computer readable storage medium, wherein the computer readable storage medium stores a frame rate stabilization output program, and the frame rate stabilization output program, when executed by a processor, implements the steps of the frame rate stabilization output method as described above.
In summary, the present invention provides a frame rate stable output method, a system and an intelligent terminal, where the method includes: the method comprises the following steps that a video acquisition layer acquires screen image data and sends the screen image data to a video coding layer; after receiving the screen image data, the video coding layer performs compression coding on the screen image data and sends the screen image data subjected to compression coding to the video sending layer; and the video transmitting layer transmits the screen image data subjected to compression coding to a far end through a network module. The invention temporarily stores the last frame of data acquired from the virtual display module each time by setting a data temporary storage queue and a timer, judges whether new screen image data is generated or not, and starts the timer driving software to take out the last frame of screen image data from the data temporary storage queue to fill up the current lacking screen image data if the last frame of screen image data is not generated, thereby realizing the stable output of any frame rate.
It should be noted that, in this document, the terms "comprises," "comprising," or any other variation thereof, are intended to cover a non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements does not include only those elements but may include other elements not expressly listed or inherent to such process, method, article, or apparatus. Without further limitation, an element defined by the phrase "comprising an … …" does not exclude the presence of other like elements in a process, method, article, or apparatus that comprises the element.
Of course, it will be understood by those skilled in the art that all or part of the processes of the methods of the embodiments described above can be implemented by instructing relevant hardware (such as a processor, a controller, etc.) through a computer program, and the program can be stored in a computer readable storage medium, and when executed, the program can include the processes of the embodiments of the methods described above. The computer readable storage medium may be a memory, a magnetic disk, an optical disk, etc.
It is to be understood that the invention is not limited to the examples described above, but that modifications and variations may be effected thereto by those of ordinary skill in the art in light of the foregoing description, and that all such modifications and variations are intended to be within the scope of the invention as defined by the appended claims.
Claims (10)
1. A frame rate stabilization output method, comprising:
the method comprises the following steps that a video acquisition layer acquires screen image data and sends the screen image data to a video coding layer;
after receiving the screen image data, the video coding layer performs compression coding on the screen image data and sends the screen image data subjected to compression coding to the video sending layer;
and the video transmitting layer transmits the screen image data subjected to compression coding to a far end through a network module.
2. The frame rate stabilization output method according to claim 1, wherein the video capture layer captures screen image data and sends the screen image data to a video coding layer, and the method further comprises:
and a data temporary storage queue for temporarily storing data and a timer for setting a trigger time are arranged in the video acquisition layer in advance.
3. The frame rate stable output method according to claim 2, wherein the video capture layer captures screen image data and sends the screen image data to a video coding layer, and specifically comprises:
when the screen is refreshed, putting the screen image data of the last frame into the data temporary storage queue, and judging whether new screen image data are generated;
when detecting that new screen image data are generated, the video acquisition layer acquires the new screen image data and sends the acquired new screen image data to the video coding layer;
and when no new screen image data is detected to be generated, the timer drives the data temporary storage queue to take out the screen image data of the last frame and send the screen image data to the video coding layer.
4. The frame rate stabilizing output method according to claim 3, wherein the timer triggers the data buffering queue to fetch the last frame of screen image data every preset time.
5. The frame rate stabilizing output method according to claim 3, wherein the callback period of the timer is a preset time/frame rate.
6. The frame rate stabilization output method according to claim 5, wherein the preset time is 1000ms, and the frame rate is 60 frames.
7. The frame rate stabilization output method according to claim 1, wherein the screen image data is YUV data.
8. A frame rate stabilized output system, comprising: the video acquisition layer, the video coding layer and the video sending layer;
the video acquisition layer is used for acquiring screen image data and sending the screen image data to the video coding layer;
the video coding layer is used for carrying out compression coding on the screen image data after receiving the screen image data and sending the screen image data subjected to compression coding to the video sending layer;
and the video transmitting layer is used for transmitting the screen image data subjected to compression coding to a far end through a network module.
9. An intelligent terminal, characterized in that, intelligent terminal includes: a memory, a processor and a frame rate stabilization output program stored on the memory and executable on the processor, the frame rate stabilization output program when executed by the processor implementing the steps of the frame rate stabilization output method according to any one of claims 1 to 7.
10. A computer-readable storage medium storing a frame rate stabilization output program, which when executed by a processor implements the steps of the frame rate stabilization output method according to any one of claims 1 to 7.
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110814888.2A CN113660494A (en) | 2021-07-19 | 2021-07-19 | Frame rate stable output method and system and intelligent terminal |
PCT/CN2021/119999 WO2023000484A1 (en) | 2021-07-19 | 2021-09-23 | Frame rate stable output method and system and intelligent terminal |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110814888.2A CN113660494A (en) | 2021-07-19 | 2021-07-19 | Frame rate stable output method and system and intelligent terminal |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113660494A true CN113660494A (en) | 2021-11-16 |
Family
ID=78477501
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110814888.2A Pending CN113660494A (en) | 2021-07-19 | 2021-07-19 | Frame rate stable output method and system and intelligent terminal |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN113660494A (en) |
WO (1) | WO2023000484A1 (en) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN118870105B (en) * | 2024-06-26 | 2025-03-25 | 广东保伦电子股份有限公司 | Android-based frame-reducing screen recording method, system and storage medium |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20100104021A1 (en) * | 2008-10-27 | 2010-04-29 | Advanced Micro Devices, Inc. | Remote Transmission and Display of Video Data Using Standard H.264-Based Video Codecs |
CN106296566A (en) * | 2016-08-12 | 2017-01-04 | 南京睿悦信息技术有限公司 | A kind of virtual reality mobile terminal dynamic time frame compensates rendering system and method |
CN108810281A (en) * | 2018-06-22 | 2018-11-13 | Oppo广东移动通信有限公司 | Lost frame compensation method, lost frame compensation device, storage medium and terminal |
CN109218731A (en) * | 2017-06-30 | 2019-01-15 | 腾讯科技(深圳)有限公司 | The throwing screen method, apparatus and system of mobile device |
-
2021
- 2021-07-19 CN CN202110814888.2A patent/CN113660494A/en active Pending
- 2021-09-23 WO PCT/CN2021/119999 patent/WO2023000484A1/en active Application Filing
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20100104021A1 (en) * | 2008-10-27 | 2010-04-29 | Advanced Micro Devices, Inc. | Remote Transmission and Display of Video Data Using Standard H.264-Based Video Codecs |
CN106296566A (en) * | 2016-08-12 | 2017-01-04 | 南京睿悦信息技术有限公司 | A kind of virtual reality mobile terminal dynamic time frame compensates rendering system and method |
CN109218731A (en) * | 2017-06-30 | 2019-01-15 | 腾讯科技(深圳)有限公司 | The throwing screen method, apparatus and system of mobile device |
CN108810281A (en) * | 2018-06-22 | 2018-11-13 | Oppo广东移动通信有限公司 | Lost frame compensation method, lost frame compensation device, storage medium and terminal |
Also Published As
Publication number | Publication date |
---|---|
WO2023000484A1 (en) | 2023-01-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108449566B (en) | Video frame rate compensation by adjusting vertical blanking | |
US10511803B2 (en) | Video signal transmission method and device | |
US12136441B2 (en) | Video processing method, device, storage medium, and program product | |
CN101505385A (en) | Video output apparatus, display system, and video output method | |
US8610763B2 (en) | Display controller, display control method, program, output device, and transmitter | |
CN111405221B (en) | Display device and display method of recording file list | |
US20180102082A1 (en) | Apparatus, system, and method for video creation, transmission and display to reduce latency and enhance video quality | |
CN114071150A (en) | Image compression method and apparatus, image display method and apparatus, and medium | |
CN113660494A (en) | Frame rate stable output method and system and intelligent terminal | |
WO2023016015A1 (en) | Method for displaying video thumbnail, and device and storage medium | |
US20240363058A1 (en) | Pixel luminance for digital display | |
CN107277475A (en) | Laser television image processing method, laser television and computer-readable recording medium | |
CN114710707A (en) | Display device and video thumbnail acquisition method | |
CN102025936A (en) | Video aspect ratio conversion method and device | |
US20020113814A1 (en) | Method and device for video scene composition | |
US20140056524A1 (en) | Image processing device, image processing method, and program | |
US20130097636A1 (en) | Method and apparatus for displaying pictures during iptv channel switching | |
CN108965764B (en) | Image processing method and electronic device | |
CN112328145A (en) | Image display method, apparatus, device, and computer-readable storage medium | |
CN112672217A (en) | Video playing method, video processing method, device, system and storage medium | |
CN114882132B (en) | Image conversion method, device, storage medium and apparatus for endoscope system | |
CN210807464U (en) | 4K-compatible 3D LED display screen | |
CN118678010B (en) | Video recorder and video processing method | |
US20240414410A1 (en) | Image display apparatus and operating method thereof | |
CN111279679A (en) | Square cutting photographing method, photographing system and photographing device |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20211116 |
|
RJ01 | Rejection of invention patent application after publication |