The opus_headers.txt, etc. files are makefile
fragments defining variables with a list of
required header files for the build. As such
they should use the .mk filename extension,
just like opus_sources.mk, etc.
- Safer gain clamping for PLC
- Makes opus_decoder_get_nb_samples() report an error on invalid ToC
- Giving a free license to the text ofthe draft (not just the code)
The range decoder used to initialize nbits_total after the
renormalization loop, even though the renormalization loop
modifies it.
This was presumably safe, because nothing actually used the value
before it was initialized, but I'm tired of it triggering the
integer overflow checking.
Some clean-up from JM's prior edits, as well as
* Additional clarificatino of TOC sequence restrictions (e.g., if
you need to decode a length, there must be enough bytes in the
packet for it, etc.).
* Added a summary of TOC sequence restrictions.
* Added a stereo unmixing section.
* Reworked Delay Compensation section into a general Resampling
section.
* Further cleanups of switching/transitions, including new diagrams
for all of the normative and recommended non-normative
transitions.
A number of fixes and additions, including
* Ensure all usage of the word "mode" refer only to the choice of
SILK/hybrid/CELT, not audio bandwidth, frame size, channel count,
or anything else.
There's still a bunch of usage of "mode" in CELT to refer to
things in the CELTMode struct (e.g., band layout, etc.).
* Document the LSF reordering for silk_NLSF2A_find_poly().
* Document the DC response check during LSF stabilization.
* Fix the excitation scaling to give decoded SILK output in the
range -1.0...1.0.
* Rewrite the mode-switching section.
Ironically the title of the section still implies "mode" means
than just SILK/hybrid/CELT, but I couldn't come up with a
better one.
* Minor clean-ups to the acknowledgements.
This patch
* expands sections on LPC and LTP synthesis into something that can
actually be implemented
* fixes an error in the excitation reconstruction
* reverts an erroneous simplification of the subframe gain
decoding, and
* updates the LPC gain limiting description to reflect the new,
more accurate approach for computing the reflection
coefficients.
It also includes a number of general clean-ups, such as
* correcting the description of the sample rates various pieces
run at (e.g., we can decode directly to rates other than 48 kHz)
* the usage of "sampling rate" vs. "sample rate"
* capitalization consistency in TOC titles, and
* better selection of which sections appear in the TOC.
The PLC section has been moved from under CELT to the top
level and expanded to cover both SILK and CELT. The clock drift
text provides some advice and explanation of the new GET_PITCH API.