[x264-devel] Re: about motion compensation
Mathieu Monnier
manao at melix.net
Fri Dec 15 10:47:26 CET 2006
> thanks for your exhaustive explanation, but what's the limitation of
> motion vectors pointing outside the reference frames? Suppose mv is
> greater than 8, so we need the half-pel interplated, but now in x264, we
> only had the left 8 pixels, is there any errors when this happens? or
> the mv is always less than 8?
The encoder first pad the reference frame ( 32 pixels on each side of
the reference frame ), then it interpolates it ( 8 pixels on each side
of the reference frame ), then pad each hpel planes ( 24 pixels on each
side ). You end up with each planes having 32 more pixels on each side.
Now, that allows motion vectors to reference macroblocks that are
completely into the padded area. And you don't need to have longer
motion vectors into that area, since that the padded area repeat itself
indefinitely.
Also, since the encoder check the motion range when doing the motion
estimation, it takes care not to go outside the authorized range.
Regards,
Mathieu
--
This is the x264-devel mailing-list
To unsubscribe, go to: http://developers.videolan.org/lists.html
More information about the x264-devel
mailing list