diff options
author | Monty <xiphmont@xiph.org> | 2001-10-20 01:04:09 +0000 |
---|---|---|
committer | Monty <xiphmont@xiph.org> | 2001-10-20 01:04:09 +0000 |
commit | 246b35feeeff8d0b177abf5825717ce8ba24ce18 (patch) | |
tree | c52f6021df3b48858e37e6c16c2ee67de5b505f4 | |
parent | 1c485ff64852609ce38d2581820715b1ee36f603 (diff) | |
download | libvorbis-git-246b35feeeff8d0b177abf5825717ce8ba24ce18.tar.gz |
Ongoing bitrate management work
svn path=/branches/branch_monty_20011009/vorbis/; revision=2184
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" @@ -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 @@ -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; @@ -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 + + + + + + + |