A method, computer program product, and computer system for processing
video frames. A current frame is divided into M blocks that include at
least two differently sized blocks. M is at least 9. Each block in the
current frame is classified as being a motion block or an I-BLOCK.
Overlapped block motion compensation (OBMC) is performed on each block of
the M blocks according to a predetermined scan order. The block on which
OBMC is being performed is denoted as a self block. The OBMC is performed
on the self block with respect to its neighbor blocks. The neighbor
blocks consist of nearest neighbor blocks of the self block. Performing
OBMC on the self block includes generating a weighting window for the
self block and for each of its neighbor blocks.