[x264-devel] Low resolution reference pictures

Jason Garrett-Glaser jason at x264.com
Wed Mar 28 03:34:57 CEST 2012


On Tue, Mar 27, 2012 at 6:09 PM, saritha reddy <saritha84 at gmail.com> wrote:
> Hi,
>
> I've just started tracing the x264 source code. I'm still trying to
> understand the complete code flow. I see that a reference picture for a
> given current picture is divided into four low resolution luma pictures
> using an interpolation technique. How is it fetched or handled in inter
> prediction? Is it not easier to perform block matching search method on a
> full resolution picture? What's the benefit of having them as four separate
> low resolution pictures?

They're not low resolution, they're full resolution.  Note that there
*are* lowres planes, but those are for the lookahead (which I don't
think is what you're talking about) and not in the same place.

The planes are F, H, V, and C.  F is the full-pixel plane, that is,
the actual image.  H, V, and C are the pre-calculated hpel planes.
qpel is done by linear interpolation between pairs of planes.  hpel is
precalculated because the hpel pixels get referenced many times over
during subpixel motion search and the 6-tap hpel filter is slow,
making caching it a good memory/speed tradeoff.

#x264dev on Freenode IRC is open if you want more real-time answers to
questions about the source; we pretty much always have time to help
anyone learn if they want to.  I also recommend looking at
http://akuvian.org/src/x264/overview_x264_v8_5.pdf , which albeit
quite outdated, is still a good rough guide to the structure of x264.

Jason


More information about the x264-devel mailing list