This series of commits implements a native Opus encoder. This is v2 of the patchset, the changes are: - The forward MDCT doesn't need a third buffer and can handle the full set of sizes the init function allows - The encoder has a new faster than libopus and more accurate PVQ search algorithm and can now handle transients properly.
Rostislav Pehlivanov (5): opus_rc: add entropy encoding functions imdct15: rename to mdct15 and add a forward transform opus_celt: move quantization and band decoding to opus_pvq.c opus_celt: rename structures to better names and reorganize them opus: add a native Opus encoder configure | 7 +- libavcodec/Makefile | 5 +- libavcodec/aac.h | 4 +- libavcodec/aacdec.c | 2 +- libavcodec/aacdec_template.c | 4 +- libavcodec/allcodecs.c | 2 +- libavcodec/mdct15.c | 335 +++++++++ libavcodec/mdct15.h | 70 ++ libavcodec/opus.h | 32 +- libavcodec/opus_celt.c | 1540 ++++++++++-------------------------------- libavcodec/opus_celt.h | 164 +++++ libavcodec/opus_pvq.c | 1157 +++++++++++++++++++++++++++++++ libavcodec/opus_pvq.h | 41 ++ libavcodec/opus_rc.c | 182 ++++- libavcodec/opus_rc.h | 35 +- libavcodec/opusdec.c | 7 +- libavcodec/opusenc.c | 1128 +++++++++++++++++++++++++++++++ libavcodec/opustab.c | 4 + libavcodec/opustab.h | 4 + 19 files changed, 3506 insertions(+), 1217 deletions(-) create mode 100644 libavcodec/mdct15.c create mode 100644 libavcodec/mdct15.h create mode 100644 libavcodec/opus_celt.h create mode 100644 libavcodec/opus_pvq.c create mode 100644 libavcodec/opus_pvq.h create mode 100644 libavcodec/opusenc.c -- 2.11.0.483.g087da7b7c _______________________________________________ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org http://ffmpeg.org/mailman/listinfo/ffmpeg-devel