More band caps updates.
Add generic fine-energy rebalancing.
Custom and non-custom versions of the get_size() functions
Making sure that itheta=0 or 16384 really cuts allocation to one band
Merge branch 'exp_api_change'
Use a smarter per-band bitrate cap.
Error handling in _create() functions
Adding resampling support
Change qb cap to prevent side-fold collapses.
celt_encoder_create() now defaults to Opus standard mode
Enabling the standard static mode by default
Adding the auto-generated static modes for float and fixed
Using the actual degrees of freedom rather than N*C for fine offset
Prevent VBR from shooting up to the maximum rate if set to very low target rates, and prevent the encoder VBR from producing 1 byte frames (which are no longer allowed).
Don't rebalance bits for itheta=0 or 16384
Making rebalance a celt_int32
Making anti-collapse a bit more conservative again
Changing some double constants to float
Adjusting post-filter coefficients to be exact in 13 bit precision.
Adjusting pre-emphasis coefs to be exact in 16-bit precision
Using a real 16-bit value for the coarse beta on intra frames
Reducing waste at high bit-rate
Comparison tool for decoder compliance
Fixes fixed-point overflow on really low energy
Fixes a fixed-point overflow in anti-collapse
Improve accuracy of update_lowband test.
Only allowing silence in non-hybrid mode.
More anti-collapse fixes, as well as a fold fix.
Setting bandE[] to zero after log2Amp when silence=1
Fixes for silence handling in VBR mode, plus an encoder/decoder desync triggered by silent frames.
Removing more unused function params
Removes explicit filling of remaining bits with zeros
Removes unused function parameters
Should avoid running log2Amp on uninitialized data
Adding a special way to code digital silence in two or more bytes
Oops, fixed the sqrt(2) constant for anti_collapse()
Minimum period is now 15
Taking LM into account for anti-collapse
Fix off-by-one error in ec_laplace_encode.
Moving energy floor to coarse quantization
Clipping the encoder input to +/-2 to prevent scaling errors
prefilter/postfilter now forced off in Opus hybrid mode
Simple DTX/CNG implementation
Considering "badness" in two-pass quant_coarse_energy().
Stop uselessly calling haar1() when resynth=0
Prevent out of bounds access to collapse_masks.
Correct an encoder/decoder mismatch at low volume levels. Relax some low level clamps so that the dynamic range can extend further below the 16bit floor.
Tracking the background noise level
Defining merge_stereo() when S==-M or S==M
Fix collapse_masks overflow for mono.
Reorders some operations in anti-collapse to reuse values
Prevents taking the log of zero in fixed-point
Using previous range coder state for PRNG
Fixes an irrelevant uninitialized bug
Remove useless ec_dec_tell() call.
Make collapse-detection bitexact.
Adds an anti-collapse mechanism for transients
Moving the tapset signalling to the beginning of the stream
Adding tapset decision logic
Support for multiple postfilter tapsets
In CVBR mode the rate selection was failing to add bytes which were about to fall off the end of the bitres and never be reusable, causing undershoot.
Setting oldBandE to zero outside of [start,end[
Minor code cleanup, nothing to see here
Proper scaling for the mid folding
Replace log2_frac in the delta offset calculation.
Allowing the tf recombining to go all the way to LM=3
Enforces bands of even size even for custom modes
Using a step pdf for the stereo itheta encoding
Minor fixes to testcases
Add --export-symbols-regex
MSVC build fixes
Use more standard test for lrintf/lrint
Fixes the recombining stride and the deinterleaving stride
Using intensity_stereo() when itheta==0
Defines MAX_FINE_BITS to ensure that we're using the same value everywhere
Using tell() rather than log2_frac() to compute qalloc
Changes the N=2 stereo case to use the same sign convention as N=1
Properly skip padding in testcelt for stereo.
Prevent busts at low bitrates.
Fix Jean-Marc's sqrt(0.5) constants.
Tuning the split allocation for temporal masking
Use B0 instead of B for decisions in quant_band().
Fix rounding in bits2pulses search.
Changes to ec_dec_cdf() to support 8-bit tables.
Code intensity offset relative to start.
Make the dynalloc boost run over [start,end).
Fix the limits for CELT_SET_END_BAND_REQUEST.
Update the maximum fine bits everywhere.
Move fine_priority calculation after the bust cap.
Fixing stereo renormalisation
Move tf_select before the tf_res bits.
Fixes tf_select_table[][] (missing commas)
Minor tweaks to the max allocation