1. An apparatus for performing motion estimation for video encoding, comprising: a skip checking module to determine whether a macroblock in a current picture frame may be skipped from motion estimation; an integer search module to search a reference frame for the macroblock at integer pixel locations (“integer search”) if the macroblock is not skipped from motion estimation; and a macroblock partitioning module to determine a macroblock partition based on results from the integer search module.