Patent ID: 8391366

Claim:
A method, comprising; using a computer processor for partitioning a current frame into non-overlapping macroblocks; using a computer processor for computing a motion estimation termination threshold for a current macroblock using macroblock parameters: using a computer processor for selecting an initial motion vector for the current macroblock using spatio-temporal neighboring macroblock parameters; using a computer processor for determining an initial distortion for the current macroblock by computing a sum of absolute difference using the selected initial motion vector and an associated reference macroblock; using a computer processor for comparing the computed initial distortion to the computed motion estimation termination threshold; if the computed initial distortion is less than the computed motion estimation termination threshold, then selecting inter coding mode for encoding the current macroblock and choosing the selected initial motion vector as the representative, motion vector for the current macroblock; if the computed initial distortion is greater than or equal to the computed motion estimation termination threshold, then computing the sum of absolute difference values at each equidistant motion vector position from the initial motion vector; using a computer processor for determining a minimum sum of absolute difference value from the computed sum of absolute difference values; and if the determined minimum sum of absolute difference value is less than the motion estimation termination threshold, then selecting inter coding mode for encoding the current macroblock and choosing the motion vector associated with the minimum sum of absolute difference as the representative motion vector.