av_lfg_get_flt() now takes a scale factor, which makes it more flexible. Modified the simple dithering functions to pre-generate the dither noise in order to use SIMD conversion and addition. Includes SSE2 and FMA4 implementations.
Justin Ruggles (3): lavu: add av_lfg_get_flt() to get a random float eac3dec: use av_lfg_get_flt() for SPX noise generation lavr: add option for dithering during sample format conversion to s16 doc/APIchanges | 3 + libavcodec/eac3dec.c | 4 +- libavresample/Makefile | 1 + libavresample/audio_convert.c | 33 +++- libavresample/audio_convert.h | 22 ++- libavresample/avresample.h | 9 + libavresample/dither.c | 475 +++++++++++++++++++++++++++++++++++++++ libavresample/dither.h | 71 ++++++ libavresample/internal.h | 1 + libavresample/options.c | 6 + libavresample/utils.c | 10 +- libavresample/x86/Makefile | 2 + libavresample/x86/dither.asm | 74 ++++++ libavresample/x86/dither_init.c | 67 ++++++ libavutil/lfg.h | 19 ++ libavutil/version.h | 2 +- tests/fate/ac3.mak | 4 +- 17 files changed, 787 insertions(+), 16 deletions(-) create mode 100644 libavresample/dither.c create mode 100644 libavresample/dither.h create mode 100644 libavresample/x86/dither.asm create mode 100644 libavresample/x86/dither_init.c _______________________________________________ libav-devel mailing list [email protected] https://lists.libav.org/mailman/listinfo/libav-devel
