Draft clean-ups and additions.
Update text regarding PLC and add a new section on clock drift.
Avoiding more left shifts of negative values
Avoiding left shifts of negative values
CELT decoder figure, some more acknowledgements
Making the left shift macros use unsigned to avoid undefined behaviour
Fixes a decoder overflow on random input
Improved doxygen doc for opus.h
Fixes an integer overflow caused by uninitialized values in LTP scaling
Draft build fixes, some more details
Patch from Tim to avoid a spurious uninitialized warning in test_opus.c.
Some fixes for C89 builds.
Use fold instead of passing a wrap length to base64.
Removed all the silk_ prefixes in source file names (not symbols)
Renaming the SKP_ prefix to silk_
Making sure to avoid undefined behaviour
Moves opus_compare to the same base64 tar.gz as the rest of the code
Documentation and build script updates.
Implements OPUS_GET_PITCH that queries the decoded pitch
Remove redundant API parameter comments from opus_multistream.c.
More documentation for the multistream API.
more libcelt->celt renames
renames the libcelt/ directory to celt/
Changing some TODOs that were really future optimization hints
Implements OPUS_MULTISTREAM_{EN|DE}CODER_GET_STATE
Implements multi-stream encoder requests the best we can
Properly implementing the multistream decoder ctl()s
Adds a bound on the SILK rate to prevent it from busting the byte limit
Making complexity default to 10 for the CELT part too
Makes multi-stream encoding code use the repacketizer
Fixes multi-stream bug exposed in e335065a1ba72
test_opus now uses a string for the application
Making RESTRICTED_LOWDELAY an "application" that's set at init time
Using opus_repacketizer_init() instead of opus_repacketizer_create() in the encoder
Encoder can now produce 40- and 60-ms frames even for CELT-only and hybrid
Fixes silly CBR/VBR inversion bug from 7954065c77
Adds OPUS_SET_RESTRICTED_LOWDELAY() encoder ctl
Adds ctl() requests for forcing any operating mode in the encoder
Adds doxygen documentation for opus_defines.h.
Multi-stage VQ for SILK is no longer relevant
Oops, remove duplicate description of the MDCT
Adds missing details about reserving the anticollapse/skip/stereo bits
Move the fallback OPUS_VERSION to libcelt.
More work on the CELT encoder description, fixed Opus figures
Making the sampling rate an int32 in the multi-stream API
Fixes a warning about assignment in an if()
Security Considerations update
Tell automake to clean the doxygen output.
Add minimal doxygen markup to the public headers.
Add initial Doxygen support for generating api documentation.
Update Makefile.draft warnings to match configure.ac.
Making the encoder more robust against extreme bitrate requests
Improve encoder bust test from 5f089d22.
Prevents the SILK encoder from failing below 600 kb/s stereo.
Add an encoder busting test.
Eliminate the last non-static pointer from the LPC-mode encoder structures.
Sanitize input to opus_en/decoder_get_size.
Making redundancy length decoding errors non-fatal
s/OPUS_CORRUPTED_DATA/OPUS_INVALID_PACKET/
Defining OPUS_BITRATE_MAX and moving some defines to opus_defines.h
Renumbering the ctl() calls to make programming errors more obvious
Completing the OpusCustom rename
Fix corner-case hybrid encoding desync introduced by e5736ae2
Making sure redundant frames can never bust the buget
Fixes a buffering bug introduced in 2f0ca7618
Make opus_decode() reject crazy decode_fec values.
Prevents OPUS_RESET_STATE from causing segfault.
Prevent double free on encoder/decoder init failure.
Make opus_decoder_create set its error code.
Use alloca() for dynamic storage in the draft makefile.
Avoid left-shift by 32 on int32 in ectest.
Avoids signed overflow in ectest random number generation.
Merge remote-tracking branch 'greg/master'
Minor draft updates.
Improved mode/channel/bandwidth control mechanism
Corrects many places where int was used where opus_int32 was needed.
Merge branch 'exp-highpass'
Removes code that became useless with the Opus-level highpass
passing self_delimited flag to opus_packet_parse_impl() in decoder
First attempt at global high-pass filter
Various minor cleanups (removing dead arguments, macros) to libcelt/. Reinstate -Wunused-parameter.
Simplifying buffering to make an Opus-level highpass possible
Fix compile errors with g++
Only export the CELT calls when CUSTOM_MODES is defined
Fix dump_modes for the api change and move it into a subdirectory
Removes c64_fft.[ch] -- hadn't been updated for ages
opus_strerror() and opus_get_version_string() moved to libcelt