[FFmpeg-devel] [PATCH v2 0/5] A native Opus encoder

Rostislav Pehlivanov atomnuker at gmail.com
Mon Feb 13 21:42:36 EET 2017


On 11 February 2017 at 00:25, Rostislav Pehlivanov <atomnuker at gmail.com>
wrote:

> 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
>
>
I plan to push the patchset with all the fixes people noticed tomorrow
unless
someone finds something else that's wrong.


More information about the ffmpeg-devel mailing list