ref: b77c44b46f46810ae9af3a1b88d361f1daeb769b
parent: c81b510239e84617a64222eb5faaf070009f3109
author: Jean-Marc Valin <[email protected]>
date: Sun Oct 30 12:58:56 EDT 2011
draft: s/LSb/LSB/
--- a/doc/draft-ietf-codec-opus.xml
+++ b/doc/draft-ietf-codec-opus.xml
@@ -985,13 +985,13 @@
0 1 2 3
7 6 5 4 3 2 1 0 7 6 5 4 3 2 1 0 7 6 5 4 3 2 1 0 7 6 5 4 3 2 1 0
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
-| Range coder data (packed MSb to LSb) -> :
+| Range coder data (packed MSB to LSB) -> :
+ +
: :
+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
: | <- Boundary occurs at an arbitrary bit position :
+-+-+-+ +
-: <- Raw bits data (packed LSb to MSb) |
+: <- Raw bits data (packed LSB to MSB) |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
]]></artwork>
</figure>
@@ -1443,7 +1443,7 @@
1: Range encoded bitstream
2: Coded parameters
-3: Pulses, LSb's, and signs
+3: Pulses, LSBs, and signs
4: Pitch lags, LTP coefficients
5: LPC coefficients and gains
6: Decoded signal (mono or mid-side stereo)
@@ -1655,7 +1655,7 @@
<xref target="silk_lbrr_flag_pdfs"/>, and 60 ms Opus frames use the
3-frame LBRR flag PDF.
For each channel, the resulting 2- or 3-bit integer contains the corresponding
- LBRR flag for each frame, packed in order from the LSb to the MSb.
+ LBRR flag for each frame, packed in order from the LSB to the MSB.
</t>
<texttable anchor="silk_lbrr_flag_pdfs" title="LBRR Flag PDFs">
@@ -1829,7 +1829,7 @@
<c><xref target="silk_pulse_locations"/></c>
<c>Non-zero pulse count</c>
-<c>Excitation LSb's</c>
+<c>Excitation LSBs</c>
<c><xref target="silk_shell_lsb_pdf"/></c>
<c><xref target="silk_pulse_counts"/></c>
@@ -2086,7 +2086,7 @@
</t>
<texttable anchor="silk_independent_gain_msb_pdfs"
- title="PDFs for Independent Quantization Gain MSb Coding">
+ title="PDFs for Independent Quantization Gain MSB Coding">
<ttcol align="left">Signal Type</ttcol>
<ttcol align="left">PDF</ttcol>
<c>Inactive</c> <c>{32, 112, 68, 29, 12, 1, 1, 1}/256</c>
@@ -2098,7 +2098,7 @@
The 3 least significant bits are decoded using a uniform PDF:
</t>
<texttable anchor="silk_independent_gain_lsb_pdf"
- title="PDF for Independent Quantization Gain LSb Coding">
+ title="PDF for Independent Quantization Gain LSB Coding">
<ttcol align="left">PDF</ttcol>
<c>{32, 32, 32, 32, 32, 32, 32, 32}/256</c>
</texttable>
@@ -3982,7 +3982,7 @@
This encoding is better suited to the more Gaussian-like distribution of the
coefficient magnitudes and the non-uniform distribution of their signs (caused
by the quantization offset described below).
-SILK also handles large codebooks by coding the least significant bits (LSb's)
+SILK also handles large codebooks by coding the least significant bits (LSBs)
of each coefficient directly.
This adds a small coding efficiency loss, but greatly reduces the computation
time and ROM size required for decoding, as implemented in
@@ -4056,17 +4056,17 @@
18-entry PDF in <xref target="silk_pulse_count_pdfs"/> corresponding to the
rate level from <xref target="silk_rate_level"/>.
The special value 17 indicates that this block has one or more additional
- LSb's to decode for each coefficient.
+ LSBs to decode for each coefficient.
If the decoder encounters this value, it decodes another value for the actual
pulse count of the block, but uses the PDF corresponding to the special rate
level 9 instead of the normal rate level.
This process repeats until the decoder reads a value less than 17, and it then
- sets the number of extra LSb's used to the number of 17's decoded for that
+ sets the number of extra LSBs used to the number of 17's decoded for that
block.
If it reads the value 17 ten times, then the next iteration uses the special
rate level 10 instead of 9.
The probability of decoding a 17 when using the PDF for rate level 10 is
- zero, ensuring that the number of LSb's for a block will not exceed 10.
+ zero, ensuring that the number of LSBs for a block will not exceed 10.
The cumulative distribution for rate level 10 is just a shifted version of
that for 9 and thus does not require any additional storage.
</t>
@@ -4220,27 +4220,27 @@
</section>
-<section anchor="silk_shell_lsb" title="LSb Decoding">
+<section anchor="silk_shell_lsb" title="LSB Decoding">
<t>
-After the decoder reads the pulse locations for all blocks, it reads the LSb's
+After the decoder reads the pulse locations for all blocks, it reads the LSBs
(if any) for each block in turn.
-Inside each block, it reads all the LSb's for each coefficient in turn, even
+Inside each block, it reads all the LSBs for each coefficient in turn, even
those where no pulses were allocated, before proceeding to the next one.
They are coded from most significant to least significant, and they all use the
PDF in <xref target="silk_shell_lsb_pdf"/>.
</t>
-<texttable anchor="silk_shell_lsb_pdf" title="PDF for Excitation LSb's">
+<texttable anchor="silk_shell_lsb_pdf" title="PDF for Excitation LSBs">
<ttcol>PDF</ttcol>
<c>{136, 120}/256</c>
</texttable>
<t>
-The number of LSb's read for each coefficient in a block is determined in
+The number of LSBs read for each coefficient in a block is determined in
<xref target="silk_pulse_counts"/>.
The magnitude of the coefficient is initially equal to the number of pulses
placed at that location in <xref target="silk_pulse_locations"/>.
-As each LSb is decoded, the magnitude is doubled, and then the value of the LSb
+As each LSB is decoded, the magnitude is doubled, and then the value of the LSB
added to it, to obtain an updated magnitude.
</t>
</section>
@@ -4247,7 +4247,7 @@
<section anchor="silk_signs" title="Sign Decoding">
<t>
-After decoding the pulse locations and the LSb's, the decoder knows the
+After decoding the pulse locations and the LSBs, the decoder knows the
magnitude of each coefficient in the excitation.
It then decodes a sign for all coefficients with a non-zero magnitude, using
one of the PDFs from <xref target="silk_sign_pdfs"/>.
@@ -4259,11 +4259,11 @@
The decoder chooses the PDF for the sign based on the signal type and
quantization offset type (from <xref target="silk_frame_type"/>) and the
number of pulses in the block (from <xref target="silk_pulse_counts"/>).
-The number of pulses in the block does not take into account any LSb's.
+The number of pulses in the block does not take into account any LSBs.
Most PDFs are skewed towards negative signs because of the quantizaton offset,
but the PDFs for zero pulses are highly skewed towards positive signs.
If a block contains many positive coefficients, it is sometimes beneficial to
- code it solely using LSb's (i.e., with zero pulses), since the encoder may be
+ code it solely using LSBs (i.e., with zero pulses), since the encoder may be
able to save enough bits on the signs to justify the less efficient
coefficient magnitude encoding.
</t>
@@ -4348,7 +4348,7 @@
<t>
Let e_raw[i] be the raw excitation value at position i, with a magnitude
composed of the pulses at that location (see
- <xref target="silk_pulse_locations"/>) combined with any additional LSb's (see
+ <xref target="silk_pulse_locations"/>) combined with any additional LSBs (see
<xref target="silk_shell_lsb"/>), and with the corresponding sign decoded in
<xref target="silk_signs"/>.
Additionally, let seed be the current pseudorandom seed, which is initialized