summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMonty <xiphmont@xiph.org>2001-10-20 01:04:09 +0000
committerMonty <xiphmont@xiph.org>2001-10-20 01:04:09 +0000
commit246b35feeeff8d0b177abf5825717ce8ba24ce18 (patch)
treec52f6021df3b48858e37e6c16c2ee67de5b505f4
parent1c485ff64852609ce38d2581820715b1ee36f603 (diff)
downloadlibvorbis-git-246b35feeeff8d0b177abf5825717ce8ba24ce18.tar.gz
Ongoing bitrate management work
svn path=/branches/branch_monty_20011009/vorbis/; revision=2184
-rw-r--r--lib/books/res_44c_A_1024aux.vqh14
-rw-r--r--lib/books/res_44c_A_128aux.vqh14
-rw-r--r--lib/books/res_Ac_0.vqh93
-rw-r--r--lib/books/res_Ac_0a.vqh56
-rw-r--r--lib/books/res_Ac_0b.vqh61
-rw-r--r--lib/books/res_Ac_1.vqh16
-rw-r--r--lib/books/res_Ac_1a.vqh70
-rw-r--r--lib/books/res_Ac_2a.vqh65
-rw-r--r--lib/books/res_Ac_2b.vqh61
-rw-r--r--lib/books/res_Ac_2c.vqh61
-rw-r--r--lib/books/res_Ac_3a.vqh58
-rw-r--r--lib/books/res_Ac_3b.vqh58
-rw-r--r--lib/books/res_Ac_4.vqh10
-rw-r--r--lib/books/res_Ac_4a.vqh70
-rw-r--r--lib/books/res_Ac_4b.vqh61
-rw-r--r--lib/books/res_Ac_4c.vqh61
-rw-r--r--lib/books/res_Ac_5.vqh10
-rw-r--r--lib/books/res_Ac_5a.vqh28
-rw-r--r--lib/books/res_Ac_5b.vqh58
-rw-r--r--lib/books/res_Ac_6.vqh2
-rw-r--r--lib/books/res_Ac_6a.vqh93
-rw-r--r--lib/books/res_Ac_6b.vqh70
-rw-r--r--lib/books/res_Ac_7.vqh16
-rw-r--r--lib/books/res_Ac_7a.vqh67
-rw-r--r--lib/books/res_Ac_8.vqh161
-rw-r--r--lib/books/res_Ac_8a.vqh24
-rw-r--r--lib/books/res_Ac_8b.vqh70
-rw-r--r--lib/books/res_Ac_8c.vqh100
-rw-r--r--lib/books/res_Ac_9.vqh8
-rw-r--r--lib/books/res_Ac_9a.vqh22
-rw-r--r--lib/books/res_Ac_9b.vqh22
-rw-r--r--lib/mapping0.c104
-rw-r--r--lib/modes/mode_44c_A.h117
-rw-r--r--lib/modes/modes.h4
-rw-r--r--lib/psy.c150
-rw-r--r--lib/psy.h8
-rw-r--r--lib/res0.c75
-rw-r--r--vq/distribution.c248
-rw-r--r--vq/res_44c_Ab.vqs134
39 files changed, 1763 insertions, 657 deletions
diff --git a/lib/books/res_44c_A_1024aux.vqh b/lib/books/res_44c_A_1024aux.vqh
index 33519310..70ea837e 100644
--- a/lib/books/res_44c_A_1024aux.vqh
+++ b/lib/books/res_44c_A_1024aux.vqh
@@ -20,13 +20,13 @@
#include "codebook.h"
static long _huff_lengthlist_res_44c_A_1024aux[] = {
- 3, 5,18,18,17,17,17,17,11,17, 5, 4,17,17,17,17,
- 17,17, 8,16,17,17, 3,17, 6,17, 7, 9,13,17,17,17,
- 17, 1,17, 7, 9,11,15,17,17,17, 6,17, 7,17, 9,10,
- 16,17,17,17,17, 7,17, 8,10,15,17,17,17,17, 8, 9,
- 9,10, 9,11,16,17,17,17, 9,13,10,17,11,12,15,17,
- 9, 6,14,15,17,17,16,15, 7,14,12, 8,16,17,17,17,
- 17,16,11,16,
+ 3, 6,18,18,17,17,17,17,11,17, 5, 5,17,17,17,17,
+ 17,17, 9,17,17,17, 3,17, 5,17, 7,10,13,17,17,17,
+ 17, 1,17, 7, 9,11,15,17,17,17, 5,17, 6,17, 8,10,
+ 17,17,17,17,17, 6,17, 8, 9,14,17,17,17,17, 8, 9,
+ 8, 9, 8,11,16,17,17,17,10,12,11,15,10,12,15,17,
+ 9, 6,14,15,16,17,16,14, 7,17,13,12,17,17,17,17,
+ 17,17,12,17,
};
static static_codebook _huff_book_res_44c_A_1024aux = {
diff --git a/lib/books/res_44c_A_128aux.vqh b/lib/books/res_44c_A_128aux.vqh
index 20188dce..9e27f5cf 100644
--- a/lib/books/res_44c_A_128aux.vqh
+++ b/lib/books/res_44c_A_128aux.vqh
@@ -20,13 +20,13 @@
#include "codebook.h"
static long _huff_lengthlist_res_44c_A_128aux[] = {
- 16,17, 3,17, 7,17,11,13,17,17, 8,12,11,17,13,17,
- 15,17,17,17,17,17, 2,17, 8,17,11,14,17,17,17,17,
- 17, 1,17, 8,10,17,17,17,17,17, 6,17,10,17,13,16,
- 17,17,17,17,17, 9,17,13,15,17,17,17,17,17,10,11,
- 13,15,15,17,17,17,17,17,12,16,14,17,15,17,17,17,
- 4, 9,17,17,17,17,17,17,17,17, 6,10,17,16,16,16,
- 16,16,16,16,
+ 15,15, 4,15, 5,15, 8,12,15,15, 7,12,11,15,12,15,
+ 12,15,15,15,15,15, 3,15, 6,15, 9,13,15,15,15,15,
+ 15, 1,15, 7, 8,12,15,15,15,15, 4,15, 7,15,10,13,
+ 15,15,15,15,15, 7,15,10,13,15,15,15,15,15, 7, 9,
+ 9,13,11,15,15,15,15,15,12,13,12,14,13,15,15,15,
+ 3, 9,15,15,15,15,15,15,15,15, 6,11,15,15,15,15,
+ 15,15,15,15,
};
static static_codebook _huff_book_res_44c_A_128aux = {
diff --git a/lib/books/res_Ac_0.vqh b/lib/books/res_Ac_0.vqh
new file mode 100644
index 00000000..e400de09
--- /dev/null
+++ b/lib/books/res_Ac_0.vqh
@@ -0,0 +1,93 @@
+/********************************************************************
+ * *
+ * THIS FILE IS PART OF THE OggVorbis SOFTWARE CODEC SOURCE CODE. *
+ * USE, DISTRIBUTION AND REPRODUCTION OF THIS LIBRARY SOURCE IS *
+ * GOVERNED BY A BSD-STYLE SOURCE LICENSE INCLUDED WITH THIS SOURCE *
+ * IN 'COPYING'. PLEASE READ THESE TERMS BEFORE DISTRIBUTING. *
+ * *
+ * THE OggVorbis SOURCE CODE IS (C) COPYRIGHT 1994-2001 *
+ * by the XIPHOPHORUS Company http://www.xiph.org/ *
+ * *
+ ********************************************************************
+
+ function: static codebook autogenerated by vq/somethingorother
+
+ ********************************************************************/
+
+#ifndef _V_res_Ac_0_VQH_
+#define _V_res_Ac_0_VQH_
+#include "codebook.h"
+
+static long _vq_quantlist_res_Ac_0[] = {
+ 8,
+ 7,
+ 9,
+ 6,
+ 10,
+ 5,
+ 11,
+ 4,
+ 12,
+ 3,
+ 13,
+ 2,
+ 14,
+ 1,
+ 15,
+ 0,
+ 16,
+};
+
+static long _vq_lengthlist_res_Ac_0[] = {
+ 1, 4, 4, 8, 8,10,10,11,11, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 4, 4, 7, 7,10,10,11,11, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 4, 4, 7, 7,10,10,11,11, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 7, 7, 8, 8,10,10,11,11, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 7, 7, 8, 7,10,10,12,11, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 9, 9,10,10,11,11, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 9, 9,10,10,12,12, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,11,11,11,11,12,12,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,11,11,11,11,12,
+ 12, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,12,12,
+ 12,12, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,12,
+ 12,13,13, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 14,14,14,13, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0,14,14,13,13, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0,14,14, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0,14,14, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0,16,16, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0,16,16, 0, 0, 0, 0, 0, 0, 0,
+ 0,
+};
+
+static float _vq_quantthresh_res_Ac_0[] = {
+ -7.5, -6.5, -5.5, -4.5, -3.5, -2.5, -1.5, -0.5,
+ 0.5, 1.5, 2.5, 3.5, 4.5, 5.5, 6.5, 7.5,
+};
+
+static long _vq_quantmap_res_Ac_0[] = {
+ 15, 13, 11, 9, 7, 5, 3, 1,
+ 0, 2, 4, 6, 8, 10, 12, 14,
+ 16,
+};
+
+static encode_aux_threshmatch _vq_auxt_res_Ac_0 = {
+ _vq_quantthresh_res_Ac_0,
+ _vq_quantmap_res_Ac_0,
+ 17,
+ 17
+};
+
+static static_codebook _vq_book_res_Ac_0 = {
+ 2, 289,
+ _vq_lengthlist_res_Ac_0,
+ 1, -529530880, 1611661312, 5, 0,
+ _vq_quantlist_res_Ac_0,
+ NULL,
+ &_vq_auxt_res_Ac_0,
+ NULL,
+ 0
+};
+
+
+#endif
diff --git a/lib/books/res_Ac_0a.vqh b/lib/books/res_Ac_0a.vqh
index c895d35b..c11efc1c 100644
--- a/lib/books/res_Ac_0a.vqh
+++ b/lib/books/res_Ac_0a.vqh
@@ -19,58 +19,20 @@
#include "codebook.h"
static long _vq_quantlist_res_Ac_0a[] = {
- 202,
- 101,
- 303,
+ 2,
+ 1,
+ 3,
0,
- 405,
+ 4,
};
static long _vq_lengthlist_res_Ac_0a[] = {
- 3, 5, 5, 0, 0, 7, 6, 6, 0, 0, 7, 6, 6, 0, 0, 0,
- 6, 6, 0, 0, 0, 7, 7, 0, 0, 5, 6, 6, 0, 0, 8, 7,
- 7, 0, 0, 8, 7, 7, 0, 0, 0, 8, 8, 0, 0, 0, 9, 9,
- 0, 0, 5, 6, 6, 0, 0, 8, 7, 7, 0, 0, 8, 7, 7, 0,
- 0, 0, 8, 8, 0, 0, 0, 9, 9, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 7, 8, 8,
- 0, 0, 9, 9, 9, 0, 0, 9, 9, 9, 0, 0, 0, 9, 9, 0,
- 0, 0,10,10, 0, 0, 6, 7, 7, 0, 0, 9, 8, 8, 0, 0,
- 9, 8, 8, 0, 0, 0, 8, 8, 0, 0, 0, 9, 9, 0, 0, 6,
- 7, 7, 0, 0, 9, 8, 8, 0, 0, 9, 8, 8, 0, 0, 0, 8,
- 8, 0, 0, 0, 9, 9, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 7, 8, 8, 0, 0, 9,
- 9, 9, 0, 0, 9, 9, 9, 0, 0, 0, 9, 9, 0, 0, 0,10,
- 10, 0, 0, 6, 7, 7, 0, 0, 9, 8, 8, 0, 0, 9, 8, 8,
- 0, 0, 0, 8, 8, 0, 0, 0, 9, 9, 0, 0, 6, 7, 7, 0,
- 0, 9, 8, 8, 0, 0, 9, 8, 8, 0, 0, 0, 8, 8, 0, 0,
- 0, 9, 9, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 6, 8, 8, 0, 0, 9, 8, 8, 0, 0, 9, 8, 8, 0, 0, 0,
- 9, 9, 0, 0, 0,10,10, 0, 0, 6, 8, 8, 0, 0, 9, 8,
- 8, 0, 0, 9, 8, 8, 0, 0, 0, 9, 9, 0, 0, 0,10,10,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 7, 9, 9,
- 0, 0,10, 9,10, 0, 0,10,10, 9, 0, 0, 0,10,10, 0,
- 0, 0,11,10, 0, 0, 7, 9, 9, 0, 0,10,10, 9, 0, 0,
- 10, 9, 9, 0, 0, 0,10,10, 0, 0, 0,10,11, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0,
+ 2, 3, 3, 0, 0, 4, 4, 4, 0, 0, 4, 4, 4, 0, 0, 0,
+ 5, 5, 0, 0, 0, 5, 5, 0, 0,
};
static float _vq_quantthresh_res_Ac_0a[] = {
- -0.5005, -0.1675, 0.1655, 0.50015,
+ -0.5, -0.16667, 0.16667, 0.5,
};
static long _vq_quantmap_res_Ac_0a[] = {
@@ -85,9 +47,9 @@ static encode_aux_threshmatch _vq_auxt_res_Ac_0a = {
};
static static_codebook _vq_book_res_Ac_0a = {
- 4, 625,
+ 2, 25,
_vq_lengthlist_res_Ac_0a,
- 1, -537569264, 1593508447, 9, 0,
+ 1, -537569962, 1607816532, 3, 0,
_vq_quantlist_res_Ac_0a,
NULL,
&_vq_auxt_res_Ac_0a,
diff --git a/lib/books/res_Ac_0b.vqh b/lib/books/res_Ac_0b.vqh
new file mode 100644
index 00000000..f0dfc822
--- /dev/null
+++ b/lib/books/res_Ac_0b.vqh
@@ -0,0 +1,61 @@
+/********************************************************************
+ * *
+ * THIS FILE IS PART OF THE OggVorbis SOFTWARE CODEC SOURCE CODE. *
+ * USE, DISTRIBUTION AND REPRODUCTION OF THIS LIBRARY SOURCE IS *
+ * GOVERNED BY A BSD-STYLE SOURCE LICENSE INCLUDED WITH THIS SOURCE *
+ * IN 'COPYING'. PLEASE READ THESE TERMS BEFORE DISTRIBUTING. *
+ * *
+ * THE OggVorbis SOURCE CODE IS (C) COPYRIGHT 1994-2001 *
+ * by the XIPHOPHORUS Company http://www.xiph.org/ *
+ * *
+ ********************************************************************
+
+ function: static codebook autogenerated by vq/somethingorother
+
+ ********************************************************************/
+
+#ifndef _V_res_Ac_0b_VQH_
+#define _V_res_Ac_0b_VQH_
+#include "codebook.h"
+
+static long _vq_quantlist_res_Ac_0b[] = {
+ 2,
+ 1,
+ 3,
+ 0,
+ 4,
+};
+
+static long _vq_lengthlist_res_Ac_0b[] = {
+ 2, 3, 3, 0, 0, 4, 4, 4, 0, 0, 4, 4, 4, 0, 0, 0,
+ 5, 5, 0, 0, 0, 5, 5, 0, 0,
+};
+
+static float _vq_quantthresh_res_Ac_0b[] = {
+ -0.16667, -0.055555, 0.055555, 0.16667,
+};
+
+static long _vq_quantmap_res_Ac_0b[] = {
+ 3, 1, 0, 2, 4,
+};
+
+static encode_aux_threshmatch _vq_auxt_res_Ac_0b = {
+ _vq_quantthresh_res_Ac_0b,
+ _vq_quantmap_res_Ac_0b,
+ 5,
+ 5
+};
+
+static static_codebook _vq_book_res_Ac_0b = {
+ 2, 25,
+ _vq_lengthlist_res_Ac_0b,
+ 1, -541298235, 1604088261, 3, 0,
+ _vq_quantlist_res_Ac_0b,
+ NULL,
+ &_vq_auxt_res_Ac_0b,
+ NULL,
+ 0
+};
+
+
+#endif
diff --git a/lib/books/res_Ac_1.vqh b/lib/books/res_Ac_1.vqh
index 75abea39..95c039ed 100644
--- a/lib/books/res_Ac_1.vqh
+++ b/lib/books/res_Ac_1.vqh
@@ -31,16 +31,16 @@ static long _vq_quantlist_res_Ac_1[] = {
};
static long _vq_lengthlist_res_Ac_1[] = {
- 1, 4, 3, 6, 6, 8, 8,10,10, 5, 5, 5, 7, 7, 9, 9,
- 10,10, 6, 5, 5, 7, 7, 9, 9,10,11, 0, 7, 8, 8, 8,
- 9,10,11,11, 0, 8, 8, 8, 8,10,10,11,11, 0,12,12,
- 9, 9,10,10,12,11, 0,13,12,10, 9,11,11,12,12, 0,
- 0, 0,11,11,12,11,12,13, 0, 0, 0,12,12,12,12,13,
- 13,
+ 1, 3, 3, 7, 7,17,17,17,17, 5, 5, 5, 7, 8,17,17,
+ 17,17, 5, 5, 5, 8, 8,17,17,17,17,17, 8, 8, 9, 9,
+ 17,17,17,17,17, 8, 8, 9,10,17,17,17,17,17,13,13,
+ 10,10,17,17,17,17,17,12,13,11,10,17,17,17,17,17,
+ 17,17,13,13,17,17,17,17,17,17,17,13,13,17,17,16,
+ 16,
};
static float _vq_quantthresh_res_Ac_1[] = {
- -17.5, -12.5, -7.5, -2.5, 2.5, 7.5, 12.5, 17.5,
+ -31.5, -22.5, -13.5, -4.5, 4.5, 13.5, 22.5, 31.5,
};
static long _vq_quantmap_res_Ac_1[] = {
@@ -58,7 +58,7 @@ static encode_aux_threshmatch _vq_auxt_res_Ac_1 = {
static static_codebook _vq_book_res_Ac_1 = {
2, 81,
_vq_lengthlist_res_Ac_1,
- 1, -527171584, 1616117760, 4, 0,
+ 1, -525205504, 1618083840, 4, 0,
_vq_quantlist_res_Ac_1,
NULL,
&_vq_auxt_res_Ac_1,
diff --git a/lib/books/res_Ac_1a.vqh b/lib/books/res_Ac_1a.vqh
new file mode 100644
index 00000000..198ca4f5
--- /dev/null
+++ b/lib/books/res_Ac_1a.vqh
@@ -0,0 +1,70 @@
+/********************************************************************
+ * *
+ * THIS FILE IS PART OF THE OggVorbis SOFTWARE CODEC SOURCE CODE. *
+ * USE, DISTRIBUTION AND REPRODUCTION OF THIS LIBRARY SOURCE IS *
+ * GOVERNED BY A BSD-STYLE SOURCE LICENSE INCLUDED WITH THIS SOURCE *
+ * IN 'COPYING'. PLEASE READ THESE TERMS BEFORE DISTRIBUTING. *
+ * *
+ * THE OggVorbis SOURCE CODE IS (C) COPYRIGHT 1994-2001 *
+ * by the XIPHOPHORUS Company http://www.xiph.org/ *
+ * *
+ ********************************************************************
+
+ function: static codebook autogenerated by vq/somethingorother
+
+ ********************************************************************/
+
+#ifndef _V_res_Ac_1a_VQH_
+#define _V_res_Ac_1a_VQH_
+#include "codebook.h"
+
+static long _vq_quantlist_res_Ac_1a[] = {
+ 4,
+ 3,
+ 5,
+ 2,
+ 6,
+ 1,
+ 7,
+ 0,
+ 8,
+};
+
+static long _vq_lengthlist_res_Ac_1a[] = {
+ 2, 4, 4, 6, 6, 7, 7, 8, 8, 9, 4, 4, 6, 6, 7, 7,
+ 8, 8, 9, 4, 4, 6, 6, 7, 7, 8, 8, 9, 7, 7, 7, 7,
+ 8, 8, 8, 8, 9, 7, 7, 7, 7, 8, 8, 8, 8,10,10, 9,
+ 7, 8, 8, 8, 8, 8,10,10,10, 8, 7, 8, 8, 8, 8,10,
+ 10,10, 9, 9, 8, 8, 8, 8,10,10, 9, 8, 9, 8, 8, 8,
+ 8,
+};
+
+static float _vq_quantthresh_res_Ac_1a[] = {
+ -3.5, -2.5, -1.5, -0.5, 0.5, 1.5, 2.5, 3.5,
+};
+
+static long _vq_quantmap_res_Ac_1a[] = {
+ 7, 5, 3, 1, 0, 2, 4, 6,
+ 8,
+};
+
+static encode_aux_threshmatch _vq_auxt_res_Ac_1a = {
+ _vq_quantthresh_res_Ac_1a,
+ _vq_quantmap_res_Ac_1a,
+ 9,
+ 9
+};
+
+static static_codebook _vq_book_res_Ac_1a = {
+ 2, 81,
+ _vq_lengthlist_res_Ac_1a,
+ 1, -531628032, 1611661312, 4, 0,
+ _vq_quantlist_res_Ac_1a,
+ NULL,
+ &_vq_auxt_res_Ac_1a,
+ NULL,
+ 0
+};
+
+
+#endif
diff --git a/lib/books/res_Ac_2a.vqh b/lib/books/res_Ac_2a.vqh
index d6b55492..80e4e8d7 100644
--- a/lib/books/res_Ac_2a.vqh
+++ b/lib/books/res_Ac_2a.vqh
@@ -19,46 +19,75 @@
#include "codebook.h"
static long _vq_quantlist_res_Ac_2a[] = {
- 4,
- 3,
- 5,
2,
- 6,
1,
- 7,
+ 3,
0,
- 8,
+ 4,
};
static long _vq_lengthlist_res_Ac_2a[] = {
- 1, 0, 0, 0, 0, 0, 0, 0, 0, 3, 5, 5, 0, 0, 0, 0,
- 0, 0, 3, 4, 4, 0, 0, 0, 0, 0, 0, 6, 9, 9, 6, 6,
- 0, 0, 0, 0, 0, 8, 8,14,13, 0, 0, 0, 0, 0,11,10,
- 16,14, 0, 0, 0, 0, 0,10,10,13,14, 0, 0, 0, 0, 0,
- 0, 0,17,17, 0, 0, 0, 0, 0, 0, 0,16,16, 0, 0, 0,
+ 1, 0, 0, 0, 0, 4, 6, 6, 0, 0, 4, 6, 6, 0, 0, 7,
+ 0, 0, 0, 0, 7, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 4, 0, 0,
+ 0, 0, 7, 9, 9, 0, 0, 7, 8, 8, 0, 0, 9, 0, 0, 0,
+ 0, 9, 0, 0, 0, 0, 6, 0, 0, 0, 0, 8,10, 9, 0, 0,
+ 9,10,10, 0, 0,11, 0, 0, 0, 0,11, 0, 0, 0, 0, 6,
+ 0, 0, 0, 0, 9,10,10, 0, 0, 8,10,10, 0, 0,11, 0,
+ 0, 0, 0,11, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 5, 0, 0, 0, 0, 7,
+ 9, 9, 0, 0, 7, 8, 8, 0, 0, 9, 0, 0, 0, 0, 9, 0,
+ 0, 0, 0, 6, 0, 0, 0, 0, 8,10,10, 0, 0, 9,10, 9,
+ 0, 0,11, 0, 0, 0, 0,11, 0, 0, 0, 0, 6, 0, 0, 0,
+ 0, 8,10,10, 0, 0, 8, 9,10, 0, 0,11, 0, 0, 0, 0,
+ 11, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 7, 0, 0, 0, 0, 9,11,11, 0,
+ 0, 9,11,11, 0, 0,11, 0, 0, 0, 0,10, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 7, 0, 0, 0, 0, 9,11,11, 0, 0, 9,11,
+ 11, 0, 0,10, 0, 0, 0, 0,11, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0,
};
static float _vq_quantthresh_res_Ac_2a[] = {
- -3.5, -2.5, -1.5, -0.5, 0.5, 1.5, 2.5, 3.5,
+ -1.5, -0.5, 0.5, 1.5,
};
static long _vq_quantmap_res_Ac_2a[] = {
- 7, 5, 3, 1, 0, 2, 4, 6,
- 8,
+ 3, 1, 0, 2, 4,
};
static encode_aux_threshmatch _vq_auxt_res_Ac_2a = {
_vq_quantthresh_res_Ac_2a,
_vq_quantmap_res_Ac_2a,
- 9,
- 9
+ 5,
+ 5
};
static static_codebook _vq_book_res_Ac_2a = {
- 2, 81,
+ 4, 625,
_vq_lengthlist_res_Ac_2a,
- 1, -531628032, 1611661312, 4, 0,
+ 1, -533725184, 1611661312, 3, 0,
_vq_quantlist_res_Ac_2a,
NULL,
&_vq_auxt_res_Ac_2a,
diff --git a/lib/books/res_Ac_2b.vqh b/lib/books/res_Ac_2b.vqh
new file mode 100644
index 00000000..3ee211ac
--- /dev/null
+++ b/lib/books/res_Ac_2b.vqh
@@ -0,0 +1,61 @@
+/********************************************************************
+ * *
+ * THIS FILE IS PART OF THE OggVorbis SOFTWARE CODEC SOURCE CODE. *
+ * USE, DISTRIBUTION AND REPRODUCTION OF THIS LIBRARY SOURCE IS *
+ * GOVERNED BY A BSD-STYLE SOURCE LICENSE INCLUDED WITH THIS SOURCE *
+ * IN 'COPYING'. PLEASE READ THESE TERMS BEFORE DISTRIBUTING. *
+ * *
+ * THE OggVorbis SOURCE CODE IS (C) COPYRIGHT 1994-2001 *
+ * by the XIPHOPHORUS Company http://www.xiph.org/ *
+ * *
+ ********************************************************************
+
+ function: static codebook autogenerated by vq/somethingorother
+
+ ********************************************************************/
+
+#ifndef _V_res_Ac_2b_VQH_
+#define _V_res_Ac_2b_VQH_
+#include "codebook.h"
+
+static long _vq_quantlist_res_Ac_2b[] = {
+ 2,
+ 1,
+ 3,
+ 0,
+ 4,
+};
+
+static long _vq_lengthlist_res_Ac_2b[] = {
+ 2, 3, 3, 0, 0, 5, 4, 4, 0, 0, 5, 4, 4, 0, 0, 0,
+ 5, 4, 0, 0, 0, 5, 4, 0, 0,
+};
+
+static float _vq_quantthresh_res_Ac_2b[] = {
+ -0.5, -0.16667, 0.16667, 0.5,
+};
+
+static long _vq_quantmap_res_Ac_2b[] = {
+ 3, 1, 0, 2, 4,
+};
+
+static encode_aux_threshmatch _vq_auxt_res_Ac_2b = {
+ _vq_quantthresh_res_Ac_2b,
+ _vq_quantmap_res_Ac_2b,
+ 5,
+ 5
+};
+
+static static_codebook _vq_book_res_Ac_2b = {
+ 2, 25,
+ _vq_lengthlist_res_Ac_2b,
+ 1, -537569962, 1607816532, 3, 0,
+ _vq_quantlist_res_Ac_2b,
+ NULL,
+ &_vq_auxt_res_Ac_2b,
+ NULL,
+ 0
+};
+
+
+#endif
diff --git a/lib/books/res_Ac_2c.vqh b/lib/books/res_Ac_2c.vqh
new file mode 100644
index 00000000..409c710a
--- /dev/null
+++ b/lib/books/res_Ac_2c.vqh
@@ -0,0 +1,61 @@
+/********************************************************************
+ * *
+ * THIS FILE IS PART OF THE OggVorbis SOFTWARE CODEC SOURCE CODE. *
+ * USE, DISTRIBUTION AND REPRODUCTION OF THIS LIBRARY SOURCE IS *
+ * GOVERNED BY A BSD-STYLE SOURCE LICENSE INCLUDED WITH THIS SOURCE *
+ * IN 'COPYING'. PLEASE READ THESE TERMS BEFORE DISTRIBUTING. *
+ * *
+ * THE OggVorbis SOURCE CODE IS (C) COPYRIGHT 1994-2001 *
+ * by the XIPHOPHORUS Company http://www.xiph.org/ *
+ * *
+ ********************************************************************
+
+ function: static codebook autogenerated by vq/somethingorother
+
+ ********************************************************************/
+
+#ifndef _V_res_Ac_2c_VQH_
+#define _V_res_Ac_2c_VQH_
+#include "codebook.h"
+
+static long _vq_quantlist_res_Ac_2c[] = {
+ 2,
+ 1,
+ 3,
+ 0,
+ 4,
+};
+
+static long _vq_lengthlist_res_Ac_2c[] = {
+ 2, 4, 4, 0, 0, 4, 4, 3, 0, 0, 4, 4, 3, 0, 0, 0,
+ 5, 5, 0, 0, 0, 5, 5, 0, 0,
+};
+
+static float _vq_quantthresh_res_Ac_2c[] = {
+ -0.16667, -0.055555, 0.055555, 0.16667,
+};
+
+static long _vq_quantmap_res_Ac_2c[] = {
+ 3, 1, 0, 2, 4,
+};
+
+static encode_aux_threshmatch _vq_auxt_res_Ac_2c = {
+ _vq_quantthresh_res_Ac_2c,
+ _vq_quantmap_res_Ac_2c,
+ 5,
+ 5
+};
+
+static static_codebook _vq_book_res_Ac_2c = {
+ 2, 25,
+ _vq_lengthlist_res_Ac_2c,
+ 1, -541298235, 1604088261, 3, 0,
+ _vq_quantlist_res_Ac_2c,
+ NULL,
+ &_vq_auxt_res_Ac_2c,
+ NULL,
+ 0
+};
+
+
+#endif
diff --git a/lib/books/res_Ac_3a.vqh b/lib/books/res_Ac_3a.vqh
new file mode 100644
index 00000000..db7136a7
--- /dev/null
+++ b/lib/books/res_Ac_3a.vqh
@@ -0,0 +1,58 @@
+/********************************************************************
+ * *
+ * THIS FILE IS PART OF THE OggVorbis SOFTWARE CODEC SOURCE CODE. *
+ * USE, DISTRIBUTION AND REPRODUCTION OF THIS LIBRARY SOURCE IS *
+ * GOVERNED BY A BSD-STYLE SOURCE LICENSE INCLUDED WITH THIS SOURCE *
+ * IN 'COPYING'. PLEASE READ THESE TERMS BEFORE DISTRIBUTING. *
+ * *
+ * THE OggVorbis SOURCE CODE IS (C) COPYRIGHT 1994-2001 *
+ * by the XIPHOPHORUS Company http://www.xiph.org/ *
+ * *
+ ********************************************************************
+
+ function: static codebook autogenerated by vq/somethingorother
+
+ ********************************************************************/
+
+#ifndef _V_res_Ac_3a_VQH_
+#define _V_res_Ac_3a_VQH_
+#include "codebook.h"
+
+static long _vq_quantlist_res_Ac_3a[] = {
+ 1,
+ 0,
+ 2,
+};
+
+static long _vq_lengthlist_res_Ac_3a[] = {
+ 1, 2, 2, 0, 0, 0, 0, 0, 0,
+};
+
+static float _vq_quantthresh_res_Ac_3a[] = {
+ -0.16667, 0.16667,
+};
+
+static long _vq_quantmap_res_Ac_3a[] = {
+ 1, 0, 2,
+};
+
+static encode_aux_threshmatch _vq_auxt_res_Ac_3a = {
+ _vq_quantthresh_res_Ac_3a,
+ _vq_quantmap_res_Ac_3a,
+ 3,
+ 3
+};
+
+static static_codebook _vq_book_res_Ac_3a = {
+ 2, 9,
+ _vq_lengthlist_res_Ac_3a,
+ 1, -539667116, 1607816532, 2, 0,
+ _vq_quantlist_res_Ac_3a,
+ NULL,
+ &_vq_auxt_res_Ac_3a,
+ NULL,
+ 0
+};
+
+
+#endif
diff --git a/lib/books/res_Ac_3b.vqh b/lib/books/res_Ac_3b.vqh
new file mode 100644
index 00000000..dffcd43b
--- /dev/null
+++ b/lib/books/res_Ac_3b.vqh
@@ -0,0 +1,58 @@
+/********************************************************************
+ * *
+ * THIS FILE IS PART OF THE OggVorbis SOFTWARE CODEC SOURCE CODE. *
+ * USE, DISTRIBUTION AND REPRODUCTION OF THIS LIBRARY SOURCE IS *
+ * GOVERNED BY A BSD-STYLE SOURCE LICENSE INCLUDED WITH THIS SOURCE *
+ * IN 'COPYING'. PLEASE READ THESE TERMS BEFORE DISTRIBUTING. *
+ * *
+ * THE OggVorbis SOURCE CODE IS (C) COPYRIGHT 1994-2001 *
+ * by the XIPHOPHORUS Company http://www.xiph.org/ *
+ * *
+ ********************************************************************
+
+ function: static codebook autogenerated by vq/somethingorother
+
+ ********************************************************************/
+
+#ifndef _V_res_Ac_3b_VQH_
+#define _V_res_Ac_3b_VQH_
+#include "codebook.h"
+
+static long _vq_quantlist_res_Ac_3b[] = {
+ 1,
+ 0,
+ 2,
+};
+
+static long _vq_lengthlist_res_Ac_3b[] = {
+ 1, 2, 2, 0, 0, 0, 0, 0, 0,
+};
+
+static float _vq_quantthresh_res_Ac_3b[] = {
+ -0.055555, 0.055555,
+};
+
+static long _vq_quantmap_res_Ac_3b[] = {
+ 1, 0, 2,
+};
+
+static encode_aux_threshmatch _vq_auxt_res_Ac_3b = {
+ _vq_quantthresh_res_Ac_3b,
+ _vq_quantmap_res_Ac_3b,
+ 3,
+ 3
+};
+
+static static_codebook _vq_book_res_Ac_3b = {
+ 2, 9,
+ _vq_lengthlist_res_Ac_3b,
+ 1, -543395387, 1604088261, 2, 0,
+ _vq_quantlist_res_Ac_3b,
+ NULL,
+ &_vq_auxt_res_Ac_3b,
+ NULL,
+ 0
+};
+
+
+#endif
diff --git a/lib/books/res_Ac_4.vqh b/lib/books/res_Ac_4.vqh
index 3e39361e..27d0bf04 100644
--- a/lib/books/res_Ac_4.vqh
+++ b/lib/books/res_Ac_4.vqh
@@ -27,13 +27,13 @@ static long _vq_quantlist_res_Ac_4[] = {
};
static long _vq_lengthlist_res_Ac_4[] = {
- 1, 4, 4, 7, 7, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 4, 5, 5, 7, 7, 0, 0,
+ 2, 3, 3, 8, 8, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 5, 4, 8, 8, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 4, 5, 5, 6, 7, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 7, 7, 6, 9, 9,
+ 0, 0, 3, 4, 5, 7, 8, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 7, 8, 7,10,10,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 7, 6, 7, 9, 9, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 8, 8, 8,10,10, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
diff --git a/lib/books/res_Ac_4a.vqh b/lib/books/res_Ac_4a.vqh
new file mode 100644
index 00000000..daa358d8
--- /dev/null
+++ b/lib/books/res_Ac_4a.vqh
@@ -0,0 +1,70 @@
+/********************************************************************
+ * *
+ * THIS FILE IS PART OF THE OggVorbis SOFTWARE CODEC SOURCE CODE. *
+ * USE, DISTRIBUTION AND REPRODUCTION OF THIS LIBRARY SOURCE IS *
+ * GOVERNED BY A BSD-STYLE SOURCE LICENSE INCLUDED WITH THIS SOURCE *
+ * IN 'COPYING'. PLEASE READ THESE TERMS BEFORE DISTRIBUTING. *
+ * *
+ * THE OggVorbis SOURCE CODE IS (C) COPYRIGHT 1994-2001 *
+ * by the XIPHOPHORUS Company http://www.xiph.org/ *
+ * *
+ ********************************************************************
+
+ function: static codebook autogenerated by vq/somethingorother
+
+ ********************************************************************/
+
+#ifndef _V_res_Ac_4a_VQH_
+#define _V_res_Ac_4a_VQH_
+#include "codebook.h"
+
+static long _vq_quantlist_res_Ac_4a[] = {
+ 4,
+ 3,
+ 5,
+ 2,
+ 6,
+ 1,
+ 7,
+ 0,
+ 8,
+};
+
+static long _vq_lengthlist_res_Ac_4a[] = {
+ 1, 0, 0, 0, 0, 0, 0, 0, 0, 3, 5, 5, 0, 0, 0, 0,
+ 0, 0, 3, 5, 5, 0, 0, 0, 0, 0, 0, 5, 7, 7, 0, 0,
+ 0, 0, 0, 0, 5, 7, 7,11,11, 0, 0, 0, 0, 8, 8, 8,
+ 0, 0, 0, 0, 0, 0, 8, 7, 8, 0, 0, 0, 0, 0, 0,10,
+ 0, 0, 0, 0, 0, 0, 0, 0, 9, 0, 0, 0, 0, 0, 0, 0,
+ 0,
+};
+
+static float _vq_quantthresh_res_Ac_4a[] = {
+ -3.5, -2.5, -1.5, -0.5, 0.5, 1.5, 2.5, 3.5,
+};
+
+static long _vq_quantmap_res_Ac_4a[] = {
+ 7, 5, 3, 1, 0, 2, 4, 6,
+ 8,
+};
+
+static encode_aux_threshmatch _vq_auxt_res_Ac_4a = {
+ _vq_quantthresh_res_Ac_4a,
+ _vq_quantmap_res_Ac_4a,
+ 9,
+ 9
+};
+
+static static_codebook _vq_book_res_Ac_4a = {
+ 2, 81,
+ _vq_lengthlist_res_Ac_4a,
+ 1, -531628032, 1611661312, 4, 0,
+ _vq_quantlist_res_Ac_4a,
+ NULL,
+ &_vq_auxt_res_Ac_4a,
+ NULL,
+ 0
+};
+
+
+#endif
diff --git a/lib/books/res_Ac_4b.vqh b/lib/books/res_Ac_4b.vqh
new file mode 100644
index 00000000..6eb85207
--- /dev/null
+++ b/lib/books/res_Ac_4b.vqh
@@ -0,0 +1,61 @@
+/********************************************************************
+ * *
+ * THIS FILE IS PART OF THE OggVorbis SOFTWARE CODEC SOURCE CODE. *
+ * USE, DISTRIBUTION AND REPRODUCTION OF THIS LIBRARY SOURCE IS *
+ * GOVERNED BY A BSD-STYLE SOURCE LICENSE INCLUDED WITH THIS SOURCE *
+ * IN 'COPYING'. PLEASE READ THESE TERMS BEFORE DISTRIBUTING. *
+ * *
+ * THE OggVorbis SOURCE CODE IS (C) COPYRIGHT 1994-2001 *
+ * by the XIPHOPHORUS Company http://www.xiph.org/ *
+ * *
+ ********************************************************************
+
+ function: static codebook autogenerated by vq/somethingorother
+
+ ********************************************************************/
+
+#ifndef _V_res_Ac_4b_VQH_
+#define _V_res_Ac_4b_VQH_
+#include "codebook.h"
+
+static long _vq_quantlist_res_Ac_4b[] = {
+ 2,
+ 1,
+ 3,
+ 0,
+ 4,
+};
+
+static long _vq_lengthlist_res_Ac_4b[] = {
+ 3, 3, 3, 0, 0, 4, 4, 4, 0, 0, 4, 4, 4, 0, 0, 0,
+ 4, 4, 0, 0, 0, 4, 4, 0, 0,
+};
+
+static float _vq_quantthresh_res_Ac_4b[] = {
+ -0.5, -0.16667, 0.16667, 0.5,
+};
+
+static long _vq_quantmap_res_Ac_4b[] = {
+ 3, 1, 0, 2, 4,
+};
+
+static encode_aux_threshmatch _vq_auxt_res_Ac_4b = {
+ _vq_quantthresh_res_Ac_4b,
+ _vq_quantmap_res_Ac_4b,
+ 5,
+ 5
+};
+
+static static_codebook _vq_book_res_Ac_4b = {
+ 2, 25,
+ _vq_lengthlist_res_Ac_4b,
+ 1, -537569962, 1607816532, 3, 0,
+ _vq_quantlist_res_Ac_4b,
+ NULL,
+ &_vq_auxt_res_Ac_4b,
+ NULL,
+ 0
+};
+
+
+#endif
diff --git a/lib/books/res_Ac_4c.vqh b/lib/books/res_Ac_4c.vqh
new file mode 100644
index 00000000..9e02fd4c
--- /dev/null
+++ b/lib/books/res_Ac_4c.vqh
@@ -0,0 +1,61 @@
+/********************************************************************
+ * *
+ * THIS FILE IS PART OF THE OggVorbis SOFTWARE CODEC SOURCE CODE. *
+ * USE, DISTRIBUTION AND REPRODUCTION OF THIS LIBRARY SOURCE IS *
+ * GOVERNED BY A BSD-STYLE SOURCE LICENSE INCLUDED WITH THIS SOURCE *
+ * IN 'COPYING'. PLEASE READ THESE TERMS BEFORE DISTRIBUTING. *
+ * *
+ * THE OggVorbis SOURCE CODE IS (C) COPYRIGHT 1994-2001 *
+ * by the XIPHOPHORUS Company http://www.xiph.org/ *
+ * *
+ ********************************************************************
+
+ function: static codebook autogenerated by vq/somethingorother
+
+ ********************************************************************/
+
+#ifndef _V_res_Ac_4c_VQH_
+#define _V_res_Ac_4c_VQH_
+#include "codebook.h"
+
+static long _vq_quantlist_res_Ac_4c[] = {
+ 2,
+ 1,
+ 3,
+ 0,
+ 4,
+};
+
+static long _vq_lengthlist_res_Ac_4c[] = {
+ 2, 4, 4, 0, 0, 4, 4, 4, 0, 0, 4, 3, 3, 0, 0, 0,
+ 5, 5, 0, 0, 0, 5, 5, 0, 0,
+};
+
+static float _vq_quantthresh_res_Ac_4c[] = {
+ -0.16667, -0.055555, 0.055555, 0.16667,
+};
+
+static long _vq_quantmap_res_Ac_4c[] = {
+ 3, 1, 0, 2, 4,
+};
+
+static encode_aux_threshmatch _vq_auxt_res_Ac_4c = {
+ _vq_quantthresh_res_Ac_4c,
+ _vq_quantmap_res_Ac_4c,
+ 5,
+ 5
+};
+
+static static_codebook _vq_book_res_Ac_4c = {
+ 2, 25,
+ _vq_lengthlist_res_Ac_4c,
+ 1, -541298235, 1604088261, 3, 0,
+ _vq_quantlist_res_Ac_4c,
+ NULL,
+ &_vq_auxt_res_Ac_4c,
+ NULL,
+ 0
+};
+
+
+#endif
diff --git a/lib/books/res_Ac_5.vqh b/lib/books/res_Ac_5.vqh
index 91749ed1..36830e3f 100644
--- a/lib/books/res_Ac_5.vqh
+++ b/lib/books/res_Ac_5.vqh
@@ -27,13 +27,13 @@ static long _vq_quantlist_res_Ac_5[] = {
};
static long _vq_lengthlist_res_Ac_5[] = {
- 1, 4, 4, 7, 7, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 4, 5, 5, 7, 6, 0, 0,
+ 1, 4, 4, 8, 7, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 4, 5, 4, 8, 8, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 4, 5, 5, 7, 7, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 7, 7, 6,10, 8,
+ 0, 0, 4, 4, 5, 8, 8, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 8, 8, 7,11,10,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 7, 6, 7, 9,10, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 8, 7, 8, 9,11, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
diff --git a/lib/books/res_Ac_5a.vqh b/lib/books/res_Ac_5a.vqh
index 91dd7339..715b9c09 100644
--- a/lib/books/res_Ac_5a.vqh
+++ b/lib/books/res_Ac_5a.vqh
@@ -19,46 +19,34 @@
#include "codebook.h"
static long _vq_quantlist_res_Ac_5a[] = {
- 4,
- 3,
- 5,
- 2,
- 6,
1,
- 7,
0,
- 8,
+ 2,
};
static long _vq_lengthlist_res_Ac_5a[] = {
- 1, 0, 0, 0, 0, 0, 0, 0, 0, 3, 5, 5, 0, 0, 0, 0,
- 0, 0, 3, 5, 5, 0, 0, 0, 0, 0, 0, 5, 8, 8, 6, 6,
- 0, 0, 0, 0, 8, 8, 8, 0,10, 0, 0, 0, 0, 7, 8,10,
- 0, 0, 0, 0, 0, 0, 7, 9, 8, 0, 0, 0, 0, 0, 0, 7,
- 0, 0, 0, 0, 0, 0, 8, 8, 0, 0, 0, 0, 0, 0, 0, 0,
- 0,
+ 2, 1, 2, 0, 0, 0, 0, 0, 0,
};
static float _vq_quantthresh_res_Ac_5a[] = {
- -3.5, -2.5, -1.5, -0.5, 0.5, 1.5, 2.5, 3.5,
+ -0.16667, 0.16667,
};
static long _vq_quantmap_res_Ac_5a[] = {
- 7, 5, 3, 1, 0, 2, 4, 6,
- 8,
+ 1, 0, 2,
};
static encode_aux_threshmatch _vq_auxt_res_Ac_5a = {
_vq_quantthresh_res_Ac_5a,
_vq_quantmap_res_Ac_5a,
- 9,
- 9
+ 3,
+ 3
};
static static_codebook _vq_book_res_Ac_5a = {
- 2, 81,
+ 2, 9,
_vq_lengthlist_res_Ac_5a,
- 1, -531628032, 1611661312, 4, 0,
+ 1, -539667116, 1607816532, 2, 0,
_vq_quantlist_res_Ac_5a,
NULL,
&_vq_auxt_res_Ac_5a,
diff --git a/lib/books/res_Ac_5b.vqh b/lib/books/res_Ac_5b.vqh
new file mode 100644
index 00000000..e98f7690
--- /dev/null
+++ b/lib/books/res_Ac_5b.vqh
@@ -0,0 +1,58 @@
+/********************************************************************
+ * *
+ * THIS FILE IS PART OF THE OggVorbis SOFTWARE CODEC SOURCE CODE. *
+ * USE, DISTRIBUTION AND REPRODUCTION OF THIS LIBRARY SOURCE IS *
+ * GOVERNED BY A BSD-STYLE SOURCE LICENSE INCLUDED WITH THIS SOURCE *
+ * IN 'COPYING'. PLEASE READ THESE TERMS BEFORE DISTRIBUTING. *
+ * *
+ * THE OggVorbis SOURCE CODE IS (C) COPYRIGHT 1994-2001 *
+ * by the XIPHOPHORUS Company http://www.xiph.org/ *
+ * *
+ ********************************************************************
+
+ function: static codebook autogenerated by vq/somethingorother
+
+ ********************************************************************/
+
+#ifndef _V_res_Ac_5b_VQH_
+#define _V_res_Ac_5b_VQH_
+#include "codebook.h"
+
+static long _vq_quantlist_res_Ac_5b[] = {
+ 1,
+ 0,
+ 2,
+};
+
+static long _vq_lengthlist_res_Ac_5b[] = {
+ 1, 2, 2, 0, 0, 0, 0, 0, 0,
+};
+
+static float _vq_quantthresh_res_Ac_5b[] = {
+ -0.055555, 0.055555,
+};
+
+static long _vq_quantmap_res_Ac_5b[] = {
+ 1, 0, 2,
+};
+
+static encode_aux_threshmatch _vq_auxt_res_Ac_5b = {
+ _vq_quantthresh_res_Ac_5b,
+ _vq_quantmap_res_Ac_5b,
+ 3,
+ 3
+};
+
+static static_codebook _vq_book_res_Ac_5b = {
+ 2, 9,
+ _vq_lengthlist_res_Ac_5b,
+ 1, -543395387, 1604088261, 2, 0,
+ _vq_quantlist_res_Ac_5b,
+ NULL,
+ &_vq_auxt_res_Ac_5b,
+ NULL,
+ 0
+};
+
+
+#endif
diff --git a/lib/books/res_Ac_6.vqh b/lib/books/res_Ac_6.vqh
index 4b0d9129..5021dabb 100644
--- a/lib/books/res_Ac_6.vqh
+++ b/lib/books/res_Ac_6.vqh
@@ -31,7 +31,7 @@ static long _vq_quantlist_res_Ac_6[] = {
};
static long _vq_lengthlist_res_Ac_6[] = {
- 1, 3, 2, 5, 5, 5, 6, 7, 7, 0, 0, 0, 0, 0, 0, 0,
+ 1, 2, 3, 5, 4, 6, 7, 8, 8, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
diff --git a/lib/books/res_Ac_6a.vqh b/lib/books/res_Ac_6a.vqh
new file mode 100644
index 00000000..7448ec6d
--- /dev/null
+++ b/lib/books/res_Ac_6a.vqh
@@ -0,0 +1,93 @@
+/********************************************************************
+ * *
+ * THIS FILE IS PART OF THE OggVorbis SOFTWARE CODEC SOURCE CODE. *
+ * USE, DISTRIBUTION AND REPRODUCTION OF THIS LIBRARY SOURCE IS *
+ * GOVERNED BY A BSD-STYLE SOURCE LICENSE INCLUDED WITH THIS SOURCE *
+ * IN 'COPYING'. PLEASE READ THESE TERMS BEFORE DISTRIBUTING. *
+ * *
+ * THE OggVorbis SOURCE CODE IS (C) COPYRIGHT 1994-2001 *
+ * by the XIPHOPHORUS Company http://www.xiph.org/ *
+ * *
+ ********************************************************************
+
+ function: static codebook autogenerated by vq/somethingorother
+
+ ********************************************************************/
+
+#ifndef _V_res_Ac_6a_VQH_
+#define _V_res_Ac_6a_VQH_
+#include "codebook.h"
+
+static long _vq_quantlist_res_Ac_6a[] = {
+ 8,
+ 7,
+ 9,
+ 6,
+ 10,
+ 5,
+ 11,
+ 4,
+ 12,
+ 3,
+ 13,
+ 2,
+ 14,
+ 1,
+ 15,
+ 0,
+ 16,
+};
+
+static long _vq_lengthlist_res_Ac_6a[] = {
+ 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 3, 5, 5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 4, 5, 5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 5, 7, 7,13,14, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 5, 7, 6,12,12, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 7, 7, 7,11,11, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 8, 7, 7,10,11, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 8, 9, 8,12,12, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 8, 8, 9,12,11,16, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 9, 9, 9,14,13, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 9, 9, 9,12,13, 0,
+ 16, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,10,11,11, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 9,11,11,15,
+ 14, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,12,12,12,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,12,12,
+ 13, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,12,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 12, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0,
+};
+
+static float _vq_quantthresh_res_Ac_6a[] = {
+ -7.5, -6.5, -5.5, -4.5, -3.5, -2.5, -1.5, -0.5,
+ 0.5, 1.5, 2.5, 3.5, 4.5, 5.5, 6.5, 7.5,
+};
+
+static long _vq_quantmap_res_Ac_6a[] = {
+ 15, 13, 11, 9, 7, 5, 3, 1,
+ 0, 2, 4, 6, 8, 10, 12, 14,
+ 16,
+};
+
+static encode_aux_threshmatch _vq_auxt_res_Ac_6a = {
+ _vq_quantthresh_res_Ac_6a,
+ _vq_quantmap_res_Ac_6a,
+ 17,
+ 17
+};
+
+static static_codebook _vq_book_res_Ac_6a = {
+ 2, 289,
+ _vq_lengthlist_res_Ac_6a,
+ 1, -529530880, 1611661312, 5, 0,
+ _vq_quantlist_res_Ac_6a,
+ NULL,
+ &_vq_auxt_res_Ac_6a,
+ NULL,
+ 0
+};
+
+
+#endif
diff --git a/lib/books/res_Ac_6b.vqh b/lib/books/res_Ac_6b.vqh
new file mode 100644
index 00000000..15f9b516
--- /dev/null
+++ b/lib/books/res_Ac_6b.vqh
@@ -0,0 +1,70 @@
+/********************************************************************
+ * *
+ * THIS FILE IS PART OF THE OggVorbis SOFTWARE CODEC SOURCE CODE. *
+ * USE, DISTRIBUTION AND REPRODUCTION OF THIS LIBRARY SOURCE IS *
+ * GOVERNED BY A BSD-STYLE SOURCE LICENSE INCLUDED WITH THIS SOURCE *
+ * IN 'COPYING'. PLEASE READ THESE TERMS BEFORE DISTRIBUTING. *
+ * *
+ * THE OggVorbis SOURCE CODE IS (C) COPYRIGHT 1994-2001 *
+ * by the XIPHOPHORUS Company http://www.xiph.org/ *
+ * *
+ ********************************************************************
+
+ function: static codebook autogenerated by vq/somethingorother
+
+ ********************************************************************/
+
+#ifndef _V_res_Ac_6b_VQH_
+#define _V_res_Ac_6b_VQH_
+#include "codebook.h"
+
+static long _vq_quantlist_res_Ac_6b[] = {
+ 4,
+ 3,
+ 5,
+ 2,
+ 6,
+ 1,
+ 7,
+ 0,
+ 8,
+};
+
+static long _vq_lengthlist_res_Ac_6b[] = {
+ 1,14,14,14,14,14,14,14,14, 3, 5, 5,14,14,14,14,
+ 14,14, 3, 5, 5,14,14,14,14,14,14, 5, 7, 8, 6, 6,
+ 14,14,14,14, 8, 8, 8,14,14,14,14,14,14, 8, 9, 8,
+ 14,14,14,14,14,14, 7, 8, 8,14,14,14,14,14,14, 8,
+ 14,14,14,14,14,14, 8, 9,14,14,13,13,13,13,13,13,
+ 13,
+};
+
+static float _vq_quantthresh_res_Ac_6b[] = {
+ -3.5, -2.5, -1.5, -0.5, 0.5, 1.5, 2.5, 3.5,
+};
+
+static long _vq_quantmap_res_Ac_6b[] = {
+ 7, 5, 3, 1, 0, 2, 4, 6,
+ 8,
+};
+
+static encode_aux_threshmatch _vq_auxt_res_Ac_6b = {
+ _vq_quantthresh_res_Ac_6b,
+ _vq_quantmap_res_Ac_6b,
+ 9,
+ 9
+};
+
+static static_codebook _vq_book_res_Ac_6b = {
+ 2, 81,
+ _vq_lengthlist_res_Ac_6b,
+ 1, -531628032, 1611661312, 4, 0,
+ _vq_quantlist_res_Ac_6b,
+ NULL,
+ &_vq_auxt_res_Ac_6b,
+ NULL,
+ 0
+};
+
+
+#endif
diff --git a/lib/books/res_Ac_7.vqh b/lib/books/res_Ac_7.vqh
index 43a2fc8c..62b395f9 100644
--- a/lib/books/res_Ac_7.vqh
+++ b/lib/books/res_Ac_7.vqh
@@ -31,16 +31,16 @@ static long _vq_quantlist_res_Ac_7[] = {
};
static long _vq_lengthlist_res_Ac_7[] = {
- 1, 3, 3, 6, 6, 8, 7, 8, 8, 0, 5, 5, 7, 7, 8, 9,
- 10,12, 0, 5, 5, 7, 7, 9, 8,10,12, 0, 7, 7,10,11,
- 0, 0, 0,12, 0, 8, 8,12, 9,12, 0, 0, 0, 0,12, 0,
- 12, 0, 0, 0, 0, 0, 0, 0, 0, 0,11, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,12, 0, 0, 0, 0,
- 0,
+ 1, 2, 3, 7, 7,12,12,12,12,12, 6, 6,10,10,12,12,
+ 12,12,12, 6, 5,12,10,12,12,12,12,12,11,12,12,12,
+ 12,12,12,12,12,11,10,11,11,11,11,11,11,11,11,11,
+ 11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,
+ 11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,
+ 11,
};
static float _vq_quantthresh_res_Ac_7[] = {
- -17.5, -12.5, -7.5, -2.5, 2.5, 7.5, 12.5, 17.5,
+ -31.5, -22.5, -13.5, -4.5, 4.5, 13.5, 22.5, 31.5,
};
static long _vq_quantmap_res_Ac_7[] = {
@@ -58,7 +58,7 @@ static encode_aux_threshmatch _vq_auxt_res_Ac_7 = {
static static_codebook _vq_book_res_Ac_7 = {
2, 81,
_vq_lengthlist_res_Ac_7,
- 1, -527171584, 1616117760, 4, 0,
+ 1, -525205504, 1618083840, 4, 0,
_vq_quantlist_res_Ac_7,
NULL,
&_vq_auxt_res_Ac_7,
diff --git a/lib/books/res_Ac_7a.vqh b/lib/books/res_Ac_7a.vqh
index 4237f850..c13ad3ae 100644
--- a/lib/books/res_Ac_7a.vqh
+++ b/lib/books/res_Ac_7a.vqh
@@ -19,75 +19,46 @@
#include "codebook.h"
static long _vq_quantlist_res_Ac_7a[] = {
+ 4,
+ 3,
+ 5,
2,
+ 6,
1,
- 3,
+ 7,
0,
- 4,
+ 8,
};
static long _vq_lengthlist_res_Ac_7a[] = {
- 1, 5, 4, 7, 7,11,13,13, 0,14,10,11,14,13,12,10,
- 13, 0,12,13,10,12,13,12,12, 5, 6, 5, 7, 7,10,12,
- 11, 0,12,10,13,12,12,11, 9,13,13,12,12, 9, 0,12,
- 12,12, 4, 5, 6, 7, 7,10,12,13,13,12, 9,12,11,12,
- 12,10,12,11,13, 0,10,13,12,11,13, 7, 7, 7, 8, 8,
- 10,12,12,13, 0,10,13,12, 0,12,10,13,12,12,13, 9,
- 13,11, 0,12, 7, 7, 7, 7, 8,10,11,11,12,13, 9,12,
- 12,13, 0,10,12,11,13,13, 9,11,11, 0,13, 9, 9,10,
- 10,10, 0,13, 0, 0,12, 0, 0, 0, 0,13,13, 0, 0,13,
- 13,12,13, 0,13, 0,11,12,11,11,13,13,13, 0, 0, 0,
- 0, 0, 0, 0, 0, 0,13, 0, 0, 0, 0, 0, 0, 0, 0,12,
- 11, 0,11,12, 0, 0, 0,13,13,13, 0,13, 0, 0, 0,13,
- 0, 0, 0, 0, 0,13, 0,13,12,12,11,12,11, 0, 0, 0,
- 0, 0,12, 0,13,13, 0,12, 0, 0, 0, 0, 0, 0, 0, 0,
- 0,12, 0,12,12,11, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0,13,13, 0, 0, 0, 0,10,10, 9, 9, 9, 0,
- 0, 0,13, 0,12, 0, 0,13, 0, 0, 0,13,13, 0,13,13,
- 0, 0,12,13,11,11,13,11, 0, 0, 0, 0, 0,12, 0, 0,
- 0, 0,13, 0, 0, 0, 0, 0, 0, 0, 0, 0,12,11,12,12,
- 13, 0, 0,13,13, 0, 0, 0,13, 0, 0, 0, 0, 0, 0, 0,
- 12,13, 0, 0,13,13,12,12,12,13, 0,12, 0, 0, 0, 0,
- 13,13, 0, 0, 0, 0, 0, 0, 0,13, 0, 0, 0, 0,12,11,
- 13,11,12, 0,13, 0, 0, 0, 0, 0, 0, 0, 0,13, 0, 0,
- 0,13, 0, 0, 0, 0, 0,10, 9, 9,10, 9,13, 0, 0, 0,
- 0,13, 0, 0, 0, 0,13,13, 0, 0, 0, 0, 0, 0, 0, 0,
- 13,12,11,11,11, 0, 0, 0, 0, 0, 0,13, 0,13, 0, 0,
- 13, 0, 0, 0, 0, 0, 0, 0, 0,13,11,12,11,12, 0, 0,
- 13, 0, 0, 0, 0, 0, 0, 0,12, 0, 0,13, 0, 0, 0,13,
- 0, 0, 0,12, 0, 0,11, 0, 0, 0, 0,13, 0, 0, 0, 0,
- 13, 0, 0, 0, 0, 0, 0,13, 0, 0,12,13,12,11,12,13,
- 12, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,13, 0,13, 0, 0,
- 0, 0, 0, 0,10, 9, 9,10,10, 0,13,13, 0, 0, 0, 0,
- 0, 0,13, 0,13, 0, 0, 0,12,13, 0,13,13,12,11,12,
- 12,12, 0, 0,13, 0,12, 0, 0,13, 0, 0, 0,13, 0, 0,
- 0,13, 0,13, 0,13,13,11,13,13,12, 0, 0, 0, 0, 0,
- 0,13, 0, 0,12,12, 0,13,13, 0, 0,13, 0, 0,13,13,
- 13,12,13,12, 0, 0, 0, 0,13, 0, 0, 0, 0, 0,13, 0,
- 13, 0, 0, 0, 0, 0, 0, 0,13,13,12, 0,13, 0, 0, 0,
- 0, 0, 0, 0,13, 0,13, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0,
+ 1, 3, 3, 4, 5, 6, 6, 6, 6,10,10,11,10,10, 9, 9,
+ 8, 8,10,10,10,10,10,10,10, 8, 8,10,11,11,10,11,
+ 9,10, 8, 8,10,11,11,10,11,10,10, 8, 9,12,10,11,
+ 11,10,10,10, 9, 8,11,11,11,11,10,10,10, 9, 9,11,
+ 11,11,11,12,10,11, 9, 8,10,11,11,11,11,11,10, 9,
+ 9,
};
static float _vq_quantthresh_res_Ac_7a[] = {
- -1.5, -0.5, 0.5, 1.5,
+ -3.5, -2.5, -1.5, -0.5, 0.5, 1.5, 2.5, 3.5,
};
static long _vq_quantmap_res_Ac_7a[] = {
- 3, 1, 0, 2, 4,
+ 7, 5, 3, 1, 0, 2, 4, 6,
+ 8,
};
static encode_aux_threshmatch _vq_auxt_res_Ac_7a = {
_vq_quantthresh_res_Ac_7a,
_vq_quantmap_res_Ac_7a,
- 5,
- 5
+ 9,
+ 9
};
static static_codebook _vq_book_res_Ac_7a = {
- 4, 625,
+ 2, 81,
_vq_lengthlist_res_Ac_7a,
- 1, -533725184, 1611661312, 3, 0,
+ 1, -531628032, 1611661312, 4, 0,
_vq_quantlist_res_Ac_7a,
NULL,
&_vq_auxt_res_Ac_7a,
diff --git a/lib/books/res_Ac_8.vqh b/lib/books/res_Ac_8.vqh
index a5c2da37..3b235d27 100644
--- a/lib/books/res_Ac_8.vqh
+++ b/lib/books/res_Ac_8.vqh
@@ -29,161 +29,14 @@ static long _vq_quantlist_res_Ac_8[] = {
};
static long _vq_lengthlist_res_Ac_8[] = {
- 1, 5, 4, 8, 8,11, 9, 7, 7, 7,10, 9,13,11, 7, 7,
- 6,10,10,12,11, 0,11,10,12,11,13,14, 0,11,10,11,
- 11,16,16, 0,14,14,13,15, 0,14, 0, 0, 0,13,12,14,
- 13, 4, 7, 7,10, 9,12,11,10, 9, 9,12,12,14,12,10,
- 10, 9,12,12,14,14, 0,14,13,15,14,15, 0, 0,14,14,
- 13,15, 0, 0, 0, 0, 0, 0,14, 0,15, 0, 0, 0, 0, 0,
- 0, 0, 4, 7, 7,10, 9,12,12,10,10, 9,12,12,14,15,
- 11,10,10,11,14, 0,15, 0,13,13,13,15, 0, 0, 0,13,
- 14,14,13, 0,15, 0,15, 0, 0, 0,15, 0, 0,15, 0, 0,
- 0, 0, 0, 8,10,10,12,11,15, 0,14,12,13,13,14, 0,
- 15,14,12,13,15,13,15,15, 0,15,15,15,15, 0, 0, 0,
- 15, 0, 0, 0, 0, 0, 0, 0, 0, 0,15, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 8, 9,10,12,12,15,14,15,15,12, 0,13,
- 0, 0,15,13,13,15,15, 0,14, 0, 0, 0, 0, 0, 0, 0,
- 0, 0,15, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0,10,11,12,14,13, 0, 0,15, 0,14, 0,
- 15, 0, 0, 0, 0,14, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0,11,13,12,13, 0, 0,15,15, 0,14,
- 0, 0, 0, 0, 0,14, 0,15, 0,15, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 6,10,10,13,14, 0,15,11,11,
- 11, 0,15, 0, 0,11,10,11,14,14,15, 0, 0,14,15,14,
- 0, 0, 0, 0,14,14,14,15, 0, 0, 0, 0, 0, 0, 0, 0,
- 15, 0, 0, 0, 0,13, 0, 0, 6,10, 9,12,13, 0,15,11,
- 11,11,14,15, 0,15,11,10,10,13,14,14,14, 0,14,13,
- 0,14,15,15, 0,13,14,13,14,15, 0, 0, 0,15, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 7,10,10,12,13,14, 0,
- 12,10,10,14,14, 0,15,11,10,10,13,13,15,15, 0,14,
- 0,15,14, 0,14, 0,14,14,14,15, 0,15, 0, 0, 0,15,
- 0,14, 0, 0, 0, 0, 0, 0, 0, 0,10,11,12, 0,14, 0,
- 0,15,14,13,15,15,15, 0,14,12,14,14,14, 0, 0, 0,
- 0,15, 0, 0, 0, 0, 0, 0, 0,15, 0, 0,14, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,10,13,12,14, 0,
- 0, 0,14,13,14, 0,15, 0,15,14,14,13,15, 0, 0, 0,
- 0,15, 0,15, 0, 0,15, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,12,14,14,15,
- 14, 0, 0, 0, 0,15, 0,14, 0, 0,15,15,14, 0,15, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,15, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,12,14, 0,
- 14, 0, 0, 0, 0, 0, 0,14, 0, 0, 0, 0,14, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 7,10,
- 10,14,14,15, 0,11,11,11,13,13, 0, 0,11,11,12,15,
- 0, 0,15, 0,14,14,15,14, 0, 0, 0,14,14,15,15, 0,
- 0, 0,15, 0, 0, 0, 0, 0, 0, 0, 0, 0,15, 0, 0, 7,
- 10,10,13,14,14,15,11,10,10,14,13,13,15,11,11,11,
- 14,15, 0, 0, 0,14,13,14, 0,15,14, 0,15,13, 0,15,
- 0, 0, 0, 0, 0,14, 0, 0, 0, 0, 0, 0, 0,15, 0, 0,
- 7, 9,10,13,13, 0,14,10,10,10,13,13, 0, 0,12,11,
- 11,14,15, 0, 0, 0,15,13,14,13,14, 0, 0,14,14,14,
- 14, 0, 0, 0, 0, 0,14, 0, 0, 0, 0, 0, 0,15,15, 0,
- 15,10,12,12,14,14,15,15, 0,14,14,15, 0, 0, 0, 0,
- 14,13, 0, 0, 0, 0, 0,15,14,15, 0, 0, 0, 0, 0, 0,
- 0,15, 0, 0, 0, 0, 0, 0, 0, 0,15, 0, 0, 0, 0, 0,
- 0, 0,10,11,13,15,15,15, 0,14,14,12,15, 0,15, 0,
- 14,14,14,15,15, 0,15, 0, 0, 0,15, 0,15, 0, 0, 0,
- 15, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0,12,13, 0,15,14, 0, 0,15,15, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,15, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0,12,14,14,14, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0,14, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0,11,13,13, 0, 0, 0, 0, 0,15,14,
- 15,15, 0, 0,15,15,13, 0, 0, 0, 0, 0,14, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0,11,13, 0,15, 0,15,15,15,15,
- 15, 0, 0,15, 0,14,14,13, 0, 0, 0, 0, 0,15,14,15,
- 0, 0, 0, 0,15,15, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0,12,14,15, 0, 0, 0, 0, 0,
- 15,14,15, 0, 0, 0, 0,15,13, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0,12,14,13, 0, 0, 0, 0,
- 0,15,15, 0, 0, 0, 0,14,15,13, 0, 0, 0,15, 0, 0,
- 0, 0, 0, 0, 0, 0, 0,15, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0,15, 0, 0,15, 0, 0, 0,15,
- 0, 0, 0, 0, 0, 0, 0, 0, 0,15, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0,15, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,14, 0, 0, 0, 0,
- 0, 0, 0,15, 0, 0, 0, 0, 0,15, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,11,14,14,
- 0, 0, 0, 0,15,15,13, 0, 0, 0, 0, 0,15,15, 0, 0,
- 0, 0, 0,15,15, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,11,14,
- 14, 0, 0, 0, 0,15,13,14, 0, 0, 0, 0,15,15,15, 0,
- 0, 0, 0, 0, 0,15,15, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,12,
- 13,14, 0,15, 0, 0, 0,13,14,15, 0, 0, 0, 0,15,15,
- 0, 0, 0, 0, 0, 0, 0,15, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0,15, 0, 0, 0, 0, 0, 0, 0, 0,
- 13,14,14, 0, 0, 0, 0, 0,13,14, 0,14, 0, 0,15,15,
- 15,15, 0, 0, 0, 0, 0,15, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0,14, 0,15, 0, 0, 0, 0, 0, 0,15, 0, 0, 0, 0, 0,
- 0,15, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0,15, 0,15, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0,15, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,15, 0, 0, 0,
- 0, 0,15, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0,15, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0,14, 0, 0, 0,15, 0, 0,15,15, 0,
- 0, 0, 0, 0, 0, 0, 0,15, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0,14,15,15, 0, 0, 0, 0,15,15,
- 0, 0, 0, 0, 0, 0,15, 0, 0, 0, 0, 0, 0, 0, 0,15,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0,15, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 15, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,15, 0, 0, 0, 0,
- 0, 0, 0,15, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0,15, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0,15,15, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,15,15, 0,
- 0, 0, 0, 0, 0, 0,14, 0, 0, 0, 0, 0,14, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,15, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,14, 0,
- 0, 0, 0, 0, 0, 0,15,13, 0, 0, 0, 0,15,15, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,15, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,14,
- 0,15, 0, 0, 0, 0, 0, 0,15, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,15,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0,
+ 1, 3, 3, 8, 7,13,13, 5, 6, 5,10, 9,13,13, 4, 6,
+ 5,10,10,13,13,13, 6,10,11,12,13,13,13,10, 6,13,
+ 12,13,13,13, 8,12, 8,13,13,13,13,13,11,13,11,13,
+ 13,
};
static float _vq_quantthresh_res_Ac_8[] = {
- -62.5, -37.5, -12.5, 12.5, 37.5, 62.5,
+ -137.5, -82.5, -27.5, 27.5, 82.5, 137.5,
};
static long _vq_quantmap_res_Ac_8[] = {
@@ -198,9 +51,9 @@ static encode_aux_threshmatch _vq_auxt_res_Ac_8 = {
};
static static_codebook _vq_book_res_Ac_8 = {
- 4, 2401,
+ 2, 49,
_vq_lengthlist_res_Ac_8,
- 1, -523059200, 1620639744, 3, 0,
+ 1, -520839168, 1622900736, 3, 0,
_vq_quantlist_res_Ac_8,
NULL,
&_vq_auxt_res_Ac_8,
diff --git a/lib/books/res_Ac_8a.vqh b/lib/books/res_Ac_8a.vqh
index 5daac200..ff093405 100644
--- a/lib/books/res_Ac_8a.vqh
+++ b/lib/books/res_Ac_8a.vqh
@@ -19,37 +19,41 @@
#include "codebook.h"
static long _vq_quantlist_res_Ac_8a[] = {
+ 3,
2,
+ 4,
1,
- 3,
+ 5,
0,
- 4,
+ 6,
};
static long _vq_lengthlist_res_Ac_8a[] = {
- 2, 3, 3, 5, 5, 6, 5, 5, 5, 5, 6, 5, 5, 5, 5, 7,
- 6, 6, 6, 6, 7, 6, 6, 5, 6,
+ 1, 4, 4, 6, 6, 7, 7, 6, 5, 5, 6, 6, 8, 7, 6, 5,
+ 5, 7, 7, 8, 8,10, 7, 7, 7, 7, 8, 8,11, 7, 7, 7,
+ 7, 8, 8,12,11,11, 8, 8, 9, 9,12,10,10, 8, 8,10,
+ 9,
};
static float _vq_quantthresh_res_Ac_8a[] = {
- -7.5, -2.5, 2.5, 7.5,
+ -22.5, -13.5, -4.5, 4.5, 13.5, 22.5,
};
static long _vq_quantmap_res_Ac_8a[] = {
- 3, 1, 0, 2, 4,
+ 5, 3, 1, 0, 2, 4, 6,
};
static encode_aux_threshmatch _vq_auxt_res_Ac_8a = {
_vq_quantthresh_res_Ac_8a,
_vq_quantmap_res_Ac_8a,
- 5,
- 5
+ 7,
+ 7
};
static static_codebook _vq_book_res_Ac_8a = {
- 2, 25,
+ 2, 49,
_vq_lengthlist_res_Ac_8a,
- 1, -529268736, 1616117760, 3, 0,
+ 1, -526712832, 1618083840, 3, 0,
_vq_quantlist_res_Ac_8a,
NULL,
&_vq_auxt_res_Ac_8a,
diff --git a/lib/books/res_Ac_8b.vqh b/lib/books/res_Ac_8b.vqh
new file mode 100644
index 00000000..7144caab
--- /dev/null
+++ b/lib/books/res_Ac_8b.vqh
@@ -0,0 +1,70 @@
+/********************************************************************
+ * *
+ * THIS FILE IS PART OF THE OggVorbis SOFTWARE CODEC SOURCE CODE. *
+ * USE, DISTRIBUTION AND REPRODUCTION OF THIS LIBRARY SOURCE IS *
+ * GOVERNED BY A BSD-STYLE SOURCE LICENSE INCLUDED WITH THIS SOURCE *
+ * IN 'COPYING'. PLEASE READ THESE TERMS BEFORE DISTRIBUTING. *
+ * *
+ * THE OggVorbis SOURCE CODE IS (C) COPYRIGHT 1994-2001 *
+ * by the XIPHOPHORUS Company http://www.xiph.org/ *
+ * *
+ ********************************************************************
+
+ function: static codebook autogenerated by vq/somethingorother
+
+ ********************************************************************/
+
+#ifndef _V_res_Ac_8b_VQH_
+#define _V_res_Ac_8b_VQH_
+#include "codebook.h"
+
+static long _vq_quantlist_res_Ac_8b[] = {
+ 4,
+ 3,
+ 5,
+ 2,
+ 6,
+ 1,
+ 7,
+ 0,
+ 8,
+};
+
+static long _vq_lengthlist_res_Ac_8b[] = {
+ 4, 5, 5, 6, 6, 6, 6, 6, 6, 7, 6, 6, 6, 6, 6, 6,
+ 6, 6, 7, 6, 5, 6, 6, 6, 6, 6, 6, 7, 7, 7, 6, 6,
+ 6, 7, 6, 7, 7, 7, 7, 6, 6, 6, 7, 6, 6, 7, 7, 7,
+ 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7,
+ 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7,
+ 6,
+};
+
+static float _vq_quantthresh_res_Ac_8b[] = {
+ -3.5, -2.5, -1.5, -0.5, 0.5, 1.5, 2.5, 3.5,
+};
+
+static long _vq_quantmap_res_Ac_8b[] = {
+ 7, 5, 3, 1, 0, 2, 4, 6,
+ 8,
+};
+
+static encode_aux_threshmatch _vq_auxt_res_Ac_8b = {
+ _vq_quantthresh_res_Ac_8b,
+ _vq_quantmap_res_Ac_8b,
+ 9,
+ 9
+};
+
+static static_codebook _vq_book_res_Ac_8b = {
+ 2, 81,
+ _vq_lengthlist_res_Ac_8b,
+ 1, -531628032, 1611661312, 4, 0,
+ _vq_quantlist_res_Ac_8b,
+ NULL,
+ &_vq_auxt_res_Ac_8b,
+ NULL,
+ 0
+};
+
+
+#endif
diff --git a/lib/books/res_Ac_8c.vqh b/lib/books/res_Ac_8c.vqh
new file mode 100644
index 00000000..6c9858cb
--- /dev/null
+++ b/lib/books/res_Ac_8c.vqh
@@ -0,0 +1,100 @@
+/********************************************************************
+ * *
+ * THIS FILE IS PART OF THE OggVorbis SOFTWARE CODEC SOURCE CODE. *
+ * USE, DISTRIBUTION AND REPRODUCTION OF THIS LIBRARY SOURCE IS *
+ * GOVERNED BY A BSD-STYLE SOURCE LICENSE INCLUDED WITH THIS SOURCE *
+ * IN 'COPYING'. PLEASE READ THESE TERMS BEFORE DISTRIBUTING. *
+ * *
+ * THE OggVorbis SOURCE CODE IS (C) COPYRIGHT 1994-2001 *
+ * by the XIPHOPHORUS Company http://www.xiph.org/ *
+ * *
+ ********************************************************************
+
+ function: static codebook autogenerated by vq/somethingorother
+
+ ********************************************************************/
+
+#ifndef _V_res_Ac_8c_VQH_
+#define _V_res_Ac_8c_VQH_
+#include "codebook.h"
+
+static long _vq_quantlist_res_Ac_8c[] = {
+ 9,
+ 8,
+ 10,
+ 7,
+ 11,
+ 6,
+ 12,
+ 5,
+ 13,
+ 4,
+ 14,
+ 3,
+ 15,
+ 2,
+ 16,
+ 1,
+ 17,
+ 0,
+ 18,
+};
+
+static long _vq_lengthlist_res_Ac_8c[] = {
+ 1,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,
+ 10,10,10, 6, 7, 6,10,10,10,10,10,10,10,10,10,10,
+ 10,10,10,10,10,10, 5, 7, 7,10,10,10,10,10,10,10,
+ 10,10,10,10,10,10,10,10,10, 9, 7, 8,10, 8,10,10,
+ 10,10,10,10,10,10,10,10,10,10,10,10,10, 8,10,10,
+ 10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,
+ 8, 9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,
+ 10,10, 9, 8,10,10,10,10,10,10,10,10,10,10,10,10,
+ 10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,
+ 10,10,10,10,10,10,10,10,10, 8, 9, 9,10,10,10,10,
+ 10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,
+ 10,10,10,10,10,10,10,10,10,10,10,10,10,10, 8,10,
+ 10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,
+ 10,10,10, 9, 9,10,10,10,10,10,10,10,10,10,10,10,
+ 10,10,10,10,10, 9,10,10,10,10,10,10,10,10,10,10,
+ 10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,
+ 10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,
+ 10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,
+ 10, 9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,
+ 10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,
+ 10,10,10,10,10,10,10,10, 9, 9, 9, 9, 9, 9, 9, 9,
+ 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9,
+ 9, 9, 9, 9, 9, 9, 9, 9, 9,
+};
+
+static float _vq_quantthresh_res_Ac_8c[] = {
+ -8.5, -7.5, -6.5, -5.5, -4.5, -3.5, -2.5, -1.5,
+ -0.5, 0.5, 1.5, 2.5, 3.5, 4.5, 5.5, 6.5,
+ 7.5, 8.5,
+};
+
+static long _vq_quantmap_res_Ac_8c[] = {
+ 17, 15, 13, 11, 9, 7, 5, 3,
+ 1, 0, 2, 4, 6, 8, 10, 12,
+ 14, 16, 18,
+};
+
+static encode_aux_threshmatch _vq_auxt_res_Ac_8c = {
+ _vq_quantthresh_res_Ac_8c,
+ _vq_quantmap_res_Ac_8c,
+ 19,
+ 19
+};
+
+static static_codebook _vq_book_res_Ac_8c = {
+ 2, 361,
+ _vq_lengthlist_res_Ac_8c,
+ 1, -529399808, 1611661312, 5, 0,
+ _vq_quantlist_res_Ac_8c,
+ NULL,
+ &_vq_auxt_res_Ac_8c,
+ NULL,
+ 0
+};
+
+
+#endif
diff --git a/lib/books/res_Ac_9.vqh b/lib/books/res_Ac_9.vqh
index a37535fb..ac606d23 100644
--- a/lib/books/res_Ac_9.vqh
+++ b/lib/books/res_Ac_9.vqh
@@ -29,10 +29,10 @@ static long _vq_quantlist_res_Ac_9[] = {
};
static long _vq_lengthlist_res_Ac_9[] = {
- 1, 4, 4,10,10,10,10, 3, 4,10,10,10,10,10, 3, 9,
- 7,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,
- 10,10,10,10, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9,
- 9,
+ 1, 3, 3, 9, 9, 8, 8, 8, 4, 8, 8, 8, 8, 8, 8, 7,
+ 6, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8,
+ 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8,
+ 8,
};
static float _vq_quantthresh_res_Ac_9[] = {
diff --git a/lib/books/res_Ac_9a.vqh b/lib/books/res_Ac_9a.vqh
index 46511cdf..c9a0d97d 100644
--- a/lib/books/res_Ac_9a.vqh
+++ b/lib/books/res_Ac_9a.vqh
@@ -35,17 +35,17 @@ static long _vq_quantlist_res_Ac_9a[] = {
};
static long _vq_lengthlist_res_Ac_9a[] = {
- 2, 3, 3, 7, 7,10, 8,10, 9,11, 9, 9, 8, 5, 5, 5,
- 9, 9,10,10,10,11,12, 9,10, 9, 5, 4, 4, 8, 9,10,
- 9,10,11,11,10, 9, 9,12, 8, 8,10,10,11,10,12,12,
- 12,10,10,11,13, 6, 5, 6, 6,11,11,11,12,10,11, 8,
- 9,13,12, 9, 9, 8,11,12,12,12,11, 9,12, 9,13,10,
- 10, 7, 6,11,10,12,12, 8,12, 9,11,13,12,13,11,12,
- 12,12,13,12,12, 8,12,10,13,13,13,12, 9,13,10,12,
- 12, 8,13,11,12,13,13,13,13,12,12,13,13, 9,11, 9,
- 12,12,13,13,12,13,13,12,12, 8,13, 9,12,13,13,12,
- 13,13,13,13,13,13,11, 9,11,10,11,12,13,13,13,13,
- 13,11,12, 9,13,12,12,12,12,
+ 1, 4, 4, 5, 6, 8, 7, 9, 7, 9, 7, 9,10, 7, 6, 6,
+ 10, 9, 8, 9, 9, 9,11, 8,10,11, 6, 6, 5, 8, 8, 9,
+ 8, 8,10, 9, 8,11,11,10, 9, 9, 8, 9,10, 9,10,10,
+ 10, 8,10,11,11, 7, 7, 7, 7,10, 9, 9,10, 8,10,11,
+ 11,11,11, 9, 8, 8,10,11,11,10, 9,10,11,11,11,10,
+ 11, 8, 8,10, 9,10,10,11,10,10,11,11,10,11,10,11,
+ 11,11,11,11,10,11,11,10,11,11,11,11, 9,11,11,11,
+ 11,10,11,11,11,11,11,11,11,10,10,11,11,11,10,11,
+ 10,11,11,11,10,11,11,11,10,10,11,11,10,11,11,10,
+ 11,11,11,11,11,11,10,11,11,11,11,11,11,11,11,11,
+ 11,11,11,10,11,11,10,11,11,
};
static float _vq_quantthresh_res_Ac_9a[] = {
diff --git a/lib/books/res_Ac_9b.vqh b/lib/books/res_Ac_9b.vqh
index f7511a54..408e9846 100644
--- a/lib/books/res_Ac_9b.vqh
+++ b/lib/books/res_Ac_9b.vqh
@@ -35,17 +35,17 @@ static long _vq_quantlist_res_Ac_9b[] = {
};
static long _vq_lengthlist_res_Ac_9b[] = {
- 5, 6, 6, 6, 7, 7, 7, 7, 7, 7, 7, 7, 7, 9, 7, 7,
- 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 8, 7, 7, 7, 7, 7,
- 7, 7, 7, 7, 7, 7, 7, 9, 8, 8, 8, 8, 7, 8, 7, 8,
- 7, 8, 7, 7, 8, 8, 8, 7, 8, 7, 7, 7, 7, 8, 7, 7,
- 7, 9, 9, 8, 8, 7, 8, 8, 7, 8, 7, 8, 7, 7, 8, 8,
- 9, 8, 8, 7, 8, 7, 7, 7, 7, 7, 7, 9, 9, 9, 8, 8,
- 8, 8, 8, 8, 8, 7, 7, 7, 9, 8, 9, 8, 8, 7, 7, 8,
- 7, 7, 8, 7, 8, 8, 8, 9, 8, 8, 8, 8, 8, 8, 8, 7,
- 7, 7, 8, 9, 8, 9, 8, 7, 8, 7, 7, 7, 8, 8, 7, 8,
- 9, 8, 8, 9, 7, 8, 8, 7, 8, 7, 7, 8, 9, 9, 9, 8,
- 8, 9, 9, 7, 7, 8, 7, 8, 8,
+ 4, 5, 5, 5, 6, 6, 6, 6, 7, 7, 6, 8, 6, 9, 6, 6,
+ 6, 7, 7, 6, 7, 8, 7, 7, 6, 7, 7, 7, 7, 7, 6, 7,
+ 6, 7, 7, 7, 7, 8, 7, 8, 8, 9, 8, 8, 7, 8, 8, 9,
+ 7, 7, 8, 7, 8, 8, 8, 8, 7, 8, 7, 7, 9, 7, 8, 7,
+ 8, 8, 9, 7, 7, 8, 8, 8, 9, 8, 8, 9, 7, 8, 9, 8,
+ 8, 8, 9, 8, 8, 8, 8, 8, 9, 7, 8, 9, 9, 9, 9, 8,
+ 8, 8, 9, 8, 9, 8, 8, 8, 8, 9, 8, 7, 9, 9, 7, 8,
+ 9, 8, 8, 8, 8,10, 8, 9, 9, 8, 9, 8, 9, 8,10, 8,
+ 7, 7, 8, 9, 8, 9, 9, 8, 8, 9, 8, 8, 9, 8, 9, 9,
+ 8, 8, 8, 8, 8, 9, 9, 8, 9, 8, 8, 9, 9, 9, 8, 9,
+ 9, 9, 8, 9, 8, 9, 8, 9, 8,
};
static float _vq_quantthresh_res_Ac_9b[] = {
diff --git a/lib/mapping0.c b/lib/mapping0.c
index 5b61cb5c..75b69f70 100644
--- a/lib/mapping0.c
+++ b/lib/mapping0.c
@@ -11,7 +11,7 @@
********************************************************************
function: channel mapping 0 implementation
- last mod: $Id: mapping0.c,v 1.37.2.3 2001/10/16 20:10:10 xiphmont Exp $
+ last mod: $Id: mapping0.c,v 1.37.2.4 2001/10/20 01:03:59 xiphmont Exp $
********************************************************************/
@@ -462,9 +462,10 @@ static int mapping0_forward(vorbis_block *vb,vorbis_look_mapping *l){
/* partition based prequantization and channel coupling */
/* Steps in prequant and coupling:
-
+
+ classify by |mag| across all pcm vectors
+
down-couple/down-quantize from perfect residue -> quantized vector
- classify by this first quantized vector
do{
encode quantized vector; add encoded values to 'so-far' vector
@@ -489,6 +490,7 @@ static int mapping0_forward(vorbis_block *vb,vorbis_look_mapping *l){
float **sofar=alloca(sizeof(*sofar)*vi->channels);
long ***classifications=alloca(sizeof(*classifications)*info->submaps);
+ float ***qbundle=alloca(sizeof(*qbundle)*info->submaps);
float ***pcmbundle=alloca(sizeof(*pcmbundle)*info->submaps);
float ***sobundle=alloca(sizeof(*sobundle)*info->submaps);
int **zerobundle=alloca(sizeof(*zerobundle)*info->submaps);
@@ -507,6 +509,7 @@ static int mapping0_forward(vorbis_block *vb,vorbis_look_mapping *l){
memset(sofar[i],0,sizeof(*sofar[i])*n/2);
}
+ qbundle[0]=alloca(sizeof(*qbundle[0])*vi->channels);
pcmbundle[0]=alloca(sizeof(*pcmbundle[0])*vi->channels);
sobundle[0]=alloca(sizeof(*sobundle[0])*vi->channels);
zerobundle[0]=alloca(sizeof(*zerobundle[0])*vi->channels);
@@ -540,7 +543,7 @@ static int mapping0_forward(vorbis_block *vb,vorbis_look_mapping *l){
for(i=0;i<info->submaps;i++){
int ch_in_bundle=0;
- pcmbundle[i]=pcmbundle[0]+chcounter;
+ qbundle[i]=qbundle[0]+chcounter;
sobundle[i]=sobundle[0]+chcounter;
zerobundle[i]=zerobundle[0]+chcounter;
@@ -550,7 +553,8 @@ static int mapping0_forward(vorbis_block *vb,vorbis_look_mapping *l){
zerobundle[i][ch_in_bundle]=1;
else
zerobundle[i][ch_in_bundle]=0;
- pcmbundle[i][ch_in_bundle]=quantized[j];
+ qbundle[i][ch_in_bundle]=quantized[j];
+ pcmbundle[i][ch_in_bundle]=pcm[j];
sobundle[i][ch_in_bundle++]=sofar[j];
}
}
@@ -621,7 +625,11 @@ static int mapping0_forward(vorbis_block *vb,vorbis_look_mapping *l){
/* actual encoding loop; if we have a desired stopping point, pack
slightly past it so that the end of the packet is not
uninitialized data that could pollute the decoded audio on the
- decode side. We want to truncate at a clean byte boundary */
+ decode side. We want to truncate at a clean byte boundary.
+
+ If we're doing an average bitrate, we need to encode to the
+ bitter end then truncate (so that we can collect bit usage
+ statistics for floater adjustment) */
for(i=0;!stopflag;){
/* perform residue encoding of this pass's quantized residue
@@ -634,13 +642,13 @@ static int mapping0_forward(vorbis_block *vb,vorbis_look_mapping *l){
if(stoppos){
look->residue_func[j]->
forward(vb,look->residue_look[j],
- pcmbundle[j],sobundle[j],zerobundle[j],chbundle[j],
+ qbundle[j],sobundle[j],zerobundle[j],chbundle[j],
i,classifications[j],b->bitrate_floatinglimit,queueptr);
}else{
stoppos=look->residue_func[j]->
forward(vb,look->residue_look[j],
- pcmbundle[j],sobundle[j],zerobundle[j],chbundle[j],
+ qbundle[j],sobundle[j],zerobundle[j],chbundle[j],
i,classifications[j],b->bitrate_floatinglimit,queueptr);
}
i++;
@@ -856,49 +864,49 @@ static int mapping0_forward(vorbis_block *vb,vorbis_look_mapping *l){
b->bitrate_boundsampleacc[i]+=ci->blocksizes[vb->W]>>1;
}
- /* bins */
- if(b->bitrate_bins){
- for(i=0;i<b->bitrate_bins;i++)
- b->bitrate_avgbitacc[i]+=
- b->bitrate_queue_bin[b->bitrate_queue_head*b->bitrate_bins+i];
- b->bitrate_avgsampleacc+=ci->blocksizes[vb->W]>>1;
- }
-
- b->bitrate_queue_head++;
- if(b->bitrate_queue_head>=b->bitrate_queue_size)b->bitrate_queue_head=0;
+ /* bins */
+ if(b->bitrate_bins){
+ for(i=0;i<b->bitrate_bins;i++)
+ b->bitrate_avgbitacc[i]+=
+ b->bitrate_queue_bin[b->bitrate_queue_head*b->bitrate_bins+i];
+ b->bitrate_avgsampleacc+=ci->blocksizes[vb->W]>>1;
}
- /* adjust the floater to offset bitrate above/below desired average */
- /* look for the bin settings in recent history that bracket
- the desired bitrate, and interpolate twixt them for the
- flaoter setting we want */
+ b->bitrate_queue_head++;
+ if(b->bitrate_queue_head>=b->bitrate_queue_size)b->bitrate_queue_head=0;
+ }
- if(b->bitrate_bins>0 &&
- (b->bitrate_avgsampleacc>ci->bitrate_avg_queuetime*vi->rate/8 ||
- b->bitrate_avgsampleacc>8192)){
- double upper=floater_interpolate(b,vi,ci->bitrate_queue_upperavg);
- double lower=floater_interpolate(b,vi,ci->bitrate_queue_loweravg);
- double new=ci->bitrate_floatinglimit_initial;
- double slew;
-
- fprintf(stderr,"\tupper:%g :: lower:%g\n",upper,lower);
-
- if(upper>0. && upper<new)new=upper;
- if(lower<ci->bitrate_floatinglimit_minimum)
- lower=ci->bitrate_floatinglimit_minimum;
- if(lower>new)new=lower;
-
- slew=new-b->bitrate_floatinglimit;
-
- if(slew<ci->bitrate_floatinglimit_downslew_max)
- new=b->bitrate_floatinglimit+ci->bitrate_floatinglimit_downslew_max;
- if(slew>ci->bitrate_floatinglimit_upslew_max)
- new=b->bitrate_floatinglimit+ci->bitrate_floatinglimit_upslew_max;
-
- b->bitrate_floatinglimit=new;
- }
- }
- }
+ /* adjust the floater to offset bitrate above/below desired average */
+ /* look for the bin settings in recent history that bracket
+ the desired bitrate, and interpolate twixt them for the
+ flaoter setting we want */
+
+ if(b->bitrate_bins>0 &&
+ (b->bitrate_avgsampleacc>ci->bitrate_avg_queuetime*vi->rate/8 ||
+ b->bitrate_avgsampleacc>8192)){
+ double upper=floater_interpolate(b,vi,ci->bitrate_queue_upperavg);
+ double lower=floater_interpolate(b,vi,ci->bitrate_queue_loweravg);
+ double new=ci->bitrate_floatinglimit_initial;
+ double slew;
+
+ fprintf(stderr,"\tupper:%g :: lower:%g\n",upper,lower);
+
+ if(upper>0. && upper<new)new=upper;
+ if(lower<ci->bitrate_floatinglimit_minimum)
+ lower=ci->bitrate_floatinglimit_minimum;
+ if(lower>new)new=lower;
+
+ slew=new-b->bitrate_floatinglimit;
+
+ if(slew<ci->bitrate_floatinglimit_downslew_max)
+ new=b->bitrate_floatinglimit+ci->bitrate_floatinglimit_downslew_max;
+ if(slew>ci->bitrate_floatinglimit_upslew_max)
+ new=b->bitrate_floatinglimit+ci->bitrate_floatinglimit_upslew_max;
+
+ b->bitrate_floatinglimit=new;
+ }
+ }
+
look->lastframe=vb->sequence;
return(0);
diff --git a/lib/modes/mode_44c_A.h b/lib/modes/mode_44c_A.h
index 5afdb1fb..da903dcf 100644
--- a/lib/modes/mode_44c_A.h
+++ b/lib/modes/mode_44c_A.h
@@ -11,7 +11,7 @@
********************************************************************
function: predefined encoding modes; 44kHz stereo ~64kbps true VBR
- last mod: $Id: mode_44c_A.h,v 1.4.2.5 2001/10/16 20:10:21 xiphmont Exp $
+ last mod: $Id: mode_44c_A.h,v 1.4.2.6 2001/10/20 01:04:08 xiphmont Exp $
********************************************************************/
@@ -54,27 +54,30 @@
#include "books/res_Ac_0.vqh"
#include "books/res_Ac_0a.vqh"
+#include "books/res_Ac_0b.vqh"
#include "books/res_Ac_1.vqh"
#include "books/res_Ac_1a.vqh"
#include "books/res_Ac_2.vqh"
#include "books/res_Ac_2a.vqh"
#include "books/res_Ac_2b.vqh"
+#include "books/res_Ac_2c.vqh"
#include "books/res_Ac_3.vqh"
#include "books/res_Ac_3a.vqh"
#include "books/res_Ac_3b.vqh"
#include "books/res_Ac_4.vqh"
#include "books/res_Ac_4a.vqh"
+#include "books/res_Ac_4b.vqh"
+#include "books/res_Ac_4c.vqh"
#include "books/res_Ac_5.vqh"
#include "books/res_Ac_5a.vqh"
+#include "books/res_Ac_5b.vqh"
#include "books/res_Ac_6.vqh"
#include "books/res_Ac_6a.vqh"
-#include "books/res_Ac_6b.vqh"
#include "books/res_Ac_7.vqh"
#include "books/res_Ac_7a.vqh"
#include "books/res_Ac_8.vqh"
#include "books/res_Ac_8a.vqh"
#include "books/res_Ac_8b.vqh"
-#include "books/res_Ac_8c.vqh"
#include "books/res_Ac_9.vqh"
#include "books/res_Ac_9a.vqh"
#include "books/res_Ac_9b.vqh"
@@ -93,38 +96,42 @@ static vorbis_info_psy_global _psy_set_44c_AG={
};
static struct vp_couple_pass _psy_pass_44c_A0[]={
- {1.f,1.f,9e10,
- {{ 24, 0, 0, 0},
- { 64, 0, 0, 4.5},
- {9999, 0, 0, 7.5}}
+ {1.f,1.f,
+ {{ 24, 0, 9e10, 0},
+ { 64, 0, 9e10, 4.5},
+ {9999, 0, 9e10, 7.5}}
},
- {1.f,1.f,9e10,
- {{ 64, 0, 0, 0},
- {9999, 0, 0, 2.5}}
+ {1.f,1.f,
+ {{ 64, 0, 9e10, 0},
+ {9999, 0, 9e10, 2.5}}
},
- {1.f,1.f,9e10,
- {{9999, 0, 0, 0}}
+ {.333333f,3.f,
+ {{ 64, 0, 9e10, 0},
+ {9999, 0, 9e10, 2.5}}
},
- {.333333f,3.f,1.f,
- {{9999, 0, 0, 0}}
+ {.111111f,9.f,
+ {{ 64, 0, 9e10, 0},
+ {9999, 0, 9e10, 2.5}}
},
};
static vp_couple_pass _psy_pass_44c_A[]={
- {1.f,1.f,9e10,
- {{ 288, 0, 0, 0},
- { 512, 0, 0, 4.5},
- {9999, 0, 0, 7.5}}
+ {1.f,1.f,
+ {{ 288, 0, 9e10, 0},
+ { 512, 0, 9e10, 4.5},
+ {9999, 0, 9e10, 7.5}}
},
- {1.f,1.f,9e10,
- {{ 512, 0, 0, 0},
- {9999, 0, 0, 2.5}}
+ {1.f,1.f,
+ {{ 512, 0, 9e10, 0},
+ {9999, 0, 9e10, 2.5}}
},
- {1.f,1.f,9e10,
- {{9999, 0, 0, 0}}
+ {.333333f,3.f,
+ {{ 512, 0, 9e10, 0},
+ {9999, 0, 9e10, 2.5}}
},
- {.333333f,3.f,1.f,
- {{9999, 0, 0, 0}}
+ {.111111f,9.f,
+ {{ 512, 0, 9e10, 0},
+ {9999, 0, 9e10, 2.5}}
},
};
@@ -136,7 +143,6 @@ static float _psy_compand_44c_A[NOISE_COMPAND_LEVELS]={
11.f,12.f,13.f,14.f,15.f,16.f,17.f, 18.f, /* 39dB */
};
-
static vorbis_info_psy _psy_set_44c_A0={
ATH_Bark_dB_lineaggressive,
-100.,-140.,
@@ -153,7 +159,7 @@ static vorbis_info_psy _psy_set_44c_A0={
2, 2, 15,
/*63 125 250 500 1k 2k 4k 8k 16k*/
- {-30,-30,-30,-30,-26,-22,-20,-14,-10,-2, -1, -1, 2, 2, 2, 3, 6},
+ {-30,-30,-30,-30,-26,-22,-20,-14,-10, -2, -1, -1, 0, 0, 2, 3, 6},
_psy_compand_44c_A,
95.f, /* even decade + 5 is important; saves an rint() later in a
@@ -178,7 +184,7 @@ static vorbis_info_psy _psy_set_44c_AT={
4,4,100,
/*63 125 250 500 1k 2k 4k 8k 16k*/
- {-30,-30,-30,-30,-26,-20,-20,-10, -6, -2, -3, -3, 0, 2, 2, 2, 5},
+ {-30,-30,-30,-30,-26,-20,-20,-10, -6, -2, -3, -3, 0, 0, 1, 1, 4},
_psy_compand_44c_A,
95.f, /* even decade + 5 is important; saves an rint() later in a
@@ -203,7 +209,7 @@ static vorbis_info_psy _psy_set_44c_A={
4,4,100,
/*63 125 250 500 1k 2k 4k 8k 16k*/
- {-20,-20,-20,-20,-20,-20,-20,-10, -6, -2, -3, -3, 0, 2, 2, 2, 5},
+ {-20,-20,-20,-20,-20,-20,-20,-10, -6, -2, -3, -3, 0, 0, 1, 1, 4},
_psy_compand_44c_A,
95.f, /* even decade + 5 is important; saves an rint() later in a
@@ -270,21 +276,21 @@ static vorbis_info_floor1 _floor_set_44c_A={
static vorbis_info_residue0 _residue_set_44c_A0={
0,224, 16, 10,23,
- { 65, 3, 82, 104, 17, 40, 49, 51, 55, 23},
- {25,26, 27,28, 29,30,31, 32,33,34, 35,36, 37,38, 39,40,41, 42,43,40,41, 44,45,46,47,41, 48,49,50,47},
- { 9999, 9999, 9999, 9999, 9999, 9999, 9999, 9999, 9999, 9999},
- { 4.5, 22.5, 1.5, 1.5, 2.5, 2.5, 4.5, 22.5, 87.5},
+ { 97, 3, 120, 104, 116, 104, 17, 3, 7, 7},
+ {25,26,27, 28,29, 30,31,32,33, 34,35,36, 37,38,39,40, 41,42,43, 44,45, 46,47, 48,49,50, 51,52,53},
+ { 9999, 9999, 9999, 9999, 9999, 9999, 9999, 9999, 9999, 9999},
+ { 4.5, 20.5, 1.5, 1.5, 2.5, 2.5, 4.5, 20.5, 98.5},
{0},
- { 3, 3, 8, 99, 8, 99, 99, 99, 99}};
+ { 3, 3, 8, 99, 8, 99, 99, 99, 99}};
static vorbis_info_residue0 _residue_set_44c_A={
0,1792, 32,10,24,
- { 65, 3, 82, 98, 17, 33, 49, 51, 55, 23},
- {25,26, 27,28, 29,30,31, 32,33,34, 35,36, 37,38, 39,40,41, 42,43,40,41, 44,45,46,47,41, 48,49,50,47},
- { 9999, 9999, 9999, 9999, 9999, 9999, 9999, 9999, 9999, 9999},
- { 4.5, 22.5, 1.5, 1.5, 2.5, 2.5, 4.5, 22.5, 87.5},
+ { 97, 3, 116, 100, 114, 98, 17, 3, 7, 7},
+ {25,26,27, 28,29, 30,31,32,33, 34,35,36, 37,38,39,40, 41,42,43, 44,45, 46,47, 48,49,50, 51,52,53},
+ { 9999, 9999, 9999, 9999, 9999, 9999, 9999, 9999, 9999, 9999},
+ { 4.5, 20.5, 1.5, 1.5, 2.5, 2.5, 4.5, 20.5, 98.5},
{0},
- { 18, 18, 32, 99, 32, 99, 99, 99, 99}};
+ { 18, 18, 32, 99, 32, 99, 99, 99, 99}};
static vorbis_info_mapping0 _mapping_set_44c_A0={
1, {0,0}, {0}, {0}, {0}, {0,0}, 1,{0},{1}};
@@ -299,7 +305,7 @@ codec_setup_info info_44c_A={
/* smallblock, largeblock */
{256, 2048},
/* modes,maps,times,floors,residues,books,psys */
- 2, 2, 1, 2, 2, 51, 3,
+ 2, 2, 1, 2, 2, 54, 3,
/* modes */
{&_mode_set_44c_A0,&_mode_set_44c_A},
/* maps */
@@ -345,28 +351,31 @@ codec_setup_info info_44c_A={
&_vq_book_res_Ac_0, /* 25 */
&_vq_book_res_Ac_0a,
- &_vq_book_res_Ac_1, /* 27 */
+ &_vq_book_res_Ac_0b,
+ &_vq_book_res_Ac_1, /* 28 */
&_vq_book_res_Ac_1a,
- &_vq_book_res_Ac_2, /* 29 */
+ &_vq_book_res_Ac_2, /* 30 */
&_vq_book_res_Ac_2a,
&_vq_book_res_Ac_2b,
- &_vq_book_res_Ac_3, /* 32 */
+ &_vq_book_res_Ac_2c,
+ &_vq_book_res_Ac_3, /* 34 */
&_vq_book_res_Ac_3a,
&_vq_book_res_Ac_3b,
- &_vq_book_res_Ac_4, /* 35 */
+ &_vq_book_res_Ac_4, /* 37 */
&_vq_book_res_Ac_4a,
- &_vq_book_res_Ac_5, /* 37 */
+ &_vq_book_res_Ac_4b,
+ &_vq_book_res_Ac_4c,
+ &_vq_book_res_Ac_5, /* 41 */
&_vq_book_res_Ac_5a,
- &_vq_book_res_Ac_6, /* 39 */
+ &_vq_book_res_Ac_5b,
+ &_vq_book_res_Ac_6, /* 44 */
&_vq_book_res_Ac_6a,
- &_vq_book_res_Ac_6b,
- &_vq_book_res_Ac_7, /* 42 */
+ &_vq_book_res_Ac_7, /* 46 */
&_vq_book_res_Ac_7a,
- &_vq_book_res_Ac_8, /* 44 */
+ &_vq_book_res_Ac_8, /* 48 */
&_vq_book_res_Ac_8a,
&_vq_book_res_Ac_8b,
- &_vq_book_res_Ac_8c,
- &_vq_book_res_Ac_9, /* 48 */
+ &_vq_book_res_Ac_9, /* 51 */
&_vq_book_res_Ac_9a,
&_vq_book_res_Ac_9b,
@@ -377,15 +386,15 @@ codec_setup_info info_44c_A={
&_psy_set_44c_AG,
/* progressive coding and bitrate controls */
- 4.0, 0., .1, -2.,
+ 4.0, 0., .1, -1.,
1.,4.,
- 110000,90000,0,0,
+ 110000,90000, 0,0,
112000,140000,
- 120000,128000,
+ 124000,128000,
{4,5,6,7},
4,
diff --git a/lib/modes/modes.h b/lib/modes/modes.h
index 3cb5622f..6a1ea0ae 100644
--- a/lib/modes/modes.h
+++ b/lib/modes/modes.h
@@ -11,7 +11,7 @@
********************************************************************
function: predefined encoding modes
- last mod: $Id: modes.h,v 1.14.2.1 2001/10/16 20:10:21 xiphmont Exp $
+ last mod: $Id: modes.h,v 1.14.2.2 2001/10/20 01:04:08 xiphmont Exp $
********************************************************************/
@@ -20,7 +20,7 @@
#include "masking.h"
/* stereo (coupled) */
-#include "modes/mode_44c_Z.h"
+//#include "modes/mode_44c_Z.h"
//#include "modes/mode_44c_Y.h"
//#include "modes/mode_44c_X.h"
#include "modes/mode_44c_A.h"
diff --git a/lib/psy.c b/lib/psy.c
index ee64fd9b..ac97539e 100644
--- a/lib/psy.c
+++ b/lib/psy.c
@@ -11,7 +11,7 @@
********************************************************************
function: psychoacoustics not including preecho
- last mod: $Id: psy.c,v 1.56.2.2 2001/10/16 20:10:11 xiphmont Exp $
+ last mod: $Id: psy.c,v 1.56.2.3 2001/10/20 01:03:59 xiphmont Exp $
********************************************************************/
@@ -902,7 +902,8 @@ float _vp_ampmax_decay(float amp,vorbis_dsp_state *vd){
static void couple_lossless(float A, float B,
float granule,float igranule,
- float *mag, float *ang){
+ float *mag, float *ang,
+ int flip_p){
if(fabs(A)>fabs(B)){
A=rint(A*igranule)*granule; /* must be done *after* the comparison */
@@ -916,133 +917,12 @@ static void couple_lossless(float A, float B,
*mag=B; *ang=(B>0.f?A-B:B-A);
}
- if(*ang>fabs(*mag)*1.9999f){
+ if(flip_p && *ang>fabs(*mag)*1.9999f){
*ang= -fabs(*mag)*2.f;
*mag= -*mag;
}
}
-static void couple_8phase(float A, float B, float fA, float fB,
- float granule,float igranule,
- float fmag, float *mag, float *ang){
-
- float origmag=FAST_HYPOT(A*fA,B*fB),corr;
-
- if(fmag!=0.f){
- float phase=rint((A-B)/fmag);
-
- if(fabs(A)>fabs(B)){
- *mag=A;phase=(A>0?phase:-phase);
- }else{
- *mag=B;phase=(B>0?phase:-phase);
- }
-
- switch((int)phase){
- case 0:
- corr=origmag/FAST_HYPOT(fmag*fA,fmag*fB);
- *mag=rint(*mag*corr*igranule)*granule;
- *ang=0.f;
- break;
- case 1:
- *mag=rint(*mag*igranule)*granule;
- *ang=fabs(*mag);
- break;
- case -1:
- *mag=rint(*mag*igranule)*granule;
- *ang= -fabs(*mag);
- break;
- case -2:
- corr=origmag/FAST_HYPOT(fmag*fA,fmag*fB);
- *mag=rint(*mag*corr*igranule)*granule;
- *ang= -2.f*fabs(*mag);
- break;
- case 2:
- corr=origmag/FAST_HYPOT(fmag*fA,fmag*fB);
- *mag= -rint(*mag*corr*igranule)*granule;
- *ang= -2.f*fabs(*mag);
- break;
- }
- }else{
- *mag=0.f;
- *ang=0.f;
- }
-}
-
-static void couple_6phase(float A, float B, float fA, float fB,
- float granule,float igranule,
- float fmag, float *mag, float *ang){
-
- float origmag=FAST_HYPOT(A*fA,B*fB),corr;
-
- if(fmag!=0.f){
- float phase=rint((A-B)/fmag);
-
- if(fabs(A)>fabs(B)){
- *mag=A;phase=(A>0?phase:-phase);
- }else{
- *mag=B;phase=(B>0?phase:-phase);
- }
-
- switch((int)phase){
- case 0:
- corr=origmag/FAST_HYPOT(fmag*fA,fmag*fB);
- *mag=rint(*mag*corr*igranule)*granule;
- *ang=0.f;
- break;
- case 1:case 2:
- *mag=rint(*mag*igranule)*granule;
- *ang= fabs(*mag);
- break;
- case -1:case -2:
- *mag=rint(*mag*igranule)*granule;
- *ang= -fabs(*mag);
- break;
- default:
- *mag=0.f;
- *ang=0.f;
-
- }
- }else{
- *mag=0.f;
- *ang=0.f;
- }
-}
-
-static void couple_4phase(float A, float B, float fA, float fB,
- float granule,float igranule,
- float fmag, float *mag, float *ang){
-
- float origmag=FAST_HYPOT(A*fA,B*fB),corr;
-
- if(fmag!=0.f){
- float phase=rint((A-B)*.5/fmag);
-
- if(fabs(A)>fabs(B)){
- *mag=A;phase=(A>0?phase:-phase);
- }else{
- *mag=B;phase=(B>0?phase:-phase);
- }
-
- corr=origmag/FAST_HYPOT(fmag*fA,fmag*fB);
- *mag=rint(*mag*corr*igranule)*granule;
- switch((int)phase){
- case 0:
- *ang=0.f;
- break;
- case -1:
- *ang=-2.f*fabs(*mag);
- break;
- default:
- *mag=-*mag;
- *ang=-2.f*fabs(*mag);
- break;
- }
- }else{
- *mag=0.f;
- *ang=0.f;
- }
-}
-
static void couple_point(float A, float B, float fA, float fB,
float granule,float igranule,
float fmag, float *mag, float *ang){
@@ -1091,8 +971,7 @@ void _vp_quantize_couple(vorbis_look_psy *p,
for(i=0;i<vi->coupling_steps;i++){
float granulem=info->couple_pass[passno].granulem;
float igranulem=info->couple_pass[passno].igranulem;
- float rqlimit=info->couple_pass[passno].requant_limit;
-
+
/* make sure coupling a zero and a nonzero channel results in two
nonzero channels. */
if(nonzero[vi->coupling_mag[i]] ||
@@ -1112,7 +991,9 @@ void _vp_quantize_couple(vorbis_look_psy *p,
for(j=0,k=0;j<n;k++){
vp_couple *part=info->couple_pass[passno].couple_pass+k;
-
+ float rqlimit=part->outofphase_requant_limit;
+ float flip_p=part->outofphase_redundant_flip_p;
+
for(;j<part->limit && j<p->n;j++){
/* partition by partition; k is our by-location partition
class counter */
@@ -1121,19 +1002,10 @@ void _vp_quantize_couple(vorbis_look_psy *p,
if(fmag<part->amppost_point){
couple_point(pcmM[j],pcmA[j],floorM[j],floorA[j],
granulem,igranulem,fmag,&mag,&ang);
+
}else{
- if(fmag<part->amppost_6phase){
- couple_6phase(pcmM[j],pcmA[j],floorM[j],floorA[j],
- granulem,igranulem,fmag,&mag,&ang);
- }else{
- if(fmag<part->amppost_8phase){
- couple_8phase(pcmM[j],pcmA[j],floorM[j],floorA[j],
- granulem,igranulem,fmag,&mag,&ang);
- }else{
- couple_lossless(pcmM[j],pcmA[j],
- granulem,igranulem,&mag,&ang);
- }
- }
+ couple_lossless(pcmM[j],pcmA[j],
+ granulem,igranulem,&mag,&ang,flip_p);
}
/* executive decision time: when requantizing and recoupling
diff --git a/lib/psy.h b/lib/psy.h
index c439ca88..60b62ca2 100644
--- a/lib/psy.h
+++ b/lib/psy.h
@@ -11,7 +11,7 @@
********************************************************************
function: random psychoacoustics (not including preecho)
- last mod: $Id: psy.h,v 1.24.2.2 2001/10/16 20:10:11 xiphmont Exp $
+ last mod: $Id: psy.h,v 1.24.2.3 2001/10/20 01:03:59 xiphmont Exp $
********************************************************************/
@@ -39,8 +39,9 @@
typedef struct vp_couple{
int limit; /* sample post */
- float amppost_8phase;
- float amppost_6phase;
+ int outofphase_redundant_flip_p;
+ float outofphase_requant_limit;
+
float amppost_point;
} vp_couple;
@@ -48,7 +49,6 @@ typedef struct vp_couple{
typedef struct vp_couple_pass{
float granulem;
float igranulem;
- float requant_limit;
vp_couple couple_pass[8];
} vp_couple_pass;
diff --git a/lib/res0.c b/lib/res0.c
index ab6724ca..dc4da565 100644
--- a/lib/res0.c
+++ b/lib/res0.c
@@ -11,7 +11,7 @@
********************************************************************
function: residue backend 0, 1 and 2 implementation
- last mod: $Id: res0.c,v 1.37.2.4 2001/10/16 20:10:11 xiphmont Exp $
+ last mod: $Id: res0.c,v 1.37.2.5 2001/10/20 01:03:59 xiphmont Exp $
********************************************************************/
@@ -327,26 +327,13 @@ static int _interleaved_encodepart(oggpack_buffer *opb,float *vec, int n,
int i,bits=0;
int dim=book->dim;
int step=n/dim;
-#ifdef TRAIN_RESENT
- char buf[80];
- FILE *f;
- sprintf(buf,"res0_b%d.vqd",book-look->fullbooks);
- f=fopen(buf,"a");
-#endif
for(i=0;i<step;i++){
int entry=vorbis_book_besterror(book,vec+i,step,0);
-#ifdef TRAIN_RESENT
- fprintf(f,"%d\n",entry);
-#endif
-
bits+=vorbis_book_encode(book,entry,opb);
}
-#ifdef TRAIN_RESENT
- fclose(f);
-#endif
return(bits);
}
@@ -355,26 +342,13 @@ static int _encodepart(oggpack_buffer *opb,float *vec, int n,
int i,bits=0;
int dim=book->dim;
int step=n/dim;
-#ifdef TRAIN_RESENT
- char buf[80];
- FILE *f;
- sprintf(buf,"res0_b%d.vqd",book-look->fullbooks);
- f=fopen(buf,"a");
-#endif
for(i=0;i<step;i++){
int entry=vorbis_book_besterror(book,vec+i*dim,1,0);
-#ifdef TRAIN_RESENT
- fprintf(f,"%d\n",entry);
-#endif
-
bits+=vorbis_book_encode(book,entry,opb);
}
-#ifdef TRAIN_RESENT
- fclose(f);
-#endif
return(bits);
}
@@ -419,7 +393,7 @@ static long **_01class(vorbis_block *vb,vorbis_look_residue *vl,
char buffer[80];
for(i=0;i<ch;i++){
- sprintf(buffer,"resaux_%d.vqd",vb->mode);
+ sprintf(buffer,"resaux_%s.vqd",(vb->mode?"long":"short"));
of=fopen(buffer,"a");
for(j=0;j<partvals;j++)
fprintf(of,"%ld, ",partword[i][j]);
@@ -449,6 +423,11 @@ static long **_2class(vorbis_block *vb,vorbis_look_residue *vl,
int partvals=n/samples_per_partition;
long **partword=_vorbis_block_alloc(vb,sizeof(*partword));
float *work=alloca(sizeof(*work)*samples_per_partition);
+
+#ifdef TRAIN_RES
+ FILE *of;
+ char buffer[80];
+#endif
partword[0]=_vorbis_block_alloc(vb,n*ch/samples_per_partition*sizeof(*partword[0]));
memset(partword[0],0,n*ch/samples_per_partition*sizeof(*partword[0]));
@@ -462,23 +441,22 @@ static long **_2class(vorbis_block *vb,vorbis_look_residue *vl,
l++;
}
}
+
partword[0][i]=
classify(work,samples_per_partition,look,possible_partitions,i);
+
+
}
#ifdef TRAIN_RES
- {
- FILE *of;
- char buffer[80];
-
- sprintf(buffer,"resaux_%d.vqd",vb->mode);
- of=fopen(buffer,"a");
- for(i=0;i<partvals;i++)
- fprintf(of,"%ld, ",partword[0][i]);
- fprintf(of,"\n");
- fclose(of);
- }
+ sprintf(buffer,"resaux_%s.vqd",(vb->mode?"long":"short"));
+ of=fopen(buffer,"a");
+ for(i=0;i<partvals;i++)
+ fprintf(of,"%ld, ",partword[0][i]);
+ fprintf(of,"\n");
+ fclose(of);
#endif
+
look->frames++;
return(partword);
@@ -514,17 +492,22 @@ static int _01forward(vorbis_block *vb,vorbis_look_residue *vl,
int stoppos=0;
#ifdef TRAIN_RES
- FILE *of;
+ FILE *of;
char buffer[80];
int m;
for(i=0;i<ch;i++){
- sprintf(buffer,"residue_%d#%d.vqd",vb->mode,pass);
- of=fopen(buffer,"a");
- for(m=0;m<info->end;m++)
- fprintf(of,"%.2f, ",in[i][m]);
- fprintf(of,"\n");
- fclose(of);
+ for(j=0;j<partvals;j++){
+ int class=partword[i][j];
+ float *ptr=in[i]+info->begin+j*samples_per_partition;
+ sprintf(buffer,"res_%s_part%d_it%d.vqd",(vb->mode?"long":"short"),
+ class,pass);
+ of=fopen(buffer,"a");
+ for(k=0;k<samples_per_partition;k++)
+ fprintf(of,"%.3f, ",ptr[k]);
+ fprintf(of,"\n");
+ fclose(of);
+ }
}
#endif
diff --git a/vq/distribution.c b/vq/distribution.c
new file mode 100644
index 00000000..ce2717ab
--- /dev/null
+++ b/vq/distribution.c
@@ -0,0 +1,248 @@
+/********************************************************************
+ * *
+ * THIS FILE IS PART OF THE OggVorbis SOFTWARE CODEC SOURCE CODE. *
+ * USE, DISTRIBUTION AND REPRODUCTION OF THIS LIBRARY SOURCE IS *
+ * GOVERNED BY A BSD-STYLE SOURCE LICENSE INCLUDED WITH THIS SOURCE *
+ * IN 'COPYING'. PLEASE READ THESE TERMS BEFORE DISTRIBUTING. *
+ * *
+ * THE OggVorbis SOURCE CODE IS (C) COPYRIGHT 1994-2001 *
+ * by the XIPHOPHORUS Company http://www.xiph.org/ *
+
+ ********************************************************************
+
+ function: utility for finding the distribution in a data set
+ last mod: $Id: distribution.c,v 1.7.4.1 2001/10/20 01:04:09 xiphmont Exp $
+
+ ********************************************************************/
+
+#include <stdlib.h>
+#include <stdio.h>
+#include <math.h>
+#include <string.h>
+#include <errno.h>
+#include "bookutil.h"
+
+/* command line:
+ distribution file.vqd
+*/
+
+int ascend(const void *a,const void *b){
+ return(**((long **)a)-**((long **)b));
+}
+
+int main(int argc,char *argv[]){
+ FILE *in;
+ long lines=0;
+ float min;
+ float max;
+ long bins=-1;
+ int flag=0;
+ long *countarray;
+ long total=0;
+ char *line;
+
+ if(argv[1]==NULL){
+ fprintf(stderr,"Usage: distribution {data.vqd [bins]| book.vqh} \n\n");
+ exit(1);
+ }
+ if(argv[2]!=NULL)
+ bins=atoi(argv[2])-1;
+
+ in=fopen(argv[1],"r");
+ if(!in){
+ fprintf(stderr,"Could not open input file %s\n",argv[1]);
+ exit(1);
+ }
+
+ if(strrchr(argv[1],'.') && strcmp(strrchr(argv[1],'.'),".vqh")==0){
+ /* load/decode a book */
+
+ codebook *b=codebook_load(argv[1]);
+ static_codebook *c=(static_codebook *)(b->c);
+ float delta;
+ int i;
+ fclose(in);
+
+ switch(c->maptype){
+ case 0:
+ printf("entropy codebook only; no mappings\n");
+ exit(0);
+ break;
+ case 1:
+ bins=_book_maptype1_quantvals(c);
+ break;
+ case 2:
+ bins=c->entries*c->dim;
+ break;
+ }
+
+ max=min=_float32_unpack(c->q_min);
+ delta=_float32_unpack(c->q_delta);
+
+ for(i=0;i<bins;i++){
+ float val=c->quantlist[i]*delta+min;
+ if(val>max)max=val;
+ }
+
+ printf("Minimum scalar value: %f\n",min);
+ printf("Maximum scalar value: %f\n",max);
+
+ switch(c->maptype){
+ case 1:
+ {
+ /* lattice codebook. dump it. */
+ int j,k;
+ long maxcount=0;
+ long **sort=calloc(bins,sizeof(long *));
+ long base=c->lengthlist[0];
+ countarray=calloc(bins,sizeof(long));
+
+ for(i=0;i<bins;i++)sort[i]=c->quantlist+i;
+ qsort(sort,bins,sizeof(long *),ascend);
+
+ for(i=0;i<b->entries;i++)
+ if(c->lengthlist[i]>base)base=c->lengthlist[i];
+
+ /* dump a full, correlated count */
+ for(j=0;j<b->entries;j++){
+ if(c->lengthlist[j]){
+ int indexdiv=1;
+ printf("%4d: ",j);
+ for(k=0;k<b->dim;k++){
+ int index= (j/indexdiv)%bins;
+ printf("%+3.1f,", c->quantlist[index]*_float32_unpack(c->q_delta)+
+ _float32_unpack(c->q_min));
+ indexdiv*=bins;
+ }
+ printf("\t|");
+ for(k=0;k<base-c->lengthlist[j];k++)printf("*");
+ printf("\n");
+ }
+ }
+
+ /* do a rough count */
+ for(j=0;j<b->entries;j++){
+ int indexdiv=1;
+ for(k=0;k<b->dim;k++){
+ if(c->lengthlist[j]){
+ int index= (j/indexdiv)%bins;
+ countarray[index]+=(1<<(base-c->lengthlist[j]));
+ indexdiv*=bins;
+ }
+ }
+ }
+
+ /* dump the count */
+
+ {
+ long maxcount=0,i,j;
+ for(i=0;i<bins;i++)
+ if(countarray[i]>maxcount)maxcount=countarray[i];
+
+ for(i=0;i<bins;i++){
+ int ptr=sort[i]-c->quantlist;
+ int stars=rint(50./maxcount*countarray[ptr]);
+ printf("%+08f (%8ld) |",c->quantlist[ptr]*delta+min,countarray[ptr]);
+ for(j=0;j<stars;j++)printf("*");
+ printf("\n");
+ }
+ }
+ }
+ break;
+ case 2:
+ {
+ /* trained, full mapping codebook. */
+ printf("Can't do probability dump of a trained [type 2] codebook (yet)\n");
+ }
+ break;
+ }
+ }else{
+ /* load/count a data file */
+
+ /* do it the simple way; two pass. */
+ line=setup_line(in);
+ while(line){
+ float code;
+ char buf[80];
+ lines++;
+
+ sprintf(buf,"getting min/max (%.2f::%.2f). lines...",min,max);
+ if(!(lines&0xff))spinnit(buf,lines);
+
+ while(!flag && sscanf(line,"%f",&code)==1){
+ line=strchr(line,',');
+ min=max=code;
+ flag=1;
+ }
+
+ while(line && sscanf(line,"%f",&code)==1){
+ line=strchr(line,',');
+ if(line)line++;
+ if(code<min)min=code;
+ if(code>max)max=code;
+ }
+
+ line=setup_line(in);
+ }
+
+ if(bins<1){
+ if((int)(max-min)==min-max){
+ bins=max-min;
+ }else{
+ bins=25;
+ }
+ }
+
+ printf("\r \r");
+ printf("Minimum scalar value: %f\n",min);
+ printf("Maximum scalar value: %f\n",max);
+
+ if(argv[2]){
+
+ printf("\n counting hits into %ld bins...\n",bins+1);
+ countarray=calloc(bins+1,sizeof(long));
+
+ rewind(in);
+ line=setup_line(in);
+ while(line){
+ float code;
+ lines--;
+ if(!(lines&0xff))spinnit("counting distribution. lines so far...",lines);
+
+ while(line && sscanf(line,"%f",&code)==1){
+ line=strchr(line,',');
+ if(line)line++;
+
+ code-=min;
+ code/=(max-min);
+ code*=bins;
+ countarray[(int)rint(code)]++;
+ total++;
+ }
+
+ line=setup_line(in);
+ }
+
+ /* make a pretty graph */
+ {
+ long maxcount=0,i,j;
+ for(i=0;i<bins+1;i++)
+ if(countarray[i]>maxcount)maxcount=countarray[i];
+
+ printf("\r \r");
+ printf("Total scalars: %ld\n",total);
+ for(i=0;i<bins+1;i++){
+ int stars=rint(50./maxcount*countarray[i]);
+ printf("%08f (%8ld) |",(max-min)/bins*i+min,countarray[i]);
+ for(j=0;j<stars;j++)printf("*");
+ printf("\n");
+ }
+ }
+ }
+
+ fclose(in);
+
+ }
+ printf("\nDone.\n");
+ exit(0);
+}
diff --git a/vq/res_44c_Ab.vqs b/vq/res_44c_Ab.vqs
new file mode 100644
index 00000000..4eb37913
--- /dev/null
+++ b/vq/res_44c_Ab.vqs
@@ -0,0 +1,134 @@
+huffbuild line_128x19_class1.vqd 0-64
+huffbuild line_128x19_class2.vqd 0-64
+
+huffbuild line_128x19_0sub0.vqd 0-64
+huffbuild line_128x19_1sub1.vqd 1-9
+huffbuild line_128x19_1sub2.vqd 9-25
+huffbuild line_128x19_1sub3.vqd 25-64
+huffbuild line_128x19_2sub1.vqd 1-9
+huffbuild line_128x19_2sub2.vqd 9-25
+huffbuild line_128x19_2sub3.vqd 25-64
+
+huffbuild line_1024x31_class0.vqd 0-8
+huffbuild line_1024x31_class1.vqd 0-16
+huffbuild line_1024x31_class2.vqd 0-64
+huffbuild line_1024x31_class3.vqd 0-64
+
+huffbuild line_1024x31_0sub0.vqd 0-16
+huffbuild line_1024x31_0sub1.vqd 16-64
+
+huffbuild line_1024x31_1sub0.vqd 0-16
+huffbuild line_1024x31_1sub1.vqd 16-64
+
+huffbuild line_1024x31_2sub1.vqd 1-9
+huffbuild line_1024x31_2sub2.vqd 9-25
+huffbuild line_1024x31_2sub3.vqd 25-64
+huffbuild line_1024x31_3sub1.vqd 1-9
+huffbuild line_1024x31_3sub2.vqd 9-25
+huffbuild line_1024x31_3sub3.vqd 25-64
+
+cp resaux_short.vqd res_44c_A_128aux.vqd
+cp resaux_long.vqd res_44c_A_1024aux.vqd
+
+GO
+
+>res_Ac_128 noninterleaved
+haux res_44c_A_128aux.vqd 0,14,2
+
+>res_Ac noninterleaved
+haux res_44c_A_1024aux.vqd 0,56,2
+
+#short
+# 4 20 1 1 2 2 4 20 98 +
+# 0 0 1 1
+#
+# 0 1 2 3 4 5 6 7 8 9
+# 1 . . . . . .
+# 2 . . . .
+# 4 . . .
+# 8 . . .
+#
+# 16 . . .
+#
+# 32 . . . . .
+#
+# 64 . . . . .
+#
+# 127 97 3 120 104 116 104 17 3 7 7
+
+#long
+# 4 22 1 1 2 2 4 22 98 +
+# 0 0 1 1
+#
+# 0 1 2 3 4 5 6 7 8 9
+# 1 . . . . . .
+# 2 . . . . . .
+# 4 . . . .
+# 8
+#
+# 16 . . .
+#
+# 32 . . . . .
+#
+# 64 . . . . .
+#
+# 127 97 3 116 100 114 98 17 3 7 7
+
+#iter 0
+
+# fmag 4
+:_0 res_long_part0_it0.vqd, 2, nonseq cull, 0 +- 1 2 3 4 5 6 7 8
+
+# fmag 20
+:_1 res_long_part1_it0.vqd, 2, nonseq, 0 +- 9 18 27 36
++_1a, 2, nonseq, 0 +- 1 2 3 4
+
+:_2 res_long_part2_it0.vqd, 4, nonseq cull, 0 +- 1
+:_3 res_long_part3_it0.vqd, 4, nonseq cull, 0 +- 1
+
+:_4 res_long_part4_it0.vqd, 4, nonseq cull, 0 +- 1 2
+:_5 res_long_part5_it0.vqd, 4, nonseq cull, 0 +- 1 2
+
+:_6 res_long_part6_it0.vqd, 2, nonseq cull, 0 +- 1 2 3 4
+
+#fmag 20
+:_7 res_long_part7_it0.vqd, 2, nonseq, 0 +- 9 18 27 36
++_7a, 2, nonseq, 0 +- 1 2 3 4
+
+#fmag 98
+:_8 res_long_part8_it0.vqd, 2, nonseq, 0 +- 55 110 165
++_8a, 2, nonseq, 0 +- 9 18 27
++_8b, 2, nonseq, 0 +- 1 2 3 4
+
+:_9 res_long_part9_it0.vqd, 2, nonseq, 0 +- 169 338 507
++_9a, 2, nonseq, 0 +- 13 26 39 52 65 78
++_9b, 2, nonseq, 0 +- 1 2 3 4 5 6
+
+#iter 1
+
+:_2a res_long_part2_it1.vqd, 4, nonseq cull, 0 +- 1 2
+:_4a res_long_part4_it1.vqd, 2, nonseq cull, 0 +- 1 2 3 4
+:_6a res_long_part6_it1.vqd, 2, nonseq cull, 0 +- 1 2 3 4 5 6 7 8
+
+#iter 2
+
+:_0a res_long_part0_it2.vqd, 2, nonseq cull, 0 +- .333333 .666667
+:_2b res_long_part2_it2.vqd, 2, nonseq cull, 0 +- .333333 .666667
+:_3a res_long_part3_it2.vqd, 2, nonseq cull, 0 +- .333333
+:_4b res_long_part4_it2.vqd, 2, nonseq cull, 0 +- .333333 .666667
+:_5a res_long_part5_it2.vqd, 2, nonseq cull, 0 +- .333333
+
+#iter 3
+
+:_0b res_long_part0_it3.vqd, 2, nonseq cull, 0 +- .111111 .222222
+:_2c res_long_part2_it3.vqd, 2, nonseq cull, 0 +- .111111 .222222
+:_3b res_long_part3_it3.vqd, 2, nonseq cull, 0 +- .111111
+:_4c res_long_part4_it3.vqd, 2, nonseq cull, 0 +- .111111 .222222
+:_5b res_long_part5_it3.vqd, 2, nonseq cull, 0 +- .111111
+
+
+
+
+
+
+