1. A motion estimation engine for a video encoding apparatus, the engine comprising: a pre-processor for rough estimation of motion vectors; an in-loop motion estimator for creating a coding tree unit; and a shared memory for interaction of the pre-processor with the in-loop motion estimator; the pre-processor comprising: a search module for providing rough search of motion vectors for advanced motion vector prediction; a image creating module for transforming pixels from original frames and providing image compression; and a frame image buffer for receiving transformed samples from the image creator and accumulating reference images for the search module; and the in-loop motion estimator comprising: a merge mode spatial prediction (MMP) module; an advanced motion vector spatial prediction (AMVP) module; a temporal prediction module; a reference buffer for storing reference frames; a merge mode (MM) estimator; a full search module for searching a best position of a coding unit from a list of possible predictions received from the prediction modules; a selector for comparing a best decision from the merge mode estimator with a best decision from the full search module, and creating a total list of unique motion vectors; and a CTU creator for forming a coding tree unit.