On Sun, Jan 3, 2016 at 8:52 AM, Niels Möller <[email protected]> wrote: > "Alexandra Hájková" <[email protected]> writes: > >> The tables will be used to support bitexact QMF and LFE reconstruction. >> --- >> libavcodec/dcadata.c | 588 >> +++++++++++++++++++++++++++++++++++++++++++++++++++ >> libavcodec/dcadata.h | 5 + >> 2 files changed, 593 insertions(+) >> >> diff --git a/libavcodec/dcadata.c b/libavcodec/dcadata.c >> index 6c41aef..efb08a2 100644 >> --- a/libavcodec/dcadata.c >> +++ b/libavcodec/dcadata.c >> @@ -7280,6 +7280,527 @@ DECLARE_ALIGNED(16, const float, >> ff_dca_fir_32bands_nonperfect)[512] = { >> +1.390191784E-007 >> }; >> >> +DECLARE_ALIGNED(32, const int32_t, ff_dca_fir_32bands_perfect_fixed)[512] = >> { >> + 0, 0, -3, -10, >> + -35, -105, -218, -141, > ... >> + -141, -218, -105, -35, >> + -10, -3, 0, 0 >> +}; > > If this table (and the others) are symmetric, > > table[k] == table[511 - k] > > then the second half of the table could be eliminated, which might be a > good idea.
+1, this gives space savings. As it is, dca is huge; it should not be made worse gratuitously. > > For optimization, it's mainly a tradeoff between more complex access to > the table (I haven't looked at the code, maybe it's easy to do?), and > increased cache pressure from a larger table. Alternatively, if one wants to avoid the extra runtime cost of access to the table, at the time of codec init, one can do the necessary derivation from the first half, which can be statically stored like currently. > > Best regards, > /Niels > > -- > Niels Möller. PGP-encrypted email is preferred. Keyid C0B98E26. > Internet email is subject to wholesale government surveillance. > _______________________________________________ > libav-devel mailing list > [email protected] > https://lists.libav.org/mailman/listinfo/libav-devel _______________________________________________ libav-devel mailing list [email protected] https://lists.libav.org/mailman/listinfo/libav-devel
