US2019297347A1PendingUtilityA1

Picture-level rate control for video encoding

Assignee: SONY INTERACTIVE ENTERTAINMENT INCPriority: Sep 2, 2009Filed: Jun 12, 2019Published: Sep 26, 2019
Est. expirySep 2, 2029(~3.1 yrs left)· nominal 20-yr term from priority
Inventors:Hung-Ju Lee
H04N 19/61H04N 19/147H04N 19/124H04N 19/577H04N 19/152H04N 19/18H04N 19/126H04N 19/159H04N 19/36H04N 19/149
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) taking picture type, picture complexity, and a target bitcount to determine a quantization parameter (QP) for encoding a current picture with a scene change using rate control data, wherein the target bitcount is determined from a product of a bit budget times an average actual bitcount for I-pictures in a sliding window divided by a weighted sum of numbers of pictures for given types in the sliding window that includes all previous pictures back to a most recent scene-change I-picture, exclusively, wherein the weighted sum of numbers of pictures includes corresponding terms for each of the given types, wherein each corresponding term includes a weight that depends on an average bitcount for all pictures of the corresponding given type in the sliding window divided by an average complexity of all pictures of all of the given types in the sliding window;   b) encoding one or more sections of the current scene change picture into a compressed format using the determined QP to generate one or more corresponding encoded sections of the current picture, wherein encoding the one or more sections includes calculating a distortion of one or more of the sections; 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. 
     
     
         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 scene change I-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 scene change I-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 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 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 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. 
     
     
         9 . 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. 
     
     
         10 . The method of  claim 1 , wherein a) includes clipping the QP so that the value of the QP lies within a predetermined range. 
     
     
         11 . The method of  claim 1 , wherein calculation of the distortion is performed in parallel on a plurality of processor units. 
     
     
         12 . The method of  claim 11  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. 
     
     
         13 . The method of  claim 12 , 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. 
     
     
         14 . 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. 
     
     
         15 . The method of  claim 1 , wherein the rate control data includes section complexity, section type, section distortion, section QP, or section bitcount. 
     
     
         16 . 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.   
     
     
         17 . 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.   
     
     
         18 . The method of  claim 17  wherein setting up the initial status includes computing a complexity of the current picture. 
     
     
         19 . The method of  claim 1 , wherein a) includes taking picture type, picture complexity, and a target bitcount into account in determining the QP. 
     
     
         20 . A system, comprising:
 a processor;   a memory coupled to the processor; and   computer program instructions stored in the memory, wherein the computer program instructions are configured, when executed, to case the processor to:   a) take picture type, picture complexity, and a target bitcount to determine a quantization parameter (QP) for encoding a current picture with a scene change using rate control data, wherein the target bitcount is determined from a product of a bit budget times an average actual bitcount for I pictures in a sliding window divided by a weighted sum of numbers of pictures for given types in the sliding window that includes all previous pictures back to a most recent scene-change I picture, exclusively, wherein the weighted sum of numbers of pictures includes corresponding terms for each of the given types, wherein each corresponding term includes a weight that depends on an average bitcount for all pictures of the corresponding given type in the sliding window divided by an average complexity of all pictures of all of the given types in the sliding window;   b) encode one or more sections of the current scene change picture into a compressed format using the determined QP to generate one or more corresponding encoded sections of the current picture, wherein encoding the one or more sections includes calculating a distortion of one or more of the sections; and   c) update 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.   
     
     
         21 . A non-transitory computer-readable storage medium having computer program instructions embodied therein, wherein the computer program instructions are configured, when executed, to cause a computer to:
 a) take picture type, picture complexity, and a target bitcount to determine a quantization parameter (QP) for encoding a current picture with a scene change using rate control data, wherein the target bitcount is determined from a product of a bit budget times an average actual bitcount for I pictures in a sliding window divided by a weighted sum of numbers of pictures for given types in the sliding window that includes all previous pictures back to a most recent scene-change I picture, exclusively, wherein the weighted sum of numbers of pictures includes corresponding terms for each of the given types, wherein each corresponding term includes a weight that depends on an average bitcount for all pictures of the corresponding given type in the sliding window divided by an average complexity of all pictures of all of the given types in the sliding window;   b) encode one or more sections of the current scene change picture into a compressed format using the determined QP to generate one or more corresponding encoded sections of the current picture, wherein encoding the one or more sections includes calculating a distortion of one or more of the sections; and   c) update 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.

Join the waitlist — get patent alerts

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

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