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

Rostislav Pehlivanov atomnuker at gmail.com
Sat Feb 11 02:25:03 EET 2017


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



More information about the ffmpeg-devel mailing list