[x264-devel] Re: about motion compensation

张睿 hbtmzrui at gmail.com
Fri Dec 15 10:47:59 CET 2006


I think the reason that only 3 or 2 extra pixels are interpolated is that
when the left half-pels are dealed with by the 6-tap filter, they are still
what they was before filtering, so it's no use to interpolate more than 3 or
2 pixels beyond the image width.
Is it correct?

2006/12/15, 张睿 <hbtmzrui at gmail.com>:
>
> 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?
>
> 2006/12/15, Mathieu Monnier <manao at melix.net>:
> >
> > > I think we only need as many half-pels as image width.
> >
> > No. H264 allows motion vectors to point outside the reference frame. The
> > reference frame is extended by padding ( border pixels are replicated ).
> > Hpel positions, however, are interpolated from the whole padded
> > reference frame. So, on the left border for example, it looks like that
> > :
> >
> > Originally :
> >   -5 -4 -3 -2 -1  0  1  2  3  4
> >   x  x  x  x  x  a1 a2 a3 a4 a5
> >
> > After padding :
> >
> >   a1 a1 a1 a1 a1 a1 a2 a3 a4 a5
> >
> > Now, if i want to interpolate a hpel position between -1 and 0, you'll
> > use a1 a1 a1 a1 a2 a3, and if you interpolate between -4 and -3, you'll
> > use a1 a1 a1 a1 a1 a1 : the hpel planes must be interpolated on a larger
> >
> > area before being padded.
> >
> > Regards,
> >
> > Mathieu
> >
> > --
> > This is the x264-devel mailing-list
> > To unsubscribe, go to: http://developers.videolan.org/lists.html
> >
> >
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://mailman.videolan.org/pipermail/x264-devel/attachments/20061215/c6747525/attachment.htm 


More information about the x264-devel mailing list