On Thu, Oct 17, 2013 at 10:33 AM, <[email protected]> wrote:
> # HG changeset patch > # User Praveen Tiwari > # Date 1382024008 -19800 > # Node ID 93bef87604902f0ba3b07faf836fdd74d4e847c6 > # Parent 1481908edb21eea0225eb03de0b852921d4c209f > ipfilter.cpp, setup luma function pointers > > diff -r 1481908edb21 -r 93bef8760490 source/common/ipfilter.cpp > --- a/source/common/ipfilter.cpp Thu Oct 17 21:00:27 2013 +0530 > +++ b/source/common/ipfilter.cpp Thu Oct 17 21:03:28 2013 +0530 > @@ -3,6 +3,7 @@ > * > * Authors: Deepthi Devaki <[email protected]>, > * Rajesh Paulraj <[email protected]> > + * Praveen Kumar Tiwari <[email protected]> > * > * This program is free software; you can redistribute it and/or modify > * it under the terms of the GNU General Public License as published by > @@ -498,6 +499,39 @@ > #define SETUP_PARTITION(W, H) \ > p.chroma_hpp[CHROMA_PARTITION_ ## W ## x ## H] = interp_horiz_pp_c<4, > W, H>; > > +#define SET_LUMA_PRIMITIVE_TABLE_F3(W, H) \ > + p.luma_hpp[LUMA_PARTITION_ ## W ## x ## H] = interp_horiz_pp_c<8, W, > H>; \ > + p.luma_hpp[(LUMA_PARTITION_ ## W ## x ## H) + 1] = > interp_horiz_pp_c<8, W, (H + 1)>; \ > + p.luma_hpp[(LUMA_PARTITION_ ## W ## x ## H) + 2] = > interp_horiz_pp_c<8, (W + 1), H>; \ > I don't know how many more ways I can say this: I don't want to see block primitives that aren't real HEVC block sizes. DO NOT ADD the +1 primitives. Stop trying to optimize for that one use case. STOP. I've had to rewrite most of these commits anyway because I have completely refactored the luma and chroma partition enums; but I seriously do not want to see odd block size primitives This is the worst kind of premature optimization because there are so many real primitives that need to be written before even thinking about those sorts of use cases. > + > +#define SET_LUMA_PRIMITIVE_TABLE_F1(W, H) \ > + p.luma_hpp[LUMA_PARTITION_ ## W ## x ## H] = interp_horiz_pp_c<8, W, > H>; \ > +#define SET_LUMA_PRIMITIVE_TABLE \ > + SET_LUMA_PRIMITIVE_TABLE_F3(4, 8); \ > + SET_LUMA_PRIMITIVE_TABLE_F3(4, 16); \ > + SET_LUMA_PRIMITIVE_TABLE_F3(8, 4); \ > + SET_LUMA_PRIMITIVE_TABLE_F3(8, 8); \ > + SET_LUMA_PRIMITIVE_TABLE_F3(8, 16); \ > + SET_LUMA_PRIMITIVE_TABLE_F3(8, 32); \ > + SET_LUMA_PRIMITIVE_TABLE_F3(12, 16); \ > + SET_LUMA_PRIMITIVE_TABLE_F3(16, 4); \ > + SET_LUMA_PRIMITIVE_TABLE_F3(16, 8); \ > + SET_LUMA_PRIMITIVE_TABLE_F3(16, 12); \ > + SET_LUMA_PRIMITIVE_TABLE_F3(16, 16); \ > + SET_LUMA_PRIMITIVE_TABLE_F3(16, 32); \ > + SET_LUMA_PRIMITIVE_TABLE_F1(16, 64); \ > + SET_LUMA_PRIMITIVE_TABLE_F3(32, 8); \ > + SET_LUMA_PRIMITIVE_TABLE_F3(32, 16); \ > + SET_LUMA_PRIMITIVE_TABLE_F3(32, 24); \ > + SET_LUMA_PRIMITIVE_TABLE_F3(32, 32); \ > + SET_LUMA_PRIMITIVE_TABLE_F3(32, 64); \ > + SET_LUMA_PRIMITIVE_TABLE_F1(48, 64); \ > BTW: the chroma primitive for this size (24x32) is unimplemented. > + SET_LUMA_PRIMITIVE_TABLE_F1(64, 16); \ > + SET_LUMA_PRIMITIVE_TABLE_F3(64, 32); \ > + SET_LUMA_PRIMITIVE_TABLE_F1(64, 48); \ > + SET_LUMA_PRIMITIVE_TABLE_F3(64, 64); \ > + > void Setup_C_IPFilterPrimitives(EncoderPrimitives& p) > { > SETUP_PARTITION(2, 4); > _______________________________________________ > x265-devel mailing list > [email protected] > https://mailman.videolan.org/listinfo/x265-devel > -- Steve Borho
_______________________________________________ x265-devel mailing list [email protected] https://mailman.videolan.org/listinfo/x265-devel
