Welcome to mirror list, hosted at ThFree Co, Russian Federation.

gitlab.com/quite/celt.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
path: root/doc
diff options
context:
space:
mode:
authorJean-Marc Valin <jean-marc.valin@octasic.com>2009-07-02 23:04:59 +0400
committerJean-Marc Valin <jean-marc.valin@octasic.com>2009-07-02 23:04:59 +0400
commitf727386100e8021bf2bf27a746220419b2124c85 (patch)
treeab96ca7b23bc8e8de26911cf100c6aa55b0236c4 /doc
parent08192e317c23f8e2752efe53b016b0a21f483fc2 (diff)
ietf doc: folding, VBR, misc
Diffstat (limited to 'doc')
-rw-r--r--doc/ietf/draft-valin-celt-codec.xml26
-rw-r--r--doc/ietf/wrap_lines.c34
2 files changed, 57 insertions, 3 deletions
diff --git a/doc/ietf/draft-valin-celt-codec.xml b/doc/ietf/draft-valin-celt-codec.xml
index 405d49b..a7a59ee 100644
--- a/doc/ietf/draft-valin-celt-codec.xml
+++ b/doc/ietf/draft-valin-celt-codec.xml
@@ -528,6 +528,21 @@ and if a sufficient number of bands have a high enough gain, then the pitch bit
Otherwise, no use of pitch is made.
</t>
+<t>
+For frequencies above the highest pitch band (~6374 Hz), the prediction is replaced by
+spectral folding if and only if the folding bit is set (otherwise, the prediction is simply zero).
+The folding prediction uses the quantised spectrum at lower frequencies with a gain that depends
+both on the width of the band N and the number of pulses allocated K:
+</t>
+
+<t>
+g = N / (N + kf * K),
+</t>
+
+<t>
+where kf = 6.
+</t>
+
</section>
<section anchor="pvq" title="Spherical Vector Quantization">
@@ -643,7 +658,7 @@ the pitch predictor for the next few frames.
<section anchor="vbr" title="Variable Bitrate (VBR)">
<t>
-Each CELT frame can be encoded in a different number of octets, making it possible to vary the bitrate at will. This property can be used to implement source-controlled variable bitrate (VBR).
+Each CELT frame can be encoded in a different number of octets, making it possible to vary the bitrate at will. This property can be used to implement source-controlled variable bitrate (VBR). Support for VBR is OPTIONAL for the encoder, but a decoder MUST be prepared to decode a stream that changes its bit-rate dynamically. The method used to vary the bit-rate in VBR mode is left to the implementor, as long as each frame can be decoded by the reference decoder.
</t>
</section>
@@ -803,12 +818,17 @@ Insert some text here.
-->
+<section title="IANA Considerations ">
+<t>
+This document has no actions for IANA.
+</t>
+</section>
+
<section anchor="Acknowledgments" title="Acknowledgments">
<t>
-The authors would also like to thank the following members of the
-CELT and AVT communities for their input:
+The authors would also like to thank the CELT users who contributed source code, feature requests, suggestions or comments.
</t>
</section>
diff --git a/doc/ietf/wrap_lines.c b/doc/ietf/wrap_lines.c
new file mode 100644
index 0000000..c78fde5
--- /dev/null
+++ b/doc/ietf/wrap_lines.c
@@ -0,0 +1,34 @@
+#include <string.h>
+#include <stdio.h>
+
+int main()
+{
+ int comment = 0;
+ int col = 0;
+ char c0, c1;
+ c0 = getchar();
+ while (!feof(stdin))
+ {
+ c1 = getchar();
+ if (c1==9)
+ c1 = 32;
+ if (col < 71 || c0 == 10) {
+ putchar(c0);
+ } else {
+ if (c1 == 10 || c1 == 13)
+ {
+ putchar(c0);
+ } else {
+ putchar ('\\');
+ /*printf ("%d %d %d", col, c0, c1);*/
+ putchar (10);
+ putchar (c0);
+ col=0;
+ }
+ }
+ col++;
+ if (c0 == 10)
+ col=0;
+ c0 = c1;
+ }
+} \ No newline at end of file