summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMonty <xiphmont@xiph.org>2015-02-27 21:35:42 +0000
committerMonty <xiphmont@xiph.org>2015-02-27 21:35:42 +0000
commitc4bfbb911ece8983bb71e4cd7219415743330330 (patch)
tree28e78f0b30aed719f2d638daf87f7d1e5a8a4484
parentee8669c0e07521d9abbca233996a8b2164b0185e (diff)
downloadlibvorbis-git-c4bfbb911ece8983bb71e4cd7219415743330330.tar.gz
Errata to correct typo in bark equation in 6.2.5 of spec; the last
paren was misplaced. The error apparently appeared when resetting the doc to XML or DocBook. Note that lspmap.png was erroneously updated to reflect the typo in r8547 and so it's been wrong since then too. The original HTML spec was correct (as is the code). Also remove the associated rendered versions of the typeset equations as they're no longer used (and lspmap.png was incorrect as described above anyway) svn path=/trunk/vorbis/; revision=19450
-rw-r--r--doc/06-floor0.tex14
-rw-r--r--doc/Makefile.am3
-rw-r--r--doc/Vorbis_I_spec.html1188
-rw-r--r--doc/Vorbis_I_spec.pdfbin417933 -> 418532 bytes
-rw-r--r--doc/evenlsp.pngbin2540 -> 0 bytes
-rw-r--r--doc/oddlsp.pngbin1928 -> 0 bytes
6 files changed, 615 insertions, 590 deletions
diff --git a/doc/06-floor0.tex b/doc/06-floor0.tex
index cad70047..954f786a 100644
--- a/doc/06-floor0.tex
+++ b/doc/06-floor0.tex
@@ -139,7 +139,7 @@ synthesized:
and
\begin{displaymath}
- \mathrm{bark}(x) = 13.1 \arctan (.00074x) + 2.24 \arctan (.0000000185x^2 + .0001x)
+ \mathrm{bark}(x) = 13.1 \arctan (.00074x) + 2.24 \arctan (.0000000185x^2) + .0001x
\end{displaymath}
The above is used to synthesize the LSP curve on a Bark-scale frequency
@@ -184,9 +184,19 @@ Similarly, the below calculation synthesizes the output LSP curve \varname{[outp
\item done
\end{enumerate}
+\paragraph{Errata 20150227: Bark scale computation}
+Due to a typo when typesetting this version of the specification from the original HTML document, the Bark scale computation previously erroneously read:
+ \begin{displaymath}
+ \hbox{\sout{$
+ \mathrm{bark}(x) = 13.1 \arctan (.00074x) + 2.24 \arctan (.0000000185x^2 + .0001x)
+ $}}
+ \end{displaymath}
+Note that the last parenthesis is misplaced. This document now uses the correct equation as it appeared in the original HTML spec document:
-
+ \begin{displaymath}
+ \mathrm{bark}(x) = 13.1 \arctan (.00074x) + 2.24 \arctan (.0000000185x^2) + .0001x
+ \end{displaymath}
diff --git a/doc/Makefile.am b/doc/Makefile.am
index 970b619a..cfc9bbca 100644
--- a/doc/Makefile.am
+++ b/doc/Makefile.am
@@ -9,7 +9,6 @@ static_docs = \
rfc5215.xml \
rfc5215.txt \
eightphase.png \
- evenlsp.png \
fish_xiph_org.png \
floor1_inverse_dB_table.html \
floorval.png \
@@ -17,8 +16,6 @@ static_docs = \
framing.html \
helper.html \
index.html \
- lspmap.png \
- oddlsp.png \
oggstream.html \
programming.html \
squarepolar.png \
diff --git a/doc/Vorbis_I_spec.html b/doc/Vorbis_I_spec.html
index c170563b..145d88b8 100644
--- a/doc/Vorbis_I_spec.html
+++ b/doc/Vorbis_I_spec.html
@@ -7,7 +7,7 @@
<meta name="originator" content="TeX4ht (http://www.tug.org/tex4ht/)">
<!-- html -->
<meta name="src" content="Vorbis_I_spec.tex">
-<meta name="date" content="2015-02-26 14:14:00">
+<meta name="date" content="2015-02-27 13:18:00">
<link rel="stylesheet" type="text/css" href="Vorbis_I_spec.css">
</head><body
>
@@ -23,7 +23,7 @@
<div class="author" ><span
class="cmr-17">Xiph.Org Foundation</span></div><br />
<div class="date" ><span
-class="cmr-17">February 26, 2015</span></div>
+class="cmr-17">February 27, 2015</span></div>
</div>
<h3 class="likesectionHead"><a
id="x1-1000"></a>Contents</h3>
@@ -163,85 +163,85 @@ href="#x1-940006.2.2" id="QQ2-1-100">packet decode</a></span>
<br />&#x00A0;&#x00A0;&#x00A0;<span class="subsubsectionToc" >6.2.3 <a
href="#x1-950006.2.3" id="QQ2-1-101">curve computation</a></span>
<br />&#x00A0;<span class="sectionToc" >7 <a
-href="#x1-960007" id="QQ2-1-102">Floor type 1 setup and decode</a></span>
+href="#x1-970007" id="QQ2-1-103">Floor type 1 setup and decode</a></span>
<br />&#x00A0;&#x00A0;<span class="subsectionToc" >7.1 <a
-href="#x1-970007.1" id="QQ2-1-103">Overview</a></span>
+href="#x1-980007.1" id="QQ2-1-104">Overview</a></span>
<br />&#x00A0;&#x00A0;<span class="subsectionToc" >7.2 <a
-href="#x1-980007.2" id="QQ2-1-104">Floor 1 format</a></span>
+href="#x1-990007.2" id="QQ2-1-105">Floor 1 format</a></span>
<br />&#x00A0;&#x00A0;&#x00A0;<span class="subsubsectionToc" >7.2.1 <a
-href="#x1-990007.2.1" id="QQ2-1-105">model</a></span>
+href="#x1-1000007.2.1" id="QQ2-1-106">model</a></span>
<br />&#x00A0;&#x00A0;&#x00A0;<span class="subsubsectionToc" >7.2.2 <a
-href="#x1-1000007.2.2" id="QQ2-1-110">header decode</a></span>
+href="#x1-1010007.2.2" id="QQ2-1-111">header decode</a></span>
<br />&#x00A0;&#x00A0;&#x00A0;<span class="subsubsectionToc" >7.2.3 <a
-href="#x1-1010007.2.3" id="QQ2-1-111">packet decode</a></span>
+href="#x1-1020007.2.3" id="QQ2-1-112">packet decode</a></span>
<br />&#x00A0;&#x00A0;&#x00A0;<span class="subsubsectionToc" >7.2.4 <a
-href="#x1-1020007.2.4" id="QQ2-1-112">curve computation</a></span>
+href="#x1-1030007.2.4" id="QQ2-1-113">curve computation</a></span>
<br />&#x00A0;<span class="sectionToc" >8 <a
-href="#x1-1030008" id="QQ2-1-113">Residue setup and decode</a></span>
+href="#x1-1040008" id="QQ2-1-114">Residue setup and decode</a></span>
<br />&#x00A0;&#x00A0;<span class="subsectionToc" >8.1 <a
-href="#x1-1040008.1" id="QQ2-1-114">Overview</a></span>
+href="#x1-1050008.1" id="QQ2-1-115">Overview</a></span>
<br />&#x00A0;&#x00A0;<span class="subsectionToc" >8.2 <a
-href="#x1-1050008.2" id="QQ2-1-115">Residue format</a></span>
+href="#x1-1060008.2" id="QQ2-1-116">Residue format</a></span>
<br />&#x00A0;&#x00A0;<span class="subsectionToc" >8.3 <a
-href="#x1-1060008.3" id="QQ2-1-117">residue 0</a></span>
+href="#x1-1070008.3" id="QQ2-1-118">residue 0</a></span>
<br />&#x00A0;&#x00A0;<span class="subsectionToc" >8.4 <a
-href="#x1-1070008.4" id="QQ2-1-118">residue 1</a></span>
+href="#x1-1080008.4" id="QQ2-1-119">residue 1</a></span>
<br />&#x00A0;&#x00A0;<span class="subsectionToc" >8.5 <a
-href="#x1-1080008.5" id="QQ2-1-119">residue 2</a></span>
+href="#x1-1090008.5" id="QQ2-1-120">residue 2</a></span>
<br />&#x00A0;&#x00A0;<span class="subsectionToc" >8.6 <a
-href="#x1-1090008.6" id="QQ2-1-121">Residue decode</a></span>
+href="#x1-1100008.6" id="QQ2-1-122">Residue decode</a></span>
<br />&#x00A0;&#x00A0;&#x00A0;<span class="subsubsectionToc" >8.6.1 <a
-href="#x1-1100008.6.1" id="QQ2-1-122">header decode</a></span>
+href="#x1-1110008.6.1" id="QQ2-1-123">header decode</a></span>
<br />&#x00A0;&#x00A0;&#x00A0;<span class="subsubsectionToc" >8.6.2 <a
-href="#x1-1110008.6.2" id="QQ2-1-123">packet decode</a></span>
+href="#x1-1120008.6.2" id="QQ2-1-124">packet decode</a></span>
<br />&#x00A0;&#x00A0;&#x00A0;<span class="subsubsectionToc" >8.6.3 <a
-href="#x1-1120008.6.3" id="QQ2-1-124">format 0 specifics</a></span>
+href="#x1-1130008.6.3" id="QQ2-1-125">format 0 specifics</a></span>
<br />&#x00A0;&#x00A0;&#x00A0;<span class="subsubsectionToc" >8.6.4 <a
-href="#x1-1130008.6.4" id="QQ2-1-125">format 1 specifics</a></span>
+href="#x1-1140008.6.4" id="QQ2-1-126">format 1 specifics</a></span>
<br />&#x00A0;&#x00A0;&#x00A0;<span class="subsubsectionToc" >8.6.5 <a
-href="#x1-1140008.6.5" id="QQ2-1-126">format 2 specifics</a></span>
+href="#x1-1150008.6.5" id="QQ2-1-127">format 2 specifics</a></span>
<br />&#x00A0;<span class="sectionToc" >9 <a
-href="#x1-1150009" id="QQ2-1-127">Helper equations</a></span>
+href="#x1-1160009" id="QQ2-1-128">Helper equations</a></span>
<br />&#x00A0;&#x00A0;<span class="subsectionToc" >9.1 <a
-href="#x1-1160009.1" id="QQ2-1-128">Overview</a></span>
+href="#x1-1170009.1" id="QQ2-1-129">Overview</a></span>
<br />&#x00A0;&#x00A0;<span class="subsectionToc" >9.2 <a
-href="#x1-1170009.2" id="QQ2-1-129">Functions</a></span>
+href="#x1-1180009.2" id="QQ2-1-130">Functions</a></span>
<br />&#x00A0;&#x00A0;&#x00A0;<span class="subsubsectionToc" >9.2.1 <a
-href="#x1-1180009.2.1" id="QQ2-1-130">ilog</a></span>
+href="#x1-1190009.2.1" id="QQ2-1-131">ilog</a></span>
<br />&#x00A0;&#x00A0;&#x00A0;<span class="subsubsectionToc" >9.2.2 <a
-href="#x1-1190009.2.2" id="QQ2-1-131">float32_unpack</a></span>
+href="#x1-1200009.2.2" id="QQ2-1-132">float32_unpack</a></span>
<br />&#x00A0;&#x00A0;&#x00A0;<span class="subsubsectionToc" >9.2.3 <a
-href="#x1-1200009.2.3" id="QQ2-1-132">lookup1_values</a></span>
+href="#x1-1210009.2.3" id="QQ2-1-133">lookup1_values</a></span>
<br />&#x00A0;&#x00A0;&#x00A0;<span class="subsubsectionToc" >9.2.4 <a
-href="#x1-1210009.2.4" id="QQ2-1-133">low_neighbor</a></span>
+href="#x1-1220009.2.4" id="QQ2-1-134">low_neighbor</a></span>
<br />&#x00A0;&#x00A0;&#x00A0;<span class="subsubsectionToc" >9.2.5 <a
-href="#x1-1220009.2.5" id="QQ2-1-134">high_neighbor</a></span>
+href="#x1-1230009.2.5" id="QQ2-1-135">high_neighbor</a></span>
<br />&#x00A0;&#x00A0;&#x00A0;<span class="subsubsectionToc" >9.2.6 <a
-href="#x1-1230009.2.6" id="QQ2-1-135">render_point</a></span>
+href="#x1-1240009.2.6" id="QQ2-1-136">render_point</a></span>
<br />&#x00A0;&#x00A0;&#x00A0;<span class="subsubsectionToc" >9.2.7 <a
-href="#x1-1240009.2.7" id="QQ2-1-136">render_line</a></span>
+href="#x1-1250009.2.7" id="QQ2-1-137">render_line</a></span>
<br />&#x00A0;<span class="sectionToc" >10 <a
-href="#x1-12500010" id="QQ2-1-137">Tables</a></span>
+href="#x1-12600010" id="QQ2-1-138">Tables</a></span>
<br />&#x00A0;&#x00A0;<span class="subsectionToc" >10.1 <a
-href="#x1-12600010.1" id="QQ2-1-138">floor1_inverse_dB_table</a></span>
+href="#x1-12700010.1" id="QQ2-1-139">floor1_inverse_dB_table</a></span>
<br />&#x00A0;<span class="sectionToc" >A <a
-href="#x1-127000A" id="QQ2-1-139">Embedding Vorbis into an Ogg stream</a></span>
+href="#x1-128000A" id="QQ2-1-140">Embedding Vorbis into an Ogg stream</a></span>
<br />&#x00A0;&#x00A0;<span class="subsectionToc" >A.1 <a
-href="#x1-128000A.1" id="QQ2-1-140">Overview</a></span>
+href="#x1-129000A.1" id="QQ2-1-141">Overview</a></span>
<br />&#x00A0;&#x00A0;&#x00A0;<span class="subsubsectionToc" >A.1.1 <a
-href="#x1-129000A.1.1" id="QQ2-1-141">Restrictions</a></span>
+href="#x1-130000A.1.1" id="QQ2-1-142">Restrictions</a></span>
<br />&#x00A0;&#x00A0;&#x00A0;<span class="subsubsectionToc" >A.1.2 <a
-href="#x1-130000A.1.2" id="QQ2-1-142">MIME type</a></span>
+href="#x1-131000A.1.2" id="QQ2-1-143">MIME type</a></span>
<br />&#x00A0;&#x00A0;<span class="subsectionToc" >A.2 <a
-href="#x1-131000A.2" id="QQ2-1-143">Encapsulation</a></span>
+href="#x1-132000A.2" id="QQ2-1-144">Encapsulation</a></span>
<br />&#x00A0;<span class="sectionToc" >B <a
-href="#x1-133000B" id="QQ2-1-145">Vorbis encapsulation in RTP</a></span>
+href="#x1-134000B" id="QQ2-1-146">Vorbis encapsulation in RTP</a></span>
</div>
@@ -306,9 +306,9 @@ document, we will assume that Vorbis is to be embedded in an Ogg stream specific
although this is by no means a requirement or fundamental assumption in the Vorbis
design.
<!--l. 72--><p class="noindent" >The specification for embedding Vorbis into an Ogg transport stream is in <a
-href="#x1-127000A">section&#x00A0;A</a>,
+href="#x1-128000A">section&#x00A0;A</a>,
&#8220;<a
-href="#x1-127000A">Embedding Vorbis into an Ogg stream<!--tex4ht:ref: vorbis:over:ogg --></a>&#8221;.
+href="#x1-128000A">Embedding Vorbis into an Ogg stream<!--tex4ht:ref: vorbis:over:ogg --></a>&#8221;.
<!--l. 77--><p class="noindent" >
<h5 class="subsubsectionHead"><span class="titlemark">1.1.4. </span> <a
id="x1-70001.1.4"></a>Codec Setup and Probability Model</h5>
@@ -2358,7 +2358,7 @@ class="cmtt-8">&#x00A0;[number]</span><span
class="cmtt-8">&#x00A0;=</span><span
class="cmtt-8">&#x00A0;read</span><span
class="cmtt-8">&#x00A0;</span><a
-href="#x1-1180009.2.1"><span
+href="#x1-1190009.2.1"><span
class="cmtt-8">ilog</span></a><span
class="cmtt-8">([codebook_entries]</span><span
class="cmtt-8">&#x00A0;-</span><span
@@ -2528,7 +2528,7 @@ class="cmtt-8">&#x00A0;1)</span><span
class="cmtt-8">&#x00A0;[codebook_minimum_value]</span><span
class="cmtt-8">&#x00A0;=</span><span
class="cmtt-8">&#x00A0;</span><a
-href="#x1-1190009.2.2"><span
+href="#x1-1200009.2.2"><span
class="cmtt-8">float32_unpack</span></a><span
class="cmtt-8">(</span><span
class="cmtt-8">&#x00A0;read</span><span
@@ -2548,7 +2548,7 @@ class="cmtt-8">&#x00A0;2)</span><span
class="cmtt-8">&#x00A0;[codebook_delta_value]</span><span
class="cmtt-8">&#x00A0;=</span><span
class="cmtt-8">&#x00A0;</span><a
-href="#x1-1190009.2.2"><span
+href="#x1-1200009.2.2"><span
class="cmtt-8">float32_unpack</span></a><span
class="cmtt-8">(</span><span
class="cmtt-8">&#x00A0;read</span><span
@@ -2629,7 +2629,7 @@ class="cmtt-8">&#x00A0;5)</span><span
class="cmtt-8">&#x00A0;[codebook_lookup_values]</span><span
class="cmtt-8">&#x00A0;=</span><span
class="cmtt-8">&#x00A0;</span><a
-href="#x1-1200009.2.3"><span
+href="#x1-1210009.2.3"><span
class="cmtt-8">lookup1_values</span></a><span
class="cmtt-8">([codebook_entries],</span><span
class="cmtt-8">&#x00A0;[codebook_dimensions]</span><span
@@ -3803,9 +3803,9 @@ class="cmtt-12">[vorbis_floor_configurations]</span>.
</dd><dt class="enumerate-enumitem">
c) </dt><dd
class="enumerate-enumitem">If the floor type is one, decode the floor configuration as defined in <a
-href="#x1-960007">section&#x00A0;7</a>,
+href="#x1-970007">section&#x00A0;7</a>,
&#8220;<a
-href="#x1-960007">Floor type 1 setup and decode<!--tex4ht:ref: vorbis:spec:floor1 --></a>&#8221;; save this configuration in slot <span
+href="#x1-970007">Floor type 1 setup and decode<!--tex4ht:ref: vorbis:spec:floor1 --></a>&#8221;; save this configuration in slot <span
class="cmtt-12">[i] </span>of the floor
configuration array <span
class="cmtt-12">[vorbis_floor_configurations]</span>.
@@ -3840,8 +3840,8 @@ class="cmtt-12">[i] </span>= read 16
b) </dt><dd
class="enumerate-enumitem">If the residue type is zero, one or two, decode the residue configuration as defined
in <a
-href="#x1-1030008">section&#x00A0;8</a>, &#8220;<a
-href="#x1-1030008">Residue setup and decode<!--tex4ht:ref: vorbis:spec:residue --></a>&#8221;; save this configuration in slot <span
+href="#x1-1040008">section&#x00A0;8</a>, &#8220;<a
+href="#x1-1040008">Residue setup and decode<!--tex4ht:ref: vorbis:spec:residue --></a>&#8221;; save this configuration in slot <span
class="cmtt-12">[i] </span>of
the residue configuration array <span
class="cmtt-12">[vorbis_residue_configurations]</span>.
@@ -3910,14 +3910,14 @@ class="cmtt-12">[vorbis_mapping_coupling_steps] </span>steps:
class="cmtt-12">[vorbis_mapping_magnitude] </span>element <span
class="cmtt-12">[j]</span>= read
<a
-href="#x1-1180009.2.1">ilog</a>(<span
+href="#x1-1190009.2.1">ilog</a>(<span
class="cmtt-12">[audio_channels] </span>- 1) bits as unsigned integer
</li>
<li class="itemize">vector <span
class="cmtt-12">[vorbis_mapping_angle] </span>element <span
class="cmtt-12">[j]</span>= read
<a
-href="#x1-1180009.2.1">ilog</a>(<span
+href="#x1-1190009.2.1">ilog</a>(<span
class="cmtt-12">[audio_channels] </span>- 1) bits as unsigned integer
</li>
<li class="itemize">the numbers read in the above two steps are channel numbers
@@ -4070,7 +4070,7 @@ class="cmtt-12">[packet_type]</span>; check that packet type is 0 (audio)
</dd><dt class="enumerate-enumitem">
2. </dt><dd
class="enumerate-enumitem">read <a
-href="#x1-1180009.2.1">ilog</a>([vorbis_mode_count]-1) bits <span
+href="#x1-1190009.2.1">ilog</a>([vorbis_mode_count]-1) bits <span
class="cmtt-12">[mode_number]</span>
</dd><dt class="enumerate-enumitem">
3. </dt><dd
@@ -4326,8 +4326,8 @@ href="#x1-940006.2.2">packet decode<!--tex4ht:ref: vorbis:spec:floor0-decode -->
class="enumerate-enumitem">if the type of this floor is one then decode the floor for channel <span
class="cmtt-12">[i] </span>according to the
<a
-href="#x1-1010007.2.3">subsubsection&#x00A0;7.2.3</a>, &#8220;<a
-href="#x1-1010007.2.3">packet decode<!--tex4ht:ref: vorbis:spec:floor1-decode --></a>&#8221;
+href="#x1-1020007.2.3">subsubsection&#x00A0;7.2.3</a>, &#8220;<a
+href="#x1-1020007.2.3">packet decode<!--tex4ht:ref: vorbis:spec:floor1-decode --></a>&#8221;
</dd><dt class="enumerate-enumitem">
5. </dt><dd
class="enumerate-enumitem">save the needed decoded floor information for channel for later synthesis
@@ -5340,7 +5340,7 @@ class="cmtt-8">&#x00A0;unsigned</span><span
class="cmtt-8">&#x00A0;integer</span><span
class="cmtt-8">&#x00A0;of</span><span
class="cmtt-8">&#x00A0;</span><a
-href="#x1-1180009.2.1"><span
+href="#x1-1190009.2.1"><span
class="cmtt-8">ilog</span></a><span
class="cmtt-8">(</span><span
class="cmtt-8">&#x00A0;[floor0_number_of_books]</span><span
@@ -5546,7 +5546,7 @@ class="cmtt-12">[amplitude] </span>value of zero must result in a return code th
class="cmtt-12">[amplitude] </span>value had read zero at the beginning of decode.
</li>
<li class="itemize">The book number used for decode can, in fact, be stored in the bitstream in <a
-href="#x1-1180009.2.1">ilog</a>(
+href="#x1-1190009.2.1">ilog</a>(
<span
class="cmtt-12">[floor0_number_of_books] </span>- 1 ) bits. Nevertheless, the above specification is correct
and values greater than the maximum possible book value are reserved.
@@ -5601,7 +5601,7 @@ f oobar = bark 2n &#x22C5; bark(.5 &#x22C5; floor0_rate )
<center class="par-math-display" >
<img
src="Vorbis_I_spec9x.png" alt=" 2
-bark(x) = 13.1arctan (.00074x ) + 2.24 arctan(.0000000185x + .0001x )
+bark(x) = 13.1arctan (.00074x ) + 2.24 arctan(.0000000185x ) + .0001x
" class="par-math-display" ></center>
<!--l. 143--><p class="nopar" >
<!--l. 145--><p class="noindent" >The above is used to synthesize the LSP curve on a Bark-scale frequency axis, then map the
@@ -5710,6 +5710,24 @@ class="cmtt-12">[n] </span>) continue at step 2
</dd><dt class="enumerate-enumitem">
10. </dt><dd
class="enumerate-enumitem">done</dd></dl>
+<!--l. 187--><p class="noindent" ><span class="paragraphHead"><a
+ id="x1-960006.2.3"></a><span
+class="cmbx-12">Errata 20150227: Bark scale computation</span></span>
+Due to a typo when typesetting this version of the specification from the original HTML
+document, the Bark scale computation previously erroneously read:
+<center class="par-math-display" >
+<img
+src="Vorbis_I_spec13x.png" alt=" 2
+bark(x) = 13.1arctan (.00074x ) + 2.24 arctan(.0000000185x + .0001x )
+" class="par-math-display" ></center>
+<!--l. 195--><p class="nopar" >
+<!--l. 197--><p class="noindent" >Note that the last parenthesis is misplaced. This document now uses the correct equation as it
+appeared in the original HTML spec document:
+<center class="par-math-display" >
+<img
+src="Vorbis_I_spec14x.png" alt="bark(x) = 13.1arctan (.00074x ) + 2.24 arctan(.0000000185x2 ) + .0001x
+" class="par-math-display" ></center>
+<!--l. 201--><p class="nopar" >
@@ -5717,20 +5735,20 @@ class="enumerate-enumitem">done</dd></dl>
<h3 class="sectionHead"><span class="titlemark">7. </span> <a
- id="x1-960007"></a>Floor type 1 setup and decode</h3>
+ id="x1-970007"></a>Floor type 1 setup and decode</h3>
<!--l. 6--><p class="noindent" >
<h4 class="subsectionHead"><span class="titlemark">7.1. </span> <a
- id="x1-970007.1"></a>Overview</h4>
+ id="x1-980007.1"></a>Overview</h4>
<!--l. 8--><p class="noindent" >Vorbis floor type one uses a piecewise straight-line representation to encode a spectral envelope
curve. The representation plots this curve mechanically on a linear frequency axis and a
logarithmic (dB) amplitude axis. The integer plotting algorithm used is similar to Bresenham&#8217;s
algorithm.
<!--l. 16--><p class="noindent" >
<h4 class="subsectionHead"><span class="titlemark">7.2. </span> <a
- id="x1-980007.2"></a>Floor 1 format</h4>
+ id="x1-990007.2"></a>Floor 1 format</h4>
<!--l. 18--><p class="noindent" >
<h5 class="subsubsectionHead"><span class="titlemark">7.2.1. </span> <a
- id="x1-990007.2.1"></a>model</h5>
+ id="x1-1000007.2.1"></a>model</h5>
<!--l. 20--><p class="noindent" >Floor type one represents a spectral curve as a series of line segments. Synthesis constructs a
floor curve using iterative prediction in a process roughly equivalent to the following simplified
description:
@@ -5771,7 +5789,7 @@ src="floor1-1.png" alt="PIC"
>
<br /> <div class="caption"
><span class="id">Figure&#x00A0;7: </span><span
-class="content">graph of example floor</span></div><!--tex4ht:label?: x1-990017 -->
+class="content">graph of example floor</span></div><!--tex4ht:label?: x1-1000017 -->
</div>
<!--l. 64--><p class="noindent" >We now draw new logical lines to reflect the correction to new&#x02D9;Y, and iterate for X positions 32
and 96:
@@ -5784,7 +5802,7 @@ src="floor1-2.png" alt="PIC"
>
<br /> <div class="caption"
><span class="id">Figure&#x00A0;8: </span><span
-class="content">graph of example floor</span></div><!--tex4ht:label?: x1-990028 -->
+class="content">graph of example floor</span></div><!--tex4ht:label?: x1-1000028 -->
</div>
<!--l. 72--><p class="noindent" >Although the new Y value at X position 96 is unchanged, it is still used later as an endpoint for
further refinement. From here on, the pattern should be clear; we complete the floor computation
@@ -5801,7 +5819,7 @@ src="floor1-3.png" alt="PIC"
>
<br /> <div class="caption"
><span class="id">Figure&#x00A0;9: </span><span
-class="content">graph of example floor</span></div><!--tex4ht:label?: x1-990039 -->
+class="content">graph of example floor</span></div><!--tex4ht:label?: x1-1000039 -->
</div>
<div class="center"
>
@@ -5812,7 +5830,7 @@ src="floor1-4.png" alt="PIC"
>
<br /> <div class="caption"
><span class="id">Figure&#x00A0;10: </span><span
-class="content">graph of example floor</span></div><!--tex4ht:label?: x1-9900410 -->
+class="content">graph of example floor</span></div><!--tex4ht:label?: x1-10000410 -->
</div>
<!--l. 86--><p class="noindent" >A more efficient algorithm with carefully defined integer rounding behavior is used for actual
decode, as described later. The actual algorithm splits Y value computation and line plotting
@@ -5820,7 +5838,7 @@ into two steps with modifications to the above algorithm to eliminate noise accu
through integer roundoff/truncation.
<!--l. 94--><p class="noindent" >
<h5 class="subsubsectionHead"><span class="titlemark">7.2.2. </span> <a
- id="x1-1000007.2.2"></a>header decode</h5>
+ id="x1-1010007.2.2"></a>header decode</h5>
<!--l. 96--><p class="noindent" >A list of floor X values is stored in the packet header in interleaved format (used in list order
during packet decode and synthesis). This list is split into partitions, and each partition is
assigned to a partition class. X positions 0 and [n] are implicit and do not belong to an explicit
@@ -5837,11 +5855,11 @@ context.
<!--l. 112--><p class="noindent" >
<div class="fancyvrb" id="fancyvrb28"><a
- id="x1-100002r1"></a><span
+ id="x1-101002r1"></a><span
class="cmr-6">1</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><br class="fancyvrb" /><a
- id="x1-100004r2"></a><span
+ id="x1-101004r2"></a><span
class="cmr-6">2</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -5855,7 +5873,7 @@ class="cmtt-8">&#x00A0;bits</span><span
class="cmtt-8">&#x00A0;as</span><span
class="cmtt-8">&#x00A0;unsigned</span><span
class="cmtt-8">&#x00A0;integer</span><br class="fancyvrb" /><a
- id="x1-100006r3"></a><span
+ id="x1-101006r3"></a><span
class="cmr-6">3</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -5864,7 +5882,7 @@ class="cmtt-8">&#x00A0;2)</span><span
class="cmtt-8">&#x00A0;[maximum_class]</span><span
class="cmtt-8">&#x00A0;=</span><span
class="cmtt-8">&#x00A0;-1</span><br class="fancyvrb" /><a
- id="x1-100008r4"></a><span
+ id="x1-101008r4"></a><span
class="cmr-6">4</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -5881,11 +5899,11 @@ class="cmtt-8">&#x00A0;[floor1_partitions]-1</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmsy-8">{</span>
<br class="fancyvrb" /><a
- id="x1-100010r5"></a><span
+ id="x1-101010r5"></a><span
class="cmr-6">5</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><br class="fancyvrb" /><a
- id="x1-100012r6"></a><span
+ id="x1-101012r6"></a><span
class="cmr-6">6</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -5908,11 +5926,11 @@ class="cmtt-8">&#x00A0;bits</span><span
class="cmtt-8">&#x00A0;as</span><span
class="cmtt-8">&#x00A0;unsigned</span><span
class="cmtt-8">&#x00A0;integer</span><br class="fancyvrb" /><a
- id="x1-100014r7"></a><span
+ id="x1-101014r7"></a><span
class="cmr-6">7</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><br class="fancyvrb" /><a
- id="x1-100016r8"></a><span
+ id="x1-101016r8"></a><span
class="cmr-6">8</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -5922,12 +5940,12 @@ class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmsy-8">}</span><br class="fancyvrb" /><a
- id="x1-100018r9"></a><span
+ id="x1-101018r9"></a><span
class="cmr-6">9</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span>
<br class="fancyvrb" /><a
- id="x1-100020r10"></a><span
+ id="x1-101020r10"></a><span
class="cmr-6">10</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -5942,7 +5960,7 @@ class="cmtt-8">&#x00A0;value</span><span
class="cmtt-8">&#x00A0;in</span><span
class="cmtt-8">&#x00A0;vector</span><span
class="cmtt-8">&#x00A0;[floor1_partition_class_list]</span><br class="fancyvrb" /><a
- id="x1-100022r11"></a><span
+ id="x1-101022r11"></a><span
class="cmr-6">11</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -5959,11 +5977,11 @@ class="cmtt-8">&#x00A0;[maximum_class]</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmsy-8">{</span>
<br class="fancyvrb" /><a
- id="x1-100024r12"></a><span
+ id="x1-101024r12"></a><span
class="cmr-6">12</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><br class="fancyvrb" /><a
- id="x1-100026r13"></a><span
+ id="x1-101026r13"></a><span
class="cmr-6">13</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -5990,7 +6008,7 @@ class="cmtt-8">&#x00A0;and</span><span
class="cmtt-8">&#x00A0;add</span><span
class="cmtt-8">&#x00A0;1</span>
<br class="fancyvrb" /><a
- id="x1-100028r14"></a><span
+ id="x1-101028r14"></a><span
class="cmr-6">14</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0; 8)</span><span
@@ -6006,7 +6024,7 @@ class="cmtt-8">&#x00A0;as</span><span
class="cmtt-8">&#x00A0;unsigned</span><span
class="cmtt-8">&#x00A0;integer</span>
<br class="fancyvrb" /><a
- id="x1-100030r15"></a><span
+ id="x1-101030r15"></a><span
class="cmr-6">15</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -6029,12 +6047,12 @@ class="cmtt-8">&#x00A0;nonzero</span><span
class="cmtt-8">&#x00A0;)</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmsy-8">{</span><br class="fancyvrb" /><a
- id="x1-100032r16"></a><span
+ id="x1-101032r16"></a><span
class="cmr-6">16</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span>
<br class="fancyvrb" /><a
- id="x1-100034r17"></a><span
+ id="x1-101034r17"></a><span
class="cmr-6">17</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -6062,11 +6080,11 @@ class="cmtt-8">&#x00A0;bits</span><span
class="cmtt-8">&#x00A0;as</span><span
class="cmtt-8">&#x00A0;unsigned</span><span
class="cmtt-8">&#x00A0;integer</span><br class="fancyvrb" /><a
- id="x1-100036r18"></a><span
+ id="x1-101036r18"></a><span
class="cmr-6">18</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><br class="fancyvrb" /><a
- id="x1-100038r19"></a><span
+ id="x1-101038r19"></a><span
class="cmr-6">19</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -6082,12 +6100,12 @@ class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmsy-8">}</span><br class="fancyvrb" /><a
- id="x1-100040r20"></a><span
+ id="x1-101040r20"></a><span
class="cmr-6">20</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span>
<br class="fancyvrb" /><a
- id="x1-100042r21"></a><span
+ id="x1-101042r21"></a><span
class="cmr-6">21</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -6114,12 +6132,12 @@ class="cmtt-8">&#x00A0;-</span><span
class="cmtt-8">&#x00A0;1</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmsy-8">{</span><br class="fancyvrb" /><a
- id="x1-100044r22"></a><span
+ id="x1-101044r22"></a><span
class="cmr-6">22</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span>
<br class="fancyvrb" /><a
- id="x1-100046r23"></a><span
+ id="x1-101046r23"></a><span
class="cmr-6">23</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -6141,7 +6159,7 @@ class="cmtt-8">&#x00A0;[floor1_subclass_books]</span><span
class="cmtt-8">&#x00A0;element</span><span
class="cmtt-8">&#x00A0;[i],[j]</span><span
class="cmtt-8">&#x00A0;=</span><br class="fancyvrb" /><a
- id="x1-100048r24"></a><span
+ id="x1-101048r24"></a><span
class="cmr-6">24</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -6170,7 +6188,7 @@ class="cmtt-8">&#x00A0;integer</span><span
class="cmtt-8">&#x00A0;and</span><span
class="cmtt-8">&#x00A0;subtract</span><span
class="cmtt-8">&#x00A0;one</span><br class="fancyvrb" /><a
- id="x1-100050r25"></a><span
+ id="x1-101050r25"></a><span
class="cmr-6">25</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -6187,7 +6205,7 @@ class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmsy-8">}</span>
<br class="fancyvrb" /><a
- id="x1-100052r26"></a><span
+ id="x1-101052r26"></a><span
class="cmr-6">26</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -6198,11 +6216,11 @@ class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmsy-8">}</span><br class="fancyvrb" /><a
- id="x1-100054r27"></a><span
+ id="x1-101054r27"></a><span
class="cmr-6">27</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><br class="fancyvrb" /><a
- id="x1-100056r28"></a><span
+ id="x1-101056r28"></a><span
class="cmr-6">28</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -6218,7 +6236,7 @@ class="cmtt-8">&#x00A0;integer</span><span
class="cmtt-8">&#x00A0;and</span><span
class="cmtt-8">&#x00A0;add</span><span
class="cmtt-8">&#x00A0;one</span><br class="fancyvrb" /><a
- id="x1-100058r29"></a><span
+ id="x1-101058r29"></a><span
class="cmr-6">29</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -6232,7 +6250,7 @@ class="cmtt-8">&#x00A0;as</span><span
class="cmtt-8">&#x00A0;unsigned</span><span
class="cmtt-8">&#x00A0;integer</span>
<br class="fancyvrb" /><a
- id="x1-100060r30"></a><span
+ id="x1-101060r30"></a><span
class="cmr-6">30</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -6243,7 +6261,7 @@ class="cmtt-8">&#x00A0;element</span><span
class="cmtt-8">&#x00A0;[0]</span><span
class="cmtt-8">&#x00A0;=</span><span
class="cmtt-8">&#x00A0;0</span><br class="fancyvrb" /><a
- id="x1-100062r31"></a><span
+ id="x1-101062r31"></a><span
class="cmr-6">31</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -6257,7 +6275,7 @@ class="cmtt-8">&#x00A0;2</span><span
class="cmtt-8">&#x00A0;exponent</span><span
class="cmtt-8">&#x00A0;[rangebits];</span>
<br class="fancyvrb" /><a
- id="x1-100064r32"></a><span
+ id="x1-101064r32"></a><span
class="cmr-6">32</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -6265,7 +6283,7 @@ class="cmtt-8">&#x00A0;17)</span><span
class="cmtt-8">&#x00A0;[floor1_values]</span><span
class="cmtt-8">&#x00A0;=</span><span
class="cmtt-8">&#x00A0;2</span><br class="fancyvrb" /><a
- id="x1-100066r33"></a><span
+ id="x1-101066r33"></a><span
class="cmr-6">33</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -6281,11 +6299,11 @@ class="cmtt-8">&#x00A0;[floor1_partitions]-1</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmsy-8">{</span>
<br class="fancyvrb" /><a
- id="x1-100068r34"></a><span
+ id="x1-101068r34"></a><span
class="cmr-6">34</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><br class="fancyvrb" /><a
- id="x1-100070r35"></a><span
+ id="x1-101070r35"></a><span
class="cmr-6">35</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -6303,7 +6321,7 @@ class="cmtt-8">&#x00A0;[floor1_partition_class_list]</span><span
class="cmtt-8">&#x00A0;element</span><span
class="cmtt-8">&#x00A0;[i]</span>
<br class="fancyvrb" /><a
- id="x1-100072r36"></a><span
+ id="x1-101072r36"></a><span
class="cmr-6">36</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -6327,7 +6345,7 @@ class="cmtt-8">&#x00A0;[current_class_number])-1</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmsy-8">{</span>
<br class="fancyvrb" /><a
- id="x1-100074r37"></a><span
+ id="x1-101074r37"></a><span
class="cmr-6">37</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -6349,7 +6367,7 @@ class="cmtt-8">&#x00A0;[floor1_X_list]</span><span
class="cmtt-8">&#x00A0;element</span><span
class="cmtt-8">&#x00A0;([floor1_values])</span><span
class="cmtt-8">&#x00A0;=</span><br class="fancyvrb" /><a
- id="x1-100076r38"></a><span
+ id="x1-101076r38"></a><span
class="cmr-6">38</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -6376,7 +6394,7 @@ class="cmtt-8">&#x00A0;as</span><span
class="cmtt-8">&#x00A0;unsigned</span><span
class="cmtt-8">&#x00A0;integer</span>
<br class="fancyvrb" /><a
- id="x1-100078r39"></a><span
+ id="x1-101078r39"></a><span
class="cmr-6">39</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -6397,7 +6415,7 @@ class="cmtt-8">&#x00A0;increment</span><span
class="cmtt-8">&#x00A0;[floor1_values]</span><span
class="cmtt-8">&#x00A0;by</span><span
class="cmtt-8">&#x00A0;one</span><br class="fancyvrb" /><a
- id="x1-100080r40"></a><span
+ id="x1-101080r40"></a><span
class="cmr-6">40</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -6413,7 +6431,7 @@ class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmsy-8">}</span><br class="fancyvrb" /><a
- id="x1-100082r41"></a><span
+ id="x1-101082r41"></a><span
class="cmr-6">41</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -6423,11 +6441,11 @@ class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmsy-8">}</span><br class="fancyvrb" /><a
- id="x1-100084r42"></a><span
+ id="x1-101084r42"></a><span
class="cmr-6">42</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><br class="fancyvrb" /><a
- id="x1-100086r43"></a><span
+ id="x1-101086r43"></a><span
class="cmr-6">43</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -6445,12 +6463,12 @@ undecodable. All vector [floor1_x_list] element values must be unique within the
non-unique value renders the stream undecodable.
<!--l. 170--><p class="noindent" >
<h5 class="subsubsectionHead"><span class="titlemark">7.2.3. </span> <a
- id="x1-1010007.2.3"></a>packet decode</h5>
+ id="x1-1020007.2.3"></a>packet decode</h5>
<!--l. 172--><p class="noindent" >Packet decode begins by checking the <span
class="cmtt-12">[nonzero] </span>flag:
<!--l. 174--><p class="noindent" >
<div class="fancyvrb" id="fancyvrb29"><a
- id="x1-101002r1"></a><span
+ id="x1-102002r1"></a><span
class="cmr-6">1</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -6473,7 +6491,7 @@ points set to minimum representation amplitude, which happens to be approximatel
class="cmtt-12">[nonzero] </span>is set, decode proceeds as follows:
<!--l. 188--><p class="noindent" >
<div class="fancyvrb" id="fancyvrb30"><a
- id="x1-101004r1"></a><span
+ id="x1-102004r1"></a><span
class="cmr-6">1</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -6496,7 +6514,7 @@ class="cmtt-8">&#x00A0;([floor1_multiplier]-1)</span>
<br class="fancyvrb" /><a
- id="x1-101006r2"></a><span
+ id="x1-102006r2"></a><span
class="cmr-6">2</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -6509,7 +6527,7 @@ class="cmtt-8">&#x00A0;[0]</span><span
class="cmtt-8">&#x00A0;=</span><span
class="cmtt-8">&#x00A0;read</span><span
class="cmtt-8">&#x00A0;</span><a
-href="#x1-1180009.2.1"><span
+href="#x1-1190009.2.1"><span
class="cmtt-8">ilog</span></a><span
class="cmtt-8">([range]-1)</span><span
class="cmtt-8">&#x00A0;bits</span><span
@@ -6517,7 +6535,7 @@ class="cmtt-8">&#x00A0;as</span><span
class="cmtt-8">&#x00A0;unsigned</span><span
class="cmtt-8">&#x00A0;integer</span>
<br class="fancyvrb" /><a
- id="x1-101008r3"></a><span
+ id="x1-102008r3"></a><span
class="cmr-6">3</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -6530,7 +6548,7 @@ class="cmtt-8">&#x00A0;[1]</span><span
class="cmtt-8">&#x00A0;=</span><span
class="cmtt-8">&#x00A0;read</span><span
class="cmtt-8">&#x00A0;</span><a
-href="#x1-1180009.2.1"><span
+href="#x1-1190009.2.1"><span
class="cmtt-8">ilog</span></a><span
class="cmtt-8">([range]-1)</span><span
class="cmtt-8">&#x00A0;bits</span><span
@@ -6538,7 +6556,7 @@ class="cmtt-8">&#x00A0;as</span><span
class="cmtt-8">&#x00A0;unsigned</span><span
class="cmtt-8">&#x00A0;integer</span>
<br class="fancyvrb" /><a
- id="x1-101010r4"></a><span
+ id="x1-102010r4"></a><span
class="cmr-6">4</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -6547,7 +6565,7 @@ class="cmtt-8">&#x00A0;4)</span><span
class="cmtt-8">&#x00A0;[offset]</span><span
class="cmtt-8">&#x00A0;=</span><span
class="cmtt-8">&#x00A0;2;</span><br class="fancyvrb" /><a
- id="x1-101012r5"></a><span
+ id="x1-102012r5"></a><span
class="cmr-6">5</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -6563,12 +6581,12 @@ class="cmtt-8">&#x00A0;...</span><span
class="cmtt-8">&#x00A0;[floor1_partitions]-1</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmsy-8">{</span><br class="fancyvrb" /><a
- id="x1-101014r6"></a><span
+ id="x1-102014r6"></a><span
class="cmr-6">6</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span>
<br class="fancyvrb" /><a
- id="x1-101016r7"></a><span
+ id="x1-102016r7"></a><span
class="cmr-6">7</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -6586,7 +6604,7 @@ class="cmtt-8">&#x00A0;[floor1_partition_class]</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;element</span><span
class="cmtt-8">&#x00A0;[i]</span><br class="fancyvrb" /><a
- id="x1-101018r8"></a><span
+ id="x1-102018r8"></a><span
class="cmr-6">8</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -6605,7 +6623,7 @@ class="cmtt-8">&#x00A0;[floor1_class_dimensions]</span><span
class="cmtt-8">&#x00A0;element</span><span
class="cmtt-8">&#x00A0;[class]</span>
<br class="fancyvrb" /><a
- id="x1-101020r9"></a><span
+ id="x1-102020r9"></a><span
class="cmr-6">9</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -6622,7 +6640,7 @@ class="cmtt-8">&#x00A0;vector</span><span
class="cmtt-8">&#x00A0;[floor1_class_subclasses]</span><span
class="cmtt-8">&#x00A0;element</span><span
class="cmtt-8">&#x00A0;[class]</span><br class="fancyvrb" /><a
- id="x1-101022r10"></a><span
+ id="x1-102022r10"></a><span
class="cmr-6">10</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -6639,7 +6657,7 @@ class="cmtt-8">&#x00A0;=</span><span
class="cmtt-8">&#x00A0;(2</span><span
class="cmtt-8">&#x00A0;exponent</span><span
class="cmtt-8">&#x00A0;[cbits])-1</span><br class="fancyvrb" /><a
- id="x1-101024r11"></a><span
+ id="x1-102024r11"></a><span
class="cmr-6">11</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -6654,7 +6672,7 @@ class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;=</span><span
class="cmtt-8">&#x00A0;0</span>
<br class="fancyvrb" /><a
- id="x1-101026r12"></a><span
+ id="x1-102026r12"></a><span
class="cmr-6">12</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -6674,11 +6692,11 @@ class="cmtt-8">&#x00A0;zero</span><span
class="cmtt-8">&#x00A0;)</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmsy-8">{</span><br class="fancyvrb" /><a
- id="x1-101028r13"></a><span
+ id="x1-102028r13"></a><span
class="cmr-6">13</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><br class="fancyvrb" /><a
- id="x1-101030r14"></a><span
+ id="x1-102030r14"></a><span
class="cmr-6">14</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -6704,7 +6722,7 @@ class="cmtt-8">&#x00A0;using</span><span
class="cmtt-8">&#x00A0;codebook</span><span
class="cmtt-8">&#x00A0;number</span>
<br class="fancyvrb" /><a
- id="x1-101032r15"></a><span
+ id="x1-102032r15"></a><span
class="cmr-6">15</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -6732,7 +6750,7 @@ class="cmtt-8">&#x00A0;in</span><span
class="cmtt-8">&#x00A0;scalar</span><span
class="cmtt-8">&#x00A0;context</span>
<br class="fancyvrb" /><a
- id="x1-101034r16"></a><span
+ id="x1-102034r16"></a><span
class="cmr-6">16</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -6747,11 +6765,11 @@ class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmsy-8">}</span><br class="fancyvrb" /><a
- id="x1-101036r17"></a><span
+ id="x1-102036r17"></a><span
class="cmr-6">17</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><br class="fancyvrb" /><a
- id="x1-101038r18"></a><span
+ id="x1-102038r18"></a><span
class="cmr-6">18</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -6771,12 +6789,12 @@ class="cmtt-8">&#x00A0;...</span><span
class="cmtt-8">&#x00A0;[cdim]-1</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmsy-8">{</span><br class="fancyvrb" /><a
- id="x1-101040r19"></a><span
+ id="x1-102040r19"></a><span
class="cmr-6">19</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span>
<br class="fancyvrb" /><a
- id="x1-101042r20"></a><span
+ id="x1-102042r20"></a><span
class="cmr-6">20</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -6803,7 +6821,7 @@ class="cmtt-8">&#x00A0;bitwise</span><span
class="cmtt-8">&#x00A0;AND</span><span
class="cmtt-8">&#x00A0;[csub])</span>
<br class="fancyvrb" /><a
- id="x1-101044r21"></a><span
+ id="x1-102044r21"></a><span
class="cmr-6">21</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -6827,7 +6845,7 @@ class="cmtt-8">&#x00A0;right</span><span
class="cmtt-8">&#x00A0;shifted</span><span
class="cmtt-8">&#x00A0;[cbits]</span><span
class="cmtt-8">&#x00A0;bits</span><br class="fancyvrb" /><a
- id="x1-101046r22"></a><span
+ id="x1-102046r22"></a><span
class="cmr-6">22</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0; </span><span
@@ -6847,12 +6865,12 @@ class="cmtt-8">&#x00A0;zero</span><span
class="cmtt-8">&#x00A0;)</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmsy-8">{</span><br class="fancyvrb" /><a
- id="x1-101048r23"></a><span
+ id="x1-102048r23"></a><span
class="cmr-6">23</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span>
<br class="fancyvrb" /><a
- id="x1-101050r24"></a><span
+ id="x1-102050r24"></a><span
class="cmr-6">24</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0; </span><span
@@ -6877,7 +6895,7 @@ class="cmtt-8">&#x00A0;from</span><span
class="cmtt-8">&#x00A0;packet</span><span
class="cmtt-8">&#x00A0;using</span><span
class="cmtt-8">&#x00A0;codebook</span><br class="fancyvrb" /><a
- id="x1-101052r25"></a><span
+ id="x1-102052r25"></a><span
class="cmr-6">25</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -6908,11 +6926,11 @@ class="cmtt-8">&#x00A0;in</span><span
class="cmtt-8">&#x00A0;scalar</span><span
class="cmtt-8">&#x00A0;context</span>
<br class="fancyvrb" /><a
- id="x1-101054r26"></a><span
+ id="x1-102054r26"></a><span
class="cmr-6">26</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><br class="fancyvrb" /><a
- id="x1-101056r27"></a><span
+ id="x1-102056r27"></a><span
class="cmr-6">27</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -6942,11 +6960,11 @@ class="cmtt-8">&#x00A0;than</span><span
class="cmtt-8">&#x00A0;zero</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmsy-8">{</span><br class="fancyvrb" /><a
- id="x1-101058r28"></a><span
+ id="x1-102058r28"></a><span
class="cmr-6">28</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><br class="fancyvrb" /><a
- id="x1-101060r29"></a><span
+ id="x1-102060r29"></a><span
class="cmr-6">29</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0; </span><span
@@ -6968,11 +6986,11 @@ class="cmtt-8">&#x00A0;([j]+[offset])</span><span
class="cmtt-8">&#x00A0;=</span><span
class="cmtt-8">&#x00A0;0</span>
<br class="fancyvrb" /><a
- id="x1-101062r30"></a><span
+ id="x1-102062r30"></a><span
class="cmr-6">30</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><br class="fancyvrb" /><a
- id="x1-101064r31"></a><span
+ id="x1-102064r31"></a><span
class="cmr-6">31</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -6994,7 +7012,7 @@ class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmsy-8">}</span><br class="fancyvrb" /><a
- id="x1-101066r32"></a><span
+ id="x1-102066r32"></a><span
class="cmr-6">32</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -7009,11 +7027,11 @@ class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmsy-8">}</span><br class="fancyvrb" /><a
- id="x1-101068r33"></a><span
+ id="x1-102068r33"></a><span
class="cmr-6">33</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><br class="fancyvrb" /><a
- id="x1-101070r34"></a><span
+ id="x1-102070r34"></a><span
class="cmr-6">34</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -7028,11 +7046,11 @@ class="cmtt-8">&#x00A0;=</span><span
class="cmtt-8">&#x00A0;[offset]</span><span
class="cmtt-8">&#x00A0;+</span><span
class="cmtt-8">&#x00A0;[cdim]</span><br class="fancyvrb" /><a
- id="x1-101072r35"></a><span
+ id="x1-102072r35"></a><span
class="cmr-6">35</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><br class="fancyvrb" /><a
- id="x1-101074r36"></a><span
+ id="x1-102074r36"></a><span
class="cmr-6">36</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -7042,11 +7060,11 @@ class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmsy-8">}</span><br class="fancyvrb" /><a
- id="x1-101076r37"></a><span
+ id="x1-102076r37"></a><span
class="cmr-6">37</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><br class="fancyvrb" /><a
- id="x1-101078r38"></a><span
+ id="x1-102078r38"></a><span
class="cmr-6">38</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -7060,7 +7078,7 @@ class="cmtt-12">[nonzero] </span>flag had been unset at the beginning of decode.
class="cmtt-12">[floor1_Y] </span>contains the values from packet decode needed for floor 1 synthesis.
<!--l. 240--><p class="noindent" >
<h5 class="subsubsectionHead"><span class="titlemark">7.2.4. </span> <a
- id="x1-1020007.2.4"></a>curve computation</h5>
+ id="x1-1030007.2.4"></a>curve computation</h5>
<!--l. 242--><p class="noindent" >Curve computation is split into two logical steps; the first step derives final Y amplitude values
from the encoded, wrapped difference values taken from the bitstream. The second step
plots the curve lines. Also, although zero-difference values are used in the iterative
@@ -7093,7 +7111,7 @@ class="description">
values, then apply to line prediction.
<!--l. 271--><p class="noindent" >
<div class="fancyvrb" id="fancyvrb31"><a
- id="x1-102002r1"></a><span
+ id="x1-103002r1"></a><span
class="cmr-6">1</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -7112,7 +7130,7 @@ class="cmtt-8">&#x00A0;</span><span
class="cmsy-8">}</span><span
class="cmtt-8">&#x00A0;element</span><span
class="cmtt-8">&#x00A0;([floor1_multiplier]-1)</span><br class="fancyvrb" /><a
- id="x1-102004r2"></a><span
+ id="x1-103004r2"></a><span
class="cmr-6">2</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -7125,7 +7143,7 @@ class="cmtt-8">&#x00A0;[0]</span><span
class="cmtt-8">&#x00A0;=</span><span
class="cmtt-8">&#x00A0;set</span>
<br class="fancyvrb" /><a
- id="x1-102006r3"></a><span
+ id="x1-103006r3"></a><span
class="cmr-6">3</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -7137,7 +7155,7 @@ class="cmtt-8">&#x00A0;element</span><span
class="cmtt-8">&#x00A0;[1]</span><span
class="cmtt-8">&#x00A0;=</span><span
class="cmtt-8">&#x00A0;set</span><br class="fancyvrb" /><a
- id="x1-102008r4"></a><span
+ id="x1-103008r4"></a><span
class="cmr-6">4</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -7153,7 +7171,7 @@ class="cmtt-8">&#x00A0;[floor1_Y]</span><span
class="cmtt-8">&#x00A0;element</span><span
class="cmtt-8">&#x00A0;[0]</span>
<br class="fancyvrb" /><a
- id="x1-102010r5"></a><span
+ id="x1-103010r5"></a><span
class="cmr-6">5</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -7168,7 +7186,7 @@ class="cmtt-8">&#x00A0;vector</span><span
class="cmtt-8">&#x00A0;[floor1_Y]</span><span
class="cmtt-8">&#x00A0;element</span><span
class="cmtt-8">&#x00A0;[1]</span><br class="fancyvrb" /><a
- id="x1-102012r6"></a><span
+ id="x1-103012r6"></a><span
class="cmr-6">6</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -7184,12 +7202,12 @@ class="cmtt-8">&#x00A0;...</span><span
class="cmtt-8">&#x00A0;[floor1_values]-1</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmsy-8">{</span><br class="fancyvrb" /><a
- id="x1-102014r7"></a><span
+ id="x1-103014r7"></a><span
class="cmr-6">7</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span>
<br class="fancyvrb" /><a
- id="x1-102016r8"></a><span
+ id="x1-103016r8"></a><span
class="cmr-6">8</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -7203,10 +7221,10 @@ class="cmtt-8">&#x00A0;7)</span><span
class="cmtt-8">&#x00A0;[low_neighbor_offset]</span><span
class="cmtt-8">&#x00A0;=</span><span
class="cmtt-8">&#x00A0;</span><a
-href="#x1-1210009.2.4"><span
+href="#x1-1220009.2.4"><span
class="cmtt-8">low_neighbor</span></a><span
class="cmtt-8">([floor1_X_list],[i])</span><br class="fancyvrb" /><a
- id="x1-102018r9"></a><span
+ id="x1-103018r9"></a><span
class="cmr-6">9</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -7220,15 +7238,15 @@ class="cmtt-8">&#x00A0;8)</span><span
class="cmtt-8">&#x00A0;[high_neighbor_offset]</span><span
class="cmtt-8">&#x00A0;=</span><span
class="cmtt-8">&#x00A0;</span><a
-href="#x1-1220009.2.5"><span
+href="#x1-1230009.2.5"><span
class="cmtt-8">high_neighbor</span></a><span
class="cmtt-8">([floor1_X_list],[i])</span>
<br class="fancyvrb" /><a
- id="x1-102020r10"></a><span
+ id="x1-103020r10"></a><span
class="cmr-6">10</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><br class="fancyvrb" /><a
- id="x1-102022r11"></a><span
+ id="x1-103022r11"></a><span
class="cmr-6">11</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -7242,7 +7260,7 @@ class="cmtt-8">&#x00A0;9)</span><span
class="cmtt-8">&#x00A0;[predicted]</span><span
class="cmtt-8">&#x00A0;=</span><span
class="cmtt-8">&#x00A0;</span><a
-href="#x1-1230009.2.6"><span
+href="#x1-1240009.2.6"><span
class="cmtt-8">render_point</span></a><span
class="cmtt-8">(</span><span
class="cmtt-8">&#x00A0;vector</span><span
@@ -7250,7 +7268,7 @@ class="cmtt-8">&#x00A0;[floor1_X_list]</span><span
class="cmtt-8">&#x00A0;element</span><span
class="cmtt-8">&#x00A0;[low_neighbor_offset],</span>
<br class="fancyvrb" /><a
- id="x1-102024r12"></a><span
+ id="x1-103024r12"></a><span
class="cmr-6">12</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0; </span><span
@@ -7264,7 +7282,7 @@ class="cmtt-8">&#x00A0;[floor1_final_Y]</span><span
class="cmtt-8">&#x00A0;element</span><span
class="cmtt-8">&#x00A0;[low_neighbor_offset],</span>
<br class="fancyvrb" /><a
- id="x1-102026r13"></a><span
+ id="x1-103026r13"></a><span
class="cmr-6">13</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -7310,7 +7328,7 @@ class="cmtt-8">&#x00A0;[floor1_X_list]</span><span
class="cmtt-8">&#x00A0;element</span><span
class="cmtt-8">&#x00A0;[high_neighbor_offset],</span>
<br class="fancyvrb" /><a
- id="x1-102028r14"></a><span
+ id="x1-103028r14"></a><span
class="cmr-6">14</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0; </span><span
@@ -7324,7 +7342,7 @@ class="cmtt-8">&#x00A0;[floor1_final_Y]</span><span
class="cmtt-8">&#x00A0;element</span><span
class="cmtt-8">&#x00A0;[high_neighbor_offset],</span>
<br class="fancyvrb" /><a
- id="x1-102030r15"></a><span
+ id="x1-103030r15"></a><span
class="cmr-6">15</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -7370,11 +7388,11 @@ class="cmtt-8">&#x00A0;[floor1_X_list]</span><span
class="cmtt-8">&#x00A0;element</span><span
class="cmtt-8">&#x00A0;[i]</span><span
class="cmtt-8">&#x00A0;)</span><br class="fancyvrb" /><a
- id="x1-102032r16"></a><span
+ id="x1-103032r16"></a><span
class="cmr-6">16</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><br class="fancyvrb" /><a
- id="x1-102034r17"></a><span
+ id="x1-103034r17"></a><span
class="cmr-6">17</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -7391,7 +7409,7 @@ class="cmtt-8">&#x00A0;[floor1_Y]</span><span
class="cmtt-8">&#x00A0;element</span><span
class="cmtt-8">&#x00A0;[i]</span>
<br class="fancyvrb" /><a
- id="x1-102036r18"></a><span
+ id="x1-103036r18"></a><span
class="cmr-6">18</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -7406,7 +7424,7 @@ class="cmtt-8">&#x00A0;=</span><span
class="cmtt-8">&#x00A0;[range]</span><span
class="cmtt-8">&#x00A0;-</span><span
class="cmtt-8">&#x00A0;[predicted]</span><br class="fancyvrb" /><a
- id="x1-102038r19"></a><span
+ id="x1-103038r19"></a><span
class="cmr-6">19</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -7421,7 +7439,7 @@ class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;=</span><span
class="cmtt-8">&#x00A0;[predicted]</span>
<br class="fancyvrb" /><a
- id="x1-102040r20"></a><span
+ id="x1-103040r20"></a><span
class="cmr-6">20</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -7441,11 +7459,11 @@ class="cmtt-8">&#x00A0;[lowroom]</span><span
class="cmtt-8">&#x00A0;)</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmsy-8">{</span><br class="fancyvrb" /><a
- id="x1-102042r21"></a><span
+ id="x1-103042r21"></a><span
class="cmr-6">21</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><br class="fancyvrb" /><a
- id="x1-102044r22"></a><span
+ id="x1-103044r22"></a><span
class="cmr-6">22</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -7466,12 +7484,12 @@ class="cmtt-8">&#x00A0;=</span><span
class="cmtt-8">&#x00A0;[highroom]</span><span
class="cmtt-8">&#x00A0;*</span><span
class="cmtt-8">&#x00A0;2</span><br class="fancyvrb" /><a
- id="x1-102046r23"></a><span
+ id="x1-103046r23"></a><span
class="cmr-6">23</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span>
<br class="fancyvrb" /><a
- id="x1-102048r24"></a><span
+ id="x1-103048r24"></a><span
class="cmr-6">24</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -7495,11 +7513,11 @@ class="cmtt-8">&#x00A0;than</span><span
class="cmtt-8">&#x00A0;[lowroom]</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmsy-8">{</span><br class="fancyvrb" /><a
- id="x1-102050r25"></a><span
+ id="x1-103050r25"></a><span
class="cmr-6">25</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><br class="fancyvrb" /><a
- id="x1-102052r26"></a><span
+ id="x1-103052r26"></a><span
class="cmr-6">26</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -7520,11 +7538,11 @@ class="cmtt-8">&#x00A0;=</span><span
class="cmtt-8">&#x00A0;[lowroom]</span><span
class="cmtt-8">&#x00A0;*</span><span
class="cmtt-8">&#x00A0;2</span><br class="fancyvrb" /><a
- id="x1-102054r27"></a><span
+ id="x1-103054r27"></a><span
class="cmr-6">27</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><br class="fancyvrb" /><a
- id="x1-102056r28"></a><span
+ id="x1-103056r28"></a><span
class="cmr-6">28</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -7539,12 +7557,12 @@ class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmsy-8">}</span><br class="fancyvrb" /><a
- id="x1-102058r29"></a><span
+ id="x1-103058r29"></a><span
class="cmr-6">29</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span>
<br class="fancyvrb" /><a
- id="x1-102060r30"></a><span
+ id="x1-103060r30"></a><span
class="cmr-6">30</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -7562,11 +7580,11 @@ class="cmtt-8">&#x00A0;nonzero</span><span
class="cmtt-8">&#x00A0;)</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmsy-8">{</span><br class="fancyvrb" /><a
- id="x1-102062r31"></a><span
+ id="x1-103062r31"></a><span
class="cmr-6">31</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><br class="fancyvrb" /><a
- id="x1-102064r32"></a><span
+ id="x1-103064r32"></a><span
class="cmr-6">32</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -7589,7 +7607,7 @@ class="cmtt-8">&#x00A0;[low_neighbor_offset]</span><span
class="cmtt-8">&#x00A0;=</span><span
class="cmtt-8">&#x00A0;set</span>
<br class="fancyvrb" /><a
- id="x1-102066r33"></a><span
+ id="x1-103066r33"></a><span
class="cmr-6">33</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -7612,7 +7630,7 @@ class="cmtt-8">&#x00A0;[high_neighbor_offset]</span><span
class="cmtt-8">&#x00A0;=</span><span
class="cmtt-8">&#x00A0;set</span>
<br class="fancyvrb" /><a
- id="x1-102068r34"></a><span
+ id="x1-103068r34"></a><span
class="cmr-6">34</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -7634,7 +7652,7 @@ class="cmtt-8">&#x00A0;element</span><span
class="cmtt-8">&#x00A0;[i]</span><span
class="cmtt-8">&#x00A0;=</span><span
class="cmtt-8">&#x00A0;set</span><br class="fancyvrb" /><a
- id="x1-102070r35"></a><span
+ id="x1-103070r35"></a><span
class="cmr-6">35</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -7664,11 +7682,11 @@ class="cmtt-8">&#x00A0;)</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmsy-8">{</span>
<br class="fancyvrb" /><a
- id="x1-102072r36"></a><span
+ id="x1-103072r36"></a><span
class="cmr-6">36</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><br class="fancyvrb" /><a
- id="x1-102074r37"></a><span
+ id="x1-103074r37"></a><span
class="cmr-6">37</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -7700,12 +7718,12 @@ class="cmtt-8">&#x00A0;[lowroom]</span><span
class="cmtt-8">&#x00A0;)</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmsy-8">{</span><br class="fancyvrb" /><a
- id="x1-102076r38"></a><span
+ id="x1-103076r38"></a><span
class="cmr-6">38</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span>
<br class="fancyvrb" /><a
- id="x1-102078r39"></a><span
+ id="x1-103078r39"></a><span
class="cmr-6">39</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -7744,11 +7762,11 @@ class="cmtt-8">&#x00A0;[lowroom]</span><span
class="cmtt-8">&#x00A0;+</span><span
class="cmtt-8">&#x00A0;[predicted]</span>
<br class="fancyvrb" /><a
- id="x1-102080r40"></a><span
+ id="x1-103080r40"></a><span
class="cmr-6">40</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><br class="fancyvrb" /><a
- id="x1-102082r41"></a><span
+ id="x1-103082r41"></a><span
class="cmr-6">41</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0; </span><span
@@ -7768,12 +7786,12 @@ class="cmtt-8">&#x00A0;than</span><span
class="cmtt-8">&#x00A0;[lowroom]</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmsy-8">{</span><br class="fancyvrb" /><a
- id="x1-102084r42"></a><span
+ id="x1-103084r42"></a><span
class="cmr-6">42</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span>
<br class="fancyvrb" /><a
- id="x1-102086r43"></a><span
+ id="x1-103086r43"></a><span
class="cmr-6">43</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -7814,11 +7832,11 @@ class="cmtt-8">&#x00A0;[highroom]</span><span
class="cmtt-8">&#x00A0;-</span><span
class="cmtt-8">&#x00A0;1</span>
<br class="fancyvrb" /><a
- id="x1-102088r44"></a><span
+ id="x1-103088r44"></a><span
class="cmr-6">44</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><br class="fancyvrb" /><a
- id="x1-102090r45"></a><span
+ id="x1-103090r45"></a><span
class="cmr-6">45</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -7845,11 +7863,11 @@ class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmsy-8">}</span><br class="fancyvrb" /><a
- id="x1-102092r46"></a><span
+ id="x1-103092r46"></a><span
class="cmr-6">46</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><br class="fancyvrb" /><a
- id="x1-102094r47"></a><span
+ id="x1-103094r47"></a><span
class="cmr-6">47</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -7878,12 +7896,12 @@ class="cmtt-8">&#x00A0;than</span><span
class="cmtt-8">&#x00A0;[room]</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmsy-8">{</span><br class="fancyvrb" /><a
- id="x1-102096r48"></a><span
+ id="x1-103096r48"></a><span
class="cmr-6">48</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span>
<br class="fancyvrb" /><a
- id="x1-102098r49"></a><span
+ id="x1-103098r49"></a><span
class="cmr-6">49</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -7913,11 +7931,11 @@ class="cmtt-8">&#x00A0;is</span><span
class="cmtt-8">&#x00A0;odd)</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmsy-8">{</span><br class="fancyvrb" /><a
- id="x1-102100r50"></a><span
+ id="x1-103100r50"></a><span
class="cmr-6">50</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><br class="fancyvrb" /><a
- id="x1-102102r51"></a><span
+ id="x1-103102r51"></a><span
class="cmr-6">51</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -7951,7 +7969,7 @@ class="cmtt-8">&#x00A0;element</span><span
class="cmtt-8">&#x00A0;[i]</span><span
class="cmtt-8">&#x00A0;=</span>
<br class="fancyvrb" /><a
- id="x1-102104r52"></a><span
+ id="x1-103104r52"></a><span
class="cmr-6">52</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -7994,12 +8012,12 @@ class="cmtt-8">&#x00A0;2</span><span
class="cmtt-8">&#x00A0;using</span><span
class="cmtt-8">&#x00A0;integer</span><span
class="cmtt-8">&#x00A0;division)</span><br class="fancyvrb" /><a
- id="x1-102106r53"></a><span
+ id="x1-103106r53"></a><span
class="cmr-6">53</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span>
<br class="fancyvrb" /><a
- id="x1-102108r54"></a><span
+ id="x1-103108r54"></a><span
class="cmr-6">54</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -8032,11 +8050,11 @@ class="cmtt-8">&#x00A0;is</span><span
class="cmtt-8">&#x00A0;even</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmsy-8">{</span><br class="fancyvrb" /><a
- id="x1-102110r55"></a><span
+ id="x1-103110r55"></a><span
class="cmr-6">55</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><br class="fancyvrb" /><a
- id="x1-102112r56"></a><span
+ id="x1-103112r56"></a><span
class="cmr-6">56</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -8070,7 +8088,7 @@ class="cmtt-8">&#x00A0;element</span><span
class="cmtt-8">&#x00A0;[i]</span><span
class="cmtt-8">&#x00A0;=</span>
<br class="fancyvrb" /><a
- id="x1-102114r57"></a><span
+ id="x1-103114r57"></a><span
class="cmr-6">57</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -8109,11 +8127,11 @@ class="cmtt-8">&#x00A0;2</span><span
class="cmtt-8">&#x00A0;using</span><span
class="cmtt-8">&#x00A0;integer</span><span
class="cmtt-8">&#x00A0;division)</span><br class="fancyvrb" /><a
- id="x1-102116r58"></a><span
+ id="x1-103116r58"></a><span
class="cmr-6">58</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><br class="fancyvrb" /><a
- id="x1-102118r59"></a><span
+ id="x1-103118r59"></a><span
class="cmr-6">59</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -8140,12 +8158,12 @@ class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmsy-8">}</span><br class="fancyvrb" /><a
- id="x1-102120r60"></a><span
+ id="x1-103120r60"></a><span
class="cmr-6">60</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span>
<br class="fancyvrb" /><a
- id="x1-102122r61"></a><span
+ id="x1-103122r61"></a><span
class="cmr-6">61</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -8166,11 +8184,11 @@ class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmsy-8">}</span><br class="fancyvrb" /><a
- id="x1-102124r62"></a><span
+ id="x1-103124r62"></a><span
class="cmr-6">62</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><br class="fancyvrb" /><a
- id="x1-102126r63"></a><span
+ id="x1-103126r63"></a><span
class="cmr-6">63</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -8191,11 +8209,11 @@ class="cmtt-8">&#x00A0;is</span><span
class="cmtt-8">&#x00A0;zero</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmsy-8">{</span><br class="fancyvrb" /><a
- id="x1-102128r64"></a><span
+ id="x1-103128r64"></a><span
class="cmr-6">64</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><br class="fancyvrb" /><a
- id="x1-102130r65"></a><span
+ id="x1-103130r65"></a><span
class="cmr-6">65</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -8218,7 +8236,7 @@ class="cmtt-8">&#x00A0;[i]</span><span
class="cmtt-8">&#x00A0;=</span><span
class="cmtt-8">&#x00A0;unset</span>
<br class="fancyvrb" /><a
- id="x1-102132r66"></a><span
+ id="x1-103132r66"></a><span
class="cmr-6">66</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -8240,11 +8258,11 @@ class="cmtt-8">&#x00A0;element</span><span
class="cmtt-8">&#x00A0;[i]</span><span
class="cmtt-8">&#x00A0;=</span><span
class="cmtt-8">&#x00A0;[predicted]</span><br class="fancyvrb" /><a
- id="x1-102134r67"></a><span
+ id="x1-103134r67"></a><span
class="cmr-6">67</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><br class="fancyvrb" /><a
- id="x1-102136r68"></a><span
+ id="x1-103136r68"></a><span
class="cmr-6">68</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -8259,11 +8277,11 @@ class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmsy-8">}</span><br class="fancyvrb" /><a
- id="x1-102138r69"></a><span
+ id="x1-103138r69"></a><span
class="cmr-6">69</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><br class="fancyvrb" /><a
- id="x1-102140r70"></a><span
+ id="x1-103140r70"></a><span
class="cmr-6">70</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -8273,17 +8291,17 @@ class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmsy-8">}</span><br class="fancyvrb" /><a
- id="x1-102142r71"></a><span
+ id="x1-103142r71"></a><span
class="cmr-6">71</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><br class="fancyvrb" /><a
- id="x1-102144r72"></a><span
+ id="x1-103144r72"></a><span
class="cmr-6">72</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;29)</span><span
class="cmtt-8">&#x00A0;done</span><br class="fancyvrb" /><a
- id="x1-102146r73"></a><span
+ id="x1-103146r73"></a><span
class="cmr-6">73</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span></div>
@@ -8318,7 +8336,7 @@ class="cmtt-12">[floor1_X_list] </span>and then apply the same
<!--l. 368--><p class="noindent" >Then compute the final curve in one pass:
<!--l. 370--><p class="noindent" >
<div class="fancyvrb" id="fancyvrb32"><a
- id="x1-102148r1"></a><span
+ id="x1-103148r1"></a><span
class="cmr-6">1</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -8327,7 +8345,7 @@ class="cmtt-8">&#x00A0;1)</span><span
class="cmtt-8">&#x00A0;[hx]</span><span
class="cmtt-8">&#x00A0;=</span><span
class="cmtt-8">&#x00A0;0</span><br class="fancyvrb" /><a
- id="x1-102150r2"></a><span
+ id="x1-103150r2"></a><span
class="cmr-6">2</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -8336,7 +8354,7 @@ class="cmtt-8">&#x00A0;2)</span><span
class="cmtt-8">&#x00A0;[lx]</span><span
class="cmtt-8">&#x00A0;=</span><span
class="cmtt-8">&#x00A0;0</span><br class="fancyvrb" /><a
- id="x1-102152r3"></a><span
+ id="x1-103152r3"></a><span
class="cmr-6">3</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -8351,7 +8369,7 @@ class="cmtt-8">&#x00A0;[0]</span><span
class="cmtt-8">&#x00A0;*</span><span
class="cmtt-8">&#x00A0;[floor1_multiplier]</span>
<br class="fancyvrb" /><a
- id="x1-102154r4"></a><span
+ id="x1-103154r4"></a><span
class="cmr-6">4</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -8367,11 +8385,11 @@ class="cmtt-8">&#x00A0;...</span><span
class="cmtt-8">&#x00A0;[floor1_values]-1</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmsy-8">{</span><br class="fancyvrb" /><a
- id="x1-102156r5"></a><span
+ id="x1-103156r5"></a><span
class="cmr-6">5</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><br class="fancyvrb" /><a
- id="x1-102158r6"></a><span
+ id="x1-103158r6"></a><span
class="cmr-6">6</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -8392,12 +8410,12 @@ class="cmtt-8">&#x00A0;set</span><span
class="cmtt-8">&#x00A0;)</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmsy-8">{</span><br class="fancyvrb" /><a
- id="x1-102160r7"></a><span
+ id="x1-103160r7"></a><span
class="cmr-6">7</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span>
<br class="fancyvrb" /><a
- id="x1-102162r8"></a><span
+ id="x1-103162r8"></a><span
class="cmr-6">8</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -8421,7 +8439,7 @@ class="cmtt-8">&#x00A0;element</span><span
class="cmtt-8">&#x00A0;[i]</span><span
class="cmtt-8">&#x00A0;*</span><span
class="cmtt-8">&#x00A0;[floor1_multiplier]</span><br class="fancyvrb" /><a
- id="x1-102164r9"></a><span
+ id="x1-103164r9"></a><span
class="cmr-6">9</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -8437,7 +8455,7 @@ class="cmtt-8">&#x00A0;[floor1_X_list]&#8217;</span><span
class="cmtt-8">&#x00A0;element</span><span
class="cmtt-8">&#x00A0;[i]</span>
<br class="fancyvrb" /><a
- id="x1-102166r10"></a><span
+ id="x1-103166r10"></a><span
class="cmr-6">10</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -8455,7 +8473,7 @@ class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;8)</span><span
class="cmtt-8">&#x00A0;</span><a
-href="#x1-1240009.2.7"><span
+href="#x1-1250009.2.7"><span
class="cmtt-8">render_line</span></a><span
class="cmtt-8">(</span><span
class="cmtt-8">&#x00A0;[lx],</span><span
@@ -8464,7 +8482,7 @@ class="cmtt-8">&#x00A0;[hx],</span><span
class="cmtt-8">&#x00A0;[hy],</span><span
class="cmtt-8">&#x00A0;[floor]</span><span
class="cmtt-8">&#x00A0;)</span><br class="fancyvrb" /><a
- id="x1-102168r11"></a><span
+ id="x1-103168r11"></a><span
class="cmr-6">11</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -8484,7 +8502,7 @@ class="cmtt-8">&#x00A0;9)</span><span
class="cmtt-8">&#x00A0;[lx]</span><span
class="cmtt-8">&#x00A0;=</span><span
class="cmtt-8">&#x00A0;[hx]</span><br class="fancyvrb" /><a
- id="x1-102170r12"></a><span
+ id="x1-103170r12"></a><span
class="cmr-6">12</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0; </span><span
@@ -8496,7 +8514,7 @@ class="cmtt-8">&#x00A0;[ly]</span><span
class="cmtt-8">&#x00A0;=</span><span
class="cmtt-8">&#x00A0;[hy]</span>
<br class="fancyvrb" /><a
- id="x1-102172r13"></a><span
+ id="x1-103172r13"></a><span
class="cmr-6">13</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -8511,7 +8529,7 @@ class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmsy-8">}</span><br class="fancyvrb" /><a
- id="x1-102174r14"></a><span
+ id="x1-103174r14"></a><span
class="cmr-6">14</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -8521,11 +8539,11 @@ class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmsy-8">}</span><br class="fancyvrb" /><a
- id="x1-102176r15"></a><span
+ id="x1-103176r15"></a><span
class="cmr-6">15</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><br class="fancyvrb" /><a
- id="x1-102178r16"></a><span
+ id="x1-103178r16"></a><span
class="cmr-6">16</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -8540,11 +8558,11 @@ class="cmtt-8">&#x00A0;[n]</span><span
class="cmtt-8">&#x00A0;)</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmsy-8">{</span><br class="fancyvrb" /><a
- id="x1-102180r17"></a><span
+ id="x1-103180r17"></a><span
class="cmr-6">17</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><br class="fancyvrb" /><a
- id="x1-102182r18"></a><span
+ id="x1-103182r18"></a><span
class="cmr-6">18</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -8557,7 +8575,7 @@ class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;12)</span><span
class="cmtt-8">&#x00A0;</span><a
-href="#x1-1240009.2.7"><span
+href="#x1-1250009.2.7"><span
class="cmtt-8">render_line</span></a><span
class="cmtt-8">(</span><span
class="cmtt-8">&#x00A0;[hx],</span><span
@@ -8567,11 +8585,11 @@ class="cmtt-8">&#x00A0;[hy],</span><span
class="cmtt-8">&#x00A0;[floor]</span><span
class="cmtt-8">&#x00A0;)</span>
<br class="fancyvrb" /><a
- id="x1-102184r19"></a><span
+ id="x1-103184r19"></a><span
class="cmr-6">19</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><br class="fancyvrb" /><a
- id="x1-102186r20"></a><span
+ id="x1-103186r20"></a><span
class="cmr-6">20</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -8581,11 +8599,11 @@ class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmsy-8">}</span><br class="fancyvrb" /><a
- id="x1-102188r21"></a><span
+ id="x1-103188r21"></a><span
class="cmr-6">21</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><br class="fancyvrb" /><a
- id="x1-102190r22"></a><span
+ id="x1-103190r22"></a><span
class="cmr-6">22</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -8600,11 +8618,11 @@ class="cmtt-8">&#x00A0;[n]</span><span
class="cmtt-8">&#x00A0;)</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmsy-8">{</span><br class="fancyvrb" /><a
- id="x1-102192r23"></a><span
+ id="x1-103192r23"></a><span
class="cmr-6">23</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><br class="fancyvrb" /><a
- id="x1-102194r24"></a><span
+ id="x1-103194r24"></a><span
class="cmr-6">24</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -8627,11 +8645,11 @@ class="cmtt-8">&#x00A0;to</span><span
class="cmtt-8">&#x00A0;[n]</span><span
class="cmtt-8">&#x00A0;elements</span>
<br class="fancyvrb" /><a
- id="x1-102196r25"></a><span
+ id="x1-103196r25"></a><span
class="cmr-6">25</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><br class="fancyvrb" /><a
- id="x1-102198r26"></a><span
+ id="x1-103198r26"></a><span
class="cmr-6">26</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -8641,11 +8659,11 @@ class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmsy-8">}</span><br class="fancyvrb" /><a
- id="x1-102200r27"></a><span
+ id="x1-103200r27"></a><span
class="cmr-6">27</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><br class="fancyvrb" /><a
- id="x1-102202r28"></a><span
+ id="x1-103202r28"></a><span
class="cmr-6">28</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -8665,7 +8683,7 @@ class="cmtt-8">&#x00A0;using</span>
<br class="fancyvrb" /><a
- id="x1-102204r29"></a><span
+ id="x1-103204r29"></a><span
class="cmr-6">29</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -8685,19 +8703,19 @@ class="cmtt-8">&#x00A0;into</span><span
class="cmtt-8">&#x00A0;the</span><span
class="cmtt-8">&#x00A0;vector</span><span
class="cmtt-8">&#x00A0;</span><a
-href="#x1-12600010.1"><span
+href="#x1-12700010.1"><span
class="cmtt-8">[floor1_inverse_dB_static_table]</span></a><br class="fancyvrb" /><a
- id="x1-102206r30"></a><span
+ id="x1-103206r30"></a><span
class="cmr-6">30</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><br class="fancyvrb" /><a
- id="x1-102208r31"></a><span
+ id="x1-103208r31"></a><span
class="cmr-6">31</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;16)</span><span
class="cmtt-8">&#x00A0;done</span><br class="fancyvrb" /><a
- id="x1-102210r32"></a><span
+ id="x1-103210r32"></a><span
class="cmr-6">32</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span></div>
@@ -8706,10 +8724,10 @@ class="cmtt-8">&#x00A0;</span></div>
<h3 class="sectionHead"><span class="titlemark">8. </span> <a
- id="x1-1030008"></a>Residue setup and decode</h3>
+ id="x1-1040008"></a>Residue setup and decode</h3>
<!--l. 6--><p class="noindent" >
<h4 class="subsectionHead"><span class="titlemark">8.1. </span> <a
- id="x1-1040008.1"></a>Overview</h4>
+ id="x1-1050008.1"></a>Overview</h4>
<!--l. 8--><p class="noindent" >A residue vector represents the fine detail of the audio spectrum of one channel in an audio frame
after the encoder subtracts the floor curve and performs any channel coupling. A residue vector
may represent spectral lines, spectral magnitude, spectral phase or hybrids as mixed by channel
@@ -8721,7 +8739,7 @@ different encoding variants (numbered 0, 1 and 2) of the same basic vector encod
abstraction.
<!--l. 23--><p class="noindent" >
<h4 class="subsectionHead"><span class="titlemark">8.2. </span> <a
- id="x1-1050008.2"></a>Residue format</h4>
+ id="x1-1060008.2"></a>Residue format</h4>
<!--l. 25--><p class="noindent" >Residue format partitions each vector in the vector bundle into chunks, classifies each
chunk, encodes the chunk classifications and finally encodes the chunks themselves
using the the specific VQ arrangement defined for each selected classification. The
@@ -8779,11 +8797,11 @@ src="residue-pack.png" alt="PIC"
>
<br /> <div class="caption"
><span class="id">Figure&#x00A0;11: </span><span
-class="content">illustration of residue vector format</span></div><!--tex4ht:label?: x1-10500111 -->
+class="content">illustration of residue vector format</span></div><!--tex4ht:label?: x1-10600111 -->
</div>
<!--l. 77--><p class="noindent" >
<h4 class="subsectionHead"><span class="titlemark">8.3. </span> <a
- id="x1-1060008.3"></a>residue 0</h4>
+ id="x1-1070008.3"></a>residue 0</h4>
<!--l. 79--><p class="noindent" >Residue 0 and 1 differ only in the way the values within a residue partition are interleaved during
partition encoding (visually treated as a black box&#8211;or cyan box or brown box&#8211;in the above
figure).
@@ -8798,11 +8816,11 @@ dimension.
codebook sizes of 8, 4, 2 and 1:
<!--l. 92--><p class="noindent" >
<div class="fancyvrb" id="fancyvrb33"><a
- id="x1-106002r1"></a><span
+ id="x1-107002r1"></a><span
class="cmr-6">1</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><br class="fancyvrb" /><a
- id="x1-106004r2"></a><span
+ id="x1-107004r2"></a><span
class="cmr-6">2</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -8830,11 +8848,11 @@ class="cmtt-8">&#x00A0;5</span><span
class="cmtt-8">&#x00A0;6</span><span
class="cmtt-8">&#x00A0;7</span><span
class="cmtt-8">&#x00A0;]</span><br class="fancyvrb" /><a
- id="x1-106006r3"></a><span
+ id="x1-107006r3"></a><span
class="cmr-6">3</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><br class="fancyvrb" /><a
- id="x1-106008r4"></a><span
+ id="x1-107008r4"></a><span
class="cmr-6">4</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;codebook</span><span
@@ -8854,12 +8872,12 @@ class="cmtt-8">&#x00A0;5</span><span
class="cmtt-8">&#x00A0;6</span><span
class="cmtt-8">&#x00A0;7</span><span
class="cmtt-8">&#x00A0;]</span><br class="fancyvrb" /><a
- id="x1-106010r5"></a><span
+ id="x1-107010r5"></a><span
class="cmr-6">5</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span>
<br class="fancyvrb" /><a
- id="x1-106012r6"></a><span
+ id="x1-107012r6"></a><span
class="cmr-6">6</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;codebook</span><span
@@ -8881,11 +8899,11 @@ class="cmtt-8">&#x00A0;3</span><span
class="cmtt-8">&#x00A0;5</span><span
class="cmtt-8">&#x00A0;7</span><span
class="cmtt-8">&#x00A0;]</span><br class="fancyvrb" /><a
- id="x1-106014r7"></a><span
+ id="x1-107014r7"></a><span
class="cmr-6">7</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><br class="fancyvrb" /><a
- id="x1-106016r8"></a><span
+ id="x1-107016r8"></a><span
class="cmr-6">8</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;codebook</span><span
@@ -8912,11 +8930,11 @@ class="cmtt-8">&#x00A0;3</span><span
class="cmtt-8">&#x00A0;7</span><span
class="cmtt-8">&#x00A0;]</span>
<br class="fancyvrb" /><a
- id="x1-106018r9"></a><span
+ id="x1-107018r9"></a><span
class="cmr-6">9</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><br class="fancyvrb" /><a
- id="x1-106020r10"></a><span
+ id="x1-107020r10"></a><span
class="cmr-6">10</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;codebook</span><span
@@ -8950,7 +8968,7 @@ class="cmtt-8">&#x00A0;],</span><span
class="cmtt-8">&#x00A0;[</span><span
class="cmtt-8">&#x00A0;7</span><span
class="cmtt-8">&#x00A0;]</span><br class="fancyvrb" /><a
- id="x1-106022r11"></a><span
+ id="x1-107022r11"></a><span
class="cmr-6">11</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span></div>
@@ -8958,7 +8976,7 @@ class="cmtt-8">&#x00A0;</span></div>
restricted to a power of two.
<!--l. 111--><p class="noindent" >
<h4 class="subsectionHead"><span class="titlemark">8.4. </span> <a
- id="x1-1070008.4"></a>residue 1</h4>
+ id="x1-1080008.4"></a>residue 1</h4>
<!--l. 113--><p class="noindent" >Residue 1 does not interleave VQ encoding. It represents partition vector scalars in order. As
with residue 0, however, partition length must be an integer multiple of the codebook dimension,
although dimension may vary from pass to pass.
@@ -8966,11 +8984,11 @@ although dimension may vary from pass to pass.
codebook sizes of 8, 4, 2 and 1:
<!--l. 121--><p class="noindent" >
<div class="fancyvrb" id="fancyvrb34"><a
- id="x1-107002r1"></a><span
+ id="x1-108002r1"></a><span
class="cmr-6">1</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><br class="fancyvrb" /><a
- id="x1-107004r2"></a><span
+ id="x1-108004r2"></a><span
class="cmr-6">2</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -8998,11 +9016,11 @@ class="cmtt-8">&#x00A0;5</span><span
class="cmtt-8">&#x00A0;6</span><span
class="cmtt-8">&#x00A0;7</span><span
class="cmtt-8">&#x00A0;]</span><br class="fancyvrb" /><a
- id="x1-107006r3"></a><span
+ id="x1-108006r3"></a><span
class="cmr-6">3</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><br class="fancyvrb" /><a
- id="x1-107008r4"></a><span
+ id="x1-108008r4"></a><span
class="cmr-6">4</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;codebook</span><span
@@ -9022,12 +9040,12 @@ class="cmtt-8">&#x00A0;5</span><span
class="cmtt-8">&#x00A0;6</span><span
class="cmtt-8">&#x00A0;7</span><span
class="cmtt-8">&#x00A0;]</span><br class="fancyvrb" /><a
- id="x1-107010r5"></a><span
+ id="x1-108010r5"></a><span
class="cmr-6">5</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span>
<br class="fancyvrb" /><a
- id="x1-107012r6"></a><span
+ id="x1-108012r6"></a><span
class="cmr-6">6</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;codebook</span><span
@@ -9049,11 +9067,11 @@ class="cmtt-8">&#x00A0;5</span><span
class="cmtt-8">&#x00A0;6</span><span
class="cmtt-8">&#x00A0;7</span><span
class="cmtt-8">&#x00A0;]</span><br class="fancyvrb" /><a
- id="x1-107014r7"></a><span
+ id="x1-108014r7"></a><span
class="cmr-6">7</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><br class="fancyvrb" /><a
- id="x1-107016r8"></a><span
+ id="x1-108016r8"></a><span
class="cmr-6">8</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;codebook</span><span
@@ -9080,11 +9098,11 @@ class="cmtt-8">&#x00A0;6</span><span
class="cmtt-8">&#x00A0;7</span><span
class="cmtt-8">&#x00A0;]</span>
<br class="fancyvrb" /><a
- id="x1-107018r9"></a><span
+ id="x1-108018r9"></a><span
class="cmr-6">9</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><br class="fancyvrb" /><a
- id="x1-107020r10"></a><span
+ id="x1-108020r10"></a><span
class="cmr-6">10</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;codebook</span><span
@@ -9118,13 +9136,13 @@ class="cmtt-8">&#x00A0;],</span><span
class="cmtt-8">&#x00A0;[</span><span
class="cmtt-8">&#x00A0;7</span><span
class="cmtt-8">&#x00A0;]</span><br class="fancyvrb" /><a
- id="x1-107022r11"></a><span
+ id="x1-108022r11"></a><span
class="cmr-6">11</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span></div>
<!--l. 137--><p class="noindent" >
<h4 class="subsectionHead"><span class="titlemark">8.5. </span> <a
- id="x1-1080008.5"></a>residue 2</h4>
+ id="x1-1090008.5"></a>residue 2</h4>
<!--l. 139--><p class="noindent" >Residue type two can be thought of as a variant of residue type 1. Rather than encoding multiple
passed-in vectors as in residue type 1, the <span
class="cmti-12">ch </span>passed in vectors of length <span
@@ -9146,17 +9164,17 @@ src="residue2.png" alt="PIC"
>
<br /> <div class="caption"
><span class="id">Figure&#x00A0;12: </span><span
-class="content">illustration of residue type 2</span></div><!--tex4ht:label?: x1-10800112 -->
+class="content">illustration of residue type 2</span></div><!--tex4ht:label?: x1-10900112 -->
</div>
<!--l. 153--><p class="noindent" >
<h4 class="subsectionHead"><span class="titlemark">8.6. </span> <a
- id="x1-1090008.6"></a>Residue decode</h4>
+ id="x1-1100008.6"></a>Residue decode</h4>
<!--l. 155--><p class="noindent" >
<h5 class="subsubsectionHead"><span class="titlemark">8.6.1. </span> <a
- id="x1-1100008.6.1"></a>header decode</h5>
+ id="x1-1110008.6.1"></a>header decode</h5>
<!--l. 157--><p class="noindent" >Header decode for all three residue types is identical.
<div class="fancyvrb" id="fancyvrb35"><a
- id="x1-110002r1"></a><span
+ id="x1-111002r1"></a><span
class="cmr-6">1</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -9170,7 +9188,7 @@ class="cmtt-8">&#x00A0;bits</span><span
class="cmtt-8">&#x00A0;as</span><span
class="cmtt-8">&#x00A0;unsigned</span><span
class="cmtt-8">&#x00A0;integer</span><br class="fancyvrb" /><a
- id="x1-110004r2"></a><span
+ id="x1-111004r2"></a><span
class="cmr-6">2</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -9185,7 +9203,7 @@ class="cmtt-8">&#x00A0;as</span><span
class="cmtt-8">&#x00A0;unsigned</span><span
class="cmtt-8">&#x00A0;integer</span>
<br class="fancyvrb" /><a
- id="x1-110006r3"></a><span
+ id="x1-111006r3"></a><span
class="cmr-6">3</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -9203,7 +9221,7 @@ class="cmtt-8">&#x00A0;and</span><span
class="cmtt-8">&#x00A0;add</span><span
class="cmtt-8">&#x00A0;one</span>
<br class="fancyvrb" /><a
- id="x1-110008r4"></a><span
+ id="x1-111008r4"></a><span
class="cmr-6">4</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -9220,7 +9238,7 @@ class="cmtt-8">&#x00A0;integer</span><span
class="cmtt-8">&#x00A0;and</span><span
class="cmtt-8">&#x00A0;add</span><span
class="cmtt-8">&#x00A0;one</span><br class="fancyvrb" /><a
- id="x1-110010r5"></a><span
+ id="x1-111010r5"></a><span
class="cmr-6">5</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -9269,7 +9287,7 @@ class="cmtt-12">[residue_classbook]</span>.entries, the bitstream should be rega
passes.
<!--l. 193--><p class="noindent" >
<div class="fancyvrb" id="fancyvrb36"><a
- id="x1-110012r1"></a><span
+ id="x1-111012r1"></a><span
class="cmr-6">1</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -9284,11 +9302,11 @@ class="cmtt-8">&#x00A0;0</span><span
class="cmtt-8">&#x00A0;...</span><span
class="cmtt-8">&#x00A0;[residue\_classifications]-1</span><span
class="cmtt-8">&#x00A0;{</span><br class="fancyvrb" /><a
- id="x1-110014r2"></a><span
+ id="x1-111014r2"></a><span
class="cmr-6">2</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><br class="fancyvrb" /><a
- id="x1-110016r3"></a><span
+ id="x1-111016r3"></a><span
class="cmr-6">3</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -9303,7 +9321,7 @@ class="cmtt-8">&#x00A0;[high\_bits]</span><span
class="cmtt-8">&#x00A0;=</span><span
class="cmtt-8">&#x00A0;0</span>
<br class="fancyvrb" /><a
- id="x1-110018r4"></a><span
+ id="x1-111018r4"></a><span
class="cmr-6">4</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -9322,7 +9340,7 @@ class="cmtt-8">&#x00A0;bits</span><span
class="cmtt-8">&#x00A0;as</span><span
class="cmtt-8">&#x00A0;unsigned</span><span
class="cmtt-8">&#x00A0;integer</span><br class="fancyvrb" /><a
- id="x1-110020r5"></a><span
+ id="x1-111020r5"></a><span
class="cmr-6">5</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -9341,7 +9359,7 @@ class="cmtt-8">&#x00A0;bit</span><span
class="cmtt-8">&#x00A0;as</span><span
class="cmtt-8">&#x00A0;boolean</span>
<br class="fancyvrb" /><a
- id="x1-110022r6"></a><span
+ id="x1-111022r6"></a><span
class="cmr-6">6</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -9368,7 +9386,7 @@ class="cmtt-8">&#x00A0;as</span><span
class="cmtt-8">&#x00A0;unsigned</span><span
class="cmtt-8">&#x00A0;integer</span>
<br class="fancyvrb" /><a
- id="x1-110024r7"></a><span
+ id="x1-111024r7"></a><span
class="cmr-6">7</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -9389,7 +9407,7 @@ class="cmtt-8">&#x00A0;*</span><span
class="cmtt-8">&#x00A0;8</span><span
class="cmtt-8">&#x00A0;+</span><span
class="cmtt-8">&#x00A0;[low\_bits]</span><br class="fancyvrb" /><a
- id="x1-110026r8"></a><span
+ id="x1-111026r8"></a><span
class="cmr-6">8</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -9398,7 +9416,7 @@ class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;}</span><br class="fancyvrb" /><a
- id="x1-110028r9"></a><span
+ id="x1-111028r9"></a><span
class="cmr-6">9</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -9411,7 +9429,7 @@ encoding stages (8 in Vorbis I, as constrained by the elements of the cascade bi
bits):
<!--l. 211--><p class="noindent" >
<div class="fancyvrb" id="fancyvrb37"><a
- id="x1-110030r1"></a><span
+ id="x1-111030r1"></a><span
class="cmr-6">1</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -9426,11 +9444,11 @@ class="cmtt-8">&#x00A0;0</span><span
class="cmtt-8">&#x00A0;...</span><span
class="cmtt-8">&#x00A0;[residue\_classifications]-1</span><span
class="cmtt-8">&#x00A0;{</span><br class="fancyvrb" /><a
- id="x1-110032r2"></a><span
+ id="x1-111032r2"></a><span
class="cmr-6">2</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><br class="fancyvrb" /><a
- id="x1-110034r3"></a><span
+ id="x1-111034r3"></a><span
class="cmr-6">3</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -9451,11 +9469,11 @@ class="cmtt-8">&#x00A0;...</span><span
class="cmtt-8">&#x00A0;7</span><span
class="cmtt-8">&#x00A0;{</span>
<br class="fancyvrb" /><a
- id="x1-110036r4"></a><span
+ id="x1-111036r4"></a><span
class="cmr-6">4</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><br class="fancyvrb" /><a
- id="x1-110038r5"></a><span
+ id="x1-111038r5"></a><span
class="cmr-6">5</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -9483,12 +9501,12 @@ class="cmtt-8">&#x00A0;is</span><span
class="cmtt-8">&#x00A0;set</span><span
class="cmtt-8">&#x00A0;)</span><span
class="cmtt-8">&#x00A0;{</span><br class="fancyvrb" /><a
- id="x1-110040r6"></a><span
+ id="x1-111040r6"></a><span
class="cmr-6">6</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span>
<br class="fancyvrb" /><a
- id="x1-110042r7"></a><span
+ id="x1-111042r7"></a><span
class="cmr-6">7</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -9520,11 +9538,11 @@ class="cmtt-8">&#x00A0;bits</span><span
class="cmtt-8">&#x00A0;as</span><span
class="cmtt-8">&#x00A0;unsigned</span><span
class="cmtt-8">&#x00A0;integer</span><br class="fancyvrb" /><a
- id="x1-110044r8"></a><span
+ id="x1-111044r8"></a><span
class="cmr-6">8</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><br class="fancyvrb" /><a
- id="x1-110046r9"></a><span
+ id="x1-111046r9"></a><span
class="cmr-6">9</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -9545,12 +9563,12 @@ class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;}</span><span
class="cmtt-8">&#x00A0;else</span><span
class="cmtt-8">&#x00A0;{</span><br class="fancyvrb" /><a
- id="x1-110048r10"></a><span
+ id="x1-111048r10"></a><span
class="cmr-6">10</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span>
<br class="fancyvrb" /><a
- id="x1-110050r11"></a><span
+ id="x1-111050r11"></a><span
class="cmr-6">11</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -9577,11 +9595,11 @@ class="cmtt-8">&#x00A0;element</span><span
class="cmtt-8">&#x00A0;[i][j]</span><span
class="cmtt-8">&#x00A0;=</span><span
class="cmtt-8">&#x00A0;unused</span><br class="fancyvrb" /><a
- id="x1-110052r12"></a><span
+ id="x1-111052r12"></a><span
class="cmr-6">12</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><br class="fancyvrb" /><a
- id="x1-110054r13"></a><span
+ id="x1-111054r13"></a><span
class="cmr-6">13</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -9600,7 +9618,7 @@ class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;}</span><br class="fancyvrb" /><a
- id="x1-110056r14"></a><span
+ id="x1-111056r14"></a><span
class="cmr-6">14</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -9614,7 +9632,7 @@ class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;}</span><br class="fancyvrb" /><a
- id="x1-110058r15"></a><span
+ id="x1-111058r15"></a><span
class="cmr-6">15</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -9624,11 +9642,11 @@ class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;}</span><br class="fancyvrb" /><a
- id="x1-110060r16"></a><span
+ id="x1-111060r16"></a><span
class="cmr-6">16</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><br class="fancyvrb" /><a
- id="x1-110062r17"></a><span
+ id="x1-111062r17"></a><span
class="cmr-6">17</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -9643,7 +9661,7 @@ set up in this stream also renders the stream undecodable. All codebooks in arra
undecodable.
<!--l. 241--><p class="noindent" >
<h5 class="subsubsectionHead"><span class="titlemark">8.6.2. </span> <a
- id="x1-1110008.6.2"></a>packet decode</h5>
+ id="x1-1120008.6.2"></a>packet decode</h5>
<!--l. 243--><p class="noindent" >Format 0 and 1 packet decode is identical except for specific partition interleave. Format 2 packet
decode can be built out of the format 1 decode process. Thus we describe first the decode
infrastructure identical to all three formats.
@@ -9672,7 +9690,7 @@ class="cmtt-12">[ch] </span>is provided by the higher level decoding
process.
<!--l. 269--><p class="noindent" >
<div class="fancyvrb" id="fancyvrb38"><a
- id="x1-111002r1"></a><span
+ id="x1-112002r1"></a><span
class="cmr-6">1</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -9682,7 +9700,7 @@ class="cmtt-8">&#x00A0;[actual\_size]</span><span
class="cmtt-8">&#x00A0;=</span><span
class="cmtt-8">&#x00A0;current</span><span
class="cmtt-8">&#x00A0;blocksize/2;</span><br class="fancyvrb" /><a
- id="x1-111004r2"></a><span
+ id="x1-112004r2"></a><span
class="cmr-6">2</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -9695,7 +9713,7 @@ class="cmtt-8">&#x00A0;is</span><span
class="cmtt-8">&#x00A0;format</span><span
class="cmtt-8">&#x00A0;2</span>
<br class="fancyvrb" /><a
- id="x1-111006r3"></a><span
+ id="x1-112006r3"></a><span
class="cmr-6">3</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -9711,7 +9729,7 @@ class="cmtt-8">&#x00A0;=</span><span
class="cmtt-8">&#x00A0;[actual\_size]</span><span
class="cmtt-8">&#x00A0;*</span><span
class="cmtt-8">&#x00A0;[ch];</span><br class="fancyvrb" /><a
- id="x1-111008r4"></a><span
+ id="x1-112008r4"></a><span
class="cmr-6">4</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -9723,7 +9741,7 @@ class="cmtt-8">&#x00A0;maximum</span><span
class="cmtt-8">&#x00A0;of</span><span
class="cmtt-8">&#x00A0;([residue\_begin],[actual\_size]);</span>
<br class="fancyvrb" /><a
- id="x1-111010r5"></a><span
+ id="x1-112010r5"></a><span
class="cmr-6">5</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -9737,7 +9755,7 @@ class="cmtt-8">&#x00A0;([residue\_end],[actual\_size]);</span></div>
<!--l. 277--><p class="noindent" >The following convenience values are conceptually useful to clarifying the decode process:
<!--l. 280--><p class="noindent" >
<div class="fancyvrb" id="fancyvrb39"><a
- id="x1-111012r1"></a><span
+ id="x1-112012r1"></a><span
class="cmr-6">1</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -9751,7 +9769,7 @@ class="cmtt-8">&#x00A0;of</span><span
class="cmtt-8">&#x00A0;codebook</span><span
class="cmtt-8">&#x00A0;[residue\_classbook]</span>
<br class="fancyvrb" /><a
- id="x1-111014r2"></a><span
+ id="x1-112014r2"></a><span
class="cmr-6">2</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -9762,7 +9780,7 @@ class="cmtt-8">&#x00A0;=</span><span
class="cmtt-8">&#x00A0;[limit\_residue\_end]</span><span
class="cmtt-8">&#x00A0;-</span><span
class="cmtt-8">&#x00A0;[limit\_residue\_begin]</span><br class="fancyvrb" /><a
- id="x1-111016r3"></a><span
+ id="x1-112016r3"></a><span
class="cmr-6">3</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -9775,7 +9793,7 @@ class="cmtt-8">&#x00A0;/</span><span
class="cmtt-8">&#x00A0;[residue\_partition\_size]</span></div>
<!--l. 286--><p class="noindent" >Packet decode proceeds as follows, matching the description offered earlier in the document.
<div class="fancyvrb" id="fancyvrb40"><a
- id="x1-111018r1"></a><span
+ id="x1-112018r1"></a><span
class="cmr-6">1</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -9790,7 +9808,7 @@ class="cmtt-8">&#x00A0;that</span><span
class="cmtt-8">&#x00A0;will</span><span
class="cmtt-8">&#x00A0;be</span><span
class="cmtt-8">&#x00A0;returned.</span><br class="fancyvrb" /><a
- id="x1-111020r2"></a><span
+ id="x1-112020r2"></a><span
class="cmr-6">2</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -9808,7 +9826,7 @@ class="cmtt-8">&#x00A0;residue</span><span
class="cmtt-8">&#x00A0;to</span><span
class="cmtt-8">&#x00A0;decode.</span>
<br class="fancyvrb" /><a
- id="x1-111022r3"></a><span
+ id="x1-112022r3"></a><span
class="cmr-6">3</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -9823,11 +9841,11 @@ class="cmtt-8">&#x00A0;0</span><span
class="cmtt-8">&#x00A0;...</span><span
class="cmtt-8">&#x00A0;7</span><span
class="cmtt-8">&#x00A0;{</span><br class="fancyvrb" /><a
- id="x1-111024r4"></a><span
+ id="x1-112024r4"></a><span
class="cmr-6">4</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><br class="fancyvrb" /><a
- id="x1-111026r5"></a><span
+ id="x1-112026r5"></a><span
class="cmr-6">5</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -9841,12 +9859,12 @@ class="cmtt-8">&#x00A0;4)</span><span
class="cmtt-8">&#x00A0;[partition\_count]</span><span
class="cmtt-8">&#x00A0;=</span><span
class="cmtt-8">&#x00A0;0</span><br class="fancyvrb" /><a
- id="x1-111028r6"></a><span
+ id="x1-112028r6"></a><span
class="cmr-6">6</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span>
<br class="fancyvrb" /><a
- id="x1-111030r7"></a><span
+ id="x1-112030r7"></a><span
class="cmr-6">7</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -9863,11 +9881,11 @@ class="cmtt-8">&#x00A0;is</span><span
class="cmtt-8">&#x00A0;less</span><span
class="cmtt-8">&#x00A0;than</span><span
class="cmtt-8">&#x00A0;[partitions\_to\_read]</span><br class="fancyvrb" /><a
- id="x1-111032r8"></a><span
+ id="x1-112032r8"></a><span
class="cmr-6">8</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><br class="fancyvrb" /><a
- id="x1-111034r9"></a><span
+ id="x1-112034r9"></a><span
class="cmr-6">9</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -9888,12 +9906,12 @@ class="cmtt-8">&#x00A0;([pass]</span><span
class="cmtt-8">&#x00A0;is</span><span
class="cmtt-8">&#x00A0;zero)</span><span
class="cmtt-8">&#x00A0;{</span><br class="fancyvrb" /><a
- id="x1-111036r10"></a><span
+ id="x1-112036r10"></a><span
class="cmr-6">10</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span>
<br class="fancyvrb" /><a
- id="x1-111038r11"></a><span
+ id="x1-112038r11"></a><span
class="cmr-6">11</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -9923,11 +9941,11 @@ class="cmtt-8">&#x00A0;0</span><span
class="cmtt-8">&#x00A0;..</span><span
class="cmtt-8">&#x00A0;[ch]-1</span><span
class="cmtt-8">&#x00A0;{</span><br class="fancyvrb" /><a
- id="x1-111040r12"></a><span
+ id="x1-112040r12"></a><span
class="cmr-6">12</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><br class="fancyvrb" /><a
- id="x1-111042r13"></a><span
+ id="x1-112042r13"></a><span
class="cmr-6">13</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -9964,11 +9982,11 @@ class="cmtt-8">&#x00A0;not</span><span
class="cmtt-8">&#x00A0;decode&#8217;</span><span
class="cmtt-8">&#x00A0;{</span>
<br class="fancyvrb" /><a
- id="x1-111044r14"></a><span
+ id="x1-112044r14"></a><span
class="cmr-6">14</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><br class="fancyvrb" /><a
- id="x1-111046r15"></a><span
+ id="x1-112046r15"></a><span
class="cmr-6">15</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -10011,7 +10029,7 @@ class="cmtt-8">&#x00A0;in</span><span
class="cmtt-8">&#x00A0;scalar</span><span
class="cmtt-8">&#x00A0;context</span>
<br class="fancyvrb" /><a
- id="x1-111048r16"></a><span
+ id="x1-112048r16"></a><span
class="cmr-6">16</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -10052,11 +10070,11 @@ class="cmtt-8">&#x00A0;...</span><span
class="cmtt-8">&#x00A0;0</span><span
class="cmtt-8">&#x00A0;{</span>
<br class="fancyvrb" /><a
- id="x1-111050r17"></a><span
+ id="x1-112050r17"></a><span
class="cmr-6">17</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><br class="fancyvrb" /><a
- id="x1-111052r18"></a><span
+ id="x1-112052r18"></a><span
class="cmr-6">18</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -10097,7 +10115,7 @@ class="cmtt-8">&#x00A0;element</span><span
class="cmtt-8">&#x00A0;[j],([i]+[partition\_count])</span><span
class="cmtt-8">&#x00A0;=</span>
<br class="fancyvrb" /><a
- id="x1-111054r19"></a><span
+ id="x1-112054r19"></a><span
class="cmr-6">19</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -10140,7 +10158,7 @@ class="cmtt-8">&#x00A0;integer</span><span
class="cmtt-8">&#x00A0;modulo</span><span
class="cmtt-8">&#x00A0;[residue\_classifications]</span>
<br class="fancyvrb" /><a
- id="x1-111056r20"></a><span
+ id="x1-112056r20"></a><span
class="cmr-6">20</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -10183,12 +10201,12 @@ class="cmtt-8">&#x00A0;[residue\_classifications]</span><span
class="cmtt-8">&#x00A0;using</span><span
class="cmtt-8">&#x00A0;integer</span><span
class="cmtt-8">&#x00A0;division</span><br class="fancyvrb" /><a
- id="x1-111058r21"></a><span
+ id="x1-112058r21"></a><span
class="cmr-6">21</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span>
<br class="fancyvrb" /><a
- id="x1-111060r22"></a><span
+ id="x1-112060r22"></a><span
class="cmr-6">22</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -10222,11 +10240,11 @@ class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;}</span><br class="fancyvrb" /><a
- id="x1-111062r23"></a><span
+ id="x1-112062r23"></a><span
class="cmr-6">23</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><br class="fancyvrb" /><a
- id="x1-111064r24"></a><span
+ id="x1-112064r24"></a><span
class="cmr-6">24</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -10255,11 +10273,11 @@ class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;}</span><br class="fancyvrb" /><a
- id="x1-111066r25"></a><span
+ id="x1-112066r25"></a><span
class="cmr-6">25</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><br class="fancyvrb" /><a
- id="x1-111068r26"></a><span
+ id="x1-112068r26"></a><span
class="cmr-6">26</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -10283,11 +10301,11 @@ class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;}</span><br class="fancyvrb" /><a
- id="x1-111070r27"></a><span
+ id="x1-112070r27"></a><span
class="cmr-6">27</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><br class="fancyvrb" /><a
- id="x1-111072r28"></a><span
+ id="x1-112072r28"></a><span
class="cmr-6">28</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -10306,12 +10324,12 @@ class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;}</span><br class="fancyvrb" /><a
- id="x1-111074r29"></a><span
+ id="x1-112074r29"></a><span
class="cmr-6">29</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span>
<br class="fancyvrb" /><a
- id="x1-111076r30"></a><span
+ id="x1-112076r30"></a><span
class="cmr-6">30</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -10339,7 +10357,7 @@ class="cmtt-8">&#x00A0;1)</span><span
class="cmtt-8">&#x00A0;while</span><span
class="cmtt-8">&#x00A0;[partition\_count]</span>
<br class="fancyvrb" /><a
- id="x1-111078r31"></a><span
+ id="x1-112078r31"></a><span
class="cmr-6">31</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -10363,11 +10381,11 @@ class="cmtt-8">&#x00A0;less</span><span
class="cmtt-8">&#x00A0;than</span><span
class="cmtt-8">&#x00A0;[partitions\_to\_read]</span><span
class="cmtt-8">&#x00A0;{</span><br class="fancyvrb" /><a
- id="x1-111080r32"></a><span
+ id="x1-112080r32"></a><span
class="cmr-6">32</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><br class="fancyvrb" /><a
- id="x1-111082r33"></a><span
+ id="x1-112082r33"></a><span
class="cmr-6">33</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -10398,11 +10416,11 @@ class="cmtt-8">&#x00A0;..</span><span
class="cmtt-8">&#x00A0;[ch]-1</span><span
class="cmtt-8">&#x00A0;{</span>
<br class="fancyvrb" /><a
- id="x1-111084r34"></a><span
+ id="x1-112084r34"></a><span
class="cmr-6">34</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><br class="fancyvrb" /><a
- id="x1-111086r35"></a><span
+ id="x1-112086r35"></a><span
class="cmr-6">35</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -10438,12 +10456,12 @@ class="cmtt-8">&#x00A0;&#8217;do</span><span
class="cmtt-8">&#x00A0;not</span><span
class="cmtt-8">&#x00A0;decode&#8217;</span><span
class="cmtt-8">&#x00A0;{</span><br class="fancyvrb" /><a
- id="x1-111088r36"></a><span
+ id="x1-112088r36"></a><span
class="cmr-6">36</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span>
<br class="fancyvrb" /><a
- id="x1-111090r37"></a><span
+ id="x1-112090r37"></a><span
class="cmr-6">37</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -10481,7 +10499,7 @@ class="cmtt-8">&#x00A0;[classifications]</span><span
class="cmtt-8">&#x00A0;element</span><span
class="cmtt-8">&#x00A0;[j],[partition\_count]</span>
<br class="fancyvrb" /><a
- id="x1-111092r38"></a><span
+ id="x1-112092r38"></a><span
class="cmr-6">38</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -10518,7 +10536,7 @@ class="cmtt-8">&#x00A0;array</span><span
class="cmtt-8">&#x00A0;[residue\_books]</span><span
class="cmtt-8">&#x00A0;element</span><span
class="cmtt-8">&#x00A0;[vqclass],[pass]</span><br class="fancyvrb" /><a
- id="x1-111094r39"></a><span
+ id="x1-112094r39"></a><span
class="cmr-6">39</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -10556,11 +10574,11 @@ class="cmtt-8">&#x00A0;not</span><span
class="cmtt-8">&#x00A0;&#8217;unused&#8217;)</span><span
class="cmtt-8">&#x00A0;{</span>
<br class="fancyvrb" /><a
- id="x1-111096r40"></a><span
+ id="x1-112096r40"></a><span
class="cmr-6">40</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><br class="fancyvrb" /><a
- id="x1-111098r41"></a><span
+ id="x1-112098r41"></a><span
class="cmr-6">41</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -10607,7 +10625,7 @@ class="cmtt-8">&#x00A0;starting</span><span
class="cmtt-8">&#x00A0;at</span><span
class="cmtt-8">&#x00A0;scalar</span>
<br class="fancyvrb" /><a
- id="x1-111100r42"></a><span
+ id="x1-112100r42"></a><span
class="cmr-6">42</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -10650,7 +10668,7 @@ class="cmtt-8">&#x00A0;offset</span><span
class="cmtt-8">&#x00A0;[limit\_residue\_begin]+[partition\_count]*[residue\_partition\_size]</span><span
class="cmtt-8">&#x00A0;using</span>
<br class="fancyvrb" /><a
- id="x1-111102r43"></a><span
+ id="x1-112102r43"></a><span
class="cmr-6">43</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -10695,7 +10713,7 @@ class="cmtt-8">&#x00A0;[vqbook]</span><span
class="cmtt-8">&#x00A0;in</span><span
class="cmtt-8">&#x00A0;VQ</span><span
class="cmtt-8">&#x00A0;context</span><br class="fancyvrb" /><a
- id="x1-111104r44"></a><span
+ id="x1-112104r44"></a><span
class="cmr-6">44</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -10725,7 +10743,7 @@ class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;}</span><br class="fancyvrb" /><a
- id="x1-111106r45"></a><span
+ id="x1-112106r45"></a><span
class="cmr-6">45</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -10751,11 +10769,11 @@ class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;}</span>
<br class="fancyvrb" /><a
- id="x1-111108r46"></a><span
+ id="x1-112108r46"></a><span
class="cmr-6">46</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><br class="fancyvrb" /><a
- id="x1-111110r47"></a><span
+ id="x1-112110r47"></a><span
class="cmr-6">47</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -10780,11 +10798,11 @@ class="cmtt-8">&#x00A0;increment</span><span
class="cmtt-8">&#x00A0;[partition\_count]</span><span
class="cmtt-8">&#x00A0;by</span><span
class="cmtt-8">&#x00A0;one</span><br class="fancyvrb" /><a
- id="x1-111112r48"></a><span
+ id="x1-112112r48"></a><span
class="cmr-6">48</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><br class="fancyvrb" /><a
- id="x1-111114r49"></a><span
+ id="x1-112114r49"></a><span
class="cmr-6">49</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -10803,7 +10821,7 @@ class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;}</span><br class="fancyvrb" /><a
- id="x1-111116r50"></a><span
+ id="x1-112116r50"></a><span
class="cmr-6">50</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -10817,7 +10835,7 @@ class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;}</span><br class="fancyvrb" /><a
- id="x1-111118r51"></a><span
+ id="x1-112118r51"></a><span
class="cmr-6">51</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -10826,17 +10844,17 @@ class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;}</span><br class="fancyvrb" /><a
- id="x1-111120r52"></a><span
+ id="x1-112120r52"></a><span
class="cmr-6">52</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><br class="fancyvrb" /><a
- id="x1-111122r53"></a><span
+ id="x1-112122r53"></a><span
class="cmr-6">53</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;21)</span><span
class="cmtt-8">&#x00A0;done</span><br class="fancyvrb" /><a
- id="x1-111124r54"></a><span
+ id="x1-112124r54"></a><span
class="cmr-6">54</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span></div>
@@ -10844,7 +10862,7 @@ class="cmtt-8">&#x00A0;</span></div>
Decode returns the result of vector decode up to that point.
<!--l. 350--><p class="noindent" >
<h5 class="subsubsectionHead"><span class="titlemark">8.6.3. </span> <a
- id="x1-1120008.6.3"></a>format 0 specifics</h5>
+ id="x1-1130008.6.3"></a>format 0 specifics</h5>
<!--l. 352--><p class="noindent" >Format zero decodes partitions exactly as described earlier in the &#8217;Residue Format: residue 0&#8217;
section. The following pseudocode presents the same algorithm. Assume:
@@ -10862,7 +10880,7 @@ class="cmtt-12">[v] </span>is the residue vector
class="cmtt-12">[offset] </span>is the beginning read offset in [v]</li></ul>
<!--l. 363--><p class="noindent" >
<div class="fancyvrb" id="fancyvrb41"><a
- id="x1-112002r1"></a><span
+ id="x1-113002r1"></a><span
class="cmr-6">1</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -10872,7 +10890,7 @@ class="cmtt-8">&#x00A0;=</span><span
class="cmtt-8">&#x00A0;[n]</span><span
class="cmtt-8">&#x00A0;/</span><span
class="cmtt-8">&#x00A0;[codebook\_dimensions]</span><br class="fancyvrb" /><a
- id="x1-112004r2"></a><span
+ id="x1-113004r2"></a><span
class="cmr-6">2</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -10886,12 +10904,12 @@ class="cmtt-8">&#x00A0;0</span><span
class="cmtt-8">&#x00A0;...</span><span
class="cmtt-8">&#x00A0;[step]-1</span><span
class="cmtt-8">&#x00A0;{</span><br class="fancyvrb" /><a
- id="x1-112006r3"></a><span
+ id="x1-113006r3"></a><span
class="cmr-6">3</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span>
<br class="fancyvrb" /><a
- id="x1-112008r4"></a><span
+ id="x1-113008r4"></a><span
class="cmr-6">4</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -10915,7 +10933,7 @@ class="cmtt-8">&#x00A0;in</span><span
class="cmtt-8">&#x00A0;VQ</span><span
class="cmtt-8">&#x00A0;context</span>
<br class="fancyvrb" /><a
- id="x1-112010r5"></a><span
+ id="x1-113010r5"></a><span
class="cmr-6">5</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -10934,11 +10952,11 @@ class="cmtt-8">&#x00A0;0</span><span
class="cmtt-8">&#x00A0;...</span><span
class="cmtt-8">&#x00A0;[codebook\_dimensions]-1</span><span
class="cmtt-8">&#x00A0;{</span><br class="fancyvrb" /><a
- id="x1-112012r6"></a><span
+ id="x1-113012r6"></a><span
class="cmr-6">6</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><br class="fancyvrb" /><a
- id="x1-112014r7"></a><span
+ id="x1-113014r7"></a><span
class="cmr-6">7</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -10959,7 +10977,7 @@ class="cmtt-8">&#x00A0;element</span><span
class="cmtt-8">&#x00A0;([offset]+[i]+[j]*[step])</span><span
class="cmtt-8">&#x00A0;=</span>
<br class="fancyvrb" /><a
- id="x1-112016r8"></a><span
+ id="x1-113016r8"></a><span
class="cmr-6">8</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0; </span><span
@@ -10975,7 +10993,7 @@ class="cmtt-8">&#x00A0;[v]</span><span
class="cmtt-8">&#x00A0;element</span><span
class="cmtt-8">&#x00A0;([offset]+[i]+[j]*[step])</span><span
class="cmtt-8">&#x00A0;+</span><br class="fancyvrb" /><a
- id="x1-112018r9"></a><span
+ id="x1-113018r9"></a><span
class="cmr-6">9</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -10998,11 +11016,11 @@ class="cmtt-8">&#x00A0;vector</span><span
class="cmtt-8">&#x00A0;[entry\_temp]</span><span
class="cmtt-8">&#x00A0;element</span><span
class="cmtt-8">&#x00A0;[j]</span><br class="fancyvrb" /><a
- id="x1-112020r10"></a><span
+ id="x1-113020r10"></a><span
class="cmr-6">10</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><br class="fancyvrb" /><a
- id="x1-112022r11"></a><span
+ id="x1-113022r11"></a><span
class="cmr-6">11</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -11015,11 +11033,11 @@ class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;}</span><br class="fancyvrb" /><a
- id="x1-112024r12"></a><span
+ id="x1-113024r12"></a><span
class="cmr-6">12</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><br class="fancyvrb" /><a
- id="x1-112026r13"></a><span
+ id="x1-113026r13"></a><span
class="cmr-6">13</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -11027,24 +11045,24 @@ class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;}</span><br class="fancyvrb" /><a
- id="x1-112028r14"></a><span
+ id="x1-113028r14"></a><span
class="cmr-6">14</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><br class="fancyvrb" /><a
- id="x1-112030r15"></a><span
+ id="x1-113030r15"></a><span
class="cmr-6">15</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;6)</span><span
class="cmtt-8">&#x00A0;done</span><br class="fancyvrb" /><a
- id="x1-112032r16"></a><span
+ id="x1-113032r16"></a><span
class="cmr-6">16</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span></div>
<!--l. 384--><p class="noindent" >
<h5 class="subsubsectionHead"><span class="titlemark">8.6.4. </span> <a
- id="x1-1130008.6.4"></a>format 1 specifics</h5>
+ id="x1-1140008.6.4"></a>format 1 specifics</h5>
<!--l. 386--><p class="noindent" >Format 1 decodes partitions exactly as described earlier in the &#8217;Residue Format: residue 1&#8217;
section. The following pseudocode presents the same algorithm. Assume:
<ul class="itemize1">
@@ -11059,7 +11077,7 @@ class="cmtt-12">[v] </span>is the residue vector
class="cmtt-12">[offset] </span>is the beginning read offset in [v]</li></ul>
<!--l. 398--><p class="noindent" >
<div class="fancyvrb" id="fancyvrb42"><a
- id="x1-113002r1"></a><span
+ id="x1-114002r1"></a><span
class="cmr-6">1</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -11067,7 +11085,7 @@ class="cmtt-8">&#x00A0;1)</span><span
class="cmtt-8">&#x00A0;[i]</span><span
class="cmtt-8">&#x00A0;=</span><span
class="cmtt-8">&#x00A0;0</span><br class="fancyvrb" /><a
- id="x1-113004r2"></a><span
+ id="x1-114004r2"></a><span
class="cmr-6">2</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -11086,7 +11104,7 @@ class="cmtt-8">&#x00A0;in</span><span
class="cmtt-8">&#x00A0;VQ</span><span
class="cmtt-8">&#x00A0;context</span>
<br class="fancyvrb" /><a
- id="x1-113006r3"></a><span
+ id="x1-114006r3"></a><span
class="cmr-6">3</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -11100,11 +11118,11 @@ class="cmtt-8">&#x00A0;0</span><span
class="cmtt-8">&#x00A0;...</span><span
class="cmtt-8">&#x00A0;[codebook\_dimensions]-1</span><span
class="cmtt-8">&#x00A0;{</span><br class="fancyvrb" /><a
- id="x1-113008r4"></a><span
+ id="x1-114008r4"></a><span
class="cmr-6">4</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><br class="fancyvrb" /><a
- id="x1-113010r5"></a><span
+ id="x1-114010r5"></a><span
class="cmr-6">5</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -11120,7 +11138,7 @@ class="cmtt-8">&#x00A0;element</span><span
class="cmtt-8">&#x00A0;([offset]+[i])</span><span
class="cmtt-8">&#x00A0;=</span>
<br class="fancyvrb" /><a
- id="x1-113012r6"></a><span
+ id="x1-114012r6"></a><span
class="cmr-6">6</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0; </span><span
@@ -11130,7 +11148,7 @@ class="cmtt-8">&#x00A0;[v]</span><span
class="cmtt-8">&#x00A0;element</span><span
class="cmtt-8">&#x00A0;([offset]+[i])</span><span
class="cmtt-8">&#x00A0;+</span><br class="fancyvrb" /><a
- id="x1-113014r7"></a><span
+ id="x1-114014r7"></a><span
class="cmr-6">7</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -11147,7 +11165,7 @@ class="cmtt-8">&#x00A0;vector</span><span
class="cmtt-8">&#x00A0;[entry\_temp]</span><span
class="cmtt-8">&#x00A0;element</span><span
class="cmtt-8">&#x00A0;[j]</span><br class="fancyvrb" /><a
- id="x1-113016r8"></a><span
+ id="x1-114016r8"></a><span
class="cmr-6">8</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -11159,12 +11177,12 @@ class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;5)</span><span
class="cmtt-8">&#x00A0;increment</span><span
class="cmtt-8">&#x00A0;[i]</span><br class="fancyvrb" /><a
- id="x1-113018r9"></a><span
+ id="x1-114018r9"></a><span
class="cmr-6">9</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span>
<br class="fancyvrb" /><a
- id="x1-113020r10"></a><span
+ id="x1-114020r10"></a><span
class="cmr-6">10</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -11172,11 +11190,11 @@ class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;}</span><br class="fancyvrb" /><a
- id="x1-113022r11"></a><span
+ id="x1-114022r11"></a><span
class="cmr-6">11</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><br class="fancyvrb" /><a
- id="x1-113024r12"></a><span
+ id="x1-114024r12"></a><span
class="cmr-6">12</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -11194,7 +11212,7 @@ class="cmtt-8">&#x00A0;continue</span><span
class="cmtt-8">&#x00A0;at</span><span
class="cmtt-8">&#x00A0;step</span><span
class="cmtt-8">&#x00A0;2</span><br class="fancyvrb" /><a
- id="x1-113026r13"></a><span
+ id="x1-114026r13"></a><span
class="cmr-6">13</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -11203,7 +11221,7 @@ class="cmtt-8">&#x00A0;7)</span><span
class="cmtt-8">&#x00A0;done</span></div>
<!--l. 416--><p class="noindent" >
<h5 class="subsubsectionHead"><span class="titlemark">8.6.5. </span> <a
- id="x1-1140008.6.5"></a>format 2 specifics</h5>
+ id="x1-1150008.6.5"></a>format 2 specifics</h5>
@@ -11240,7 +11258,7 @@ class="cmtt-12">[v] </span>returned by format 1 decode as
class="cmti-12">ch </span>independent vectors, one for each outputchannel, according
to:
<div class="fancyvrb" id="fancyvrb43"><a
- id="x1-114005r1"></a><span
+ id="x1-115005r1"></a><span
class="cmr-6">1</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -11255,11 +11273,11 @@ class="cmtt-8">&#x00A0;0</span><span
class="cmtt-8">&#x00A0;...</span><span
class="cmtt-8">&#x00A0;[n]-1</span><span
class="cmtt-8">&#x00A0;{</span><br class="fancyvrb" /><a
- id="x1-114007r2"></a><span
+ id="x1-115007r2"></a><span
class="cmr-6">2</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><br class="fancyvrb" /><a
- id="x1-114009r3"></a><span
+ id="x1-115009r3"></a><span
class="cmr-6">3</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -11279,12 +11297,12 @@ class="cmtt-8">&#x00A0;0</span><span
class="cmtt-8">&#x00A0;...</span><span
class="cmtt-8">&#x00A0;[ch]-1</span><span
class="cmtt-8">&#x00A0;{</span><br class="fancyvrb" /><a
- id="x1-114011r4"></a><span
+ id="x1-115011r4"></a><span
class="cmr-6">4</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span>
<br class="fancyvrb" /><a
- id="x1-114013r5"></a><span
+ id="x1-115013r5"></a><span
class="cmr-6">5</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -11315,11 +11333,11 @@ class="cmtt-8">&#x00A0;*</span><span
class="cmtt-8">&#x00A0;[ch]</span><span
class="cmtt-8">&#x00A0;+</span><span
class="cmtt-8">&#x00A0;[j])</span><br class="fancyvrb" /><a
- id="x1-114015r6"></a><span
+ id="x1-115015r6"></a><span
class="cmr-6">6</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><br class="fancyvrb" /><a
- id="x1-114017r7"></a><span
+ id="x1-115017r7"></a><span
class="cmr-6">7</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -11333,7 +11351,7 @@ class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;}</span><br class="fancyvrb" /><a
- id="x1-114019r8"></a><span
+ id="x1-115019r8"></a><span
class="cmr-6">8</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -11342,11 +11360,11 @@ class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;}</span><br class="fancyvrb" /><a
- id="x1-114021r9"></a><span
+ id="x1-115021r9"></a><span
class="cmr-6">9</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><br class="fancyvrb" /><a
- id="x1-114023r10"></a><span
+ id="x1-115023r10"></a><span
class="cmr-6">10</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -11361,19 +11379,19 @@ class="cmtt-8">&#x00A0;done</span></div>
<h3 class="sectionHead"><span class="titlemark">9. </span> <a
- id="x1-1150009"></a>Helper equations</h3>
+ id="x1-1160009"></a>Helper equations</h3>
<!--l. 6--><p class="noindent" >
<h4 class="subsectionHead"><span class="titlemark">9.1. </span> <a
- id="x1-1160009.1"></a>Overview</h4>
+ id="x1-1170009.1"></a>Overview</h4>
<!--l. 8--><p class="noindent" >The equations below are used in multiple places by the Vorbis codec specification. Rather than
cluttering up the main specification documents, they are defined here and referenced where
appropriate.
<!--l. 13--><p class="noindent" >
<h4 class="subsectionHead"><span class="titlemark">9.2. </span> <a
- id="x1-1170009.2"></a>Functions</h4>
+ id="x1-1180009.2"></a>Functions</h4>
<!--l. 15--><p class="noindent" >
<h5 class="subsubsectionHead"><span class="titlemark">9.2.1. </span> <a
- id="x1-1180009.2.1"></a>ilog</h5>
+ id="x1-1190009.2.1"></a>ilog</h5>
<!--l. 17--><p class="noindent" >The &#8221;ilog(x)&#8221; function returns the position number (1 through n) of the highest set bit in the
two&#8217;s complement integer value <span
class="cmtt-12">[x]</span>. Values of <span
@@ -11381,7 +11399,7 @@ class="cmtt-12">[x] </span>less than zero are defined to return
zero.
<!--l. 20--><p class="noindent" >
<div class="fancyvrb" id="fancyvrb44"><a
- id="x1-118002r1"></a><span
+ id="x1-119002r1"></a><span
class="cmr-6">1</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -11390,7 +11408,7 @@ class="cmtt-8">&#x00A0;1)</span><span
class="cmtt-8">&#x00A0;[return\_value]</span><span
class="cmtt-8">&#x00A0;=</span><span
class="cmtt-8">&#x00A0;0;</span><br class="fancyvrb" /><a
- id="x1-118004r2"></a><span
+ id="x1-119004r2"></a><span
class="cmr-6">2</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -11405,11 +11423,11 @@ class="cmtt-8">&#x00A0;than</span><span
class="cmtt-8">&#x00A0;zero</span><span
class="cmtt-8">&#x00A0;)</span><span
class="cmtt-8">&#x00A0;{</span><br class="fancyvrb" /><a
- id="x1-118006r3"></a><span
+ id="x1-119006r3"></a><span
class="cmr-6">3</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><br class="fancyvrb" /><a
- id="x1-118008r4"></a><span
+ id="x1-119008r4"></a><span
class="cmr-6">4</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -11423,7 +11441,7 @@ class="cmtt-8">&#x00A0;3)</span><span
class="cmtt-8">&#x00A0;increment</span><span
class="cmtt-8">&#x00A0;[return\_value];</span>
<br class="fancyvrb" /><a
- id="x1-118010r5"></a><span
+ id="x1-119010r5"></a><span
class="cmr-6">5</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -11447,7 +11465,7 @@ class="cmtt-8">&#x00A0;the</span><span
class="cmtt-8">&#x00A0;MSb</span><span
class="cmtt-8">&#x00A0;with</span><span
class="cmtt-8">&#x00A0;zero</span><br class="fancyvrb" /><a
- id="x1-118012r6"></a><span
+ id="x1-119012r6"></a><span
class="cmr-6">6</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -11462,11 +11480,11 @@ class="cmtt-8">&#x00A0;repeat</span><span
class="cmtt-8">&#x00A0;at</span><span
class="cmtt-8">&#x00A0;step</span><span
class="cmtt-8">&#x00A0;2)</span><br class="fancyvrb" /><a
- id="x1-118014r7"></a><span
+ id="x1-119014r7"></a><span
class="cmr-6">7</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><br class="fancyvrb" /><a
- id="x1-118016r8"></a><span
+ id="x1-119016r8"></a><span
class="cmr-6">8</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -11475,11 +11493,11 @@ class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;}</span><br class="fancyvrb" /><a
- id="x1-118018r9"></a><span
+ id="x1-119018r9"></a><span
class="cmr-6">9</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><br class="fancyvrb" /><a
- id="x1-118020r10"></a><span
+ id="x1-119020r10"></a><span
class="cmr-6">10</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -11507,14 +11525,14 @@ class="cmtt-8">&#x00A0;done</span></div>
<li class="itemize">ilog(negative number) = 0;</li></ul>
<!--l. 48--><p class="noindent" >
<h5 class="subsubsectionHead"><span class="titlemark">9.2.2. </span> <a
- id="x1-1190009.2.2"></a>float32_unpack</h5>
+ id="x1-1200009.2.2"></a>float32_unpack</h5>
<!--l. 50--><p class="noindent" >&#8221;float32_unpack(x)&#8221; is intended to translate the packed binary representation of a Vorbis
codebook float value into the representation used by the decoder for floating point numbers. For
purposes of this example, we will unpack a Vorbis float32 into a host-native floating point
number.
<!--l. 56--><p class="noindent" >
<div class="fancyvrb" id="fancyvrb45"><a
- id="x1-119002r1"></a><span
+ id="x1-120002r1"></a><span
class="cmr-6">1</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -11528,7 +11546,7 @@ class="cmtt-8">&#x00A0;AND</span><span
class="cmtt-8">&#x00A0;0x1fffff</span><span
class="cmtt-8">&#x00A0;(unsigned</span><span
class="cmtt-8">&#x00A0;result)</span><br class="fancyvrb" /><a
- id="x1-119004r2"></a><span
+ id="x1-120004r2"></a><span
class="cmr-6">2</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -11543,7 +11561,7 @@ class="cmtt-8">&#x00A0;0x80000000</span><span
class="cmtt-8">&#x00A0;(unsigned</span><span
class="cmtt-8">&#x00A0;result)</span>
<br class="fancyvrb" /><a
- id="x1-119006r3"></a><span
+ id="x1-120006r3"></a><span
class="cmr-6">3</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -11563,7 +11581,7 @@ class="cmtt-8">&#x00A0;bits</span><span
class="cmtt-8">&#x00A0;(unsigned</span><span
class="cmtt-8">&#x00A0;result)</span>
<br class="fancyvrb" /><a
- id="x1-119008r4"></a><span
+ id="x1-120008r4"></a><span
class="cmr-6">4</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -11578,7 +11596,7 @@ class="cmtt-8">&#x00A0;)</span><span
class="cmtt-8">&#x00A0;then</span><span
class="cmtt-8">&#x00A0;negate</span><span
class="cmtt-8">&#x00A0;[mantissa]</span><br class="fancyvrb" /><a
- id="x1-119010r5"></a><span
+ id="x1-120010r5"></a><span
class="cmr-6">5</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -11598,7 +11616,7 @@ class="cmtt-8">&#x00A0;)</span><span
class="cmtt-8">&#x00A0;)</span></div>
<!--l. 66--><p class="noindent" >
<h5 class="subsubsectionHead"><span class="titlemark">9.2.3. </span> <a
- id="x1-1200009.2.3"></a>lookup1_values</h5>
+ id="x1-1210009.2.3"></a>lookup1_values</h5>
<!--l. 68--><p class="noindent" >&#8221;lookup1_values(codebook_entries,codebook_dimensions)&#8221; is used to compute the
correct length of the value index for a codebook VQ lookup table of lookup type 1.
The values on this list are permuted to construct the VQ vector lookup table of size
@@ -11615,7 +11633,7 @@ class="cmtt-12">[codebook_entries]</span>&#8217;.
<!--l. 81--><p class="noindent" >
<h5 class="subsubsectionHead"><span class="titlemark">9.2.4. </span> <a
- id="x1-1210009.2.4"></a>low_neighbor</h5>
+ id="x1-1220009.2.4"></a>low_neighbor</h5>
<!--l. 83--><p class="noindent" >&#8221;low_neighbor(v,x)&#8221; finds the position <span
class="cmtt-12">n </span>in vector <span
class="cmtt-12">[v] </span>of the greatest value scalar element for
@@ -11629,7 +11647,7 @@ class="cmtt-12">[v] </span>element
class="cmtt-12">[x]</span>.
<!--l. 88--><p class="noindent" >
<h5 class="subsubsectionHead"><span class="titlemark">9.2.5. </span> <a
- id="x1-1220009.2.5"></a>high_neighbor</h5>
+ id="x1-1230009.2.5"></a>high_neighbor</h5>
<!--l. 90--><p class="noindent" >&#8221;high_neighbor(v,x)&#8221; finds the position <span
class="cmtt-12">n </span>in vector [v] of the lowest value scalar element for
which <span
@@ -11642,13 +11660,13 @@ class="cmtt-12">[v] </span>element
class="cmtt-12">[x]</span>.
<!--l. 97--><p class="noindent" >
<h5 class="subsubsectionHead"><span class="titlemark">9.2.6. </span> <a
- id="x1-1230009.2.6"></a>render_point</h5>
+ id="x1-1240009.2.6"></a>render_point</h5>
<!--l. 99--><p class="noindent" >&#8221;render_point(x0,y0,x1,y1,X)&#8221; is used to find the Y value at point X along the line specified by
x0, x1, y0 and y1. This function uses an integer algorithm to solve for the point directly without
calculating intervening values along the line.
<!--l. 104--><p class="noindent" >
<div class="fancyvrb" id="fancyvrb46"><a
- id="x1-123002r1"></a><span
+ id="x1-124002r1"></a><span
class="cmr-6">1</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -11660,7 +11678,7 @@ class="cmtt-8">&#x00A0;=</span><span
class="cmtt-8">&#x00A0;[y1]</span><span
class="cmtt-8">&#x00A0;-</span><span
class="cmtt-8">&#x00A0;[y0]</span><br class="fancyvrb" /><a
- id="x1-123004r2"></a><span
+ id="x1-124004r2"></a><span
class="cmr-6">2</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -11671,7 +11689,7 @@ class="cmtt-8">&#x00A0;=</span><span
class="cmtt-8">&#x00A0;[x1]</span><span
class="cmtt-8">&#x00A0;-</span><span
class="cmtt-8">&#x00A0;[x0]</span><br class="fancyvrb" /><a
- id="x1-123006r3"></a><span
+ id="x1-124006r3"></a><span
class="cmr-6">3</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -11683,7 +11701,7 @@ class="cmtt-8">&#x00A0;absolute</span><span
class="cmtt-8">&#x00A0;value</span><span
class="cmtt-8">&#x00A0;of</span><span
class="cmtt-8">&#x00A0;[dy]</span><br class="fancyvrb" /><a
- id="x1-123008r4"></a><span
+ id="x1-124008r4"></a><span
class="cmr-6">4</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -11697,7 +11715,7 @@ class="cmtt-8">&#x00A0;([X]</span><span
class="cmtt-8">&#x00A0;-</span><span
class="cmtt-8">&#x00A0;[x0])</span>
<br class="fancyvrb" /><a
- id="x1-123010r5"></a><span
+ id="x1-124010r5"></a><span
class="cmr-6">5</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -11711,7 +11729,7 @@ class="cmtt-8">&#x00A0;[adx]</span><span
class="cmtt-8">&#x00A0;using</span><span
class="cmtt-8">&#x00A0;integer</span><span
class="cmtt-8">&#x00A0;division</span><br class="fancyvrb" /><a
- id="x1-123012r6"></a><span
+ id="x1-124012r6"></a><span
class="cmr-6">6</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -11726,11 +11744,11 @@ class="cmtt-8">&#x00A0;than</span><span
class="cmtt-8">&#x00A0;zero</span><span
class="cmtt-8">&#x00A0;)</span><span
class="cmtt-8">&#x00A0;{</span><br class="fancyvrb" /><a
- id="x1-123014r7"></a><span
+ id="x1-124014r7"></a><span
class="cmr-6">7</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><br class="fancyvrb" /><a
- id="x1-123016r8"></a><span
+ id="x1-124016r8"></a><span
class="cmr-6">8</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -11747,11 +11765,11 @@ class="cmtt-8">&#x00A0;[y0]</span><span
class="cmtt-8">&#x00A0;-</span><span
class="cmtt-8">&#x00A0;[off]</span>
<br class="fancyvrb" /><a
- id="x1-123018r9"></a><span
+ id="x1-124018r9"></a><span
class="cmr-6">9</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><br class="fancyvrb" /><a
- id="x1-123020r10"></a><span
+ id="x1-124020r10"></a><span
class="cmr-6">10</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -11762,11 +11780,11 @@ class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;}</span><span
class="cmtt-8">&#x00A0;else</span><span
class="cmtt-8">&#x00A0;{</span><br class="fancyvrb" /><a
- id="x1-123022r11"></a><span
+ id="x1-124022r11"></a><span
class="cmr-6">11</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><br class="fancyvrb" /><a
- id="x1-123024r12"></a><span
+ id="x1-124024r12"></a><span
class="cmr-6">12</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -11782,11 +11800,11 @@ class="cmtt-8">&#x00A0;=</span><span
class="cmtt-8">&#x00A0;[y0]</span><span
class="cmtt-8">&#x00A0;+</span><span
class="cmtt-8">&#x00A0;[off]</span><br class="fancyvrb" /><a
- id="x1-123026r13"></a><span
+ id="x1-124026r13"></a><span
class="cmr-6">13</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><br class="fancyvrb" /><a
- id="x1-123028r14"></a><span
+ id="x1-124028r14"></a><span
class="cmr-6">14</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -11795,11 +11813,11 @@ class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;}</span><br class="fancyvrb" /><a
- id="x1-123030r15"></a><span
+ id="x1-124030r15"></a><span
class="cmr-6">15</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><br class="fancyvrb" /><a
- id="x1-123032r16"></a><span
+ id="x1-124032r16"></a><span
class="cmr-6">16</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -11808,7 +11826,7 @@ class="cmtt-8">&#x00A0;9)</span><span
class="cmtt-8">&#x00A0;done</span></div>
<!--l. 125--><p class="noindent" >
<h5 class="subsubsectionHead"><span class="titlemark">9.2.7. </span> <a
- id="x1-1240009.2.7"></a>render_line</h5>
+ id="x1-1250009.2.7"></a>render_line</h5>
@@ -11818,7 +11836,7 @@ been relevant elsewhere, but here we must define integer division as rounding di
positive and negative numbers toward zero.
<!--l. 134--><p class="noindent" >
<div class="fancyvrb" id="fancyvrb47"><a
- id="x1-124002r1"></a><span
+ id="x1-125002r1"></a><span
class="cmr-6">1</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -11831,7 +11849,7 @@ class="cmtt-8">&#x00A0;=</span><span
class="cmtt-8">&#x00A0;[y1]</span><span
class="cmtt-8">&#x00A0;-</span><span
class="cmtt-8">&#x00A0;[y0]</span><br class="fancyvrb" /><a
- id="x1-124004r2"></a><span
+ id="x1-125004r2"></a><span
class="cmr-6">2</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -11843,7 +11861,7 @@ class="cmtt-8">&#x00A0;=</span><span
class="cmtt-8">&#x00A0;[x1]</span><span
class="cmtt-8">&#x00A0;-</span><span
class="cmtt-8">&#x00A0;[x0]</span><br class="fancyvrb" /><a
- id="x1-124006r3"></a><span
+ id="x1-125006r3"></a><span
class="cmr-6">3</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -11856,7 +11874,7 @@ class="cmtt-8">&#x00A0;absolute</span><span
class="cmtt-8">&#x00A0;value</span><span
class="cmtt-8">&#x00A0;of</span><span
class="cmtt-8">&#x00A0;[dy]</span><br class="fancyvrb" /><a
- id="x1-124008r4"></a><span
+ id="x1-125008r4"></a><span
class="cmr-6">4</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -11871,7 +11889,7 @@ class="cmtt-8">&#x00A0;using</span><span
class="cmtt-8">&#x00A0;integer</span><span
class="cmtt-8">&#x00A0;division</span>
<br class="fancyvrb" /><a
- id="x1-124010r5"></a><span
+ id="x1-125010r5"></a><span
class="cmr-6">5</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -11883,7 +11901,7 @@ class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;[x]</span><span
class="cmtt-8">&#x00A0;=</span><span
class="cmtt-8">&#x00A0;[x0]</span><br class="fancyvrb" /><a
- id="x1-124012r6"></a><span
+ id="x1-125012r6"></a><span
class="cmr-6">6</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -11895,7 +11913,7 @@ class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;[y]</span><span
class="cmtt-8">&#x00A0;=</span><span
class="cmtt-8">&#x00A0;[y0]</span><br class="fancyvrb" /><a
- id="x1-124014r7"></a><span
+ id="x1-125014r7"></a><span
class="cmr-6">7</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -11905,11 +11923,11 @@ class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;[err]</span><span
class="cmtt-8">&#x00A0;=</span><span
class="cmtt-8">&#x00A0;0</span><br class="fancyvrb" /><a
- id="x1-124016r8"></a><span
+ id="x1-125016r8"></a><span
class="cmr-6">8</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><br class="fancyvrb" /><a
- id="x1-124018r9"></a><span
+ id="x1-125018r9"></a><span
class="cmr-6">9</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -11924,11 +11942,11 @@ class="cmtt-8">&#x00A0;than</span><span
class="cmtt-8">&#x00A0;0</span><span
class="cmtt-8">&#x00A0;)</span><span
class="cmtt-8">&#x00A0;{</span><br class="fancyvrb" /><a
- id="x1-124020r10"></a><span
+ id="x1-125020r10"></a><span
class="cmr-6">10</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><br class="fancyvrb" /><a
- id="x1-124022r11"></a><span
+ id="x1-125022r11"></a><span
class="cmr-6">11</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -11946,11 +11964,11 @@ class="cmtt-8">&#x00A0;[base]</span><span
class="cmtt-8">&#x00A0;-</span><span
class="cmtt-8">&#x00A0;1</span>
<br class="fancyvrb" /><a
- id="x1-124024r12"></a><span
+ id="x1-125024r12"></a><span
class="cmr-6">12</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><br class="fancyvrb" /><a
- id="x1-124026r13"></a><span
+ id="x1-125026r13"></a><span
class="cmr-6">13</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -11961,11 +11979,11 @@ class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;}</span><span
class="cmtt-8">&#x00A0;else</span><span
class="cmtt-8">&#x00A0;{</span><br class="fancyvrb" /><a
- id="x1-124028r14"></a><span
+ id="x1-125028r14"></a><span
class="cmr-6">14</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><br class="fancyvrb" /><a
- id="x1-124030r15"></a><span
+ id="x1-125030r15"></a><span
class="cmr-6">15</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -11981,11 +11999,11 @@ class="cmtt-8">&#x00A0;=</span><span
class="cmtt-8">&#x00A0;[base]</span><span
class="cmtt-8">&#x00A0;+</span><span
class="cmtt-8">&#x00A0;1</span><br class="fancyvrb" /><a
- id="x1-124032r16"></a><span
+ id="x1-125032r16"></a><span
class="cmr-6">16</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><br class="fancyvrb" /><a
- id="x1-124034r17"></a><span
+ id="x1-125034r17"></a><span
class="cmr-6">17</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -11994,11 +12012,11 @@ class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;}</span><br class="fancyvrb" /><a
- id="x1-124036r18"></a><span
+ id="x1-125036r18"></a><span
class="cmr-6">18</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><br class="fancyvrb" /><a
- id="x1-124038r19"></a><span
+ id="x1-125038r19"></a><span
class="cmr-6">19</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -12014,7 +12032,7 @@ class="cmtt-8">&#x00A0;[base])</span><span
class="cmtt-8">&#x00A0;*</span><span
class="cmtt-8">&#x00A0;[adx]</span>
<br class="fancyvrb" /><a
- id="x1-124040r20"></a><span
+ id="x1-125040r20"></a><span
class="cmr-6">20</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -12025,11 +12043,11 @@ class="cmtt-8">&#x00A0;element</span><span
class="cmtt-8">&#x00A0;[x]</span><span
class="cmtt-8">&#x00A0;=</span><span
class="cmtt-8">&#x00A0;[y]</span><br class="fancyvrb" /><a
- id="x1-124042r21"></a><span
+ id="x1-125042r21"></a><span
class="cmr-6">21</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><br class="fancyvrb" /><a
- id="x1-124044r22"></a><span
+ id="x1-125044r22"></a><span
class="cmr-6">22</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -12043,11 +12061,11 @@ class="cmtt-8">&#x00A0;[x0]+1</span><span
class="cmtt-8">&#x00A0;...</span><span
class="cmtt-8">&#x00A0;[x1]-1</span><span
class="cmtt-8">&#x00A0;{</span><br class="fancyvrb" /><a
- id="x1-124046r23"></a><span
+ id="x1-125046r23"></a><span
class="cmr-6">23</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><br class="fancyvrb" /><a
- id="x1-124048r24"></a><span
+ id="x1-125048r24"></a><span
class="cmr-6">24</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -12064,7 +12082,7 @@ class="cmtt-8">&#x00A0;[err]</span><span
class="cmtt-8">&#x00A0;+</span><span
class="cmtt-8">&#x00A0;[ady];</span>
<br class="fancyvrb" /><a
- id="x1-124050r25"></a><span
+ id="x1-125050r25"></a><span
class="cmr-6">25</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -12082,11 +12100,11 @@ class="cmtt-8">&#x00A0;&#x003E;=</span><span
class="cmtt-8">&#x00A0;[adx]</span><span
class="cmtt-8">&#x00A0;)</span><span
class="cmtt-8">&#x00A0;{</span><br class="fancyvrb" /><a
- id="x1-124052r26"></a><span
+ id="x1-125052r26"></a><span
class="cmr-6">26</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><br class="fancyvrb" /><a
- id="x1-124054r27"></a><span
+ id="x1-125054r27"></a><span
class="cmr-6">27</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -12108,7 +12126,7 @@ class="cmtt-8">&#x00A0;=</span><span
class="cmtt-8">&#x00A0;[err]</span><span
class="cmtt-8">&#x00A0;-</span><span
class="cmtt-8">&#x00A0;[adx]</span><br class="fancyvrb" /><a
- id="x1-124056r28"></a><span
+ id="x1-125056r28"></a><span
class="cmr-6">28</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -12132,12 +12150,12 @@ class="cmtt-8">&#x00A0;=</span><span
class="cmtt-8">&#x00A0;[y]</span><span
class="cmtt-8">&#x00A0;+</span><span
class="cmtt-8">&#x00A0;[sy]</span><br class="fancyvrb" /><a
- id="x1-124058r29"></a><span
+ id="x1-125058r29"></a><span
class="cmr-6">29</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span>
<br class="fancyvrb" /><a
- id="x1-124060r30"></a><span
+ id="x1-125060r30"></a><span
class="cmr-6">30</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -12154,11 +12172,11 @@ class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;}</span><span
class="cmtt-8">&#x00A0;else</span><span
class="cmtt-8">&#x00A0;{</span><br class="fancyvrb" /><a
- id="x1-124062r31"></a><span
+ id="x1-125062r31"></a><span
class="cmr-6">31</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><br class="fancyvrb" /><a
- id="x1-124064r32"></a><span
+ id="x1-125064r32"></a><span
class="cmr-6">32</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -12180,11 +12198,11 @@ class="cmtt-8">&#x00A0;=</span><span
class="cmtt-8">&#x00A0;[y]</span><span
class="cmtt-8">&#x00A0;+</span><span
class="cmtt-8">&#x00A0;[base]</span><br class="fancyvrb" /><a
- id="x1-124066r33"></a><span
+ id="x1-125066r33"></a><span
class="cmr-6">33</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><br class="fancyvrb" /><a
- id="x1-124068r34"></a><span
+ id="x1-125068r34"></a><span
class="cmr-6">34</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -12199,11 +12217,11 @@ class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;}</span><br class="fancyvrb" /><a
- id="x1-124070r35"></a><span
+ id="x1-125070r35"></a><span
class="cmr-6">35</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><br class="fancyvrb" /><a
- id="x1-124072r36"></a><span
+ id="x1-125072r36"></a><span
class="cmr-6">36</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -12220,11 +12238,11 @@ class="cmtt-8">&#x00A0;element</span><span
class="cmtt-8">&#x00A0;[x]</span><span
class="cmtt-8">&#x00A0;=</span><span
class="cmtt-8">&#x00A0;[y]</span><br class="fancyvrb" /><a
- id="x1-124074r37"></a><span
+ id="x1-125074r37"></a><span
class="cmr-6">37</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><br class="fancyvrb" /><a
- id="x1-124076r38"></a><span
+ id="x1-125076r38"></a><span
class="cmr-6">38</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -12240,16 +12258,16 @@ class="cmtt-8">&#x00A0;}</span></div>
<h3 class="sectionHead"><span class="titlemark">10. </span> <a
- id="x1-12500010"></a>Tables</h3>
+ id="x1-12600010"></a>Tables</h3>
<!--l. 6--><p class="noindent" >
<h4 class="subsectionHead"><span class="titlemark">10.1. </span> <a
- id="x1-12600010.1"></a>floor1_inverse_dB_table</h4>
+ id="x1-12700010.1"></a>floor1_inverse_dB_table</h4>
<!--l. 8--><p class="noindent" >The vector <span
class="cmtt-12">[floor1_inverse_dB_table] </span>is a 256 element static lookup table consisting of the
following values (read left to right then top to bottom):
<!--l. 12--><p class="noindent" >
<div class="fancyvrb" id="fancyvrb48"><a
- id="x1-126002r1"></a><span
+ id="x1-127002r1"></a><span
class="cmr-6">1</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -12258,7 +12276,7 @@ class="cmtt-8">&#x00A0;1.0649863e-07,</span><span
class="cmtt-8">&#x00A0;1.1341951e-07,</span><span
class="cmtt-8">&#x00A0;1.2079015e-07,</span><span
class="cmtt-8">&#x00A0;1.2863978e-07,</span><br class="fancyvrb" /><a
- id="x1-126004r2"></a><span
+ id="x1-127004r2"></a><span
class="cmr-6">2</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -12268,7 +12286,7 @@ class="cmtt-8">&#x00A0;1.4590251e-07,</span><span
class="cmtt-8">&#x00A0;1.5538408e-07,</span><span
class="cmtt-8">&#x00A0;1.6548181e-07,</span>
<br class="fancyvrb" /><a
- id="x1-126006r3"></a><span
+ id="x1-127006r3"></a><span
class="cmr-6">3</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -12277,7 +12295,7 @@ class="cmtt-8">&#x00A0;1.7623575e-07,</span><span
class="cmtt-8">&#x00A0;1.8768855e-07,</span><span
class="cmtt-8">&#x00A0;1.9988561e-07,</span><span
class="cmtt-8">&#x00A0;2.1287530e-07,</span><br class="fancyvrb" /><a
- id="x1-126008r4"></a><span
+ id="x1-127008r4"></a><span
class="cmr-6">4</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -12287,7 +12305,7 @@ class="cmtt-8">&#x00A0;2.4144197e-07,</span><span
class="cmtt-8">&#x00A0;2.5713223e-07,</span><span
class="cmtt-8">&#x00A0;2.7384213e-07,</span>
<br class="fancyvrb" /><a
- id="x1-126010r5"></a><span
+ id="x1-127010r5"></a><span
class="cmr-6">5</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -12296,7 +12314,7 @@ class="cmtt-8">&#x00A0;2.9163793e-07,</span><span
class="cmtt-8">&#x00A0;3.1059021e-07,</span><span
class="cmtt-8">&#x00A0;3.3077411e-07,</span><span
class="cmtt-8">&#x00A0;3.5226968e-07,</span><br class="fancyvrb" /><a
- id="x1-126012r6"></a><span
+ id="x1-127012r6"></a><span
class="cmr-6">6</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -12306,7 +12324,7 @@ class="cmtt-8">&#x00A0;3.9954229e-07,</span><span
class="cmtt-8">&#x00A0;4.2550680e-07,</span><span
class="cmtt-8">&#x00A0;4.5315863e-07,</span>
<br class="fancyvrb" /><a
- id="x1-126014r7"></a><span
+ id="x1-127014r7"></a><span
class="cmr-6">7</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -12315,7 +12333,7 @@ class="cmtt-8">&#x00A0;4.8260743e-07,</span><span
class="cmtt-8">&#x00A0;5.1396998e-07,</span><span
class="cmtt-8">&#x00A0;5.4737065e-07,</span><span
class="cmtt-8">&#x00A0;5.8294187e-07,</span><br class="fancyvrb" /><a
- id="x1-126016r8"></a><span
+ id="x1-127016r8"></a><span
class="cmr-6">8</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -12325,7 +12343,7 @@ class="cmtt-8">&#x00A0;6.6116941e-07,</span><span
class="cmtt-8">&#x00A0;7.0413592e-07,</span><span
class="cmtt-8">&#x00A0;7.4989464e-07,</span>
<br class="fancyvrb" /><a
- id="x1-126018r9"></a><span
+ id="x1-127018r9"></a><span
class="cmr-6">9</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -12334,7 +12352,7 @@ class="cmtt-8">&#x00A0;7.9862701e-07,</span><span
class="cmtt-8">&#x00A0;8.5052630e-07,</span><span
class="cmtt-8">&#x00A0;9.0579828e-07,</span><span
class="cmtt-8">&#x00A0;9.6466216e-07,</span><br class="fancyvrb" /><a
- id="x1-126020r10"></a><span
+ id="x1-127020r10"></a><span
class="cmr-6">10</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -12344,7 +12362,7 @@ class="cmtt-8">&#x00A0;1.0941144e-06,</span><span
class="cmtt-8">&#x00A0;1.1652161e-06,</span><span
class="cmtt-8">&#x00A0;1.2409384e-06,</span>
<br class="fancyvrb" /><a
- id="x1-126022r11"></a><span
+ id="x1-127022r11"></a><span
class="cmr-6">11</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -12353,7 +12371,7 @@ class="cmtt-8">&#x00A0;1.3215816e-06,</span><span
class="cmtt-8">&#x00A0;1.4074654e-06,</span><span
class="cmtt-8">&#x00A0;1.4989305e-06,</span><span
class="cmtt-8">&#x00A0;1.5963394e-06,</span><br class="fancyvrb" /><a
- id="x1-126024r12"></a><span
+ id="x1-127024r12"></a><span
class="cmr-6">12</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -12363,7 +12381,7 @@ class="cmtt-8">&#x00A0;1.8105592e-06,</span><span
class="cmtt-8">&#x00A0;1.9282195e-06,</span><span
class="cmtt-8">&#x00A0;2.0535261e-06,</span>
<br class="fancyvrb" /><a
- id="x1-126026r13"></a><span
+ id="x1-127026r13"></a><span
class="cmr-6">13</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -12372,7 +12390,7 @@ class="cmtt-8">&#x00A0;2.1869758e-06,</span><span
class="cmtt-8">&#x00A0;2.3290978e-06,</span><span
class="cmtt-8">&#x00A0;2.4804557e-06,</span><span
class="cmtt-8">&#x00A0;2.6416497e-06,</span><br class="fancyvrb" /><a
- id="x1-126028r14"></a><span
+ id="x1-127028r14"></a><span
class="cmr-6">14</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -12382,7 +12400,7 @@ class="cmtt-8">&#x00A0;2.9961443e-06,</span><span
class="cmtt-8">&#x00A0;3.1908506e-06,</span><span
class="cmtt-8">&#x00A0;3.3982101e-06,</span>
<br class="fancyvrb" /><a
- id="x1-126030r15"></a><span
+ id="x1-127030r15"></a><span
class="cmr-6">15</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -12391,7 +12409,7 @@ class="cmtt-8">&#x00A0;3.6190449e-06,</span><span
class="cmtt-8">&#x00A0;3.8542308e-06,</span><span
class="cmtt-8">&#x00A0;4.1047004e-06,</span><span
class="cmtt-8">&#x00A0;4.3714470e-06,</span><br class="fancyvrb" /><a
- id="x1-126032r16"></a><span
+ id="x1-127032r16"></a><span
class="cmr-6">16</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -12401,7 +12419,7 @@ class="cmtt-8">&#x00A0;4.9580707e-06,</span><span
class="cmtt-8">&#x00A0;5.2802740e-06,</span><span
class="cmtt-8">&#x00A0;5.6234160e-06,</span>
<br class="fancyvrb" /><a
- id="x1-126034r17"></a><span
+ id="x1-127034r17"></a><span
class="cmr-6">17</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -12410,7 +12428,7 @@ class="cmtt-8">&#x00A0;5.9888572e-06,</span><span
class="cmtt-8">&#x00A0;6.3780469e-06,</span><span
class="cmtt-8">&#x00A0;6.7925283e-06,</span><span
class="cmtt-8">&#x00A0;7.2339451e-06,</span><br class="fancyvrb" /><a
- id="x1-126036r18"></a><span
+ id="x1-127036r18"></a><span
class="cmr-6">18</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -12420,7 +12438,7 @@ class="cmtt-8">&#x00A0;8.2047000e-06,</span><span
class="cmtt-8">&#x00A0;8.7378876e-06,</span><span
class="cmtt-8">&#x00A0;9.3057248e-06,</span>
<br class="fancyvrb" /><a
- id="x1-126038r19"></a><span
+ id="x1-127038r19"></a><span
class="cmr-6">19</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -12429,7 +12447,7 @@ class="cmtt-8">&#x00A0;9.9104632e-06,</span><span
class="cmtt-8">&#x00A0;1.0554501e-05,</span><span
class="cmtt-8">&#x00A0;1.1240392e-05,</span><span
class="cmtt-8">&#x00A0;1.1970856e-05,</span><br class="fancyvrb" /><a
- id="x1-126040r20"></a><span
+ id="x1-127040r20"></a><span
class="cmr-6">20</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -12439,7 +12457,7 @@ class="cmtt-8">&#x00A0;1.3577278e-05,</span><span
class="cmtt-8">&#x00A0;1.4459606e-05,</span><span
class="cmtt-8">&#x00A0;1.5399272e-05,</span>
<br class="fancyvrb" /><a
- id="x1-126042r21"></a><span
+ id="x1-127042r21"></a><span
class="cmr-6">21</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -12448,7 +12466,7 @@ class="cmtt-8">&#x00A0;1.6400004e-05,</span><span
class="cmtt-8">&#x00A0;1.7465768e-05,</span><span
class="cmtt-8">&#x00A0;1.8600792e-05,</span><span
class="cmtt-8">&#x00A0;1.9809576e-05,</span><br class="fancyvrb" /><a
- id="x1-126044r22"></a><span
+ id="x1-127044r22"></a><span
class="cmr-6">22</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -12458,7 +12476,7 @@ class="cmtt-8">&#x00A0;2.2467911e-05,</span><span
class="cmtt-8">&#x00A0;2.3928002e-05,</span><span
class="cmtt-8">&#x00A0;2.5482978e-05,</span>
<br class="fancyvrb" /><a
- id="x1-126046r23"></a><span
+ id="x1-127046r23"></a><span
class="cmr-6">23</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -12467,7 +12485,7 @@ class="cmtt-8">&#x00A0;2.7139006e-05,</span><span
class="cmtt-8">&#x00A0;2.8902651e-05,</span><span
class="cmtt-8">&#x00A0;3.0780908e-05,</span><span
class="cmtt-8">&#x00A0;3.2781225e-05,</span><br class="fancyvrb" /><a
- id="x1-126048r24"></a><span
+ id="x1-127048r24"></a><span
class="cmr-6">24</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -12477,7 +12495,7 @@ class="cmtt-8">&#x00A0;3.7180282e-05,</span><span
class="cmtt-8">&#x00A0;3.9596466e-05,</span><span
class="cmtt-8">&#x00A0;4.2169667e-05,</span>
<br class="fancyvrb" /><a
- id="x1-126050r25"></a><span
+ id="x1-127050r25"></a><span
class="cmr-6">25</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -12486,7 +12504,7 @@ class="cmtt-8">&#x00A0;4.4910090e-05,</span><span
class="cmtt-8">&#x00A0;4.7828601e-05,</span><span
class="cmtt-8">&#x00A0;5.0936773e-05,</span><span
class="cmtt-8">&#x00A0;5.4246931e-05,</span><br class="fancyvrb" /><a
- id="x1-126052r26"></a><span
+ id="x1-127052r26"></a><span
class="cmr-6">26</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -12496,7 +12514,7 @@ class="cmtt-8">&#x00A0;6.1526565e-05,</span><span
class="cmtt-8">&#x00A0;6.5524908e-05,</span><span
class="cmtt-8">&#x00A0;6.9783085e-05,</span>
<br class="fancyvrb" /><a
- id="x1-126054r27"></a><span
+ id="x1-127054r27"></a><span
class="cmr-6">27</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -12505,7 +12523,7 @@ class="cmtt-8">&#x00A0;7.4317983e-05,</span><span
class="cmtt-8">&#x00A0;7.9147585e-05,</span><span
class="cmtt-8">&#x00A0;8.4291040e-05,</span><span
class="cmtt-8">&#x00A0;8.9768747e-05,</span><br class="fancyvrb" /><a
- id="x1-126056r28"></a><span
+ id="x1-127056r28"></a><span
class="cmr-6">28</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -12515,7 +12533,7 @@ class="cmtt-8">&#x00A0;0.00010181521,</span><span
class="cmtt-8">&#x00A0;0.00010843174,</span><span
class="cmtt-8">&#x00A0;0.00011547824,</span>
<br class="fancyvrb" /><a
- id="x1-126058r29"></a><span
+ id="x1-127058r29"></a><span
class="cmr-6">29</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -12524,7 +12542,7 @@ class="cmtt-8">&#x00A0;0.00012298267,</span><span
class="cmtt-8">&#x00A0;0.00013097477,</span><span
class="cmtt-8">&#x00A0;0.00013948625,</span><span
class="cmtt-8">&#x00A0;0.00014855085,</span><br class="fancyvrb" /><a
- id="x1-126060r30"></a><span
+ id="x1-127060r30"></a><span
class="cmr-6">30</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -12534,7 +12552,7 @@ class="cmtt-8">&#x00A0;0.00016848555,</span><span
class="cmtt-8">&#x00A0;0.00017943469,</span><span
class="cmtt-8">&#x00A0;0.00019109536,</span>
<br class="fancyvrb" /><a
- id="x1-126062r31"></a><span
+ id="x1-127062r31"></a><span
class="cmr-6">31</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -12543,7 +12561,7 @@ class="cmtt-8">&#x00A0;0.00020351382,</span><span
class="cmtt-8">&#x00A0;0.00021673929,</span><span
class="cmtt-8">&#x00A0;0.00023082423,</span><span
class="cmtt-8">&#x00A0;0.00024582449,</span><br class="fancyvrb" /><a
- id="x1-126064r32"></a><span
+ id="x1-127064r32"></a><span
class="cmr-6">32</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -12553,7 +12571,7 @@ class="cmtt-8">&#x00A0;0.00027881276,</span><span
class="cmtt-8">&#x00A0;0.00029693158,</span><span
class="cmtt-8">&#x00A0;0.00031622787,</span>
<br class="fancyvrb" /><a
- id="x1-126066r33"></a><span
+ id="x1-127066r33"></a><span
class="cmr-6">33</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -12562,7 +12580,7 @@ class="cmtt-8">&#x00A0;0.00033677814,</span><span
class="cmtt-8">&#x00A0;0.00035866388,</span><span
class="cmtt-8">&#x00A0;0.00038197188,</span><span
class="cmtt-8">&#x00A0;0.00040679456,</span><br class="fancyvrb" /><a
- id="x1-126068r34"></a><span
+ id="x1-127068r34"></a><span
class="cmr-6">34</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -12572,7 +12590,7 @@ class="cmtt-8">&#x00A0;0.00046138411,</span><span
class="cmtt-8">&#x00A0;0.00049136745,</span><span
class="cmtt-8">&#x00A0;0.00052329927,</span>
<br class="fancyvrb" /><a
- id="x1-126070r35"></a><span
+ id="x1-127070r35"></a><span
class="cmr-6">35</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -12581,7 +12599,7 @@ class="cmtt-8">&#x00A0;0.00055730621,</span><span
class="cmtt-8">&#x00A0;0.00059352311,</span><span
class="cmtt-8">&#x00A0;0.00063209358,</span><span
class="cmtt-8">&#x00A0;0.00067317058,</span><br class="fancyvrb" /><a
- id="x1-126072r36"></a><span
+ id="x1-127072r36"></a><span
class="cmr-6">36</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -12591,7 +12609,7 @@ class="cmtt-8">&#x00A0;0.00076350630,</span><span
class="cmtt-8">&#x00A0;0.00081312324,</span><span
class="cmtt-8">&#x00A0;0.00086596457,</span>
<br class="fancyvrb" /><a
- id="x1-126074r37"></a><span
+ id="x1-127074r37"></a><span
class="cmr-6">37</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -12601,7 +12619,7 @@ class="cmtt-8">&#x00A0;0.00098217216,</span><span
class="cmtt-8">&#x00A0;0.0010459992,</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;0.0011139742,</span><br class="fancyvrb" /><a
- id="x1-126076r38"></a><span
+ id="x1-127076r38"></a><span
class="cmr-6">38</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -12614,7 +12632,7 @@ class="cmtt-8">&#x00A0;0.0013455702,</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;0.0014330129,</span>
<br class="fancyvrb" /><a
- id="x1-126078r39"></a><span
+ id="x1-127078r39"></a><span
class="cmr-6">39</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -12626,7 +12644,7 @@ class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;0.0017309374,</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;0.0018434235,</span><br class="fancyvrb" /><a
- id="x1-126080r40"></a><span
+ id="x1-127080r40"></a><span
class="cmr-6">40</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -12639,7 +12657,7 @@ class="cmtt-8">&#x00A0;0.0022266726,</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;0.0023713743,</span>
<br class="fancyvrb" /><a
- id="x1-126082r41"></a><span
+ id="x1-127082r41"></a><span
class="cmr-6">41</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -12651,7 +12669,7 @@ class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;0.0028643847,</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;0.0030505286,</span><br class="fancyvrb" /><a
- id="x1-126084r42"></a><span
+ id="x1-127084r42"></a><span
class="cmr-6">42</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -12664,7 +12682,7 @@ class="cmtt-8">&#x00A0;0.0036847358,</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;0.0039241906,</span>
<br class="fancyvrb" /><a
- id="x1-126086r43"></a><span
+ id="x1-127086r43"></a><span
class="cmr-6">43</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -12676,7 +12694,7 @@ class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;0.0047400328,</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;0.0050480668,</span><br class="fancyvrb" /><a
- id="x1-126088r44"></a><span
+ id="x1-127088r44"></a><span
class="cmr-6">44</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -12689,7 +12707,7 @@ class="cmtt-8">&#x00A0;0.0060975636,</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;0.0064938176,</span>
<br class="fancyvrb" /><a
- id="x1-126090r45"></a><span
+ id="x1-127090r45"></a><span
class="cmr-6">45</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -12701,7 +12719,7 @@ class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;0.0078438871,</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;0.0083536271,</span><br class="fancyvrb" /><a
- id="x1-126092r46"></a><span
+ id="x1-127092r46"></a><span
class="cmr-6">46</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -12716,7 +12734,7 @@ class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;0.010746080,</span>
<br class="fancyvrb" /><a
- id="x1-126094r47"></a><span
+ id="x1-127094r47"></a><span
class="cmr-6">47</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -12731,7 +12749,7 @@ class="cmtt-8">&#x00A0;0.012980198,</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;0.013823725,</span><br class="fancyvrb" /><a
- id="x1-126096r48"></a><span
+ id="x1-127096r48"></a><span
class="cmr-6">48</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -12747,7 +12765,7 @@ class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;0.017782797,</span>
<br class="fancyvrb" /><a
- id="x1-126098r49"></a><span
+ id="x1-127098r49"></a><span
class="cmr-6">49</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -12762,7 +12780,7 @@ class="cmtt-8">&#x00A0;0.021479854,</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;0.022875735,</span><br class="fancyvrb" /><a
- id="x1-126100r50"></a><span
+ id="x1-127100r50"></a><span
class="cmr-6">50</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -12778,7 +12796,7 @@ class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;0.029427276,</span>
<br class="fancyvrb" /><a
- id="x1-126102r51"></a><span
+ id="x1-127102r51"></a><span
class="cmr-6">51</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -12793,7 +12811,7 @@ class="cmtt-8">&#x00A0;0.035545228,</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;0.037855157,</span><br class="fancyvrb" /><a
- id="x1-126104r52"></a><span
+ id="x1-127104r52"></a><span
class="cmr-6">52</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -12809,7 +12827,7 @@ class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;0.048696758,</span>
<br class="fancyvrb" /><a
- id="x1-126106r53"></a><span
+ id="x1-127106r53"></a><span
class="cmr-6">53</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -12824,7 +12842,7 @@ class="cmtt-8">&#x00A0;0.058820850,</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;0.062643361,</span><br class="fancyvrb" /><a
- id="x1-126108r54"></a><span
+ id="x1-127108r54"></a><span
class="cmr-6">54</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -12840,7 +12858,7 @@ class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;0.080584227,</span>
<br class="fancyvrb" /><a
- id="x1-126110r55"></a><span
+ id="x1-127110r55"></a><span
class="cmr-6">55</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -12855,7 +12873,7 @@ class="cmtt-8">&#x00A0;0.097337747,</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;0.10366330,</span><br class="fancyvrb" /><a
- id="x1-126112r56"></a><span
+ id="x1-127112r56"></a><span
class="cmr-6">56</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -12874,7 +12892,7 @@ class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;0.13335215,</span>
<br class="fancyvrb" /><a
- id="x1-126114r57"></a><span
+ id="x1-127114r57"></a><span
class="cmr-6">57</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -12892,7 +12910,7 @@ class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;0.17154380,</span><br class="fancyvrb" /><a
- id="x1-126116r58"></a><span
+ id="x1-127116r58"></a><span
class="cmr-6">58</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -12911,7 +12929,7 @@ class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;0.22067342,</span>
<br class="fancyvrb" /><a
- id="x1-126118r59"></a><span
+ id="x1-127118r59"></a><span
class="cmr-6">59</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -12929,7 +12947,7 @@ class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;0.28387361,</span><br class="fancyvrb" /><a
- id="x1-126120r60"></a><span
+ id="x1-127120r60"></a><span
class="cmr-6">60</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -12948,7 +12966,7 @@ class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;0.36517414,</span>
<br class="fancyvrb" /><a
- id="x1-126122r61"></a><span
+ id="x1-127122r61"></a><span
class="cmr-6">61</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -12966,7 +12984,7 @@ class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;0.46975890,</span><br class="fancyvrb" /><a
- id="x1-126124r62"></a><span
+ id="x1-127124r62"></a><span
class="cmr-6">62</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -12985,7 +13003,7 @@ class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;0.60429640,</span>
<br class="fancyvrb" /><a
- id="x1-126126r63"></a><span
+ id="x1-127126r63"></a><span
class="cmr-6">63</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -13003,7 +13021,7 @@ class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;0.77736504,</span><br class="fancyvrb" /><a
- id="x1-126128r64"></a><span
+ id="x1-127128r64"></a><span
class="cmr-6">64</span><span
class="cmtt-8">&#x00A0;</span><span
class="cmtt-8">&#x00A0;</span><span
@@ -13029,10 +13047,10 @@ class="cmtt-8">&#x00A0;1.</span></div>
<h3 class="sectionHead"><span class="titlemark">A. </span> <a
- id="x1-127000A"></a>Embedding Vorbis into an Ogg stream</h3>
+ id="x1-128000A"></a>Embedding Vorbis into an Ogg stream</h3>
<!--l. 6--><p class="noindent" >
<h4 class="subsectionHead"><span class="titlemark">A.1. </span> <a
- id="x1-128000A.1"></a>Overview</h4>
+ id="x1-129000A.1"></a>Overview</h4>
<!--l. 8--><p class="noindent" >This document describes using Ogg logical and physical transport streams to encapsulate Vorbis
compressed audio packet data into file form.
<!--l. 12--><p class="noindent" >The <a
@@ -13047,7 +13065,7 @@ knowledge of the concepts covered in these named backround documents. Please rea
first.
<!--l. 22--><p class="noindent" >
<h5 class="subsubsectionHead"><span class="titlemark">A.1.1. </span> <a
- id="x1-129000A.1.1"></a>Restrictions</h5>
+ id="x1-130000A.1.1"></a>Restrictions</h5>
<!--l. 24--><p class="noindent" >The Ogg/Vorbis I specification currently dictates that Ogg/Vorbis streams use Ogg transport
streams in degenerate, unmultiplexed form only. That is:
<ul class="itemize1">
@@ -13072,7 +13090,7 @@ stream (naturally, application authors are encouraged to support full multiplexe
handling).
<!--l. 55--><p class="noindent" >
<h5 class="subsubsectionHead"><span class="titlemark">A.1.2. </span> <a
- id="x1-130000A.1.2"></a>MIME type</h5>
+ id="x1-131000A.1.2"></a>MIME type</h5>
<!--l. 57--><p class="noindent" >The MIME type of Ogg files depend on the context. Specifically, complex multimedia and
applications should use <span
class="cmtt-12">application/ogg</span>, while visual media should use <span
@@ -13084,7 +13102,7 @@ class="cmtt-12">audio/vorbis </span>+ <span
class="cmtt-12">audio/vorbis-config</span>.
<!--l. 65--><p class="noindent" >
<h4 class="subsectionHead"><span class="titlemark">A.2. </span> <a
- id="x1-131000A.2"></a>Encapsulation</h4>
+ id="x1-132000A.2"></a>Encapsulation</h4>
<!--l. 67--><p class="noindent" >Ogg encapsulation of a Vorbis packet stream is straightforward.
<ul class="itemize1">
<li class="itemize">The first Vorbis packet (the identification header), which uniquely identifies a stream
@@ -13153,7 +13171,7 @@ class="cmti-12">completed </span>on that page. The &#8217;last PCM sample&#8217;
synthesis, resulting in correct positioning information without any aditional seeking
logic.
<!--l. 170--><p class="noindent" ><span class="likesubparagraphHead"><a
- id="x1-132000A.2"></a><span
+ id="x1-133000A.2"></a><span
class="cmbx-12">Note:</span></span> Failure to do so should, at worst, cause a decoder implementation to return
incorrect positioning information for seeking operations at the very beginning of the
stream.
@@ -13168,7 +13186,7 @@ class="cmbx-12">Note:</span></span> Failure to do so should, at worst, cause a d
<h3 class="sectionHead"><span class="titlemark">B. </span> <a
- id="x1-133000B"></a>Vorbis encapsulation in RTP</h3>
+ id="x1-134000B"></a>Vorbis encapsulation in RTP</h3>
<!--l. 8--><p class="noindent" >Please consult RFC 5215 <span
class="cmti-12">&#8220;RTP Payload Format for Vorbis Encoded Audio&#8221; </span>for description of
how to embed Vorbis audio in an RTP stream.
@@ -13179,7 +13197,7 @@ how to embed Vorbis audio in an RTP stream.
<h3 class="likesectionHead"><a
- id="x1-134000B"></a>Colophon</h3>
+ id="x1-135000B"></a>Colophon</h3>
<!--l. 6--><p class="noindent" ><img
src="fish_xiph_org.png" alt="PIC"
>
@@ -13205,7 +13223,7 @@ class="E">E</span>X</span></span>.
<h3 class="likesectionHead"><a
- id="x1-135000B"></a>References</h3>
+ id="x1-136000B"></a>References</h3>
<!--l. 133--><p class="noindent" >
<div class="thebibliography">
<p class="bibitem" ><span class="biblabel">
diff --git a/doc/Vorbis_I_spec.pdf b/doc/Vorbis_I_spec.pdf
index c8d2c158..04c06827 100644
--- a/doc/Vorbis_I_spec.pdf
+++ b/doc/Vorbis_I_spec.pdf
Binary files differ
diff --git a/doc/evenlsp.png b/doc/evenlsp.png
deleted file mode 100644
index 4d4fee45..00000000
--- a/doc/evenlsp.png
+++ /dev/null
Binary files differ
diff --git a/doc/oddlsp.png b/doc/oddlsp.png
deleted file mode 100644
index c7546176..00000000
--- a/doc/oddlsp.png
+++ /dev/null
Binary files differ