Patent ID: 7263128

Claim:
A method of buffering macroblock data being decoded within a video decoder subject to the execution of overlapped motion compensation, comprising: collecting macroblock data for time period x+1 within a first buffer of a group of three buffers within a video decoder; inserting additional macroblock data from time period x+1 into a second buffer of said group of three buffers for time period x, while decoding macroblocks for time period x and x+1; and transferring a macroblock for time period x−1, for which decoding is complete, from a third buffer of said group of three buffers to a transfer buffer, said transferring performed simultaneously with macroblock decoding performed within the first and second buffers; whereafter sequential selection of each of said three buffers continues through the above steps with subsequent macroblocks, the next of which is a macroblock for time period x+2 to be received by said third buffer of said group of three buffers; wherein said macroblock data transferred to the transfer buffer is the oldest macroblock data within said three buffers; wherein said macroblock data contained within said three buffers includes information spanning multiple macroblock periods; wherein overlapping motion compensation across two macroblocks is executed without incurring additional delays; and wherein data independence is obtained by collecting all necessary information prior to said transferring.