Patent ID: 8316184

Claim:
A method, comprising: associating a plurality of pools with a cache data array, including a lowest priority pool and a plurality of higher priority pools, the plurality of higher priority pools including a highest priority pool; caching a first data block in the cache data array over a data block in the lowest priority pool, wherein the data blocks correspond to video frame data; comparing (i) a first direction of a first motion vector pointing from a current block of pixels to the first data block, to (ii) a second direction of a second motion vector of a previously encoded block of pixels that is proximate the current block of pixels, to produce a directional compare result indicating whether the first and second motion vector directions are one of the same, different but not opposite, and opposite; selectively associating one of a higher priority, a mid-level priority, and a lower priority one of the higher priority pools with the first data block when the compare result indicates the first and second compared directions are similar, different but not opposite, and opposite, respectively; and demoting data blocks associated with the higher priority pools to correspondingly lower priority pools upon one or more of an event and a condition associated with a completion of encoding of one or more blocks of pixels of a video frame by the video process for which the data blocks are cached.