diff --git a/doc/draft-ietf-codec-opus.xml b/doc/draft-ietf-codec-opus.xml index ba5db9db..4b6c03a1 100644 --- a/doc/draft-ietf-codec-opus.xml +++ b/doc/draft-ietf-codec-opus.xml @@ -514,16 +514,16 @@ Insert decoder figure. tapset [2, 1, 1]/4post-filter transient logp=3 coarse energy -tf_change Section X -tf_select logp=1Section X +tf_change +tf_select logp=1 spread [7, 2, 21, 2]/32 -dyn. alloc. Section X +dyn. alloc. alloc. trim [2, 2, 5, 10, 22, 46, 22, 10, 5, 2, 2]/128 -skip (*) Section X -intensity (*)Section X +skip (*) logp=1 +intensity (*)uniform dual (*) logp=1 fine energy -residual Section X +residual anti-collapselogp=1stereo && transient finalize Order of the symbols in the CELT section of the bit-stream @@ -539,6 +539,21 @@ decoding, or transmission and SHOULD take measures to conceal the error and/or r to the application that a problem has occurred. +
+ +The transient flag encoded in the bit-stream has a +probability of 1/8. When it is set, then the MDCT coefficients represent multiple +short MDCTs in the frame. When not set, the coefficients represent a single +long MDCT for the frame. In addition to the global transient flag is a per-band +binary flag to change the time-frequency (tf) resolution independently in each band. The +change in tf resolution is defined in tf_select_table[][] in celt.c and depends +on the frame size, whether the transient flag is set, and the value of tf_select. +The tf_select flag uses a 1/2 probability, but is only decoded +if it can have an impact on the result knowing the value of all per-band +tf_change flags. + +
+
The energy of each band is extracted from the bit-stream in two steps according