Frame pacing for improved experiences in 3D applications
US-12057090-B2 · Aug 6, 2024 · US
US9767529B1 · US · B1
| Field | Value |
|---|---|
| Publication number | US-9767529-B1 |
| Application number | US-201414574274-A |
| Country | US |
| Kind code | B1 |
| Filing date | Dec 17, 2014 |
| Priority date | Dec 18, 2013 |
| Publication date | Sep 19, 2017 |
| Grant date | Sep 19, 2017 |
A practical reading order for non-experts. Skip the full description unless you need deep technical detail.
What the patent document calls the invention.
A short plain-language summary of the technical disclosure.
Who owns or filed the patent and who is credited as inventor.
Filing, priority, publication, and grant dates set the timeline.
The legal scope of protection — read this for what is actually claimed.
Technology tags used to group this patent with similar filings.
Prior art links and similar publications in this corpus.
Official abstract text for this publication.
A method for storing data of an image frame into a frame buffer includes at least the following steps: dividing the image frame into a plurality of access units, each having at least one encoding unit, wherein each encoding unit is a unit for data compression; and performing the data compression upon each encoding unit of the image frame, and generating an output bitstream to the frame buffer based on a data compression result of the encoding unit. A processing result of each access unit includes each output bitstream of the at least one encoding unit included in the access unit; a plurality of processing results of the access units are stored in a plurality of storage spaces allocated in the frame buffer, respectively; and a size of each of the storage spaces is equal to a size of a corresponding access unit.
Opening claim text (preview).
What is claimed is: 1. A method for storing data of an image frame into a frame buffer, comprising: receiving the image frame from a video decoder; dividing the image frame into a plurality of access units, each having at least one encoding unit, wherein each encoding unit is a unit for data compression, each access unit is a partial image frame, and each encoding unit is a partial image frame; and performing the data compression, by a processing circuit, upon each encoding unit of the image frame, and generating an output bitstream to the frame buffer based on a data compression result of the encoding unit; wherein a processing result of each access unit includes each output bitstream of the at least one encoding unit included in the access unit; a plurality of processing results of the access units are stored in a plurality of storage spaces allocated in the frame buffer, respectively; a size of each of the storage spaces is equal to a size of a corresponding access unit; when at least one output bitstream of at least one encoding unit included in one of the access units is set by uncompressed data according to at least one data compression result of the at least one encoding unit, a processing result of said one of the access units comprises the uncompressed data and is stored in one of the storage spaces; and when the at least one output bitstream of the at least one encoding unit included in said one of the access units is set by compressed data according to the at least one data compression result of the at least one encoding unit, the processing result of said one of the access units comprises the compressed data, and the compressed data is stored in said one of the storage spaces; a same storage space with a size equal to a size of said one of the access units stores the compressed data when the at least one output bitstream of the at least one encoding unit is set by the compressed data, and stores the uncompressed data when the at least one output bitstream of the at least one encoding unit is set by the uncompressed data. 2. The method of claim 1 , wherein a processing result of a specific access unit of the access units comprises a compressed data of a first encoding unit; the compressed data of the first encoding unit is stored into a first region of a specific storage space allocated in the frame buffer; the specific storage space is divided into a plurality of storage units each having a same size; and a number of storage units included in the first region is an integer value. 3. The method of claim 2 , further comprising: setting a header of the first encoding unit to indicate the number of storage units included in the first region; and storing the header of the first encoding unit into a header buffer. 4. The method of claim 2 , wherein the processing result of the specific access unit further comprises an output bitstream generated based on a data compression result of a second encoding unit; the first encoding unit and the second encoding unit are adjacent in a compression order; the output bitstream of the second encoding unit is stored into a second region of the specific storage space; the first region and the second region are non-overlapping; and a number of storage units included in the second region is an integer value. 5. The method of claim 1 , wherein a processing result of a specific access unit of the access units comprises an uncompressed data of a first encoding unit; and the uncompressed data of the first encoding unit is stored into a first region of a specific storage space allocated in the frame buffer; the specific storage space is divided into a plurality of storage units each having a same size; and a number of storage units included in the first region is an integer value. 6. The method of claim 5 , further comprising: setting a header of the first encoding unit to indicate the number of storage units included in the first region; and storing the header of the first encoding unit into a header buffer. 7. The method of claim 5 , wherein the processing result of the specific access unit further comprises an output bitstream generated based on a data compression result of a second encoding unit; the first encoding unit and the second encoding unit are adjacent in a compression order; the output bitstream of the second encoding unit is stored into a second region of the specific storage space; the first region and the second region are non-overlapping; and a number of storage units included in the second region is an integer value. 8. The method of claim 1 , wherein a processing result of a specific access unit of the access units comprises an output bitstream of a first encoding unit that includes an uncompressed data of a part of the first encoding unit and a compressed data of a remaining part of the first encoding unit; the part of the first encoding unit is a collection of specific bits selected from every sample in the first encoding unit; the uncompressed data of the part of the first encoding unit and the compressed data of the remaining part of the first encoding unit are separately stored into first storage unit or units and second storage unit or units in a first region of a specific storage space allocated in the frame buffer; the specific storage space is divided into a plurality of storage units each having a same size; and a number of storage units included in the first region is an integer value. 9. The method of claim 8 , further comprising: setting a header of the first encoding unit to indicate the number of storage units included in the first region; and storing the header of the first encoding unit into a header buffer. 10. The method of claim 8 , wherein the specific bits are least significant bits. 11. The method of claim 8 , wherein the processing result of the specific access unit further comprises an output bitstream of a second encoding unit that includes an uncompressed data of a part of the second encoding unit and data generated based on a data compression result of a remaining part of the second encoding unit; the part of the second encoding unit is a collection of specific bits selected from every sample in the second encoding unit; and the output bitstream of the second encoding unit is stored into a second region of the specific storage space; the first encoding unit and the second encoding unit are adjacent in a compression order; the first region and the second region are non-overlapping; and a number of storage units included in the second region is an integer value. 12. The method of claim 1 , wherein a processing result of a specific access unit of the access units comprises an output bitstream of a first encoding unit that includes an uncompressed data of a part of the first encoding unit and an uncompressed data of a remaining part of the first encoding unit; the part of the first encoding unit is a collection of specific bits selected from every sample in the first encoding unit; the uncompressed data of the part of the first encoding unit and the uncompressed data of the remaining part of the first encoding unit are separately stored into first storage unit or units and second storage unit or units in a first region of a specific storage space allocated in the frame buffer; the specific storage space is divided into a plurality of storage units each having a same size; and a number of storage units included in the first region is an integer value. 13. The method of claim 12 , further comprising: setting a header of the first encoding unit to indicate the number of storage units included in the first region; and storing the header of the first encoding unit into a header buffer.
Memory management · CPC title
Image coding (bandwidth or redundancy reduction for static pictures H04N1/41; coding or decoding of static colour picture signals H04N1/64; methods or arrangements for coding, decoding, compressing or decompressing digital video signals H04N19/00) · CPC title
Frame memory handling · CPC title
Use of a frame buffer in a display terminal, inclusive of the display panel · CPC title
Arbitration of resources in a display system, e.g. control of access to frame buffer by video controller and/or main processor · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.