P
US8311115B2ActiveUtilityPatentIndex 96

Video encoding using previously calculated motion information

Assignee: GU CHUANGPriority: Jan 29, 2009Filed: Jan 29, 2009Granted: Nov 13, 2012
Est. expiryJan 29, 2029(~2.6 yrs left)· nominal 20-yr term from priority
Inventors:GU CHUANGCHAN CHUN-WEICHEN WILLIAMSPEARS STACEYHOLCOMB THOMAS W
H04N 7/24H04N 7/12H04N 19/176H04N 19/51H04N 19/105H04N 19/157H04N 19/436H04N 19/43H04N 19/187H04N 19/33
96
PatentIndex Score
118
Cited by
243
References
8
Claims

Abstract

A video encoder uses previously calculated motion information for inter frame coding to achieve faster computation speed for video compression. In a multi bit rate application, motion information produced by motion estimation for inter frame coding of a compressed video bit stream at one bit rate is passed on to a subsequent encoding of the video at a lower bit rate. The video encoder chooses to use the previously calculated motion information for inter frame coding at the lower bit rate if the video resolution is unchanged. A multi core motion information pre-calculation produces motion information prior to encoding by dividing motion estimation of each inter frame to separate CPU cores.

Claims

exact text as granted — not AI-modified
1. A method of processing raw video content input for encoding into multi bit rate video, the method comprising:
 receiving raw video content for encoding as compressed video bit streams at a succession of progressively lower bit rates; 
 encoding an initial compressed video bit stream at a highest bit rate, said encoding the initial compressed video bit stream producing motion information for encoding of inter frame pictures of the video; 
 for encoding subsequent compressed video bit streams at the progressively lower bit rates,
 passing the motion information produced from encoding a preceding compressed video bit stream to the encoding of the subsequent compressed video bit stream; 
 determining whether a condition based on the video encoding parameters for the subsequent compressed video bit stream is met; 
 if said condition is met, encoding the subsequent compressed video bit stream wherein inter frames of the subsequent compressed video bit stream are encoded using the motion information passed from encoding the preceding compressed video bit stream; and 
 if said condition is not met, producing new motion information by performing motion estimation based on reconstructed reference frames of the subsequent compressed video bit stream, and encoding the subsequent compressed video bit stream wherein inter frames of the subsequent compressed video bit stream are encoded using the new motion information; and 
 
 producing an output multi bit rate video comprising the initial and subsequent compressed video bit streams. 
 
     
     
       2. The method of  claim 1  wherein said condition is that the video resolution remain unchanged between the preceding compressed video bit stream and the subsequent compressed video bit stream. 
     
     
       3. A method of encoding video on a computer having a multi core CPU, the method comprising:
 producing motion information for groups of inter frame pictures of a video as a motion estimation pre-calculation prior to encoding of the video, wherein said producing motion information comprises:
 for each inter frame picture in a group, performing motion estimation on a separate one of plural CPU cores of the computer, said motion estimation producing motion information for plural sets of elements of the respective inter frame picture; 
 
 encoding the video, wherein said encoding comprises encoding the inter frame pictures based on the motion information produced by the motion estimation pre-calculation; and 
 producing an output compressed video bit stream containing the encoded video. 
 
     
     
       4. The method of  claim 3  further comprising:
 encoding the video as one or more additional streams at progressively lower bit rates, wherein said encoding the additional streams comprises:
 passing the motion information produced from encoding a preceding compressed video bit stream to the encoding of a subsequent compressed video bit stream; 
 determining whether a condition based on the video encoding parameters for the subsequent compressed video bit stream is met; 
 if said condition is met, encoding the subsequent compressed video bit stream wherein inter frames of the subsequent compressed video bit stream are encoded using the motion information passed from encoding the preceding compressed video bit stream; and 
 if said condition is not met, producing new motion information by performing motion estimation based on reconstructed reference frames of the subsequent compressed video bit stream, and encoding the subsequent compressed video bit stream wherein inter frames of the subsequent compressed video bit stream are encoded using the new motion information; and 
 
 producing an output multi bit rate video comprising the initial and subsequent compressed video bit streams. 
 
     
     
       5. The method of  claim 4  wherein said condition is that the video resolution remain unchanged between the preceding compressed video bit stream and the subsequent compressed video bit stream. 
     
     
       6. A video processing system for encoding compressed video streams for multiple bit rate video streaming, the system comprising:
 a memory for storing raw video content to be encoded; 
 a computer processing means programmed for encoding the raw video content as a plurality of compressed video streams, wherein said encoding the compressed video streams comprises:
 producing original motion information for encoding inter-frame pictures of the raw video content via motion estimation; 
 encoding a top quality compressed video bit stream from the raw video content using the original motion information for encoding inter-frame pictures of the raw video content; 
 deciding a video resolution for encoding a subsequent compressed video bit stream at a lower bit rate; 
 if the video resolution for encoding the subsequent compressed video bit stream is unchanged, encoding the subsequent compressed video bit stream from the raw video content again using the original motion information for encoding inter-frame pictures of the raw video content; and 
 otherwise if the video resolution for encoding the subsequent compressed video bit stream is resized from that of the top quality compressed video bit stream, then producing new motion information for encoding inter-frame pictures of the raw video content via motion estimation relative to intra-frame reference pictures of the subsequent compressed video bit stream, and encoding the subsequent compressed video bit streams from the raw video content using the new motion information for encoding inter-frame pictures of the raw video content. 
 
 
     
     
       7. The video processing system of  claim 6  wherein the computer processing means is a multi core computer processor having multiple processing cores, and wherein said producing original motion information comprises, as a pre-calculation prior to encoding intra-frame pictures of the raw video content, performing motion estimation for each inter frame picture in a group of inter frame pictures of the raw video content on a separate one of the processing cores. 
     
     
       8. The video processing system of  claim 7  said performing motion estimation for a group of inter frame pictures of the raw video content comprises:
 assigning each inter frame picture of the group to a separate processing core of the multi core computer processor; and 
 performing motion estimation for each respective inter frame picture on its assigned separate processing core.

Cited by (0)

No later patents cite this yet.

References (0)

No backward citations on record.