US2015016513A1PendingUtilityA1

Picture-level rate control for video encoding

Assignee: SONY COMPUTER ENTERTAINMENT INCPriority: Sep 2, 2009Filed: Sep 30, 2014Published: Jan 15, 2015
Est. expirySep 2, 2029(~3.1 yrs left)· nominal 20-yr term from priority
Inventors:Hung-Ju Lee
H04N 19/18H04N 19/36H04N 19/149H04N 19/159H04N 19/126H04N 19/124H04N 19/152H04N 19/61H04N 19/577H04N 19/147H04N 19/00721H04N 19/00448H04N 19/00096H04N 19/00296
61
PatentIndex Score
0
Cited by
0
References
0
Claims

Abstract

A quantization parameter (QP) used for encoding a current picture is determined using rate control data. One or more sections of the current picture are encoded using the determined QP. After encoding the sections, the rate control data is updated based on statistical data determined from the resulting encoded sections.

Claims

exact text as granted — not AI-modified
What is claimed is: 
     
         1 . A computer-implemented method for rate control in computer-implemented encoding one or more video pictures, comprising:
 a) determining a quantization parameter (QP) to be used for encoding a current picture of the one or more video pictures using rate control data;   b) encoding one or more sections of the current picture into a compressed format using the QP determined in a) to generate one or more corresponding encoded sections of the current picture, wherein encoding the one or more sections of the current picture includes calculating a distortion of one or more of the sections of the current picture from the one or more encoded sections of the current picture; and   c) updating the rate control data based on statistical data determined from the one or more encoded sections of the current picture after encoding a last section of the one or more sections of the current picture.   
     
     
         2 . The method of  claim 1 , further comprising repeating a) through c) for one or more subsequent pictures of the one or more video pictures. 
     
     
         3 . The method of  claim 1 , wherein a) includes taking a picture distortion into account in determining the QP. 
     
     
         4 . The method of  claim 1 , wherein a) includes determining an estimated bit usage for the current picture based on an actual bit usage for one or more previous pictures and a complexity for one or more previous pictures and computing the QP based on the estimated bit usage. 
     
     
         5 . The method of  claim 4 , wherein a) includes determining the estimated bit usage for the current picture based on an actual bit usage for one or more previous pictures, a complexity for one or more previous pictures, and a distortion for one or more previous pictures. 
     
     
         6 . The method of  claim 4 , wherein the current picture contains a scene change and wherein a) include determining the estimated bit usage based on an average actual bit count over all pictures of the same type as the current picture back to a most recent scene change I-picture and an average complexity over all pictures of the same type as the current picture back to the most recent scene change I-picture, exclusively. 
     
     
         7 . The method of  claim 4 , wherein the current picture is an I-picture and wherein a) includes determining the estimated bit usage from an actual bit usage, complexity and distortion for a most recent P-picture preceding the current picture and an actual bit usage, complexity and distortion for a most recent I-picture preceding the most recent P-picture. 
     
     
         8 . The method of  claim 4 , wherein the current picture is a P-picture and wherein a) includes determining the estimated bit usage from an actual bit usage and complexity from a most recent I-picture, P-picture and B-picture. 
     
     
         9 . The method of  claim 4 , wherein the current picture is a B-picture and wherein a) includes determining the estimated bit usage from an actual bit usage and complexity from a most recent I-picture, P-picture and B-picture. 
     
     
         10 . The method of  claim 4 , wherein a) further comprises adjusting the estimated bit usage in a manner calculated to avoid an underflow or overflow of a buffer used to store the encoded current picture. 
     
     
         11 . The method of  claim 4 , wherein determining an estimated bit usage for the current picture includes use of one or more stabilizer terms that to reduce an effect of fluctuations in an average bit usage or average complexity on the computation of the estimated bit usage. 
     
     
         12 . The method of  claim 1 , wherein a) includes clipping the QP so that the value of the QP lies within a predetermined range. 
     
     
         13 . The method of  claim 1 , wherein calculation of the distortion is performed in parallel on a plurality of processor units. 
     
     
         14 . The method of  claim 13  wherein calculating the distortion includes calculating a total distortion of the current picture on a section-by-section basis, wherein distortion calculations for different sections of the current picture performed in parallel using a different processor unit for each different section. 
     
     
         15 . The method of  claim 14 , wherein a NAL decoding thread collects section-by-section distortions computed for each section of the current picture and calculates an overall distortion of the current picture from the section-by-section distortions. 
     
     
         16 . The method of  claim 1 , wherein b) includes determining QP for each section of the one or more sections based on rate control data for one or more previous pictures. 
     
     
         17 . The method of  claim 1 , wherein the rate control data includes section complexity, section type, section distortion, section QP, or section bitcount. 
     
     
         18 . The method of  claim 1 , wherein c) includes one or more of:
 collecting statistical data relating to the encoded current picture,   updating statistical data in a Rate Control Data Buffer,   checking fullness of the rate control data buffer to determine a potential for buffer overflow, or   implementing a buffer overflow prevention mechanism.   
     
     
         19 . The method of  claim 1 , further comprising, prior to a):
 setting up an initial status of a rate control data buffer that contains the rate control data.   
     
     
         20 . The method of  claim 19  wherein setting up the initial status includes computing a complexity of the current picture. 
     
     
         21 . The method of  claim 1 , wherein a) includes taking picture type, picture complexity, and a target bitcount into account in determining the QP. 
     
     
         22 . The method of  claim 1 , wherein a) includes taking picture type, picture complexity, and a target bitcount into account in determining the QP, and wherein, when the current picture is a scene-change I picture, the target bitcount for the current picture is determined from a product of a bit budget and an average actual bitcount divided by a weighted sum of numbers of pictures for given types in a sliding window. 
     
     
         23 . The method of  claim 1 , wherein a) includes taking picture type, picture complexity, and a target bitcount into account in determining the QP, and wherein, when the current picture is a scene-change I picture, the target bitcount for the current picture is determined from a product of a bit budget and an average actual bitcount divided by a weighted sum of numbers of pictures for given types in a sliding window, wherein the average actual bitcount is an average bitcount for pictures of a same type as the current picture back to a most recent scene change I picture, exclusively. 
     
     
         24 . The method of  claim 1 , wherein a) includes taking picture type, picture complexity, and a target bitcount into account in determining the QP, and wherein, when the current picture is a scene-change I picture, the target bitcount for the current picture is determined from a product of a bit budget and an average actual bitcount divided by a weighted sum of numbers of pictures for given types in a sliding window, wherein the average actual bitcount is an average bitcount for pictures of a same type as the current picture back to a most recent scene change I picture, exclusively, wherein the weighted sum of numbers of pictures includes a term for each of the given types. wherein the term for a corresponding given type includes a weight that depends on an average bitcount for all pictures of the corresponding given type back to the most recent scene change I picture and an average complexity for all pictures of the corresponding given type back to the most recent scene change I picture, exclusively 
     
     
         25 . The method of  claim 1 , wherein a) includes taking picture type, picture complexity, and a target bitcount into account in determining the QP, and wherein, when the current picture is a scene-change I picture, the target bitcount for the current picture is determined from a product of a bit budget and an average actual bitcount divided by a weighted sum of numbers of pictures for given types in a sliding window, wherein the average actual bitcount is an average bitcount for pictures of a same type as the current picture back to a most recent scene change I picture, exclusively, wherein the weighted sum of numbers of pictures includes a term for each of the given types, wherein the term for a corresponding given type includes a weight that depends on an average bitcount for all pictures of the corresponding given type back to the most recent scene change I picture and an average complexity for all pictures of the corresponding given type back to the most recent scene change I picture, exclusively. 
     
     
         26 . A computer-implemented system for rate control in computer-implemented encoding one or more video pictures, comprising:
 a processor;   a memory coupled to the processor; and   a set of instructions executable by the processor, the instructions including:   a) an instruction for determining a quantization parameter (QP) to be used for encoding a current picture of the one or more video pictures using rate control data stored in the memory;   b) an instruction for encoding one or more sections of the current picture into a compressed format using the QP determined in a) to generate one or more corresponding encoded sections of the current picture, wherein encoding the one or more sections of the current picture includes calculating a distortion of one or more of the sections of the current picture from the one or more encoded sections of the current picture; and   c) an instruction for updating the rate control data based on statistical data determined from one or more encoded sections of the encoded current picture, after encoding a last section of the one or more sections of the current picture.   
     
     
         27 . A non-transitory computer-readable storage medium having computer program instructions embodied therein, wherein the computer program instructions are configured, when executed, to:
 a) determine a quantization parameter (QP) to be used for encoding a current picture one of the one or more video pictures using rate control data;   b) encode one or more sections of the current picture into a compressed format using the QP determined in a) to generate one or more corresponding encoded sections of the current picture, wherein encoding the current picture includes calculating a distortion of one or more of the sections of the current picture from the one or more encoded sections of the current picture; and   c) update the rate control data based on statistical data determined from one or more encoded sections of the encoded current picture after encoding a last section of the one or more sections of the current picture.

Join the waitlist — get patent alerts

Track US2015016513A1 — get alerts on status changes and closely related new filings.

We store only your email — no account needed. See our privacy policy.