CN108093293A - A kind of Video Rendering method and system - Google Patents
A kind of Video Rendering method and system Download PDFInfo
- Publication number
- CN108093293A CN108093293A CN201810034814.5A CN201810034814A CN108093293A CN 108093293 A CN108093293 A CN 108093293A CN 201810034814 A CN201810034814 A CN 201810034814A CN 108093293 A CN108093293 A CN 108093293A
- Authority
- CN
- China
- Prior art keywords
- data
- empty slot
- decoding
- video
- rendered
- 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.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 55
- 238000009877 rendering Methods 0.000 title claims abstract description 37
- 241001269238 Data Species 0.000 claims description 7
- 238000000605 extraction Methods 0.000 claims description 6
- 108010001267 Protein Subunits Proteins 0.000 claims description 3
- 238000010586 diagram Methods 0.000 description 4
- 230000001419 dependent effect Effects 0.000 description 3
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000003139 buffering effect Effects 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 238000002360 preparation method Methods 0.000 description 1
- 238000004321 preservation Methods 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
- 230000007704 transition Effects 0.000 description 1
- 238000005303 weighing Methods 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing 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/433—Content storage operation, e.g. storage operation in response to a pause request, caching operations
-
- 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/17—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 an image region, e.g. an object
- H04N19/172—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 an image region, e.g. an object the region being a picture, frame or field
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing 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/44—Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing 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/44—Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs
- H04N21/4402—Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs involving reformatting operations of video signals for household redistribution, storage or real-time display
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing 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/44—Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs
- H04N21/4402—Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs involving reformatting operations of video signals for household redistribution, storage or real-time display
- H04N21/440263—Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs involving reformatting operations of video signals for household redistribution, storage or real-time display by altering the spatial resolution, e.g. for displaying on a connected PDA
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
This application provides a kind of Video Rendering method, including:When receive have available empty slot in video requency frame data to be decoded and empty slot queue when, the video requency frame data to be decoded is decoded, obtains decoding data, the empty slot queue includes multiple empty slots;The data message of the decoding data and attribute information are saved in first available empty slot in the empty slot queue;When there are during the data message of decoding data to be rendered, extracting the decoding data to be rendered in the empty slot queue, and the empty slot for the data message for preserving the decoding data to be rendered is updated to available empty slot;Data texturing is loaded according to the attribute information of the decoding data to be rendered;The decoding data to be rendered is rendered according to the data texturing.Multiple empty slots in empty slot queue ensure that decoding multi-frame video data latency renders in advance, avoids influence of the bitstreams switching to video playing fluency, improves user experience.
Description
Technical field
The present invention relates to multimedia technology field, more particularly to a kind of Video Rendering method and system.
Background technology
Due to the otherness of different user bandwidth, video playing needs that there are one opposite flat in high image quality and low delay
Weighing apparatus, therefore, the code stream for often providing a user a variety of resolution ratio are selected for user, with net during user watches video
Speed variation generally requires switching code stream.
The general processing mode of existing video playing is based on the generic structure for decoding and rendering, if user under this architecture
Bitstreams switching operation is carried out, is related to the opening of audio/video decoder, closes.Due to decoded particularity, i.e. just opened sound and regarded
During frequency decoder, decoder generally requires several frame data of caching, and user can just get a frame data, that is to say, that user sees
During picture, solved a few frame videos, it is time-consuming very big due to single frames, cache several frame data take can bigger, when with
Time-consuming for the video of acquisition first frame after family progress bitstreams switching.The stream of audio and video playing can be influenced by being taken caused by bitstreams switching
Smooth property, the direct feel of user are exactly the appearance of interim card or blank screen.
The content of the invention
In view of this, the present invention provides a kind of Video Rendering method and system, the video of certain frame number is decoded in advance
Etc. to be rendered, influence of the bitstreams switching to video playing fluency is avoided.
In order to realize foregoing invention purpose, specific technical solution provided by the invention is as follows:
A kind of Video Rendering method, including:
When receive have available empty slot in video requency frame data to be decoded and empty slot queue when, to the video to be decoded
Frame data are decoded, and obtain decoding data, wherein, the empty slot queue includes multiple empty slots;
The first available sky data message of the decoding data and attribute information being saved in the empty slot queue
In slot, and the decoding data is determined as decoding data to be rendered;
When there are during the data message of decoding data to be rendered, extracting the solution yardage to be rendered in the empty slot queue
According to, and the empty slot that will preserve the data message of the decoding data to be rendered is labeled as available empty slot;
Data texturing is loaded according to the attribute information of the decoding data to be rendered;
The decoding data to be rendered is rendered according to the data texturing.
Preferably, when not obtaining decoding data after being decoded to the video requency frame data to be decoded, the side
Method further includes:
Judge whether there is available empty slot in the empty slot queue;
If so, the video requency frame data received after the video requency frame data to be decoded is decoded, until
To decoding data;
If no, into wait state, return execution is described to judge whether there is available empty slot in the empty slot queue.
Preferably, the data message of the decoding data and attribute information are saved in the empty slot queue described
After in first available empty slot, the method further includes:
Judge whether all video requency frame datas of current video code stream have all decoded;
If so, the corresponding decoder of current video code stream is closed, and according under the next video code flow opening having received
The corresponding decoder of one video code flow returns and performs that described have in video requency frame data to be decoded and empty slot queue can when receive
During with empty slot, the video requency frame data to be decoded is decoded;
If it is not, perform it is described when receive have available empty slot in video requency frame data to be decoded and empty slot queue when, to institute
Video requency frame data to be decoded is stated to be decoded.
Preferably, the attribute information of the decoding data includes:Decoding process, the height of video frame, video frame width and regard
Frequency frame format.
Preferably, when the decoding process of the decoding data is hard decoder, the data message of the decoding data is institute
State the pointer information of decoding data;When the decoding process of the decoding data is soft decoding, the data letter of the decoding data
It ceases for the total data of the decoding data.
Preferably, when the decoding process of the decoding data is hard decoder, in the data by the decoding data
After information and attribute information are saved in first available empty slot in the empty slot queue, the method further includes:
The decoding data is copied to the predeterminable area in video memory, and to decoding data described in the empty slot queue
Pointer information is accordingly updated.
Preferably, it is described that data texturing is loaded according to the attribute information of the decoding data to be rendered, including:
Obtain existing data texturing;
Judge that whether existing data texturing met the attribute information of the decoding data to be rendered renders demand;
If so, load existing data texturing;
If it is not, configuration and the corresponding data texturing of attribute information of the decoding data to be rendered, and load to match somebody with somebody and postpone
Data texturing.
A kind of Video Rendering system, including:
Decoding unit, for when receive have available empty slot in video requency frame data to be decoded and empty slot queue when, to institute
It states video requency frame data to be decoded to be decoded, obtains decoding data, wherein, the empty slot queue includes multiple empty slots;
Storage unit, for the data message of the decoding data and attribute information to be saved in the empty slot queue
In first available empty slot, and the decoding data is determined as decoding data to be rendered;
Extraction unit, for when in the empty slot queue there are during the data message of decoding data to be rendered, described in extraction
Decoding data to be rendered, and the empty slot that will preserve the data message of the decoding data to be rendered is labeled as available empty slot;
Loading unit, for loading data texturing according to the attribute information of the decoding data to be rendered;
Rendering unit, for being rendered according to the data texturing to the decoding data to be rendered.
Preferably, the system also includes:
Judging unit for judging whether all video requency frame datas of current video code stream have all decoded, is worked as if so, closing
The corresponding decoder of preceding video code flow, and the corresponding decoding of next video code flow is opened according to the next video code flow having received
Device, and trigger the decoding unit;If it is not, directly trigger the decoding unit.
Preferably, the loading unit includes:
Subelement is obtained, for obtaining existing data texturing;
Judgment sub-unit, for judging whether existing data texturing meets the attribute information of the decoding data to be rendered
Render demand, if so, triggering loading subelement, if it is not, triggering configuration subelement;
The loading subelement, for loading existing data texturing;
The configuration subelement, for configuring the corresponding texture number of attribute information with the decoding data to be rendered
According to, and load with the data texturing postponed.
Compared with the prior art, beneficial effects of the present invention are as follows:
A kind of Video Rendering method provided by the invention, Decode engine and rendering engine are dependent on empty slot queue and carry out work
Make, empty slot queue includes multiple empty slots, and Decode engine is responsible for being decoded video requency frame data, and empty slot is responsible for storing decoding data
Data message and attribute information, rendering engine, which is responsible for extracting decoding data to be rendered from empty slot, to be rendered.Empty slot queue
In multiple empty slots ensure in advance decoding multi-frame video data latency render, avoid bitstreams switching to video playing fluency
It influences, seamlessly transitting when realizing bitstreams switching improves user experience.
Description of the drawings
It in order to illustrate more clearly about the embodiment of the present invention or technical scheme of the prior art, below will be to embodiment or existing
There is attached drawing needed in technology description to be briefly described, it should be apparent that, the accompanying drawings in the following description is only this
The embodiment of invention, for those of ordinary skill in the art, without creative efforts, can also basis
The attached drawing of offer obtains other attached drawings.
Fig. 1 is a kind of Video Rendering method flow diagram disclosed by the embodiments of the present invention;
Fig. 2 is another Video Rendering method flow diagram disclosed by the embodiments of the present invention;
Fig. 3 is a kind of Video Rendering system structure diagram disclosed by the embodiments of the present invention.
Specific embodiment
Below in conjunction with the attached drawing in the embodiment of the present invention, the technical solution in the embodiment of the present invention is carried out clear, complete
Site preparation describes, it is clear that described embodiment is only part of the embodiment of the present invention, instead of all the embodiments.It is based on
Embodiment in the present invention, those of ordinary skill in the art are obtained every other without making creative work
Embodiment belongs to the scope of protection of the invention.
Referring to Fig. 1, Fig. 1 is a kind of Video Rendering method flow diagram disclosed in the present embodiment, following steps are specifically included:
S101:When receive have available empty slot in video requency frame data to be decoded and empty slot queue when, to described to be decoded
Video requency frame data be decoded, obtain decoding data, wherein, the empty slot queue include multiple empty slots;
Empty slot queue is a kind of specific implementation form of buffering queue, and empty slot queue is disposed in memory, to video frame number
It is required for relying on empty slot queue progress according to being decoded and rendering.
Empty slot sum dynamic in the corresponding empty slot queue of different decoding processes changes, and existing video playing platform has
Android, IOS, MAC and Windows, each video playing platform are divided into as hard decoder mode and soft decoding process, e.g., can be with
Empty slot sum under the hard decoder mode of ios platform is arranged to 5.
The empty slot that any data are not preserved in empty slot queue can be referred to empty slot.
Decode engine relies on empty slot queue and works, and has when receiving in video requency frame data to be decoded and empty slot queue
When can use empty slot, Decode engine is decoded the video requency frame data to be decoded.
S102:First that the data message of the decoding data and attribute information are saved in the empty slot queue can
With in empty slot, and the decoding data is determined as decoding data to be rendered;
Specifically, empty slot queue includes multiple empty slots, multiple empty slots arrange in order, and the empty slot for not storing data is
Empty slot can be used.The data message of the decoding data and attribute information are saved in first available empty slot in the empty slot queue
In after, can subtract 1 with empty slot quantity, next available empty slot in empty slot queue after the empty slot become empty slot queue in first
Empty slot can be used.
One video code flow includes many not decoded video frame, and an empty slot preserves the decoding that a video frame decodes
The data message and attribute information of data.
The attribute information of the decoding data includes:Decoding process, the height of video frame, the width of video frame and video frame lattice
Formula.Video frame formats include YUV420 and NV12 etc..
Empty slot queue is disposed in memory.
When the decoding process of the decoding data is hard decoder, the data message of the decoding data is the solution yardage
According to pointer information, the decoding data under hard decoder mode is stored in video memory, the solution can be obtained according to the pointer information
Address of the code data in video memory.
When the decoding process of the decoding data is soft decoding, the data message of the decoding data is the solution yardage
According to total data, it is necessary to which explanation, the decoding data under soft decoding process are stored in memory.
S103:When there are during the data message of decoding data to be rendered, extracting the solution to be rendered in the empty slot queue
Code data, and the empty slot that will preserve the data message of the decoding data to be rendered is labeled as available empty slot;
Rendering engine relies on empty slot queue and works, when there are the data messages of decoding data to be rendered in empty slot queue
When, rendering engine execution renders work.
As long as receive in video requency frame data to be decoded and empty slot queue have available empty slot Decode engine as long as be decoded
Work, as long as in empty slot queue there are decoding data rendering engine to be rendered as long as render work, Decode engine and rendering is drawn
It holds up and is completely independent parallel execution, multiple empty slots in empty slot queue ensure that decoding multi-frame video data latency renders in advance, avoids
In the prior art video decoding caused by one frame data of Decode engine decoding one-frame video data render engine renders, close solution
Code device takes with opening decoder.
When decoding process is hard decoder, according to the pointer there are decoding data to be rendered in the empty slot queue from video memory
The middle extraction decoding data to be rendered, when decoding process is soft decoding, is directly extracted described to be rendered from empty slot queue
Decoding data.
Preferably, when the decoding process of the decoding data is hard decoder, the method further includes after S102:
The decoding data is copied to the predeterminable area in video memory, and to decoding data described in the empty slot queue
Pointer information is accordingly updated.
Due to the particularity of hard decoder, decoding data is stored in video memory, if decoding data is excessive and is not rendered in time
When, decoded decoding data may cause video playing mistake by rear decoded data cover at first.The present embodiment is directed to this
Decoding data is copied to the predeterminable area in video memory by problem, which is by system independent maintenance, will not cause to solve
The problem of code data are capped.
When decoding data to be copied to the predeterminable area in video memory, the preservation address modification of decoding data, at this time to sky
The pointer information of decoding data described in slot queue is accordingly updated, and allows rendering engine root when rendering the decoding data
The decoding data is accurately extracted according to the pointer information of the decoding data.
S104:Data texturing is loaded according to the attribute information of the decoding data to be rendered;
Specifically, obtain existing data texturing;The texture that the existing data texturing loads when being rendered for the last time
Data.
Judge that whether existing data texturing met the attribute information of the decoding data to be rendered renders demand;Specifically
, according to the decoding process of decoding data to be rendered, the height of video frame, video frame width and video frame formats, judge existing
What whether data texturing met decoding data to be rendered renders demand.
If so, load existing data texturing;
If it is not, configuration and the corresponding data texturing of attribute information of the decoding data to be rendered, and load to match somebody with somebody and postpone
Data texturing.
S105:The decoding data to be rendered is rendered according to the data texturing.
A kind of Video Rendering method provided in this embodiment, Decode engine and rendering engine are dependent on empty slot queue and carry out work
Make, empty slot queue includes multiple empty slots, and Decode engine is responsible for being decoded video requency frame data, and empty slot is responsible for storing decoding data
Data message and attribute information, rendering engine, which is responsible for extracting decoding data to be rendered from empty slot, to be rendered.Empty slot queue
In multiple empty slots ensure in advance decoding multi-frame video data latency render, avoid bitstreams switching to video playing fluency
It influences, seamlessly transitting when realizing bitstreams switching improves user experience.
Based on a kind of Video Rendering method disclosed in above-described embodiment, to be regarded referring to Fig. 2, present embodiment discloses another kinds
Frequency rendering intent, specifically includes following steps:
S201:When receive have available empty slot in video requency frame data to be decoded and empty slot queue when, to described to be decoded
Video requency frame data be decoded;
S202:When not obtaining decoding data after being decoded to the video requency frame data to be decoded, described in judgement
Whether available empty slot is had in empty slot queue;If so, performing S203, if not having, S204 is performed;
S203:The video requency frame data received after the video requency frame data to be decoded is decoded, until
To decoding data;
In bitstreams switching, a frame decoding data can just be obtained by generally requiring decoding multi-frame video frame data, be needed at this time
It constantly treats the video requency frame data received after decoded video requency frame data to be decoded, until obtaining decoding data.
S204:Into wait state, return and perform S202;
S205:When obtaining decoding data after being decoded to the video requency frame data to be decoded, by the solution yardage
According to data message and attribute information be saved in first available empty slot in the empty slot queue;
S206:Judge whether all video requency frame datas of current video code stream have all decoded, if so, S207 is performed, if it is not,
Perform S201;
S207:The corresponding decoder of current video code stream is closed, and according under the next video code flow opening having received
The corresponding decoder of one video code flow returns and performs S201;
Each code stream corresponds to a decoder, and general current video code stream, which does not decode completion, will receive next video
Bit stream data at this point, after the completion of current video code stream decoding, closes current stream decoder, opens next video code flow solution
Code device, ensures the smooth transition between video code flow.
Video encoding/decoding method disclosed in the present embodiment when all video requency frame datas of current video code stream have all decoded, closes
Current video stream decoder is closed, and opens next video code flow decoder, ensures that only there are one decoders in work all the time
Make, ensure that the suitable environment of system operation, improve video decoding efficiency.
Based on a kind of Video Rendering method disclosed in above-described embodiment, the present embodiment correspondence discloses a kind of Video Rendering system
System, referring to Fig. 3, the video decoding system specifically includes:
Decoding unit 101, for when receive have available empty slot in video requency frame data to be decoded and empty slot queue when, it is right
The video requency frame data to be decoded is decoded, and obtains decoding data, wherein, the empty slot queue includes multiple empty slots;
Storage unit 102, for the data message of the decoding data and attribute information to be saved in the empty slot queue
In first available empty slot in, and the decoding data is determined as decoding data to be rendered;
Extraction unit 103, for when there are during the data message of decoding data to be rendered, extracting institute in the empty slot queue
Decoding data to be rendered is stated, and the empty slot that will preserve the data message of the decoding data to be rendered is labeled as available empty slot;
Loading unit 104, for loading data texturing according to the attribute information of the decoding data to be rendered;
Rendering unit 105, for being rendered according to the data texturing to the decoding data to be rendered.
Preferably, the loading unit 104 includes:
Subelement is obtained, for obtaining existing data texturing;
Judgment sub-unit, for judging whether existing data texturing meets the attribute information of the decoding data to be rendered
Render demand, if so, triggering loading subelement, if it is not, triggering configuration subelement;
The loading subelement, for loading existing data texturing;
The configuration subelement, for configuring the corresponding texture number of attribute information with the decoding data to be rendered
According to, and load with the data texturing postponed.
Preferably, the video decoding system further includes:
Judging unit for judging whether all video requency frame datas of current video code stream have all decoded, is worked as if so, closing
The corresponding decoder of preceding video code flow, and the corresponding decoding of next video code flow is opened according to the next video code flow having received
Device, and trigger the decoding unit;If it is not, directly trigger the decoding unit.
A kind of Video Rendering system provided in this embodiment, Decode engine and rendering engine are dependent on empty slot queue and carry out work
Make, empty slot queue includes multiple empty slots, and Decode engine is responsible for being decoded video requency frame data, and empty slot is responsible for storing decoding data
Data message and attribute information, rendering engine, which is responsible for extracting decoding data to be rendered from empty slot, to be rendered.Empty slot queue
In multiple empty slots ensure in advance decoding multi-frame video data latency render, avoid bitstreams switching to video playing fluency
It influences, seamlessly transitting when realizing bitstreams switching improves user experience.
Each embodiment is described by the way of progressive in this specification, the highlights of each of the examples are with other
The difference of embodiment, just to refer each other for identical similar portion between each embodiment.For device disclosed in embodiment
For, since it is corresponded to the methods disclosed in the examples, so description is fairly simple, related part is said referring to method part
It is bright.
It should also be noted that, herein, relational terms such as first and second and the like are used merely to one
Entity or operation are distinguished with another entity or operation, without necessarily requiring or implying between these entities or operation
There are any actual relationship or orders.Moreover, term " comprising ", "comprising" or its any other variant are intended to contain
Lid non-exclusive inclusion, so that process, method, article or equipment including a series of elements not only will including those
Element, but also including other elements that are not explicitly listed or further include as this process, method, article or equipment
Intrinsic element.In the absence of more restrictions, the element limited by sentence "including a ...", it is not excluded that
Also there are other identical elements in process, method, article or equipment including the element.
It can directly be held with reference to the step of method or algorithm that the embodiments described herein describes with hardware, processor
The combination of capable software module or the two is implemented.Software module can be placed in random access memory (RAM), memory, read-only deposit
Reservoir (ROM), electrically programmable ROM, electrically erasable ROM, register, hard disk, moveable magnetic disc, CD-ROM or technology
In any other form of storage medium well known in field.
The foregoing description of the disclosed embodiments enables professional and technical personnel in the field to realize or use the present invention.
A variety of modifications of these embodiments will be apparent for those skilled in the art, it is as defined herein
General Principle can be realized in other embodiments without departing from the spirit or scope of the present invention.Therefore, it is of the invention
The embodiments shown herein is not intended to be limited to, and is to fit to and the principles and novel features disclosed herein phase one
The most wide scope caused.
Claims (10)
- A kind of 1. Video Rendering method, which is characterized in that including:When receive have available empty slot in video requency frame data to be decoded and empty slot queue when, to the video frame number to be decoded According to being decoded, decoding data is obtained, wherein, the empty slot queue includes multiple empty slots;The data message of the decoding data and attribute information are saved in first available empty slot in the empty slot queue, And the decoding data is determined as decoding data to be rendered;When there are during the data message of decoding data to be rendered, extracting the decoding data to be rendered in the empty slot queue, and The empty slot that the data message of the decoding data to be rendered will be preserved is labeled as available empty slot;Data texturing is loaded according to the attribute information of the decoding data to be rendered;The decoding data to be rendered is rendered according to the data texturing.
- 2. according to the method described in claim 1, it is characterized in that, after being decoded to the video requency frame data to be decoded When not obtaining decoding data, the method further includes:Judge whether there is available empty slot in the empty slot queue;If so, the video requency frame data received after the video requency frame data to be decoded is decoded, until being solved Code data;If no, into wait state, return execution is described to judge whether there is available empty slot in the empty slot queue.
- 3. according to the method described in claim 1, it is characterized in that, in the data message and attribute by the decoding data After information is saved in first available empty slot in the empty slot queue, the method further includes:Judge whether all video requency frame datas of current video code stream have all decoded;If so, closing the corresponding decoder of current video code stream, and next regard is opened according to the next video code flow having received The corresponding decoder of frequency code stream, returning to work as to receive described in performing has available sky in video requency frame data to be decoded and empty slot queue During slot, the video requency frame data to be decoded is decoded;If it is not, perform it is described when receive have available empty slot in video requency frame data to be decoded and empty slot queue when, treated to described Decoded video requency frame data is decoded.
- 4. according to the method described in claim 1, it is characterized in that, the attribute information of the decoding data includes:Decoding process, The height of video frame, the width of video frame and video frame formats.
- 5. according to the method described in claim 1, it is characterized in that, when the decoding data decoding process be hard decoder when, The data message of the decoding data is the pointer information of the decoding data;When the decoding process of the decoding data is soft solution During code, the data message of the decoding data is the total data of the decoding data.
- 6. according to the method described in claim 5, it is characterized in that, when the decoding data decoding process be hard decoder when, In first available empty slot being saved in the data message of the decoding data and attribute information in the empty slot queue In after, the method further includes:The decoding data is copied to the predeterminable area in video memory, and to the pointer of decoding data described in the empty slot queue Information is accordingly updated.
- 7. the according to the method described in claim 1, it is characterized in that, attribute information according to the decoding data to be rendered Data texturing is loaded, including:Obtain existing data texturing;Judge that whether existing data texturing met the attribute information of the decoding data to be rendered renders demand;If so, load existing data texturing;If it is not, configuration and the corresponding data texturing of attribute information of the decoding data to be rendered, and load with the line postponed Manage data.
- 8. a kind of Video Rendering system, which is characterized in that including:Decoding unit, for when receive have available empty slot in video requency frame data to be decoded and empty slot queue when, treated to described Decoded video requency frame data is decoded, and obtains decoding data, wherein, the empty slot queue includes multiple empty slots;Storage unit, for the data message of the decoding data and attribute information to be saved in first in the empty slot queue In a available empty slot, and the decoding data is determined as decoding data to be rendered;Extraction unit, for when, there are during the data message of decoding data to be rendered, wash with watercolours being treated described in extraction in the empty slot queue Decoding data is contaminated, and the empty slot that will preserve the data message of the decoding data to be rendered is labeled as available empty slot;Loading unit, for loading data texturing according to the attribute information of the decoding data to be rendered;Rendering unit, for being rendered according to the data texturing to the decoding data to be rendered.
- 9. system according to claim 8, which is characterized in that the system also includes:Judging unit for judging whether all video requency frame datas of current video code stream have all decoded, works as forward sight if so, closing The corresponding decoder of frequency code stream, and the corresponding decoder of next video code flow is opened according to the next video code flow having received, And trigger the decoding unit;If it is not, directly trigger the decoding unit.
- 10. system according to claim 8, which is characterized in that the loading unit includes:Subelement is obtained, for obtaining existing data texturing;Judgment sub-unit, for judging whether existing data texturing meets the wash with watercolours of the attribute information of the decoding data to be rendered Dye demand, if so, triggering loading subelement, if it is not, triggering configuration subelement;The loading subelement, for loading existing data texturing;The configuration subelement, for configuring the corresponding data texturing of attribute information with the decoding data to be rendered, and Loading is with the data texturing postponed.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810034814.5A CN108093293B (en) | 2018-01-15 | 2018-01-15 | Video rendering method and system |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810034814.5A CN108093293B (en) | 2018-01-15 | 2018-01-15 | Video rendering method and system |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108093293A true CN108093293A (en) | 2018-05-29 |
CN108093293B CN108093293B (en) | 2021-01-22 |
Family
ID=62182105
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810034814.5A Active CN108093293B (en) | 2018-01-15 | 2018-01-15 | Video rendering method and system |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108093293B (en) |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109194960A (en) * | 2018-11-13 | 2019-01-11 | 北京奇艺世纪科技有限公司 | A kind of picture frame rendering method, device and electronic equipment |
CN110636370A (en) * | 2018-06-25 | 2019-12-31 | 阿里巴巴集团控股有限公司 | Video processing method and device, electronic equipment and readable medium |
WO2020019140A1 (en) * | 2018-07-23 | 2020-01-30 | 深圳市大疆创新科技有限公司 | Video processing method, terminal device and machine-readable storage medium |
CN110753265A (en) * | 2019-10-28 | 2020-02-04 | 北京奇艺世纪科技有限公司 | Data processing method and device and electronic equipment |
CN112492384A (en) * | 2019-09-12 | 2021-03-12 | 曙光信息产业(北京)有限公司 | Video decoding method and device and computer equipment |
CN113407325A (en) * | 2021-06-30 | 2021-09-17 | 深圳市斯博科技有限公司 | Video rendering method and device, computer equipment and storage medium |
CN114222185A (en) * | 2021-12-10 | 2022-03-22 | 洪恩完美(北京)教育科技发展有限公司 | Video playing method, terminal equipment and storage medium |
CN114359017A (en) * | 2021-12-27 | 2022-04-15 | 阿波罗智联(北京)科技有限公司 | Multimedia resource processing method and device and electronic equipment |
Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101067827A (en) * | 2007-06-14 | 2007-11-07 | 上海创图网络科技发展有限公司 | Three-dimensional web page realizing method based on browser |
CN102461168A (en) * | 2009-06-04 | 2012-05-16 | 韩国科亚电子股份有限公司 | Apparatus and method for processing video data |
CN103391414A (en) * | 2013-07-24 | 2013-11-13 | 杭州趣维科技有限公司 | Video processing device and processing method applied to mobile phone platform |
CN103942823A (en) * | 2014-02-27 | 2014-07-23 | 优视科技有限公司 | Game engine rendering method and device |
CN104137563A (en) * | 2012-02-28 | 2014-11-05 | 高通股份有限公司 | Customized buffering at sink device in wireless display system based on application awareness |
CN104185062A (en) * | 2013-05-27 | 2014-12-03 | 中兴通讯股份有限公司 | Method for processing video streams by terminal and terminal |
US20150371354A1 (en) * | 2014-06-19 | 2015-12-24 | Vmware, Inc. | Host-Based GPU Resource Scheduling |
CN105389159A (en) * | 2014-09-03 | 2016-03-09 | 优视科技有限公司 | Picture rendering method, device and mobile terminal |
CN105992005A (en) * | 2015-03-04 | 2016-10-05 | 广州市动景计算机科技有限公司 | Video decoding method and device and terminal device |
CN106959897A (en) * | 2017-02-16 | 2017-07-18 | 福建天泉教育科技有限公司 | A kind of optimization method and system based on Unity3D image renderings |
US20170359607A1 (en) * | 2016-06-10 | 2017-12-14 | Apple Inc. | Distributed and synchronized media switching |
-
2018
- 2018-01-15 CN CN201810034814.5A patent/CN108093293B/en active Active
Patent Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101067827A (en) * | 2007-06-14 | 2007-11-07 | 上海创图网络科技发展有限公司 | Three-dimensional web page realizing method based on browser |
CN102461168A (en) * | 2009-06-04 | 2012-05-16 | 韩国科亚电子股份有限公司 | Apparatus and method for processing video data |
CN104137563A (en) * | 2012-02-28 | 2014-11-05 | 高通股份有限公司 | Customized buffering at sink device in wireless display system based on application awareness |
CN104185062A (en) * | 2013-05-27 | 2014-12-03 | 中兴通讯股份有限公司 | Method for processing video streams by terminal and terminal |
CN103391414A (en) * | 2013-07-24 | 2013-11-13 | 杭州趣维科技有限公司 | Video processing device and processing method applied to mobile phone platform |
CN103942823A (en) * | 2014-02-27 | 2014-07-23 | 优视科技有限公司 | Game engine rendering method and device |
US20150371354A1 (en) * | 2014-06-19 | 2015-12-24 | Vmware, Inc. | Host-Based GPU Resource Scheduling |
CN105389159A (en) * | 2014-09-03 | 2016-03-09 | 优视科技有限公司 | Picture rendering method, device and mobile terminal |
CN105992005A (en) * | 2015-03-04 | 2016-10-05 | 广州市动景计算机科技有限公司 | Video decoding method and device and terminal device |
US20170359607A1 (en) * | 2016-06-10 | 2017-12-14 | Apple Inc. | Distributed and synchronized media switching |
CN106959897A (en) * | 2017-02-16 | 2017-07-18 | 福建天泉教育科技有限公司 | A kind of optimization method and system based on Unity3D image renderings |
Cited By (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110636370A (en) * | 2018-06-25 | 2019-12-31 | 阿里巴巴集团控股有限公司 | Video processing method and device, electronic equipment and readable medium |
CN110636370B (en) * | 2018-06-25 | 2022-02-01 | 斑马智行网络(香港)有限公司 | Video processing method and device, electronic equipment and readable medium |
WO2020019140A1 (en) * | 2018-07-23 | 2020-01-30 | 深圳市大疆创新科技有限公司 | Video processing method, terminal device and machine-readable storage medium |
CN109194960B (en) * | 2018-11-13 | 2020-12-18 | 北京奇艺世纪科技有限公司 | Image frame rendering method and device and electronic equipment |
CN109194960A (en) * | 2018-11-13 | 2019-01-11 | 北京奇艺世纪科技有限公司 | A kind of picture frame rendering method, device and electronic equipment |
CN112492384A (en) * | 2019-09-12 | 2021-03-12 | 曙光信息产业(北京)有限公司 | Video decoding method and device and computer equipment |
CN110753265B (en) * | 2019-10-28 | 2022-04-19 | 北京奇艺世纪科技有限公司 | Data processing method and device and electronic equipment |
CN110753265A (en) * | 2019-10-28 | 2020-02-04 | 北京奇艺世纪科技有限公司 | Data processing method and device and electronic equipment |
CN113407325A (en) * | 2021-06-30 | 2021-09-17 | 深圳市斯博科技有限公司 | Video rendering method and device, computer equipment and storage medium |
CN114222185A (en) * | 2021-12-10 | 2022-03-22 | 洪恩完美(北京)教育科技发展有限公司 | Video playing method, terminal equipment and storage medium |
CN114222185B (en) * | 2021-12-10 | 2024-04-05 | 洪恩完美(北京)教育科技发展有限公司 | Video playing method, terminal equipment and storage medium |
CN114359017A (en) * | 2021-12-27 | 2022-04-15 | 阿波罗智联(北京)科技有限公司 | Multimedia resource processing method and device and electronic equipment |
CN114359017B (en) * | 2021-12-27 | 2023-11-17 | 阿波罗智联(北京)科技有限公司 | Multimedia resource processing method and device and electronic equipment |
Also Published As
Publication number | Publication date |
---|---|
CN108093293B (en) | 2021-01-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108093293A (en) | A kind of Video Rendering method and system | |
US10212440B2 (en) | Virtual frame buffer system and method | |
CN105488842B (en) | Deep forwarding in a graphics processing system | |
CN110366033A (en) | A kind of video broadcasting method, device, equipment and storage medium | |
US8502819B1 (en) | System and method for performing ray tracing node traversal in image rendering | |
CN108733344A (en) | Data read-write method, device and circle queue | |
US11217279B2 (en) | Method and device for adjusting video playback speed | |
CN103827818B (en) | FIFO loading instructions | |
CN105791952B (en) | The screenshot method and device and electronic equipment of streaming media video data | |
CN102883218B (en) | Method and equipment for decoding multiple video files | |
CN104408761B (en) | A kind of methodology in computer graphics based on automatic batch Rendering | |
TW200844898A (en) | Method and apparatus for graphics processing unit | |
US20060288188A1 (en) | Translating a string operation | |
EP2199916A1 (en) | Method of controlling a page open time for a memory device, storage medium and memory system | |
CN103744800A (en) | Cache operation method and device for replay mechanism | |
US7542046B1 (en) | Programmable clipping engine for clipping graphics primitives | |
US20140129745A1 (en) | Asymmetric fifo memory | |
CN101527844A (en) | Method for block execution of data to be decoded | |
CN106339210B (en) | Data processing method and relevant apparatus in a kind of web game | |
CN110087142A (en) | Video slicing method, terminal and storage medium | |
CN108668132A (en) | Manage method, image decoder and the storage medium of decoding image buffering area | |
EP2175363A1 (en) | Processor and method of decompressing instruction bundle | |
EP0967576A1 (en) | Memory addressing in an MPEG decoder | |
FR2780186A1 (en) | METHOD AND DEVICE FOR DECODING AN IMAGE, COMPRESSED IN PARTICULAR ACCORDING TO MPEG STANDARDS, IN PARTICULAR A BIDIRECTIONAL IMAGE | |
CN101472172B (en) | Method for processing filtering previous data of video decode as well as decoder |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |