Thoughts-in-progress: new noise metrics, cleaned up stereo. There's a
authorMonty <xiphmont@xiph.org>
Tue, 11 Sep 2001 05:07:02 +0000 (05:07 +0000)
committerMonty <xiphmont@xiph.org>
Tue, 11 Sep 2001 05:07:02 +0000 (05:07 +0000)
midrange knocking in dogies.wav I need to fully analyse (it's in short
blocks).

svn path=/trunk/vorbis/; revision=2017

28 files changed:
lib/books/line_128x19_0sub0.vqh
lib/books/line_128x19_1sub1.vqh
lib/books/line_128x19_1sub2.vqh
lib/books/line_128x19_1sub3.vqh
lib/books/line_128x19_2sub2.vqh
lib/books/line_128x19_2sub3.vqh
lib/books/line_128x19_class1.vqh
lib/books/line_128x19_class2.vqh
lib/books/res_44c_A_1024aux.vqh
lib/books/res_44c_A_128aux.vqh
lib/books/res_Ac_1.vqh
lib/books/res_Ac_2.vqh
lib/books/res_Ac_3.vqh
lib/books/res_Ac_4.vqh
lib/books/res_Ac_5.vqh
lib/books/res_Ac_6.vqh
lib/books/res_Ac_7.vqh
lib/books/res_Ac_7a.vqh
lib/books/res_Ac_8.vqh
lib/books/res_Ac_8a.vqh
lib/books/res_Ac_9.vqh
lib/books/res_Ac_9a.vqh
lib/books/res_Ac_9b.vqh
lib/info.c
lib/mapping0.c
lib/modes/mode_44c_A.h
lib/psy.c
lib/psy.h

index f0c0121..0a3ed58 100644 (file)
 #include "codebook.h"
 
 static long _huff_lengthlist_line_128x19_0sub0[] = {
-        4, 4, 4, 4, 4, 4, 4, 4, 5, 4, 5, 4, 5, 5, 6, 5,
-        6, 5, 6, 6, 6, 6, 6, 7, 7, 7, 7, 8, 7, 9, 8,10,
-        8,11, 8,11, 8,14, 8,14, 8,15, 9,12, 9,11,10,11,
-       11,12,13,15,12,15,15,15,15,15,15,15,15,14,14,14,
+        4, 4, 4, 4, 5, 4, 5, 4, 5, 4, 5, 4, 5, 5, 6, 5,
+        6, 5, 6, 5, 6, 6, 7, 6, 7, 7, 7, 7, 7, 8, 7, 8,
+        7, 9, 8,10, 8,12, 8,13, 7,13, 8,11, 8, 9, 8, 9,
+        8,10, 9,10, 9, 9, 9,10,11,12,14,15,15,15,15,14,
 };
 
 static static_codebook _huff_book_line_128x19_0sub0 = {
index 11851b4..51c4133 100644 (file)
@@ -20,7 +20,7 @@
 #include "codebook.h"
 
 static long _huff_lengthlist_line_128x19_1sub1[] = {
-        0, 3, 4, 2, 5, 2, 6, 2, 6,
+        0, 3, 3, 3, 3, 2, 4, 3, 4,
 };
 
 static static_codebook _huff_book_line_128x19_1sub1 = {
index b84a1ec..583ae24 100644 (file)
@@ -20,8 +20,8 @@
 #include "codebook.h"
 
 static long _huff_lengthlist_line_128x19_1sub2[] = {
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 5, 2, 7, 3, 7, 4,
-       12, 7,11, 8,10,10,12,11,11,
+        0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 3, 3, 4, 3, 5, 4,
+        5, 4, 5, 5, 6, 6, 6, 7, 7,
 };
 
 static static_codebook _huff_book_line_128x19_1sub2 = {
index 1502874..4d8a41e 100644 (file)
 #include "codebook.h"
 
 static long _huff_lengthlist_line_128x19_1sub3[] = {
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0,
-        0, 0, 3, 0, 0, 0, 0, 2, 0, 9, 9, 9, 9, 9, 9, 9,
-        9, 9, 9, 9, 9, 9, 9, 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,
+        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+        0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 3, 4, 2, 5, 3, 7,
+        3, 7, 4, 9, 5,10, 6,10, 8,10, 9,10,10,10,10,10,
+       10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,
 };
 
 static static_codebook _huff_book_line_128x19_1sub3 = {
index c89fae5..5a5dd9f 100644 (file)
@@ -20,8 +20,8 @@
 #include "codebook.h"
 
 static long _huff_lengthlist_line_128x19_2sub2[] = {
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 4, 2, 5, 3, 5, 3,
-        7, 5, 7, 5, 7, 6, 8, 6, 8,
+        0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 3, 2, 4, 3, 5, 4,
+        6, 5, 7, 6, 9, 6,10, 8,10,
 };
 
 static static_codebook _huff_book_line_128x19_2sub2 = {
index 99df3c5..48d653d 100644 (file)
@@ -21,9 +21,9 @@
 
 static long _huff_lengthlist_line_128x19_2sub3[] = {
         0, 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, 4, 2, 5, 4, 7, 5,
-        6, 5, 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, 6, 6,
+        0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 5, 4, 6, 4, 5, 4,
+        6, 6, 6, 6, 5, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6,
+        6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 5, 5, 5, 5, 5, 5,
 };
 
 static static_codebook _huff_book_line_128x19_2sub3 = {
index 7f82b27..4dc818a 100644 (file)
 #include "codebook.h"
 
 static long _huff_lengthlist_line_128x19_class1[] = {
-        1, 2, 3,14, 7, 4, 8,14,13,10,10,14,14,14,14,14,
-        8, 5, 8,14,11, 9,12,14,14,14,14,14,14,14,14,14,
-       10, 9,10,14,14,12,14,14,14,14,14,14,14,14,14,14,
-       14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,13,
+        2, 3, 4,13, 6, 4, 5,12, 8, 5, 6,13,16,14,12,16,
+        6, 4, 4,12, 7, 5, 6,13, 8, 6, 7,12,15,13,14,15,
+        7, 5, 5,11, 8, 5, 6, 9, 9, 6, 6,10,15,12,11,15,
+       14,11,12,14,13,10, 8,11,11, 8, 7,11,15,12,13,14,
 };
 
 static static_codebook _huff_book_line_128x19_class1 = {
index 6d750d1..be6e1c8 100644 (file)
 #include "codebook.h"
 
 static long _huff_lengthlist_line_128x19_class2[] = {
-        2, 2, 4,11, 6, 4, 5,11,10, 7, 8,14,14,14,14,14,
-        5, 3, 5, 9, 7, 4, 5,10,10, 8, 9,13,14,14,14,14,
-        9, 8, 9,12,11, 9, 9,12,13,11,12,14,14,14,14,14,
-       14,14,14,14,14,14,14,14,14,14,14,14,14,14,13,13,
+        2, 3, 4,13, 5, 3, 4,13, 8, 6, 7,13,14,14,14,14,
+        6, 3, 5,11, 6, 4, 5,12, 9, 7, 8,13,14,14,14,14,
+       10, 8,10,14,10, 8, 8,11,12,10,10,14,14,14,13,13,
+       13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
 };
 
 static static_codebook _huff_book_line_128x19_class2 = {
index 12a9027..8430630 100644 (file)
 #include "codebook.h"
 
 static long _huff_lengthlist_res_44c_A_1024aux[] = {
-        4, 9, 8,14,11,12,10,11,17,17, 9, 4,16, 9, 4,16,
-        6, 8,16,16, 5,16, 3,16,16, 5, 8,13,16,16,14, 8,
-       16, 6,16,16, 6, 7,15,16,12, 5,16,16, 4,16, 6, 9,
-       16,16, 8,16, 5,16,16, 5, 9,14,16,16,10, 6, 8, 5,
-        6, 8, 4, 5,12,16,11, 8,13, 6,10,14, 4, 4,10,16,
-       16,13,16,11,16,16,10, 7, 5, 9,16,16,16,16,16,16,
-       15, 9, 7,10,
+        2, 9, 7,14,11,10, 9,10,11,17, 9, 5,17, 7, 5,17,
+        6, 8,14,17, 6,17, 3,17,17, 6, 7,10,16,17,13, 7,
+       17, 5,17,17, 6, 7,13,17,11, 5,17,17, 4,17, 6, 8,
+       17,17, 9,17, 6,17,17, 7, 8,12,16,17,10, 6, 7, 6,
+        6, 8, 4, 5,12,17,11, 8,10, 6, 9,12, 5, 5, 9,16,
+       10,12,17,13,16,16,11, 6, 7,14,11,14,17,15,17,17,
+       15, 8,10,15,
 };
 
 static static_codebook _huff_book_res_44c_A_1024aux = {
index fac579a..97663da 100644 (file)
 #include "codebook.h"
 
 static long _huff_lengthlist_res_44c_A_128aux[] = {
-        7, 7, 6,14, 9,10,11, 9,16,16, 7, 2,16, 7, 4,16,
-        6, 7,15,16, 5,16, 2,16,16, 7,12,16,16,16,13, 7,
-       16, 5,16,16, 6, 8,16,16, 8, 4,16,16, 5,16,10,16,
-       16,16, 8,16, 6,16,16, 9,13,15,16,16,10, 6,11, 6,
-        8,13, 6, 9,16,16,14,10,16,10,14,16,10,11,16,16,
-       13, 8,16, 6,16,16, 5, 6,11,16,16,16,16,14,16,16,
-       12, 6, 9,15,
+        5, 8, 4,16, 9, 9,10,15,16,16, 7, 3,16, 6, 4,16,
+        6, 9,16,16, 4,16, 3,16,16, 7, 9,13,16,16,16, 6,
+       16, 4,16,16, 5, 8,16,16, 8, 4,16,16, 4,16, 7,11,
+       16,16, 8,16, 6,16,16,10,12,14,16,16, 8, 5, 7, 6,
+        6,12, 6, 9,15,16,11, 9,12,10,11,15,10,12,16,16,
+       16, 8,16, 5,16,16, 5, 7,16,16,16,11,16, 8,16,16,
+        6, 7,14,16,
 };
 
 static static_codebook _huff_book_res_44c_A_128aux = {
index 193c87b..393f3e1 100644 (file)
@@ -25,11 +25,11 @@ static long _vq_quantlist_res_Ac_1[] = {
 };
 
 static long _vq_lengthlist_res_Ac_1[] = {
-        2, 5, 5, 0, 5, 5, 0, 4, 5, 5, 8, 6, 0, 8, 7, 0,
-        8, 7, 5, 7, 7, 0, 7, 8, 0, 8, 8, 0, 0, 0, 0, 0,
-        0, 0, 0, 0, 4, 8, 7, 0, 7, 6, 0, 7, 7, 5, 7, 8,
-        0, 6, 7, 0, 7, 7, 0, 0, 0, 0, 0, 0, 0, 0, 0, 4,
-        8, 7, 0, 7, 7, 0, 7, 6, 5, 7, 8, 0, 7, 7, 0, 6,
+        2, 5, 5, 0, 4, 4, 0, 4, 5, 5, 7, 6, 0, 8, 7, 0,
+        8, 7, 5, 6, 7, 0, 7, 8, 0, 7, 8, 0, 0, 0, 0, 0,
+        0, 0, 0, 0, 5, 8, 7, 0, 7, 6, 0, 7, 7, 5, 7, 8,
+        0, 7, 7, 0, 7, 7, 0, 0, 0, 0, 0, 0, 0, 0, 0, 5,
+        8, 7, 0, 7, 7, 0, 7, 7, 5, 7, 8, 0, 7, 7, 0, 6,
         7,
 };
 
index 938307c..e0e0506 100644 (file)
@@ -25,8 +25,8 @@ static long _vq_quantlist_res_Ac_2[] = {
 };
 
 static long _vq_lengthlist_res_Ac_2[] = {
-        2, 3, 3, 0, 0, 0, 0, 0, 0, 3, 4, 4, 0, 0, 0, 0,
-        0, 0, 3, 4, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+        1, 3, 4, 0, 0, 0, 0, 0, 0, 4, 5, 5, 0, 0, 0, 0,
+        0, 0, 3, 5, 5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
index 3936deb..e92ef26 100644 (file)
@@ -27,46 +27,46 @@ static long _vq_quantlist_res_Ac_3[] = {
 };
 
 static long _vq_lengthlist_res_Ac_3[] = {
-        3, 6, 6, 9, 8, 0, 6, 5, 8, 8, 0, 6, 5, 8, 8, 0,
-        7, 7, 9, 9, 0, 0, 0, 9, 9, 6, 7, 6,10, 9, 0, 8,
-        7,10, 9, 0, 7, 7,10, 9, 0, 9, 9,11,10, 0, 0, 0,
-       11,10, 6, 6, 7, 9,10, 0, 7, 8, 9,10, 0, 7, 7, 9,
-       10, 0, 9, 9,10,11, 0, 0, 0,10,10, 8,10, 9,11,11,
-        0,10,10,12,11, 0,10,10,12,11, 0,13,13,14,13, 0,
-        0, 0,13,13, 9, 9,10,10,11, 0,10,11,11,12, 0,11,
-       10,12,12, 0,12,13,12,14, 0, 0, 0,12,14, 0, 0, 0,
+        3, 6, 6, 9, 9, 0, 5, 5, 9, 9, 0, 5, 5, 8, 9, 0,
+        7, 7, 9, 9, 0, 0, 0, 9, 9, 6, 8, 7,10,10, 0, 8,
+        7,10,10, 0, 7, 7,10,10, 0, 9, 9,11,10, 0, 0, 0,
+       11,11, 6, 7, 8,10,10, 0, 7, 8,10,10, 0, 7, 7,10,
+       10, 0, 9, 9,10,11, 0, 0, 0,11,11, 9,10,10,12,12,
+        0,12,11,13,12, 0,11,11,13,13, 0,14,13,14,13, 0,
+        0, 0,14,13, 9,10,10,11,12, 0,11,11,12,13, 0,11,
+       11,13,13, 0,13,13,13,14, 0, 0, 0,14,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, 6, 7, 7,10,10, 0, 7, 7,10, 9,
-        0, 7, 7,10,10, 0, 8, 8,10, 9, 0, 0, 0, 9,10, 6,
-        7, 7,11,11, 0, 7, 7, 9,10, 0, 7, 7,10,10, 0, 8,
-        8, 9,10, 0, 0, 0,10,10, 8,10, 9,12,12, 0,10, 9,
-       12,10, 0,10, 9,12,12, 0,11,11,12,12, 0, 0, 0,12,
-       12, 8, 9,10,12,12, 0, 9,10,10,11, 0, 9, 9,11,12,
-        0,11,11,11,13, 0, 0, 0,13,12, 0, 0, 0, 0, 0, 0,
+        0, 0, 0, 0, 0, 0, 5, 7, 7,11,11, 0, 7, 6,10,10,
+        0, 7, 7,10,10, 0, 9, 8,10,10, 0, 0, 0,10,10, 5,
+        7, 7,11,11, 0, 7, 7,10,10, 0, 7, 7,10,10, 0, 8,
+        8,10,10, 0, 0, 0,11,10, 9,10,10,13,13, 0,10,10,
+       12,12, 0,10,10,12,13, 0,12,12,13,13, 0, 0, 0,13,
+       13, 9,10,10,13,13, 0,10,10,12,12, 0,10,10,13,13,
+        0,11,12,13,13, 0, 0, 0,13,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, 6, 8, 7,11,11, 0, 7, 7,10, 9, 0, 7, 7,
-       10, 9, 0, 8, 8,10,10, 0, 0, 0,10, 9, 6, 7, 8,11,
-       11, 0, 7, 7, 9,10, 0, 6, 7, 9,10, 0, 8, 8,10,10,
-        0, 0, 0,10,10, 8,10, 9,12,11, 0,10, 9,12,11, 0,
-       10, 9,12,10, 0,11,11,13,12, 0, 0, 0,12,11, 8, 9,
-       10,11,12, 0, 9,10,11,12, 0, 9, 9,10,13, 0,11,11,
-       12,12, 0, 0, 0,12,12, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+        0, 0, 0, 5, 8, 7,12,11, 0, 7, 7,10,10, 0, 7, 6,
+       10,10, 0, 8, 8,10,10, 0, 0, 0,10,10, 5, 7, 8,11,
+       11, 0, 7, 7,10,10, 0, 6, 7,10,10, 0, 8, 8,10,10,
+        0, 0, 0,10,10, 9,10,10,13,12, 0,10,10,13,12, 0,
+       10,10,12,12, 0,12,12,13,12, 0, 0, 0,13,12, 9,10,
+       10,12,13, 0,10,10,12,13, 0,10,10,11,12, 0,11,12,
+       12,13, 0, 0, 0,12,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,
-        7, 9, 9,12,12, 0, 8, 8,11,11, 0, 8, 8,11,11, 0,
-       10, 9,11,11, 0, 0, 0,10,12, 7, 9, 9,13,13, 0, 8,
-        8,11,11, 0, 9, 8,11,11, 0, 9,10,11,11, 0, 0, 0,
-       11,10, 9,10,10,14,13, 0,10, 9,12,12, 0,10,10,11,
-       12, 0,11,10,12,11, 0, 0, 0,12,13, 9,10,10,13,13,
-        0, 9,10,11,13, 0,10,10,12,12, 0,10,12,11,13, 0,
-        0, 0,12,12, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+        7, 9, 9,13,13, 0, 8, 8,11,11, 0, 8, 9,12,11, 0,
+       10, 9,12,11, 0, 0, 0,11,12, 7, 9, 9,14,12, 0, 8,
+        8,12,12, 0, 9, 8,12,11, 0, 9,10,12,12, 0, 0, 0,
+       12,11, 9,11,10,14,14, 0,10,10,13,12, 0,10,11,12,
+       13, 0,12,11,13,12, 0, 0, 0,12,14, 9,11,11,14,13,
+        0,10,10,12,13, 0,10,10,13,13, 0,11,12,12,13, 0,
+        0, 0,13,12, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 9,
-       10,10,13,13, 0,10, 9,13,11, 0,10,10,12,11, 0,11,
-       11,12,11, 0, 0, 0,13,12, 9,10,11,13,12, 0,10,10,
-       12,12, 0, 9,10,12,13, 0,11,11,12,12, 0, 0, 0,11,
-       12,
+       11,10,14,13, 0,10,10,13,13, 0,10,10,13,12, 0,12,
+       11,13,13, 0, 0, 0,13,13, 9,10,11,13,14, 0,10,10,
+       12,14, 0,10,10,12,13, 0,11,11,13,13, 0, 0, 0,12,
+       13,
 };
 
 static float _vq_quantthresh_res_Ac_3[] = {
index 1d9ad9b..34d3572 100644 (file)
@@ -27,46 +27,46 @@ static long _vq_quantlist_res_Ac_4[] = {
 };
 
 static long _vq_lengthlist_res_Ac_4[] = {
-        3, 5, 5, 7, 7, 0, 5, 5, 0, 0, 0, 5, 5, 0, 0, 0,
-        0, 0, 8, 8, 0, 0, 0, 8, 8, 5, 7, 7, 9, 8, 0, 7,
-        7, 0, 0, 0, 8, 7, 0, 0, 0, 0, 0,10,10, 0, 0, 0,
-       11,10, 5, 7, 7, 8, 9, 0, 7, 8, 0, 0, 0, 7, 7, 0,
-        0, 0, 0, 0,10,11, 0, 0, 0,10,11, 7, 9, 8,10, 8,
-        0, 9, 8, 0, 0, 0, 9, 8, 0, 0, 0, 0, 0,12,11, 0,
-        0, 0,12,11, 7, 8, 9, 8,10, 0, 8, 9, 0, 0, 0, 8,
-        9, 0, 0, 0, 0, 0,11,12, 0, 0, 0,11,12, 0, 0, 0,
+        2, 6, 6,11,10, 0, 5, 5, 9, 9, 0, 5, 5, 9, 9, 0,
+        6, 6, 9, 9, 0, 0, 0, 9, 9, 6, 8, 7,12,11, 0, 8,
+        8,11,10, 0, 8, 8,11,11, 0,10, 9,12,12, 0, 0, 0,
+       12,11, 6, 8, 8,11,12, 0, 8, 8,10,12, 0, 8, 8,10,
+       11, 0, 9,10,11,12, 0, 0, 0,11,12,10,12,11,14,13,
+        0,12,12,15,14, 0,13,12,15,14, 0,15,16,16,15, 0,
+        0, 0,18,15,10,11,12,13,15, 0,12,13,14,15, 0,12,
+       12,13,15, 0,15,15,14,18, 0, 0, 0,15,18, 0, 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, 8, 7, 9, 8, 0, 7, 6, 0, 0,
-        0, 7, 7, 0, 0, 0, 0, 0,10, 9, 0, 0, 0,10,10, 5,
-        7, 7, 8, 9, 0, 6, 7, 0, 0, 0, 7, 7, 0, 0, 0, 0,
-        0, 9,10, 0, 0, 0,10,10, 0, 0, 0, 0, 0, 0, 0, 0,
+        0, 0, 0, 0, 0, 0, 5, 8, 8,13,13, 0, 7, 7,11,10,
+        0, 7, 7,11,11, 0, 9, 8,11,10, 0, 0, 0,11,11, 5,
+        8, 8,12,13, 0, 7, 7,10,11, 0, 7, 7,11,11, 0, 8,
+        9,10,11, 0, 0, 0,11,11, 9,11,10,15,15, 0,11,11,
+       14,13, 0,12,11,14,13, 0,13,13,14,13, 0, 0, 0,14,
+       14, 9,10,11,13,14, 0,10,11,12,14, 0,11,11,14,14,
+        0,12,13,13,14, 0, 0, 0,14,16, 0, 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, 8, 8,13,12, 0, 7, 7,11,11, 0, 7, 7,
+       11,11, 0, 8, 8,11,11, 0, 0, 0,11,10, 5, 8, 8,12,
+       13, 0, 7, 7,11,11, 0, 7, 7,11,11, 0, 8, 8,11,11,
+        0, 0, 0,10,11, 9,11,11,15,14, 0,11,11,14,13, 0,
+       11,11,13,12, 0,13,13,16,14, 0, 0, 0,15,13, 9,10,
+       11,14,16, 0,11,11,13,14, 0,10,11,13,14, 0,13,12,
+       14,15, 0, 0, 0,14,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,
+        6,10,10,15,15, 0, 8, 8,14,13, 0, 8, 9,13,14, 0,
+       10, 9,13,12, 0, 0, 0,12,13, 7,10, 9,15,15, 0, 8,
+        8,13,13, 0, 9, 8,13,13, 0, 9,10,12,13, 0, 0, 0,
+       13,12,10,12,11,17,18, 0,11,10,15,14, 0,11,11,15,
+       15, 0,13,12,15,12, 0, 0, 0,14,14, 9,11,12,15,16,
+        0,10,11,13,14, 0,11,11,14,18, 0,12,13,13,15, 0,
+        0, 0,14,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, 5, 8, 7, 9, 8, 0, 7, 7, 0, 0, 0, 7, 6,
-        0, 0, 0, 0, 0,10,10, 0, 0, 0,10, 9, 5, 7, 7, 8,
-        9, 0, 7, 7, 0, 0, 0, 6, 7, 0, 0, 0, 0, 0,10,10,
-        0, 0, 0, 9,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, 0, 0, 0,
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        0, 0, 8,11,10,12,11, 0,10, 9, 0, 0, 0,10,10, 0,
-        0, 0, 0, 0,13,11, 0, 0, 0,13,13, 8,10,11,11,12,
-        0, 9,10, 0, 0, 0,10,10, 0, 0, 0, 0, 0,12,13, 0,
-        0, 0,13,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, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 8,
-       11,10,12,11, 0,10,10, 0, 0, 0,10, 9, 0, 0, 0, 0,
-        0,13,12, 0, 0, 0,13,11, 8,10,11,11,12, 0,10,10,
-        0, 0, 0, 9,10, 0, 0, 0, 0, 0,12,13, 0, 0, 0,11,
-       13,
+        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 9,
+       12,11,18,16, 0,11,11,14,14, 0,11,10,15,13, 0,12,
+       12,14,14, 0, 0, 0,14,13, 9,11,12,14,16, 0,11,11,
+       15,15, 0,10,11,13,15, 0,12,12,14,14, 0, 0, 0,13,
+       14,
 };
 
 static float _vq_quantthresh_res_Ac_4[] = {
@@ -89,105 +89,197 @@ static long _vq_pigeonmap_res_Ac_4[] = {
 };
 
 static long _vq_fitlist_res_Ac_4[] = {
-           0,     1,     2,     3,     6,     7,    11,    12, 
-          18,    25,    26,    27,    28,    31,    32,    36, 
-          37,    43,    50,    51,    52,    53,    56,    57, 
-          61,    62,    68,    75,    76,    77,    78,    81, 
-          82,    86,    87,    93,   150,   151,   152,   153, 
-         156,   157,   161,   162,   168,   175,   176,   177, 
-         178,   181,   182,   186,   187,   193,   275,   276, 
-         277,   278,   281,   282,   286,   287,   293,   300, 
-         301,   302,   303,   306,   307,   311,   450,   451, 
-         452,   453,   456,   457,   461,     4,    19,    29, 
-          44,    54,    69,    79,    94,   154,   169,   179, 
-         194,   279,   294,   304,   312,   454,   462,   319, 
-         469,    23,    48,    73,    98,   173,   198,   298, 
-          24,    49,    74,    99,   174,   199,   299,   324, 
-         474,   323,   473,   100,   101,   102,   103,   106, 
-         107,   111,   112,   118,   318,   475,   476,   477, 
-         478,   481,   482,   486,   104,   119,   479,   487, 
-         494,   123,   124,   499,   498,   493,   575,   576, 
-         577,   578,   581,   582,   586,   579,   587,   594, 
-         599,   598,   600,   601,   602,   603,   606,   607, 
-         611,   604,   612,   619,   624,   623,   618,   593, 
-           0,     1,     3,     6,    11,    18,    25,    26, 
-          28,    31,    36,    43,    50,    51,    53,    56, 
-          61,    68,    75,    76,    78,    81,    86,    93, 
-         150,   151,   153,   156,   161,   168,   175,   176, 
-         178,   181,   186,   193,   275,   276,   278,   281, 
-         286,   293,   300,   301,   303,   306,   311,   318, 
-         450,   451,   453,   456,   461,   468,    23,    48, 
-          73,    98,   173,   198,   298,   323,   473,   100, 
-         101,   103,   106,   111,   118,   475,   476,   478, 
-         481,   486,   493,   123,   498,   575,   576,   578, 
-         581,   586,   593,   598,   600,   601,   603,   606, 
-         611,   618,   623,     0,     1,     2,     3,     6, 
-           7,    18,    25,    26,    27,    28,    31,    32, 
-          43,    50,    51,    52,    53,    56,    57,    68, 
-          75,    76,    77,    78,    81,    82,    93,   150, 
-         151,   152,   153,   156,   157,   168,   175,   176, 
-         177,   178,   181,   182,   193,   275,   276,   277, 
-         278,   281,   282,   293,   300,   301,   306,   307, 
-         318,   450,   451,   456,   457,   468,     4,    19, 
-          29,    44,    54,    69,    79,    94,   154,   169, 
-         179,   194,   279,   294,   302,   319,   452,   469, 
-         304,   454,   100,   101,   102,   103,   106,   107, 
-         118,   303,   475,   476,   481,   482,   493,   104, 
-         119,   477,   494,   479,   478,   575,   576,   581, 
-         582,   593,   577,   594,   579,   600,   601,   606, 
-         607,   618,   602,   619,   604,   603,   578,     0, 
-           1,     2,     3,     6,     7,    11,    12,    18, 
-          25,    26,    27,    28,    31,    32,    36,    37, 
-          43,    75,    76,    77,    78,    81,    82,    86, 
-          87,    93,   150,   151,   152,   153,   156,   157, 
-         161,   162,   168,   275,   276,   277,   278,   281, 
-         282,   286,   287,   293,   450,   451,   452,   453, 
-         456,   457,   461,   462,   468,     4,    19,    29, 
-          44,    79,    94,   154,   169,   279,   294,   454, 
-         469,    23,    48,    98,   173,   298,   473,    24, 
-          49,    99,   174,   299,   474,   575,   576,   577, 
-         578,   581,   582,   586,   587,   593,   579,   594, 
+           0,     1,     2,     3,     6,     7,     8,    11, 
+          12,    13,    16,    17,    18,    25,    26,    27, 
+          28,    31,    32,    33,    36,    37,    38,    41, 
+          42,    43,    50,    51,    52,    53,    56,    57, 
+          58,    61,    62,    63,    66,    67,    68,    75, 
+          76,    77,    78,    81,    82,    83,    86,    87, 
+          88,    91,    92,    93,   150,   151,   152,   153, 
+         156,   157,   158,   161,   162,   163,   166,   167, 
+         168,   175,   176,   177,   178,   181,   182,   183, 
+         186,   187,   188,   191,   192,   193,   200,   201, 
+         202,   203,   206,   207,   208,   211,   212,   213, 
+         216,   217,   218,   275,   276,   277,   278,   281, 
+         282,   283,   286,   287,   288,   291,   292,   293, 
+         300,   301,   302,   303,   306,   307,   308,   311, 
+         316,   325,   326,   327,   328,   331,   332,   333, 
+         336,   341,   400,   401,   402,   403,   406,   407, 
+         408,   411,   412,   413,   416,   417,   418,   425, 
+         426,   427,   428,   431,   432,   433,   436,   441, 
+         450,   451,   452,   453,   456,   457,   458,   461, 
+         466,     4,     9,    14,    19,    29,    34,    39, 
+          44,    54,    59,    64,    69,    79,    84,    89, 
+          94,   154,   159,   164,   169,   179,   184,   189, 
+         194,   204,   209,   214,   219,   279,   284,   289, 
+         294,   304,   309,   312,   317,   329,   334,   337, 
+         342,   404,   409,   414,   419,   429,   434,   437, 
+         442,   454,   459,   462,   467,   314,   319,   339, 
+         344,   439,   444,   464,   469,    23,    48,    73, 
+          98,   173,   198,   223,   298,   313,   338,   423, 
+         438,   463,    24,    49,    74,    99,   174,   199, 
+         224,   299,   424,   324,   349,   449,   474,   323, 
+         348,   448,   473,   100,   101,   102,   103,   106, 
+         107,   108,   111,   112,   113,   116,   117,   118, 
+         225,   226,   227,   228,   231,   232,   233,   236, 
+         237,   238,   241,   242,   243,   318,   350,   351, 
+         352,   353,   356,   357,   358,   361,   366,   443, 
+         475,   476,   477,   478,   481,   482,   483,   486, 
+         491,   104,   109,   114,   119,   229,   234,   239, 
+         244,   354,   359,   362,   367,   479,   484,   487, 
+         492,   364,   369,   489,   494,   123,   248,   363, 
+         488,   124,   249,   374,   499,   373,   498,   368, 
+         493,   343,   575,   576,   577,   578,   581,   582, 
+         583,   586,   591,   579,   584,   587,   592,   589, 
+         594,   588,   599,   598,   600,   601,   602,   603, 
+         606,   607,   608,   611,   616,   604,   609,   612, 
+         617,   614,   619,   613,   624,   623,   618,   593, 
+           0,     1,     3,     6,     8,    11,    13,    16, 
+          18,    25,    26,    28,    31,    33,    36,    38, 
+          41,    43,    50,    51,    53,    56,    58,    61, 
+          63,    66,    68,    75,    76,    78,    81,    83, 
+          86,    88,    91,    93,   150,   151,   153,   156, 
+         158,   161,   163,   166,   168,   175,   176,   178, 
+         181,   183,   186,   188,   191,   193,   200,   201, 
+         203,   206,   208,   211,   213,   216,   218,   275, 
+         276,   278,   281,   283,   286,   288,   291,   293, 
+         300,   301,   303,   306,   308,   311,   313,   316, 
+         318,   325,   326,   328,   331,   333,   336,   338, 
+         341,   343,   400,   401,   403,   406,   408,   411, 
+         413,   416,   418,   425,   426,   428,   431,   433, 
+         436,   438,   441,   443,   450,   451,   453,   456, 
+         458,   461,   463,   466,   468,    23,    48,    73, 
+          98,   173,   198,   223,   298,   323,   348,   423, 
+         448,   473,   100,   101,   103,   106,   108,   111, 
+         113,   116,   118,   225,   226,   228,   231,   233, 
+         236,   238,   241,   243,   350,   351,   353,   356, 
+         358,   361,   363,   366,   368,   475,   476,   478, 
+         481,   483,   486,   488,   491,   493,   123,   248, 
+         373,   498,   575,   576,   578,   581,   583,   586, 
+         588,   591,   593,   598,   600,   601,   603,   606, 
+         608,   611,   613,   616,   618,   623,     0,     1, 
+           2,     3,     6,     7,     8,    16,    17,    18, 
+          25,    26,    27,    28,    31,    32,    33,    41, 
+          42,    43,    50,    51,    52,    53,    56,    57, 
+          58,    66,    67,    68,    75,    76,    77,    78, 
+          81,    82,    83,    91,    92,    93,   150,   151, 
+         152,   153,   156,   157,   158,   166,   167,   168, 
+         175,   176,   177,   178,   181,   182,   183,   191, 
+         192,   193,   200,   201,   202,   203,   206,   207, 
+         208,   216,   217,   218,   275,   276,   277,   278, 
+         281,   282,   283,   291,   292,   293,   300,   301, 
+         306,   307,   308,   316,   317,   318,   325,   326, 
+         331,   332,   333,   341,   342,   343,   400,   401, 
+         402,   403,   406,   407,   408,   416,   417,   418, 
+         425,   426,   431,   432,   433,   441,   442,   443, 
+         450,   451,   456,   457,   458,   466,   467,   468, 
+           4,     9,    19,    29,    34,    44,    54,    59, 
+          69,    79,    84,    94,   154,   159,   169,   179, 
+         184,   194,   204,   209,   219,   279,   284,   294, 
+         302,   309,   319,   327,   334,   344,   404,   409, 
+         419,   427,   434,   444,   452,   459,   469,   304, 
+         329,   429,   454,   100,   101,   102,   103,   106, 
+         107,   108,   116,   117,   118,   225,   226,   227, 
+         228,   231,   232,   233,   241,   242,   243,   303, 
+         350,   351,   356,   357,   358,   366,   367,   368, 
+         428,   475,   476,   481,   482,   483,   491,   492, 
+         493,   104,   109,   119,   229,   234,   244,   352, 
+         359,   369,   477,   484,   494,   354,   479,   353, 
+         478,   328,   575,   576,   581,   582,   583,   591, 
+         592,   593,   577,   584,   594,   579,   600,   601, 
+         606,   607,   608,   616,   617,   618,   602,   609, 
+         619,   604,   603,   578,     0,     1,     2,     3, 
+           6,     7,     8,    11,    12,    13,    16,    17, 
+          18,    25,    26,    27,    28,    31,    32,    33, 
+          36,    37,    38,    41,    42,    43,    75,    76, 
+          77,    78,    81,    82,    83,    86,    87,    88, 
+          91,    92,    93,   150,   151,   152,   153,   156, 
+         157,   158,   161,   162,   163,   166,   167,   168, 
+         200,   201,   202,   203,   206,   207,   208,   211, 
+         212,   213,   216,   217,   218,   275,   276,   277, 
+         278,   281,   282,   283,   286,   287,   288,   291, 
+         292,   293,   325,   326,   327,   328,   331,   332, 
+         333,   336,   337,   338,   341,   342,   343,   400, 
+         401,   402,   403,   406,   407,   408,   411,   412, 
+         413,   416,   417,   418,   450,   451,   452,   453, 
+         456,   457,   458,   461,   462,   463,   466,   467, 
+         468,     4,     9,    14,    19,    29,    34,    39, 
+          44,    79,    84,    89,    94,   154,   159,   164, 
+         169,   204,   209,   214,   219,   279,   284,   289, 
+         294,   329,   334,   339,   344,   404,   409,   414, 
+         419,   454,   459,   464,   469,    23,    48,    98, 
+         173,   223,   298,   348,   423,   473,    24,    49, 
+          99,   174,   224,   299,   349,   424,   474,   575, 
+         576,   577,   578,   581,   582,   583,   586,   587, 
+         588,   591,   592,   593,   579,   584,   589,   594, 
          598,   599,     0,     1,     2,     3,     6,     7, 
-          11,    12,    18,    25,    26,    27,    28,    31, 
-          32,    36,    37,    43,    50,    51,    52,    53, 
-          56,    57,    61,    75,    76,    77,    78,    81, 
-          82,    86,   150,   151,   152,   153,   156,   157, 
-         161,   162,   168,   175,   176,   177,   178,   181, 
-         182,   186,   187,   193,   450,   451,   452,   453, 
-         456,   457,   461,   462,   468,     4,    19,    29, 
-          44,    54,    62,    79,    87,   154,   169,   179, 
-         194,   454,   469,    69,    94,    23,    48,   173, 
-         198,   473,    24,    49,   174,   199,   474,    74, 
-          99,    73,    98,    68,   100,   101,   102,   103, 
-         106,   107,   111,   475,   476,   477,   478,   481, 
-         482,   486,   487,   493,   104,   112,   479,   494, 
-         119,   498,   499,   124,   123,   118,     0,     1, 
-           2,     3,     6,     7,    18,    25,    26,    27, 
-          28,    31,    32,    43,    50,    51,    56,    57, 
-          68,    75,    76,    81,    82,    93,   150,   151, 
-         152,   153,   156,   157,   168,   175,   176,   177, 
-         178,   181,   182,   193,   450,   451,   452,   453, 
-         456,   457,   468,     4,    19,    29,    44,    52, 
-          69,    77,    94,   154,   169,   179,   194,   454, 
-         469,    54,    79,    53,   100,   101,   106,   107, 
-         118,   475,   476,   477,   478,   481,   482,   493, 
-         102,   119,   479,   494,   104,   103, 
+           8,    11,    12,    13,    16,    17,    18,    25, 
+          26,    27,    28,    31,    32,    33,    36,    37, 
+          38,    41,    42,    43,    50,    51,    52,    53, 
+          56,    57,    58,    61,    66,    75,    76,    77, 
+          78,    81,    82,    83,    86,    91,   150,   151, 
+         152,   153,   156,   157,   158,   161,   162,   163, 
+         166,   167,   168,   175,   176,   177,   178,   181, 
+         182,   183,   186,   187,   188,   191,   192,   193, 
+         200,   201,   202,   203,   206,   207,   208,   211, 
+         212,   213,   216,   217,   218,   400,   401,   402, 
+         403,   406,   407,   408,   411,   412,   413,   416, 
+         417,   418,   425,   426,   427,   428,   431,   432, 
+         433,   436,   437,   438,   441,   442,   443,   450, 
+         451,   452,   453,   456,   457,   458,   461,   462, 
+         463,   466,   467,   468,     4,     9,    14,    19, 
+          29,    34,    39,    44,    54,    59,    62,    67, 
+          79,    84,    87,    92,   154,   159,   164,   169, 
+         179,   184,   189,   194,   204,   209,   214,   219, 
+         404,   409,   414,   419,   429,   434,   439,   444, 
+         454,   459,   464,   469,    64,    69,    89,    94, 
+          23,    48,    63,    88,   173,   198,   223,   423, 
+         448,   473,    24,    49,   174,   199,   224,   424, 
+         449,   474,    74,    99,    73,    98,    68,   100, 
+         101,   102,   103,   106,   107,   108,   111,   116, 
+         225,   226,   227,   228,   231,   232,   233,   236, 
+         237,   238,   241,   242,   243,   475,   476,   477, 
+         478,   481,   482,   483,   486,   487,   488,   491, 
+         492,   493,   104,   109,   112,   117,   229,   234, 
+         239,   244,   479,   484,   489,   494,   114,   119, 
+         113,   248,   498,   249,   499,   124,   123,   118, 
+           0,     1,     2,     3,     6,     7,     8,    16, 
+          17,    18,    25,    26,    27,    28,    31,    32, 
+          33,    41,    42,    43,    50,    51,    56,    57, 
+          58,    66,    67,    68,    75,    76,    81,    82, 
+          83,    91,    92,    93,   150,   151,   152,   153, 
+         156,   157,   158,   166,   167,   168,   175,   176, 
+         177,   178,   181,   182,   183,   191,   192,   193, 
+         200,   201,   202,   203,   206,   207,   208,   216, 
+         217,   218,   400,   401,   402,   403,   406,   407, 
+         408,   416,   417,   418,   425,   426,   427,   428, 
+         431,   432,   433,   441,   442,   443,   450,   451, 
+         452,   453,   456,   457,   458,   466,   467,   468, 
+           4,     9,    19,    29,    34,    44,    52,    59, 
+          69,    77,    84,    94,   154,   159,   169,   179, 
+         184,   194,   204,   209,   219,   404,   409,   419, 
+         429,   434,   444,   454,   459,   469,    54,    79, 
+          53,   100,   101,   106,   107,   108,   116,   117, 
+         118,   225,   226,   227,   228,   231,   232,   233, 
+         241,   242,   243,   475,   476,   477,   478,   481, 
+         482,   483,   491,   492,   493,   102,   109,   119, 
+         229,   234,   244,   479,   484,   494,   104,   103, 
 };
 
 static long _vq_fitmap_res_Ac_4[] = {
-           0,   168,   259,   168,   375,   168,   375,   168
-         466,   168,   582,   168,   375,   168,   375,   168
+           0,   360,   550,   360,   796,   360,   796,   360
+         986,   360,  1232,   360,   796,   360,   796,   360
 };
 
 static long _vq_fitlength_res_Ac_4[] = {
-         168,    91,   116,    91,    91,    91,    91,    91
-         116,    91,    80,    91,    91,    91,    91,    91
+         360,   190,   246,   190,   190,   190,   190,   190
+         246,   190,   168,   190,   190,   190,   190,   190
 };
 
 static encode_aux_pigeonhole _vq_auxp_res_Ac_4 = {
        -2, 1, 4, 2,
        _vq_pigeonmap_res_Ac_4,
-       662,
+       1400,
        _vq_fitlist_res_Ac_4,
        _vq_fitmap_res_Ac_4,
        _vq_fitlength_res_Ac_4
index 3a08ef7..4f85d00 100644 (file)
@@ -27,46 +27,46 @@ static long _vq_quantlist_res_Ac_5[] = {
 };
 
 static long _vq_lengthlist_res_Ac_5[] = {
-        2, 4, 3, 6, 6, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 4, 4, 4, 7, 6, 0, 0,
+        2, 4, 3, 9, 9, 0, 0, 0, 8, 8, 0, 0, 0, 8, 8, 0,
+        0, 0, 8, 8, 0, 0, 0, 8, 8, 3, 5, 4,10, 9, 0, 0,
+        0, 9, 8, 0, 0, 0, 9, 8, 0, 0, 0, 9, 8, 0, 0, 0,
+        9, 8, 4, 4, 5, 9,10, 0, 0, 0, 8, 9, 0, 0, 0, 8,
+        9, 0, 0, 0, 8, 9, 0, 0, 0, 8, 9, 9,10, 9,14,11,
+        0, 0, 0,14,13, 0, 0, 0,14,12, 0, 0, 0,16,15, 0,
+        0, 0,16,14, 9, 9,10,11,14, 0, 0, 0,13,13, 0, 0,
+        0,12,16, 0, 0, 0,13,15, 0, 0, 0, 0,16, 0, 0, 0,
         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        0, 0, 4, 4, 4, 6, 6, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 6, 6, 6, 9, 7,
         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        0, 0, 0, 0, 6, 6, 7, 8, 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, 8, 9, 8,15,12, 0, 0, 0,
+       13,12, 0, 0, 0,15,13, 0, 0, 0,14,12, 0, 0, 0,14,
+       13, 8, 8, 9,12,14, 0, 0, 0,12,12, 0, 0, 0,12,14,
+        0, 0, 0,13,14, 0, 0, 0,14,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, 8, 9, 8,13,13, 0, 0, 0,13,13, 0,
+        0, 0,14,11, 0, 0, 0,14,14, 0, 0, 0,16,12, 8, 8,
+        9,13,13, 0, 0, 0,13,14, 0, 0, 0,12,13, 0, 0, 0,
+       13,14, 0, 0, 0,13,16, 0, 0, 0, 0, 0, 0, 0, 0, 0,
         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+        0, 0, 8, 9, 8, 0,15, 0, 0, 0,13,12, 0, 0, 0,13,
+       13, 0, 0, 0,13,12, 0, 0, 0,13,13, 8, 8, 9,16,16,
+        0, 0, 0,12,13, 0, 0, 0,14,13, 0, 0, 0,12,13, 0,
+        0, 0,15,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, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        0,
+        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 8,
+        9, 8, 0,14, 0, 0, 0,16,14, 0, 0, 0,14,12, 0, 0,
+        0,13,14, 0, 0, 0,15,12, 8, 8, 9,14,16, 0, 0, 0,
+       12,14, 0, 0, 0,13,14, 0, 0, 0,14,13, 0, 0, 0,13,
+       14,
 };
 
 static float _vq_quantthresh_res_Ac_5[] = {
@@ -89,26 +89,138 @@ static long _vq_pigeonmap_res_Ac_5[] = {
 };
 
 static long _vq_fitlist_res_Ac_5[] = {
-           0,     1,     2,     3,    25,    26,    27,    28, 
-          50,    51,    52,    53,    75,    76,    77,    78, 
-           4,    29,    54,    79,   100,   101,   102,   103, 
-         104, 
+           0,     1,     2,     3,     8,    13,    18,    25, 
+          26,    27,    28,    33,    38,    43,    50,    51, 
+          52,    53,    58,    63,    68,    75,    76,    77, 
+          78,    83,    88,    93,   200,   201,   202,   203, 
+         208,   213,   218,   325,   326,   327,   328,   333, 
+         450,   451,   452,   458,     4,     9,    14,    19, 
+          29,    34,    39,    44,    54,    59,    64,    69, 
+          79,    84,    89,    94,   204,   209,   214,   219, 
+         329,   334,   454,   459,   339,   344,   464,   469, 
+          23,    48,    73,    98,   223,   338,   463,    24, 
+          49,    74,    99,   224,   349,   474,   100,   101, 
+         102,   103,   113,   225,   226,   227,   228,   238, 
+         248,   348,   350,   351,   363,   373,   473,   475, 
+         476,   488,   498,   575,   576,   588,   598,   104, 
+         114,   124,   229,   239,   249,   352,   364,   374, 
+         477,   489,   499,   577,   589,   599,   108,   118, 
+         233,   243,   353,   358,   478,   483,   109,   119, 
+         234,   244,   354,   359,   479,   484,   369,   494, 
+         600,   601,   613,   623,   602,   614,   624,   368, 
+         493,   603,   604,   343,   583,   579,   584,   594, 
+         608,   609,   619,   618,   593,     0,     1,     3, 
+           8,    13,    18,    25,    26,    28,    33,    38, 
+          43,    50,    51,    53,    58,    63,    68,    75, 
+          76,    78,    83,    88,    93,   200,   201,   203, 
+         208,   213,   218,   325,   326,   328,   333,   338, 
+         343,   450,   451,   458,   463,   468,    23,    48, 
+          73,    98,   223,   348,   473,   100,   101,   103, 
+         108,   113,   118,   225,   226,   228,   233,   238, 
+         243,   350,   351,   353,   358,   363,   368,   475, 
+         476,   478,   483,   488,   493,   248,   373,   498, 
+         575,   576,   583,   588,   593,   598,   600,   601, 
+         603,   608,   613,   618,   623,     2,    27,    52, 
+          77,   327,   577,   102,   352,   602,     0,     1, 
+           2,     3,     4,     8,     9,    13,    18,    19, 
+          25,    26,    27,    28,    29,    33,    34,    38, 
+          43,    44,    50,    51,    52,    53,    54,    58, 
+          59,    63,    68,    69,    75,    76,    77,    78, 
+          79,    83,    84,    88,    93,    94,   100,   101, 
+         102,   103,   108,   118,   200,   201,   202,   203, 
+         204,   208,   209,   213,   218,   219,   225,   226, 
+         227,   228,   233,   243,   325,   326,   327,   328, 
+         333,   334,   343,   344,   350,   351,   358,   368, 
+         450,   451,   452,   458,   459,   468,   469,   475, 
+         476,   483,   493,   575,   576,   583,   593,    14, 
+          39,    64,    89,   104,   109,   119,   214,   229, 
+         234,   244,   329,   352,   359,   369,   454,   477, 
+         484,   494,   577,   584,   594,   113,   238,   353, 
+         478,   600,   601,   608,   618,   114,   239,   354, 
+         479,   602,   609,   619,   363,   488,   603,   364, 
+         489,   604,   338,   339,   579,   613,   614,   588, 
+         589,     0,     1,     2,     3,     8,    13,    18, 
+          25,    26,    27,    28,    33,    38,    43,    75, 
+          76,    77,    78,    83,    88,    93,   200,   201, 
+         202,   203,   208,   213,   218,   325,   326,   327, 
+         328,   333,   338,   343,   450,   451,   452,   458, 
+         463,   468,     4,     9,    14,    19,    29,    34, 
+          39,    44,    79,    84,    89,    94,   204,   209, 
+         214,   219,   329,   334,   339,   344,   454,   459, 
+         464,   469,    23,    48,    98,   223,   348,   473, 
+          24,    49,    99,   224,   349,   474,    50,    51, 
+          52,    53,    63,    73,   575,   576,   577,   588, 
+         598,    54,    64,    74,   579,   589,   599,   583, 
+         593,   584,   594,     0,     1,     2,     3,     4, 
+           8,     9,    13,    18,    19,    25,    26,    27, 
+          28,    29,    33,    34,    38,    43,    44,    50, 
+          51,    52,    53,    58,    68,    75,    76,    77, 
+          78,    79,    83,    84,    88,    93,    94,   200, 
+         201,   202,   203,   204,   208,   209,   213,   218, 
+         219,   325,   326,   327,   328,   329,   333,   334, 
+         338,   343,   344,   450,   451,   452,   454,   458, 
+         459,   463,   468,   469,   575,   576,   577,   583, 
+         593,    14,    39,    54,    59,    69,    89,   214, 
+         339,   464,   579,   584,   594,   588,   589,     0, 
+           1,     2,     3,     4,     8,     9,    13,    14, 
+          18,    19,    23,    25,    26,    27,    28,    29, 
+          33,    34,    38,    39,    43,    44,    48,    50, 
+          51,    52,    53,    54,    58,    59,    63,    68, 
+          75,    76,    77,    78,    79,    83,    84,    88, 
+          93,   100,   101,   102,   103,   108,   200,   201, 
+         202,   203,   204,   208,   209,   213,   214,   218, 
+         219,   223,   225,   226,   227,   228,   233,   238, 
+         243,   325,   326,   327,   328,   333,   450,   451, 
+         452,   454,   458,   459,   463,   464,   468,   469, 
+         473,   475,   476,   477,   478,   483,   488,   493, 
+          24,    49,    64,    69,    89,    94,   104,   109, 
+         224,   229,   234,   239,   244,   329,   334,   474, 
+         479,   484,   489,   494,    74,    99,   114,   119, 
+         339,   344,    73,    98,   113,   248,   338,   498, 
+         249,   499,   124,   349,   348,   350,   351,   363, 
+         373,   352,   364,   374,   118,   353,   358,   354, 
+         359,   369,     0,     1,     2,     3,     8,    13, 
+          18,    23,    25,    26,    27,    28,    33,    38, 
+          43,    48,    50,    51,    52,    53,    58,    63, 
+          68,    73,    75,    76,    77,    78,    83,    88, 
+          93,    98,   100,   101,   103,   108,   113,   118, 
+         200,   201,   202,   203,   208,   213,   218,   223, 
+         225,   226,   228,   233,   238,   243,   325,   326, 
+         328,   333,   338,   343,   450,   451,   452,   458, 
+         463,   468,   473,   475,   476,   478,   483,   488, 
+         493,   248,   348,   498,   102,   227,   350,   351, 
+         353,   358,   363,   368,   477,   373,     0,     1, 
+           2,     3,     4,     8,     9,    13,    14,    18, 
+          19,    25,    26,    27,    28,    29,    33,    34, 
+          38,    39,    43,    44,    50,    51,    52,    53, 
+          54,    58,    59,    63,    68,    69,    75,    76, 
+          77,    78,    79,    83,    84,    88,    93,    94, 
+         100,   101,   102,   103,   108,   109,   118,   119, 
+         200,   201,   202,   203,   204,   208,   209,   213, 
+         214,   218,   219,   225,   226,   227,   228,   229, 
+         233,   234,   238,   243,   244,   325,   326,   327, 
+         328,   333,   334,   343,   344,   350,   351,   358, 
+         368,   450,   451,   452,   454,   458,   459,   463, 
+         464,   468,   469,   475,   476,   477,   478,   479, 
+         483,   484,   488,   493,   494,    64,    89,   104, 
+         239,   329,   352,   359,   369,   489,   113,   353, 
+         114,   354, 
 };
 
 static long _vq_fitmap_res_Ac_5[] = {
-           0,     0,     0,     0,     0,     0,     0,     0
-           0,     0,     0,     0,     0,     0,     0,     0
+           0,   165,   262,   165,   401,   165,   499,   165
+         583,   722,   806,   722,   401,   165,   499,   165
 };
 
 static long _vq_fitlength_res_Ac_5[] = {
-          25,    25,    25,    25,    25,    25,    25,    25
-          25,    25,    25,    25,    25,    25,    25,    25
+         165,    97,   139,    97,    98,    97,    84,    97
+         139,    84,   116,    84,    98,    97,    84,    97
 };
 
 static encode_aux_pigeonhole _vq_auxp_res_Ac_5 = {
        -2, 1, 4, 2,
        _vq_pigeonmap_res_Ac_5,
-       25,
+       922,
        _vq_fitlist_res_Ac_5,
        _vq_fitmap_res_Ac_5,
        _vq_fitlength_res_Ac_5
index 0cb436e..67aac59 100644 (file)
@@ -31,12 +31,12 @@ static long _vq_quantlist_res_Ac_6[] = {
 };
 
 static long _vq_lengthlist_res_Ac_6[] = {
-        2, 4, 4, 6, 6, 7, 7, 9, 8, 0, 4, 4, 6, 6, 8, 8,
-        9,10, 0, 4, 4, 6, 6, 8, 8, 9,10, 0, 5, 5, 6, 6,
+        2, 4, 3, 7, 7, 8, 8,10,10, 0, 4, 4, 6, 6, 8, 8,
+       10,10, 0, 4, 4, 6, 6, 8, 8,10,10, 0, 5, 5, 6, 6,
         8, 8,10,10, 0, 0, 0, 6, 6, 8, 8,10,10, 0, 0, 0,
-        6, 7, 7, 7,10,10, 0, 0, 0, 7, 7, 7, 7,10,10, 0,
-        0, 0, 8, 8, 9, 9,10,10, 0, 0, 0, 0, 0, 9, 9,10,
-       10,
+        7, 7, 9, 9,10,10, 0, 0, 0, 7, 7, 9, 9,10,10, 0,
+        0, 0, 8, 8, 9, 9,11,11, 0, 0, 0, 0, 0, 9, 9,11,
+       11,
 };
 
 static float _vq_quantthresh_res_Ac_6[] = {
index ee7af13..1105abb 100644 (file)
@@ -29,9 +29,9 @@ static long _vq_quantlist_res_Ac_7[] = {
 };
 
 static long _vq_lengthlist_res_Ac_7[] = {
-        1, 3, 3, 7, 7,10,10, 5, 5, 5, 8, 8,10,10, 5, 5,
-        5, 8, 8,11,10, 0, 8, 8, 9, 9,11,11, 0, 9, 8, 9,
-        9,12,12, 0,13,13,11,11,13,12, 0,14,14,11,11,13,
+        1, 4, 3, 7, 7, 9, 9, 5, 4, 4, 8, 8,10,10, 5, 5,
+        5, 8, 8,10,10, 0, 8, 8, 9, 9,11,11, 0, 9, 9,10,
+        9,12,11, 0,13,13,11,11,12,12, 0,14,14,11,11,12,
        13,
 };
 
index a5c2b1e..854aa96 100644 (file)
@@ -27,45 +27,45 @@ static long _vq_quantlist_res_Ac_7a[] = {
 };
 
 static long _vq_lengthlist_res_Ac_7a[] = {
-        3, 6, 6, 8, 8,10, 6, 6, 9, 8,11, 6, 6, 8, 8,11,
+        3, 6, 6, 8, 8,10, 6, 6, 8, 8,10, 6, 6, 8, 8,11,
         8, 8, 8, 8,11,11,11, 8, 8, 6, 8, 7, 9, 9,11, 8,
-        8, 9, 9,11, 8, 8, 9, 9,12,10,10,10, 9,11,12,12,
+        8, 9, 9,11, 8, 8, 9, 9,11,10,10, 9, 9,11,11,11,
        10, 9, 6, 7, 8, 9, 9,11, 8, 8, 9, 9,11, 8, 8, 9,
-        9,12, 9,10,10, 9,12,12,12, 9,10, 8, 9, 9,10,10,
-       11,10,10,11,11,11,10,10,10,10,12,11,11,10,10,12,
-       12,12,11,10, 8, 9, 9,10,10,12,10,10,10,10,11,10,
-       10,10,10,12,11,11,10,10,12,12,12,10,10,11,11,11,
-       12,12,13,11,11,12,12,14,12,11,12,12,13,12,12,11,
-       12,13,13,13,12,11, 6, 8, 8,10,10,11, 8, 8,10, 9,
-       12, 8, 8,10, 9,11, 9, 9, 9, 9,11,11,12, 9, 9, 6,
-        8, 8,10,10,11, 8, 8,10,10,12, 8, 8, 9, 9,11, 9,
-        9, 9, 9,11,12,11, 9, 9, 8, 9, 9,10,10,11,10, 9,
-       10,10,12, 9,10,10,10,12,11,10,10,10,12,12,12,10,
-       10, 9, 9, 9,10,10,12,10,10,10,10,12,10, 9,10,10,
-       12,11,10,10,10,12,12,12,10,10,10,11,11,11,12,13,
-       12,12,12,12,13,11,11,12,12,12,12,12,12,12,13,14,
-       12,12,12, 6, 8, 8,10,10,12, 8, 8,10,10,11, 8, 8,
-        9, 9,12, 9, 9, 9, 9,11,12,12, 9, 9, 6, 8, 8,10,
-       10,12, 8, 8,10,10,11, 8, 8, 9, 9,12, 9, 9, 9, 9,
-       11,12,12, 9, 9, 8, 9, 9,10,10,12, 9, 9,10,10,12,
-        9, 9,10,10,12,10,10,10,10,11,11,12,10,10, 8, 9,
-       10,10,10,12, 9,10,10,10,12,10,10,10,10,12,10,10,
-       10,10,12,12,11,10,10,11,11,12,12,12,13,11,11,12,
-       12,13,11,12,12,12,13,12,12,12,11,13,13,13,12,12,
-        8,10,10,11,11,12, 9, 9,10,11,12, 9, 9,10,10,12,
+        9,11, 9,10, 9, 9,11,12,11, 9,10, 8, 9, 9,10,10,
+       12,10,10,10,10,11,10,10,10,10,12,11,11,10,10,12,
+       12,12,10,10, 8, 9, 9,10,10,12,10,10,11,10,12,10,
+       10,10,10,12,11,11,10,11,12,12,11,10,10,10,11,11,
+       11,12,13,11,11,12,12,13,11,11,12,11,13,12,12,11,
+       12,13,13,13,12,12, 6, 8, 8,10,10,11, 8, 8,10, 9,
+       11, 8, 8,10,10,11, 9, 9, 9, 9,11,11,11, 9, 9, 6,
+        8, 8,10,10,11, 8, 8,10,10,11, 8, 8, 9,10,11, 9,
+        9, 9, 9,11,11,11, 9, 9, 8, 9, 9,10,10,11,10,10,
+       10,10,12,10,10,11,11,12,10,10,10,10,12,12,12,10,
+       10, 8, 9,10,11,10,12,10, 9,10,10,12, 9,10,10,10,
+       12,11,11,10,10,12,12,12,10,10,10,11,11,12,11,13,
+       11,12,12,12,12,11,11,12,11,13,12,12,12,11,13,13,
+       12,12,12, 6, 8, 8,10,10,11, 8, 8,10,10,11, 8, 8,
+       10, 9,11, 9, 9, 9, 9,11,12,11,10, 9, 6, 8, 8,10,
+       10,11, 8, 8,10,10,11, 7, 8,10,10,11, 9, 9, 9, 9,
+       11,11,11, 9, 9, 8, 9,10,10,10,12,10,10,10,10,12,
+        9, 9,10,10,12,10,10,10,10,12,11,12,10,10, 8, 9,
+        9,10,10,12,10, 9,10,10,11, 9, 9,10,10,12,10,10,
+       10,10,12,12,12,10,10,11,11,11,12,12,13,11,11,12,
+       12,13,11,12,12,12,13,12,12,12,11,13,13,13,11,12,
+        8,10,10,11,11,12, 9, 9,11,11,12, 9, 9,10,10,11,
        10,10,10,10,12,12,12,10,10, 8,10, 9,11,11,12, 9,
-        9,10,10,12, 9, 9,10,10,12,10,10,10,10,12,12,12,
-       10,10, 8, 9, 9,11,10,12, 9, 9,10,10,12, 9, 9,10,
-       10,11,10,10,10,10,12,12,12,10,10, 8, 9, 9,10,10,
-       12, 9, 9,10,10,12, 9, 9,10,10,12,10,10,10,10,12,
-       12,12,10,10,11,11,12,12,12,13,11,11,12,12,13,11,
-       12,12,12,13,12,12,11,12,13,13,13,12,12,11,12,12,
-       12,12,13,11,11,12,12,13,12,12,12,12,12,12,12,12,
-       12,13,13,13,11,12,11,12,11,12,12,13,12,11,12,12,
-       13,12,12,12,12,13,12,12,12,12,13,13,13,12,12, 8,
-        9, 9,10,10,12, 9, 9,10,10,12, 9, 9,10,10,12,10,
-       10,10,10,12,12,12,10,10, 8, 9, 9,11,11,11, 9, 9,
-       10,10,11, 9, 9,10,10,12,10,10,10,10,11,12,12,10,
+        9,11,11,12, 9, 9,10,10,12,10,10,10,10,12,12,12,
+       10,10, 8,10, 9,10,10,11,10, 9,10,10,12, 9, 9,10,
+       10,12,10,10,10,10,11,11,12,10,10, 8,10,10,10,10,
+       12, 9, 9,10,10,12,10, 9,10,10,12,10,10,10,10,12,
+       12,12,10,10,10,11,11,12,12,13,11,11,12,12,13,11,
+       12,11,12,13,12,12,12,12,13,13,13,12,11,11,11,12,
+       12,12,13,12,11,12,12,13,12,12,12,12,13,12,12,12,
+       11,13,13,13,12,12,11,11,11,12,13,13,12,11,12,12,
+       13,11,11,12,12,13,12,12,12,12,13,13,12,11,12, 8,
+       10,10,10,10,11, 9,10,10,10,11, 9, 9,10,10,11,10,
+       10,10,10,11,12,12,10,10, 8,10,10,10,11,12, 9, 9,
+       10,10,12, 9, 9,10,10,12,10,10,10,10,12,12,12,10,
        10,
 };
 
index 30a3f0a..f6d9bcc 100644 (file)
@@ -35,17 +35,17 @@ static long _vq_quantlist_res_Ac_8[] = {
 };
 
 static long _vq_lengthlist_res_Ac_8[] = {
-        1, 4, 4, 6, 5, 7, 7, 8, 8, 9, 9,10,10, 6, 5, 5,
-        7, 7, 8, 8, 9, 9,10,10,11,11, 6, 5, 5, 7, 7, 8,
-        8, 9, 9,10,10,11,11, 0, 8, 8, 8, 8, 9, 9,10,10,
-       11,12,12,13, 0, 8, 8, 8, 8, 9, 9,10,10,11,11,13,
-       12, 0,12,12, 9, 9, 9, 9,11,10,11,11,13,13, 0,12,
-       12, 9, 9,10,10,11,11,12,12,13,13, 0, 0, 0,10,11,
-       10,10,11,11,13,12,13,13, 0, 0, 0,11,10,10,10,11,
-       11,13,13,14,14, 0, 0, 0,11,14,10,11,12,11,14,13,
-       13,13, 0, 0, 0,15,12,11,11,11,12,13,13,14,15, 0,
-        0, 0, 0, 0,12,12,11,12,14,14,14,15, 0, 0, 0, 0,
-        0,13,13,13,12,14,13,14,15,
+        1, 4, 3, 6, 6, 7, 7, 9, 9,10,10,12,10, 6, 5, 5,
+        7, 7, 9, 9,10,10,11,11,12,12, 6, 5, 5, 7, 7, 9,
+        9,10,10,11,11,12,11, 0, 8, 8, 8, 8,10, 9,11,11,
+       12,12,13,13, 0, 8, 8, 8, 8,10,10,11,11,13,12,13,
+       12, 0,13,13,10,10,11,10,12,11,13,13,13,16, 0,13,
+       13,10,10,10,11,12,11,13,13, 0,14, 0, 0, 0,12,12,
+       12,12,14,13,13,12,15,14, 0, 0, 0,12,12,12,11,12,
+       13,14,14,15,16, 0, 0, 0,16,16,13,12,13,14,15,13,
+       14,14, 0, 0, 0,16, 0,13,11,13,13,13,15,14,15, 0,
+        0, 0, 0, 0,12,16,13,16,15, 0,15,16, 0, 0, 0, 0,
+        0,14,11,14,11,15,13,15,15,
 };
 
 static float _vq_quantthresh_res_Ac_8[] = {
@@ -90,98 +90,98 @@ static long _vq_fitlist_res_Ac_8[] = {
           48,    50,     5,    18,    33,    46,     8,    10, 
           12,    21,    23,    25,    36,    38,    49,    51, 
           61,    63,    31,    59,    34,    62,    64,    87, 
-          89,    57,    85,    60,    88,    90,    13,    14
-          40,    41,    42,    66,    67,    68,    15,    43
-          69,    17,    45,    71,    95,     0,     1,    16
-           2,     4,    19,    26,    27,    53,    54,    55
-          79,    80,    81,    28,    56,    82,    30,    58
-          84,   108,    16,    18,    40,    42,    44,    46, 
-          66,    68,    70,    72,    94,    96,    14,    17
-          19,    41,    43,    45,    47,    67,    69,    71
-          73,    95,    97,     3,     5,    20,     1,    13
-           4,     6,    15,    21,    29,    31,    53,    55
-          57,    59,    79,    81,    83,    85,   107,   109
-          27,    30,    32,    54,    56,    58,    60,    80
-          82,    84,    86,   108,   110,    18,    20,    42
-          44,    46,    48,    68,    70,    72,    74,    96
-          98,    19,    21,    43,    45,    47,    49,    69
-          71,    73,    75,    97,    99,    23,    51,    77
-         101,     5,     7,    16,    22,     6,     8,    17
-          10,    25,    31,    33,    55,    57,    59,    61, 
-          81,    83,    85,    87,   109,   111,    32,    34
-          56,    58,    60,    62,    82,    84,    86,    88
-         110,   112,    36,    64,    90,   114,    22,    24
-          46,    48,    50,    72,    74,    76,   100,   102
-          20,    44,    70,    98,    23,    25,    47,    49
-          51,    73,    75,    77,   101,   103,     9,    11
-           7,    18,    10,    12,    21,    35,    37,    59
-          61,    63,    85,    87,    89,   113,   115,    33, 
-          57,    83,   111,    36,    38,    60,    62,    64
-          86,    88,    90,   114,   116,    40,    66,    67
-          68,    94,    41,    69,    95,    43,    71,    97
-         121,    53,    79,    80,    81,   107,    54,    82
-         108,    56,    84,   110,   134,   109,   133,   135
-         136,    42,    44,    66,    68,    70,    72,    94
-          96,    98,   120,   122,    40,    43,    45,    67
-          69,    71,    73,    95,    97,    99,   121,   123
-          55,    57,    79,    81,    83,    85,   107,   109
-         111,   133,   135,    53,    56,    58,    80,    82
-          84,    86,   108,   110,   112,   134,   136,   137
-         161,   138,   162,    44,    46,    68,    70,    72
-          74,    94,    96,    98,   100,   122,   124,    45
-          47,    69,    71,    73,    75,    95,    97,    99, 
-         101,   123,   125,    49,    77,   103,   127,    57
-          59,    81,    83,    85,    87,   107,   109,   111
-         113,   135,   137,    58,    60,    82,    84,    86
-          88,   108,   110,   112,   114,   136,   138,    62
-          90,   116,   140,   133,   139,   161,   163,   134
-         162,   164,   142,   166,    48,    50,    72,    74
-          76,    98,   100,   102,   126,   128,    46,    70
-          96,   124,    49,    51,    73,    75,    77,    99
-         101,   103,   127,   129,    61,    63,    85,    87
-          89,   111,   113,   115,   139,   141,    59,    83
-         109,   137,    62,    64,    86,    88,    90,   112
-         114,   116,   140,   142,   165,   167,   135,   163
-         138,   166,   168,    66,    94,   120,   121,   122
-         148,    67,    95,   123,   149,    40,    68,    96
-          41,    69,    97,    79,   107,   133,   134,   135
-         161,    80,   108,   136,   162,    94,    96,   120
-         122,   124,   148,   150,    95,    97,   121,   123
-         125,   149,   151,    68,    70,    98,    66,    69
-          71,    99,   107,   109,   133,   135,   137,   161
-         163,   108,   110,   134,   136,   138,   162,   164
-          96,    98,   120,   122,   124,   126,   148,   150
-         152,    97,    99,   121,   123,   125,   127,   149
-         151,   153,   101,   129,   155,    70,    72,    94
-         100,    71,    73,    95,    75,   103,   109,   111, 
-         133,   135,   137,   139,   161,   163,   165,   110
-         112,   134,   136,   138,   140,   162,   164,   166
-         114,   142,   168,   100,   102,   124,   126,   128, 
-         150,   152,   154,    98,   122,   148,   101,   103
-         125,   127,   129,   151,   153,   155,    74,    76
-          72,    96,    75,    77,    99,   113,   115,   137
-         139,   141,   163,   165,   167,   111,   135,   161
-         114,   116,   138,   140,   142,   164,   166,   168, 
+          57,    85,    60,    88,    90,    13,    14,    40
+          41,    42,    66,    67,    68,    15,    43,    69
+          17,    45,    71,    95,     0,     1,    16,     2
+           4,    19,    26,    27,    53,    54,    55,    79
+          80,    81,    28,    56,    82,    30,    58,    84
+         108,    16,    18,    40,    42,    44,    46,    66, 
+          68,    70,    72,    94,    96,    14,    17,    19
+          41,    43,    45,    47,    67,    69,    71,    73
+          95,    97,     3,     5,    20,     1,    13,     4
+           6,    15,    21,    29,    31,    53,    55,    57
+          59,    79,    81,    83,    85,   107,   109,    27
+          30,    32,    54,    56,    58,    60,    80,    82
+          84,    86,   108,   110,    18,    20,    42,    44
+          46,    48,    68,    70,    72,    74,    96,    98
+          19,    21,    43,    45,    47,    49,    69,    71
+          73,    75,    97,    99,    23,    51,    77,   101
+           5,     7,    16,    22,     6,     8,    17,    10
+          25,    31,    33,    55,    57,    59,    61,    81, 
+          83,    85,    87,   109,   111,    32,    34,    56
+          58,    60,    62,    82,    84,    86,    88,   110
+         112,    36,    64,    90,   114,    22,    24,    46
+          48,    50,    72,    74,    76,   100,   102,    20
+          44,    70,    98,    23,    25,    47,    49,    51
+          73,    75,    77,   101,   103,     9,    11,     7
+          18,    10,    12,    21,    35,    37,    59,    61
+          63,    85,    87,   113,   115,    33,    57,    83, 
+         111,    36,    38,    60,    62,    64,    86,    88
+          90,   114,   116,    40,    66,    67,    68,    94
+          41,    69,    95,    43,    71,    97,   121,    53
+          79,    80,    81,   107,    54,    82,   108,    56
+          84,   110,   109,   133,   135,   136,    42,    44
+          66,    68,    70,    72,    94,    96,    98,   120
+         122,    40,    43,    45,    67,    69,    71,    73
+          95,    97,    99,   121,   123,    55,    57,    79
+          81,    83,    85,   107,   109,   111,   133,   135
+          53,    56,    58,    80,    82,    84,    86,   108
+         110,   112,   136,   137,   161,   138,   162,    44
+          46,    68,    70,    72,    74,    94,    96,    98
+         100,   122,   124,    45,    47,    69,    71,    73
+          75,    95,    97,    99,   101,   123,   125,    49, 
+          77,   103,   127,    57,    59,    81,    83,    85
+          87,   107,   109,   111,   113,   135,   137,    58
+          60,    82,    84,    86,    88,   108,   110,   112
+         114,   136,   138,    62,    90,   116,   140,   133
+         139,   161,   163,   162,   164,   142,   166,    48
+          50,    72,    74,    76,    98,   100,   102,   126
+         128,    46,    70,    96,   124,    49,    51,    73
+          75,    77,    99,   101,   103,   127,   129,    61
+          63,    85,    87,   111,   113,   115,   139,   141
+          59,    83,   109,   137,    62,    64,    86,    88
+          90,   112,   114,   116,   140,   142,   165,   167
+         135,   163,   138,   166,   168,    66,    94,   120
+         121,   122,   148,    67,    95,   123,   149,    40
+          68,    96,    41,    69,    97,    79,   107,   133
+         135,   161,    80,    82,   108,   110,   136,   162
+         138,   164,    94,    96,   120,   122,   124,   148
+         150,    95,    97,   121,   123,   125,   149,   151
+          68,    70,    98,    66,    69,    71,    99,   107
+         109,   133,   135,   137,   161,   163,   108,   110
+         136,   138,   162,   164,    96,    98,   120,   122
+         124,   126,   148,   150,   152,    97,    99,   121
+         123,   125,   127,   149,   151,   101,   129,   155
+          70,    72,    94,   100,    71,    73,    95,    75
+         103,   109,   111,   133,   135,   137,   139,   161, 
+         163,   165,   110,   112,   136,   138,   140,   162
+         164,   166,   114,   142,   168,   100,   102,   124
+         126,   128,   150,   152,   154,    98,   122,   148, 
+         101,   103,   125,   127,   129,   151,   155,    74
+          76,    72,    96,    75,    77,    99,   113,   115
+         137,   139,   141,   163,   165,   167,   111,   135
+         161,   114,   116,   138,   140,   142,   164,   166
+         168, 
 };
 
 static long _vq_fitmap_res_Ac_8[] = {
-           0,    29,    74,   120,   158,   158,   194,   253
-         318,   373,   373,   401,   451,   516,   571,   571
-         597,   632,   683,   728,   728,   728,   728,   728
-         728
+           0,    29,    74,   120,   157,   157,   193,   252
+         317,   371,   371,   398,   447,   511,   565,   565
+         594,   628,   677,   721,   721,   721,   721,   721
+         721
 };
 
 static long _vq_fitlength_res_Ac_8[] = {
-          29,    45,    46,    38,     0,    36,    59,    65, 
-          55,     0,    28,    50,    65,    55,     0,    26
-          35,    51,    45,     0,     0,     0,     0,     0, 
+          29,    45,    46,    37,     0,    36,    59,    65, 
+          54,     0,    27,    49,    64,    54,     0,    29
+          34,    49,    44,     0,     0,     0,     0,     0, 
            0, 
 };
 
 static encode_aux_pigeonhole _vq_auxp_res_Ac_8 = {
        -78, 13, 12, 5,
        _vq_pigeonmap_res_Ac_8,
-       728,
+       721,
        _vq_fitlist_res_Ac_8,
        _vq_fitmap_res_Ac_8,
        _vq_fitlength_res_Ac_8
index d63f9ba..bf3c2ed 100644 (file)
@@ -35,17 +35,17 @@ static long _vq_quantlist_res_Ac_8a[] = {
 };
 
 static long _vq_lengthlist_res_Ac_8a[] = {
-        4, 5, 5, 6, 6, 7, 7, 7, 7, 7, 7, 7, 7, 8, 6, 6,
-        7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 8, 6, 6, 6, 6, 7,
-        7, 7, 7, 7, 7, 7, 7, 8, 7, 7, 7, 7, 7, 7, 8, 8,
-        8, 8, 7, 8, 8, 8, 8, 7, 7, 7, 7, 7, 7, 8, 8, 8,
-        7, 8, 8, 8, 7, 7, 8, 8, 8, 8, 8, 8, 8, 8, 9, 8,
-        9, 7, 7, 8, 8, 8, 8, 8, 8, 8, 8, 9, 8, 9, 8, 8,
-        8, 8, 8, 8, 8, 8, 8, 8, 9, 8, 8, 9, 9, 8, 8, 8,
-        8, 8, 8, 8, 8, 8, 9, 9, 8, 9, 8, 8, 8, 8, 8, 8,
-        8, 8, 9, 9, 8, 9, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8,
-        9, 8, 8, 9, 8, 8, 8, 8, 8, 8, 8, 8, 9, 9, 9, 9,
-        8, 8, 9, 8, 8, 8, 8, 8, 8,
+        3, 5, 5, 6, 6, 7, 7, 7, 7, 7, 7, 7, 7, 9, 6, 6,
+        6, 7, 7, 7, 7, 7, 7, 7, 8, 7, 9, 6, 6, 6, 6, 7,
+        7, 7, 7, 7, 7, 7, 7, 9, 7, 7, 7, 7, 7, 7, 8, 8,
+        8, 8, 8, 8, 9, 9, 9, 7, 7, 7, 7, 8, 8, 8, 8, 8,
+        8, 9, 9, 9, 7, 8, 8, 8, 8, 8, 8, 8, 8, 8, 9, 9,
+        9, 8, 7, 8, 8, 8, 8, 8, 8, 8, 8, 9, 9, 9, 8, 8,
+        8, 8, 8, 8, 8, 8, 8, 8, 9, 9, 9, 9, 9, 8, 8, 8,
+        8, 8, 8, 8, 8, 9, 9, 9, 9, 9, 8, 8, 8, 8, 8, 8,
+        8, 8, 9, 9, 9, 9, 9, 8, 8, 8, 8, 8, 8, 8, 8, 9,
+        9, 9, 9, 9, 8, 8, 8, 8, 8, 8, 8, 8, 9, 9, 9, 9,
+        9, 9, 9, 8, 8, 8, 8, 8, 8,
 };
 
 static float _vq_quantthresh_res_Ac_8a[] = {
index 3344759..32b3ac8 100644 (file)
 #include "codebook.h"
 
 static long _vq_quantlist_res_Ac_9[] = {
+       3,
        2,
+       4,
        1,
-       3,
+       5,
        0,
-       4,
+       6,
 };
 
 static long _vq_lengthlist_res_Ac_9[] = {
-        1, 3, 3,11,11, 3, 5, 7,11,11, 4, 7, 7,11,11,11,
-       11,11,11,11,11,11,11,11,11,
+        1, 3, 3,10,10,12,12, 3, 5, 9,12,12,11,11, 4, 9,
+        7,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_9[] = {
-       -253.5, -84.5, 84.5, 253.5, 
+       -422.5, -253.5, -84.5, 84.5, 253.5, 422.5, 
 };
 
 static long _vq_quantmap_res_Ac_9[] = {
-           3,    1,    0,    2,    4,
+           5,    3,    1,    0,    2,    4,    6,
 };
 
 static encode_aux_threshmatch _vq_auxt_res_Ac_9 = {
        _vq_quantthresh_res_Ac_9,
        _vq_quantmap_res_Ac_9,
-       5,
-       5
+       7,
+       7
 };
 
 static static_codebook _vq_book_res_Ac_9 = {
-       2, 25,
+       2, 49,
        _vq_lengthlist_res_Ac_9,
-       1, -518709248, 1626677248, 3, 0,
+       1, -518017024, 1626677248, 3, 0,
        _vq_quantlist_res_Ac_9,
        NULL,
        &_vq_auxt_res_Ac_9,
index dd4b6d4..03f0988 100644 (file)
@@ -35,17 +35,17 @@ static long _vq_quantlist_res_Ac_9a[] = {
 };
 
 static long _vq_lengthlist_res_Ac_9a[] = {
-        2, 4, 4, 5, 5, 7, 7, 7, 7, 8, 7, 7, 7, 6, 5, 5,
-        7, 7, 8, 8, 8, 8, 9, 9, 8, 8, 6, 5, 4, 7, 7, 8,
-        8, 9, 8, 9, 9, 8, 8,13, 7, 7, 7, 7, 9, 9, 9, 9,
-       10,10,10, 9,13, 6, 6, 7, 7, 8, 9, 9, 9,10,10, 8,
-        9,12,11,10, 8, 7, 9, 9,10,10,10, 9,10,11,14,10,
-       10, 7, 6, 9, 8,10,10,10,10, 9,10,13,14,14,10,10,
-       10, 9,10,10,10, 9,11,10,14,14,14,10, 9,10, 9,10,
-       10, 9,11,11,10,14,14,14,13,13,10,10,10, 9,10,10,
-       10,11,14,14,14,13,12,10, 9, 9, 9,10,10,10,11,14,
-       14,14,14,14,12,11, 9, 9,10, 9,10,10,14,14,14,14,
-       14,13,10, 9,10, 9,10,10,10,
+        1, 4, 4, 7, 7, 9, 9, 9, 9, 9, 9, 8, 8, 6, 6, 6,
+        9, 9,10,10,10,10,12,10,10, 9, 6, 5, 4, 9, 8,10,
+        9,10,11,10,10, 9, 9,12, 8, 8,10,10,11,11,12,11,
+       11,11,11,10,14, 6, 5, 7, 7,11,11,11,10,10,12, 9,
+        9,14,12,10,10, 9,12,13,12,12,12,11,12,11,14,10,
+       11, 7, 6,11,10,11,12,11,11, 9,10,12,13,12,10,12,
+       12,14,11,13,14,10,12,11,13,13,14,12,10,11,10,12,
+       12, 9,12,10,13,14,14,14,13,14,13,14,13,10,13, 9,
+       12,12,13,14,14,14,14,13,14,10,13, 9,12,13,14,13,
+       14,13,13,13,14,11,14, 8,11, 9,12,12,14,14,14,14,
+       14,12,14, 8,12,13,11,12,11,
 };
 
 static float _vq_quantthresh_res_Ac_9a[] = {
index b8d0b71..cf96888 100644 (file)
@@ -35,17 +35,17 @@ static long _vq_quantlist_res_Ac_9b[] = {
 };
 
 static long _vq_lengthlist_res_Ac_9b[] = {
-        4, 5, 5, 6, 6, 7, 7, 7, 7, 7, 7, 7, 7, 8, 6, 6,
-        7, 7, 7, 8, 7, 7, 7, 7, 7, 7, 8, 6, 6, 7, 7, 7,
-        7, 7, 7, 7, 7, 7, 7, 8, 7, 7, 8, 7, 7, 8, 7, 8,
-        7, 8, 7, 8, 8, 8, 8, 8, 7, 8, 8, 7, 7, 8, 8, 8,
-        8, 9, 8, 8, 8, 8, 8, 8, 8, 8, 7, 8, 8, 8, 8, 8,
-        8, 8, 8, 8, 8, 8, 8, 7, 8, 8, 8, 8, 8, 8, 8, 8,
-        8, 8, 8, 8, 8, 8, 8, 7, 8, 8, 8, 8, 8, 8, 8, 8,
-        8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 7,
-        7, 8, 9, 8, 9, 9, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8,
-        8, 9, 8, 8, 8, 8, 8, 8, 8, 7, 8, 8, 8, 8, 9, 8,
-        8, 8, 8, 8, 8, 8, 8, 8, 8,
+        4, 5, 6, 6, 6, 6, 6, 6, 7, 7, 7, 7, 7, 8, 7, 7,
+        7, 7, 7, 7, 7, 8, 7, 7, 7, 7, 9, 7, 7, 7, 7, 7,
+        7, 7, 7, 7, 7, 7, 7, 9, 8, 8, 8, 8, 7, 8, 8, 8,
+        8, 8, 7, 7, 9, 8, 9, 7, 8, 7, 8, 7, 8, 7, 7, 7,
+        8, 9, 9, 9, 8, 8, 8, 8, 8, 8, 7, 8, 7, 7, 8, 9,
+        9, 7, 8, 7, 8, 7, 7, 7, 8, 7, 8, 9, 8, 8, 8, 8,
+        8, 8, 8, 8, 8, 7, 7, 7, 9, 9, 8, 8, 9, 8, 8, 8,
+        8, 7, 8, 7, 8, 9, 9, 9, 9, 8, 8, 8, 8, 8, 8, 7,
+        8, 7, 9, 9, 8, 9, 8, 7, 7, 7, 8, 8, 8, 8, 8, 8,
+        9, 8, 9, 9, 7, 8, 8, 7, 8, 8, 8, 8, 9, 9, 8, 9,
+        8, 8, 8, 8, 7, 8, 8, 7, 8,
 };
 
 static float _vq_quantthresh_res_Ac_9b[] = {
index fceb259..453e9a2 100644 (file)
@@ -11,7 +11,7 @@
  ********************************************************************
 
  function: maintain the info structure, info <-> header packets
- last mod: $Id: info.c,v 1.43 2001/08/13 11:35:30 xiphmont Exp $
+ last mod: $Id: info.c,v 1.44 2001/09/11 05:06:57 xiphmont Exp $
 
  ********************************************************************/
 
@@ -407,7 +407,7 @@ static int _vorbis_pack_info(oggpack_buffer *opb,vorbis_info *vi){
 }
 
 static int _vorbis_pack_comment(oggpack_buffer *opb,vorbis_comment *vc){
-  char temp[]="Xiphophorus libVorbis I 20010813";
+  char temp[]="Xiphophorus libVorbis I 20010910";
 
   /* preamble */  
   oggpack_write(opb,0x03,8);
index 58c6a69..ec2cc08 100644 (file)
@@ -11,7 +11,7 @@
  ********************************************************************
 
  function: channel mapping 0 implementation
- last mod: $Id: mapping0.c,v 1.35 2001/08/13 11:33:39 xiphmont Exp $
+ last mod: $Id: mapping0.c,v 1.36 2001/09/11 05:06:57 xiphmont Exp $
 
  ********************************************************************/
 
@@ -377,6 +377,7 @@ static int mapping0_forward(vorbis_block *vb,vorbis_look_mapping *l){
     for(j=0;j<n/2;j++)
       logmdct[j]=todB(mdct+j);
     _analysis_output("mdct",seq+i,logmdct,n/2,1,0);
+    _analysis_output("lmdct",seq+i,mdct,n/2,0,0);
 
 
     /* perform psychoacoustics; do masking */
@@ -391,7 +392,6 @@ static int mapping0_forward(vorbis_block *vb,vorbis_look_mapping *l){
                     ci->blocksizes[vb->lW]/2);
 
     _analysis_output("mask",seq+i,logmask,n/2,1,0);
-    
     /* perform floor encoding */
     nonzero[i]=look->floor_func[submap]->
       forward(vb,look->floor_look[submap],
@@ -676,6 +676,7 @@ static int mapping0_inverse(vorbis_block *vb,vorbis_look_mapping *l){
   for(i=0;i<vi->channels;i++){
     float *pcm=vb->pcm[i];
     _analysis_output("out",seq+i,pcm,n/2,1,1);
+    _analysis_output("lout",seq+i,pcm,n/2,0,0);
     mdct_backward(b->transform[vb->W][0],pcm,pcm);
   }
 
index 68836fd..f8f1228 100644 (file)
@@ -11,7 +11,7 @@
  ********************************************************************
 
  function: predefined encoding modes; 44kHz stereo ~64kbps true VBR
- last mod: $Id: mode_44c_A.h,v 1.2 2001/09/01 06:14:52 xiphmont Exp $
+ last mod: $Id: mode_44c_A.h,v 1.3 2001/09/11 05:07:02 xiphmont Exp $
 
  ********************************************************************/
 
@@ -81,17 +81,17 @@ static vorbis_info_psy_global _psy_set_44c_AG={
 
 static struct vp_couple_pass _psy_pass_44c_A0[]={
   {1.f,1.f,
-    {{24,    0,0,       0,0,      0,0},
-     {64,    0,0,   7.5f,12,  2.5f,0},
-     {9999,  0,0,   7.5f,12,  4.5f,0}}
+    {{24,     0,    0,    0},
+     {64,     0,    0,    0},
+     {9999,   0,    0,    1.5f}}
   },
 };
 
 static vp_couple_pass _psy_pass_44c_A[]={
   {1.f,1.f,
-    {{288,   0,0,       0,0,     0,0},
-     {512,   0,0,   7.5f,12,     0,0},
-     {9999,  0,0,   7.5f,12,  2.5f,0}}
+    {{288,    0,    0,   0},
+     {512,    0,    0,   0},
+     {9999,   0,    0,   1.5f}}
   }
 };
 
@@ -102,23 +102,31 @@ static float _psy_compand_44c_A[NOISE_COMPAND_LEVELS]={
   0.f, 0.f, 0.f, 0.f, 0.f, 0.f, 0.f,  0.f,     /* 31dB */
   1.f, 2.f, 3.f, 4.f, 5.f, 6.f, 7.f,  8.f,     /* 39dB */
 };
+static float _psy_compand_44c_0[NOISE_COMPAND_LEVELS]={
+  0.f, 0.f, 0.f, 0.f, 0.f, 0.f, 0.f,  0.f,     
+  0.f, 0.f, 0.f, 0.f, 0.f, 0.f, 0.f,  0.f,     
+  0.f, 0.f, 0.f, 0.f, 0.f, 0.f, 0.f,  0.f,     
+  0.f, 0.f, 0.f, 0.f, 0.f, 0.f, 0.f,  0.f,     
+  0.f, 0.f, 0.f, 0.f, 0.f, 0.f, 0.f,  0.f,     
+};
 
 static vorbis_info_psy _psy_set_44c_A0={
   ATH_Bark_dB_lineaggressive,
   -100.,-140.,
 
-  /* tonemaskp */
-  0.f, -26.f,&_vp_tonemask_consbass_A,
+  /* tonemaskp, guard, abs_limit */
+  0.f, -30.f, -30.f,
+  &_vp_tonemask_consbass_A,
   /* peakattp, curvelimitp */
   1, 4, &_vp_peakatt_A,
 
   /*noisemaskp */
-  1,-30.f,     /* suppress any noise curve over maxspec+n */
+  1, -10.f,     /* suppress any noise curve over maxspec+n */
   .6f, .6f,   /* low/high window */
   2, 2, 15,
 
   /*63     125     250     500      1k      2k      4k       8k     16k*/
-  {-30,-30,-30,-30,-30,-30,-20,-10,  0,  0,  0,  0,  0,  0,  0,  0,  0},
+  {-30,-30,-30,-30,-30,-30,-20,-10,  0,  0,  -2,  -2,  0,  0,  1,  2,  4},
   _psy_compand_44c_A,
 
   95.f,  /* even decade + 5 is important; saves an rint() later in a
@@ -131,18 +139,19 @@ static vorbis_info_psy _psy_set_44c_AT={
   ATH_Bark_dB_lineaggressive,
   -100.f,-140.f,
 
-  /* tonemask */
-  0.f,-26.f,&_vp_tonemask_consbass_A,
+  /* tonemaskp, guard, abs_limit */
+  0.f,-30.f,-30.f,
+  &_vp_tonemask_consbass_A,
   /* peakattp,curvelimitp */
   1, 4,  &_vp_peakatt_A,
 
   /*noisemaskp */
-  1,  -40.f,     /* suppress any noise curve over maxspec+n */
+  1,  -10.f,     /* suppress any noise curve over maxspec+n */
       .6f,.6f,   /* low/high window */
       4,4,100,
 
   /*63     125     250     500      1k      2k      4k       8k     16k*/
-  {-30,-30,-30,-30,-20,-20,-10,-10,  0,  0,  0,  0,  0,   0,  0,  0,  0},
+  {-30,-30,-30,-30,-20,-20,-10,-10,  0,  0,  -6,  -6,  0,   0,  0,  0,  2},
   _psy_compand_44c_A,
 
   95.f,  /* even decade + 5 is important; saves an rint() later in a
@@ -154,18 +163,19 @@ static vorbis_info_psy _psy_set_44c_A={
   ATH_Bark_dB_lineaggressive,
   -100.f,  -140.f,
 
-  /* tonemask */
-  0.f,-26.f,&_vp_tonemask_consbass_A,
+  /* tonemaskp, guard, abs_limit */
+  0.f,-30.f,-30.f,
+  &_vp_tonemask_consbass_A,
   /* peakattp, curvelimitp */
   1, 4, &_vp_peakatt_A,
 
   /*noisemaskp */
-  1,  -30.f,     /* suppress any noise curve over maxspec+n */
+  1,  -10.f,     /* suppress any noise curve over maxspec+n */
       .6f,.6f,   /* low/high window */
       4,4,100,
 
   /*63     125     250     500      1k      2k      4k       8k     16k*/
-  {-20,-20,-20,-20,-20,-20,-10,  0,  0,  0,  0,  0,  0,   0,  0,  0,  0},
+  {-20,-20,-20,-20,-20,-20,-10, -3,  0,  0,  -6,  -6,  0,   0,  0,  0,  2},
   _psy_compand_44c_A,
 
   95.f,  /* even decade + 5 is important; saves an rint() later in a
@@ -227,7 +237,7 @@ static vorbis_info_floor1 _floor_set_44c_A={
   60,30,400,
   20,8,1,18.,
   20,600,
-  960};
+  896};
 
 static vorbis_info_residue0 _residue_set_44c_A0={
   0,192, 8, 10,23,
@@ -238,13 +248,13 @@ static vorbis_info_residue0 _residue_set_44c_A0={
   {.5f,
    1.5f,1.5f,
    2.5f,2.5f,2.5f,
-   4.5f,17.5f,80.5f},
+   4.5f,17.5f,84.5f},
   {0},
   {99,16,99,6,16,99,99,99,99,99},
   {3}};
 
 static vorbis_info_residue0 _residue_set_44c_A={
-  0,1920, 32,10,24,
+  0,1792, 32,10,24,
   {0,1,1,1,1,1,1,3,3,7},
   {25, 26, 27, 28, 29, 30, 31,32, 33,34, 35,36,37},
   {9999,9999,9999,9999,9999,9999,
@@ -252,7 +262,7 @@ static vorbis_info_residue0 _residue_set_44c_A={
   {.5f,
    1.5f,1.5f,
    2.5f,2.5f,2.5f,
-   4.5f,17.5f,80.f},
+   4.5f,17.5f,84.5f},
   {0},
   {99,32,99,18,32,99,99,99,99,99},
   {3}};
index 59cb8d2..7899957 100644 (file)
--- a/lib/psy.c
+++ b/lib/psy.c
@@ -11,7 +11,7 @@
  ********************************************************************
 
  function: psychoacoustics not including preecho
- last mod: $Id: psy.c,v 1.54 2001/09/11 02:42:34 segher Exp $
+ last mod: $Id: psy.c,v 1.55 2001/09/11 05:06:57 xiphmont Exp $
 
  ********************************************************************/
 
@@ -346,7 +346,7 @@ void _vp_psy_init(vorbis_look_psy *p,vorbis_info_psy *vi,
       }
   }
 
-  if(vi->peakattp) /* we limit depth only optionally */
+  if(vi->tone_guard) /* we limit depth only optionally */
     for(i=0;i<P_BANDS;i++)
       for(j=0;j<P_LEVELS;j++)
        if(p->tonecurves[i][j][EHMER_OFFSET+2]< vi->peakatt->block[i][j])
@@ -355,8 +355,8 @@ void _vp_psy_init(vorbis_look_psy *p,vorbis_info_psy *vi,
   /* but guarding is mandatory */
   for(i=0;i<P_BANDS;i++)
     for(j=0;j<P_LEVELS;j++)
-      if(p->tonecurves[i][j][EHMER_OFFSET+2]< vi->tone_maxatt)
-         p->tonecurves[i][j][EHMER_OFFSET+2]=  vi->tone_maxatt;
+      if(p->tonecurves[i][j][EHMER_OFFSET+2]< vi->tone_guard)
+         p->tonecurves[i][j][EHMER_OFFSET+2]=  vi->tone_guard;
 
   /* set up rolling noise median */
   for(i=0;i<n;i++){
@@ -572,6 +572,7 @@ static void max_seeds(vorbis_look_psy *p,
   while(linpos+1<p->n){
     float minV=seed[pos];
     long end=((p->octave[linpos]+p->octave[linpos+1])>>1)-p->firstoc;
+    if(minV>p->vi->tone_abs_limit)minV=p->vi->tone_abs_limit;
     while(pos+1<=end){
       pos++;
       if((seed[pos]>NEGINF && seed[pos]<minV) || minV==NEGINF)
@@ -597,7 +598,7 @@ static void bark_noise_hybridmp(int n,const long *b,
                                float *noise,
                                const float offset,
                                const int fixed){
-  long i,hi=b[0]>>16,lo=b[0]>>16,hif=-fixed/2,lof=-fixed/2;
+  long i,hi=b[0]>>16,lo=b[0]>>16,hif=0,lof=0;
   double xa=0,xb=0;
   double ya=0,yb=0;
   double x2a=0,x2b=0;
@@ -755,6 +756,7 @@ void _vp_compute_mask(vorbis_look_psy *p,
       int dB=logmask[i]+.5;
       if(dB>=NOISE_COMPAND_LEVELS)dB=NOISE_COMPAND_LEVELS-1;
       logmask[i]= work[i]+p->vi->noisecompand[dB]+p->noiseoffset[i];
+      if(logmask[i]>p->vi->noisemaxsupp)logmask[i]=p->vi->noisemaxsupp;
     }
 
     _analysis_output("noise",seq,logmask,n,1,0);
@@ -779,13 +781,6 @@ void _vp_compute_mask(vorbis_look_psy *p,
   seed_loop(p,(const float ***)p->tonecurves,logfft,logmask,seed,global_specmax);
   max_seeds(p,g,channel,seed,logmask);
 
-  /* suppress any curve > p->vi->noisemaxsupp */
-  if(p->vi->noisemaxsupp<0.f)
-    for(i=0;i<n;i++)
-      if(logmask[i]>p->vi->noisemaxsupp)
-       logmask[i]=p->vi->noisemaxsupp;
-  
-
   /* doing this here is clean, but we need to find a faster way to do
      it than to just tack it on */
 
@@ -852,19 +847,22 @@ static void couple_8phase(float A, float B, float fA, float fB,
       *ang=0.f;
       break;
     case 1:
-      corr=origmag/(fmag*fA);
-      *mag=rint(A*corr*igranule)*granule; 
+      *mag=rint(*mag*igranule)*granule; 
       *ang=fabs(*mag);
       break;
     case -1:
-      corr=origmag/(fmag*fB);
-      *mag=rint(B*corr*igranule)*granule; 
-      *ang=-fabs(*mag);
+      *mag=rint(*mag*igranule)*granule; 
+      *ang= -fabs(*mag);
       break;
-    default:
+    case -2:
       corr=origmag/FAST_HYPOT(fmag*fA,fmag*fB);
       *mag=rint(*mag*corr*igranule)*granule; 
-      *ang=-2.f*fabs(*mag);
+      *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{
@@ -895,15 +893,17 @@ static void couple_6phase(float A, float B, float fA, float fB,
       *ang=0.f;
       break;
     case 1:case 2:
-      corr=origmag/(fmag*fA);
-      *mag=rint(A*corr*igranule)*granule; 
-      *ang=fabs(*mag);
+      *mag=rint(*mag*igranule)*granule; 
+      *ang= fabs(*mag);
       break;
     case -1:case -2:
-      corr=origmag/(fmag*fB);
-      *mag=rint(B*corr*igranule)*granule; 
-      *ang=-fabs(*mag);
+      *mag=rint(*mag*igranule)*granule; 
+      *ang= -fabs(*mag);
       break;
+    default:
+      *mag=0.f;
+      *ang=0.f;
+
     }
   }else{
     *mag=0.f;
@@ -932,7 +932,11 @@ static void couple_4phase(float A, float B, float fA, float fB,
     case 0:
       *ang=0.f;
       break;
+    case -1:
+      *ang=-2.f*fabs(*mag);
+      break;
     default:
+      *mag=-*mag;
       *ang=-2.f*fabs(*mag);
       break;
     }
@@ -949,12 +953,12 @@ static void couple_point(float A, float B, float fA, float fB,
   float origmag=FAST_HYPOT(A*fA,B*fB),corr;
 
   if(fmag!=0.f){
-    float phase=rint((A-B)*.5/fmag);
+    //float phase=rint((A-B)*.5/fmag);
     
     if(fabs(A)>fabs(B)){
-      *mag=A;phase=(A>0?phase:-phase);
+      *mag=A;//phase=(A>0?phase:-phase);
     }else{
-      *mag=B;phase=(B>0?phase:-phase);
+      *mag=B;//phase=(B>0?phase:-phase);
     }
     
     //switch((int)phase){
index 6bca7cb..a289b16 100644 (file)
--- 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.23 2001/09/01 06:14:50 xiphmont Exp $
+ last mod: $Id: psy.h,v 1.24 2001/09/11 05:06:57 xiphmont Exp $
 
  ********************************************************************/
 
@@ -40,13 +40,8 @@ typedef struct vp_couple{
   int limit;        /* sample post */
 
   float amppost_8phase;
-  float thresh_8phase;
-
   float amppost_6phase;
-  float thresh_6phase;
-
   float amppost_point;
-  float thresh_point;
   
 } vp_couple;
 
@@ -69,7 +64,8 @@ typedef struct vorbis_info_psy{
   float  ath_maxatt;
 
   float tone_masteratt;
-  float tone_maxatt;
+  float tone_guard;
+  float tone_abs_limit;
   vp_attenblock *toneatt;
 
   int peakattp;