Patent ID: 7782953

Claim:
A storage device for storing a computer-readable program executable by a computer, the program causing the computer to perform the functions of pre-processing for video encoding comprising: computer executable instructions for, generating a plurality of motion estimation encodings for a macroblock, each motion estimation encoding being a combination of (i) a computed distortion difference between the macroblock and a reconstruction of the macroblock, and (ii) an estimated bit-length required to encode the macroblock times a multiplier term that is constant for a given bit-rate, wherein each of the plurality of motion estimation encodings corresponds to one of a plurality of candidate motion vectors; and selecting one of the candidate motion vectors as an output motion vector, the output motion vector having a lowest corresponding motion estimation encoding of the plurality of motion estimation encodings wherein the estimated bit-length is an estimate of a bit-length required for encoding the candidate motion vector, a corresponding candidate mode vector, and quantized transform coefficients in accordance with a bit-rate constraint.