summaryrefslogtreecommitdiff
path: root/lib
diff options
context:
space:
mode:
authorunknown <unknown@xiph.org>2004-03-20 18:42:46 +0000
committerunknown <unknown@xiph.org>2004-03-20 18:42:46 +0000
commitcf3072e83c64b771ffeaf3e92db326dfc980c5bf (patch)
tree7e15141c69e171028ba8b375420c6da8c1e9367b /lib
parent1e5e61342bfe996bc153175cb1a5d0ddb8befc9a (diff)
downloadlibvorbis-git-cf3072e83c64b771ffeaf3e92db326dfc980c5bf.tar.gz
This commit was manufactured by cvs2svn to create branch
'branch_monty_20010708'. svn path=/branches/branch_monty_20010708/vorbis/; revision=1545
Diffstat (limited to 'lib')
-rw-r--r--lib/.cvsignore6
-rw-r--r--lib/Makefile.am43
-rw-r--r--lib/analysis.c114
-rw-r--r--lib/backends.h187
-rw-r--r--lib/barkmel.c64
-rw-r--r--lib/bitbuffer.c67
-rw-r--r--lib/bitbuffer.h44
-rw-r--r--lib/block.c807
-rw-r--r--lib/books/.cvsignore2
-rw-r--r--lib/books/Makefile.am33
-rw-r--r--lib/books/lsp12_0.vqh168
-rw-r--r--lib/books/lsp12_1.vqh2979
-rw-r--r--lib/books/lsp30_0.vqh375
-rw-r--r--lib/books/lsp30_1.vqh1575
-rw-r--r--lib/books/lsp9_0.vqh122
-rw-r--r--lib/books/lsp9_1.vqh880
-rw-r--r--lib/books/res0_128_1024_1.vqh63
-rw-r--r--lib/books/res0_128_1024_2.vqh63
-rw-r--r--lib/books/res0_128_1024_3.vqh99
-rw-r--r--lib/books/res0_128_1024_4.vqh99
-rw-r--r--lib/books/res0_128_1024_5.vqh80
-rw-r--r--lib/books/res0_128_1024_6.vqh80
-rw-r--r--lib/books/res0_128_1024_7.vqh124
-rw-r--r--lib/books/res0_128_1024_8.vqh110
-rw-r--r--lib/books/res0_128_1024_9.vqh501
-rw-r--r--lib/books/res0_128_1024aux.vqh43
-rw-r--r--lib/books/res0_128_128_1.vqh63
-rw-r--r--lib/books/res0_128_128_2.vqh65
-rw-r--r--lib/books/res0_128_128_3.vqh152
-rw-r--r--lib/books/res0_128_128_4.vqh123
-rw-r--r--lib/books/res0_128_128_5.vqh448
-rw-r--r--lib/books/res0_128_128aux.vqh50
-rw-r--r--lib/books/res0_160_1024_1.vqh63
-rw-r--r--lib/books/res0_160_1024_2.vqh63
-rw-r--r--lib/books/res0_160_1024_3.vqh99
-rw-r--r--lib/books/res0_160_1024_4.vqh99
-rw-r--r--lib/books/res0_160_1024_5.vqh80
-rw-r--r--lib/books/res0_160_1024_6.vqh80
-rw-r--r--lib/books/res0_160_1024_7.vqh142
-rw-r--r--lib/books/res0_160_1024_8.vqh133
-rw-r--r--lib/books/res0_160_1024_9.vqh632
-rw-r--r--lib/books/res0_160_1024aux.vqh43
-rw-r--r--lib/books/res0_160_128_1.vqh63
-rw-r--r--lib/books/res0_160_128_2.vqh65
-rw-r--r--lib/books/res0_160_128_3.vqh152
-rw-r--r--lib/books/res0_160_128_4.vqh123
-rw-r--r--lib/books/res0_160_128_5.vqh448
-rw-r--r--lib/books/res0_160_128aux.vqh50
-rw-r--r--lib/books/res0_192_1024_1.vqh63
-rw-r--r--lib/books/res0_192_1024_2.vqh63
-rw-r--r--lib/books/res0_192_1024_3.vqh99
-rw-r--r--lib/books/res0_192_1024_4.vqh99
-rw-r--r--lib/books/res0_192_1024_5.vqh80
-rw-r--r--lib/books/res0_192_1024_6.vqh80
-rw-r--r--lib/books/res0_192_1024_7.vqh236
-rw-r--r--lib/books/res0_192_1024_8.vqh160
-rw-r--r--lib/books/res0_192_1024_9.vqh790
-rw-r--r--lib/books/res0_192_1024aux.vqh43
-rw-r--r--lib/books/res0_192_128_1.vqh63
-rw-r--r--lib/books/res0_192_128_2.vqh65
-rw-r--r--lib/books/res0_192_128_3.vqh265
-rw-r--r--lib/books/res0_192_128_4.vqh160
-rw-r--r--lib/books/res0_192_128_5.vqh448
-rw-r--r--lib/books/res0_192_128aux.vqh117
-rw-r--r--lib/books/res0_256_1024_1.vqh99
-rw-r--r--lib/books/res0_256_1024_2.vqh70
-rw-r--r--lib/books/res0_256_1024_3.vqh107
-rw-r--r--lib/books/res0_256_1024_4.vqh107
-rw-r--r--lib/books/res0_256_1024_5.vqh210
-rw-r--r--lib/books/res0_256_1024_6.vqh565
-rw-r--r--lib/books/res0_256_1024_7.vqh816
-rw-r--r--lib/books/res0_256_1024aux.vqh40
-rw-r--r--lib/books/res0_256_128_1.vqh63
-rw-r--r--lib/books/res0_256_128_2.vqh99
-rw-r--r--lib/books/res0_256_128_3.vqh80
-rw-r--r--lib/books/res0_256_128_4.vqh565
-rw-r--r--lib/books/res0_256_128_5.vqh580
-rw-r--r--lib/books/res0_256_128aux.vqh39
-rw-r--r--lib/books/res0_350_1024_7.vqh868
-rw-r--r--lib/books/res0_96_1024_1.vqh63
-rw-r--r--lib/books/res0_96_1024_2.vqh63
-rw-r--r--lib/books/res0_96_1024_3.vqh187
-rw-r--r--lib/books/res0_96_1024_4.vqh99
-rw-r--r--lib/books/res0_96_1024_5.vqh70
-rw-r--r--lib/books/res0_96_1024_6.vqh70
-rw-r--r--lib/books/res0_96_1024_7.vqh86
-rw-r--r--lib/books/res0_96_1024_8.vqh124
-rw-r--r--lib/books/res0_96_1024_9.vqh131
-rw-r--r--lib/books/res0_96_1024aux.vqh99
-rw-r--r--lib/books/res0_96_128_1.vqh63
-rw-r--r--lib/books/res0_96_128_2.vqh63
-rw-r--r--lib/books/res0_96_128_3.vqh70
-rw-r--r--lib/books/res0_96_128_4.vqh100
-rw-r--r--lib/books/res0_96_128_5.vqh102
-rw-r--r--lib/books/res0_96_128aux.vqh50
-rw-r--r--lib/codebook.h164
-rw-r--r--lib/codec_internal.h124
-rw-r--r--lib/envelope.c236
-rw-r--r--lib/envelope.h45
-rw-r--r--lib/floor0.c464
-rw-r--r--lib/floor1.c1140
-rw-r--r--lib/iir.c300
-rw-r--r--lib/iir.h36
-rw-r--r--lib/info.c589
-rw-r--r--lib/lookup.c93
-rw-r--r--lib/lookup.h32
-rw-r--r--lib/lookup_data.h189
-rwxr-xr-xlib/lookups.pl142
-rw-r--r--lib/lpc.c200
-rw-r--r--lib/lpc.h43
-rw-r--r--lib/lsp.c457
-rw-r--r--lib/lsp.h28
-rw-r--r--lib/mapping0.c565
-rw-r--r--lib/masking.h243
-rw-r--r--lib/mdct.c568
-rw-r--r--lib/mdct.h79
-rw-r--r--lib/misc.c106
-rw-r--r--lib/misc.h43
-rw-r--r--lib/modes/.cvsignore2
-rw-r--r--lib/modes/Makefile.am5
-rw-r--r--lib/modes/mode_A.h164
-rw-r--r--lib/modes/mode_B.h314
-rw-r--r--lib/modes/mode_C.h314
-rw-r--r--lib/modes/mode_D.h310
-rw-r--r--lib/modes/mode_E.h276
-rw-r--r--lib/modes/modes.h29
-rw-r--r--lib/os.h166
-rw-r--r--lib/psy.h99
-rw-r--r--lib/psytune.c369
-rw-r--r--lib/registry.c51
-rw-r--r--lib/registry.h35
-rw-r--r--lib/res0.c688
-rw-r--r--lib/scales.h132
-rw-r--r--lib/sharedbook.c677
-rw-r--r--lib/smallft.c1254
-rw-r--r--lib/smallft.h34
-rw-r--r--lib/synthesis.c103
-rw-r--r--lib/time0.c54
-rw-r--r--lib/tone.c54
-rw-r--r--lib/vorbisenc.c157
-rw-r--r--lib/vorbisfile.c12
-rw-r--r--lib/window.c62
-rw-r--r--lib/window.h23
143 files changed, 134 insertions, 31679 deletions
diff --git a/lib/.cvsignore b/lib/.cvsignore
deleted file mode 100644
index 0839b71d..00000000
--- a/lib/.cvsignore
+++ /dev/null
@@ -1,6 +0,0 @@
-*.la
-*.lo
-.libs
-.deps
-Makefile
-Makefile.in
diff --git a/lib/Makefile.am b/lib/Makefile.am
deleted file mode 100644
index 8751b151..00000000
--- a/lib/Makefile.am
+++ /dev/null
@@ -1,43 +0,0 @@
-## Process this file with automake to produce Makefile.in
-
-AUTOMAKE_OPTIONS = foreign
-
-SUBDIRS = modes books
-
-INCLUDES = -I$(top_srcdir)/include @OGG_CFLAGS@
-
-lib_LTLIBRARIES = libvorbis.la libvorbisfile.la libvorbisenc.la
-
-libvorbis_la_SOURCES = mdct.c smallft.c block.c envelope.c window.c lsp.c \
- lpc.c analysis.c synthesis.c psy.c info.c time0.c \
- floor1.c floor0.c\
- res0.c mapping0.c registry.c codebook.c sharedbook.c\
- lookup.c bitbuffer.c\
- envelope.h lpc.h lsp.h codebook.h misc.h psy.h\
- masking.h iir.h os.h mdct.h smallft.h\
- registry.h scales.h window.h lookup.h lookup_data.h\
- codec_internal.h backends.h bitbuffer.h
-libvorbis_la_LDFLAGS = -version-info @V_LIB_CURRENT@:@V_LIB_REVISION@:@V_LIB_AGE@
-
-libvorbisfile_la_SOURCES = vorbisfile.c
-libvorbisfile_la_LDFLAGS = -version-info @VF_LIB_CURRENT@:@VF_LIB_REVISION@:@VF_LIB_AGE@
-
-libvorbisenc_la_SOURCES = vorbisenc.c
-libvorbisenc_la_LDFLAGS = -version-info @VE_LIB_CURRENT@:@VE_LIB_REVISION@:@VE_LIB_AGE@
-
-EXTRA_PROGRAMS = barkmel tone psytune
-CLEANFILES = $(EXTRA_PROGRAMS)
-
-barkmel_SOURCES = barkmel.c
-tone_SOURCES = tone.c
-psytune_SOURCES = psytune.c
-psytune_LDFLAGS = -static
-psytune_LDADD = libvorbis.la
-
-EXTRA_DIST = lookups.pl iir.c
-
-debug:
- $(MAKE) all CFLAGS="@DEBUG@"
-
-profile:
- $(MAKE) all CFLAGS="@PROFILE@"
diff --git a/lib/analysis.c b/lib/analysis.c
deleted file mode 100644
index 85f2368c..00000000
--- a/lib/analysis.c
+++ /dev/null
@@ -1,114 +0,0 @@
-/********************************************************************
- * *
- * 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: single-block PCM analysis mode dispatch
- last mod: $Id: analysis.c,v 1.44 2001/05/27 06:43:59 xiphmont Exp $
-
- ********************************************************************/
-
-#include <stdio.h>
-#include <string.h>
-#include <math.h>
-#include <ogg/ogg.h>
-#include "vorbis/codec.h"
-#include "registry.h"
-#include "scales.h"
-#include "os.h"
-
-/* decides between modes, dispatches to the appropriate mapping. */
-int vorbis_analysis(vorbis_block *vb,ogg_packet *op){
- vorbis_dsp_state *vd=vb->vd;
- backend_lookup_state *b=vd->backend_state;
- vorbis_info *vi=vd->vi;
- codec_setup_info *ci=vi->codec_setup;
- int type,ret;
- int mode=0;
-
- vb->glue_bits=0;
- vb->time_bits=0;
- vb->floor_bits=0;
- vb->res_bits=0;
-
- /* first things first. Make sure encode is ready */
- oggpack_reset(&vb->opb);
- /* Encode the packet type */
- oggpack_write(&vb->opb,0,1);
-
- /* currently lazy. Short block dispatches to 0, long to 1. */
-
- if(vb->W &&ci->modes>1)mode=1;
- type=ci->map_type[ci->mode_param[mode]->mapping];
- vb->mode=mode;
-
- /* Encode frame mode, pre,post windowsize, then dispatch */
- oggpack_write(&vb->opb,mode,b->modebits);
- if(vb->W){
- oggpack_write(&vb->opb,vb->lW,1);
- oggpack_write(&vb->opb,vb->nW,1);
- /*fprintf(stderr,"*");
- }else{
- fprintf(stderr,".");*/
- }
-
- if((ret=_mapping_P[type]->forward(vb,b->mode[mode])))
- return(ret);
-
- /* set up the packet wrapper */
-
- op->packet=oggpack_get_buffer(&vb->opb);
- op->bytes=oggpack_bytes(&vb->opb);
- op->b_o_s=0;
- op->e_o_s=vb->eofflag;
- op->granulepos=vb->granulepos;
- op->packetno=vb->sequence; /* for sake of completeness */
-
- return(0);
-}
-
-/* there was no great place to put this.... */
-void _analysis_output_always(char *base,int i,float *v,int n,int bark,int dB){
- int j;
- FILE *of;
- char buffer[80];
-
- // if(i==5870){
- sprintf(buffer,"%s_%d.m",base,i);
- of=fopen(buffer,"w");
-
- if(!of)perror("failed to open data dump file");
-
- for(j=0;j<n;j++){
- if(dB && v[j]==0)
- fprintf(of,"\n\n");
- else{
- if(bark)
- fprintf(of,"%g ",toBARK(22050.f*j/n));
- else
- fprintf(of,"%g ",(double)j);
-
- if(dB){
- fprintf(of,"%g\n",todB(v+j));
- }else{
- fprintf(of,"%g\n",v[j]);
- }
- }
- }
- fclose(of);
- // }
-}
-
-void _analysis_output(char *base,int i,float *v,int n,int bark,int dB){
-#ifdef ANALYSIS
- _analysis_output_always(base,i,v,n,bark,dB);
-#endif
-}
-
diff --git a/lib/backends.h b/lib/backends.h
deleted file mode 100644
index e4199d5f..00000000
--- a/lib/backends.h
+++ /dev/null
@@ -1,187 +0,0 @@
-/********************************************************************
- * *
- * 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: libvorbis backend and mapping structures; needed for
- static mode headers
- last mod: $Id: backends.h,v 1.9 2001/06/15 23:31:00 xiphmont Exp $
-
- ********************************************************************/
-
-/* this is exposed up here because we need it for static modes.
- Lookups for each backend aren't exposed because there's no reason
- to do so */
-
-#ifndef _vorbis_backend_h_
-#define _vorbis_backend_h_
-
-#include "codec_internal.h"
-
-/* this would all be simpler/shorter with templates, but.... */
-/* Transform backend generic *************************************/
-
-/* only mdct right now. Flesh it out more if we ever transcend mdct
- in the transform domain */
-
-/* Time backend generic ******************************************/
-typedef struct{
- void (*pack) (vorbis_info_time *,oggpack_buffer *);
- vorbis_info_time *(*unpack)(vorbis_info *,oggpack_buffer *);
- vorbis_look_time *(*look) (vorbis_dsp_state *,vorbis_info_mode *,
- vorbis_info_time *);
- vorbis_info_time *(*copy_info)(vorbis_info_time *);
-
- void (*free_info) (vorbis_info_time *);
- void (*free_look) (vorbis_look_time *);
- int (*forward) (struct vorbis_block *,vorbis_look_time *,
- float *,float *);
- int (*inverse) (struct vorbis_block *,vorbis_look_time *,
- float *,float *);
-} vorbis_func_time;
-
-typedef struct{
- int dummy;
-} vorbis_info_time0;
-
-/* Floor backend generic *****************************************/
-typedef struct{
- void (*pack) (vorbis_info_floor *,oggpack_buffer *);
- vorbis_info_floor *(*unpack)(vorbis_info *,oggpack_buffer *);
- vorbis_look_floor *(*look) (vorbis_dsp_state *,vorbis_info_mode *,
- vorbis_info_floor *);
- vorbis_info_floor *(*copy_info)(vorbis_info_floor *);
- void (*free_info) (vorbis_info_floor *);
- void (*free_look) (vorbis_look_floor *);
- int (*forward) (struct vorbis_block *,vorbis_look_floor *,
- const float *, const float *, /* in */
- const float *, const float *, /* in */
- float *, float *); /* out */
- void *(*inverse1) (struct vorbis_block *,vorbis_look_floor *);
- int (*inverse2) (struct vorbis_block *,vorbis_look_floor *,
- void *buffer,float *);
-} vorbis_func_floor;
-
-typedef struct{
- int order;
- long rate;
- long barkmap;
-
- int ampbits;
- int ampdB;
-
- int numbooks; /* <= 16 */
- int books[16];
-
- float lessthan; /* encode-only config setting hacks for libvorbis */
- float greaterthan; /* encode-only config setting hacks for libvorbis */
-
-} vorbis_info_floor0;
-
-#define VIF_POSIT 63
-#define VIF_CLASS 16
-#define VIF_PARTS 31
-typedef struct{
- int partitions; /* 0 to 31 */
- int partitionclass[VIF_PARTS]; /* 0 to 15 */
-
- int class_dim[VIF_CLASS]; /* 1 to 8 */
- int class_subs[VIF_CLASS]; /* 0,1,2,3 (bits: 1<<n poss) */
- int class_book[VIF_CLASS]; /* subs ^ dim entries */
- int class_subbook[VIF_CLASS][8]; /* [VIF_CLASS][subs] */
-
-
- int mult; /* 1 2 3 or 4 */
- int postlist[VIF_POSIT+2]; /* first two implicit */
-
-
- /* encode side analysis parameters */
- float maxover;
- float maxunder;
- float maxerr;
-
- int twofitminsize;
- int twofitminused;
- int twofitweight;
- float twofitatten;
- int unusedminsize;
- int unusedmin_n;
-
-} vorbis_info_floor1;
-
-/* Residue backend generic *****************************************/
-typedef struct{
- void (*pack) (vorbis_info_residue *,oggpack_buffer *);
- vorbis_info_residue *(*unpack)(vorbis_info *,oggpack_buffer *);
- vorbis_look_residue *(*look) (vorbis_dsp_state *,vorbis_info_mode *,
- vorbis_info_residue *);
- vorbis_info_residue *(*copy_info)(vorbis_info_residue *);
- void (*free_info) (vorbis_info_residue *);
- void (*free_look) (vorbis_look_residue *);
- int (*forward) (struct vorbis_block *,vorbis_look_residue *,
- float **,int *,int);
- int (*inverse) (struct vorbis_block *,vorbis_look_residue *,
- float **,int *,int);
-} vorbis_func_residue;
-
-typedef struct vorbis_info_residue0{
-/* block-partitioned VQ coded straight residue */
- long begin;
- long end;
-
- /* first stage (lossless partitioning) */
- int grouping; /* group n vectors per partition */
- int partitions; /* possible codebooks for a partition */
- int groupbook; /* huffbook for partitioning */
- int secondstages[64]; /* expanded out to pointers in lookup */
- int booklist[256]; /* list of second stage books */
-
- /* encode-only heuristic settings */
- float entmax[64]; /* book entropy threshholds*/
- float ampmax[64]; /* book amp threshholds*/
- int subgrp[64]; /* book heuristic subgroup size */
- int blimit[64]; /* subgroup position limits */
-
-} vorbis_info_residue0;
-
-/* Mapping backend generic *****************************************/
-typedef struct{
- void (*pack) (vorbis_info *,vorbis_info_mapping *,
- oggpack_buffer *);
- vorbis_info_mapping *(*unpack)(vorbis_info *,oggpack_buffer *);
- vorbis_look_mapping *(*look) (vorbis_dsp_state *,vorbis_info_mode *,
- vorbis_info_mapping *);
- vorbis_info_mapping *(*copy_info)(vorbis_info_mapping *);
- void (*free_info) (vorbis_info_mapping *);
- void (*free_look) (vorbis_look_mapping *);
- int (*forward) (struct vorbis_block *vb,vorbis_look_mapping *);
- int (*inverse) (struct vorbis_block *vb,vorbis_look_mapping *);
-} vorbis_func_mapping;
-
-typedef struct vorbis_info_mapping0{
- int submaps; /* <= 16 */
- int chmuxlist[256]; /* up to 256 channels in a Vorbis stream */
-
- int timesubmap[16]; /* [mux] */
- int floorsubmap[16]; /* [mux] submap to floors */
- int residuesubmap[16]; /* [mux] submap to residue */
- int psysubmap[16]; /* [mux]; encode only */
-
- int coupling_steps;
- int coupling_mag[256];
- int coupling_ang[256];
-} vorbis_info_mapping0;
-
-#endif
-
-
-
-
-
diff --git a/lib/barkmel.c b/lib/barkmel.c
deleted file mode 100644
index d458614d..00000000
--- a/lib/barkmel.c
+++ /dev/null
@@ -1,64 +0,0 @@
-/********************************************************************
- * *
- * 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: bark scale utility
- last mod: $Id: barkmel.c,v 1.7 2001/06/15 21:15:39 xiphmont Exp $
-
- ********************************************************************/
-
-#include <stdio.h>
-#include "scales.h"
-int main(){
- int i;
- double rate;
- for(i=64;i<32000;i*=2){
- rate=48000.f;
- fprintf(stderr,"rate=%gHz, block=%d, f(1)=%.2gHz bark(1)=%.2g (of %.2g)\n",
- rate,i,rate/2 / (i/2),toBARK(rate/2 /(i/2)),toBARK(rate/2));
-
- rate=44100.f;
- fprintf(stderr,"rate=%gHz, block=%d, f(1)=%.2gHz bark(1)=%.2g (of %.2g)\n",
- rate,i,rate/2 / (i/2),toBARK(rate/2 /(i/2)),toBARK(rate/2));
-
- rate=32000.f;
- fprintf(stderr,"rate=%gHz, block=%d, f(1)=%.2gHz bark(1)=%.2g (of %.2g)\n",
- rate,i,rate/2 / (i/2),toBARK(rate/2 /(i/2)),toBARK(rate/2));
-
- rate=22050.f;
- fprintf(stderr,"rate=%gHz, block=%d, f(1)=%.2gHz bark(1)=%.2g (of %.2g)\n",
- rate,i,rate/2 / (i/2),toBARK(rate/2 /(i/2)),toBARK(rate/2));
-
- rate=16000.f;
- fprintf(stderr,"rate=%gHz, block=%d, f(1)=%.2gHz bark(1)=%.2g (of %.2g)\n",
- rate,i,rate/2 / (i/2),toBARK(rate/2 /(i/2)),toBARK(rate/2));
-
- rate=11025.f;
- fprintf(stderr,"rate=%gHz, block=%d, f(1)=%.2gHz bark(1)=%.2g (of %.2g)\n",
- rate,i,rate/2 / (i/2),toBARK(rate/2 /(i/2)),toBARK(rate/2));
-
- rate=8000.f;
- fprintf(stderr,"rate=%gHz, block=%d, f(1)=%.2gHz bark(1)=%.2g (of %.2g)\n\n",
- rate,i,rate/2 / (i/2),toBARK(rate/2 /(i/2)),toBARK(rate/2));
-
-
- }
- {
- float i;
- int j;
- for(i=0.,j=0;i<28;i+=1.,j++){
- fprintf(stderr,"(%d) bark=%f %gHz (%d of 128)\n",
- j,i,fromBARK(i),(int)(fromBARK(i)/22050.*128.));
- }
- }
- return(0);
-}
-
diff --git a/lib/bitbuffer.c b/lib/bitbuffer.c
deleted file mode 100644
index 60580443..00000000
--- a/lib/bitbuffer.c
+++ /dev/null
@@ -1,67 +0,0 @@
-/********************************************************************
- * *
- * 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: flexible, delayed bitpacking abstraction
- last mod: $Id: bitbuffer.c,v 1.5 2001/02/26 03:50:41 xiphmont Exp $
-
- ********************************************************************/
-
-#include <string.h>
-#include <ogg/ogg.h>
-#include <vorbis/codec.h>
-#include "misc.h"
-#include "bitbuffer.h"
-
-/* done carefully to do two things:
- 1) no realloc
- 2) draws from our exact-size vorbis_block pool
-*/
-
-void bitbuf_init(vorbis_bitbuffer *vbb,vorbis_block *vb){
- memset(vbb,0,sizeof(vorbis_bitbuffer));
- vbb->vb=vb;
- vbb->first=vbb->last=_vorbis_block_alloc(vb,sizeof(vorbis_bitbuffer_chain));
- vbb->first->next=0; /* overengineering */
-}
-
-void bitbuf_write(vorbis_bitbuffer *vbb,unsigned long word,int length){
- vorbis_block *vb=vbb->vb;
- if(vbb->ptr>=_VBB_ALLOCSIZE){
- vbb->last->next=_vorbis_block_alloc(vb,sizeof(vorbis_bitbuffer_chain));
- vbb->last=vbb->last->next;
- vbb->last->next=0; /* overengineering */
- vbb->ptr=0;
- }
- vbb->last->words[vbb->ptr]=word;
- vbb->last->bits[vbb->ptr++]=length;
-}
-
-void bitbuf_pack(oggpack_buffer *dest,vorbis_bitbuffer *vbb){
- vorbis_bitbuffer_chain *vbc=vbb->first;
- int i;
-
- while(vbc->next){
- for(i=0;i<_VBB_ALLOCSIZE;i++)
- oggpack_write(dest,vbc->words[i],vbc->bits[i]);
- vbc=vbc->next;
- }
- for(i=0;i<vbb->ptr;i++)
- oggpack_write(dest,vbc->words[i],vbc->bits[i]);
-}
-
-/* codebook variants for encoding to the bitbuffer */
-
-int vorbis_book_bufencode(codebook *book, int a, vorbis_bitbuffer *b){
- bitbuf_write(b,book->codelist[a],book->c->lengthlist[a]);
- return(book->c->lengthlist[a]);
-}
-
diff --git a/lib/bitbuffer.h b/lib/bitbuffer.h
deleted file mode 100644
index 3d21baa4..00000000
--- a/lib/bitbuffer.h
+++ /dev/null
@@ -1,44 +0,0 @@
-/********************************************************************
- * *
- * 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: flexible, delayed bitpacking abstraction
- last mod: $Id: bitbuffer.h,v 1.3 2001/02/26 03:50:41 xiphmont Exp $
-
- ********************************************************************/
-
-#ifndef _V_BITBUF_
-#define _V_BITBUF_
-
-#include "codebook.h"
-
-#define _VBB_ALLOCSIZE 128
-typedef struct vorbis_bitbuffer_chain{
- ogg_uint32_t words[_VBB_ALLOCSIZE];
- int bits[_VBB_ALLOCSIZE];
- struct vorbis_bitbuffer_chain *next;
-} vorbis_bitbuffer_chain;
-
-typedef struct vorbis_bitbuffer{
- long ptr;
- vorbis_bitbuffer_chain *first;
- vorbis_bitbuffer_chain *last;
- vorbis_block *vb;
-} vorbis_bitbuffer;
-
-void bitbuf_init(vorbis_bitbuffer *vbb,vorbis_block *vb);
-extern void bitbuf_write(vorbis_bitbuffer *vbb,unsigned long word,int length);
-extern void bitbuf_pack(oggpack_buffer *dest,vorbis_bitbuffer *source);
-
-
-extern int vorbis_book_bufencode(codebook *book, int a, vorbis_bitbuffer *b);
-
-#endif
diff --git a/lib/block.c b/lib/block.c
deleted file mode 100644
index 0bba4140..00000000
--- a/lib/block.c
+++ /dev/null
@@ -1,807 +0,0 @@
-/********************************************************************
- * *
- * 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: PCM data vector blocking, windowing and dis/reassembly
- last mod: $Id: block.c,v 1.48 2001/05/27 06:43:59 xiphmont Exp $
-
- Handle windowing, overlap-add, etc of the PCM vectors. This is made
- more amusing by Vorbis' current two allowed block sizes.
-
- ********************************************************************/
-
-#include <stdio.h>
-#include <stdlib.h>
-#include <string.h>
-#include <ogg/ogg.h>
-#include "vorbis/codec.h"
-#include "codec_internal.h"
-
-#include "window.h"
-#include "envelope.h"
-#include "mdct.h"
-#include "lpc.h"
-#include "registry.h"
-#include "codebook.h"
-#include "misc.h"
-#include "os.h"
-#include "psy.h"
-
-static int ilog2(unsigned int v){
- int ret=0;
- while(v>1){
- ret++;
- v>>=1;
- }
- return(ret);
-}
-
-/* pcm accumulator examples (not exhaustive):
-
- <-------------- lW ---------------->
- <--------------- W ---------------->
-: .....|..... _______________ |
-: .''' | '''_--- | |\ |
-:.....''' |_____--- '''......| | \_______|
-:.................|__________________|_______|__|______|
- |<------ Sl ------>| > Sr < |endW
- |beginSl |endSl | |endSr
- |beginW |endlW |beginSr
-
-
- |< lW >|
- <--------------- W ---------------->
- | | .. ______________ |
- | | ' `/ | ---_ |
- |___.'___/`. | ---_____|
- |_______|__|_______|_________________|
- | >|Sl|< |<------ Sr ----->|endW
- | | |endSl |beginSr |endSr
- |beginW | |endlW
- mult[0] |beginSl mult[n]
-
- <-------------- lW ----------------->
- |<--W-->|
-: .............. ___ | |
-: .''' |`/ \ | |
-:.....''' |/`....\|...|
-:.........................|___|___|___|
- |Sl |Sr |endW
- | | |endSr
- | |beginSr
- | |endSl
- |beginSl
- |beginW
-*/
-
-/* block abstraction setup *********************************************/
-
-#ifndef WORD_ALIGN
-#define WORD_ALIGN 8
-#endif
-
-int vorbis_block_init(vorbis_dsp_state *v, vorbis_block *vb){
- memset(vb,0,sizeof(vorbis_block));
- vb->vd=v;
- vb->localalloc=0;
- vb->localstore=NULL;
- if(v->analysisp){
- oggpack_writeinit(&vb->opb);
- vb->internal=_ogg_calloc(1,sizeof(vorbis_block_internal));
- ((vorbis_block_internal *)vb->internal)->ampmax=-9999;
- }
-
- return(0);
-}
-
-void *_vorbis_block_alloc(vorbis_block *vb,long bytes){
- bytes=(bytes+(WORD_ALIGN-1)) & ~(WORD_ALIGN-1);
- if(bytes+vb->localtop>vb->localalloc){
- /* can't just _ogg_realloc... there are outstanding pointers */
- if(vb->localstore){
- struct alloc_chain *link=_ogg_malloc(sizeof(struct alloc_chain));
- vb->totaluse+=vb->localtop;
- link->next=vb->reap;
- link->ptr=vb->localstore;
- vb->reap=link;
- }
- /* highly conservative */
- vb->localalloc=bytes;
- vb->localstore=_ogg_malloc(vb->localalloc);
- vb->localtop=0;
- }
- {
- void *ret=(void *)(((char *)vb->localstore)+vb->localtop);
- vb->localtop+=bytes;
- return ret;
- }
-}
-
-/* reap the chain, pull the ripcord */
-void _vorbis_block_ripcord(vorbis_block *vb){
- /* reap the chain */
- struct alloc_chain *reap=vb->reap;
- while(reap){
- struct alloc_chain *next=reap->next;
- _ogg_free(reap->ptr);
- memset(reap,0,sizeof(struct alloc_chain));
- _ogg_free(reap);
- reap=next;
- }
- /* consolidate storage */
- if(vb->totaluse){
- vb->localstore=_ogg_realloc(vb->localstore,vb->totaluse+vb->localalloc);
- vb->localalloc+=vb->totaluse;
- vb->totaluse=0;
- }
-
- /* pull the ripcord */
- vb->localtop=0;
- vb->reap=NULL;
-}
-
-int vorbis_block_clear(vorbis_block *vb){
- if(vb->vd)
- if(vb->vd->analysisp)
- oggpack_writeclear(&vb->opb);
- _vorbis_block_ripcord(vb);
- if(vb->localstore)_ogg_free(vb->localstore);
- if(vb->internal)_ogg_free(vb->internal);
-
- memset(vb,0,sizeof(vorbis_block));
- return(0);
-}
-
-/* Analysis side code, but directly related to blocking. Thus it's
- here and not in analysis.c (which is for analysis transforms only).
- The init is here because some of it is shared */
-
-static int _vds_shared_init(vorbis_dsp_state *v,vorbis_info *vi,int encp){
- int i;
- codec_setup_info *ci=vi->codec_setup;
- backend_lookup_state *b=NULL;
-
- memset(v,0,sizeof(vorbis_dsp_state));
- b=v->backend_state=_ogg_calloc(1,sizeof(backend_lookup_state));
-
- v->vi=vi;
- b->modebits=ilog2(ci->modes);
- b->ampmax=-9999;
-
- b->transform[0]=_ogg_calloc(VI_TRANSFORMB,sizeof(vorbis_look_transform *));
- b->transform[1]=_ogg_calloc(VI_TRANSFORMB,sizeof(vorbis_look_transform *));
-
- /* MDCT is tranform 0 */
-
- b->transform[0][0]=_ogg_calloc(1,sizeof(mdct_lookup));
- b->transform[1][0]=_ogg_calloc(1,sizeof(mdct_lookup));
- mdct_init(b->transform[0][0],ci->blocksizes[0]);
- mdct_init(b->transform[1][0],ci->blocksizes[1]);
-
- b->window[0][0][0]=_ogg_calloc(VI_WINDOWB,sizeof(float *));
- b->window[0][0][1]=b->window[0][0][0];
- b->window[0][1][0]=b->window[0][0][0];
- b->window[0][1][1]=b->window[0][0][0];
- b->window[1][0][0]=_ogg_calloc(VI_WINDOWB,sizeof(float *));
- b->window[1][0][1]=_ogg_calloc(VI_WINDOWB,sizeof(float *));
- b->window[1][1][0]=_ogg_calloc(VI_WINDOWB,sizeof(float *));
- b->window[1][1][1]=_ogg_calloc(VI_WINDOWB,sizeof(float *));
-
- for(i=0;i<VI_WINDOWB;i++){
- b->window[0][0][0][i]=
- _vorbis_window(i,ci->blocksizes[0],ci->blocksizes[0]/2,ci->blocksizes[0]/2);
- b->window[1][0][0][i]=
- _vorbis_window(i,ci->blocksizes[1],ci->blocksizes[0]/2,ci->blocksizes[0]/2);
- b->window[1][0][1][i]=
- _vorbis_window(i,ci->blocksizes[1],ci->blocksizes[0]/2,ci->blocksizes[1]/2);
- b->window[1][1][0][i]=
- _vorbis_window(i,ci->blocksizes[1],ci->blocksizes[1]/2,ci->blocksizes[0]/2);
- b->window[1][1][1][i]=
- _vorbis_window(i,ci->blocksizes[1],ci->blocksizes[1]/2,ci->blocksizes[1]/2);
- }
-
- if(encp){ /* encode/decode differ here */
- /* finish the codebooks */
- b->fullbooks=_ogg_calloc(ci->books,sizeof(codebook));
- for(i=0;i<ci->books;i++)
- vorbis_book_init_encode(b->fullbooks+i,ci->book_param[i]);
- v->analysisp=1;
- }else{
- /* finish the codebooks */
- b->fullbooks=_ogg_calloc(ci->books,sizeof(codebook));
- for(i=0;i<ci->books;i++)
- vorbis_book_init_decode(b->fullbooks+i,ci->book_param[i]);
- }
-
- /* initialize the storage vectors to a decent size greater than the
- minimum */
-
- v->pcm_storage=8192; /* we'll assume later that we have
- a minimum of twice the blocksize of
- accumulated samples in analysis */
- v->pcm=_ogg_malloc(vi->channels*sizeof(float *));
- v->pcmret=_ogg_malloc(vi->channels*sizeof(float *));
- {
- int i;
- for(i=0;i<vi->channels;i++)
- v->pcm[i]=_ogg_calloc(v->pcm_storage,sizeof(float));
- }
-
- /* all 1 (large block) or 0 (small block) */
- /* explicitly set for the sake of clarity */
- v->lW=0; /* previous window size */
- v->W=0; /* current window size */
-
- /* all vector indexes */
- v->centerW=ci->blocksizes[1]/2;
-
- v->pcm_current=v->centerW;
-
- /* initialize all the mapping/backend lookups */
- b->mode=_ogg_calloc(ci->modes,sizeof(vorbis_look_mapping *));
- for(i=0;i<ci->modes;i++){
- int mapnum=ci->mode_param[i]->mapping;
- int maptype=ci->map_type[mapnum];
- b->mode[i]=_mapping_P[maptype]->look(v,ci->mode_param[i],
- ci->map_param[mapnum]);
- }
-
- return(0);
-}
-
-/* arbitrary settings and spec-mandated numbers get filled in here */
-int vorbis_analysis_init(vorbis_dsp_state *v,vorbis_info *vi){
- backend_lookup_state *b=NULL;
-
- _vds_shared_init(v,vi,1);
- b=v->backend_state;
-
- /* Initialize the envelope state storage */
- b->ve=_ogg_calloc(1,sizeof(envelope_lookup));
- _ve_envelope_init(b->ve,vi);
-
- return(0);
-}
-
-void vorbis_dsp_clear(vorbis_dsp_state *v){
- int i,j,k;
- if(v){
- vorbis_info *vi=v->vi;
- codec_setup_info *ci=(vi?vi->codec_setup:NULL);
- backend_lookup_state *b=v->backend_state;
-
- if(b){
- if(b->window[0][0][0]){
- for(i=0;i<VI_WINDOWB;i++)
- if(b->window[0][0][0][i])_ogg_free(b->window[0][0][0][i]);
- _ogg_free(b->window[0][0][0]);
-
- for(j=0;j<2;j++)
- for(k=0;k<2;k++){
- for(i=0;i<VI_WINDOWB;i++)
- if(b->window[1][j][k][i])_ogg_free(b->window[1][j][k][i]);
- _ogg_free(b->window[1][j][k]);
- }
- }
-
- if(b->ve){
- _ve_envelope_clear(b->ve);
- _ogg_free(b->ve);
- }
-
- if(b->transform[0]){
- mdct_clear(b->transform[0][0]);
- _ogg_free(b->transform[0][0]);
- _ogg_free(b->transform[0]);
- }
- if(b->transform[1]){
- mdct_clear(b->transform[1][0]);
- _ogg_free(b->transform[1][0]);
- _ogg_free(b->transform[1]);
- }
-
- }
-
- if(v->pcm){
- for(i=0;i<vi->channels;i++)
- if(v->pcm[i])_ogg_free(v->pcm[i]);
- _ogg_free(v->pcm);
- if(v->pcmret)_ogg_free(v->pcmret);
- }
-
- /* free mode lookups; these are actually vorbis_look_mapping structs */
- if(ci){
- for(i=0;i<ci->modes;i++){
- int mapnum=ci->mode_param[i]->mapping;
- int maptype=ci->map_type[mapnum];
- if(b && b->mode)_mapping_P[maptype]->free_look(b->mode[i]);
- }
- /* free codebooks */
- for(i=0;i<ci->books;i++)
- if(b && b->fullbooks)vorbis_book_clear(b->fullbooks+i);
- }
-
- if(b){
- if(b->mode)_ogg_free(b->mode);
- if(b->fullbooks)_ogg_free(b->fullbooks);
-
- /* free header, header1, header2 */
- if(b->header)_ogg_free(b->header);
- if(b->header1)_ogg_free(b->header1);
- if(b->header2)_ogg_free(b->header2);
- _ogg_free(b);
- }
-
- memset(v,0,sizeof(vorbis_dsp_state));
- }
-}
-
-float **vorbis_analysis_buffer(vorbis_dsp_state *v, int vals){
- int i;
- vorbis_info *vi=v->vi;
- backend_lookup_state *b=v->backend_state;
-
- /* free header, header1, header2 */
- if(b->header)_ogg_free(b->header);b->header=NULL;
- if(b->header1)_ogg_free(b->header1);b->header1=NULL;
- if(b->header2)_ogg_free(b->header2);b->header2=NULL;
-
- /* Do we have enough storage space for the requested buffer? If not,
- expand the PCM (and envelope) storage */
-
- if(v->pcm_current+vals>=v->pcm_storage){
- v->pcm_storage=v->pcm_current+vals*2;
-
- for(i=0;i<vi->channels;i++){
- v->pcm[i]=_ogg_realloc(v->pcm[i],v->pcm_storage*sizeof(float));
- }
- }
-
- for(i=0;i<vi->channels;i++)
- v->pcmret[i]=v->pcm[i]+v->pcm_current;
-
- return(v->pcmret);
-}
-
-static void _preextrapolate_helper(vorbis_dsp_state *v){
- int i;
- int order=32;
- float *lpc=alloca(order*sizeof(float));
- float *work=alloca(v->pcm_current*sizeof(float));
- long j;
- v->preextrapolate=1;
-
- if(v->pcm_current-v->centerW>order*2){ /* safety */
- for(i=0;i<v->vi->channels;i++){
-
- /* need to run the extrapolation in reverse! */
- for(j=0;j<v->pcm_current;j++)
- work[j]=v->pcm[i][v->pcm_current-j-1];
-
- /* prime as above */
- vorbis_lpc_from_data(work,lpc,v->pcm_current-v->centerW,order);
-
- /* run the predictor filter */
- vorbis_lpc_predict(lpc,work+v->pcm_current-v->centerW-order,
- order,
- work+v->pcm_current-v->centerW,
- v->centerW);
- for(j=0;j<v->pcm_current;j++)
- v->pcm[i][v->pcm_current-j-1]=work[j];
- }
- }
-}
-
-
-/* call with val<=0 to set eof */
-
-int vorbis_analysis_wrote(vorbis_dsp_state *v, int vals){
- vorbis_info *vi=v->vi;
- codec_setup_info *ci=vi->codec_setup;
-
- if(vals<=0){
- int order=32;
- int i;
- float *lpc=alloca(order*sizeof(float));
-
- /* if it wasn't done earlier (very short sample) */
- if(!v->preextrapolate)
- _preextrapolate_helper(v);
-
- /* We're encoding the end of the stream. Just make sure we have
- [at least] a full block of zeroes at the end. */
- /* actually, we don't want zeroes; that could drop a large
- amplitude off a cliff, creating spread spectrum noise that will
- suck to encode. Extrapolate for the sake of cleanliness. */
-
- vorbis_analysis_buffer(v,ci->blocksizes[1]*2);
- v->eofflag=v->pcm_current;
- v->pcm_current+=ci->blocksizes[1]*2;
-
- for(i=0;i<vi->channels;i++){
- if(v->eofflag>order*2){
- /* extrapolate with LPC to fill in */
- long n;
-
- /* make a predictor filter */
- n=v->eofflag;
- if(n>ci->blocksizes[1])n=ci->blocksizes[1];
- vorbis_lpc_from_data(v->pcm[i]+v->eofflag-n,lpc,n,order);
-
- /* run the predictor filter */
- vorbis_lpc_predict(lpc,v->pcm[i]+v->eofflag-order,order,
- v->pcm[i]+v->eofflag,v->pcm_current-v->eofflag);
- }else{
- /* not enough data to extrapolate (unlikely to happen due to
- guarding the overlap, but bulletproof in case that
- assumtion goes away). zeroes will do. */
- memset(v->pcm[i]+v->eofflag,0,
- (v->pcm_current-v->eofflag)*sizeof(float));
-
- }
- }
- }else{
-
- if(v->pcm_current+vals>v->pcm_storage)
- return(OV_EINVAL);
-
- v->pcm_current+=vals;
-
- /* we may want to reverse extrapolate the beginning of a stream
- too... in case we're beginning on a cliff! */
- /* clumsy, but simple. It only runs once, so simple is good. */
- if(!v->preextrapolate && v->pcm_current-v->centerW>ci->blocksizes[1])
- _preextrapolate_helper(v);
-
- }
- return(0);
-}
-
-/* do the deltas, envelope shaping, pre-echo and determine the size of
- the next block on which to continue analysis */
-int vorbis_analysis_blockout(vorbis_dsp_state *v,vorbis_block *vb){
- int i;
- vorbis_info *vi=v->vi;
- codec_setup_info *ci=vi->codec_setup;
- backend_lookup_state *b=v->backend_state;
- long beginW=v->centerW-ci->blocksizes[v->W]/2,centerNext;
-
- /* check to see if we're started... */
- if(!v->preextrapolate)return(0);
-
- /* check to see if we're done... */
- if(v->eofflag==-1)return(0);
-
- /* By our invariant, we have lW, W and centerW set. Search for
- the next boundary so we can determine nW (the next window size)
- which lets us compute the shape of the current block's window */
-
- if(ci->blocksizes[0]<ci->blocksizes[1]){
- long largebound;
- long bp;
-
- if(v->W)
- /* min boundary; nW large, next small */
- largebound=v->centerW+ci->blocksizes[1]*3/4+ci->blocksizes[0]/4;
- else
- /* min boundary; nW large, next small */
- largebound=v->centerW+ci->blocksizes[1]/2+ci->blocksizes[0]/2;
-
- bp=_ve_envelope_search(v,largebound);
- if(bp==-1)return(0); /* not enough data currently to search for a
- full long block */
- v->nW=bp;
-
- }else
- v->nW=0;
-
- centerNext=v->centerW+ci->blocksizes[v->W]/4+ci->blocksizes[v->nW]/4;
-
- {
- /* center of next block + next block maximum right side. */
-
- long blockbound=centerNext+ci->blocksizes[v->nW]/2;
- if(v->pcm_current<blockbound)return(0); /* not enough data yet;
- although this check is
- less strict that the
- _ve_envelope_search,
- the search is not run
- if we only use one
- block size */
- }
-
- /* fill in the block. Note that for a short window, lW and nW are *short*
- regardless of actual settings in the stream */
-
- _vorbis_block_ripcord(vb);
- if(v->W){
- vb->lW=v->lW;
- vb->W=v->W;
- vb->nW=v->nW;
- }else{
- vb->lW=0;
- vb->W=v->W;
- vb->nW=0;
- }
- vb->vd=v;
- vb->sequence=v->sequence;
- vb->granulepos=v->granulepos;
- vb->pcmend=ci->blocksizes[v->W];
-
-
- /* copy the vectors; this uses the local storage in vb */
- {
- vorbis_block_internal *vbi=(vorbis_block_internal *)vb->internal;
-
- /* this tracks 'strongest peak' for later psychoacoustics */
- if(vbi->ampmax>b->ampmax)b->ampmax=vbi->ampmax;
- b->ampmax=_vp_ampmax_decay(b->ampmax,v);
- vbi->ampmax=b->ampmax;
-
- vb->pcm=_vorbis_block_alloc(vb,sizeof(float *)*vi->channels);
- vbi->pcmdelay=_vorbis_block_alloc(vb,sizeof(float *)*vi->channels);
- for(i=0;i<vi->channels;i++){
- vbi->pcmdelay[i]=
- _vorbis_block_alloc(vb,(vb->pcmend+beginW)*sizeof(float));
- memcpy(vbi->pcmdelay[i],v->pcm[i],(vb->pcmend+beginW)*sizeof(float));
- vb->pcm[i]=vbi->pcmdelay[i]+beginW;
-
- /* before we added the delay
- vb->pcm[i]=_vorbis_block_alloc(vb,vb->pcmend*sizeof(float));
- memcpy(vb->pcm[i],v->pcm[i]+beginW,ci->blocksizes[v->W]*sizeof(float));
- */
-
- }
- }
-
- /* handle eof detection: eof==0 means that we've not yet received EOF
- eof>0 marks the last 'real' sample in pcm[]
- eof<0 'no more to do'; doesn't get here */
-
- if(v->eofflag){
- if(v->centerW>=v->eofflag){
- v->eofflag=-1;
- vb->eofflag=1;
- return(1);
- }
- }
-
- /* advance storage vectors and clean up */
- {
- int new_centerNext=ci->blocksizes[1]/2+ci->delaycache;
- int movementW=centerNext-new_centerNext;
-
- if(movementW>0){
-
- _ve_envelope_shift(b->ve,movementW);
- v->pcm_current-=movementW;
-
- for(i=0;i<vi->channels;i++)
- memmove(v->pcm[i],v->pcm[i]+movementW,
- v->pcm_current*sizeof(float));
-
-
- v->lW=v->W;
- v->W=v->nW;
- v->centerW=new_centerNext;
-
- v->sequence++;
-
- if(v->eofflag){
- v->eofflag-=movementW;
- /* do not add padding to end of stream! */
- if(v->centerW>=v->eofflag){
- v->granulepos+=movementW-(v->centerW-v->eofflag);
- }else{
- v->granulepos+=movementW;
- }
- }else{
- v->granulepos+=movementW;
- }
- }
- }
-
- /* done */
- return(1);
-}
-
-int vorbis_synthesis_init(vorbis_dsp_state *v,vorbis_info *vi){
- codec_setup_info *ci=vi->codec_setup;
- _vds_shared_init(v,vi,0);
-
- v->pcm_returned=-1;
- v->granulepos=-1;
- v->sequence=-1;
-
- return(0);
-}
-
-/* Unlike in analysis, the window is only partially applied for each
- block. The time domain envelope is not yet handled at the point of
- calling (as it relies on the previous block). */
-
-int vorbis_synthesis_blockin(vorbis_dsp_state *v,vorbis_block *vb){
- vorbis_info *vi=v->vi;
- codec_setup_info *ci=vi->codec_setup;
-
- /* Shift out any PCM that we returned previously */
- /* centerW is currently the center of the last block added */
-
- if(v->centerW>ci->blocksizes[1]/2 &&
- /* Quick additional hack; to avoid *alot* of shifts, use an
- oversized buffer. This increases memory usage, but doesn't make
- much difference wrt L1/L2 cache pressure. */
- v->pcm_returned>8192){
-
- /* don't shift too much; we need to have a minimum PCM buffer of
- 1/2 long block */
-
- int shiftPCM=v->centerW-ci->blocksizes[1]/2;
- shiftPCM=(v->pcm_returned<shiftPCM?v->pcm_returned:shiftPCM);
-
- v->pcm_current-=shiftPCM;
- v->centerW-=shiftPCM;
- v->pcm_returned-=shiftPCM;
-
- if(shiftPCM){
- int i;
- for(i=0;i<vi->channels;i++)
- memmove(v->pcm[i],v->pcm[i]+shiftPCM,
- v->pcm_current*sizeof(float));
- }
- }
-
- v->lW=v->W;
- v->W=vb->W;
- v->nW=-1;
-
- v->glue_bits+=vb->glue_bits;
- v->time_bits+=vb->time_bits;
- v->floor_bits+=vb->floor_bits;
- v->res_bits+=vb->res_bits;
-
- if(v->sequence+1 != vb->sequence)v->granulepos=-1; /* out of sequence;
- lose count */
-
- v->sequence=vb->sequence;
-
- {
- int sizeW=ci->blocksizes[v->W];
- int centerW=v->centerW+ci->blocksizes[v->lW]/4+sizeW/4;
- int beginW=centerW-sizeW/2;
- int endW=beginW+sizeW;
- int beginSl;
- int endSl;
- int i,j;
-
- /* Do we have enough PCM/mult storage for the block? */
- if(endW>v->pcm_storage){
- /* expand the storage */
- v->pcm_storage=endW+ci->blocksizes[1];
-
- for(i=0;i<vi->channels;i++)
- v->pcm[i]=_ogg_realloc(v->pcm[i],v->pcm_storage*sizeof(float));
- }
-
- /* overlap/add PCM */
-
- switch(v->W){
- case 0:
- beginSl=0;
- endSl=ci->blocksizes[0]/2;
- break;
- case 1:
- beginSl=ci->blocksizes[1]/4-ci->blocksizes[v->lW]/4;
- endSl=beginSl+ci->blocksizes[v->lW]/2;
- break;
- default:
- return(-1);
- }
-
- for(j=0;j<vi->channels;j++){
- static int seq=0;
- float *pcm=v->pcm[j]+beginW;
- float *p=vb->pcm[j];
-
- /* the overlap/add section */
- for(i=beginSl;i<endSl;i++)
- pcm[i]+=p[i];
- /* the remaining section */
- for(;i<sizeW;i++)
- pcm[i]=p[i];
-
- _analysis_output("lapped",seq,pcm,sizeW,0,0);
- _analysis_output("buffered",seq++,v->pcm[j],sizeW+beginW,0,0);
-
- }
-
- /* deal with initial packet state; we do this using the explicit
- pcm_returned==-1 flag otherwise we're sensitive to first block
- being short or long */
-
- if(v->pcm_returned==-1)
- v->pcm_returned=centerW;
-
- /* track the frame number... This is for convenience, but also
- making sure our last packet doesn't end with added padding. If
- the last packet is partial, the number of samples we'll have to
- return will be past the vb->granulepos.
-
- This is not foolproof! It will be confused if we begin
- decoding at the last page after a seek or hole. In that case,
- we don't have a starting point to judge where the last frame
- is. For this reason, vorbisfile will always try to make sure
- it reads the last two marked pages in proper sequence */
-
- if(v->granulepos==-1)
- if(vb->granulepos==-1){
- v->granulepos=0;
- }else{
- v->granulepos=vb->granulepos;
- }
- else{
- v->granulepos+=(centerW-v->centerW);
- if(vb->granulepos!=-1 && v->granulepos!=vb->granulepos){
-
- if(v->granulepos>vb->granulepos){
- long extra=v->granulepos-vb->granulepos;
-
- if(vb->eofflag){
- /* partial last frame. Strip the extra samples off */
- centerW-=extra;
- }else if(vb->sequence == 1){
- /* ^^^ argh, this can be 1 from seeking! */
-
-
- /* partial first frame. Discard extra leading samples */
- v->pcm_returned+=extra;
- if(v->pcm_returned>centerW)v->pcm_returned=centerW;
-
- }
-
- }/* else{ Shouldn't happen *unless* the bitstream is out of
- spec. Either way, believe the bitstream } */
- v->granulepos=vb->granulepos;
- }
- }
-
- /* Update, cleanup */
-
- v->centerW=centerW;
- v->pcm_current=endW;
-
- if(vb->eofflag)v->eofflag=1;
- }
-
- return(0);
-}
-
-/* pcm==NULL indicates we just want the pending samples, no more */
-int vorbis_synthesis_pcmout(vorbis_dsp_state *v,float ***pcm){
- vorbis_info *vi=v->vi;
- if(v->pcm_returned>-1 && v->pcm_returned<v->centerW){
- if(pcm){
- int i;
- for(i=0;i<vi->channels;i++)
- v->pcmret[i]=v->pcm[i]+v->pcm_returned;
- *pcm=v->pcmret;
- }
- return(v->centerW-v->pcm_returned);
- }
- return(0);
-}
-
-int vorbis_synthesis_read(vorbis_dsp_state *v,int bytes){
- if(bytes && v->pcm_returned+bytes>v->centerW)return(OV_EINVAL);
- v->pcm_returned+=bytes;
- return(0);
-}
-
diff --git a/lib/books/.cvsignore b/lib/books/.cvsignore
deleted file mode 100644
index 282522db..00000000
--- a/lib/books/.cvsignore
+++ /dev/null
@@ -1,2 +0,0 @@
-Makefile
-Makefile.in
diff --git a/lib/books/Makefile.am b/lib/books/Makefile.am
deleted file mode 100644
index 2427a5bd..00000000
--- a/lib/books/Makefile.am
+++ /dev/null
@@ -1,33 +0,0 @@
-## Process this file with automake to produce Makefile.in
-
-AUTOMAKE_OPTIONS = foreign
-
-EXTRA_DIST = lsp12_0.vqh lsp12_1.vqh lsp30_0.vqh lsp30_1.vqh lsp9_0.vqh\
- lsp9_1.vqh res0_128_1024_1.vqh res0_128_1024_2.vqh res0_128_1024_3.vqh\
- res0_128_1024_4.vqh res0_128_1024_5.vqh res0_128_1024_6.vqh\
- res0_128_1024_7.vqh res0_128_1024_8.vqh res0_128_1024_9.vqh\
- res0_128_1024aux.vqh res0_128_128_1.vqh res0_128_128_2.vqh\
- res0_128_128_3.vqh res0_128_128_4.vqh res0_128_128_5.vqh\
- res0_128_128aux.vqh res0_160_1024_1.vqh res0_160_1024_2.vqh\
- res0_160_1024_3.vqh res0_160_1024_4.vqh res0_160_1024_5.vqh\
- res0_160_1024_6.vqh res0_160_1024_7.vqh res0_160_1024_8.vqh\
- res0_160_1024_9.vqh res0_160_1024aux.vqh res0_160_128_1.vqh\
- res0_160_128_2.vqh res0_160_128_3.vqh res0_160_128_4.vqh\
- res0_160_128_5.vqh res0_160_128aux.vqh res0_192_1024_1.vqh\
- res0_192_1024_2.vqh res0_192_1024_3.vqh res0_192_1024_4.vqh\
- res0_192_1024_5.vqh res0_192_1024_6.vqh res0_192_1024_7.vqh\
- res0_192_1024_8.vqh res0_192_1024_9.vqh res0_192_1024aux.vqh\
- res0_192_128_1.vqh res0_192_128_2.vqh res0_192_128_3.vqh\
- res0_192_128_4.vqh res0_192_128_5.vqh res0_192_128aux.vqh\
- res0_256_1024_1.vqh res0_256_1024_2.vqh res0_256_1024_3.vqh\
- res0_256_1024_4.vqh res0_256_1024_5.vqh res0_256_1024_6.vqh\
- res0_256_1024_7.vqh res0_256_1024aux.vqh res0_256_128_1.vqh\
- res0_256_128_2.vqh res0_256_128_3.vqh res0_256_128_4.vqh\
- res0_256_128_5.vqh res0_256_128aux.vqh res0_96_1024_1.vqh\
- res0_96_1024_2.vqh res0_96_1024_3.vqh res0_96_1024_4.vqh\
- res0_96_1024_5.vqh res0_96_1024_6.vqh res0_96_1024_7.vqh\
- res0_96_1024_8.vqh res0_96_1024_9.vqh res0_96_1024aux.vqh\
- res0_96_128_1.vqh res0_96_128_2.vqh res0_96_128_3.vqh\
- res0_96_128_4.vqh res0_96_128_5.vqh res0_96_128aux.vqh\
- res0_350_1024_7.vqh
-
diff --git a/lib/books/lsp12_0.vqh b/lib/books/lsp12_0.vqh
deleted file mode 100644
index ad1a0081..00000000
--- a/lib/books/lsp12_0.vqh
+++ /dev/null
@@ -1,168 +0,0 @@
-/********************************************************************
- * *
- * 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_lsp12_0_VQH_
-#define _V_lsp12_0_VQH_
-#include "codebook.h"
-
-static long _vq_quantlist_lsp12_0[] = {
- 0,
- 5,
- 10,
- 15,
- 20,
- 25,
- 30,
- 35,
- 40,
- 45,
- 50,
- 55,
- 60,
- 65,
- 68,
- 71,
- 74,
- 77,
- 80,
- 83,
- 86,
- 89,
- 92,
- 95,
- 98,
- 101,
- 104,
- 107,
- 110,
- 115,
- 120,
- 125,
- 130,
- 135,
- 145,
- 160,
- 180,
- 205,
- 235,
- 270,
- 310,
- 355,
- 405,
-};
-
-static long _vq_lengthlist_lsp12_0[] = {
- 16,16,16,14,15,14,15,15,12,11,10, 9, 9, 8, 7, 7,
- 7, 5, 4, 3, 3, 2, 3, 4, 4, 5, 6, 7, 6, 5, 6, 8,
- 10,11,13,14,14,14,16,14,16,16,14,
-};
-
-static long _vq_pigeonmap_lsp12_0[] = {
- 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 1, 1, 1,
- 1, 1, 1, 1, 1, 1, 1, 1,
- 1, 1, 1, 1, 2, 2, 2, 2,
- 2, 2, 2, 2, 2, 2, 2, 2,
- 2, 2, 2, 3, 3, 3, 3, 3,
- 3, 3, 3, 3, 3, 3, 3, 3,
- 3, 3, 4, 4, 4, 4, 4, 4,
- 4, 4, 4, 4, 4, 4, 5, 5,
- 5, 5, 5, 5, 5, 5, 5, 6,
- 6, 6, 6, 6, 6, 6, 6, 6,
- 7, 7, 7, 7, 7, 7, 7, 7,
- 7, 8, 8, 8, 8, 8, 8, 8,
- 8, 8, 9, 9, 9, 9, 9, 9,
- 9, 9, 9, 9, 9, 9, 10, 10,
- 10, 10, 10, 10, 10, 10, 10, 10,
- 10, 10, 10, 10, 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, 12, 12, 12, 12, 12,
- 12, 12, 12, 12, 12, 12, 12, 12,
- 12, 12, 12, 12, 12, 12, 12, 12,
- 12, 12, 12, 12, 12, 12, 12, 12,
- 12, 12, 12, 12, 12, 12, 12, 12,
- 12, 12, 12, 12, 12, 12, 12, 12,
- 12, 12, 12, 12, 12, 12, 12, 12,
- 12, 12, 12, 12, 12, 12, 12, 12,
- 12, 12, 12, 12, 12, 12, 12, 12,
- 12, 12, 12, 12, 12, 12, 12, 12,
- 12, 12, 12, 12, 12, 13, 13, 13,
- 13, 13, 13, 13, 13, 13, 13, 13,
- 13, 13, 13, 13, 13, 13, 13, 13,
- 13, 13, 13, 13, 13, 13, 13, 13,
- 13, 13, 13, 13, 13, 13, 13, 13,
- 13, 13, 13, 13, 13, 13, 13, 13,
- 13, 13, 13, 13, 13, 13, 13, 13,
- 13, 13, 13, 13, 13, 13, 13, 13,
- 13, 13, 13, 13, 13, 13, 13, 13,
- 13, 13, 13, 13, 13, 13, 13, 13,
- 13, 13, 13, 13, 13, 13, 13, 13,
- 13, 13, 13, 13, 13, 13, 13, 13,
- 13, 13, 13, 13, 13, 13, 13, 13,
- 13, 13, 13, 13, 13, 13, 13, 13,
- 13, 13, 13, 13, 13, 13, 13, 13,
- 13, 13, 13, 13, 13, 13, 13, 13,
- 13, 13, 13, 13, 13, 14, 14, 14,
- 14, 14, 14, 14, 14, 14, 14, 14,
- 14, 14, 14, 14, 14, 14, 14, 14,
- 14, 14, 14, 14, 14,
-};
-
-static long _vq_fitlist_lsp12_0[] = {
- 0, 1, 2, 3, 3, 4, 5, 6,
- 6, 7, 8, 9, 9, 10, 11, 12,
- 12, 13, 14, 15, 15, 16, 17, 18,
- 18, 19, 20, 21, 21, 22, 23, 24,
- 24, 25, 26, 27, 27, 28, 29, 30,
- 30, 31, 32, 33, 33, 34, 35, 36,
- 36, 37, 38, 39, 39, 40, 41, 42,
-};
-
-static long _vq_fitmap_lsp12_0[] = {
- 0, 4, 8, 12, 16, 20, 24, 28,
- 32, 36, 40, 44, 48, 52, 52,
-};
-
-static long _vq_fitlength_lsp12_0[] = {
- 4, 4, 4, 4, 4, 4, 4, 4,
- 4, 4, 4, 4, 4, 4, 4,
-};
-
-static encode_aux_pigeonhole _vq_auxp_lsp12_0 = {
- 0.06, 0.002, 405, 15,
- _vq_pigeonmap_lsp12_0,
- 56,
- _vq_fitlist_lsp12_0,
- _vq_fitmap_lsp12_0,
- _vq_fitlength_lsp12_0
-};
-
-static static_codebook _vq_book_lsp12_0 = {
- 1, 43,
- _vq_lengthlist_lsp12_0,
- 1, 1602140242, 1592812110, 9, 1,
- _vq_quantlist_lsp12_0,
- NULL,
- NULL,
- &_vq_auxp_lsp12_0,
- 0
-};
-
-
-#endif
diff --git a/lib/books/lsp12_1.vqh b/lib/books/lsp12_1.vqh
deleted file mode 100644
index b5e90672..00000000
--- a/lib/books/lsp12_1.vqh
+++ /dev/null
@@ -1,2979 +0,0 @@
-/********************************************************************
- * *
- * 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_lsp12_1_VQH_
-#define _V_lsp12_1_VQH_
-#include "codebook.h"
-
-static long _vq_quantlist_lsp12_1[] = {
- 0,
- 1,
- 2,
- 3,
- 4,
- 5,
- 6,
- 7,
- 8,
- 9,
- 10,
- 11,
- 12,
- 13,
-};
-
-static long _vq_lengthlist_lsp12_1[] = {
- 17,15,17,17,16,16,17,17,17,17,17,16,17,17,17,17,
- 16,16,16,16,17,17,14,17,17,17,17,17,16,16,17,16,
- 15,17,15,15,15,15,17,16,17,17,17,15,14,15,15,15,
- 15,16,15,15,16,17,17,17,15,15,15,14,15,15,15,14,
- 15,16,16,17,17,17,17,16,16,17,16,16,15,15,17,16,
- 16,16,17,17,17,16,17,17,17,15,15,15,17,16,16,17,
- 17,17,17,17,17,15,14,14,14,15,16,16,17,15,15,17,
- 17,17,17,17,17,17,14,13,16,14,15,17,17,17,17,17,
- 17,17,15,14,16,15,15,16,17,17,16,17,17,17,17,16,
- 15,16,14,17,16,15,15,17,17,17,17,17,17,17,17,17,
- 16,17,15,17,15,17,17,16,17,17,17,17,17,17,17,16,
- 17,17,17,17,17,17,17,17,17,17,17,17,16,17,17,16,
- 17,16,17,17,17,17,15,15,17,16,17,17,16,17,17,17,
- 17,17,17,17,15,15,15,16,17,17,17,17,17,17,17,17,
- 17,16,16,15,15,14,15,15,15,15,16,16,17,17,16,16,
- 15,16,14,15,14,14,15,14,16,17,16,17,17,17,15,15,
- 14,14,13,14,14,14,17,17,16,15,16,17,15,15,14,14,
- 14,14,15,15,16,17,16,16,17,17,17,15,13,13,14,13,
- 14,15,15,16,16,17,17,17,17,15,14,14,13,13,14,14,
- 15,17,16,16,17,17,17,17,14,14,13,12,13,14,15,15,
- 15,17,17,17,17,17,15,14,13,12,14,14,16,15,15,16,
- 17,17,17,15,15,15,14,14,15,14,14,15,17,16,17,17,
- 17,17,17,16,14,15,14,16,16,17,17,17,16,17,17,17,
- 17,17,15,14,16,15,17,17,17,17,17,17,17,15,17,17,
- 17,16,15,15,14,16,16,17,17,16,15,16,15,16,15,15,
- 16,17,17,17,17,17,17,17,16,14,15,15,15,15,16,17,
- 17,17,17,17,17,15,15,15,14,14,14,15,15,15,17,17,
- 17,17,17,17,15,14,13,14,13,14,14,15,15,16,17,16,
- 17,17,15,15,12,13,13,12,13,14,15,16,16,17,17,17,
- 16,14,13,13,12,12,13,13,15,16,15,15,17,17,17,14,
- 12,12,11,11,13,13,14,15,16,15,17,17,17,14,13,11,
- 11,11,13,13,14,15,15,17,17,17,17,14,14,12,11,11,
- 13,13,13,14,16,15,17,17,17,15,14,14,12,12,13,13,
- 14,14,15,15,17,17,17,17,15,14,14,13,13,13,14,15,
- 15,16,15,17,17,17,15,14,16,14,13,14,14,14,15,16,
- 17,16,17,17,15,16,15,14,15,16,15,17,17,17,17,17,
- 17,17,15,15,16,15,15,15,15,15,15,17,17,16,15,14,
- 16,17,17,15,17,17,17,16,17,17,17,17,16,14,14,14,
- 15,15,16,17,16,15,17,17,15,17,15,15,14,14,14,14,
- 15,15,15,16,15,15,17,16,15,14,13,13,13,13,13,15,
- 15,16,15,17,17,16,15,13,11,12,12,12,12,13,14,14,
- 16,15,17,17,16,13,11,10,10,11,12,12,13,14,14,17,
- 17,17,17,14,11,10,10,10,11,12,14,14,15,14,17,17,
- 14,16,13,10,10,10,11,12,13,15,15,15,16,17,17,15,
- 13,11,10,10,11,12,13,14,15,17,17,17,17,15,13,12,
- 11,11,11,12,13,14,14,15,17,17,16,15,15,13,12,12,
- 12,12,13,15,14,15,17,16,15,16,16,13,13,13,13,13,
- 14,15,16,16,16,17,17,16,16,14,15,14,14,15,15,15,
- 16,17,16,16,17,15,16,17,15,15,15,16,14,15,16,17,
- 16,16,17,15,15,15,15,17,15,17,16,17,16,17,17,17,
- 16,15,14,13,14,14,16,15,16,15,15,15,17,16,15,13,
- 13,12,12,13,14,13,14,13,13,13,17,17,15,13,11,11,
- 12,12,11,12,12,12,13,14,17,17,15,13,10,10,10,10,
- 10,11,11,12,13,14,17,17,14,13,10, 9, 9,10,10,10,
- 10,12,12,14,17,16,15,13,11, 9, 9, 9, 9,10,11,13,
- 15,14,16,15,15,13,11, 9, 8, 9, 9,10,12,13,14,14,
- 16,15,15,15,12,10, 9, 9, 9,11,12,13,14,15,17,16,
- 16,15,13,11,10,10,10,11,12,13,15,15,15,17,15,15,
- 14,13,11,11,12,12,13,13,14,14,17,16,15,17,14,14,
- 13,12,12,13,13,13,15,15,17,16,15,15,14,14,14,13,
- 14,14,13,14,15,16,17,17,16,17,15,17,15,14,15,15,
- 15,15,17,16,17,17,16,15,16,14,17,15,15,15,16,16,
- 15,16,17,17,16,15,13,13,12,13,14,14,13,14,14,13,
- 17,17,15,12,11,11,10,11,12,12,12,12,12,11,17,15,
- 15,12,10,10,10,10,10,10,11,11,11,12,17,16,13,12,
- 9, 8, 9, 9, 9, 8, 9,10,11,12,16,16,14,12, 9, 7,
- 7, 8, 7, 8, 9,10,12,13,17,15,13,12, 9, 7, 7, 7,
- 7, 9,10,11,12,12,15,15,14,13,10, 8, 7, 7, 8, 9,
- 11,13,13,14,15,15,15,13,11,10, 8, 8, 9,10,11,13,
- 13,13,15,17,15,14,12,11,10, 9,10,11,12,13,13,14,
- 15,17,17,14,14,12,11,11,11,11,13,13,14,15,17,15,
- 16,14,13,13,12,12,12,12,13,15,15,17,17,15,15,14,
- 13,14,13,13,13,13,15,15,17,17,17,16,16,15,15,15,
- 15,14,14,15,15,15,16,17,17,16,17,16,16,14,13,13,
- 13,15,15,16,16,15,17,17,17,15,13,12,12,12,13,14,
- 13,14,14,14,17,16,15,13,11,10,10,11,12,12,12,12,
- 11,12,15,15,13,11, 9, 9, 9,10,10, 9,10,10,11,11,
- 17,15,13,11, 9, 8, 8, 9, 8, 7, 8, 9,11,12,14,14,
- 12,11, 8, 7, 6, 7, 7, 7, 9,10,11,12,14,14,13,10,
- 9, 6, 6, 6, 7, 9,10,11,12,13,15,14,14,12,10, 8,
- 6, 7, 8, 9,10,12,13,15,15,15,14,13,11, 9, 8, 8,
- 9,10,11,12,13,15,15,15,14,13,11,10, 9, 9,10,11,
- 11,13,13,14,15,16,14,14,13,11,10,11,11,11,12,13,
- 14,15,16,17,14,14,12,13,12,11,11,13,13,15,17,15,
- 17,15,17,14,13,14,12,13,14,14,15,15,16,17,17,17,
- 14,14,15,15,14,15,14,15,14,16,15,17,17,17,17,17,
- 15,14,13,14,14,14,15,15,15,14,16,17,17,13,12,12,
- 11,12,13,13,14,14,13,13,17,15,15,12,10,10,11,11,
- 12,12,12,13,12,13,17,14,13,11, 9, 9,10,10,11,10,
- 10,11,12,12,15,14,12,10, 9, 8, 8, 9, 9, 9, 9,10,
- 12,12,17,14,11, 9, 8, 7, 6, 7, 8, 9,10,11,12,13,
- 15,14,11,10, 8, 6, 6, 7, 8, 9,10,11,13,13,16,15,
- 12,11, 9, 8, 7, 7, 8, 9,11,12,13,14,16,14,12,12,
- 10, 9, 8, 8, 9,10,11,13,13,14,15,15,14,13,12,10,
- 10, 9,10,10,11,12,13,14,16,15,14,13,12,11,11,11,
- 11,12,12,14,14,16,17,16,15,14,13,12,12,12,12,13,
- 13,14,15,17,16,17,16,14,15,13,13,13,12,14,15,15,
- 16,16,17,17,15,15,15,14,14,14,14,15,14,15,17,16,
- 17,17,17,17,14,13,14,14,15,13,14,16,14,16,17,17,
- 16,14,12,13,12,13,13,13,14,15,15,15,16,15,15,13,
- 11,11,11,12,13,13,13,14,15,14,17,14,13,12,10, 9,
- 10,11,11,11,12,13,13,13,15,13,12,10, 9, 8, 9, 9,
- 10,10,11,12,12,13,15,13,11,10, 8, 8, 8, 8, 9,10,
- 10,11,13,13,16,12,11,10, 9, 8, 8, 8, 9, 9,11,13,
- 13,14,15,14,12,11, 9, 8, 8, 8, 9,10,11,13,14,14,
- 16,14,13,12,11, 9, 9, 9, 9,10,11,13,14,14,15,15,
- 14,14,11,10,10,10,10,11,12,12,14,14,17,15,14,14,
- 12,11,11,11,11,12,13,13,15,15,17,15,15,14,12,12,
- 12,12,12,12,14,15,15,15,17,16,15,14,13,14,13,13,
- 13,15,15,16,15,17,16,17,15,15,15,15,13,13,14,15,
- 15,15,15,17,17,17,17,17,14,14,16,15,15,16,15,14,
- 17,16,17,17,16,14,13,13,14,14,15,14,15,17,15,15,
- 15,15,14,13,12,12,12,12,13,13,13,14,15,15,16,13,
- 12,12,11,10,11,11,11,11,12,13,13,14,17,13,12,11,
- 10, 9,10,10,10,10,11,12,13,14,15,13,12,11, 9, 9,
- 9, 9, 9,10,11,13,13,14,15,13,11,11,10, 9, 9, 9,
- 9,10,11,13,14,15,15,14,13,11,10,10, 9, 9, 9,10,
- 12,12,14,15,15,15,13,12,11,10,10, 9,10,11,12,13,
- 14,16,15,15,14,13,12,11,10,10,11,11,12,13,14,16,
- 16,16,14,13,12,11,11,11,12,12,13,14,14,15,15,15,
- 14,13,13,12,12,12,13,13,14,14,14,17,16,16,14,15,
- 13,13,13,13,13,13,14,14,15,16,17,16,16,15,15,14,
- 13,13,14,13,14,15,16,16,17,17,17,15,14,15,15,15,
- 15,15,15,16,17,15,16,16,16,15,14,15,15,15,15,14,
- 15,16,16,17,17,14,14,13,12,13,13,13,13,13,14,14,
- 15,17,16,13,13,13,12,11,12,12,12,12,12,13,15,14,
- 15,13,13,12,11,11,10,11,11,11,11,13,15,14,15,13,
- 12,11,10,10,10,10,10,11,11,13,13,15,14,13,12,12,
- 11,10,10, 9,10,11,13,13,14,14,15,13,13,12,11,10,
- 10,10,10,11,12,12,13,14,16,14,14,13,12,11,10,10,
- 10,12,12,13,14,15,16,15,14,13,12,11,10,11,11,11,
- 13,12,14,14,16,15,14,12,12,12,11,11,11,12,12,13,
- 14,15,16,15,14,14,13,12,12,12,12,12,13,13,15,17,
- 17,16,15,14,14,13,12,13,12,12,13,15,15,17,15,16,
- 15,15,14,13,13,13,12,13,14,15,16,17,17,16,15,15,
- 15,15,15,15,15,16,14,15,17,16,17,17,15,14,14,14,
- 15,14,15,14,15,14,17,14,17,14,14,13,14,13,13,14,
- 13,13,13,14,14,15,15,14,14,13,12,12,12,12,12,12,
- 12,13,14,15,15,14,13,12,12,11,11,11,11,11,13,13,
- 14,14,17,14,13,12,11,10,10,10,11,11,12,13,13,14,
- 15,14,13,13,11,10,10,10,10,11,12,12,13,14,16,16,
- 13,12,11,11,11,10,11,11,12,13,14,14,17,15,14,13,
- 11,11,10,11,10,11,12,12,13,14,17,15,14,13,12,12,
- 11,11,11,12,12,13,13,14,15,15,13,14,13,12,11,11,
- 12,12,13,13,15,16,16,16,15,14,13,13,12,12,12,12,
- 13,14,16,16,17,16,15,14,15,13,13,13,13,13,14,15,
- 17,17,16,16,14,14,14,14,13,14,13,14,16,17,17,17,
- 16,17,16,16,17,15,14,17,16,16,15,16,17,17,17,17,
- 14,15,15,14,16,16,15,15,15,15,16,17,17,15,14,15,
- 14,14,13,14,13,13,14,14,15,17,17,14,13,14,14,13,
- 12,12,12,12,13,13,15,15,16,14,13,13,13,12,11,11,
- 11,11,12,13,14,14,17,14,13,13,12,11,11,11,11,12,
- 12,13,13,14,17,16,14,13,12,11,11,11,11,11,12,13,
- 13,14,16,15,13,13,12,11,11,11,11,11,12,13,14,14,
- 16,14,15,13,13,12,11,11,11,12,12,12,14,14,16,15,
- 15,14,13,12,12,11,11,11,12,13,14,14,17,15,15,14,
- 13,12,11,12,11,12,14,15,14,15,15,16,15,15,13,12,
- 12,13,14,14,15,17,16,15,17,16,16,15,15,14,12,14,
- 14,14,15,16,17,17,15,15,14,16,14,14,15,15,16,17,
- 17,16,16,16,17,17,17,16,15,15,16,15,16,16,17,16,
- 17,17,17,17,15,17,14,15,14,14,14,15,15,16,17,16,
- 17,15,15,15,14,14,13,14,13,13,14,16,16,15,16,14,
- 14,14,15,13,12,12,12,12,13,14,14,17,15,14,13,13,
- 14,12,12,11,11,12,13,14,15,15,15,14,14,14,13,12,
- 11,11,11,12,12,13,13,15,16,16,14,14,13,11,11,11,
- 11,11,12,12,13,14,17,16,14,13,12,12,11,11,11,11,
- 11,12,14,14,17,15,14,13,12,11,11,10,11,11,12,12,
- 15,15,17,14,13,13,13,12,11,11,11,11,12,14,15,16,
- 15,16,15,14,12,12,12,12,12,12,14,14,17,15,16,15,
- 14,14,14,13,13,13,13,14,14,17,16,16,14,15,14,14,
- 14,14,14,15,14,15,16,17,17,17,15,16,14,14,14,17,
- 15,15,15,17,17,17,17,17,
-};
-
-static long _vq_pigeonmap_lsp12_1[] = {
- 0, 0, 0, 1, 1, 1, 2, 2,
- 2, 3, 3, 3, 4,
-};
-
-static long _vq_fitlist_lsp12_1[] = {
- 0, 1, 14, 15, 28, 196, 197, 210,
- 392, 2, 16, 29, 198, 211, 224, 393,
- 406, 3, 4, 17, 30, 43, 199, 212,
- 225, 394, 407, 589, 42, 588, 56, 238,
- 420, 602, 31, 44, 200, 213, 226, 239,
- 395, 408, 421, 590, 57, 252, 434, 603,
- 18, 45, 58, 214, 227, 240, 253, 396,
- 409, 422, 435, 591, 604, 617, 785, 784,
- 616, 786, 798, 70, 448, 630, 799, 32,
- 71, 241, 254, 410, 423, 436, 449, 592,
- 605, 618, 631, 787, 800, 813, 981, 980,
- 812, 994, 982, 266, 644, 826, 995, 228,
- 267, 437, 450, 606, 619, 632, 645, 788,
- 801, 814, 827, 983, 996, 3, 4, 16,
- 17, 18, 30, 31, 198, 199, 200, 212,
- 213, 226, 394, 395, 408, 5, 19, 32,
- 201, 214, 227, 396, 409, 591, 6, 7,
- 20, 33, 46, 202, 215, 228, 397, 410,
- 592, 44, 45, 240, 422, 59, 241, 423,
- 605, 34, 47, 203, 216, 229, 242, 398,
- 411, 424, 593, 58, 72, 254, 436, 60,
- 255, 437, 606, 21, 48, 61, 217, 230,
- 243, 256, 399, 412, 425, 438, 594, 607,
- 590, 604, 787, 788, 618, 619, 620, 789,
- 268, 450, 632, 801, 73, 451, 633, 802,
- 35, 74, 244, 257, 413, 426, 439, 452,
- 595, 608, 621, 634, 790, 803, 816, 786,
- 800, 814, 983, 815, 984, 985, 646, 828,
- 997, 269, 647, 829, 998, 231, 270, 440,
- 453, 609, 622, 635, 648, 791, 804, 817,
- 830, 986, 999, 6, 7, 19, 20, 21,
- 33, 34, 201, 202, 203, 215, 216, 229,
- 397, 398, 411, 8, 22, 35, 204, 217,
- 230, 399, 412, 9, 10, 23, 36, 49,
- 205, 218, 231, 400, 413, 595, 47, 48,
- 243, 425, 594, 62, 244, 426, 608, 24,
- 37, 50, 206, 219, 232, 245, 401, 414,
- 427, 596, 61, 75, 257, 439, 621, 63,
- 258, 440, 609, 51, 64, 220, 233, 246,
- 259, 402, 415, 428, 441, 597, 610, 593,
- 607, 790, 791, 622, 623, 792, 271, 453,
- 635, 804, 76, 454, 636, 805, 38, 77,
- 234, 247, 260, 416, 429, 442, 455, 598,
- 611, 624, 637, 793, 806, 819, 789, 803,
- 817, 986, 818, 987, 988, 649, 831, 1000,
- 272, 650, 832, 1001, 273, 430, 443, 456,
- 612, 625, 638, 651, 794, 807, 820, 833,
- 989, 1002, 9, 10, 22, 23, 24, 36,
- 37, 204, 205, 206, 218, 219, 232, 400,
- 401, 414, 11, 25, 38, 207, 220, 233,
- 402, 415, 597, 12, 13, 26, 39, 52,
- 208, 221, 234, 403, 416, 598, 50, 51,
- 246, 428, 65, 247, 429, 611, 27, 40,
- 53, 66, 209, 222, 235, 248, 404, 417,
- 430, 599, 64, 78, 260, 442, 624, 79,
- 261, 443, 612, 625, 54, 67, 223, 236,
- 249, 262, 405, 418, 431, 444, 600, 613,
- 596, 610, 793, 794, 626, 795, 456, 638,
- 807, 457, 639, 808, 41, 80, 237, 250,
- 263, 276, 419, 432, 445, 458, 601, 614,
- 627, 640, 796, 809, 792, 806, 989, 820,
- 821, 990, 822, 991, 274, 652, 834, 1003,
- 275, 471, 653, 835, 1004, 1017, 433, 446,
- 459, 472, 615, 628, 641, 654, 797, 810,
- 823, 836, 992, 1005, 12, 13, 25, 26,
- 27, 39, 40, 207, 208, 209, 221, 222,
- 235, 403, 404, 417, 41, 53, 54, 223,
- 236, 249, 405, 418, 431, 600, 55, 67,
- 68, 81, 237, 250, 263, 419, 432, 445,
- 601, 614, 627, 599, 613, 796, 251, 264,
- 433, 446, 459, 615, 628, 641, 797, 810,
- 795, 809, 823, 992, 277, 447, 460, 629,
- 642, 655, 811, 824, 837, 993, 1006, 15,
- 16, 28, 29, 30, 42, 43, 56, 57,
- 70, 198, 211, 212, 224, 225, 226, 238,
- 239, 252, 394, 407, 408, 420, 421, 434,
- 603, 616, 3, 17, 31, 44, 58, 71,
- 199, 213, 227, 240, 253, 266, 395, 409,
- 422, 435, 448, 591, 604, 617, 630, 18,
- 32, 45, 46, 59, 72, 85, 200, 214,
- 228, 241, 254, 267, 396, 410, 423, 436,
- 449, 592, 605, 618, 631, 84, 98, 280,
- 462, 73, 86, 242, 255, 268, 281, 424,
- 437, 450, 463, 619, 632, 644, 99, 294,
- 476, 645, 60, 87, 100, 256, 269, 282,
- 295, 438, 451, 464, 477, 633, 646, 590,
- 799, 812, 787, 800, 813, 826, 606, 788,
- 801, 814, 827, 658, 620, 659, 815, 828,
- 840, 112, 490, 672, 841, 74, 113, 270,
- 283, 296, 309, 452, 465, 478, 491, 634,
- 647, 660, 673, 816, 829, 842, 855, 786,
- 995, 1008, 996, 1009, 802, 997, 1010, 1022,
- 854, 1023, 1011, 1024, 1036, 308, 686, 868,
- 1037, 479, 492, 648, 661, 674, 687, 830,
- 843, 856, 869, 1025, 1038, 18, 19, 31,
- 32, 33, 45, 46, 58, 59, 60, 72,
- 73, 201, 214, 215, 227, 228, 229, 240,
- 241, 242, 254, 255, 268, 397, 410, 411,
- 423, 424, 436, 437, 450, 606, 619, 6,
- 20, 34, 47, 61, 74, 202, 216, 230,
- 243, 256, 269, 398, 412, 425, 438, 451,
- 607, 620, 7, 21, 35, 48, 49, 62,
- 75, 88, 203, 217, 231, 244, 257, 270,
- 399, 413, 426, 439, 452, 595, 608, 621,
- 634, 86, 87, 282, 464, 633, 101, 283,
- 465, 647, 76, 89, 245, 258, 271, 284,
- 427, 440, 453, 466, 622, 635, 100, 114,
- 296, 478, 660, 102, 297, 479, 648, 63,
- 90, 103, 259, 272, 285, 298, 441, 454,
- 467, 480, 636, 649, 593, 632, 646, 802,
- 815, 594, 790, 803, 816, 829, 609, 791,
- 804, 817, 830, 842, 661, 623, 662, 818,
- 831, 310, 492, 674, 843, 115, 493, 675,
- 844, 77, 116, 273, 286, 299, 312, 455,
- 468, 481, 494, 637, 650, 663, 676, 819,
- 832, 845, 858, 789, 828, 998, 1011, 999,
- 1012, 805, 1000, 1013, 856, 1025, 857, 1026,
- 1014, 1027, 688, 870, 1039, 311, 689, 871,
- 1040, 482, 495, 651, 664, 677, 690, 833,
- 846, 859, 872, 1028, 1041, 21, 22, 34,
- 35, 36, 48, 49, 61, 62, 63, 75,
- 76, 204, 217, 218, 230, 231, 232, 243,
- 244, 245, 257, 258, 271, 400, 413, 414,
- 426, 427, 439, 440, 453, 609, 622, 9,
- 23, 37, 50, 64, 77, 205, 219, 233,
- 246, 259, 272, 401, 415, 428, 441, 454,
- 610, 623, 10, 24, 38, 51, 52, 65,
- 78, 91, 206, 220, 234, 247, 260, 273,
- 402, 416, 429, 442, 455, 598, 611, 624,
- 637, 89, 90, 285, 467, 636, 104, 286,
- 468, 650, 66, 79, 92, 248, 261, 274,
- 287, 430, 443, 456, 469, 612, 625, 638,
- 103, 117, 299, 481, 663, 105, 300, 482,
- 651, 80, 93, 106, 262, 275, 288, 301,
- 444, 457, 470, 483, 626, 639, 652, 596,
- 635, 649, 805, 818, 597, 793, 806, 819,
- 832, 794, 807, 820, 833, 845, 664, 665,
- 821, 834, 313, 495, 677, 846, 118, 496,
- 678, 847, 119, 276, 289, 302, 315, 458,
- 471, 484, 497, 640, 653, 666, 679, 822,
- 835, 848, 861, 792, 831, 1001, 1014, 1002,
- 1015, 808, 1003, 1016, 859, 1028, 860, 1029,
- 1004, 1017, 1030, 691, 873, 1042, 314, 692,
- 874, 1043, 472, 485, 498, 654, 667, 680,
- 693, 836, 849, 862, 875, 1018, 1031, 1044,
- 24, 25, 37, 38, 39, 51, 52, 64,
- 65, 66, 78, 79, 207, 220, 221, 233,
- 234, 235, 246, 247, 248, 260, 261, 274,
- 403, 416, 417, 429, 430, 442, 443, 456,
- 612, 625, 12, 26, 40, 53, 67, 80,
- 208, 222, 236, 249, 262, 275, 404, 418,
- 431, 444, 457, 613, 626, 13, 27, 41,
- 54, 55, 68, 81, 94, 209, 223, 237,
- 250, 263, 276, 405, 419, 432, 445, 458,
- 601, 614, 627, 640, 92, 93, 288, 470,
- 639, 107, 289, 471, 653, 69, 82, 95,
- 108, 251, 264, 277, 290, 433, 446, 459,
- 472, 615, 628, 641, 106, 302, 484, 121,
- 303, 485, 654, 667, 96, 109, 265, 278,
- 291, 304, 447, 460, 473, 486, 629, 642,
- 655, 599, 638, 652, 808, 821, 600, 796,
- 809, 822, 835, 797, 810, 823, 666, 836,
- 849, 668, 824, 837, 120, 498, 680, 317,
- 499, 681, 850, 83, 122, 292, 305, 461,
- 474, 487, 500, 643, 656, 669, 682, 825,
- 838, 851, 795, 834, 848, 1004, 1017, 1005,
- 1018, 811, 1006, 1019, 862, 1031, 863, 1032,
- 864, 1007, 1020, 1033, 316, 694, 876, 1045,
- 513, 695, 877, 1046, 1059, 279, 318, 488,
- 501, 657, 670, 683, 696, 839, 852, 865,
- 878, 1021, 1034, 1047, 27, 40, 41, 54,
- 55, 67, 68, 69, 81, 82, 223, 236,
- 237, 249, 250, 251, 263, 264, 277, 419,
- 432, 433, 445, 446, 459, 615, 628, 83,
- 95, 96, 265, 278, 291, 447, 460, 473,
- 629, 642, 97, 109, 110, 279, 292, 305,
- 461, 474, 487, 643, 656, 641, 655, 811,
- 824, 669, 825, 838, 123, 293, 306, 475,
- 488, 501, 657, 670, 683, 839, 852, 837,
- 851, 1007, 1020, 865, 1021, 1034, 319, 489,
- 502, 671, 684, 697, 853, 866, 879, 1035,
- 1048, 57, 58, 70, 71, 72, 84, 85,
- 98, 99, 112, 240, 253, 254, 266, 267,
- 268, 280, 281, 294, 436, 449, 450, 462,
- 463, 476, 645, 658, 45, 59, 73, 86,
- 100, 113, 241, 255, 269, 282, 295, 308,
- 437, 451, 464, 477, 490, 646, 659, 46,
- 60, 74, 87, 88, 101, 114, 127, 242,
- 256, 270, 283, 296, 309, 438, 452, 465,
- 478, 491, 634, 647, 660, 673, 126, 672,
- 140, 322, 504, 686, 115, 128, 284, 297,
- 310, 323, 466, 479, 492, 505, 661, 674,
- 141, 336, 518, 687, 102, 129, 142, 298,
- 311, 324, 337, 480, 493, 506, 519, 675,
- 688, 632, 841, 854, 633, 829, 842, 855,
- 868, 648, 843, 856, 700, 869, 662, 701,
- 857, 870, 882, 154, 532, 714, 883, 116,
- 155, 312, 325, 338, 351, 494, 507, 520,
- 533, 676, 689, 702, 715, 858, 871, 884,
- 897, 828, 1037, 1050, 1038, 1051, 830, 844,
- 1039, 1052, 1064, 896, 1065, 1053, 1066, 1078,
- 350, 728, 910, 1079, 521, 534, 547, 690,
- 703, 716, 729, 872, 885, 898, 911, 1067,
- 1080, 60, 61, 73, 74, 75, 87, 88,
- 100, 101, 102, 114, 115, 243, 256, 257,
- 269, 270, 271, 282, 283, 284, 296, 297,
- 310, 439, 452, 453, 465, 466, 478, 479,
- 492, 648, 661, 48, 62, 76, 89, 103,
- 116, 244, 258, 272, 285, 298, 311, 440,
- 454, 467, 480, 493, 649, 662, 49, 63,
- 77, 90, 91, 104, 117, 130, 245, 259,
- 273, 286, 299, 312, 441, 455, 468, 481,
- 494, 637, 650, 663, 676, 128, 129, 324,
- 506, 675, 143, 325, 507, 689, 118, 131,
- 287, 300, 313, 326, 469, 482, 495, 508,
- 664, 677, 142, 156, 338, 520, 702, 144,
- 339, 521, 690, 105, 132, 145, 301, 314,
- 327, 340, 483, 496, 509, 522, 678, 691,
- 635, 674, 688, 844, 857, 636, 832, 845,
- 858, 871, 651, 846, 859, 884, 703, 872,
- 665, 704, 860, 873, 352, 534, 716, 885,
- 157, 535, 717, 886, 119, 158, 315, 328,
- 341, 354, 497, 510, 523, 536, 679, 692,
- 705, 718, 861, 874, 887, 900, 831, 870,
- 1040, 1053, 1041, 1054, 833, 847, 1042, 1055,
- 898, 1067, 899, 1068, 1056, 1069, 730, 912,
- 1081, 353, 731, 913, 1082, 524, 537, 550,
- 693, 706, 719, 732, 875, 888, 901, 914,
- 1070, 1083, 63, 64, 76, 77, 78, 90,
- 91, 103, 104, 105, 117, 118, 246, 259,
- 260, 272, 273, 274, 285, 286, 287, 299,
- 300, 313, 442, 455, 456, 468, 469, 481,
- 482, 495, 651, 664, 51, 65, 79, 92,
- 106, 119, 247, 261, 275, 288, 301, 314,
- 443, 457, 470, 483, 496, 652, 665, 52,
- 66, 80, 93, 94, 107, 120, 133, 248,
- 262, 276, 289, 302, 315, 444, 458, 471,
- 484, 497, 640, 653, 666, 679, 131, 132,
- 327, 509, 678, 146, 328, 510, 692, 108,
- 121, 134, 147, 290, 303, 316, 329, 472,
- 485, 498, 511, 654, 667, 680, 693, 145,
- 159, 341, 523, 705, 342, 524, 135, 148,
- 304, 317, 330, 343, 486, 499, 512, 525,
- 668, 681, 694, 638, 677, 691, 847, 860,
- 639, 835, 848, 861, 874, 836, 849, 862,
- 887, 706, 875, 707, 850, 863, 876, 537,
- 719, 888, 160, 538, 720, 889, 122, 161,
- 331, 344, 500, 513, 526, 539, 682, 695,
- 708, 721, 864, 877, 890, 903, 834, 873,
- 1043, 1056, 1044, 1057, 1045, 1058, 901, 1070,
- 902, 1071, 1046, 1059, 1072, 1085, 355, 733,
- 915, 1084, 356, 734, 916, 318, 357, 527,
- 540, 696, 709, 722, 735, 878, 891, 904,
- 917, 1060, 1073, 1086, 66, 67, 79, 80,
- 81, 93, 94, 106, 107, 108, 120, 121,
- 249, 262, 263, 275, 276, 277, 288, 289,
- 290, 302, 303, 316, 445, 458, 459, 471,
- 472, 484, 485, 498, 654, 667, 54, 68,
- 82, 95, 109, 122, 250, 264, 278, 291,
- 304, 317, 446, 460, 473, 486, 499, 655,
- 668, 55, 69, 83, 96, 97, 110, 123,
- 136, 251, 265, 279, 292, 305, 318, 447,
- 461, 474, 487, 500, 643, 656, 669, 682,
- 134, 135, 330, 512, 681, 149, 331, 513,
- 695, 111, 124, 137, 150, 293, 306, 319,
- 332, 475, 488, 501, 514, 670, 683, 148,
- 162, 344, 526, 708, 163, 345, 527, 696,
- 138, 151, 164, 307, 320, 333, 346, 489,
- 502, 515, 528, 684, 697, 641, 680, 694,
- 850, 863, 642, 838, 851, 864, 877, 657,
- 839, 852, 865, 878, 709, 891, 671, 710,
- 866, 879, 358, 540, 722, 904, 359, 541,
- 723, 892, 125, 334, 347, 360, 503, 516,
- 529, 542, 685, 698, 711, 724, 867, 880,
- 893, 906, 837, 876, 890, 1046, 1059, 1047,
- 1060, 853, 1048, 1061, 1073, 905, 1074, 1087,
- 1062, 1075, 736, 918, 555, 737, 919, 1088,
- 321, 530, 543, 556, 699, 712, 725, 738,
- 881, 894, 907, 920, 1076, 1089, 69, 82,
- 83, 96, 97, 109, 110, 111, 123, 124,
- 265, 278, 279, 291, 292, 293, 305, 306,
- 319, 461, 474, 475, 487, 488, 501, 657,
- 670, 125, 137, 138, 307, 320, 333, 489,
- 502, 515, 671, 684, 139, 151, 152, 165,
- 321, 334, 347, 503, 516, 529, 685, 698,
- 711, 683, 697, 853, 866, 867, 880, 335,
- 348, 361, 517, 530, 543, 699, 712, 725,
- 881, 894, 907, 879, 893, 1049, 1062, 1063,
- 1076, 531, 544, 713, 726, 739, 895, 908,
- 921, 1077, 1090, 99, 100, 112, 113, 114,
- 126, 127, 140, 141, 154, 282, 295, 296,
- 308, 309, 310, 322, 323, 336, 478, 491,
- 492, 504, 505, 518, 687, 700, 87, 101,
- 115, 128, 142, 155, 283, 297, 311, 324,
- 337, 350, 479, 493, 506, 519, 532, 688,
- 701, 88, 102, 116, 129, 130, 143, 156,
- 169, 284, 298, 312, 325, 338, 351, 480,
- 494, 507, 520, 533, 676, 689, 702, 715,
- 168, 714, 182, 364, 546, 728, 157, 170,
- 326, 339, 352, 365, 508, 521, 534, 547,
- 703, 716, 183, 378, 560, 729, 144, 171,
- 184, 340, 353, 366, 379, 522, 535, 548,
- 561, 717, 730, 674, 883, 896, 675, 871,
- 884, 897, 910, 690, 885, 898, 742, 911,
- 704, 743, 899, 912, 924, 574, 756, 925,
- 158, 354, 367, 380, 536, 549, 562, 575,
- 718, 731, 744, 757, 900, 913, 926, 870,
- 1079, 1092, 1080, 1093, 872, 886, 1081, 1094,
- 1106, 938, 1107, 939, 1095, 1108, 1120, 770,
- 952, 1121, 550, 563, 576, 732, 745, 758,
- 771, 914, 927, 940, 953, 1109, 1122, 102,
- 103, 115, 116, 117, 129, 130, 142, 143,
- 144, 156, 157, 285, 298, 299, 311, 312,
- 313, 324, 325, 326, 338, 339, 352, 481,
- 494, 495, 507, 508, 520, 521, 534, 690,
- 703, 90, 104, 118, 131, 145, 158, 286,
- 300, 314, 327, 340, 353, 482, 496, 509,
- 522, 535, 691, 704, 91, 105, 119, 132,
- 133, 146, 159, 172, 287, 301, 315, 328,
- 341, 354, 483, 497, 510, 523, 536, 679,
- 692, 705, 718, 170, 171, 366, 548, 717,
- 185, 367, 549, 731, 147, 160, 173, 186,
- 329, 342, 355, 368, 511, 524, 537, 550,
- 693, 706, 719, 732, 184, 380, 562, 744,
- 381, 563, 745, 174, 187, 343, 356, 369,
- 382, 525, 538, 551, 564, 720, 733, 677,
- 716, 730, 886, 899, 678, 874, 887, 900,
- 913, 888, 901, 926, 914, 707, 746, 902,
- 915, 576, 758, 927, 577, 759, 928, 161,
- 370, 383, 539, 552, 565, 578, 721, 734,
- 747, 760, 903, 916, 929, 873, 912, 1082,
- 1095, 1083, 1096, 875, 889, 1084, 1097, 940,
- 1109, 941, 1110, 942, 1085, 1098, 1111, 1124,
- 772, 954, 1123, 773, 955, 1137, 357, 566,
- 579, 735, 748, 761, 774, 917, 930, 943,
- 956, 1112, 1125, 105, 106, 118, 119, 120,
- 132, 133, 145, 146, 147, 159, 160, 288,
- 301, 302, 314, 315, 316, 327, 328, 329,
- 341, 342, 355, 484, 497, 498, 510, 511,
- 523, 524, 537, 693, 706, 107, 121, 134,
- 148, 161, 289, 303, 317, 330, 343, 356,
- 485, 499, 512, 525, 538, 694, 707, 94,
- 108, 122, 135, 136, 149, 162, 175, 290,
- 304, 318, 331, 344, 357, 486, 500, 513,
- 526, 539, 682, 695, 708, 721, 173, 174,
- 369, 551, 720, 188, 370, 552, 734, 150,
- 163, 176, 189, 332, 345, 358, 371, 514,
- 527, 540, 553, 709, 722, 187, 383, 565,
- 747, 384, 566, 735, 164, 177, 190, 346,
- 359, 372, 385, 528, 541, 554, 567, 723,
- 736, 680, 719, 733, 889, 902, 681, 890,
- 903, 696, 878, 891, 904, 917, 916, 748,
- 930, 710, 749, 905, 918, 579, 761, 943,
- 580, 762, 931, 360, 373, 386, 542, 555,
- 568, 581, 724, 737, 750, 763, 906, 919,
- 932, 945, 876, 915, 929, 1085, 1098, 877,
- 1086, 1099, 892, 1074, 1087, 1100, 1113, 1112,
- 944, 1126, 1101, 1114, 775, 957, 776, 958,
- 1127, 556, 569, 582, 738, 751, 764, 777,
- 920, 933, 946, 959, 1115, 1128, 108, 109,
- 121, 122, 123, 135, 136, 148, 149, 150,
- 162, 163, 291, 304, 305, 317, 318, 319,
- 330, 331, 332, 344, 345, 358, 487, 500,
- 501, 513, 514, 526, 527, 540, 696, 709,
- 96, 110, 124, 137, 151, 164, 292, 306,
- 320, 333, 346, 359, 488, 502, 515, 528,
- 541, 697, 710, 97, 111, 125, 138, 139,
- 152, 165, 178, 293, 307, 321, 334, 347,
- 360, 489, 503, 516, 529, 542, 685, 698,
- 711, 724, 176, 177, 372, 554, 723, 191,
- 373, 555, 737, 153, 166, 179, 192, 335,
- 348, 361, 374, 517, 530, 543, 556, 712,
- 725, 190, 386, 568, 387, 569, 738, 167,
- 180, 193, 349, 362, 375, 388, 531, 544,
- 557, 570, 726, 739, 683, 722, 736, 892,
- 905, 684, 880, 893, 906, 919, 699, 881,
- 894, 907, 920, 750, 751, 713, 752, 908,
- 921, 582, 764, 933, 583, 765, 934, 363,
- 376, 389, 545, 558, 571, 584, 727, 740,
- 753, 766, 909, 922, 935, 948, 879, 918,
- 932, 1088, 1101, 1089, 1102, 895, 1077, 1090,
- 1103, 946, 1115, 947, 1116, 1104, 1117, 778,
- 960, 1129, 779, 961, 1130, 559, 572, 585,
- 741, 754, 767, 780, 923, 936, 949, 962,
- 1118, 1131, 111, 124, 125, 138, 139, 151,
- 152, 153, 165, 166, 307, 320, 321, 333,
- 334, 335, 347, 348, 361, 503, 516, 517,
- 529, 530, 543, 699, 712, 167, 179, 180,
- 349, 362, 375, 531, 544, 557, 713, 726,
- 181, 193, 194, 363, 376, 389, 545, 558,
- 571, 727, 740, 725, 739, 895, 908, 753,
- 909, 922, 377, 390, 559, 572, 585, 741,
- 754, 767, 923, 936, 921, 935, 1091, 1104,
- 949, 1105, 1118, 573, 586, 755, 768, 781,
- 937, 950, 963, 1119, 1132, 141, 142, 154,
- 155, 156, 168, 169, 182, 183, 324, 337,
- 338, 350, 351, 352, 364, 365, 378, 520,
- 533, 534, 546, 547, 560, 729, 742, 143,
- 157, 170, 184, 325, 339, 353, 366, 379,
- 521, 535, 548, 561, 574, 730, 743, 130,
- 144, 158, 171, 172, 185, 326, 340, 354,
- 367, 380, 522, 536, 549, 562, 575, 718,
- 731, 744, 757, 716, 756, 925, 938, 717,
- 770, 926, 939, 381, 550, 563, 576, 732,
- 745, 758, 771, 927, 940, 912, 952, 1121,
- 1134, 913, 953, 966, 1122, 1135, 368, 577,
- 746, 759, 772, 914, 928, 941, 954, 967,
- 1123, 1136, 144, 145, 157, 158, 159, 171,
- 172, 184, 185, 186, 327, 340, 341, 353,
- 354, 355, 366, 367, 368, 380, 381, 523,
- 536, 537, 549, 550, 562, 563, 576, 732,
- 745, 146, 160, 173, 187, 328, 342, 356,
- 369, 382, 524, 538, 551, 564, 577, 733,
- 746, 133, 147, 161, 174, 175, 188, 329,
- 343, 357, 370, 383, 525, 539, 552, 565,
- 578, 721, 734, 747, 760, 719, 758, 759,
- 772, 928, 941, 720, 773, 929, 942, 371,
- 384, 553, 566, 579, 735, 748, 761, 774,
- 917, 930, 943, 956, 915, 954, 955, 968,
- 1124, 1137, 916, 969, 1125, 1138, 567, 580,
- 749, 762, 775, 931, 944, 957, 970, 1113,
- 1126, 1139, 1152, 147, 148, 160, 161, 162,
- 174, 175, 187, 188, 189, 330, 343, 344,
- 356, 357, 358, 369, 370, 371, 383, 384,
- 526, 539, 540, 552, 553, 565, 566, 579,
- 735, 748, 149, 163, 176, 190, 331, 345,
- 359, 372, 385, 527, 541, 554, 567, 580,
- 736, 749, 136, 150, 164, 177, 178, 191,
- 332, 346, 360, 373, 386, 528, 542, 555,
- 568, 581, 724, 737, 750, 763, 722, 761,
- 762, 775, 931, 944, 723, 776, 932, 945,
- 374, 387, 556, 569, 582, 738, 751, 764,
- 777, 920, 933, 946, 959, 918, 957, 958,
- 971, 1127, 1140, 919, 972, 1128, 1141, 570,
- 583, 752, 765, 778, 934, 947, 960, 973,
- 1116, 1129, 1142, 1155, 150, 151, 163, 164,
- 165, 177, 178, 190, 191, 192, 333, 346,
- 347, 359, 360, 361, 372, 373, 374, 386,
- 387, 529, 542, 543, 555, 556, 568, 569,
- 582, 738, 751, 138, 152, 166, 179, 193,
- 334, 348, 362, 375, 388, 530, 544, 557,
- 570, 583, 739, 752, 139, 153, 167, 180,
- 181, 194, 335, 349, 363, 376, 389, 531,
- 545, 558, 571, 584, 727, 740, 753, 766,
- 725, 764, 765, 778, 934, 947, 726, 779,
- 922, 935, 948, 961, 377, 390, 559, 572,
- 585, 741, 754, 767, 780, 923, 936, 949,
- 962, 921, 960, 974, 1130, 1143, 975, 1131,
- 1144, 573, 586, 755, 768, 781, 937, 950,
- 963, 976, 1119, 1132, 1145, 153, 166, 167,
- 180, 181, 193, 194, 195, 349, 362, 363,
- 375, 376, 377, 389, 390, 545, 558, 559,
- 571, 572, 585, 741, 754, 391, 573, 586,
- 755, 767, 768, 781, 937, 950, 587, 769,
- 782, 951, 963, 964, 977, 1133, 1146, 15,
- 28, 197, 198, 210, 211, 224, 392, 393,
- 394, 406, 407, 420, 588, 589, 602, 603,
- 616, 784, 785, 798, 980, 16, 29, 199,
- 212, 225, 238, 395, 408, 421, 434, 590,
- 604, 617, 786, 799, 812, 981, 994, 17,
- 30, 200, 213, 226, 239, 396, 409, 422,
- 435, 591, 592, 605, 618, 631, 787, 800,
- 813, 982, 995, 1177, 42, 630, 1176, 43,
- 252, 448, 644, 826, 1008, 1190, 31, 44,
- 214, 227, 240, 253, 410, 423, 436, 449,
- 619, 632, 788, 801, 814, 827, 983, 996,
- 1009, 1178, 56, 57, 266, 462, 645, 840,
- 1022, 1191, 45, 58, 228, 241, 254, 267,
- 424, 437, 450, 463, 606, 633, 646, 802,
- 815, 828, 841, 984, 997, 1010, 1023, 1179,
- 1192, 1373, 1372, 1204, 1205, 1374, 1386, 658,
- 1036, 1218, 1387, 620, 659, 829, 842, 998,
- 1011, 1024, 1037, 1180, 1193, 1206, 1219, 1375,
- 1388, 1401, 1568, 1400, 1569, 1570, 1582, 854,
- 1232, 1414, 1583, 816, 855, 1025, 1038, 1194,
- 1207, 1220, 1233, 1376, 1389, 1402, 1415, 1571,
- 1584, 1597, 18, 31, 200, 201, 213, 214,
- 226, 227, 240, 395, 396, 397, 408, 409,
- 410, 422, 423, 436, 591, 592, 604, 605,
- 606, 618, 619, 786, 787, 788, 800, 801,
- 814, 982, 983, 996, 19, 32, 202, 215,
- 228, 241, 398, 411, 424, 437, 593, 607,
- 620, 789, 802, 815, 984, 997, 7, 20,
- 33, 46, 203, 216, 229, 242, 399, 412,
- 425, 438, 594, 595, 608, 621, 634, 790,
- 803, 816, 985, 998, 1180, 45, 254, 450,
- 632, 633, 828, 1010, 1179, 59, 255, 451,
- 647, 829, 1011, 1193, 34, 47, 217, 230,
- 243, 256, 413, 426, 439, 452, 622, 635,
- 791, 804, 817, 830, 986, 999, 1012, 1181,
- 72, 268, 464, 646, 660, 842, 1024, 60,
- 269, 465, 648, 843, 1025, 1194, 48, 61,
- 231, 244, 257, 270, 427, 440, 453, 466,
- 609, 636, 649, 805, 818, 831, 844, 987,
- 1000, 1013, 1026, 1182, 1195, 1178, 1192, 1375,
- 1376, 1206, 1207, 1208, 1377, 856, 1038, 1220,
- 1389, 661, 1039, 1221, 1390, 623, 662, 832,
- 845, 1001, 1014, 1027, 1040, 1183, 1196, 1209,
- 1222, 1378, 1391, 1404, 1374, 1388, 1571, 1402,
- 1403, 1572, 1573, 1234, 1416, 1585, 857, 1235,
- 1417, 1586, 819, 858, 1028, 1041, 1197, 1210,
- 1223, 1236, 1379, 1392, 1405, 1418, 1574, 1587,
- 1600, 21, 34, 203, 204, 216, 217, 229,
- 230, 243, 398, 399, 400, 411, 412, 413,
- 425, 426, 439, 594, 595, 607, 608, 609,
- 621, 622, 789, 790, 791, 803, 804, 817,
- 985, 986, 999, 22, 35, 205, 218, 231,
- 244, 401, 414, 427, 440, 596, 610, 623,
- 792, 805, 818, 987, 1000, 10, 23, 36,
- 49, 206, 219, 232, 245, 402, 415, 428,
- 441, 597, 598, 611, 624, 637, 793, 806,
- 819, 988, 1001, 1183, 48, 257, 453, 635,
- 636, 831, 1013, 1182, 62, 258, 454, 650,
- 832, 1014, 1196, 37, 50, 220, 233, 246,
- 259, 416, 429, 442, 455, 612, 625, 638,
- 794, 807, 820, 833, 989, 1002, 1015, 1184,
- 75, 271, 467, 649, 663, 845, 1027, 63,
- 272, 468, 651, 846, 1028, 1197, 38, 51,
- 64, 234, 247, 260, 273, 430, 443, 456,
- 469, 626, 639, 652, 808, 821, 834, 847,
- 990, 1003, 1016, 1029, 1185, 1198, 1181, 1195,
- 1378, 1379, 1209, 1210, 1211, 1380, 859, 1041,
- 1223, 1392, 664, 1042, 1224, 1393, 665, 822,
- 835, 848, 1004, 1017, 1030, 1043, 1186, 1199,
- 1212, 1225, 1381, 1394, 1407, 1377, 1391, 1574,
- 1405, 1406, 1575, 1576, 1237, 1419, 1588, 860,
- 1238, 1420, 1589, 861, 1018, 1031, 1044, 1200,
- 1213, 1226, 1239, 1382, 1395, 1408, 1421, 1577,
- 1590, 1603, 24, 37, 206, 207, 219, 220,
- 232, 233, 246, 401, 402, 403, 414, 415,
- 416, 428, 429, 442, 597, 598, 610, 611,
- 612, 624, 625, 792, 793, 794, 806, 807,
- 820, 988, 989, 1002, 12, 25, 38, 51,
- 208, 221, 234, 247, 404, 417, 430, 443,
- 599, 613, 626, 795, 808, 821, 990, 1003,
- 1185, 13, 26, 39, 52, 209, 222, 235,
- 248, 405, 418, 431, 444, 600, 601, 614,
- 627, 640, 796, 809, 822, 991, 1004, 1186,
- 260, 456, 638, 639, 834, 1016, 65, 261,
- 457, 653, 835, 1017, 1199, 40, 53, 223,
- 236, 249, 262, 419, 432, 445, 458, 615,
- 628, 641, 654, 797, 810, 823, 836, 992,
- 1005, 1018, 1187, 274, 470, 652, 848, 1030,
- 66, 275, 471, 667, 849, 1031, 1200, 1213,
- 41, 54, 67, 80, 237, 250, 263, 276,
- 433, 446, 459, 472, 629, 642, 655, 668,
- 811, 824, 837, 850, 993, 1006, 1019, 1032,
- 1188, 1201, 1184, 1198, 1381, 1382, 1212, 1214,
- 1383, 666, 1044, 1226, 1395, 1045, 1227, 1396,
- 825, 838, 851, 864, 1007, 1020, 1033, 1046,
- 1189, 1202, 1215, 1228, 1384, 1397, 1380, 1394,
- 1577, 1408, 1409, 1578, 1410, 1579, 862, 1240,
- 1422, 1591, 863, 1059, 1241, 1423, 1592, 1605,
- 1021, 1034, 1047, 1060, 1203, 1216, 1229, 1242,
- 1385, 1398, 1411, 1424, 1580, 1593, 27, 40,
- 209, 222, 223, 235, 236, 249, 404, 405,
- 417, 418, 419, 431, 432, 445, 600, 601,
- 613, 614, 615, 627, 628, 795, 796, 797,
- 809, 810, 823, 991, 992, 1005, 41, 54,
- 237, 250, 263, 433, 446, 459, 629, 641,
- 642, 811, 824, 837, 993, 1006, 1019, 1188,
- 55, 68, 251, 264, 277, 447, 460, 473,
- 643, 655, 656, 825, 838, 851, 1007, 1020,
- 1033, 1189, 1202, 1187, 1201, 1215, 1384, 669,
- 839, 852, 1021, 1034, 1047, 1203, 1216, 1229,
- 1385, 1398, 1383, 1397, 1411, 1580, 865, 1035,
- 1048, 1217, 1230, 1243, 1399, 1412, 1425, 1581,
- 1594, 57, 70, 226, 239, 240, 252, 253,
- 266, 408, 421, 422, 434, 435, 436, 448,
- 449, 462, 603, 604, 616, 617, 618, 630,
- 631, 644, 645, 658, 786, 799, 800, 812,
- 813, 814, 826, 827, 840, 982, 995, 996,
- 1008, 1009, 1022, 1191, 1204, 58, 71, 227,
- 241, 254, 267, 280, 409, 423, 437, 450,
- 463, 476, 591, 605, 619, 632, 646, 659,
- 787, 801, 815, 828, 841, 854, 983, 997,
- 1010, 1023, 1036, 1192, 1205, 46, 59, 72,
- 85, 228, 242, 255, 268, 281, 410, 424,
- 438, 451, 464, 477, 592, 606, 620, 633,
- 634, 647, 660, 673, 788, 802, 816, 829,
- 842, 855, 984, 998, 1011, 1024, 1037, 1180,
- 1193, 1206, 1219, 84, 672, 1218, 98, 294,
- 490, 686, 868, 1050, 73, 86, 256, 269,
- 282, 295, 452, 465, 478, 491, 661, 674,
- 830, 843, 856, 869, 1012, 1025, 1038, 1051,
- 1207, 1220, 1232, 99, 308, 504, 687, 882,
- 1064, 1233, 74, 87, 100, 113, 270, 283,
- 296, 309, 466, 479, 492, 505, 648, 675,
- 688, 844, 857, 870, 883, 1026, 1039, 1052,
- 1065, 1221, 1234, 1178, 1387, 1400, 1179, 1375,
- 1388, 1401, 1414, 1194, 1376, 1389, 1402, 1415,
- 1246, 1208, 1247, 1403, 1416, 1428, 700, 1078,
- 1260, 1429, 662, 701, 858, 871, 884, 897,
- 1040, 1053, 1066, 1079, 1222, 1235, 1248, 1261,
- 1404, 1417, 1430, 1443, 1374, 1583, 1596, 1571,
- 1584, 1597, 1610, 1390, 1585, 1598, 1442, 1611,
- 1599, 1612, 1624, 896, 1274, 1456, 1625, 1067,
- 1080, 1236, 1249, 1262, 1275, 1418, 1431, 1444,
- 1457, 1600, 1613, 1626, 1639, 60, 73, 229,
- 242, 243, 255, 256, 268, 269, 282, 411,
- 424, 425, 437, 438, 439, 450, 451, 452,
- 464, 465, 478, 606, 607, 619, 620, 621,
- 633, 634, 646, 647, 648, 660, 661, 789,
- 802, 803, 815, 816, 817, 828, 829, 830,
- 842, 843, 856, 985, 998, 999, 1011, 1012,
- 1024, 1025, 1038, 1194, 1207, 61, 74, 230,
- 244, 257, 270, 283, 412, 426, 440, 453,
- 466, 479, 594, 608, 622, 635, 649, 662,
- 790, 804, 818, 831, 844, 857, 986, 1000,
- 1013, 1026, 1039, 1195, 1208, 49, 62, 75,
- 88, 231, 245, 258, 271, 284, 413, 427,
- 441, 454, 467, 480, 595, 609, 623, 636,
- 637, 650, 663, 676, 791, 805, 819, 832,
- 845, 858, 987, 1001, 1014, 1027, 1040, 1183,
- 1196, 1209, 1222, 87, 100, 296, 492, 674,
- 675, 688, 870, 1052, 1221, 101, 297, 493,
- 689, 871, 1053, 76, 89, 259, 272, 285,
- 298, 455, 468, 481, 494, 664, 677, 833,
- 846, 859, 872, 1015, 1028, 1041, 1054, 1210,
- 1223, 114, 310, 506, 702, 884, 1066, 1235,
- 102, 311, 507, 690, 885, 1067, 1236, 77,
- 90, 103, 116, 273, 286, 299, 312, 469,
- 482, 495, 508, 651, 678, 691, 847, 860,
- 873, 886, 1029, 1042, 1055, 1068, 1224, 1237,
- 1181, 1220, 1234, 1390, 1403, 1182, 1378, 1391,
- 1404, 1417, 1197, 1379, 1392, 1405, 1418, 1248,
- 1430, 1249, 1211, 1250, 1406, 1419, 898, 1080,
- 1262, 1431, 703, 1081, 1263, 1432, 665, 704,
- 861, 874, 887, 900, 1043, 1056, 1069, 1082,
- 1225, 1238, 1251, 1264, 1407, 1420, 1433, 1446,
- 1377, 1416, 1586, 1599, 1574, 1587, 1600, 1613,
- 1393, 1588, 1601, 1444, 1626, 1445, 1614, 1602,
- 1615, 1276, 1458, 1627, 899, 1277, 1459, 1628,
- 1070, 1083, 1239, 1252, 1265, 1278, 1421, 1434,
- 1447, 1460, 1603, 1616, 1629, 1642, 63, 76,
- 232, 245, 246, 258, 259, 271, 272, 285,
- 414, 427, 428, 440, 441, 442, 453, 454,
- 455, 467, 468, 481, 609, 610, 622, 623,
- 624, 636, 637, 649, 650, 651, 663, 664,
- 792, 805, 806, 818, 819, 820, 831, 832,
- 833, 845, 846, 859, 988, 1001, 1002, 1014,
- 1015, 1027, 1028, 1041, 1197, 1210, 64, 77,
- 233, 247, 260, 273, 286, 415, 429, 443,
- 456, 469, 482, 597, 611, 625, 638, 652,
- 665, 793, 807, 821, 834, 847, 860, 989,
- 1003, 1016, 1029, 1042, 1198, 1211, 52, 65,
- 78, 91, 234, 248, 261, 274, 287, 416,
- 430, 444, 457, 470, 483, 598, 612, 626,
- 639, 640, 653, 666, 679, 794, 808, 822,
- 835, 848, 861, 990, 1004, 1017, 1030, 1043,
- 1186, 1199, 1212, 1225, 90, 103, 299, 495,
- 677, 678, 691, 873, 1055, 1224, 104, 300,
- 496, 692, 874, 1056, 79, 92, 262, 275,
- 288, 301, 458, 471, 484, 497, 654, 667,
- 680, 836, 849, 862, 875, 1018, 1031, 1044,
- 1057, 1200, 1213, 1226, 117, 313, 509, 705,
- 887, 1069, 1238, 105, 314, 510, 693, 888,
- 1070, 1239, 80, 93, 106, 119, 276, 289,
- 302, 315, 472, 485, 498, 511, 668, 681,
- 694, 850, 863, 876, 889, 1032, 1045, 1058,
- 1071, 1214, 1227, 1240, 1184, 1223, 1237, 1393,
- 1406, 1185, 1381, 1394, 1407, 1420, 1382, 1395,
- 1408, 1421, 1251, 1433, 1252, 1253, 1409, 1422,
- 901, 1083, 1265, 1434, 706, 1084, 1266, 1435,
- 707, 864, 877, 890, 903, 1046, 1059, 1072,
- 1085, 1228, 1241, 1254, 1267, 1410, 1423, 1436,
- 1449, 1380, 1419, 1589, 1602, 1577, 1590, 1603,
- 1616, 1396, 1591, 1604, 1447, 1629, 1448, 1617,
- 1592, 1605, 1618, 1279, 1461, 1630, 902, 1280,
- 1462, 1631, 1060, 1073, 1086, 1242, 1255, 1268,
- 1281, 1424, 1437, 1450, 1463, 1606, 1619, 1632,
- 1645, 66, 79, 235, 248, 249, 261, 262,
- 274, 275, 288, 417, 430, 431, 443, 444,
- 445, 456, 457, 458, 470, 471, 484, 612,
- 613, 625, 626, 627, 639, 640, 652, 653,
- 654, 666, 667, 795, 808, 809, 821, 822,
- 823, 834, 835, 836, 848, 849, 862, 991,
- 1004, 1005, 1017, 1018, 1030, 1031, 1044, 1200,
- 1213, 67, 80, 93, 236, 250, 263, 276,
- 289, 418, 432, 446, 459, 472, 485, 600,
- 614, 628, 641, 655, 668, 796, 810, 824,
- 837, 850, 863, 992, 1006, 1019, 1032, 1045,
- 1201, 1214, 55, 68, 81, 94, 237, 251,
- 264, 277, 290, 419, 433, 447, 460, 473,
- 486, 601, 615, 629, 642, 643, 656, 669,
- 682, 797, 811, 825, 838, 851, 864, 993,
- 1007, 1020, 1033, 1046, 1189, 1202, 1215, 1228,
- 302, 498, 680, 681, 876, 1058, 1227, 107,
- 303, 499, 695, 877, 1059, 1241, 82, 95,
- 265, 278, 291, 304, 461, 474, 487, 500,
- 657, 670, 683, 696, 839, 852, 865, 878,
- 1021, 1034, 1047, 1060, 1203, 1216, 1229, 316,
- 512, 694, 890, 1072, 108, 317, 513, 709,
- 891, 1073, 1242, 1255, 96, 109, 279, 292,
- 305, 318, 475, 488, 501, 514, 684, 697,
- 853, 866, 879, 892, 1035, 1048, 1061, 1074,
- 1217, 1230, 1243, 1187, 1226, 1240, 1396, 1409,
- 1188, 1384, 1397, 1410, 1423, 1385, 1398, 1411,
- 1254, 1424, 1437, 1256, 1412, 1425, 708, 1086,
- 1268, 905, 1087, 1269, 1438, 671, 710, 880,
- 893, 1049, 1062, 1075, 1088, 1231, 1244, 1257,
- 1270, 1413, 1426, 1439, 1383, 1422, 1436, 1592,
- 1605, 1580, 1593, 1606, 1619, 1399, 1594, 1607,
- 1450, 1451, 1620, 1452, 1595, 1608, 1621, 1634,
- 904, 1282, 1464, 1633, 1101, 1283, 1465, 1647,
- 867, 906, 1076, 1089, 1245, 1258, 1271, 1284,
- 1427, 1440, 1453, 1466, 1609, 1622, 1635, 69,
- 82, 251, 264, 265, 277, 278, 291, 433,
- 446, 447, 459, 460, 461, 473, 474, 487,
- 615, 628, 629, 642, 643, 655, 656, 657,
- 669, 670, 811, 824, 825, 837, 838, 839,
- 851, 852, 865, 1007, 1020, 1021, 1033, 1034,
- 1047, 1203, 1216, 83, 96, 279, 292, 305,
- 475, 488, 501, 671, 683, 684, 853, 866,
- 879, 1035, 1048, 1061, 1217, 1230, 97, 110,
- 293, 306, 319, 489, 502, 515, 685, 697,
- 698, 867, 880, 893, 1049, 1062, 1075, 1231,
- 1244, 1229, 1243, 1399, 1412, 1257, 1413, 1426,
- 711, 881, 894, 1063, 1076, 1089, 1245, 1258,
- 1271, 1427, 1440, 1425, 1439, 1595, 1608, 1453,
- 1609, 1622, 907, 1077, 1090, 1259, 1272, 1285,
- 1441, 1454, 1467, 1623, 1636, 99, 112, 268,
- 281, 282, 294, 295, 308, 450, 463, 464,
- 476, 477, 478, 490, 491, 504, 645, 646,
- 658, 659, 660, 672, 673, 686, 687, 700,
- 828, 841, 842, 854, 855, 856, 868, 869,
- 882, 1024, 1037, 1038, 1050, 1051, 1064, 1233,
- 1246, 100, 113, 269, 283, 296, 309, 322,
- 451, 465, 479, 492, 505, 518, 633, 647,
- 661, 674, 688, 701, 829, 843, 857, 870,
- 883, 896, 1025, 1039, 1052, 1065, 1078, 1234,
- 1247, 88, 101, 114, 127, 270, 284, 297,
- 310, 323, 452, 466, 480, 493, 506, 519,
- 648, 662, 675, 676, 689, 702, 715, 830,
- 844, 858, 871, 884, 897, 1026, 1040, 1053,
- 1066, 1079, 1235, 1248, 126, 714, 1260, 336,
- 532, 910, 1092, 1261, 115, 128, 298, 311,
- 324, 337, 494, 507, 520, 533, 703, 716,
- 872, 885, 898, 911, 1054, 1067, 1080, 1093,
- 1249, 1262, 140, 728, 1274, 141, 350, 546,
- 729, 924, 1106, 1275, 116, 129, 142, 155,
- 312, 325, 338, 351, 508, 521, 534, 547,
- 690, 717, 730, 743, 886, 899, 912, 925,
- 1068, 1081, 1094, 1107, 1263, 1276, 1220, 1429,
- 1442, 1221, 1417, 1430, 1443, 1456, 1222, 1236,
- 1431, 1444, 1288, 1457, 1250, 1289, 1445, 1458,
- 1470, 742, 1120, 1302, 1471, 704, 900, 913,
- 926, 939, 1082, 1095, 1108, 1121, 1264, 1277,
- 1290, 1303, 1446, 1459, 1472, 1485, 1416, 1625,
- 1638, 1613, 1626, 1639, 1652, 1418, 1432, 1627,
- 1640, 1484, 1653, 1641, 1654, 1666, 938, 1316,
- 1498, 1667, 1109, 1122, 1135, 1278, 1291, 1304,
- 1317, 1460, 1473, 1486, 1499, 1642, 1655, 1668,
- 1681, 102, 115, 271, 284, 285, 297, 298,
- 310, 311, 324, 453, 466, 467, 479, 480,
- 481, 492, 493, 494, 506, 507, 520, 648,
- 649, 661, 662, 663, 675, 676, 688, 689,
- 690, 702, 703, 831, 844, 845, 857, 858,
- 859, 870, 871, 872, 884, 885, 898, 1027,
- 1040, 1041, 1053, 1054, 1066, 1067, 1080, 1236,
- 1249, 103, 116, 272, 286, 299, 312, 325,
- 454, 468, 482, 495, 508, 521, 636, 650,
- 664, 677, 691, 704, 832, 846, 860, 873,
- 886, 899, 1028, 1042, 1055, 1068, 1081, 1237,
- 1250, 91, 104, 117, 130, 273, 287, 300,
- 313, 326, 455, 469, 483, 496, 509, 522,
- 651, 665, 678, 679, 692, 705, 718, 833,
- 847, 861, 874, 887, 900, 1029, 1043, 1056,
- 1069, 1082, 1238, 1251, 129, 142, 338, 534,
- 716, 717, 730, 912, 1094, 1263, 339, 535,
- 913, 1095, 1264, 118, 131, 301, 314, 327,
- 340, 497, 510, 523, 536, 706, 719, 875,
- 888, 901, 914, 1057, 1070, 1083, 1096, 1252,
- 1265, 143, 156, 352, 548, 731, 744, 926,
- 1108, 1277, 144, 353, 549, 732, 927, 1109,
- 1278, 119, 132, 145, 158, 315, 328, 341,
- 354, 511, 524, 537, 550, 693, 720, 733,
- 746, 889, 902, 915, 928, 1071, 1084, 1097,
- 1110, 1266, 1279, 1223, 1262, 1276, 1432, 1445,
- 1224, 1420, 1433, 1446, 1459, 1225, 1239, 1434,
- 1447, 1290, 1472, 1291, 1460, 1253, 1292, 1448,
- 1461, 940, 1122, 1304, 1473, 745, 1123, 1305,
- 1474, 707, 903, 916, 929, 942, 1085, 1098,
- 1111, 1124, 1267, 1280, 1293, 1306, 1449, 1462,
- 1475, 1488, 1419, 1458, 1628, 1641, 1616, 1629,
- 1642, 1655, 1421, 1435, 1630, 1643, 1486, 1487,
- 1656, 1644, 1657, 1318, 1500, 1669, 941, 1319,
- 1501, 1670, 1112, 1125, 1138, 1281, 1294, 1307,
- 1320, 1463, 1476, 1489, 1502, 1645, 1658, 1671,
- 1684, 105, 118, 274, 287, 288, 300, 301,
- 313, 314, 327, 456, 469, 470, 482, 483,
- 484, 495, 496, 497, 509, 510, 523, 651,
- 652, 664, 665, 666, 678, 679, 691, 692,
- 693, 705, 706, 834, 847, 848, 860, 861,
- 862, 873, 874, 875, 887, 888, 901, 1030,
- 1043, 1044, 1056, 1057, 1069, 1070, 1083, 1239,
- 1252, 106, 119, 275, 289, 302, 315, 328,
- 457, 471, 485, 498, 511, 524, 639, 653,
- 667, 680, 694, 707, 835, 849, 863, 876,
- 889, 902, 1031, 1045, 1058, 1071, 1084, 1240,
- 1253, 94, 107, 120, 276, 290, 303, 316,
- 329, 458, 472, 486, 499, 512, 525, 640,
- 654, 668, 681, 682, 695, 708, 836, 850,
- 864, 877, 890, 903, 1032, 1046, 1059, 1072,
- 1085, 1228, 1241, 1254, 132, 145, 341, 537,
- 719, 720, 733, 915, 1097, 1266, 133, 342,
- 538, 721, 916, 1098, 1267, 121, 134, 304,
- 317, 330, 343, 500, 513, 526, 539, 696,
- 709, 722, 735, 878, 891, 904, 917, 1060,
- 1073, 1086, 1099, 1242, 1255, 1268, 1281, 146,
- 355, 551, 734, 929, 1111, 1280, 147, 356,
- 552, 930, 1112, 135, 148, 318, 331, 344,
- 357, 514, 527, 540, 553, 723, 736, 892,
- 905, 918, 931, 1074, 1087, 1100, 1113, 1256,
- 1269, 1282, 1226, 1265, 1279, 1435, 1448, 1227,
- 1423, 1436, 1449, 1462, 1424, 1437, 1450, 1293,
- 1475, 1294, 1463, 1295, 1438, 1451, 1464, 747,
- 1125, 1307, 1476, 748, 1126, 1308, 1477, 710,
- 749, 919, 932, 1088, 1101, 1114, 1127, 1270,
- 1283, 1296, 1309, 1452, 1465, 1478, 1491, 1422,
- 1461, 1631, 1644, 1619, 1632, 1645, 1658, 1633,
- 1646, 1489, 1490, 1659, 1634, 1647, 1660, 1673,
- 943, 1321, 1503, 1672, 944, 1322, 1504, 906,
- 945, 1115, 1128, 1284, 1297, 1310, 1323, 1466,
- 1479, 1492, 1505, 1648, 1661, 1674, 1687, 108,
- 121, 277, 290, 291, 303, 304, 316, 317,
- 330, 459, 472, 473, 485, 486, 487, 498,
- 499, 500, 512, 513, 526, 654, 655, 667,
- 668, 669, 681, 682, 694, 695, 696, 708,
- 709, 837, 850, 851, 863, 864, 865, 876,
- 877, 878, 890, 891, 904, 1033, 1046, 1047,
- 1059, 1060, 1072, 1073, 1086, 1242, 1255, 109,
- 122, 278, 292, 305, 318, 331, 460, 474,
- 488, 501, 514, 527, 642, 656, 670, 683,
- 697, 710, 838, 852, 866, 879, 892, 905,
- 1034, 1048, 1061, 1074, 1087, 1243, 1256, 97,
- 110, 123, 136, 279, 293, 306, 319, 332,
- 461, 475, 489, 502, 515, 528, 643, 657,
- 671, 684, 685, 698, 711, 724, 839, 853,
- 867, 880, 893, 906, 1035, 1049, 1062, 1075,
- 1088, 1231, 1244, 1257, 1270, 135, 344, 540,
- 722, 723, 918, 1100, 1269, 149, 345, 541,
- 737, 919, 1101, 1283, 124, 137, 307, 320,
- 333, 346, 503, 516, 529, 542, 699, 712,
- 725, 738, 881, 894, 907, 920, 1063, 1076,
- 1089, 1102, 1258, 1271, 162, 358, 554, 736,
- 750, 932, 1114, 1296, 150, 359, 555, 751,
- 933, 1115, 1284, 138, 151, 321, 334, 347,
- 360, 517, 530, 543, 556, 726, 739, 752,
- 895, 908, 921, 934, 1077, 1090, 1103, 1116,
- 1272, 1285, 1229, 1268, 1282, 1438, 1451, 1230,
- 1426, 1439, 1452, 1465, 1245, 1427, 1440, 1453,
- 1466, 1297, 1479, 1259, 1298, 1454, 1467, 946,
- 1128, 1310, 1492, 947, 1129, 1311, 1480, 713,
- 922, 935, 948, 1091, 1104, 1117, 1130, 1273,
- 1286, 1299, 1312, 1455, 1468, 1481, 1494, 1425,
- 1464, 1478, 1634, 1647, 1622, 1635, 1648, 1661,
- 1441, 1636, 1649, 1493, 1662, 1675, 1637, 1650,
- 1663, 1676, 1324, 1506, 1143, 1325, 1507, 1689,
- 909, 1118, 1131, 1144, 1287, 1300, 1313, 1326,
- 1469, 1482, 1495, 1508, 1651, 1664, 1677, 1690,
- 111, 124, 293, 306, 307, 319, 320, 333,
- 475, 488, 489, 501, 502, 503, 515, 516,
- 529, 657, 670, 671, 684, 685, 697, 698,
- 699, 711, 712, 853, 866, 867, 879, 880,
- 881, 893, 894, 907, 1049, 1062, 1063, 1075,
- 1076, 1089, 1245, 1258, 125, 138, 321, 334,
- 347, 517, 530, 543, 713, 725, 726, 895,
- 908, 921, 1077, 1090, 1103, 1259, 1272, 139,
- 152, 165, 335, 348, 361, 531, 544, 557,
- 727, 739, 740, 753, 909, 922, 935, 1091,
- 1104, 1117, 1273, 1286, 1299, 1271, 1285, 1441,
- 1454, 1455, 1468, 923, 936, 949, 1105, 1118,
- 1131, 1287, 1300, 1313, 1469, 1482, 1495, 1467,
- 1481, 1637, 1650, 1651, 1664, 1119, 1132, 1301,
- 1314, 1327, 1483, 1496, 1509, 1665, 1678, 141,
- 154, 310, 323, 324, 336, 337, 350, 492,
- 505, 506, 518, 519, 520, 532, 533, 546,
- 687, 688, 700, 701, 702, 714, 715, 728,
- 729, 742, 870, 883, 884, 896, 897, 898,
- 910, 911, 924, 1066, 1079, 1080, 1092, 1093,
- 1106, 1275, 1288, 142, 155, 311, 325, 338,
- 351, 364, 493, 507, 521, 534, 547, 560,
- 675, 689, 703, 716, 730, 743, 871, 885,
- 899, 912, 925, 938, 1067, 1081, 1094, 1107,
- 1120, 1276, 1289, 130, 143, 156, 169, 312,
- 326, 339, 352, 365, 494, 508, 522, 535,
- 548, 561, 690, 704, 717, 718, 731, 744,
- 757, 872, 886, 900, 913, 926, 939, 1068,
- 1082, 1095, 1108, 1121, 1277, 1290, 168, 756,
- 1302, 378, 574, 952, 1134, 1303, 157, 170,
- 340, 353, 366, 379, 536, 549, 562, 575,
- 745, 758, 914, 927, 940, 953, 1096, 1109,
- 1122, 1135, 1291, 1304, 182, 770, 1316, 183,
- 771, 966, 1148, 1317, 158, 171, 184, 354,
- 367, 380, 550, 563, 576, 732, 746, 759,
- 772, 928, 941, 954, 967, 1110, 1123, 1136,
- 1149, 1305, 1318, 1262, 1471, 1484, 1263, 1459,
- 1472, 1485, 1498, 1264, 1278, 1473, 1486, 1330,
- 1499, 1292, 1331, 1487, 1500, 1512, 1162, 1344,
- 1513, 942, 955, 968, 1124, 1137, 1150, 1163,
- 1306, 1319, 1332, 1345, 1488, 1501, 1514, 1458,
- 1667, 1680, 1655, 1668, 1681, 1694, 1460, 1474,
- 1669, 1682, 1526, 1695, 1527, 1683, 1696, 1708,
- 1358, 1540, 1709, 1138, 1151, 1164, 1320, 1333,
- 1346, 1359, 1502, 1515, 1528, 1541, 1684, 1697,
- 1710, 144, 157, 313, 326, 327, 339, 340,
- 352, 353, 366, 495, 508, 509, 521, 522,
- 523, 534, 535, 536, 548, 549, 562, 690,
- 691, 703, 704, 705, 717, 718, 730, 731,
- 732, 744, 745, 873, 886, 887, 899, 900,
- 901, 912, 913, 914, 926, 927, 940, 1069,
- 1082, 1083, 1095, 1096, 1108, 1109, 1122, 1278,
- 1291, 145, 158, 314, 328, 341, 354, 367,
- 496, 510, 524, 537, 550, 563, 678, 692,
- 706, 719, 733, 746, 874, 888, 902, 915,
- 928, 941, 1070, 1084, 1097, 1110, 1123, 1279,
- 1292, 146, 159, 315, 329, 342, 355, 368,
- 497, 511, 525, 538, 551, 564, 693, 707,
- 720, 734, 747, 875, 889, 903, 916, 929,
- 942, 1071, 1085, 1098, 1111, 1124, 1280, 1293,
- 171, 184, 380, 576, 758, 759, 772, 954,
- 1136, 1305, 172, 381, 577, 760, 955, 1137,
- 1306, 160, 173, 343, 356, 369, 382, 539,
- 552, 565, 578, 721, 735, 748, 761, 774,
- 917, 930, 943, 956, 1099, 1112, 1125, 1138,
- 1281, 1294, 1307, 1320, 185, 773, 968, 1150,
- 1319, 186, 969, 1151, 1333, 174, 187, 357,
- 370, 383, 553, 566, 579, 762, 775, 931,
- 944, 957, 970, 1113, 1126, 1139, 1152, 1308,
- 1321, 1265, 1304, 1318, 1474, 1487, 1266, 1462,
- 1475, 1488, 1501, 1267, 1476, 1489, 1332, 1514,
- 1502, 1295, 1334, 1490, 1503, 1164, 1346, 1515,
- 1165, 1347, 1516, 749, 958, 971, 1127, 1140,
- 1153, 1166, 1309, 1322, 1335, 1348, 1491, 1504,
- 1517, 1461, 1500, 1670, 1683, 1658, 1671, 1684,
- 1697, 1463, 1477, 1672, 1685, 1528, 1529, 1698,
- 1530, 1673, 1686, 1699, 1712, 1360, 1542, 1711,
- 1361, 1543, 1725, 945, 1154, 1167, 1323, 1336,
- 1349, 1362, 1505, 1518, 1531, 1544, 1687, 1700,
- 1713, 147, 160, 316, 329, 330, 342, 343,
- 355, 356, 369, 498, 511, 512, 524, 525,
- 526, 537, 538, 539, 551, 552, 565, 693,
- 694, 706, 707, 708, 720, 721, 733, 734,
- 735, 747, 748, 876, 889, 890, 902, 903,
- 904, 915, 916, 917, 929, 930, 943, 1072,
- 1085, 1086, 1098, 1099, 1111, 1112, 1125, 1281,
- 1294, 148, 161, 317, 331, 344, 357, 370,
- 499, 513, 527, 540, 553, 566, 695, 709,
- 722, 736, 749, 877, 891, 905, 918, 931,
- 944, 1073, 1087, 1100, 1113, 1126, 1282, 1295,
- 136, 149, 162, 175, 318, 332, 345, 358,
- 371, 500, 514, 528, 541, 554, 567, 682,
- 696, 710, 723, 724, 737, 750, 763, 878,
- 892, 906, 919, 932, 945, 1074, 1088, 1101,
- 1114, 1127, 1270, 1283, 1296, 1309, 174, 383,
- 579, 761, 762, 957, 1139, 1308, 188, 384,
- 580, 776, 958, 1140, 1322, 163, 176, 346,
- 359, 372, 385, 542, 555, 568, 581, 738,
- 751, 764, 777, 920, 933, 946, 959, 1102,
- 1115, 1128, 1141, 1297, 1310, 775, 971, 1153,
- 1335, 189, 972, 1154, 1323, 177, 190, 360,
- 373, 386, 556, 569, 582, 752, 765, 778,
- 934, 947, 960, 973, 1116, 1129, 1142, 1155,
- 1311, 1324, 1268, 1307, 1321, 1477, 1490, 1269,
- 1478, 1491, 1284, 1466, 1479, 1492, 1505, 1504,
- 1336, 1518, 1298, 1337, 1493, 1506, 1167, 1349,
- 1531, 1168, 1350, 1519, 948, 961, 974, 1130,
- 1143, 1156, 1169, 1312, 1325, 1338, 1351, 1494,
- 1507, 1520, 1533, 1464, 1503, 1517, 1673, 1686,
- 1465, 1674, 1687, 1480, 1662, 1675, 1688, 1701,
- 1700, 1532, 1714, 1676, 1689, 1702, 1715, 1363,
- 1545, 1364, 1546, 1144, 1157, 1170, 1326, 1339,
- 1352, 1365, 1508, 1521, 1534, 1547, 1690, 1703,
- 1716, 1729, 150, 163, 319, 332, 333, 345,
- 346, 358, 359, 372, 501, 514, 515, 527,
- 528, 529, 540, 541, 542, 554, 555, 568,
- 696, 697, 709, 710, 711, 723, 724, 736,
- 737, 738, 750, 751, 879, 892, 893, 905,
- 906, 907, 918, 919, 920, 932, 933, 946,
- 1075, 1088, 1089, 1101, 1102, 1114, 1115, 1128,
- 1284, 1297, 151, 164, 320, 334, 347, 360,
- 373, 502, 516, 530, 543, 556, 569, 684,
- 698, 712, 725, 739, 752, 880, 894, 908,
- 921, 934, 947, 1076, 1090, 1103, 1116, 1129,
- 1285, 1298, 139, 152, 165, 178, 321, 335,
- 348, 361, 374, 503, 517, 531, 544, 557,
- 570, 685, 699, 713, 726, 727, 740, 753,
- 766, 881, 895, 909, 922, 935, 948, 1077,
- 1091, 1104, 1117, 1130, 1273, 1286, 1299, 1312,
- 177, 386, 582, 764, 765, 960, 1142, 1311,
- 191, 387, 583, 779, 961, 1143, 1325, 166,
- 179, 349, 362, 375, 388, 545, 558, 571,
- 584, 741, 754, 767, 780, 923, 936, 949,
- 962, 1105, 1118, 1131, 1144, 1300, 1313, 778,
- 974, 1156, 192, 975, 1157, 1326, 180, 193,
- 363, 376, 389, 559, 572, 585, 755, 768,
- 781, 937, 950, 963, 976, 1119, 1132, 1145,
- 1158, 1314, 1327, 1271, 1310, 1324, 1480, 1493,
- 1272, 1468, 1481, 1494, 1507, 1287, 1469, 1482,
- 1495, 1508, 1338, 1339, 1301, 1340, 1496, 1509,
- 1170, 1352, 1521, 1171, 1353, 1522, 951, 964,
- 977, 1133, 1146, 1159, 1172, 1315, 1328, 1341,
- 1354, 1510, 1523, 1467, 1506, 1520, 1676, 1689,
- 1664, 1677, 1690, 1703, 1483, 1665, 1678, 1691,
- 1534, 1535, 1704, 1497, 1536, 1692, 1705, 1366,
- 1548, 1717, 1367, 1549, 1718, 1147, 1160, 1173,
- 1329, 1342, 1355, 1368, 1511, 1524, 1537, 1550,
- 1693, 1706, 1719, 153, 166, 335, 348, 349,
- 361, 362, 375, 517, 530, 531, 543, 544,
- 545, 557, 558, 571, 699, 712, 713, 726,
- 727, 739, 740, 741, 753, 754, 895, 908,
- 909, 921, 922, 923, 935, 936, 949, 1091,
- 1104, 1105, 1117, 1118, 1131, 1287, 1300, 167,
- 180, 363, 376, 389, 559, 572, 585, 755,
- 767, 768, 937, 950, 963, 1119, 1132, 1145,
- 1301, 1314, 181, 194, 377, 390, 573, 586,
- 769, 781, 782, 951, 964, 977, 1133, 1146,
- 1159, 1315, 1328, 1313, 1327, 1483, 1496, 1341,
- 1497, 1510, 965, 978, 1147, 1160, 1173, 1329,
- 1342, 1355, 1511, 1524, 1509, 1523, 1679, 1692,
- 1537, 1693, 1706, 1161, 1174, 1343, 1356, 1369,
- 1525, 1538, 1551, 1707, 1720, 183, 352, 365,
- 366, 378, 379, 534, 547, 548, 560, 561,
- 562, 574, 575, 729, 730, 742, 743, 744,
- 756, 757, 770, 771, 912, 925, 926, 938,
- 939, 940, 952, 953, 966, 1108, 1121, 1122,
- 1134, 1135, 1148, 1317, 1330, 184, 353, 367,
- 380, 535, 549, 563, 576, 731, 745, 758,
- 772, 913, 927, 941, 954, 967, 1109, 1123,
- 1136, 1149, 1162, 1318, 1331, 185, 354, 368,
- 381, 536, 550, 564, 577, 732, 746, 759,
- 773, 914, 928, 942, 955, 968, 1110, 1124,
- 1137, 1150, 1163, 1319, 1332, 1304, 1344, 1513,
- 1526, 1305, 1345, 1358, 1514, 1527, 760, 969,
- 1138, 1151, 1164, 1306, 1320, 1333, 1346, 1359,
- 1515, 1528, 1500, 1540, 1709, 1722, 1501, 1541,
- 1554, 1710, 1723, 956, 1165, 1334, 1347, 1360,
- 1502, 1516, 1529, 1542, 1555, 1711, 1724, 186,
- 355, 368, 369, 381, 382, 537, 550, 551,
- 563, 564, 565, 576, 577, 578, 732, 733,
- 745, 746, 747, 759, 760, 772, 773, 774,
- 915, 928, 929, 941, 942, 943, 954, 955,
- 956, 968, 969, 1111, 1124, 1125, 1137, 1138,
- 1150, 1151, 1164, 1320, 1333, 187, 356, 370,
- 383, 538, 552, 566, 579, 734, 748, 761,
- 775, 916, 930, 944, 957, 970, 1112, 1126,
- 1139, 1152, 1165, 1321, 1334, 175, 188, 357,
- 371, 384, 539, 553, 567, 580, 721, 735,
- 749, 762, 763, 776, 917, 931, 945, 958,
- 971, 1113, 1127, 1140, 1153, 1166, 1309, 1322,
- 1335, 1348, 1307, 1346, 1347, 1360, 1516, 1529,
- 1308, 1361, 1517, 1530, 959, 972, 1141, 1154,
- 1167, 1323, 1336, 1349, 1362, 1505, 1518, 1531,
- 1544, 1503, 1542, 1543, 1556, 1712, 1725, 1738,
- 1504, 1557, 1713, 1726, 1155, 1168, 1337, 1350,
- 1363, 1519, 1532, 1545, 1558, 1701, 1714, 1727,
- 1740, 189, 358, 371, 372, 384, 385, 540,
- 553, 554, 566, 567, 568, 579, 580, 581,
- 735, 736, 748, 749, 750, 762, 763, 775,
- 776, 777, 918, 931, 932, 944, 945, 946,
- 957, 958, 959, 971, 972, 1114, 1127, 1128,
- 1140, 1141, 1153, 1154, 1167, 1323, 1336, 190,
- 359, 373, 386, 541, 555, 569, 582, 737,
- 751, 764, 778, 919, 933, 947, 960, 973,
- 1115, 1129, 1142, 1155, 1168, 1324, 1337, 178,
- 191, 360, 374, 387, 542, 556, 570, 583,
- 724, 738, 752, 765, 766, 779, 920, 934,
- 948, 961, 974, 1116, 1130, 1143, 1156, 1169,
- 1312, 1325, 1338, 1351, 1310, 1349, 1350, 1363,
- 1519, 1532, 1311, 1364, 1520, 1533, 962, 975,
- 1144, 1157, 1170, 1326, 1339, 1352, 1365, 1508,
- 1521, 1534, 1547, 1506, 1545, 1546, 1559, 1715,
- 1728, 1507, 1560, 1716, 1729, 1158, 1171, 1340,
- 1353, 1366, 1522, 1535, 1548, 1561, 1704, 1717,
- 1730, 1743, 192, 361, 374, 375, 387, 388,
- 543, 556, 557, 569, 570, 571, 582, 583,
- 584, 738, 739, 751, 752, 753, 765, 766,
- 778, 779, 780, 921, 934, 935, 947, 948,
- 949, 960, 961, 962, 974, 975, 1117, 1130,
- 1131, 1143, 1144, 1156, 1157, 1170, 1326, 1339,
- 193, 362, 376, 389, 544, 558, 572, 585,
- 726, 740, 754, 767, 781, 922, 936, 950,
- 963, 976, 1118, 1132, 1145, 1158, 1171, 1327,
- 1340, 181, 194, 363, 377, 390, 545, 559,
- 573, 586, 727, 741, 755, 768, 782, 923,
- 937, 951, 964, 977, 1119, 1133, 1146, 1159,
- 1172, 1328, 1341, 1313, 1352, 1353, 1366, 1522,
- 1535, 1314, 1354, 1367, 1523, 1536, 769, 965,
- 978, 1147, 1160, 1173, 1315, 1329, 1342, 1355,
- 1368, 1511, 1524, 1537, 1550, 1509, 1548, 1549,
- 1562, 1718, 1731, 1510, 1563, 1706, 1719, 1732,
- 1745, 1161, 1174, 1343, 1356, 1369, 1525, 1538,
- 1551, 1564, 1707, 1720, 1733, 195, 377, 390,
- 391, 559, 572, 573, 585, 586, 587, 741,
- 754, 755, 768, 769, 781, 782, 783, 937,
- 950, 951, 963, 964, 965, 977, 978, 1133,
- 1146, 1147, 1159, 1160, 1173, 1329, 1342, 979,
- 1161, 1174, 1343, 1355, 1356, 1369, 1525, 1538,
- 1175, 1357, 1370, 1539, 1551, 1552, 1565, 1721,
- 1734, 603, 616, 785, 786, 798, 799, 812,
- 980, 981, 982, 994, 995, 1008, 1176, 1177,
- 1190, 1191, 1204, 1372, 1373, 1386, 1568, 604,
- 617, 787, 800, 813, 826, 983, 996, 1009,
- 1022, 1178, 1192, 1205, 1374, 1387, 1400, 1569,
- 1582, 592, 605, 618, 631, 788, 801, 814,
- 827, 984, 997, 1010, 1023, 1179, 1180, 1193,
- 1206, 1219, 1375, 1388, 1401, 1570, 1583, 1765,
- 630, 1218, 1764, 644, 840, 1036, 1232, 1414,
- 1596, 1778, 619, 632, 802, 815, 828, 841,
- 998, 1011, 1024, 1037, 1207, 1220, 1376, 1389,
- 1402, 1415, 1571, 1584, 1597, 1766, 645, 854,
- 1050, 1233, 1428, 1610, 1779, 633, 646, 816,
- 829, 842, 855, 1012, 1025, 1038, 1051, 1194,
- 1221, 1234, 1390, 1403, 1416, 1429, 1572, 1585,
- 1598, 1611, 1767, 1780, 1960, 1961, 1792, 1793,
- 1962, 1974, 1246, 1624, 1806, 1975, 1208, 1247,
- 1417, 1430, 1586, 1599, 1612, 1625, 1768, 1781,
- 1794, 1807, 1963, 1976, 1989, 2157, 2156, 1988,
- 2158, 2171, 2170, 1442, 1638, 1820, 2002, 2184,
- 1404, 1443, 1613, 1626, 1782, 1795, 1808, 1821,
- 1964, 1977, 1990, 2003, 2159, 2172, 2185, 606,
- 619, 788, 789, 801, 802, 814, 815, 828,
- 983, 984, 985, 996, 997, 998, 1010, 1011,
- 1024, 1179, 1180, 1192, 1193, 1194, 1206, 1207,
- 1374, 1375, 1376, 1388, 1389, 1402, 1570, 1571,
- 1584, 607, 620, 790, 803, 816, 829, 986,
- 999, 1012, 1025, 1181, 1195, 1208, 1377, 1390,
- 1403, 1572, 1585, 595, 608, 621, 634, 791,
- 804, 817, 830, 987, 1000, 1013, 1026, 1182,
- 1183, 1196, 1209, 1222, 1378, 1391, 1404, 1573,
- 1586, 1768, 633, 842, 1038, 1220, 1221, 1416,
- 1598, 1767, 647, 843, 1039, 1235, 1417, 1599,
- 1781, 622, 635, 805, 818, 831, 844, 1001,
- 1014, 1027, 1040, 1210, 1223, 1379, 1392, 1405,
- 1418, 1574, 1587, 1600, 1769, 660, 856, 1052,
- 1234, 1248, 1430, 1612, 648, 857, 1053, 1236,
- 1431, 1613, 1782, 636, 649, 819, 832, 845,
- 858, 1015, 1028, 1041, 1054, 1197, 1224, 1237,
- 1393, 1406, 1419, 1432, 1575, 1588, 1601, 1614,
- 1770, 1783, 1766, 1780, 1963, 1964, 1794, 1795,
- 1796, 1965, 1444, 1626, 1808, 1977, 1249, 1627,
- 1809, 1978, 1211, 1250, 1420, 1433, 1589, 1602,
- 1615, 1628, 1771, 1784, 1797, 1810, 1966, 1979,
- 1992, 1962, 1976, 2159, 2160, 1990, 1991, 2161,
- 2174, 1822, 2004, 2173, 1445, 1641, 1823, 2005,
- 2187, 1407, 1446, 1616, 1629, 1785, 1798, 1811,
- 1824, 1967, 1980, 1993, 2006, 2162, 2175, 2188,
- 609, 622, 791, 792, 804, 805, 817, 818,
- 831, 986, 987, 988, 999, 1000, 1001, 1013,
- 1014, 1027, 1182, 1183, 1195, 1196, 1197, 1209,
- 1210, 1377, 1378, 1379, 1391, 1392, 1405, 1573,
- 1574, 1587, 610, 623, 793, 806, 819, 832,
- 989, 1002, 1015, 1028, 1184, 1198, 1211, 1380,
- 1393, 1406, 1575, 1588, 598, 611, 624, 637,
- 794, 807, 820, 833, 990, 1003, 1016, 1029,
- 1185, 1186, 1199, 1212, 1225, 1381, 1394, 1407,
- 1576, 1589, 1771, 636, 845, 1041, 1223, 1224,
- 1419, 1601, 1770, 650, 846, 1042, 1238, 1420,
- 1602, 1784, 625, 638, 808, 821, 834, 847,
- 1004, 1017, 1030, 1043, 1200, 1213, 1226, 1382,
- 1395, 1408, 1421, 1577, 1590, 1603, 1772, 663,
- 859, 1055, 1237, 1251, 1433, 1615, 651, 860,
- 1056, 1239, 1434, 1616, 1785, 639, 652, 822,
- 835, 848, 861, 1018, 1031, 1044, 1057, 1214,
- 1227, 1240, 1396, 1409, 1422, 1435, 1578, 1591,
- 1604, 1617, 1773, 1786, 1769, 1783, 1966, 1967,
- 1797, 1798, 1799, 1968, 1447, 1629, 1811, 1980,
- 1252, 1630, 1812, 1981, 1253, 1410, 1423, 1436,
- 1592, 1605, 1618, 1631, 1774, 1787, 1800, 1813,
- 1969, 1982, 1995, 1965, 1979, 2162, 2163, 1993,
- 1994, 2164, 2177, 1825, 2007, 2176, 1448, 1644,
- 1826, 2008, 2190, 1449, 1606, 1619, 1632, 1788,
- 1801, 1814, 1827, 1970, 1983, 1996, 2009, 2165,
- 2178, 2191, 612, 625, 794, 795, 807, 808,
- 820, 821, 834, 989, 990, 991, 1002, 1003,
- 1004, 1016, 1017, 1030, 1185, 1186, 1198, 1199,
- 1200, 1212, 1213, 1380, 1381, 1382, 1394, 1395,
- 1408, 1576, 1577, 1590, 600, 613, 626, 639,
- 796, 809, 822, 835, 992, 1005, 1018, 1031,
- 1187, 1201, 1214, 1383, 1396, 1409, 1578, 1591,
- 1773, 601, 614, 627, 640, 797, 810, 823,
- 836, 993, 1006, 1019, 1032, 1188, 1189, 1202,
- 1215, 1228, 1384, 1397, 1410, 1579, 1592, 1774,
- 848, 1044, 1226, 1227, 1422, 1604, 653, 849,
- 1045, 1241, 1423, 1605, 1787, 628, 641, 811,
- 824, 837, 850, 1007, 1020, 1033, 1046, 1203,
- 1216, 1229, 1242, 1385, 1398, 1411, 1424, 1580,
- 1593, 1606, 1775, 862, 1058, 1240, 1436, 1618,
- 654, 863, 1059, 1255, 1437, 1619, 1788, 1801,
- 642, 655, 825, 838, 851, 864, 1021, 1034,
- 1047, 1060, 1217, 1230, 1243, 1256, 1399, 1412,
- 1425, 1438, 1581, 1594, 1607, 1620, 1776, 1789,
- 1772, 1786, 1969, 1970, 1800, 1802, 1971, 1254,
- 1632, 1814, 1983, 1633, 1815, 1984, 1413, 1426,
- 1439, 1452, 1595, 1608, 1621, 1634, 1777, 1790,
- 1803, 1816, 1972, 1985, 1968, 1982, 2165, 2166,
- 1996, 1997, 1998, 2167, 2180, 1450, 1828, 2010,
- 2179, 1451, 1647, 1829, 2011, 2193, 1609, 1622,
- 1635, 1648, 1791, 1804, 1817, 1830, 1973, 1986,
- 1999, 2012, 2168, 2181, 615, 628, 797, 810,
- 811, 823, 824, 837, 992, 993, 1005, 1006,
- 1007, 1019, 1020, 1033, 1188, 1189, 1201, 1202,
- 1203, 1215, 1216, 1383, 1384, 1385, 1397, 1398,
- 1411, 1579, 1580, 1593, 629, 642, 825, 838,
- 851, 1021, 1034, 1047, 1217, 1229, 1230, 1399,
- 1412, 1425, 1581, 1594, 1607, 1776, 643, 656,
- 839, 852, 865, 1035, 1048, 1061, 1231, 1243,
- 1244, 1413, 1426, 1439, 1595, 1608, 1621, 1777,
- 1790, 1775, 1789, 1803, 1972, 1257, 1427, 1440,
- 1609, 1622, 1635, 1791, 1804, 1817, 1973, 1986,
- 1971, 1985, 1999, 2168, 1453, 1623, 1636, 1805,
- 1818, 1831, 1987, 2000, 2013, 2169, 2182, 645,
- 658, 814, 827, 828, 840, 841, 854, 996,
- 1009, 1010, 1022, 1023, 1024, 1036, 1037, 1050,
- 1191, 1192, 1204, 1205, 1206, 1218, 1219, 1232,
- 1233, 1246, 1374, 1387, 1388, 1400, 1401, 1402,
- 1414, 1415, 1428, 1570, 1583, 1584, 1596, 1597,
- 1610, 1779, 1792, 646, 659, 815, 829, 842,
- 855, 868, 997, 1011, 1025, 1038, 1051, 1064,
- 1179, 1193, 1207, 1220, 1234, 1247, 1375, 1389,
- 1403, 1416, 1429, 1442, 1571, 1585, 1598, 1611,
- 1624, 1780, 1793, 634, 647, 660, 673, 816,
- 830, 843, 856, 869, 998, 1012, 1026, 1039,
- 1052, 1065, 1180, 1194, 1208, 1221, 1222, 1235,
- 1248, 1261, 1376, 1390, 1404, 1417, 1430, 1443,
- 1572, 1586, 1599, 1612, 1625, 1768, 1781, 1794,
- 1807, 672, 1260, 1806, 686, 882, 1078, 1274,
- 1456, 1638, 661, 674, 844, 857, 870, 883,
- 1040, 1053, 1066, 1079, 1249, 1262, 1418, 1431,
- 1444, 1457, 1600, 1613, 1626, 1639, 1795, 1808,
- 1820, 687, 896, 1092, 1275, 1470, 1652, 1821,
- 662, 675, 688, 701, 858, 871, 884, 897,
- 1054, 1067, 1080, 1093, 1236, 1263, 1276, 1432,
- 1445, 1458, 1471, 1614, 1627, 1640, 1653, 1809,
- 1822, 1766, 1975, 1988, 1767, 1963, 1976, 1989,
- 2002, 1782, 1964, 1977, 1990, 2003, 1834, 1796,
- 1835, 1991, 2004, 2016, 1288, 1666, 1848, 2017,
- 1250, 1289, 1446, 1459, 1472, 1485, 1628, 1641,
- 1654, 1667, 1810, 1823, 1836, 1849, 1992, 2005,
- 2018, 2031, 1962, 2158, 2171, 2184, 2159, 2172,
- 2185, 2198, 1978, 2160, 2173, 2186, 2199, 2030,
- 2174, 2187, 2200, 2213, 2212, 1484, 1680, 1862,
- 2044, 2226, 1642, 1655, 1668, 1681, 1824, 1837,
- 1850, 1863, 2006, 2019, 2032, 2045, 2188, 2201,
- 2214, 2227, 648, 661, 817, 830, 831, 843,
- 844, 856, 857, 870, 999, 1012, 1013, 1025,
- 1026, 1027, 1038, 1039, 1040, 1052, 1053, 1066,
- 1194, 1195, 1207, 1208, 1209, 1221, 1222, 1234,
- 1235, 1236, 1248, 1249, 1377, 1390, 1391, 1403,
- 1404, 1405, 1416, 1417, 1418, 1430, 1431, 1444,
- 1573, 1586, 1587, 1599, 1600, 1612, 1613, 1626,
- 1782, 1795, 649, 662, 818, 832, 845, 858,
- 871, 1000, 1014, 1028, 1041, 1054, 1067, 1182,
- 1196, 1210, 1223, 1237, 1250, 1378, 1392, 1406,
- 1419, 1432, 1445, 1574, 1588, 1601, 1614, 1627,
- 1783, 1796, 637, 650, 663, 676, 819, 833,
- 846, 859, 872, 1001, 1015, 1029, 1042, 1055,
- 1068, 1183, 1197, 1211, 1224, 1225, 1238, 1251,
- 1264, 1379, 1393, 1407, 1420, 1433, 1446, 1575,
- 1589, 1602, 1615, 1628, 1771, 1784, 1797, 1810,
- 675, 884, 1080, 1262, 1263, 1276, 1458, 1640,
- 1809, 689, 885, 1081, 1277, 1459, 1641, 664,
- 677, 847, 860, 873, 886, 1043, 1056, 1069,
- 1082, 1252, 1265, 1421, 1434, 1447, 1460, 1603,
- 1616, 1629, 1642, 1798, 1811, 702, 898, 1094,
- 1290, 1472, 1654, 1823, 690, 899, 1095, 1278,
- 1473, 1655, 1824, 665, 678, 691, 704, 861,
- 874, 887, 900, 1057, 1070, 1083, 1096, 1239,
- 1266, 1279, 1435, 1448, 1461, 1474, 1617, 1630,
- 1643, 1656, 1812, 1825, 1769, 1808, 1822, 1978,
- 1991, 1770, 1966, 1979, 1992, 2005, 1785, 1967,
- 1980, 1993, 2006, 1836, 2018, 1837, 1799, 1838,
- 1994, 2007, 1486, 1668, 1850, 2019, 1291, 1669,
- 1851, 2020, 1253, 1292, 1449, 1462, 1475, 1488,
- 1631, 1644, 1657, 1670, 1813, 1826, 1839, 1852,
- 1995, 2008, 2021, 2034, 1965, 2004, 2161, 2174,
- 2187, 2200, 2162, 2175, 2188, 2201, 1981, 2163,
- 2176, 2189, 2202, 2032, 2214, 2033, 2177, 2190,
- 2203, 2216, 1864, 2046, 2215, 1487, 1683, 1865,
- 2047, 2229, 1645, 1658, 1671, 1684, 1827, 1840,
- 1853, 1866, 2009, 2022, 2035, 2048, 2191, 2204,
- 2217, 2230, 651, 664, 820, 833, 834, 846,
- 847, 859, 860, 873, 1002, 1015, 1016, 1028,
- 1029, 1030, 1041, 1042, 1043, 1055, 1056, 1069,
- 1197, 1198, 1210, 1211, 1212, 1224, 1225, 1237,
- 1238, 1239, 1251, 1252, 1380, 1393, 1394, 1406,
- 1407, 1408, 1419, 1420, 1421, 1433, 1434, 1447,
- 1576, 1589, 1590, 1602, 1603, 1615, 1616, 1629,
- 1785, 1798, 652, 665, 821, 835, 848, 861,
- 874, 1003, 1017, 1031, 1044, 1057, 1070, 1185,
- 1199, 1213, 1226, 1240, 1253, 1381, 1395, 1409,
- 1422, 1435, 1448, 1577, 1591, 1604, 1617, 1630,
- 1786, 1799, 640, 653, 666, 679, 822, 836,
- 849, 862, 875, 1004, 1018, 1032, 1045, 1058,
- 1071, 1186, 1200, 1214, 1227, 1228, 1241, 1254,
- 1267, 1382, 1396, 1410, 1423, 1436, 1449, 1578,
- 1592, 1605, 1618, 1631, 1774, 1787, 1800, 1813,
- 678, 887, 1083, 1265, 1266, 1279, 1461, 1643,
- 1812, 692, 888, 1084, 1280, 1462, 1644, 667,
- 680, 850, 863, 876, 889, 1046, 1059, 1072,
- 1085, 1242, 1255, 1268, 1424, 1437, 1450, 1463,
- 1606, 1619, 1632, 1645, 1788, 1801, 1814, 705,
- 901, 1097, 1293, 1475, 1657, 1826, 693, 902,
- 1098, 1281, 1476, 1658, 1827, 668, 681, 694,
- 707, 864, 877, 890, 903, 1060, 1073, 1086,
- 1099, 1256, 1269, 1282, 1438, 1451, 1464, 1477,
- 1620, 1633, 1646, 1659, 1802, 1815, 1828, 1772,
- 1811, 1825, 1981, 1994, 1773, 1969, 1982, 1995,
- 2008, 1970, 1983, 1996, 2009, 1839, 2021, 1840,
- 1841, 1997, 2010, 1489, 1671, 1853, 2022, 1294,
- 1672, 1854, 2023, 1295, 1452, 1465, 1478, 1491,
- 1634, 1647, 1660, 1673, 1816, 1829, 1842, 1855,
- 1998, 2011, 2024, 2037, 1968, 2007, 2164, 2177,
- 2190, 2203, 2165, 2178, 2191, 2204, 1984, 2166,
- 2179, 2192, 2205, 2035, 2217, 2036, 2180, 2193,
- 2206, 2219, 1867, 2049, 2218, 1490, 1686, 1868,
- 2050, 2232, 1648, 1661, 1674, 1687, 1830, 1843,
- 1856, 1869, 2012, 2025, 2038, 2051, 2194, 2207,
- 2220, 2233, 654, 667, 823, 836, 837, 849,
- 850, 862, 863, 876, 1005, 1018, 1019, 1031,
- 1032, 1033, 1044, 1045, 1046, 1058, 1059, 1072,
- 1200, 1201, 1213, 1214, 1215, 1227, 1228, 1240,
- 1241, 1242, 1254, 1255, 1383, 1396, 1397, 1409,
- 1410, 1411, 1422, 1423, 1424, 1436, 1437, 1450,
- 1579, 1592, 1593, 1605, 1606, 1618, 1619, 1632,
- 1788, 1801, 655, 668, 681, 824, 838, 851,
- 864, 877, 1006, 1020, 1034, 1047, 1060, 1073,
- 1188, 1202, 1216, 1229, 1243, 1256, 1384, 1398,
- 1412, 1425, 1438, 1451, 1580, 1594, 1607, 1620,
- 1633, 1789, 1802, 643, 656, 669, 682, 825,
- 839, 852, 865, 878, 1007, 1021, 1035, 1048,
- 1061, 1074, 1189, 1203, 1217, 1230, 1231, 1244,
- 1257, 1270, 1385, 1399, 1413, 1426, 1439, 1452,
- 1581, 1595, 1608, 1621, 1634, 1777, 1790, 1803,
- 1816, 890, 1086, 1268, 1269, 1464, 1646, 1815,
- 695, 891, 1087, 1283, 1465, 1647, 1829, 670,
- 683, 853, 866, 879, 892, 1049, 1062, 1075,
- 1088, 1245, 1258, 1271, 1284, 1427, 1440, 1453,
- 1466, 1609, 1622, 1635, 1648, 1791, 1804, 1817,
- 904, 1100, 1282, 1478, 1660, 696, 905, 1101,
- 1297, 1479, 1661, 1830, 1843, 684, 697, 867,
- 880, 893, 906, 1063, 1076, 1089, 1102, 1272,
- 1285, 1441, 1454, 1467, 1480, 1623, 1636, 1649,
- 1662, 1805, 1818, 1831, 1775, 1814, 1828, 1984,
- 1997, 1776, 1972, 1985, 1998, 2011, 1973, 1986,
- 1999, 1842, 2012, 1844, 2000, 2013, 1296, 1674,
- 1856, 2025, 1493, 1675, 1857, 2026, 1259, 1298,
- 1468, 1481, 1637, 1650, 1663, 1676, 1819, 1832,
- 1845, 1858, 2001, 2014, 2027, 1971, 2010, 2024,
- 2180, 2193, 2181, 2194, 1987, 2169, 2182, 2195,
- 2038, 2207, 2039, 2208, 2221, 2040, 2183, 2196,
- 2209, 2222, 1492, 1870, 2052, 1689, 1871, 2053,
- 2235, 1455, 1494, 1664, 1677, 1833, 1846, 1859,
- 1872, 2015, 2028, 2041, 2054, 2210, 2223, 657,
- 670, 839, 852, 853, 865, 866, 879, 1021,
- 1034, 1035, 1047, 1048, 1049, 1061, 1062, 1075,
- 1203, 1216, 1217, 1230, 1231, 1243, 1244, 1245,
- 1257, 1258, 1399, 1412, 1413, 1425, 1426, 1427,
- 1439, 1440, 1453, 1595, 1608, 1609, 1621, 1622,
- 1635, 1791, 1804, 671, 684, 867, 880, 893,
- 1063, 1076, 1089, 1259, 1271, 1272, 1441, 1454,
- 1467, 1623, 1636, 1649, 1805, 1818, 685, 698,
- 881, 894, 907, 1077, 1090, 1103, 1273, 1285,
- 1286, 1455, 1468, 1481, 1637, 1650, 1663, 1819,
- 1832, 1817, 1831, 1987, 2000, 1845, 2001, 2014,
- 1299, 1469, 1482, 1651, 1664, 1677, 1833, 1846,
- 1859, 2015, 2028, 2013, 2027, 2183, 2196, 2209,
- 2041, 2197, 2210, 1495, 1665, 1678, 1847, 1860,
- 1873, 2029, 2042, 2055, 2211, 2224, 687, 700,
- 856, 869, 870, 882, 883, 896, 1038, 1051,
- 1052, 1064, 1065, 1066, 1078, 1079, 1092, 1233,
- 1234, 1246, 1247, 1248, 1260, 1261, 1274, 1275,
- 1288, 1416, 1429, 1430, 1442, 1443, 1444, 1456,
- 1457, 1470, 1612, 1625, 1626, 1638, 1639, 1652,
- 1821, 1834, 688, 701, 857, 871, 884, 897,
- 910, 1039, 1053, 1067, 1080, 1093, 1106, 1221,
- 1235, 1249, 1262, 1276, 1289, 1417, 1431, 1445,
- 1458, 1471, 1484, 1613, 1627, 1640, 1653, 1666,
- 1822, 1835, 676, 689, 702, 715, 858, 872,
- 885, 898, 911, 1040, 1054, 1068, 1081, 1094,
- 1107, 1236, 1250, 1263, 1264, 1277, 1290, 1303,
- 1418, 1432, 1446, 1459, 1472, 1485, 1614, 1628,
- 1641, 1654, 1667, 1823, 1836, 714, 1302, 1848,
- 924, 1120, 1498, 1680, 1849, 703, 716, 886,
- 899, 912, 925, 1082, 1095, 1108, 1121, 1291,
- 1304, 1460, 1473, 1486, 1499, 1642, 1655, 1668,
- 1681, 1837, 1850, 728, 1316, 1862, 729, 938,
- 1134, 1317, 1512, 1694, 1863, 704, 717, 730,
- 900, 913, 926, 939, 1096, 1109, 1122, 1135,
- 1278, 1305, 1318, 1331, 1474, 1487, 1500, 1513,
- 1656, 1669, 1682, 1695, 1851, 1864, 1808, 2017,
- 2030, 1809, 2005, 2018, 2031, 2044, 1810, 1824,
- 2019, 2032, 1876, 2045, 1838, 1877, 2033, 2046,
- 2058, 1330, 1708, 1890, 2059, 1292, 1488, 1501,
- 1514, 1527, 1670, 1683, 1696, 1709, 1852, 1865,
- 1878, 1891, 2034, 2047, 2060, 2073, 2004, 2200,
- 2213, 2226, 2201, 2214, 2227, 2240, 2006, 2020,
- 2215, 2228, 2072, 2241, 2216, 2229, 2242, 2255,
- 2254, 1526, 1904, 2086, 1684, 1697, 1710, 1723,
- 1866, 1879, 1892, 1905, 2048, 2061, 2074, 2087,
- 2230, 2243, 2256, 2269, 690, 703, 859, 872,
- 873, 885, 886, 898, 899, 912, 1041, 1054,
- 1055, 1067, 1068, 1069, 1080, 1081, 1082, 1094,
- 1095, 1108, 1236, 1237, 1249, 1250, 1251, 1263,
- 1264, 1276, 1277, 1278, 1290, 1291, 1419, 1432,
- 1433, 1445, 1446, 1447, 1458, 1459, 1460, 1472,
- 1473, 1486, 1615, 1628, 1629, 1641, 1642, 1654,
- 1655, 1668, 1824, 1837, 691, 704, 860, 874,
- 887, 900, 913, 1042, 1056, 1070, 1083, 1096,
- 1109, 1224, 1238, 1252, 1265, 1279, 1292, 1420,
- 1434, 1448, 1461, 1474, 1487, 1616, 1630, 1643,
- 1656, 1669, 1825, 1838, 679, 692, 705, 718,
- 861, 875, 888, 901, 914, 1043, 1057, 1071,
- 1084, 1097, 1110, 1239, 1253, 1266, 1267, 1280,
- 1293, 1306, 1421, 1435, 1449, 1462, 1475, 1488,
- 1617, 1631, 1644, 1657, 1670, 1826, 1839, 717,
- 926, 1122, 1304, 1305, 1318, 1500, 1682, 1851,
- 927, 1123, 1501, 1683, 1852, 706, 719, 889,
- 902, 915, 928, 1085, 1098, 1111, 1124, 1294,
- 1307, 1463, 1476, 1489, 1502, 1645, 1658, 1671,
- 1684, 1840, 1853, 731, 744, 940, 1136, 1319,
- 1332, 1514, 1696, 1865, 732, 941, 1137, 1320,
- 1515, 1697, 1866, 707, 720, 733, 903, 916,
- 929, 942, 1099, 1112, 1125, 1138, 1281, 1308,
- 1321, 1334, 1477, 1490, 1503, 1516, 1659, 1672,
- 1685, 1698, 1854, 1867, 1811, 1850, 1864, 2020,
- 2033, 1812, 2008, 2021, 2034, 2047, 1813, 1827,
- 2022, 2035, 1878, 2060, 1879, 2048, 1841, 1880,
- 2036, 2049, 1528, 1710, 1892, 2061, 1333, 1711,
- 1893, 2062, 1295, 1491, 1504, 1517, 1530, 1673,
- 1686, 1699, 1712, 1855, 1868, 1881, 1894, 2037,
- 2050, 2063, 2076, 2007, 2046, 2203, 2216, 2229,
- 2242, 2204, 2217, 2230, 2243, 2009, 2023, 2218,
- 2231, 2074, 2075, 2244, 2219, 2232, 2245, 2258,
- 1906, 2088, 2257, 1529, 1907, 2089, 1687, 1700,
- 1713, 1726, 1869, 1882, 1895, 1908, 2051, 2064,
- 2077, 2090, 2233, 2246, 2259, 2272, 693, 706,
- 862, 875, 876, 888, 889, 901, 902, 915,
- 1044, 1057, 1058, 1070, 1071, 1072, 1083, 1084,
- 1085, 1097, 1098, 1111, 1239, 1240, 1252, 1253,
- 1254, 1266, 1267, 1279, 1280, 1281, 1293, 1294,
- 1422, 1435, 1436, 1448, 1449, 1450, 1461, 1462,
- 1463, 1475, 1476, 1489, 1618, 1631, 1632, 1644,
- 1645, 1657, 1658, 1671, 1827, 1840, 694, 707,
- 863, 877, 890, 903, 916, 1045, 1059, 1073,
- 1086, 1099, 1112, 1227, 1241, 1255, 1268, 1282,
- 1295, 1423, 1437, 1451, 1464, 1477, 1490, 1619,
- 1633, 1646, 1659, 1672, 1828, 1841, 682, 695,
- 708, 864, 878, 891, 904, 917, 1046, 1060,
- 1074, 1087, 1100, 1113, 1228, 1242, 1256, 1269,
- 1270, 1283, 1296, 1424, 1438, 1452, 1465, 1478,
- 1491, 1620, 1634, 1647, 1660, 1673, 1816, 1829,
- 1842, 720, 929, 1125, 1307, 1308, 1321, 1503,
- 1685, 1854, 721, 930, 1126, 1309, 1504, 1686,
- 1855, 709, 722, 892, 905, 918, 931, 1088,
- 1101, 1114, 1127, 1284, 1297, 1310, 1323, 1466,
- 1479, 1492, 1505, 1648, 1661, 1674, 1687, 1830,
- 1843, 1856, 1869, 734, 943, 1139, 1322, 1517,
- 1699, 1868, 735, 944, 1140, 1518, 1700, 723,
- 736, 906, 919, 932, 945, 1102, 1115, 1128,
- 1141, 1311, 1324, 1480, 1493, 1506, 1519, 1662,
- 1675, 1688, 1701, 1844, 1857, 1870, 1814, 1853,
- 1867, 2023, 2036, 1815, 2011, 2024, 2037, 2050,
- 2012, 2025, 2038, 1881, 2063, 1882, 2051, 1883,
- 2026, 2039, 2052, 1335, 1713, 1895, 2064, 1336,
- 1714, 1896, 2065, 1298, 1337, 1507, 1520, 1676,
- 1689, 1702, 1715, 1858, 1871, 1884, 1897, 2040,
- 2053, 2066, 2079, 2010, 2049, 2206, 2219, 2232,
- 2245, 2207, 2220, 2233, 2246, 2208, 2221, 2234,
- 2077, 2078, 2247, 2222, 2235, 2248, 2261, 1531,
- 1909, 2091, 2260, 1532, 1728, 1910, 2092, 2274,
- 1494, 1533, 1703, 1716, 1872, 1885, 1898, 1911,
- 2054, 2067, 2080, 2093, 2249, 2262, 696, 709,
- 865, 878, 879, 891, 892, 904, 905, 918,
- 1047, 1060, 1061, 1073, 1074, 1075, 1086, 1087,
- 1088, 1100, 1101, 1114, 1242, 1243, 1255, 1256,
- 1257, 1269, 1270, 1282, 1283, 1284, 1296, 1297,
- 1425, 1438, 1439, 1451, 1452, 1453, 1464, 1465,
- 1466, 1478, 1479, 1492, 1621, 1634, 1635, 1647,
- 1648, 1660, 1661, 1674, 1830, 1843, 697, 710,
- 866, 880, 893, 906, 919, 1048, 1062, 1076,
- 1089, 1102, 1115, 1230, 1244, 1258, 1271, 1285,
- 1298, 1426, 1440, 1454, 1467, 1480, 1493, 1622,
- 1636, 1649, 1662, 1675, 1831, 1844, 685, 698,
- 711, 724, 867, 881, 894, 907, 920, 1049,
- 1063, 1077, 1090, 1103, 1116, 1231, 1245, 1259,
- 1272, 1273, 1286, 1299, 1312, 1427, 1441, 1455,
- 1468, 1481, 1494, 1623, 1637, 1650, 1663, 1676,
- 1819, 1832, 1845, 1858, 723, 932, 1128, 1310,
- 1311, 1506, 1688, 1857, 737, 933, 1129, 1325,
- 1507, 1689, 1871, 712, 725, 895, 908, 921,
- 934, 1091, 1104, 1117, 1130, 1287, 1300, 1313,
- 1326, 1469, 1482, 1495, 1508, 1651, 1664, 1677,
- 1690, 1846, 1859, 750, 946, 1142, 1324, 1338,
- 1520, 1702, 1884, 738, 947, 1143, 1339, 1521,
- 1703, 1872, 726, 739, 909, 922, 935, 948,
- 1105, 1118, 1131, 1144, 1314, 1327, 1340, 1483,
- 1496, 1509, 1522, 1665, 1678, 1691, 1704, 1860,
- 1873, 1817, 1856, 1870, 2026, 2039, 1818, 2014,
- 2027, 2040, 2053, 1833, 2015, 2028, 2041, 2054,
- 1885, 2067, 1847, 1886, 2042, 2055, 1716, 1898,
- 1535, 1717, 1899, 2068, 1301, 1510, 1523, 1536,
- 1679, 1692, 1705, 1718, 1861, 1874, 1887, 1900,
- 2056, 2069, 2013, 2052, 2066, 2209, 2222, 2235,
- 2248, 2223, 2236, 2029, 2224, 2237, 2080, 2249,
- 2081, 2250, 2263, 2043, 2082, 2238, 2251, 1534,
- 1912, 2094, 2276, 1731, 1913, 2095, 2264, 1497,
- 1706, 1719, 1732, 1875, 1888, 1901, 1914, 2057,
- 2070, 2083, 2096, 2239, 2252, 2265, 2278, 699,
- 712, 881, 894, 895, 907, 908, 921, 1063,
- 1076, 1077, 1089, 1090, 1091, 1103, 1104, 1117,
- 1245, 1258, 1259, 1272, 1273, 1285, 1286, 1287,
- 1299, 1300, 1441, 1454, 1455, 1467, 1468, 1469,
- 1481, 1482, 1495, 1637, 1650, 1651, 1663, 1664,
- 1677, 1833, 1846, 713, 726, 909, 922, 935,
- 1105, 1118, 1131, 1301, 1313, 1314, 1483, 1496,
- 1509, 1665, 1678, 1691, 1847, 1860, 727, 740,
- 923, 936, 949, 1119, 1132, 1145, 1315, 1327,
- 1328, 1497, 1510, 1523, 1679, 1692, 1705, 1861,
- 1874, 1859, 1873, 2029, 2042, 1887, 2043, 2056,
- 1341, 1511, 1524, 1537, 1693, 1706, 1719, 1875,
- 1888, 1901, 2057, 2070, 2083, 2055, 2069, 2225,
- 2238, 2239, 2252, 1707, 1720, 1889, 1902, 1915,
- 2071, 2084, 2097, 2253, 2266, 2279, 729, 742,
- 898, 911, 912, 924, 925, 938, 1080, 1093,
- 1094, 1106, 1107, 1108, 1120, 1121, 1134, 1275,
- 1276, 1288, 1289, 1290, 1302, 1303, 1316, 1317,
- 1330, 1458, 1471, 1472, 1484, 1485, 1486, 1498,
- 1499, 1512, 1654, 1667, 1668, 1680, 1681, 1694,
- 1863, 1876, 730, 743, 899, 913, 926, 939,
- 952, 1081, 1095, 1109, 1122, 1135, 1148, 1263,
- 1277, 1291, 1304, 1318, 1331, 1459, 1473, 1487,
- 1500, 1513, 1526, 1655, 1669, 1682, 1695, 1708,
- 1864, 1877, 718, 731, 744, 757, 900, 914,
- 927, 940, 953, 1082, 1096, 1110, 1123, 1136,
- 1149, 1278, 1292, 1305, 1306, 1319, 1332, 1345,
- 1460, 1474, 1488, 1501, 1514, 1527, 1656, 1670,
- 1683, 1696, 1709, 1865, 1878, 756, 1344, 1890,
- 966, 1162, 1540, 1722, 1891, 745, 758, 928,
- 941, 954, 967, 1124, 1137, 1150, 1163, 1333,
- 1346, 1502, 1515, 1528, 1541, 1684, 1697, 1710,
- 1723, 1879, 1892, 770, 1358, 1904, 771, 1359,
- 1554, 1736, 1905, 759, 772, 942, 955, 968,
- 1138, 1151, 1164, 1320, 1334, 1347, 1360, 1516,
- 1529, 1542, 1555, 1698, 1711, 1724, 1737, 1893,
- 1906, 1850, 2059, 2072, 1851, 2047, 2060, 2073,
- 2086, 1852, 1866, 2061, 2074, 1918, 2087, 1880,
- 1919, 2075, 2088, 2100, 1750, 1932, 2101, 1530,
- 1543, 1556, 1712, 1725, 1738, 1751, 1894, 1907,
- 1920, 1933, 2076, 2089, 2102, 2046, 2242, 2255,
- 2268, 2243, 2256, 2269, 2282, 2048, 2062, 2257,
- 2270, 2114, 2283, 2115, 2258, 2271, 2284, 2297,
- 2296, 1946, 2128, 1739, 1752, 1908, 1921, 1934,
- 1947, 2090, 2103, 2116, 2129, 2285, 2298, 732,
- 745, 901, 914, 915, 927, 928, 940, 941,
- 954, 1083, 1096, 1097, 1109, 1110, 1111, 1122,
- 1123, 1124, 1136, 1137, 1150, 1278, 1279, 1291,
- 1292, 1293, 1305, 1306, 1318, 1319, 1320, 1332,
- 1333, 1461, 1474, 1475, 1487, 1488, 1489, 1500,
- 1501, 1502, 1514, 1515, 1528, 1657, 1670, 1671,
- 1683, 1684, 1696, 1697, 1710, 1866, 1879, 733,
- 746, 902, 916, 929, 942, 955, 1084, 1098,
- 1112, 1125, 1138, 1151, 1266, 1280, 1294, 1307,
- 1321, 1334, 1462, 1476, 1490, 1503, 1516, 1529,
- 1658, 1672, 1685, 1698, 1711, 1867, 1880, 734,
- 747, 903, 917, 930, 943, 956, 1085, 1099,
- 1113, 1126, 1139, 1152, 1281, 1295, 1308, 1322,
- 1335, 1463, 1477, 1491, 1504, 1517, 1530, 1659,
- 1673, 1686, 1699, 1712, 1868, 1881, 759, 968,
- 1164, 1346, 1347, 1360, 1542, 1724, 1893, 760,
- 969, 1165, 1348, 1543, 1725, 1894, 748, 761,
- 931, 944, 957, 970, 1127, 1140, 1153, 1166,
- 1309, 1323, 1336, 1349, 1362, 1505, 1518, 1531,
- 1544, 1687, 1700, 1713, 1726, 1869, 1882, 1895,
- 1908, 773, 1361, 1556, 1738, 1907, 774, 1557,
- 1739, 1921, 762, 775, 945, 958, 971, 1141,
- 1154, 1167, 1350, 1363, 1519, 1532, 1545, 1558,
- 1701, 1714, 1727, 1740, 1896, 1909, 1853, 1892,
- 1906, 2062, 2075, 1854, 2050, 2063, 2076, 2089,
- 1855, 2064, 2077, 1920, 2102, 2090, 1883, 1922,
- 2078, 2091, 1752, 1934, 2103, 1753, 1935, 2104,
- 1337, 1546, 1559, 1715, 1728, 1741, 1754, 1897,
- 1910, 1923, 1936, 2079, 2092, 2105, 2049, 2088,
- 2245, 2258, 2271, 2284, 2246, 2259, 2272, 2285,
- 2051, 2065, 2260, 2273, 2116, 2117, 2286, 2118,
- 2261, 2274, 2287, 2300, 1948, 2130, 2299, 1949,
- 2131, 2313, 1533, 1742, 1755, 1911, 1924, 1937,
- 1950, 2093, 2106, 2119, 2132, 2288, 2301, 735,
- 748, 904, 917, 918, 930, 931, 943, 944,
- 957, 1086, 1099, 1100, 1112, 1113, 1114, 1125,
- 1126, 1127, 1139, 1140, 1153, 1281, 1282, 1294,
- 1295, 1296, 1308, 1309, 1321, 1322, 1323, 1335,
- 1336, 1464, 1477, 1478, 1490, 1491, 1492, 1503,
- 1504, 1505, 1517, 1518, 1531, 1660, 1673, 1674,
- 1686, 1687, 1699, 1700, 1713, 1869, 1882, 736,
- 749, 905, 919, 932, 945, 958, 1087, 1101,
- 1115, 1128, 1141, 1154, 1283, 1297, 1310, 1324,
- 1337, 1465, 1479, 1493, 1506, 1519, 1532, 1661,
- 1675, 1688, 1701, 1714, 1870, 1883, 724, 737,
- 750, 763, 906, 920, 933, 946, 959, 1088,
- 1102, 1116, 1129, 1142, 1155, 1270, 1284, 1298,
- 1311, 1312, 1325, 1338, 1351, 1466, 1480, 1494,
- 1507, 1520, 1533, 1662, 1676, 1689, 1702, 1715,
- 1858, 1871, 1884, 1897, 762, 971, 1167, 1349,
- 1350, 1545, 1727, 1896, 776, 972, 1168, 1364,
- 1546, 1728, 1910, 751, 764, 934, 947, 960,
- 973, 1130, 1143, 1156, 1169, 1326, 1339, 1352,
- 1365, 1508, 1521, 1534, 1547, 1690, 1703, 1716,
- 1729, 1885, 1898, 1363, 1559, 1741, 1923, 777,
- 1560, 1742, 1911, 765, 778, 948, 961, 974,
- 1144, 1157, 1170, 1340, 1353, 1366, 1522, 1535,
- 1548, 1561, 1704, 1717, 1730, 1743, 1899, 1912,
- 1856, 1895, 1909, 2065, 2078, 1857, 2066, 2079,
- 1872, 2054, 2067, 2080, 2093, 2092, 1924, 1886,
- 1925, 2081, 2094, 1755, 1937, 2106, 1756, 1938,
- 2107, 1536, 1549, 1562, 1718, 1731, 1744, 1757,
- 1900, 1913, 1926, 1939, 2095, 2108, 2052, 2091,
- 2105, 2248, 2261, 2274, 2287, 2053, 2262, 2275,
- 2068, 2250, 2263, 2276, 2289, 2119, 2288, 2120,
- 2302, 2082, 2121, 2277, 2290, 1951, 2133, 2315,
- 1952, 2134, 2303, 1732, 1745, 1758, 1914, 1927,
- 1940, 1953, 2096, 2109, 2122, 2135, 2278, 2291,
- 2304, 2317, 738, 751, 907, 920, 921, 933,
- 934, 946, 947, 960, 1089, 1102, 1103, 1115,
- 1116, 1117, 1128, 1129, 1130, 1142, 1143, 1156,
- 1284, 1285, 1297, 1298, 1299, 1311, 1312, 1324,
- 1325, 1326, 1338, 1339, 1467, 1480, 1481, 1493,
- 1494, 1495, 1506, 1507, 1508, 1520, 1521, 1534,
- 1663, 1676, 1677, 1689, 1690, 1702, 1703, 1716,
- 1872, 1885, 739, 752, 908, 922, 935, 948,
- 961, 1090, 1104, 1118, 1131, 1144, 1157, 1272,
- 1286, 1300, 1313, 1327, 1340, 1468, 1482, 1496,
- 1509, 1522, 1535, 1664, 1678, 1691, 1704, 1717,
- 1873, 1886, 727, 740, 753, 766, 909, 923,
- 936, 949, 962, 1091, 1105, 1119, 1132, 1145,
- 1158, 1273, 1287, 1301, 1314, 1328, 1341, 1469,
- 1483, 1497, 1510, 1523, 1536, 1665, 1679, 1692,
- 1705, 1718, 1874, 1887, 765, 974, 1170, 1352,
- 1353, 1548, 1730, 1899, 779, 975, 1171, 1354,
- 1549, 1731, 1900, 741, 754, 767, 780, 937,
- 950, 963, 976, 1133, 1146, 1159, 1172, 1315,
- 1329, 1342, 1355, 1368, 1511, 1524, 1537, 1550,
- 1693, 1706, 1719, 1732, 1888, 1901, 1366, 1367,
- 1562, 1744, 1913, 1563, 1745, 1914, 768, 781,
- 951, 964, 977, 1147, 1160, 1173, 1343, 1356,
- 1369, 1525, 1538, 1551, 1564, 1707, 1720, 1733,
- 1746, 1902, 1915, 1859, 1898, 1912, 2068, 2081,
- 1860, 2069, 2082, 1861, 1875, 2057, 2070, 2083,
- 2096, 1926, 2095, 1927, 2109, 1889, 1928, 2084,
- 2097, 1758, 1940, 1759, 1941, 2110, 1539, 1552,
- 1565, 1721, 1734, 1747, 1760, 1903, 1916, 1929,
- 1942, 2098, 2111, 2055, 2094, 2108, 2264, 2277,
- 2056, 2252, 2265, 2278, 2291, 2071, 2253, 2266,
- 2279, 2292, 2122, 2123, 2305, 2085, 2124, 2280,
- 2293, 1954, 2136, 1955, 2137, 2306, 1735, 1748,
- 1761, 1917, 1930, 1943, 1956, 2099, 2112, 2125,
- 2138, 2281, 2294, 2307, 2320, 741, 754, 923,
- 936, 937, 949, 950, 963, 1105, 1118, 1119,
- 1131, 1132, 1133, 1145, 1146, 1159, 1287, 1300,
- 1301, 1314, 1315, 1327, 1328, 1329, 1341, 1342,
- 1483, 1496, 1497, 1509, 1510, 1511, 1523, 1524,
- 1537, 1679, 1692, 1693, 1705, 1706, 1719, 1875,
- 1888, 755, 768, 951, 964, 977, 1147, 1160,
- 1173, 1343, 1355, 1356, 1525, 1538, 1551, 1707,
- 1720, 1733, 1889, 1902, 769, 782, 965, 978,
- 1161, 1174, 1357, 1369, 1370, 1539, 1552, 1565,
- 1721, 1734, 1747, 1903, 1916, 1901, 1915, 2071,
- 2084, 1929, 2085, 2098, 1553, 1566, 1735, 1748,
- 1761, 1917, 1930, 1943, 2099, 2112, 2097, 2111,
- 2267, 2280, 2125, 2281, 2294, 1749, 1762, 1931,
- 1944, 1957, 2113, 2126, 2139, 2295, 2308, 771,
- 940, 953, 954, 966, 967, 1122, 1135, 1136,
- 1148, 1149, 1150, 1162, 1163, 1317, 1318, 1330,
- 1331, 1332, 1344, 1345, 1358, 1359, 1500, 1513,
- 1514, 1526, 1527, 1528, 1540, 1541, 1554, 1696,
- 1709, 1710, 1722, 1723, 1736, 1905, 1918, 772,
- 941, 955, 968, 1123, 1137, 1151, 1164, 1319,
- 1333, 1346, 1360, 1501, 1515, 1529, 1542, 1555,
- 1697, 1711, 1724, 1737, 1750, 1906, 1919, 773,
- 942, 956, 969, 1124, 1138, 1152, 1165, 1320,
- 1334, 1347, 1361, 1502, 1516, 1530, 1543, 1556,
- 1698, 1712, 1725, 1738, 1751, 1907, 1920, 1892,
- 1932, 2101, 2114, 1893, 1933, 1946, 2102, 2115,
- 1348, 1557, 1726, 1739, 1752, 1894, 1908, 1921,
- 1934, 1947, 2103, 2116, 2088, 2128, 2297, 2310,
- 2089, 2129, 2142, 2298, 2311, 1544, 1753, 1922,
- 1935, 1948, 2090, 2104, 2117, 2130, 2143, 2299,
- 2312, 774, 943, 956, 957, 969, 970, 1125,
- 1138, 1139, 1151, 1152, 1153, 1164, 1165, 1166,
- 1320, 1321, 1333, 1334, 1335, 1347, 1348, 1360,
- 1361, 1362, 1503, 1516, 1517, 1529, 1530, 1531,
- 1542, 1543, 1544, 1556, 1557, 1699, 1712, 1713,
- 1725, 1726, 1738, 1739, 1752, 1908, 1921, 775,
- 944, 958, 971, 1126, 1140, 1154, 1167, 1322,
- 1336, 1349, 1363, 1504, 1518, 1532, 1545, 1558,
- 1700, 1714, 1727, 1740, 1753, 1909, 1922, 763,
- 776, 945, 959, 972, 1127, 1141, 1155, 1168,
- 1309, 1323, 1337, 1350, 1351, 1364, 1505, 1519,
- 1533, 1546, 1559, 1701, 1715, 1728, 1741, 1754,
- 1897, 1910, 1923, 1936, 1895, 1934, 1935, 1948,
- 2104, 2117, 1896, 1949, 2105, 2118, 1547, 1560,
- 1729, 1742, 1755, 1911, 1924, 1937, 1950, 2093,
- 2106, 2119, 2132, 2091, 2130, 2131, 2144, 2287,
- 2300, 2313, 2326, 2092, 2145, 2301, 2314, 1743,
- 1756, 1925, 1938, 1951, 2107, 2120, 2133, 2146,
- 2289, 2302, 2315, 2328, 777, 946, 959, 960,
- 972, 973, 1128, 1141, 1142, 1154, 1155, 1156,
- 1167, 1168, 1169, 1323, 1324, 1336, 1337, 1338,
- 1350, 1351, 1363, 1364, 1365, 1506, 1519, 1520,
- 1532, 1533, 1534, 1545, 1546, 1547, 1559, 1560,
- 1702, 1715, 1716, 1728, 1729, 1741, 1742, 1755,
- 1911, 1924, 778, 947, 961, 974, 1129, 1143,
- 1157, 1170, 1325, 1339, 1352, 1366, 1507, 1521,
- 1535, 1548, 1561, 1703, 1717, 1730, 1743, 1756,
- 1912, 1925, 766, 779, 948, 962, 975, 1130,
- 1144, 1158, 1171, 1312, 1326, 1340, 1353, 1367,
- 1508, 1522, 1536, 1549, 1562, 1704, 1718, 1731,
- 1744, 1757, 1913, 1926, 1898, 1937, 1938, 1951,
- 2107, 2120, 1899, 1939, 1952, 2108, 2121, 1354,
- 1550, 1563, 1732, 1745, 1758, 1900, 1914, 1927,
- 1940, 1953, 2096, 2109, 2122, 2135, 2094, 2133,
- 2134, 2147, 2303, 2316, 2095, 2148, 2304, 2317,
- 1746, 1759, 1928, 1941, 1954, 2110, 2123, 2136,
- 2149, 2292, 2305, 2318, 2331, 780, 949, 962,
- 963, 975, 976, 1131, 1144, 1145, 1157, 1158,
- 1159, 1170, 1171, 1172, 1326, 1327, 1339, 1340,
- 1341, 1353, 1354, 1366, 1367, 1368, 1509, 1522,
- 1523, 1535, 1536, 1537, 1548, 1549, 1550, 1562,
- 1563, 1705, 1718, 1719, 1731, 1732, 1744, 1745,
- 1758, 1914, 1927, 781, 950, 964, 977, 1132,
- 1146, 1160, 1173, 1314, 1328, 1342, 1355, 1369,
- 1510, 1524, 1538, 1551, 1564, 1706, 1720, 1733,
- 1746, 1759, 1915, 1928, 769, 782, 951, 965,
- 978, 1133, 1147, 1161, 1174, 1315, 1329, 1343,
- 1356, 1370, 1511, 1525, 1539, 1552, 1565, 1707,
- 1721, 1734, 1747, 1760, 1916, 1929, 1901, 1940,
- 1941, 1954, 2110, 2123, 1902, 1942, 1955, 2111,
- 2124, 1357, 1553, 1566, 1735, 1748, 1761, 1903,
- 1917, 1930, 1943, 1956, 2099, 2112, 2125, 2138,
- 2097, 2136, 2137, 2150, 2306, 2319, 2098, 2151,
- 2294, 2307, 2320, 2333, 1749, 1762, 1931, 1944,
- 1957, 2113, 2126, 2139, 2152, 2295, 2308, 2321,
- 2334, 783, 965, 978, 979, 1147, 1160, 1161,
- 1173, 1174, 1175, 1329, 1342, 1343, 1356, 1357,
- 1369, 1370, 1371, 1525, 1538, 1539, 1551, 1552,
- 1553, 1565, 1566, 1721, 1734, 1735, 1747, 1748,
- 1761, 1917, 1930, 1567, 1749, 1762, 1931, 1943,
- 1944, 1957, 2113, 2126, 1763, 1945, 1958, 2127,
- 2139, 2140, 2153, 2309, 2322, 1191, 1204, 1373,
- 1374, 1386, 1387, 1400, 1568, 1569, 1570, 1582,
- 1583, 1596, 1764, 1765, 1778, 1779, 1792, 1960,
- 1961, 1974, 2156, 1192, 1205, 1375, 1388, 1401,
- 1414, 1571, 1584, 1597, 1610, 1766, 1780, 1793,
- 1962, 1975, 1988, 2157, 2170, 1180, 1193, 1206,
- 1219, 1376, 1389, 1402, 1415, 1572, 1585, 1598,
- 1611, 1767, 1768, 1781, 1794, 1807, 1963, 1976,
- 1989, 2158, 2171, 2353, 1218, 1806, 2352, 1232,
- 1428, 1624, 1820, 2002, 2184, 2366, 1207, 1220,
- 1390, 1403, 1416, 1429, 1586, 1599, 1612, 1625,
- 1795, 1808, 1964, 1977, 1990, 2003, 2159, 2172,
- 2185, 2354, 1233, 1442, 1638, 1821, 2016, 2198,
- 2367, 1221, 1234, 1404, 1417, 1430, 1443, 1600,
- 1613, 1626, 1639, 1782, 1809, 1822, 1978, 1991,
- 2004, 2017, 2160, 2173, 2186, 2199, 2355, 2368,
- 2549, 2548, 2380, 2381, 2550, 2562, 1834, 2212,
- 2394, 2563, 1796, 1835, 2005, 2018, 2174, 2187,
- 2200, 2213, 2356, 2369, 2382, 2395, 2551, 2564,
- 2577, 2576, 2030, 2408, 2590, 1992, 2031, 2201,
- 2214, 2370, 2383, 2396, 2409, 2552, 2565, 2578,
- 2591, 1194, 1207, 1376, 1377, 1389, 1390, 1402,
- 1403, 1416, 1571, 1572, 1573, 1584, 1585, 1586,
- 1598, 1599, 1612, 1767, 1768, 1780, 1781, 1782,
- 1794, 1795, 1962, 1963, 1964, 1976, 1977, 1990,
- 2158, 2159, 2172, 1195, 1208, 1378, 1391, 1404,
- 1417, 1574, 1587, 1600, 1613, 1769, 1783, 1796,
- 1965, 1978, 1991, 2160, 2173, 1183, 1196, 1209,
- 1222, 1379, 1392, 1405, 1418, 1575, 1588, 1601,
- 1614, 1770, 1771, 1784, 1797, 1810, 1966, 1979,
- 1992, 2161, 2174, 2356, 1221, 1430, 1626, 1808,
- 1809, 2004, 2186, 2355, 1235, 1431, 1627, 1823,
- 2005, 2187, 2369, 1210, 1223, 1393, 1406, 1419,
- 1432, 1589, 1602, 1615, 1628, 1798, 1811, 1967,
- 1980, 1993, 2006, 2162, 2175, 2188, 2357, 1248,
- 1444, 1640, 1822, 1836, 2018, 2200, 2382, 1236,
- 1445, 1641, 1824, 2019, 2201, 2370, 1224, 1237,
- 1407, 1420, 1433, 1446, 1603, 1616, 1629, 1642,
- 1785, 1812, 1825, 1981, 1994, 2007, 2020, 2163,
- 2176, 2189, 2202, 2358, 2371, 2354, 2368, 2551,
- 2552, 2383, 2384, 2553, 2032, 2214, 2396, 2565,
- 1837, 2215, 2397, 2566, 1799, 1838, 2008, 2021,
- 2177, 2190, 2203, 2216, 2359, 2372, 2385, 2398,
- 2554, 2567, 2580, 2550, 2564, 2578, 2579, 2228,
- 2410, 2592, 2033, 2411, 2593, 1995, 2034, 2204,
- 2217, 2373, 2386, 2399, 2412, 2555, 2568, 2581,
- 2594, 1197, 1210, 1379, 1380, 1392, 1393, 1405,
- 1406, 1419, 1574, 1575, 1576, 1587, 1588, 1589,
- 1601, 1602, 1615, 1770, 1771, 1783, 1784, 1785,
- 1797, 1798, 1965, 1966, 1967, 1979, 1980, 1993,
- 2161, 2162, 2175, 1198, 1211, 1381, 1394, 1407,
- 1420, 1577, 1590, 1603, 1616, 1772, 1786, 1799,
- 1968, 1981, 1994, 2163, 2176, 1186, 1199, 1212,
- 1225, 1382, 1395, 1408, 1421, 1578, 1591, 1604,
- 1617, 1773, 1774, 1787, 1800, 1813, 1969, 1982,
- 1995, 2164, 2177, 2359, 1224, 1433, 1629, 1811,
- 1812, 2007, 2189, 2358, 1238, 1434, 1630, 1826,
- 2008, 2190, 2372, 1213, 1226, 1396, 1409, 1422,
- 1435, 1592, 1605, 1618, 1631, 1788, 1801, 1814,
- 1970, 1983, 1996, 2009, 2165, 2178, 2191, 2360,
- 1251, 1447, 1643, 1825, 1839, 2021, 2203, 2385,
- 1239, 1448, 1644, 1827, 2022, 2204, 2373, 1227,
- 1240, 1410, 1423, 1436, 1449, 1606, 1619, 1632,
- 1645, 1802, 1815, 1828, 1984, 1997, 2010, 2023,
- 2166, 2179, 2192, 2205, 2361, 2374, 2357, 2371,
- 2554, 2555, 2386, 2387, 2556, 2035, 2217, 2399,
- 2568, 1840, 2218, 2400, 2569, 1841, 1998, 2011,
- 2024, 2180, 2193, 2206, 2219, 2362, 2375, 2388,
- 2401, 2557, 2570, 2583, 2553, 2567, 2581, 2582,
- 2231, 2413, 2595, 2036, 2414, 2596, 2037, 2194,
- 2207, 2220, 2376, 2389, 2402, 2415, 2558, 2571,
- 2584, 2597, 1200, 1213, 1382, 1383, 1395, 1396,
- 1408, 1409, 1422, 1577, 1578, 1579, 1590, 1591,
- 1592, 1604, 1605, 1618, 1773, 1774, 1786, 1787,
- 1788, 1800, 1801, 1968, 1969, 1970, 1982, 1983,
- 1996, 2164, 2165, 2178, 1188, 1201, 1214, 1227,
- 1384, 1397, 1410, 1423, 1580, 1593, 1606, 1619,
- 1775, 1789, 1802, 1971, 1984, 1997, 2166, 2179,
- 2361, 1189, 1202, 1215, 1228, 1385, 1398, 1411,
- 1424, 1581, 1594, 1607, 1620, 1776, 1777, 1790,
- 1803, 1816, 1972, 1985, 1998, 2167, 2180, 2362,
- 1436, 1632, 1814, 1815, 2010, 2192, 1241, 1437,
- 1633, 1829, 2011, 2193, 2375, 1216, 1229, 1399,
- 1412, 1425, 1438, 1595, 1608, 1621, 1634, 1791,
- 1804, 1817, 1830, 1973, 1986, 1999, 2012, 2168,
- 2181, 2194, 2363, 1450, 1646, 1828, 2024, 2206,
- 1242, 1451, 1647, 1843, 2025, 2207, 2376, 2389,
- 1230, 1243, 1413, 1426, 1439, 1452, 1609, 1622,
- 1635, 1648, 1805, 1818, 1831, 1844, 1987, 2000,
- 2013, 2026, 2169, 2182, 2195, 2208, 2364, 2377,
- 2360, 2374, 2557, 2558, 2388, 2390, 2559, 1842,
- 2220, 2402, 2571, 2221, 2403, 2572, 2001, 2014,
- 2027, 2040, 2183, 2196, 2209, 2222, 2365, 2378,
- 2391, 2404, 2560, 2573, 2556, 2570, 2584, 2585,
- 2586, 2038, 2416, 2598, 2039, 2235, 2417, 2599,
- 2197, 2210, 2223, 2236, 2379, 2392, 2405, 2418,
- 2561, 2574, 2587, 2600, 1203, 1216, 1385, 1398,
- 1399, 1411, 1412, 1425, 1580, 1581, 1593, 1594,
- 1595, 1607, 1608, 1621, 1776, 1777, 1789, 1790,
- 1791, 1803, 1804, 1971, 1972, 1973, 1985, 1986,
- 1999, 2167, 2168, 2181, 1217, 1230, 1413, 1426,
- 1439, 1609, 1622, 1635, 1805, 1817, 1818, 1987,
- 2000, 2013, 2169, 2182, 2195, 2364, 1231, 1244,
- 1427, 1440, 1453, 1623, 1636, 1649, 1819, 1831,
- 1832, 2001, 2014, 2027, 2183, 2196, 2209, 2365,
- 2378, 2363, 2377, 2391, 2560, 1845, 2015, 2028,
- 2197, 2210, 2223, 2379, 2392, 2405, 2561, 2574,
- 2559, 2573, 2587, 2041, 2211, 2224, 2393, 2406,
- 2419, 2575, 2588, 2601, 1233, 1246, 1402, 1415,
- 1416, 1428, 1429, 1442, 1584, 1597, 1598, 1610,
- 1611, 1612, 1624, 1625, 1638, 1779, 1780, 1792,
- 1793, 1794, 1806, 1807, 1820, 1821, 1834, 1962,
- 1975, 1976, 1988, 1989, 1990, 2002, 2003, 2016,
- 2158, 2171, 2172, 2184, 2185, 2198, 2367, 2380,
- 1234, 1247, 1403, 1417, 1430, 1443, 1456, 1585,
- 1599, 1613, 1626, 1639, 1652, 1767, 1781, 1795,
- 1808, 1822, 1835, 1963, 1977, 1991, 2004, 2017,
- 2030, 2159, 2173, 2186, 2199, 2212, 2368, 2381,
- 1222, 1235, 1248, 1261, 1404, 1418, 1431, 1444,
- 1457, 1586, 1600, 1614, 1627, 1640, 1653, 1768,
- 1782, 1796, 1809, 1810, 1823, 1836, 1849, 1964,
- 1978, 1992, 2005, 2018, 2031, 2160, 2174, 2187,
- 2200, 2213, 2356, 2369, 2382, 2395, 1260, 1848,
- 2394, 1274, 1470, 1666, 1862, 2044, 2226, 2408,
- 1249, 1262, 1432, 1445, 1458, 1471, 1628, 1641,
- 1654, 1667, 1837, 1850, 2006, 2019, 2032, 2045,
- 2188, 2201, 2214, 2227, 2383, 2396, 1275, 1484,
- 1680, 1863, 2058, 2240, 2409, 1250, 1263, 1276,
- 1289, 1446, 1459, 1472, 1485, 1642, 1655, 1668,
- 1681, 1824, 1851, 1864, 2020, 2033, 2046, 2059,
- 2202, 2215, 2228, 2241, 2397, 2410, 2354, 2563,
- 2576, 2355, 2551, 2564, 2577, 2590, 2370, 2552,
- 2565, 2578, 2591, 2422, 2384, 2423, 2579, 2592,
- 2604, 1876, 2254, 2436, 2605, 1838, 1877, 2034,
- 2047, 2060, 2073, 2216, 2229, 2242, 2255, 2398,
- 2411, 2424, 2437, 2580, 2593, 2606, 2619, 2550,
- 2566, 2618, 2072, 2450, 2632, 2230, 2243, 2256,
- 2269, 2412, 2425, 2438, 2451, 2594, 2607, 2620,
- 2633, 1236, 1249, 1405, 1418, 1419, 1431, 1432,
- 1444, 1445, 1458, 1587, 1600, 1601, 1613, 1614,
- 1615, 1626, 1627, 1628, 1640, 1641, 1654, 1782,
- 1783, 1795, 1796, 1797, 1809, 1810, 1822, 1823,
- 1824, 1836, 1837, 1965, 1978, 1979, 1991, 1992,
- 1993, 2004, 2005, 2006, 2018, 2019, 2032, 2161,
- 2174, 2175, 2187, 2188, 2200, 2201, 2214, 2370,
- 2383, 1237, 1250, 1406, 1420, 1433, 1446, 1459,
- 1588, 1602, 1616, 1629, 1642, 1655, 1770, 1784,
- 1798, 1811, 1825, 1838, 1966, 1980, 1994, 2007,
- 2020, 2033, 2162, 2176, 2189, 2202, 2215, 2371,
- 2384, 1225, 1238, 1251, 1264, 1407, 1421, 1434,
- 1447, 1460, 1589, 1603, 1617, 1630, 1643, 1656,
- 1771, 1785, 1799, 1812, 1813, 1826, 1839, 1852,
- 1967, 1981, 1995, 2008, 2021, 2034, 2163, 2177,
- 2190, 2203, 2216, 2359, 2372, 2385, 2398, 1263,
- 1472, 1668, 1850, 1851, 1864, 2046, 2228, 2397,
- 1277, 1473, 1669, 1865, 2047, 2229, 2411, 1252,
- 1265, 1435, 1448, 1461, 1474, 1631, 1644, 1657,
- 1670, 1840, 1853, 2009, 2022, 2035, 2048, 2191,
- 2204, 2217, 2230, 2386, 2399, 1290, 1486, 1682,
- 1878, 2060, 2242, 2424, 1278, 1487, 1683, 1866,
- 2061, 2243, 2412, 1253, 1266, 1279, 1292, 1449,
- 1462, 1475, 1488, 1645, 1658, 1671, 1684, 1827,
- 1854, 1867, 2023, 2036, 2049, 2062, 2205, 2218,
- 2231, 2244, 2400, 2413, 2357, 2396, 2410, 2566,
- 2579, 2358, 2554, 2567, 2580, 2593, 2373, 2555,
- 2568, 2581, 2594, 2606, 2425, 2387, 2426, 2582,
- 2595, 2074, 2256, 2438, 2607, 1879, 2257, 2439,
- 2608, 1841, 1880, 2037, 2050, 2063, 2076, 2219,
- 2232, 2245, 2258, 2401, 2414, 2427, 2440, 2583,
- 2596, 2609, 2622, 2553, 2592, 2569, 2620, 2621,
- 2270, 2452, 2634, 2075, 2453, 2635, 2233, 2246,
- 2259, 2272, 2415, 2428, 2441, 2454, 2597, 2610,
- 2623, 2636, 1239, 1252, 1408, 1421, 1422, 1434,
- 1435, 1447, 1448, 1461, 1590, 1603, 1604, 1616,
- 1617, 1618, 1629, 1630, 1631, 1643, 1644, 1657,
- 1785, 1786, 1798, 1799, 1800, 1812, 1813, 1825,
- 1826, 1827, 1839, 1840, 1968, 1981, 1982, 1994,
- 1995, 1996, 2007, 2008, 2009, 2021, 2022, 2035,
- 2164, 2177, 2178, 2190, 2191, 2203, 2204, 2217,
- 2373, 2386, 1240, 1253, 1409, 1423, 1436, 1449,
- 1462, 1591, 1605, 1619, 1632, 1645, 1658, 1773,
- 1787, 1801, 1814, 1828, 1841, 1969, 1983, 1997,
- 2010, 2023, 2036, 2165, 2179, 2192, 2205, 2218,
- 2374, 2387, 1228, 1241, 1254, 1267, 1410, 1424,
- 1437, 1450, 1463, 1592, 1606, 1620, 1633, 1646,
- 1659, 1774, 1788, 1802, 1815, 1816, 1829, 1842,
- 1855, 1970, 1984, 1998, 2011, 2024, 2037, 2166,
- 2180, 2193, 2206, 2219, 2362, 2375, 2388, 2401,
- 1266, 1475, 1671, 1853, 1854, 1867, 2049, 2231,
- 2400, 1280, 1476, 1672, 1868, 2050, 2232, 2414,
- 1255, 1268, 1438, 1451, 1464, 1477, 1634, 1647,
- 1660, 1673, 1830, 1843, 1856, 2012, 2025, 2038,
- 2051, 2194, 2207, 2220, 2233, 2376, 2389, 2402,
- 1293, 1489, 1685, 1881, 2063, 2245, 2427, 1281,
- 1490, 1686, 1869, 2064, 2246, 2415, 1256, 1269,
- 1282, 1295, 1452, 1465, 1478, 1491, 1648, 1661,
- 1674, 1687, 1844, 1857, 1870, 2026, 2039, 2052,
- 2065, 2208, 2221, 2234, 2247, 2390, 2403, 2416,
- 2360, 2399, 2413, 2569, 2582, 2361, 2557, 2570,
- 2583, 2596, 2558, 2571, 2584, 2597, 2609, 2428,
- 2429, 2585, 2598, 2077, 2259, 2441, 2610, 1882,
- 2260, 2442, 2611, 1883, 2040, 2053, 2066, 2079,
- 2222, 2235, 2248, 2261, 2404, 2417, 2430, 2443,
- 2586, 2599, 2612, 2625, 2556, 2595, 2572, 2623,
- 2624, 2273, 2455, 2637, 2078, 2456, 2638, 2236,
- 2249, 2262, 2275, 2418, 2431, 2444, 2457, 2600,
- 2613, 2626, 2639, 1242, 1255, 1411, 1424, 1425,
- 1437, 1438, 1450, 1451, 1464, 1593, 1606, 1607,
- 1619, 1620, 1621, 1632, 1633, 1634, 1646, 1647,
- 1660, 1788, 1789, 1801, 1802, 1803, 1815, 1816,
- 1828, 1829, 1830, 1842, 1843, 1971, 1984, 1985,
- 1997, 1998, 1999, 2010, 2011, 2012, 2024, 2025,
- 2038, 2167, 2180, 2181, 2193, 2194, 2206, 2207,
- 2220, 2376, 2389, 1243, 1256, 1269, 1412, 1426,
- 1439, 1452, 1465, 1594, 1608, 1622, 1635, 1648,
- 1661, 1776, 1790, 1804, 1817, 1831, 1844, 1972,
- 1986, 2000, 2013, 2026, 2039, 2168, 2182, 2195,
- 2208, 2221, 2377, 2390, 1231, 1244, 1257, 1270,
- 1413, 1427, 1440, 1453, 1466, 1595, 1609, 1623,
- 1636, 1649, 1662, 1777, 1791, 1805, 1818, 1819,
- 1832, 1845, 1858, 1973, 1987, 2001, 2014, 2027,
- 2040, 2169, 2183, 2196, 2209, 2222, 2365, 2378,
- 2391, 2404, 1478, 1674, 1856, 1857, 2052, 2234,
- 2403, 1283, 1479, 1675, 1871, 2053, 2235, 2417,
- 1258, 1271, 1441, 1454, 1467, 1480, 1637, 1650,
- 1663, 1676, 1833, 1846, 1859, 1872, 2015, 2028,
- 2041, 2054, 2197, 2210, 2223, 2236, 2379, 2392,
- 2405, 1492, 1688, 1870, 2066, 2248, 1284, 1493,
- 1689, 1885, 2067, 2249, 2418, 2431, 1272, 1285,
- 1455, 1468, 1481, 1494, 1651, 1664, 1677, 1690,
- 1860, 1873, 2029, 2042, 2055, 2068, 2211, 2224,
- 2237, 2250, 2393, 2406, 2419, 2363, 2402, 2416,
- 2572, 2585, 2364, 2560, 2573, 2586, 2599, 2561,
- 2574, 2587, 2430, 2600, 2432, 2588, 2601, 1884,
- 2262, 2444, 2613, 2081, 2263, 2445, 2614, 1847,
- 1886, 2056, 2069, 2225, 2238, 2251, 2264, 2407,
- 2420, 2433, 2446, 2602, 2615, 2559, 2598, 2612,
- 2575, 2626, 2627, 2589, 2628, 2080, 2458, 2640,
- 2277, 2459, 2641, 2043, 2082, 2252, 2265, 2421,
- 2434, 2447, 2460, 2603, 2616, 2629, 2642, 1245,
- 1258, 1427, 1440, 1441, 1453, 1454, 1467, 1609,
- 1622, 1623, 1635, 1636, 1637, 1649, 1650, 1663,
- 1791, 1804, 1805, 1818, 1819, 1831, 1832, 1833,
- 1845, 1846, 1987, 2000, 2001, 2013, 2014, 2015,
- 2027, 2028, 2041, 2183, 2196, 2197, 2209, 2210,
- 2223, 2379, 2392, 1259, 1272, 1455, 1468, 1481,
- 1651, 1664, 1677, 1847, 1859, 1860, 2029, 2042,
- 2055, 2211, 2224, 2237, 2393, 2406, 1273, 1286,
- 1469, 1482, 1495, 1665, 1678, 1691, 1861, 1873,
- 1874, 2043, 2056, 2069, 2225, 2238, 2251, 2407,
- 2420, 2405, 2419, 2575, 2588, 2433, 2589, 2602,
- 1887, 2057, 2070, 2239, 2252, 2265, 2421, 2434,
- 2447, 2603, 2616, 2601, 2615, 2629, 2083, 2253,
- 2266, 2435, 2448, 2461, 2617, 2630, 2643, 1275,
- 1288, 1444, 1457, 1458, 1470, 1471, 1484, 1626,
- 1639, 1640, 1652, 1653, 1654, 1666, 1667, 1680,
- 1821, 1822, 1834, 1835, 1836, 1848, 1849, 1862,
- 1863, 1876, 2004, 2017, 2018, 2030, 2031, 2032,
- 2044, 2045, 2058, 2200, 2213, 2214, 2226, 2227,
- 2240, 2409, 2422, 1276, 1289, 1445, 1459, 1472,
- 1485, 1498, 1627, 1641, 1655, 1668, 1681, 1694,
- 1809, 1823, 1837, 1850, 1864, 1877, 2005, 2019,
- 2033, 2046, 2059, 2072, 2201, 2215, 2228, 2241,
- 2254, 2410, 2423, 1264, 1277, 1290, 1303, 1446,
- 1460, 1473, 1486, 1499, 1628, 1642, 1656, 1669,
- 1682, 1695, 1824, 1838, 1851, 1852, 1865, 1878,
- 1891, 2006, 2020, 2034, 2047, 2060, 2073, 2202,
- 2216, 2229, 2242, 2255, 2411, 2424, 1302, 1890,
- 2436, 1512, 1708, 2086, 2268, 2437, 1291, 1304,
- 1474, 1487, 1500, 1513, 1670, 1683, 1696, 1709,
- 1879, 1892, 2048, 2061, 2074, 2087, 2230, 2243,
- 2256, 2269, 2425, 2438, 1316, 1904, 2450, 1317,
- 1526, 1722, 1905, 2100, 2282, 2451, 1292, 1305,
- 1318, 1488, 1501, 1514, 1527, 1684, 1697, 1710,
- 1723, 1866, 1893, 1906, 1919, 2062, 2075, 2088,
- 2101, 2244, 2257, 2270, 2283, 2439, 2452, 2396,
- 2605, 2618, 2397, 2593, 2606, 2619, 2632, 2398,
- 2412, 2607, 2620, 2464, 2633, 2426, 2465, 2621,
- 2634, 2646, 1918, 2296, 2478, 2647, 1880, 2076,
- 2089, 2102, 2115, 2258, 2271, 2284, 2297, 2440,
- 2453, 2466, 2479, 2622, 2635, 2648, 2661, 2592,
- 2594, 2608, 2660, 2114, 2492, 2674, 2272, 2285,
- 2298, 2311, 2454, 2467, 2480, 2493, 2636, 2649,
- 2662, 2675, 1278, 1291, 1447, 1460, 1461, 1473,
- 1474, 1486, 1487, 1500, 1629, 1642, 1643, 1655,
- 1656, 1657, 1668, 1669, 1670, 1682, 1683, 1696,
- 1824, 1825, 1837, 1838, 1839, 1851, 1852, 1864,
- 1865, 1866, 1878, 1879, 2007, 2020, 2021, 2033,
- 2034, 2035, 2046, 2047, 2048, 2060, 2061, 2074,
- 2203, 2216, 2217, 2229, 2230, 2242, 2243, 2256,
- 2412, 2425, 1279, 1292, 1448, 1462, 1475, 1488,
- 1501, 1630, 1644, 1658, 1671, 1684, 1697, 1812,
- 1826, 1840, 1853, 1867, 1880, 2008, 2022, 2036,
- 2049, 2062, 2075, 2204, 2218, 2231, 2244, 2257,
- 2413, 2426, 1267, 1280, 1293, 1306, 1449, 1463,
- 1476, 1489, 1502, 1631, 1645, 1659, 1672, 1685,
- 1698, 1827, 1841, 1854, 1855, 1868, 1881, 1894,
- 2009, 2023, 2037, 2050, 2063, 2076, 2205, 2219,
- 2232, 2245, 2258, 2414, 2427, 1305, 1514, 1710,
- 1892, 1893, 1906, 2088, 2270, 2439, 1515, 1711,
- 2089, 2271, 2440, 1294, 1307, 1477, 1490, 1503,
- 1516, 1673, 1686, 1699, 1712, 1882, 1895, 2051,
- 2064, 2077, 2090, 2233, 2246, 2259, 2272, 2428,
- 2441, 1319, 1332, 1528, 1724, 1907, 1920, 2102,
- 2284, 2453, 2466, 1320, 1529, 1725, 1908, 2103,
- 2285, 2454, 1295, 1308, 1321, 1491, 1504, 1517,
- 1530, 1687, 1700, 1713, 1726, 1869, 1896, 1909,
- 1922, 2065, 2078, 2091, 2104, 2247, 2260, 2273,
- 2286, 2442, 2455, 2399, 2438, 2452, 2608, 2621,
- 2400, 2596, 2609, 2622, 2635, 2401, 2415, 2610,
- 2623, 2467, 2636, 2429, 2468, 2624, 2637, 2116,
- 2298, 2480, 2649, 1921, 2299, 2481, 2650, 1883,
- 2079, 2092, 2105, 2118, 2261, 2274, 2287, 2300,
- 2443, 2456, 2469, 2482, 2625, 2638, 2651, 2664,
- 2595, 2634, 2648, 2597, 2611, 2662, 2663, 2312,
- 2494, 2676, 2117, 2495, 2677, 2275, 2288, 2301,
- 2314, 2457, 2470, 2483, 2496, 2639, 2652, 2665,
- 2678, 1281, 1294, 1450, 1463, 1464, 1476, 1477,
- 1489, 1490, 1503, 1632, 1645, 1646, 1658, 1659,
- 1660, 1671, 1672, 1673, 1685, 1686, 1699, 1827,
- 1828, 1840, 1841, 1842, 1854, 1855, 1867, 1868,
- 1869, 1881, 1882, 2010, 2023, 2024, 2036, 2037,
- 2038, 2049, 2050, 2051, 2063, 2064, 2077, 2206,
- 2219, 2220, 2232, 2233, 2245, 2246, 2259, 2415,
- 2428, 1282, 1295, 1451, 1465, 1478, 1491, 1504,
- 1633, 1647, 1661, 1674, 1687, 1700, 1815, 1829,
- 1843, 1856, 1870, 1883, 2011, 2025, 2039, 2052,
- 2065, 2078, 2207, 2221, 2234, 2247, 2260, 2416,
- 2429, 1270, 1283, 1296, 1452, 1466, 1479, 1492,
- 1505, 1634, 1648, 1662, 1675, 1688, 1701, 1816,
- 1830, 1844, 1857, 1858, 1871, 1884, 2012, 2026,
- 2040, 2053, 2066, 2079, 2208, 2222, 2235, 2248,
- 2261, 2404, 2417, 2430, 1308, 1517, 1713, 1895,
- 1896, 1909, 2091, 2273, 2442, 1309, 1518, 1714,
- 1897, 2092, 2274, 2443, 1297, 1310, 1480, 1493,
- 1506, 1519, 1676, 1689, 1702, 1715, 1872, 1885,
- 1898, 1911, 2054, 2067, 2080, 2093, 2236, 2249,
- 2262, 2275, 2418, 2431, 2444, 2457, 1322, 1335,
- 1531, 1727, 1910, 1923, 2105, 2287, 2456, 2469,
- 1323, 1532, 1728, 2106, 2288, 1311, 1324, 1494,
- 1507, 1520, 1533, 1690, 1703, 1716, 1729, 1899,
- 1912, 2068, 2081, 2094, 2107, 2250, 2263, 2276,
- 2289, 2432, 2445, 2458, 2402, 2441, 2455, 2611,
- 2624, 2403, 2599, 2612, 2625, 2638, 2600, 2613,
- 2626, 2470, 2639, 2471, 2614, 2627, 2640, 2301,
- 2483, 2652, 1924, 2302, 2484, 2653, 1886, 1925,
- 2095, 2108, 2264, 2277, 2290, 2303, 2446, 2459,
- 2472, 2485, 2641, 2654, 2598, 2637, 2651, 2665,
- 2666, 2628, 2667, 2119, 2497, 2679, 2120, 2498,
- 2680, 2082, 2121, 2291, 2304, 2460, 2473, 2486,
- 2499, 2642, 2655, 2668, 2681, 1284, 1297, 1453,
- 1466, 1467, 1479, 1480, 1492, 1493, 1506, 1635,
- 1648, 1649, 1661, 1662, 1663, 1674, 1675, 1676,
- 1688, 1689, 1702, 1830, 1831, 1843, 1844, 1845,
- 1857, 1858, 1870, 1871, 1872, 1884, 1885, 2013,
- 2026, 2027, 2039, 2040, 2041, 2052, 2053, 2054,
- 2066, 2067, 2080, 2209, 2222, 2223, 2235, 2236,
- 2248, 2249, 2262, 2418, 2431, 1285, 1298, 1454,
- 1468, 1481, 1494, 1507, 1636, 1650, 1664, 1677,
- 1690, 1703, 1818, 1832, 1846, 1859, 1873, 1886,
- 2014, 2028, 2042, 2055, 2068, 2081, 2210, 2224,
- 2237, 2250, 2263, 2419, 2432, 1286, 1299, 1455,
- 1469, 1482, 1495, 1508, 1637, 1651, 1665, 1678,
- 1691, 1704, 1833, 1847, 1860, 1874, 1887, 2015,
- 2029, 2043, 2056, 2069, 2082, 2211, 2225, 2238,
- 2251, 2264, 2420, 2433, 1311, 1520, 1716, 1898,
- 1899, 2094, 2276, 2445, 1312, 1325, 1521, 1717,
- 1900, 1913, 2095, 2277, 2446, 2459, 1287, 1300,
- 1313, 1326, 1483, 1496, 1509, 1522, 1679, 1692,
- 1705, 1718, 1861, 1875, 1888, 1901, 1914, 2057,
- 2070, 2083, 2096, 2239, 2252, 2265, 2278, 2434,
- 2447, 1338, 1534, 1730, 1912, 2108, 2290, 1339,
- 1535, 1731, 1927, 2109, 2291, 2460, 1314, 1327,
- 1497, 1510, 1523, 1536, 1693, 1706, 1719, 1732,
- 1902, 1915, 1928, 2071, 2084, 2097, 2110, 2253,
- 2266, 2279, 2292, 2448, 2461, 2405, 2444, 2458,
- 2614, 2627, 2406, 2615, 2628, 2407, 2421, 2603,
- 2616, 2629, 2642, 2472, 2641, 2473, 2655, 2435,
- 2474, 2630, 2643, 1926, 2122, 2304, 2486, 2668,
- 2123, 2305, 2487, 2656, 1889, 2098, 2111, 2124,
- 2267, 2280, 2293, 2306, 2449, 2462, 2475, 2488,
- 2644, 2657, 2601, 2640, 2654, 2602, 2617, 2669,
- 2631, 2670, 2318, 2500, 2682, 2319, 2501, 2683,
- 2085, 2294, 2307, 2320, 2463, 2476, 2489, 2502,
- 2645, 2658, 2671, 2684, 1287, 1300, 1469, 1482,
- 1483, 1495, 1496, 1509, 1651, 1664, 1665, 1677,
- 1678, 1679, 1691, 1692, 1705, 1833, 1846, 1847,
- 1860, 1861, 1873, 1874, 1875, 1887, 1888, 2029,
- 2042, 2043, 2055, 2056, 2057, 2069, 2070, 2083,
- 2225, 2238, 2239, 2251, 2252, 2265, 2421, 2434,
- 1301, 1314, 1497, 1510, 1523, 1693, 1706, 1719,
- 1889, 1901, 1902, 2071, 2084, 2097, 2253, 2266,
- 2279, 2435, 2448, 1315, 1328, 1341, 1511, 1524,
- 1537, 1707, 1720, 1733, 1903, 1915, 1916, 2085,
- 2098, 2111, 2267, 2280, 2293, 2449, 2462, 2447,
- 2461, 2617, 2630, 2475, 2631, 2644, 1929, 2099,
- 2112, 2125, 2281, 2294, 2307, 2463, 2476, 2489,
- 2645, 2658, 2671, 2643, 2657, 2295, 2308, 2321,
- 2477, 2490, 2503, 2659, 2672, 2685, 1317, 1330,
- 1486, 1499, 1500, 1512, 1513, 1526, 1668, 1681,
- 1682, 1694, 1695, 1696, 1708, 1709, 1722, 1863,
- 1864, 1876, 1877, 1878, 1890, 1891, 1904, 1905,
- 1918, 2046, 2059, 2060, 2072, 2073, 2074, 2086,
- 2087, 2100, 2242, 2255, 2256, 2268, 2269, 2282,
- 2451, 2464, 1318, 1331, 1487, 1501, 1514, 1527,
- 1540, 1669, 1683, 1697, 1710, 1723, 1736, 1851,
- 1865, 1879, 1892, 1906, 1919, 2047, 2061, 2075,
- 2088, 2101, 2114, 2243, 2257, 2270, 2283, 2296,
- 2452, 2465, 1306, 1319, 1332, 1345, 1488, 1502,
- 1515, 1528, 1541, 1670, 1684, 1698, 1711, 1724,
- 1737, 1866, 1880, 1893, 1894, 1907, 1920, 1933,
- 2048, 2062, 2076, 2089, 2102, 2115, 2244, 2258,
- 2271, 2284, 2297, 2453, 2466, 1344, 1932, 2478,
- 1554, 1750, 2128, 2310, 2479, 1333, 1346, 1516,
- 1529, 1542, 1555, 1712, 1725, 1738, 1751, 1921,
- 1934, 2090, 2103, 2116, 2129, 2272, 2285, 2298,
- 2311, 2467, 2480, 1358, 1946, 2492, 1359, 1947,
- 2142, 2324, 2493, 1347, 1360, 1530, 1543, 1556,
- 1726, 1739, 1752, 1908, 1922, 1935, 1948, 2104,
- 2117, 2130, 2143, 2286, 2299, 2312, 2325, 2481,
- 2494, 2438, 2647, 2660, 2439, 2635, 2648, 2661,
- 2674, 2440, 2454, 2649, 2662, 2506, 2675, 2468,
- 2507, 2663, 2676, 2688, 2338, 2520, 2689, 2118,
- 2131, 2144, 2300, 2313, 2326, 2339, 2482, 2495,
- 2508, 2521, 2664, 2677, 2690, 2634, 2636, 2650,
- 2702, 2703, 2534, 2716, 2327, 2340, 2496, 2509,
- 2522, 2535, 2678, 2691, 2704, 2717, 1320, 1333,
- 1489, 1502, 1503, 1515, 1516, 1528, 1529, 1542,
- 1671, 1684, 1685, 1697, 1698, 1699, 1710, 1711,
- 1712, 1724, 1725, 1738, 1866, 1867, 1879, 1880,
- 1881, 1893, 1894, 1906, 1907, 1908, 1920, 1921,
- 2049, 2062, 2063, 2075, 2076, 2077, 2088, 2089,
- 2090, 2102, 2103, 2116, 2245, 2258, 2259, 2271,
- 2272, 2284, 2285, 2298, 2454, 2467, 1321, 1334,
- 1490, 1504, 1517, 1530, 1543, 1672, 1686, 1700,
- 1713, 1726, 1739, 1854, 1868, 1882, 1895, 1909,
- 1922, 2050, 2064, 2078, 2091, 2104, 2117, 2246,
- 2260, 2273, 2286, 2299, 2455, 2468, 1322, 1335,
- 1491, 1505, 1518, 1531, 1544, 1673, 1687, 1701,
- 1714, 1727, 1740, 1869, 1883, 1896, 1910, 1923,
- 2051, 2065, 2079, 2092, 2105, 2118, 2247, 2261,
- 2274, 2287, 2300, 2456, 2469, 1347, 1556, 1752,
- 1934, 1935, 1948, 2130, 2312, 2481, 1348, 1557,
- 1753, 1936, 2131, 2313, 2482, 1336, 1349, 1519,
- 1532, 1545, 1558, 1715, 1728, 1741, 1754, 1897,
- 1911, 1924, 1937, 1950, 2093, 2106, 2119, 2132,
- 2275, 2288, 2301, 2314, 2457, 2470, 2483, 2496,
- 1361, 1949, 2144, 2326, 2495, 1362, 2145, 2327,
- 2509, 1350, 1363, 1533, 1546, 1559, 1729, 1742,
- 1755, 1938, 1951, 2107, 2120, 2133, 2146, 2289,
- 2302, 2315, 2328, 2484, 2497, 2441, 2480, 2494,
- 2650, 2663, 2442, 2638, 2651, 2664, 2677, 2443,
- 2652, 2665, 2508, 2678, 2471, 2510, 2666, 2679,
- 2340, 2522, 2691, 2341, 2523, 2692, 1925, 2134,
- 2147, 2303, 2316, 2329, 2342, 2485, 2498, 2511,
- 2524, 2680, 2693, 2637, 2676, 2690, 2639, 2653,
- 2704, 2705, 2667, 2706, 2536, 2718, 2537, 2719,
- 2121, 2330, 2343, 2499, 2512, 2525, 2538, 2681,
- 2694, 2707, 2720, 1323, 1336, 1492, 1505, 1506,
- 1518, 1519, 1531, 1532, 1545, 1674, 1687, 1688,
- 1700, 1701, 1702, 1713, 1714, 1715, 1727, 1728,
- 1741, 1869, 1870, 1882, 1883, 1884, 1896, 1897,
- 1909, 1910, 1911, 1923, 1924, 2052, 2065, 2066,
- 2078, 2079, 2080, 2091, 2092, 2093, 2105, 2106,
- 2119, 2248, 2261, 2262, 2274, 2275, 2287, 2288,
- 2301, 2457, 2470, 1324, 1337, 1493, 1507, 1520,
- 1533, 1546, 1675, 1689, 1703, 1716, 1729, 1742,
- 1871, 1885, 1898, 1912, 1925, 2053, 2067, 2081,
- 2094, 2107, 2120, 2249, 2263, 2276, 2289, 2302,
- 2458, 2471, 1312, 1325, 1338, 1351, 1494, 1508,
- 1521, 1534, 1547, 1676, 1690, 1704, 1717, 1730,
- 1743, 1858, 1872, 1886, 1899, 1900, 1913, 1926,
- 1939, 2054, 2068, 2082, 2095, 2108, 2121, 2250,
- 2264, 2277, 2290, 2303, 2446, 2459, 2472, 2485,
- 1350, 1559, 1755, 1937, 1938, 2133, 2315, 2484,
- 1364, 1560, 1756, 1952, 2134, 2316, 2498, 1326,
- 1339, 1352, 1365, 1522, 1535, 1548, 1561, 1718,
- 1731, 1744, 1757, 1914, 1927, 1940, 1953, 2096,
- 2109, 2122, 2135, 2278, 2291, 2304, 2317, 2473,
- 2486, 1951, 2147, 2329, 2148, 2330, 2499, 1353,
- 1366, 1536, 1549, 1562, 1732, 1745, 1758, 1928,
- 1941, 1954, 2110, 2123, 2136, 2149, 2292, 2305,
- 2318, 2331, 2487, 2500, 2444, 2483, 2497, 2653,
- 2666, 2445, 2654, 2667, 2460, 2642, 2655, 2668,
- 2681, 2511, 2680, 2512, 2694, 2474, 2513, 2669,
- 2682, 2343, 2525, 2707, 2344, 2526, 2695, 2124,
- 2137, 2150, 2306, 2319, 2332, 2345, 2488, 2501,
- 2514, 2527, 2683, 2696, 2640, 2679, 2693, 2641,
- 2656, 2708, 2670, 2709, 2539, 2721, 2540, 2722,
- 2320, 2333, 2346, 2502, 2515, 2528, 2541, 2684,
- 2697, 2710, 2723, 1326, 1339, 1495, 1508, 1509,
- 1521, 1522, 1534, 1535, 1548, 1677, 1690, 1691,
- 1703, 1704, 1705, 1716, 1717, 1718, 1730, 1731,
- 1744, 1872, 1873, 1885, 1886, 1887, 1899, 1900,
- 1912, 1913, 1914, 1926, 1927, 2055, 2068, 2069,
- 2081, 2082, 2083, 2094, 2095, 2096, 2108, 2109,
- 2122, 2251, 2264, 2265, 2277, 2278, 2290, 2291,
- 2304, 2460, 2473, 1327, 1340, 1496, 1510, 1523,
- 1536, 1549, 1678, 1692, 1706, 1719, 1732, 1745,
- 1860, 1874, 1888, 1901, 1915, 1928, 2056, 2070,
- 2084, 2097, 2110, 2123, 2252, 2266, 2279, 2292,
- 2305, 2461, 2474, 1315, 1328, 1341, 1354, 1497,
- 1511, 1524, 1537, 1550, 1679, 1693, 1707, 1720,
- 1733, 1746, 1861, 1875, 1889, 1902, 1903, 1916,
- 1929, 2057, 2071, 2085, 2098, 2111, 2124, 2253,
- 2267, 2280, 2293, 2306, 2449, 2462, 2475, 1353,
- 1562, 1758, 1940, 1941, 2136, 2318, 2487, 1367,
- 1563, 1759, 1942, 2137, 2319, 2488, 1329, 1342,
- 1355, 1368, 1525, 1538, 1551, 1564, 1721, 1734,
- 1747, 1760, 1917, 1930, 1943, 1956, 2099, 2112,
- 2125, 2138, 2281, 2294, 2307, 2320, 2476, 2489,
- 1954, 1955, 2150, 2332, 2501, 2151, 2333, 2502,
- 1356, 1369, 1539, 1552, 1565, 1735, 1748, 1761,
- 1931, 1944, 1957, 2113, 2126, 2139, 2152, 2295,
- 2308, 2321, 2334, 2490, 2503, 2447, 2486, 2500,
- 2656, 2669, 2448, 2657, 2670, 2463, 2645, 2658,
- 2671, 2684, 2514, 2683, 2515, 2697, 2477, 2516,
- 2672, 2685, 2346, 2528, 2347, 2529, 2698, 2127,
- 2140, 2153, 2309, 2322, 2335, 2348, 2491, 2504,
- 2517, 2530, 2686, 2699, 2643, 2682, 2696, 2644,
- 2659, 2710, 2711, 2673, 2712, 2542, 2724, 2543,
- 2725, 2323, 2336, 2349, 2505, 2518, 2531, 2544,
- 2687, 2700, 2713, 2726, 1329, 1342, 1511, 1524,
- 1525, 1537, 1538, 1551, 1693, 1706, 1707, 1719,
- 1720, 1721, 1733, 1734, 1747, 1875, 1888, 1889,
- 1902, 1903, 1915, 1916, 1917, 1929, 1930, 2071,
- 2084, 2085, 2097, 2098, 2099, 2111, 2112, 2125,
- 2267, 2280, 2281, 2293, 2294, 2307, 2463, 2476,
- 1343, 1356, 1539, 1552, 1565, 1735, 1748, 1761,
- 1931, 1943, 1944, 2113, 2126, 2139, 2295, 2308,
- 2321, 2477, 2490, 1357, 1370, 1553, 1566, 1749,
- 1762, 1945, 1957, 1958, 2127, 2140, 2153, 2309,
- 2322, 2335, 2491, 2504, 2489, 2503, 2659, 2672,
- 2517, 2673, 2686, 2141, 2154, 2323, 2336, 2349,
- 2505, 2518, 2531, 2687, 2700, 2685, 2699, 2713,
- 2337, 2350, 2519, 2532, 2545, 2701, 2714, 2727,
- 1359, 1528, 1541, 1542, 1554, 1555, 1710, 1723,
- 1724, 1736, 1737, 1738, 1750, 1751, 1905, 1906,
- 1918, 1919, 1920, 1932, 1933, 1946, 1947, 2088,
- 2101, 2102, 2114, 2115, 2116, 2128, 2129, 2142,
- 2284, 2297, 2298, 2310, 2311, 2324, 2493, 2506,
- 1360, 1529, 1543, 1556, 1711, 1725, 1739, 1752,
- 1907, 1921, 1934, 1948, 2089, 2103, 2117, 2130,
- 2143, 2285, 2299, 2312, 2325, 2338, 2494, 2507,
- 1361, 1530, 1544, 1557, 1712, 1726, 1740, 1753,
- 1908, 1922, 1935, 1949, 2090, 2104, 2118, 2131,
- 2144, 2286, 2300, 2313, 2326, 2339, 2495, 2508,
- 2480, 2520, 2689, 2702, 2481, 2521, 2534, 2690,
- 2703, 1936, 2145, 2314, 2327, 2340, 2482, 2496,
- 2509, 2522, 2535, 2691, 2704, 2676, 2716, 2677,
- 2717, 2730, 2132, 2341, 2510, 2523, 2536, 2678,
- 2692, 2705, 2718, 2731, 1362, 1531, 1544, 1545,
- 1557, 1558, 1713, 1726, 1727, 1739, 1740, 1741,
- 1752, 1753, 1754, 1908, 1909, 1921, 1922, 1923,
- 1935, 1936, 1948, 1949, 1950, 2091, 2104, 2105,
- 2117, 2118, 2119, 2130, 2131, 2132, 2144, 2145,
- 2287, 2300, 2301, 2313, 2314, 2326, 2327, 2340,
- 2496, 2509, 1363, 1532, 1546, 1559, 1714, 1728,
- 1742, 1755, 1910, 1924, 1937, 1951, 2092, 2106,
- 2120, 2133, 2146, 2288, 2302, 2315, 2328, 2341,
- 2497, 2510, 1351, 1364, 1533, 1547, 1560, 1715,
- 1729, 1743, 1756, 1897, 1911, 1925, 1938, 1939,
- 1952, 2093, 2107, 2121, 2134, 2147, 2289, 2303,
- 2316, 2329, 2342, 2485, 2498, 2511, 2524, 2483,
- 2522, 2523, 2536, 2692, 2705, 2484, 2537, 2693,
- 2706, 2135, 2148, 2317, 2330, 2343, 2499, 2512,
- 2525, 2538, 2681, 2694, 2707, 2720, 2679, 2718,
- 2719, 2732, 2680, 2733, 2331, 2344, 2513, 2526,
- 2539, 2695, 2708, 2721, 2734, 1365, 1534, 1547,
- 1548, 1560, 1561, 1716, 1729, 1730, 1742, 1743,
- 1744, 1755, 1756, 1757, 1911, 1912, 1924, 1925,
- 1926, 1938, 1939, 1951, 1952, 1953, 2094, 2107,
- 2108, 2120, 2121, 2122, 2133, 2134, 2135, 2147,
- 2148, 2290, 2303, 2304, 2316, 2317, 2329, 2330,
- 2343, 2499, 2512, 1366, 1535, 1549, 1562, 1717,
- 1731, 1745, 1758, 1913, 1927, 1940, 1954, 2095,
- 2109, 2123, 2136, 2149, 2291, 2305, 2318, 2331,
- 2344, 2500, 2513, 1354, 1367, 1536, 1550, 1563,
- 1718, 1732, 1746, 1759, 1900, 1914, 1928, 1941,
- 1942, 1955, 2096, 2110, 2124, 2137, 2150, 2292,
- 2306, 2319, 2332, 2345, 2488, 2501, 2514, 2527,
- 2486, 2525, 2526, 2539, 2695, 2708, 2487, 2540,
- 2696, 2709, 2138, 2151, 2320, 2333, 2346, 2502,
- 2515, 2528, 2541, 2684, 2697, 2710, 2723, 2682,
- 2721, 2722, 2735, 2683, 2736, 2334, 2347, 2516,
- 2529, 2542, 2698, 2711, 2724, 2737, 1368, 1537,
- 1550, 1551, 1563, 1564, 1719, 1732, 1733, 1745,
- 1746, 1747, 1758, 1759, 1760, 1914, 1915, 1927,
- 1928, 1929, 1941, 1942, 1954, 1955, 1956, 2097,
- 2110, 2111, 2123, 2124, 2125, 2136, 2137, 2138,
- 2150, 2151, 2293, 2306, 2307, 2319, 2320, 2332,
- 2333, 2346, 2502, 2515, 1369, 1538, 1552, 1565,
- 1720, 1734, 1748, 1761, 1902, 1916, 1930, 1943,
- 1957, 2098, 2112, 2126, 2139, 2152, 2294, 2308,
- 2321, 2334, 2347, 2503, 2516, 1357, 1370, 1539,
- 1553, 1566, 1721, 1735, 1749, 1762, 1903, 1917,
- 1931, 1944, 1945, 1958, 2099, 2113, 2127, 2140,
- 2153, 2295, 2309, 2322, 2335, 2348, 2491, 2504,
- 2517, 2489, 2528, 2529, 2542, 2698, 2711, 2490,
- 2530, 2543, 2699, 2712, 2141, 2154, 2323, 2336,
- 2349, 2505, 2518, 2531, 2544, 2687, 2700, 2713,
- 2726, 2685, 2724, 2725, 2738, 2686, 2739, 2337,
- 2350, 2519, 2532, 2545, 2701, 2714, 2727, 2740,
- 1371, 1553, 1566, 1567, 1735, 1748, 1749, 1761,
- 1762, 1763, 1917, 1930, 1931, 1944, 1945, 1957,
- 1958, 1959, 2113, 2126, 2127, 2139, 2140, 2141,
- 2153, 2154, 2309, 2322, 2323, 2335, 2336, 2349,
- 2505, 2518, 2155, 2337, 2350, 2519, 2531, 2532,
- 2545, 2701, 2714, 2351, 2533, 2546, 2715, 2727,
- 2728, 2741, 2099, 2112, 2125, 2281, 2294, 2295,
- 2307, 2308, 2321, 2463, 2476, 2477, 2490, 2491,
- 2503, 2504, 2517, 2659, 2672, 2673, 2685, 2686,
- 2687, 2699, 2700, 2713, 1779, 1792, 1961, 1962,
- 1974, 1975, 1988, 2156, 2157, 2158, 2170, 2171,
- 2184, 2352, 2353, 2366, 2367, 2380, 2548, 2549,
- 2562, 1780, 1793, 1963, 1976, 1989, 2002, 2159,
- 2172, 2185, 2198, 2354, 2368, 2381, 2550, 2563,
- 2576, 1768, 1781, 1794, 1807, 1964, 1977, 1990,
- 2003, 2160, 2173, 2186, 2199, 2355, 2356, 2369,
- 2382, 2395, 2551, 2564, 2577, 1806, 2394, 1820,
- 2016, 2212, 2408, 2590, 1795, 1808, 1978, 1991,
- 2004, 2017, 2174, 2187, 2200, 2213, 2383, 2396,
- 2552, 2565, 2578, 2591, 1821, 2030, 2226, 2409,
- 2604, 1809, 1822, 1992, 2005, 2018, 2031, 2188,
- 2201, 2214, 2227, 2370, 2397, 2410, 2566, 2579,
- 2592, 2605, 1782, 1795, 1964, 1965, 1977, 1978,
- 1990, 1991, 2004, 2159, 2160, 2161, 2172, 2173,
- 2174, 2186, 2187, 2200, 2355, 2356, 2368, 2369,
- 2370, 2382, 2383, 2550, 2551, 2552, 2564, 2565,
- 2578, 1783, 1796, 1966, 1979, 1992, 2005, 2162,
- 2175, 2188, 2201, 2357, 2371, 2384, 2553, 2566,
- 2579, 1771, 1784, 1797, 1810, 1967, 1980, 1993,
- 2006, 2163, 2176, 2189, 2202, 2358, 2359, 2372,
- 2385, 2398, 2554, 2567, 2580, 1809, 2018, 2214,
- 2396, 2397, 2592, 1823, 2019, 2215, 2411, 2593,
- 1798, 1811, 1981, 1994, 2007, 2020, 2177, 2190,
- 2203, 2216, 2386, 2399, 2555, 2568, 2581, 2594,
- 1836, 2032, 2228, 2410, 2424, 2606, 1824, 2033,
- 2229, 2412, 2607, 1812, 1825, 1995, 2008, 2021,
- 2034, 2191, 2204, 2217, 2230, 2373, 2400, 2413,
- 2569, 2582, 2595, 2608, 1785, 1798, 1967, 1968,
- 1980, 1981, 1993, 1994, 2007, 2162, 2163, 2164,
- 2175, 2176, 2177, 2189, 2190, 2203, 2358, 2359,
- 2371, 2372, 2373, 2385, 2386, 2553, 2554, 2555,
- 2567, 2568, 2581, 1786, 1799, 1969, 1982, 1995,
- 2008, 2165, 2178, 2191, 2204, 2360, 2374, 2387,
- 2556, 2569, 2582, 1774, 1787, 1800, 1813, 1970,
- 1983, 1996, 2009, 2166, 2179, 2192, 2205, 2361,
- 2362, 2375, 2388, 2401, 2557, 2570, 2583, 1812,
- 2021, 2217, 2399, 2400, 2595, 1826, 2022, 2218,
- 2414, 2596, 1801, 1814, 1984, 1997, 2010, 2023,
- 2180, 2193, 2206, 2219, 2376, 2389, 2402, 2558,
- 2571, 2584, 2597, 1839, 2035, 2231, 2413, 2427,
- 2609, 1827, 2036, 2232, 2415, 2610, 1815, 1828,
- 1998, 2011, 2024, 2037, 2194, 2207, 2220, 2233,
- 2390, 2403, 2416, 2572, 2585, 2598, 2611, 1788,
- 1801, 1970, 1971, 1983, 1984, 1996, 1997, 2010,
- 2165, 2166, 2167, 2178, 2179, 2180, 2192, 2193,
- 2206, 2361, 2362, 2374, 2375, 2376, 2388, 2389,
- 2556, 2557, 2558, 2570, 2571, 2584, 1776, 1789,
- 1802, 1815, 1972, 1985, 1998, 2011, 2168, 2181,
- 2194, 2207, 2363, 2377, 2390, 2559, 2572, 2585,
- 1777, 1790, 1803, 1816, 1973, 1986, 1999, 2012,
- 2169, 2182, 2195, 2208, 2364, 2365, 2378, 2391,
- 2404, 2560, 2573, 2586, 2024, 2220, 2402, 2403,
- 2598, 1829, 2025, 2221, 2417, 2599, 1804, 1817,
- 1987, 2000, 2013, 2026, 2183, 2196, 2209, 2222,
- 2379, 2392, 2405, 2418, 2561, 2574, 2587, 2600,
- 2038, 2234, 2416, 2612, 1830, 2039, 2235, 2431,
- 2613, 1818, 1831, 2001, 2014, 2027, 2040, 2197,
- 2210, 2223, 2236, 2393, 2406, 2419, 2432, 2575,
- 2588, 2601, 2614, 1821, 1834, 1990, 2003, 2004,
- 2016, 2017, 2030, 2172, 2185, 2186, 2198, 2199,
- 2200, 2212, 2213, 2226, 2367, 2368, 2380, 2381,
- 2382, 2394, 2395, 2408, 2409, 2422, 2550, 2563,
- 2564, 2576, 2577, 2578, 2590, 2591, 2604, 1822,
- 1835, 1991, 2005, 2018, 2031, 2044, 2173, 2187,
- 2201, 2214, 2227, 2240, 2355, 2369, 2383, 2396,
- 2410, 2423, 2551, 2565, 2579, 2592, 2605, 2618,
- 1810, 1823, 1836, 1849, 1992, 2006, 2019, 2032,
- 2045, 2174, 2188, 2202, 2215, 2228, 2241, 2356,
- 2370, 2384, 2397, 2398, 2411, 2424, 2437, 2552,
- 2566, 2580, 2593, 2606, 2619, 1848, 2436, 1862,
- 2058, 2254, 2450, 2632, 1837, 1850, 2020, 2033,
- 2046, 2059, 2216, 2229, 2242, 2255, 2425, 2438,
- 2594, 2607, 2620, 2633, 1863, 2072, 2268, 2451,
- 2646, 1838, 1851, 1864, 1877, 2034, 2047, 2060,
- 2073, 2230, 2243, 2256, 2269, 2412, 2439, 2452,
- 2608, 2621, 2634, 2647, 1824, 1837, 1993, 2006,
- 2007, 2019, 2020, 2032, 2033, 2046, 2175, 2188,
- 2189, 2201, 2202, 2203, 2214, 2215, 2216, 2228,
- 2229, 2242, 2370, 2371, 2383, 2384, 2385, 2397,
- 2398, 2410, 2411, 2412, 2424, 2425, 2553, 2566,
- 2567, 2579, 2580, 2581, 2592, 2593, 2594, 2606,
- 2607, 2620, 1825, 1838, 1994, 2008, 2021, 2034,
- 2047, 2176, 2190, 2204, 2217, 2230, 2243, 2358,
- 2372, 2386, 2399, 2413, 2426, 2554, 2568, 2582,
- 2595, 2608, 2621, 1813, 1826, 1839, 1852, 1995,
- 2009, 2022, 2035, 2048, 2177, 2191, 2205, 2218,
- 2231, 2244, 2359, 2373, 2387, 2400, 2401, 2414,
- 2427, 2440, 2555, 2569, 2583, 2596, 2609, 2622,
- 1851, 2060, 2256, 2438, 2439, 2452, 2634, 1865,
- 2061, 2257, 2453, 2635, 1840, 1853, 2023, 2036,
- 2049, 2062, 2219, 2232, 2245, 2258, 2428, 2441,
- 2597, 2610, 2623, 2636, 1878, 2074, 2270, 2466,
- 2648, 1866, 2075, 2271, 2454, 2649, 1841, 1854,
- 1867, 1880, 2037, 2050, 2063, 2076, 2233, 2246,
- 2259, 2272, 2415, 2442, 2455, 2611, 2624, 2637,
- 2650, 1827, 1840, 1996, 2009, 2010, 2022, 2023,
- 2035, 2036, 2049, 2178, 2191, 2192, 2204, 2205,
- 2206, 2217, 2218, 2219, 2231, 2232, 2245, 2373,
- 2374, 2386, 2387, 2388, 2400, 2401, 2413, 2414,
- 2415, 2427, 2428, 2556, 2569, 2570, 2582, 2583,
- 2584, 2595, 2596, 2597, 2609, 2610, 2623, 1828,
- 1841, 1997, 2011, 2024, 2037, 2050, 2179, 2193,
- 2207, 2220, 2233, 2246, 2361, 2375, 2389, 2402,
- 2416, 2429, 2557, 2571, 2585, 2598, 2611, 2624,
- 1816, 1829, 1842, 1855, 1998, 2012, 2025, 2038,
- 2051, 2180, 2194, 2208, 2221, 2234, 2247, 2362,
- 2376, 2390, 2403, 2404, 2417, 2430, 2443, 2558,
- 2572, 2586, 2599, 2612, 2625, 1854, 2063, 2259,
- 2441, 2442, 2455, 2637, 1868, 2064, 2260, 2456,
- 2638, 1843, 1856, 2026, 2039, 2052, 2065, 2222,
- 2235, 2248, 2261, 2418, 2431, 2444, 2600, 2613,
- 2626, 2639, 1881, 2077, 2273, 2469, 2651, 1869,
- 2078, 2274, 2457, 2652, 1844, 1857, 1870, 1883,
- 2040, 2053, 2066, 2079, 2236, 2249, 2262, 2275,
- 2432, 2445, 2458, 2614, 2627, 2640, 2653, 1830,
- 1843, 1999, 2012, 2013, 2025, 2026, 2038, 2039,
- 2052, 2181, 2194, 2195, 2207, 2208, 2209, 2220,
- 2221, 2222, 2234, 2235, 2248, 2376, 2377, 2389,
- 2390, 2391, 2403, 2404, 2416, 2417, 2418, 2430,
- 2431, 2559, 2572, 2573, 2585, 2586, 2587, 2598,
- 2599, 2600, 2612, 2613, 2626, 1831, 1844, 1857,
- 2000, 2014, 2027, 2040, 2053, 2182, 2196, 2210,
- 2223, 2236, 2249, 2364, 2378, 2392, 2405, 2419,
- 2432, 2560, 2574, 2588, 2601, 2614, 2627, 1819,
- 1832, 1845, 2001, 2015, 2028, 2041, 2054, 2183,
- 2197, 2211, 2224, 2237, 2250, 2365, 2379, 2393,
- 2406, 2420, 2433, 2561, 2575, 2589, 2602, 2615,
- 2628, 2066, 2262, 2444, 2445, 2640, 1858, 1871,
- 2067, 2263, 2446, 2641, 1833, 1846, 1859, 1872,
- 2029, 2042, 2055, 2068, 2225, 2238, 2251, 2264,
- 2407, 2421, 2434, 2447, 2460, 2603, 2616, 2629,
- 2642, 2080, 2276, 2458, 2459, 2654, 1885, 2081,
- 2277, 2473, 2655, 1860, 1873, 2043, 2056, 2069,
- 2082, 2239, 2252, 2265, 2278, 2448, 2461, 2617,
- 2630, 2643, 2656, 1833, 1846, 2015, 2028, 2029,
- 2041, 2042, 2055, 2197, 2210, 2211, 2223, 2224,
- 2225, 2237, 2238, 2251, 2379, 2392, 2393, 2406,
- 2407, 2419, 2420, 2421, 2433, 2434, 2575, 2588,
- 2589, 2601, 2602, 2603, 2615, 2616, 2629, 1847,
- 1860, 2043, 2056, 2069, 2239, 2252, 2265, 2435,
- 2447, 2448, 2617, 2630, 2643, 1861, 1874, 2057,
- 2070, 2083, 2253, 2266, 2279, 2449, 2461, 2462,
- 2631, 2644, 2657, 1863, 1876, 2032, 2045, 2046,
- 2058, 2059, 2072, 2214, 2227, 2228, 2240, 2241,
- 2242, 2254, 2255, 2268, 2409, 2410, 2422, 2423,
- 2424, 2436, 2437, 2450, 2451, 2464, 2592, 2605,
- 2606, 2618, 2619, 2620, 2632, 2633, 2646, 1864,
- 1877, 2033, 2047, 2060, 2073, 2086, 2215, 2229,
- 2243, 2256, 2269, 2282, 2397, 2411, 2425, 2438,
- 2452, 2465, 2593, 2607, 2621, 2634, 2647, 2660,
- 1852, 1865, 1878, 1891, 2034, 2048, 2061, 2074,
- 2087, 2216, 2230, 2244, 2257, 2270, 2283, 2412,
- 2426, 2439, 2440, 2453, 2466, 2479, 2594, 2608,
- 2622, 2635, 2648, 2661, 1890, 2478, 2100, 2296,
- 2674, 1879, 1892, 2062, 2075, 2088, 2101, 2258,
- 2271, 2284, 2297, 2467, 2480, 2636, 2649, 2662,
- 2675, 1904, 2492, 1905, 2114, 2310, 2493, 2688,
- 1880, 1893, 1906, 2076, 2089, 2102, 2115, 2272,
- 2285, 2298, 2311, 2454, 2481, 2494, 2507, 2650,
- 2663, 2676, 2689, 1866, 1879, 2035, 2048, 2049,
- 2061, 2062, 2074, 2075, 2088, 2217, 2230, 2231,
- 2243, 2244, 2245, 2256, 2257, 2258, 2270, 2271,
- 2284, 2412, 2413, 2425, 2426, 2427, 2439, 2440,
- 2452, 2453, 2454, 2466, 2467, 2595, 2608, 2609,
- 2621, 2622, 2623, 2634, 2635, 2636, 2648, 2649,
- 2662, 1867, 1880, 2036, 2050, 2063, 2076, 2089,
- 2218, 2232, 2246, 2259, 2272, 2285, 2400, 2414,
- 2428, 2441, 2455, 2468, 2596, 2610, 2624, 2637,
- 2650, 2663, 1855, 1868, 1881, 1894, 2037, 2051,
- 2064, 2077, 2090, 2219, 2233, 2247, 2260, 2273,
- 2286, 2415, 2429, 2442, 2443, 2456, 2469, 2482,
- 2597, 2611, 2625, 2638, 2651, 2664, 1893, 2102,
- 2298, 2480, 2481, 2494, 2676, 2103, 2299, 2677,
- 1882, 1895, 2065, 2078, 2091, 2104, 2261, 2274,
- 2287, 2300, 2470, 2483, 2639, 2652, 2665, 2678,
- 1907, 1920, 2116, 2312, 2495, 2508, 2690, 1908,
- 2117, 2313, 2496, 2691, 1883, 1896, 1909, 2079,
- 2092, 2105, 2118, 2275, 2288, 2301, 2314, 2457,
- 2484, 2497, 2510, 2653, 2666, 2679, 2692, 1869,
- 1882, 2038, 2051, 2052, 2064, 2065, 2077, 2078,
- 2091, 2220, 2233, 2234, 2246, 2247, 2248, 2259,
- 2260, 2261, 2273, 2274, 2287, 2415, 2416, 2428,
- 2429, 2430, 2442, 2443, 2455, 2456, 2457, 2469,
- 2470, 2598, 2611, 2612, 2624, 2625, 2626, 2637,
- 2638, 2639, 2651, 2652, 2665, 1870, 1883, 2039,
- 2053, 2066, 2079, 2092, 2221, 2235, 2249, 2262,
- 2275, 2288, 2403, 2417, 2431, 2444, 2458, 2471,
- 2599, 2613, 2627, 2640, 2653, 2666, 1858, 1871,
- 1884, 2040, 2054, 2067, 2080, 2093, 2222, 2236,
- 2250, 2263, 2276, 2289, 2404, 2418, 2432, 2445,
- 2459, 2472, 2600, 2614, 2628, 2641, 2654, 2667,
- 1896, 2105, 2301, 2483, 2484, 2497, 2679, 1897,
- 2106, 2302, 2485, 2680, 1872, 1885, 1898, 1911,
- 2068, 2081, 2094, 2107, 2264, 2277, 2290, 2303,
- 2446, 2460, 2473, 2486, 2499, 2642, 2655, 2668,
- 2681, 1910, 2119, 2315, 2498, 2693, 2120, 2316,
- 2694, 1899, 1912, 2082, 2095, 2108, 2121, 2278,
- 2291, 2304, 2317, 2487, 2500, 2656, 2669, 2682,
- 2695, 1872, 1885, 2041, 2054, 2055, 2067, 2068,
- 2080, 2081, 2094, 2223, 2236, 2237, 2249, 2250,
- 2251, 2262, 2263, 2264, 2276, 2277, 2290, 2418,
- 2419, 2431, 2432, 2433, 2445, 2446, 2458, 2459,
- 2460, 2472, 2473, 2601, 2614, 2615, 2627, 2628,
- 2629, 2640, 2641, 2642, 2654, 2655, 2668, 1873,
- 1886, 2042, 2056, 2069, 2082, 2095, 2224, 2238,
- 2252, 2265, 2278, 2291, 2406, 2420, 2434, 2447,
- 2461, 2474, 2602, 2616, 2630, 2643, 2656, 2669,
- 1874, 1887, 2043, 2057, 2070, 2083, 2096, 2225,
- 2239, 2253, 2266, 2279, 2292, 2421, 2435, 2448,
- 2462, 2475, 2603, 2617, 2631, 2644, 2657, 2670,
- 1899, 2108, 2304, 2486, 2487, 2682, 1900, 1913,
- 2109, 2305, 2488, 2501, 2683, 1875, 1888, 1901,
- 1914, 2071, 2084, 2097, 2110, 2267, 2280, 2293,
- 2306, 2449, 2463, 2476, 2489, 2502, 2645, 2658,
- 2671, 2684, 1926, 2122, 2318, 2500, 2696, 1927,
- 2123, 2319, 2515, 2697, 1902, 1915, 2085, 2098,
- 2111, 2124, 2281, 2294, 2307, 2320, 2490, 2503,
- 2516, 2659, 2672, 2685, 2698, 1875, 1888, 2057,
- 2070, 2071, 2083, 2084, 2097, 2239, 2252, 2253,
- 2265, 2266, 2267, 2279, 2280, 2293, 2421, 2434,
- 2435, 2448, 2449, 2461, 2462, 2463, 2475, 2476,
- 2617, 2630, 2631, 2643, 2644, 2645, 2657, 2658,
- 2671, 1889, 1902, 2085, 2098, 2111, 2281, 2294,
- 2307, 2477, 2489, 2490, 2659, 2672, 2685, 1903,
- 1916, 1929, 2099, 2112, 2125, 2295, 2308, 2321,
- 2491, 2503, 2504, 2673, 2686, 2699, 1905, 1918,
- 2074, 2087, 2088, 2100, 2101, 2114, 2256, 2269,
- 2270, 2282, 2283, 2284, 2296, 2297, 2310, 2451,
- 2452, 2464, 2465, 2466, 2478, 2479, 2492, 2493,
- 2506, 2634, 2647, 2648, 2660, 2661, 2662, 2674,
- 2675, 2688, 1906, 1919, 2075, 2089, 2102, 2115,
- 2128, 2257, 2271, 2285, 2298, 2311, 2324, 2439,
- 2453, 2467, 2480, 2494, 2507, 2635, 2649, 2663,
- 2676, 2689, 2702, 1894, 1907, 1920, 1933, 2076,
- 2090, 2103, 2116, 2129, 2258, 2272, 2286, 2299,
- 2312, 2325, 2454, 2468, 2481, 2482, 2495, 2508,
- 2521, 2636, 2650, 2664, 2677, 2690, 2703, 1932,
- 2520, 2142, 2338, 2716, 1921, 1934, 2104, 2117,
- 2130, 2143, 2300, 2313, 2326, 2339, 2509, 2522,
- 2678, 2691, 2704, 2717, 1946, 2534, 1947, 2535,
- 2730, 1935, 1948, 2118, 2131, 2144, 2314, 2327,
- 2340, 2496, 2510, 2523, 2536, 2692, 2705, 2718,
- 2731, 1908, 1921, 2077, 2090, 2091, 2103, 2104,
- 2116, 2117, 2130, 2259, 2272, 2273, 2285, 2286,
- 2287, 2298, 2299, 2300, 2312, 2313, 2326, 2454,
- 2455, 2467, 2468, 2469, 2481, 2482, 2494, 2495,
- 2496, 2508, 2509, 2637, 2650, 2651, 2663, 2664,
- 2665, 2676, 2677, 2678, 2690, 2691, 2704, 1909,
- 1922, 2078, 2092, 2105, 2118, 2131, 2260, 2274,
- 2288, 2301, 2314, 2327, 2442, 2456, 2470, 2483,
- 2497, 2510, 2638, 2652, 2666, 2679, 2692, 2705,
- 1910, 1923, 2079, 2093, 2106, 2119, 2132, 2261,
- 2275, 2289, 2302, 2315, 2328, 2457, 2471, 2484,
- 2498, 2511, 2639, 2653, 2667, 2680, 2693, 2706,
- 1935, 2144, 2340, 2522, 2523, 2536, 2718, 1936,
- 2145, 2341, 2524, 2719, 1911, 1924, 1937, 1950,
- 2107, 2120, 2133, 2146, 2303, 2316, 2329, 2342,
- 2485, 2499, 2512, 2525, 2538, 2681, 2694, 2707,
- 2720, 1949, 2537, 2732, 2733, 1938, 1951, 2121,
- 2134, 2147, 2317, 2330, 2343, 2526, 2539, 2695,
- 2708, 2721, 2734, 1911, 1924, 2080, 2093, 2094,
- 2106, 2107, 2119, 2120, 2133, 2262, 2275, 2276,
- 2288, 2289, 2290, 2301, 2302, 2303, 2315, 2316,
- 2329, 2457, 2458, 2470, 2471, 2472, 2484, 2485,
- 2497, 2498, 2499, 2511, 2512, 2640, 2653, 2654,
- 2666, 2667, 2668, 2679, 2680, 2681, 2693, 2694,
- 2707, 1912, 1925, 2081, 2095, 2108, 2121, 2134,
- 2263, 2277, 2291, 2304, 2317, 2330, 2459, 2473,
- 2486, 2500, 2513, 2641, 2655, 2669, 2682, 2695,
- 2708, 1900, 1913, 1926, 1939, 2082, 2096, 2109,
- 2122, 2135, 2264, 2278, 2292, 2305, 2318, 2331,
- 2446, 2460, 2474, 2487, 2488, 2501, 2514, 2527,
- 2642, 2656, 2670, 2683, 2696, 2709, 1938, 2147,
- 2343, 2525, 2526, 2721, 1952, 2148, 2344, 2540,
- 2722, 1914, 1927, 1940, 1953, 2110, 2123, 2136,
- 2149, 2306, 2319, 2332, 2345, 2502, 2515, 2528,
- 2541, 2684, 2697, 2710, 2723, 2539, 2735, 2736,
- 1941, 1954, 2124, 2137, 2150, 2320, 2333, 2346,
- 2516, 2529, 2542, 2698, 2711, 2724, 2737, 1914,
- 1927, 2083, 2096, 2097, 2109, 2110, 2122, 2123,
- 2136, 2265, 2278, 2279, 2291, 2292, 2293, 2304,
- 2305, 2306, 2318, 2319, 2332, 2460, 2461, 2473,
- 2474, 2475, 2487, 2488, 2500, 2501, 2502, 2514,
- 2515, 2643, 2656, 2657, 2669, 2670, 2671, 2682,
- 2683, 2684, 2696, 2697, 2710, 1915, 1928, 2084,
- 2098, 2111, 2124, 2137, 2266, 2280, 2294, 2307,
- 2320, 2333, 2448, 2462, 2476, 2489, 2503, 2516,
- 2644, 2658, 2672, 2685, 2698, 2711, 1903, 1916,
- 1929, 1942, 2085, 2099, 2112, 2125, 2138, 2267,
- 2281, 2295, 2308, 2321, 2334, 2449, 2463, 2477,
- 2490, 2491, 2504, 2517, 2645, 2659, 2673, 2686,
- 2699, 2712, 1941, 2150, 2346, 2528, 2529, 2724,
- 1955, 2151, 2347, 2530, 2725, 1917, 1930, 1943,
- 1956, 2113, 2126, 2139, 2152, 2309, 2322, 2335,
- 2348, 2505, 2518, 2531, 2544, 2687, 2700, 2713,
- 2726, 2542, 2543, 2738, 2739, 1944, 1957, 2127,
- 2140, 2153, 2323, 2336, 2349, 2519, 2532, 2545,
- 2701, 2714, 2727, 2740, 1947, 2116, 2129, 2130,
- 2142, 2143, 2298, 2311, 2312, 2324, 2325, 2326,
- 2338, 2339, 2493, 2494, 2506, 2507, 2508, 2520,
- 2521, 2534, 2535, 2676, 2689, 2690, 2702, 2703,
- 2704, 2716, 2717, 2730, 1948, 2117, 2131, 2144,
- 2299, 2313, 2327, 2340, 2495, 2509, 2522, 2536,
- 2677, 2691, 2705, 2718, 2731, 1949, 2118, 2132,
- 2145, 2300, 2314, 2328, 2341, 2496, 2510, 2523,
- 2537, 2678, 2692, 2706, 2719, 2732, 1950, 2119,
- 2132, 2133, 2145, 2146, 2301, 2314, 2315, 2327,
- 2328, 2329, 2340, 2341, 2342, 2496, 2497, 2509,
- 2510, 2511, 2523, 2524, 2536, 2537, 2538, 2679,
- 2692, 2693, 2705, 2706, 2707, 2718, 2719, 2720,
- 2732, 2733, 1951, 2120, 2134, 2147, 2302, 2316,
- 2330, 2343, 2498, 2512, 2525, 2539, 2680, 2694,
- 2708, 2721, 2734, 1939, 1952, 2121, 2135, 2148,
- 2303, 2317, 2331, 2344, 2485, 2499, 2513, 2526,
- 2527, 2540, 2681, 2695, 2709, 2722, 2735, 1953,
- 2122, 2135, 2136, 2148, 2149, 2304, 2317, 2318,
- 2330, 2331, 2332, 2343, 2344, 2345, 2499, 2500,
- 2512, 2513, 2514, 2526, 2527, 2539, 2540, 2541,
- 2682, 2695, 2696, 2708, 2709, 2710, 2721, 2722,
- 2723, 2735, 2736, 1954, 2123, 2137, 2150, 2305,
- 2319, 2333, 2346, 2501, 2515, 2528, 2542, 2683,
- 2697, 2711, 2724, 2737, 1942, 1955, 2124, 2138,
- 2151, 2306, 2320, 2334, 2347, 2488, 2502, 2516,
- 2529, 2530, 2543, 2684, 2698, 2712, 2725, 2738,
- 1956, 2125, 2138, 2139, 2151, 2152, 2307, 2320,
- 2321, 2333, 2334, 2335, 2346, 2347, 2348, 2502,
- 2503, 2515, 2516, 2517, 2529, 2530, 2542, 2543,
- 2544, 2685, 2698, 2699, 2711, 2712, 2713, 2724,
- 2725, 2726, 2738, 2739, 1957, 2126, 2140, 2153,
- 2308, 2322, 2336, 2349, 2490, 2504, 2518, 2531,
- 2545, 2686, 2700, 2714, 2727, 2740, 1945, 1958,
- 2127, 2141, 2154, 2309, 2323, 2337, 2350, 2491,
- 2505, 2519, 2532, 2533, 2546, 2687, 2701, 2715,
- 2728, 2741, 1959, 2141, 2154, 2155, 2323, 2336,
- 2337, 2349, 2350, 2351, 2505, 2518, 2519, 2532,
- 2533, 2545, 2546, 2547, 2701, 2714, 2715, 2727,
- 2728, 2729, 2741, 2742,
-};
-
-static long _vq_fitmap_lsp12_1[] = {
- 0, 109, 243, 378, 516, 583, 757, 957,
- 1160, 1364, 1449, 1625, 1826, 2028, 2230, 2315,
- 2487, 2683, 2878, 3074, 3157, 3258, 3371, 3484,
- 3597, 3639, 3810, 4017, 4226, 4438, 4537, 4789,
- 5078, 5369, 5655, 5773, 6025, 6313, 6599, 6888,
- 7007, 7249, 7521, 7794, 8067, 8181, 8311, 8457,
- 8602, 8749, 8801, 8975, 9184, 9394, 9604, 9703,
- 9962, 10258, 10554, 10839, 10958, 11212, 11502, 11790,
- 12079, 12198, 12439, 12711, 12986, 13261, 13375, 13505,
- 13652, 13797, 13945, 13997, 14161, 14361, 14562, 14764,
- 14860, 15097, 15370, 15643, 15911, 16023, 16258, 16529,
- 16797, 17068, 17182, 17406, 17659, 17915, 18172, 18280,
- 18404, 18541, 18678, 18816, 18892, 18994, 19116, 19239,
- 15643, 19363, 19500, 19657, 19815, 19971, 20035, 20171,
- 20327, 20481, 20637, 20702, 20833, 20979, 21127, 18816,
- 21276, 21342, 21415, 21488, 21562,
-};
-
-static long _vq_fitlength_lsp12_1[] = {
- 109, 134, 135, 138, 67, 174, 200, 203,
- 204, 85, 176, 201, 202, 202, 85, 172,
- 196, 195, 196, 83, 101, 113, 113, 113,
- 42, 171, 207, 209, 212, 99, 252, 289,
- 291, 286, 118, 252, 288, 286, 289, 119,
- 242, 272, 273, 273, 114, 130, 146, 145,
- 147, 52, 174, 209, 210, 210, 99, 259,
- 296, 296, 285, 119, 254, 290, 288, 289,
- 119, 241, 272, 275, 275, 114, 130, 147,
- 145, 148, 52, 164, 200, 201, 202, 96,
- 237, 273, 273, 268, 112, 235, 271, 268,
- 271, 114, 224, 253, 256, 257, 108, 124,
- 137, 137, 138, 76, 102, 122, 123, 124,
- 268, 137, 157, 158, 156, 64, 136, 156,
- 154, 156, 65, 131, 146, 148, 149, 76,
- 66, 73, 73, 74, 26,
-};
-
-static encode_aux_pigeonhole _vq_auxp_lsp12_1 = {
- 0.202, 0.006, 13, 5,
- _vq_pigeonmap_lsp12_1,
- 21588,
- _vq_fitlist_lsp12_1,
- _vq_fitmap_lsp12_1,
- _vq_fitlength_lsp12_1
-};
-
-static static_codebook _vq_book_lsp12_1 = {
- 3, 2744,
- _vq_lengthlist_lsp12_1,
- 1, 1606015779, 1595446133, 4, 1,
- _vq_quantlist_lsp12_1,
- NULL,
- NULL,
- &_vq_auxp_lsp12_1,
- 0
-};
-
-
-#endif
diff --git a/lib/books/lsp30_0.vqh b/lib/books/lsp30_0.vqh
deleted file mode 100644
index 872fb489..00000000
--- a/lib/books/lsp30_0.vqh
+++ /dev/null
@@ -1,375 +0,0 @@
-/********************************************************************
- * *
- * 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_lsp30_0_VQH_
-#define _V_lsp30_0_VQH_
-#include "codebook.h"
-
-static long _vq_quantlist_lsp30_0[] = {
- 0,
- 2,
- 4,
- 6,
- 8,
- 10,
- 12,
- 14,
- 16,
- 18,
- 20,
- 22,
- 24,
- 26,
- 28,
- 31,
- 35,
- 39,
- 43,
- 47,
- 51,
- 55,
- 63,
- 73,
- 83,
- 93,
-};
-
-static long _vq_lengthlist_lsp30_0[] = {
- 18,18,18,18,18,18,18,18,18,18,18,18,17,18,18,18,
- 18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,
- 18,18,18,18,18,18,18,18,17,15,14,17,18,18,18,18,
- 18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,
- 17,14,14,13,13,15,18,18,18,18,18,18,18,18,18,18,
- 18,18,18,18,18,18,18,15,14,13,13,14,13,13,12,13,
- 16,18,16,18,18,18,18,18,18,18,18,18,18,18,18,18,
- 17,13,12,12,13,15,15,14,12,13,16,15,18,18,18,18,
- 18,18,18,18,18,18,18,18,18,16,17,13,12,13,14,14,
- 13,14,13,14,18,14,17,18,15,18,18,18,18,18,18,18,
- 18,18,18,17,13,11,11,13,15,14,12,12,12,13,13,14,
- 15,14,16,18,18,18,18,18,18,18,18,18,15,15,13,11,
- 11,11,12,12,11,11,12,11,12,13,14,14,13,18,18,18,
- 18,18,18,18,18,18,14,12,11,11,11,12,12,10,10,11,
- 11,10,11,11,13,15,13,18,18,18,18,18,18,18,17,16,
- 14,13,12,12,13,14,12,11,11,11,10,10,10,11,14,16,
- 13,18,18,18,18,18,17,17,16,15,16,15,12,13,13,14,
- 14,13,11,10, 9,10,11,11,13,13,12,18,18,18,18,18,
- 18,18,18,15,15,16,15,13,12,11,11,11,10, 9,10,11,
- 11,11,12,11,13,18,18,18,18,18,16,17,18,15,14,13,
- 12,11,10,11,10,10, 9, 9, 9,10,10,11,11,11,13,18,
- 18,18,18,18,17,18,15,16,13,12,10,11,10,10,10, 9,
- 8, 8, 7, 8, 9,10,12,12,13,18,17,18,18,18,18,17,
- 12,11,10,11,10, 9,10,10, 9, 8, 7, 6, 6, 7, 9,10,
- 11,11,13,16,18,18,18,18,18,16,13,12,12,11,10,10,
- 10, 8, 7, 6, 5, 4, 4, 6, 7, 9,10,11,12,17,18,18,
- 18,16,15,13,13,12,11,11,11,12, 9, 9, 8, 7, 5, 4,
- 3, 5, 7, 8, 9,10,13,16,18,17,16,14,12,12,11,12,
- 11,11,12,11,10, 9, 9, 8, 7, 5, 4, 5, 7, 8, 9,10,
- 14,18,18,18,15,14,12,12,11,10,10,11,11,12,11,11,
- 10, 9, 8, 6, 6, 6, 7, 9,10,11,14,17,18,18,15,14,
- 13,11,11,10,10,10,12,13,12,12,10,10, 9, 8, 7, 7,
- 7, 9,10,11,16,18,17,18,16,16,13,12,12,11,11,11,
- 13,13,12,12,12,11,10, 8, 7, 7, 8, 9,10,12,17,18,
- 14,17,16,15,14,11, 9,10,11,11,12,13,13,13,13,12,
- 12,10,10, 9, 9, 9,10,14,18,18,13,16,16,15,12,10,
- 10,10,11,12,11,11,10, 9, 8, 8, 8, 8, 8, 9,12,15,
- 16,17,17,18,16,18,17,17,18,16,17,15,14,13,12,11,
- 10,10,10, 9, 9,10,14,16,16,17,13,17,18,16,18,17,
- 18,18,18,18,18,18,17,15,14,13,12,12,13,14,17,17,
- 18,17,16,18,17,17,16,15,18,17,18,18,18,18,18,18,
- 17,18,18,18,18,18,18,18,18,18,18,18,18,18,18,16,
- 16,18,18,18,
-};
-
-static long _vq_pigeonmap_lsp30_0[] = {
- 0, 0, 0, 0, 0, 0, 1, 1,
- 1, 1, 1, 1, 2, 2, 2, 2,
- 2, 2, 3, 3, 3, 3, 3, 3,
- 4, 4, 4, 4, 4, 4, 5, 5,
- 5, 5, 5, 5, 5, 5, 5, 5,
- 5, 5, 6, 6, 6, 6, 6, 6,
- 6, 6, 6, 6, 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, 8,
- 8, 8, 8, 8, 8, 8, 8, 8,
- 8, 8, 8, 8, 8,
-};
-
-static long _vq_fitlist_lsp30_0[] = {
- 0, 1, 26, 27, 2, 28, 3, 52,
- 29, 53, 54, 79, 55, 78, 80, 105,
- 81, 106, 3, 4, 29, 5, 30, 6,
- 31, 55, 56, 32, 57, 81, 58, 83,
- 82, 107, 108, 84, 109, 6, 7, 32,
- 8, 33, 9, 34, 59, 35, 60, 58,
- 85, 61, 84, 86, 87, 9, 35, 10,
- 36, 11, 12, 37, 38, 63, 61, 62,
- 87, 64, 89, 88, 113, 114, 90, 115,
- 12, 13, 38, 14, 39, 40, 15, 64,
- 65, 66, 41, 91, 67, 92, 90, 116,
- 117, 93, 118, 15, 41, 67, 16, 42,
- 17, 68, 43, 69, 18, 44, 93, 94,
- 95, 120, 121, 70, 119, 18, 44, 70,
- 19, 45, 71, 20, 46, 21, 72, 96,
- 97, 98, 47, 122, 124, 73, 123, 99,
- 21, 47, 73, 99, 22, 125, 48, 74,
- 100, 126, 23, 49, 75, 101, 127, 24,
- 152, 153, 50, 151, 178, 179, 76, 24,
- 50, 76, 102, 128, 25, 154, 51, 77,
- 180, 103, 206, 129, 232, 155, 258, 181,
- 53, 78, 79, 104, 54, 105, 80, 55,
- 81, 106, 130, 131, 107, 132, 156, 157,
- 133, 158, 183, 159, 56, 81, 82, 107,
- 57, 83, 108, 58, 109, 84, 133, 134,
- 110, 135, 159, 160, 136, 161, 185, 162,
- 187, 59, 84, 85, 110, 60, 86, 111,
- 61, 87, 112, 137, 113, 138, 136, 163,
- 139, 164, 162, 189, 165, 62, 87, 113,
- 88, 63, 89, 114, 64, 90, 115, 139,
- 116, 141, 140, 165, 142, 167, 166, 191,
- 168, 193, 65, 90, 91, 116, 66, 117,
- 92, 118, 67, 93, 144, 142, 143, 119,
- 168, 170, 169, 145, 195, 196, 67, 93,
- 119, 42, 68, 145, 94, 120, 43, 69,
- 146, 95, 121, 44, 70, 147, 96, 122,
- 171, 172, 173, 148, 197, 198, 199, 70,
- 96, 122, 71, 148, 45, 97, 123, 46,
- 72, 149, 98, 124, 47, 73, 150, 99,
- 175, 176, 125, 174, 200, 201, 202, 151,
- 177, 73, 99, 125, 151, 22, 48, 177,
- 74, 100, 126, 152, 178, 23, 49, 204,
- 75, 101, 127, 153, 179, 24, 205, 50,
- 76, 102, 203, 230, 231, 128, 229, 256,
- 257, 154, 131, 156, 157, 182, 132, 183,
- 158, 133, 159, 184, 208, 209, 185, 210,
- 234, 235, 211, 236, 260, 237, 134, 159,
- 160, 185, 135, 186, 161, 136, 187, 162,
- 188, 213, 211, 212, 237, 238, 214, 239,
- 263, 264, 240, 265, 137, 162, 163, 188,
- 138, 164, 189, 139, 165, 190, 214, 215,
- 191, 216, 241, 217, 242, 240, 267, 243,
- 268, 140, 165, 191, 166, 141, 167, 192,
- 142, 168, 193, 217, 194, 218, 219, 243,
- 220, 245, 244, 246, 271, 143, 168, 194,
- 169, 144, 195, 170, 196, 145, 171, 222,
- 221, 197, 220, 246, 247, 248, 223, 272,
- 273, 274, 145, 171, 197, 120, 146, 223,
- 172, 198, 121, 147, 224, 173, 199, 148,
- 174, 225, 249, 250, 251, 200, 275, 277,
- 226, 276, 252, 148, 174, 200, 123, 149,
- 226, 175, 201, 124, 150, 227, 176, 202,
- 125, 151, 228, 177, 203, 252, 253, 254,
- 278, 279, 229, 280, 151, 177, 203, 229,
- 100, 126, 255, 152, 178, 204, 230, 256,
- 101, 127, 282, 75, 153, 179, 205, 231,
- 257, 102, 283, 76, 128, 154, 180, 281,
- 308, 309, 206, 307, 334, 335, 232, 102,
- 128, 154, 180, 206, 232, 258, 103, 129,
- 284, 77, 155, 181, 207, 310, 233, 336,
- 259, 209, 234, 235, 260, 210, 261, 236,
- 211, 237, 262, 287, 263, 286, 288, 313,
- 289, 314, 312, 338, 339, 315, 212, 237,
- 238, 263, 213, 239, 264, 214, 265, 240,
- 289, 266, 291, 290, 315, 316, 292, 317,
- 341, 342, 318, 343, 215, 240, 241, 266,
- 216, 242, 267, 217, 243, 268, 293, 269,
- 292, 294, 295, 318, 319, 320, 345, 321,
- 346, 218, 243, 269, 244, 219, 245, 270,
- 220, 246, 271, 295, 272, 297, 296, 321,
- 322, 298, 323, 347, 324, 349, 221, 246,
- 247, 272, 222, 273, 248, 274, 223, 249,
- 299, 275, 300, 298, 324, 325, 301, 326,
- 352, 350, 351, 223, 249, 275, 224, 301,
- 198, 250, 276, 199, 225, 302, 251, 277,
- 200, 226, 303, 252, 328, 329, 278, 327,
- 353, 354, 355, 304, 330, 226, 252, 278,
- 201, 227, 304, 253, 279, 228, 305, 202,
- 254, 280, 203, 229, 306, 255, 330, 332,
- 281, 331, 307, 356, 357, 358, 229, 255,
- 281, 307, 178, 204, 333, 230, 256, 282,
- 308, 334, 179, 205, 360, 153, 231, 257,
- 283, 309, 335, 180, 361, 154, 206, 232,
- 258, 359, 386, 387, 284, 385, 412, 413,
- 310, 180, 206, 232, 258, 284, 310, 336,
- 181, 207, 362, 155, 233, 259, 285, 388,
- 311, 414, 337, 363, 440, 389, 287, 312,
- 313, 338, 288, 314, 339, 289, 315, 340,
- 364, 365, 341, 366, 367, 390, 391, 392,
- 290, 315, 316, 341, 291, 317, 342, 292,
- 343, 318, 367, 368, 344, 369, 370, 393,
- 394, 395, 392, 293, 318, 344, 319, 294,
- 320, 345, 295, 321, 346, 371, 347, 372,
- 370, 373, 398, 395, 396, 397, 296, 321,
- 322, 347, 297, 323, 348, 298, 324, 349,
- 373, 350, 375, 374, 376, 399, 401, 398,
- 400, 299, 324, 325, 350, 300, 351, 326,
- 352, 301, 327, 376, 378, 377, 353, 402,
- 403, 379, 404, 401, 301, 327, 353, 276,
- 302, 379, 328, 354, 277, 303, 380, 329,
- 355, 278, 304, 381, 330, 356, 406, 407,
- 405, 382, 304, 330, 356, 305, 331, 357,
- 280, 306, 383, 332, 358, 281, 307, 384,
- 333, 382, 359, 408, 410, 385, 409, 307,
- 333, 359, 385, 256, 282, 308, 334, 360,
- 386, 257, 283, 412, 231, 309, 335, 361,
- 387, 258, 413, 232, 284, 310, 411, 336,
- 438, 439, 362, 437, 388, 365, 390, 340,
- 366, 391, 367, 392, 368, 393, 416, 417,
- 418, 394, 419, 442, 443, 444, 420, 445,
- 468, 469, 470, 446, 471, 368, 393, 369,
- 394, 370, 395, 371, 396, 418, 419, 420,
- 421, 397, 422, 444, 445, 446, 447, 423,
- 448, 470, 471, 472, 473, 449, 474, 371,
- 396, 372, 397, 347, 373, 398, 348, 374,
- 399, 421, 422, 423, 424, 400, 425, 447,
- 448, 449, 450, 426, 451, 473, 474, 475,
- 476, 452, 477, 374, 399, 375, 400, 376,
- 401, 377, 402, 424, 425, 426, 427, 403,
- 428, 450, 451, 452, 453, 429, 454, 476,
- 477, 478, 479, 455, 480, 377, 402, 378,
- 403, 404, 379, 405, 430, 427, 428, 429,
- 431, 456, 453, 454, 455, 457, 482, 479,
- 480, 481, 379, 404, 405, 354, 380, 406,
- 355, 381, 407, 356, 382, 431, 432, 408,
- 433, 430, 457, 434, 458, 459, 456, 460,
- 483, 484, 485, 482, 382, 408, 357, 383,
- 409, 358, 384, 410, 359, 385, 411, 434,
- 435, 436, 461, 437, 460, 462, 486, 463,
- 487, 488, 385, 411, 437, 334, 360, 386,
- 412, 438, 335, 361, 309, 387, 413, 439,
- 336, 310, 362, 388, 464, 465, 414, 463,
- 490, 491, 440, 489, 516, 517, 466, 515,
- 336, 362, 388, 414, 440, 337, 363, 311,
- 389, 415, 466, 441, 492, 467, 518, 493,
- 443, 468, 444, 469, 445, 470, 446, 471,
- 494, 495, 496, 472, 497, 520, 521, 522,
- 498, 523, 546, 547, 548, 524, 549, 446,
- 471, 447, 472, 448, 473, 449, 474, 496,
- 497, 498, 499, 475, 500, 522, 523, 524,
- 525, 501, 526, 548, 549, 550, 551, 527,
- 552, 449, 474, 450, 475, 451, 476, 452,
- 477, 499, 500, 501, 502, 478, 503, 525,
- 526, 527, 528, 504, 529, 551, 552, 553,
- 554, 530, 555, 452, 477, 453, 478, 454,
- 479, 455, 480, 502, 503, 504, 505, 481,
- 506, 528, 529, 530, 531, 507, 532, 554,
- 555, 556, 557, 533, 558, 455, 480, 456,
- 481, 482, 457, 483, 508, 505, 506, 507,
- 509, 534, 531, 532, 533, 535, 560, 557,
- 558, 559, 457, 482, 483, 458, 484, 459,
- 485, 460, 486, 511, 509, 510, 508, 536,
- 512, 535, 537, 534, 561, 538, 562, 563,
- 560, 460, 486, 461, 487, 462, 488, 463,
- 489, 512, 513, 514, 515, 540, 538, 539,
- 565, 541, 564, 566, 463, 489, 515, 438,
- 464, 490, 516, 439, 465, 491, 517, 440,
- 466, 542, 543, 492, 541, 568, 569, 518,
- 567, 544, 466, 492, 518, 441, 467, 493,
- 544, 519, 570, 545, 571, 521, 546, 522,
- 547, 523, 548, 524, 549, 550, 573, 572,
- 574, 575, 576, 598, 599, 600, 577, 601,
- 602, 624, 625, 626, 603, 524, 549, 525,
- 550, 526, 551, 527, 552, 553, 574, 575,
- 576, 577, 578, 579, 600, 602, 599, 601,
- 603, 580, 604, 605, 626, 628, 625, 627,
- 629, 606, 527, 552, 528, 553, 529, 554,
- 530, 555, 556, 577, 578, 579, 580, 581,
- 582, 603, 604, 605, 602, 606, 583, 607,
- 608, 629, 628, 630, 631, 632, 609, 555,
- 530, 531, 556, 532, 557, 533, 558, 559,
- 581, 582, 583, 580, 584, 585, 606, 607,
- 608, 605, 609, 586, 610, 611, 632, 633,
- 634, 631, 635, 612, 533, 558, 534, 559,
- 560, 535, 561, 583, 584, 585, 586, 587,
- 610, 611, 608, 609, 612, 613, 636, 637,
- 634, 635, 638, 535, 561, 536, 562, 537,
- 563, 538, 564, 586, 587, 588, 589, 590,
- 611, 612, 613, 614, 615, 616, 638, 639,
- 640, 637, 641, 538, 564, 539, 565, 540,
- 566, 541, 567, 589, 590, 591, 592, 593,
- 615, 616, 617, 618, 619, 641, 642, 643,
- 644, 541, 567, 516, 542, 568, 517, 543,
- 594, 569, 518, 544, 595, 593, 570, 592,
- 620, 621, 596, 619, 618, 622, 647, 646,
- 645, 644, 544, 570, 519, 545, 596, 571,
- 597, 622, 623, 648, 649, 599, 600, 624,
- 601, 625, 602, 626, 627, 628, 650, 651,
- 652, 629, 653, 603, 626, 627, 604, 628,
- 605, 629, 630, 631, 653, 654, 651, 652,
- 655, 632, 656, 606, 629, 630, 607, 631,
- 608, 632, 633, 634, 655, 657, 654, 656,
- 658, 635, 659, 609, 632, 633, 610, 634,
- 611, 635, 636, 637, 658, 657, 659, 660,
- 661, 638, 662, 612, 635, 636, 637, 613,
- 638, 639, 661, 662, 663, 660, 664, 638,
- 614, 639, 615, 640, 616, 641, 642, 663,
- 664, 665, 666, 667, 668, 641, 642, 617,
- 643, 618, 619, 644, 645, 667, 668, 669,
- 670, 671, 644, 645, 620, 646, 621, 647,
- 622, 648, 672, 673, 671, 670, 674, 622,
- 648, 623, 649, 674, 675,
-};
-
-static long _vq_fitmap_lsp30_0[] = {
- 0, 18, 37, 53, 72, 91, 109, 128,
- 151, 168, 188, 209, 229, 250, 270, 295,
- 321, 151, 354, 374, 396, 417, 437, 458,
- 483, 508, 543, 561, 582, 604, 625, 646,
- 667, 693, 718, 753, 774, 792, 811, 830,
- 849, 868, 890, 911, 753, 941, 965, 991,
- 1019, 1045, 1066, 1092, 1114, 1144, 1160, 1183,
- 1209, 1235, 1261, 1282, 1305, 1324, 1346, 1357,
- 1381, 1410, 1439, 1468, 1491, 1515, 1537, 1562,
- 1573, 1587, 1603, 1619, 1635, 1647, 1661, 1674,
- 1687,
-};
-
-static long _vq_fitlength_lsp30_0[] = {
- 18, 19, 16, 19, 19, 18, 19, 23,
- 17, 20, 21, 20, 21, 20, 25, 26,
- 33, 17, 20, 22, 21, 20, 21, 25,
- 25, 35, 18, 21, 22, 21, 21, 21,
- 26, 25, 35, 21, 18, 19, 19, 19,
- 19, 22, 21, 30, 21, 24, 26, 28,
- 26, 21, 26, 22, 30, 16, 23, 26,
- 26, 26, 21, 23, 19, 22, 11, 24,
- 29, 29, 29, 23, 24, 22, 25, 11,
- 14, 16, 16, 16, 12, 14, 13, 13,
- 6,
-};
-
-static encode_aux_pigeonhole _vq_auxp_lsp30_0 = {
- 0.067, 0.001, 93, 9,
- _vq_pigeonmap_lsp30_0,
- 1693,
- _vq_fitlist_lsp30_0,
- _vq_fitmap_lsp30_0,
- _vq_fitlength_lsp30_0
-};
-
-static static_codebook _vq_book_lsp30_0 = {
- 2, 676,
- _vq_lengthlist_lsp30_0,
- 1, 1603348202, 1590714958, 7, 1,
- _vq_quantlist_lsp30_0,
- NULL,
- NULL,
- &_vq_auxp_lsp30_0,
- 0
-};
-
-
-#endif
diff --git a/lib/books/lsp30_1.vqh b/lib/books/lsp30_1.vqh
deleted file mode 100644
index c8672e4c..00000000
--- a/lib/books/lsp30_1.vqh
+++ /dev/null
@@ -1,1575 +0,0 @@
-/********************************************************************
- * *
- * 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_lsp30_1_VQH_
-#define _V_lsp30_1_VQH_
-#include "codebook.h"
-
-static long _vq_quantlist_lsp30_1[] = {
- 0,
- 2,
- 4,
- 6,
- 8,
- 10,
- 12,
- 15,
- 19,
- 23,
- 27,
- 31,
- 35,
- 39,
-};
-
-static long _vq_lengthlist_lsp30_1[] = {
- 19,20,20,19,17,18,20,16,16,19,18,20,19,19,19,19,
- 18,18,18,18,18,17,17,19,19,19,19,19,19,19,19,19,
- 19,19,18,17,17,18,19,19,19,19,19,19,19,19,19,19,
- 17,16,14,19,19,19,19,19,19,19,19,19,19,19,18,13,
- 15,18,19,19,19,19,19,19,19,19,19,19,17,15,15,18,
- 19,19,19,19,19,19,19,19,19,19,17,18,17,18,19,19,
- 19,19,19,19,19,19,19,19,19,19,18,18,19,19,18,18,
- 19,19,19,19,19,19,19,19,18,18,17,16,15,17,19,19,
- 19,19,19,19,19,19,18,16,16,15,15,15,19,19,19,19,
- 19,19,19,18,18,17,16,15,14,16,19,19,19,19,19,19,
- 19,18,17,16,16,14,16,19,19,19,19,19,19,19,18,19,
- 14,15,15,16,19,19,19,18,18,19,18,18,18,15,16,16,
- 16,18,18,19,18,19,19,18,18,17,17,17,18,18,19,19,
- 19,19,19,19,19,17,18,19,18,17,17,19,19,19,19,19,
- 19,19,19,19,19,19,17,17,16,19,19,19,19,19,19,19,
- 19,19,19,19,18,17,16,19,18,19,19,19,19,19,19,19,
- 19,19,18,17,18,16,19,19,19,19,19,19,19,19,19,19,
- 17,17,18,17,19,18,19,18,19,19,19,19,19,19,16,18,
- 18,17,19,18,18,18,19,19,19,19,19,19,18,19,17,16,
- 18,17,16,16,19,19,19,19,19,19,18,15,15,17,16,14,
- 15,14,19,19,19,19,19,19,19,17,14,15,16,15,14,14,
- 19,19,19,19,19,19,19,16,15,15,15,14,14,16,19,19,
- 19,19,18,18,19,17,17,14,15,14,16,18,19,19,17,18,
- 17,17,17,16,13,14,15,15,19,18,17,16,16,17,17,16,
- 16,14,15,14,15,16,18,19,19,19,19,19,18,17,17,17,
- 18,19,19,19,19,19,19,19,19,19,18,17,18,17,17,19,
- 19,17,19,19,19,18,19,19,18,18,17,16,16,18,17,18,
- 17,19,19,19,19,19,19,19,19,16,17,17,17,19,16,18,
- 19,19,19,19,19,19,19,18,17,17,17,18,17,18,19,19,
- 19,19,19,18,19,17,17,16,17,17,17,17,19,19,19,19,
- 19,17,17,18,16,15,17,17,17,17,19,19,19,19,19,19,
- 17,17,15,15,16,16,15,15,19,19,19,19,19,19,19,16,
- 16,16,16,14,15,14,19,19,19,19,19,19,18,15,13,14,
- 15,14,14,15,19,19,19,19,19,17,18,16,15,15,14,14,
- 14,15,19,19,19,18,17,19,19,16,15,14,14,15,16,17,
- 18,16,16,16,16,16,18,15,14,13,15,15,16,19,16,17,
- 17,17,16,16,15,15,14,14,14,16,18,19,19,18,19,19,
- 19,17,17,19,18,19,19,18,19,19,18,19,19,19,19,18,
- 17,17,16,18,19,18,16,17,18,19,19,19,17,16,16,17,
- 16,17,18,17,15,17,19,19,19,19,19,18,17,19,17,16,
- 16,16,15,19,19,19,19,19,19,19,19,19,17,16,16,16,
- 18,16,19,19,19,19,18,18,19,18,16,15,15,17,17,16,
- 19,19,18,18,18,17,17,16,15,15,15,17,16,16,19,19,
- 19,19,19,19,17,15,15,12,15,15,15,14,19,19,19,19,
- 19,19,17,15,13,13,14,14,14,15,19,19,19,19,19,17,
- 15,13,13,14,13,14,15,16,19,19,18,19,18,17,16,15,
- 14,14,13,15,16,16,18,18,17,17,16,17,18,16,14,13,
- 13,16,17,17,15,16,17,17,17,16,16,15,14,13,16,17,
- 17,19,19,19,17,17,16,17,16,15,13,14,15,16,19,19,
- 19,19,19,19,18,17,17,19,18,17,19,16,15,17,18,19,
- 19,19,19,18,17,17,17,19,17,15,15,16,19,19,19,19,
- 19,17,17,17,17,19,16,15,17,17,19,18,19,19,17,16,
- 17,17,18,17,16,17,17,17,19,19,19,19,17,18,17,19,
- 17,14,16,16,18,16,19,19,19,19,19,19,16,17,15,14,
- 14,16,19,16,19,19,19,18,18,16,15,15,14,14,13,15,
- 16,15,19,19,19,18,18,17,15,14,13,12,13,14,13,14,
- 18,19,19,19,19,16,14,12,11,11,12,13,13,15,19,19,
- 18,18,17,15,14,12,12,12,12,13,16,18,19,18,17,16,
- 18,16,16,14,13,13,12,15,17,18,17,18,17,17,17,18,
- 16,14,14,12,14,17,18,19,18,17,17,17,17,17,16,15,
- 14,13,15,17,16,19,19,18,17,17,17,17,17,14,12,14,
- 14,17,19,19,18,19,19,19,18,19,19,17,18,18,17,14,
- 13,17,19,19,19,18,17,15,15,15,16,19,16,14,14,17,
- 18,18,18,18,16,15,14,16,16,17,16,15,15,17,19,18,
- 19,18,18,17,17,16,16,16,15,17,17,17,19,19,18,19,
- 17,19,16,16,16,15,15,17,17,16,19,19,19,18,17,17,
- 15,15,14,14,14,16,16,15,19,19,19,18,17,16,14,13,
- 13,13,14,14,14,14,19,18,18,17,16,14,12,11,11,11,
- 12,13,13,14,19,19,18,15,15,14,12,10,10,11,12,12,
- 13,17,19,19,17,15,14,14,12,11,10,11,11,13,16,18,
- 17,17,17,16,17,15,14,12,12,12,12,16,17,18,18,17,
- 16,16,16,16,15,14,13,12,15,17,19,19,17,16,16,16,
- 16,16,16,15,13,13,15,16,16,19,17,17,15,17,17,16,
- 17,14,13,14,15,18,19,19,14,17,18,18,19,19,18,17,
- 17,17,16,15,15,17,14,16,17,18,16,14,14,16,15,18,
- 17,15,14,18,16,16,17,16,14,16,12,15,15,17,16,15,
- 16,18,19,18,17,17,17,15,15,16,15,15,16,15,17,15,
- 17,18,18,16,16,15,15,15,14,14,14,14,15,14,19,19,
- 18,18,16,14,14,13,13,13,14,14,14,13,17,18,17,17,
- 16,14,12,11,10,11,13,13,13,13,17,17,17,15,13,12,
- 10, 9, 8,10,11,12,12,16,18,16,13,12,11,10, 9, 8,
- 7, 9,10,12,15,17,19,17,16,13,12,12,10, 9, 8,10,
- 11,14,16,17,16,16,16,16,14,14,13,11,11,11,12,15,
- 16,19,19,16,16,15,15,15,14,13,12,12,15,16,17,19,
- 17,16,15,15,15,15,15,14,12,14,15,17,19,19,17,16,
- 16,16,16,16,15,13,13,14,16,17,19,19,18,18,19,19,
- 16,16,15,15,14,14,16,17,17,18,19,16,15,15,16,15,
- 14,13,14,15,15,17,17,19,18,15,15,14,14,14,14,13,
- 14,14,15,16,16,16,17,18,15,13,13,14,14,14,13,14,
- 15,15,13,13,17,15,15,15,15,15,14,13,12,13,13,13,
- 12,13,15,16,16,16,16,15,13,11,11,11,12,11,12,14,
- 15,14,13,14,14,12,10, 9, 8, 9,10,10,12,16,14,12,
- 12,13,11,10, 8, 6, 5, 8, 9,11,13,17,16,15,13,12,
- 10, 9, 7, 4, 4, 7, 9,12,14,16,17,17,15,13,11,10,
- 9, 6, 6, 9,11,13,15,17,19,16,15,14,14,13,11,10,
- 9,11,12,14,16,18,17,15,14,14,14,13,13,12,11,12,
- 15,15,17,19,16,15,14,14,15,15,14,13,12,14,15,15,
- 19,19,16,15,16,15,15,15,14,13,12,14,16,18,18,18,
- 19,19,19,19,17,17,16,15,14,15,17,19,18,17,19,19,
- 18,18,17,18,16,13,14,15,17,16,16,15,18,19,19,17,
- 14,14,14,14,13,14,14,14,14,14,18,18,17,15,15,14,
- 14,13,12,12,13,12,12,13,18,16,14,14,14,14,13,12,
- 11,11,11,11,11,14,17,14,14,14,14,12,11,11,10,10,
- 10,10,12,16,15,15,14,14,13,11,10, 9, 7, 8, 9,10,
- 13,17,16,15,14,13,11,10, 8, 5, 4, 6, 8,11,15,17,
- 15,15,14,13,11, 9, 7, 4, 3, 6, 9,12,14,18,17,15,
- 15,13,12,10, 9, 6, 6, 8,10,12,16,17,16,15,14,14,
- 13,12,10, 9, 9,10,13,14,14,18,13,15,14,14,13,12,
- 11,12,11,13,13,12,15,19,16,15,13,14,13,14,14,13,
- 13,15,16,17,17,19,15,15,15,14,14,13,13,12,13,16,
- 16,17,19,17,19,19,19,19,17,18,18,18,17,17,18,17,
- 18,15,19,19,19,17,17,18,17,15,15,17,16,16,15,14,
- 19,19,18,17,17,16,16,14,14,14,14,14,12,13,19,17,
- 16,16,15,15,15,13,13,12,13,12,12,14,17,15,16,15,
- 15,13,13,12,11,11,11,11,12,16,18,16,15,14,14,13,
- 12,11,10,10,10,11,14,18,17,17,14,13,13,12,11,10,
- 8, 9, 9,11,15,19,18,17,14,13,12,11, 9, 7, 6, 7,
- 10,13,17,18,17,16,14,13,11,10, 9, 6, 6, 7,10,13,
- 16,19,18,17,15,14,12,11,10, 8, 7, 9,11,14,16,19,
- 14,15,16,14,14,12,11,10,10,10,12,13,15,18,15,15,
- 14,14,14,14,13,12,12,12,13,14,18,18,15,15,15,14,
- 15,15,14,13,14,15,14,18,19,19,15,15,14,14,14,12,
- 13,14,14,16,16,18,19,19,19,19,18,19,18,19,19,18,
- 18,19,19,19,17,15,19,19,17,19,18,19,18,17,16,18,
- 17,16,15,14,19,19,18,18,19,18,17,16,15,16,16,14,
- 13,15,19,18,19,18,18,18,16,13,14,14,14,13,14,17,
- 18,19,18,18,17,16,15,13,13,13,12,13,15,18,17,19,
- 18,18,15,14,14,12,12,12,12,13,18,19,18,19,17,15,
- 14,13,12,11,10,10,12,14,17,19,17,17,15,13,13,12,
- 11, 9, 8, 9,12,15,17,19,18,18,15,14,12,11,10, 8,
- 7, 8,11,14,17,19,18,16,15,14,13,12,11, 9, 8, 9,
- 10,13,17,19,15,16,16,15,14,13,12,10,10,10,11,13,
- 19,19,16,16,15,14,14,14,14,13,12,12,12,15,18,19,
- 15,15,14,15,16,16,14,14,13,13,15,17,19,19,17,15,
- 16,15,14,13,14,14,15,15,18,18,19,19,19,18,19,19,
- 19,19,19,18,17,19,19,19,19,17,19,18,19,19,19,19,
- 19,17,17,19,19,19,15,18,19,19,19,19,19,18,18,15,
- 17,17,18,18,15,19,18,19,19,19,19,19,18,14,15,16,
- 16,15,16,19,19,18,19,19,18,18,16,14,14,14,15,15,
- 16,19,19,18,19,17,17,16,15,13,12,13,15,16,17,19,
- 18,19,17,16,15,16,13,11,11,11,14,15,18,19,19,18,
- 16,16,15,13,12,10, 9, 9,13,14,17,19,19,16,15,15,
- 13,12,11, 9, 7, 8,11,13,17,19,17,16,16,15,14,13,
- 12, 9, 8, 8,10,13,18,19,16,16,16,15,15,14,13,11,
- 10, 9,11,14,18,19,16,15,15,15,16,15,14,13,11,11,
- 12,15,19,19,15,16,16,17,17,15,15,14,13,13,14,19,
- 19,19,19,17,17,16,14,14,14,14,15,15,18,19,19,19,
- 19,19,19,19,19,19,19,19,18,19,19,19,19,19,19,19,
- 19,19,19,19,19,19,19,19,19,19,18,19,19,19,19,19,
- 19,19,19,17,18,19,19,19,19,19,19,19,19,19,19,19,
- 19,15,17,18,18,19,19,19,19,19,19,19,19,18,18,15,
- 14,16,17,18,19,19,19,19,19,18,18,18,16,15,14,15,
- 17,16,18,19,18,18,19,18,18,15,15,13,12,13,14,16,
- 18,19,19,19,18,18,15,14,13,11,10,10,13,15,18,19,
- 18,18,17,16,15,14,13,10, 9, 9,11,14,18,19,18,18,
- 18,17,15,14,13,10, 9, 9,11,14,17,19,17,17,16,17,
- 16,16,14,11, 9,10,12,14,19,19,15,16,17,18,17,16,
- 14,12,11,12,14,16,19,19,16,17,17,17,17,16,16,14,
- 14,15,16,18,19,19,18,16,16,15,16,14,15,14,15,16,
- 17,19,19,19,18,19,19,19,19,19,19,19,18,19,19,19,
- 19,19,19,19,19,19,19,19,17,18,18,19,19,19,19,19,
- 19,19,19,19,19,18,18,19,19,18,19,18,18,19,19,19,
- 19,19,19,19,18,19,18,18,19,19,19,19,19,19,19,19,
- 19,19,18,19,18,18,16,19,17,19,19,19,19,19,19,18,
- 18,16,16,16,17,19,19,19,19,19,19,19,18,16,16,15,
- 15,14,16,17,18,18,19,19,19,18,16,15,15,13,13,13,
- 14,17,19,19,19,18,19,18,16,15,15,12,11,12,14,17,
- 17,19,19,18,17,17,16,16,14,12,11,12,13,16,18,19,
- 18,16,17,18,16,15,15,13,12,13,13,16,19,19,16,15,
- 17,19,17,17,16,15,14,13,14,18,19,19,18,17,18,19,
- 19,18,16,15,16,15,16,19,18,19,19,18,17,16,15,15,
- 16,18,17,18,19,19,19,19,
-};
-
-static long _vq_pigeonmap_lsp30_1[] = {
- 0, 0, 0, 0, 0, 0, 1, 1,
- 1, 1, 1, 1, 2, 2, 2, 2,
- 2, 2, 2, 2, 2, 2, 3, 3,
- 3, 3, 3, 3, 3, 3, 3, 3,
- 3, 3, 4, 4, 4, 4, 4,
-};
-
-static long _vq_fitlist_lsp30_1[] = {
- 0, 14, 196, 1, 15, 197, 2, 16,
- 198, 3, 210, 211, 17, 199, 212, 28,
- 29, 30, 224, 43, 225, 31, 213, 226,
- 42, 44, 238, 57, 239, 45, 58, 227,
- 240, 394, 392, 393, 407, 395, 406, 408,
- 409, 422, 420, 56, 421, 434, 253, 435,
- 241, 254, 423, 436, 590, 588, 589, 603,
- 591, 604, 602, 617, 605, 618, 616, 252,
- 630, 449, 631, 437, 450, 619, 632, 785,
- 786, 784, 798, 799, 787, 800, 813, 801,
- 814, 812, 448, 3, 17, 199, 4, 5,
- 18, 200, 6, 19, 201, 31, 213, 32,
- 214, 20, 33, 202, 215, 45, 227, 228,
- 34, 47, 216, 229, 46, 59, 241, 60,
- 242, 48, 230, 243, 395, 396, 397, 409,
- 410, 398, 411, 424, 412, 423, 425, 61,
- 255, 437, 438, 244, 426, 439, 591, 592,
- 593, 605, 606, 594, 607, 608, 619, 620,
- 256, 621, 257, 633, 634, 440, 622, 635,
- 787, 788, 789, 801, 790, 802, 803, 816,
- 804, 815, 451, 452, 817, 453, 6, 20,
- 202, 7, 216, 21, 203, 217, 399, 8,
- 35, 204, 22, 218, 9, 36, 205, 400,
- 34, 230, 231, 49, 232, 23, 48, 413,
- 50, 219, 244, 245, 63, 246, 428, 37,
- 62, 427, 64, 233, 398, 414, 412, 401,
- 426, 415, 440, 441, 259, 260, 442, 51,
- 595, 610, 609, 624, 258, 429, 594, 596,
- 608, 597, 622, 623, 611, 636, 455, 637,
- 456, 638, 247, 790, 791, 806, 818, 820,
- 454, 625, 807, 805, 792, 804, 793, 819,
- 832, 651, 833, 652, 834, 443, 9, 23,
- 205, 219, 401, 10, 37, 24, 206, 220,
- 11, 38, 207, 402, 25, 221, 12, 39,
- 208, 403, 233, 415, 234, 416, 235, 26,
- 53, 51, 52, 417, 222, 247, 248, 66,
- 249, 40, 67, 404, 65, 429, 430, 431,
- 236, 418, 261, 443, 444, 262, 445, 54,
- 263, 597, 598, 599, 611, 612, 613, 600,
- 625, 626, 627, 432, 614, 639, 457, 640,
- 458, 641, 459, 793, 794, 795, 807, 808,
- 809, 796, 823, 821, 822, 250, 628, 810,
- 835, 653, 836, 654, 655, 837, 12, 26,
- 208, 222, 13, 40, 209, 404, 27, 236,
- 54, 418, 223, 41, 250, 68, 237, 55,
- 405, 432, 419, 264, 446, 600, 628, 433,
- 251, 614, 601, 615, 460, 642, 796, 810,
- 797, 824, 629, 447, 811, 656, 838, 992,
- 1006, 993, 1020, 825, 643, 1007, 852, 1034,
- 1188, 1202, 1216, 1021, 839, 1189, 1203, 1230,
- 1048, 1217, 1035, 1398, 1412, 1244, 29, 42,
- 56, 225, 238, 43, 30, 57, 226, 239,
- 44, 31, 45, 58, 227, 240, 70, 252,
- 71, 253, 59, 72, 241, 254, 84, 266,
- 85, 267, 73, 86, 255, 268, 280, 281,
- 87, 269, 282, 421, 434, 422, 435, 423,
- 436, 448, 449, 437, 450, 462, 463, 451,
- 464, 476, 477, 283, 465, 478, 617, 630,
- 618, 631, 619, 632, 644, 645, 633, 646,
- 658, 647, 659, 660, 672, 673, 479, 661,
- 674, 813, 826, 814, 827, 815, 828, 840,
- 829, 841, 842, 843, 854, 855, 856, 32,
- 45, 46, 59, 228, 241, 33, 47, 60,
- 229, 242, 34, 61, 230, 243, 48, 73,
- 255, 256, 62, 244, 257, 74, 75, 269,
- 270, 76, 258, 271, 87, 88, 89, 283,
- 284, 90, 272, 285, 424, 437, 425, 426,
- 438, 439, 440, 451, 452, 453, 454, 465,
- 466, 467, 479, 480, 286, 468, 481, 620,
- 621, 622, 633, 634, 635, 636, 647, 648,
- 649, 650, 663, 661, 662, 675, 676, 482,
- 664, 677, 816, 829, 817, 818, 831, 830,
- 844, 832, 843, 845, 857, 846, 859, 858,
- 48, 62, 244, 35, 49, 217, 231, 258,
- 413, 63, 245, 36, 218, 259, 50, 232,
- 64, 246, 23, 37, 219, 260, 442, 51,
- 233, 76, 77, 428, 78, 247, 272, 427,
- 454, 273, 455, 274, 65, 429, 90, 91,
- 92, 456, 261, 443, 286, 287, 469, 288,
- 470, 79, 468, 275, 440, 441, 414, 415,
- 457, 482, 105, 483, 484, 93, 106, 609,
- 637, 638, 624, 651, 625, 650, 652, 665,
- 639, 104, 664, 666, 471, 623, 636, 610,
- 611, 653, 678, 301, 679, 680, 289, 302,
- 833, 834, 820, 847, 821, 846, 848, 861,
- 835, 300, 860, 862, 667, 805, 819, 832,
- 806, 807, 849, 874, 875, 497, 876, 485,
- 498, 37, 51, 233, 65, 247, 24, 38,
- 220, 261, 443, 52, 234, 66, 248, 39,
- 221, 262, 53, 80, 235, 417, 67, 249,
- 40, 222, 263, 54, 81, 236, 418, 79,
- 444, 445, 250, 275, 93, 430, 276, 94,
- 431, 277, 68, 457, 458, 95, 264, 446,
- 289, 290, 291, 473, 82, 471, 472, 109,
- 278, 460, 429, 416, 432, 459, 107, 485,
- 486, 108, 487, 612, 613, 639, 640, 628,
- 626, 627, 655, 653, 654, 642, 669, 667,
- 304, 96, 474, 625, 641, 614, 668, 656,
- 303, 681, 682, 305, 683, 292, 808, 809,
- 837, 835, 836, 824, 822, 850, 851, 849,
- 838, 864, 865, 863, 500, 670, 821, 823,
- 810, 852, 499, 877, 878, 879, 488, 501,
- 40, 54, 236, 68, 250, 27, 41, 223,
- 264, 446, 55, 237, 82, 251, 433, 69,
- 278, 460, 96, 265, 447, 83, 292, 474,
- 279, 97, 432, 419, 461, 488, 110, 642,
- 629, 656, 643, 670, 475, 293, 628, 615,
- 657, 684, 306, 838, 825, 852, 839, 866,
- 671, 489, 824, 811, 853, 880, 502, 71,
- 84, 85, 267, 280, 98, 72, 86, 268,
- 281, 73, 269, 282, 87, 100, 476, 99,
- 294, 477, 283, 295, 465, 478, 74, 88,
- 101, 270, 296, 479, 490, 112, 491, 113,
- 297, 492, 114, 308, 309, 102, 310, 493,
- 115, 298, 504, 126, 505, 127, 311, 506,
- 322, 323, 128, 116, 324, 507, 463, 464,
- 284, 129, 312, 672, 673, 661, 674, 466,
- 675, 686, 687, 688, 689, 494, 700, 701,
- 702, 518, 519, 520, 703, 659, 660, 480,
- 325, 508, 855, 868, 869, 857, 870, 662,
- 871, 882, 883, 884, 885, 690, 896, 897,
- 898, 714, 715, 716, 899, 856, 676, 521,
- 704, 74, 87, 270, 283, 88, 101, 75,
- 271, 284, 89, 102, 76, 272, 285, 90,
- 100, 296, 466, 479, 297, 480, 103, 286,
- 298, 481, 104, 299, 482, 114, 493, 115,
- 494, 116, 300, 495, 310, 311, 312, 117,
- 313, 496, 118, 128, 507, 129, 508, 130,
- 314, 509, 131, 324, 325, 326, 327, 510,
- 467, 468, 132, 492, 675, 676, 677, 678,
- 689, 690, 691, 506, 692, 703, 704, 705,
- 520, 521, 522, 523, 706, 662, 663, 664,
- 328, 688, 871, 872, 873, 874, 885, 886,
- 887, 702, 888, 899, 900, 901, 716, 717,
- 718, 719, 902, 858, 859, 860, 524, 90,
- 286, 77, 91, 104, 259, 273, 287, 64,
- 78, 105, 260, 274, 456, 483, 92, 288,
- 65, 79, 106, 261, 275, 457, 484, 93,
- 103, 299, 482, 300, 301, 470, 302, 289,
- 471, 496, 497, 119, 120, 498, 107, 485,
- 117, 118, 315, 316, 303, 313, 314, 510,
- 511, 121, 499, 512, 133, 134, 317, 131,
- 132, 329, 330, 327, 328, 455, 469, 693,
- 513, 652, 679, 653, 680, 495, 678, 666,
- 667, 692, 694, 681, 509, 707, 695, 706,
- 708, 523, 524, 525, 526, 651, 665, 889,
- 890, 903, 709, 875, 848, 849, 876, 691,
- 874, 861, 862, 863, 888, 877, 705, 891,
- 902, 904, 719, 720, 721, 722, 847, 1085,
- 905, 79, 93, 275, 289, 66, 80, 107,
- 262, 276, 485, 94, 458, 290, 67, 81,
- 108, 263, 277, 459, 486, 95, 291, 68,
- 82, 109, 264, 278, 460, 487, 96, 303,
- 304, 305, 292, 474, 472, 121, 499, 500,
- 122, 501, 110, 123, 488, 317, 318, 319,
- 306, 124, 502, 515, 513, 135, 514, 136,
- 137, 320, 331, 332, 333, 471, 473, 696,
- 697, 709, 710, 516, 681, 654, 655, 682,
- 656, 683, 670, 695, 684, 698, 711, 527,
- 528, 529, 667, 668, 669, 892, 893, 905,
- 906, 712, 850, 877, 851, 878, 852, 879,
- 864, 866, 891, 880, 894, 907, 723, 724,
- 725, 863, 865, 1088, 1089, 1101, 1102, 908,
- 82, 96, 278, 292, 69, 83, 110, 265,
- 279, 461, 488, 97, 306, 293, 475, 111,
- 489, 124, 502, 320, 307, 503, 125, 516,
- 138, 321, 334, 517, 474, 699, 712, 139,
- 657, 684, 671, 685, 698, 530, 713, 670,
- 335, 853, 880, 881, 867, 894, 895, 908,
- 726, 909, 866, 531, 1049, 1076, 1077, 1063,
- 1090, 1091, 1104, 922, 1105, 1062, 727, 1245,
- 1272, 1273, 1286, 1287, 1300, 1118, 1301, 1258,
- 1259, 923, 1314, 1441, 1468, 1469, 1455, 1482,
- 1483, 1496, 1119, 1497, 113, 126, 309, 114,
- 127, 310, 322, 505, 115, 128, 311, 323,
- 506, 116, 129, 312, 324, 507, 518, 140,
- 519, 141, 325, 520, 336, 337, 142, 130,
- 338, 521, 143, 326, 532, 154, 533, 155,
- 339, 534, 350, 351, 156, 144, 352, 535,
- 157, 340, 546, 168, 547, 169, 353, 548,
- 170, 364, 365, 158, 366, 549, 171, 354,
- 701, 702, 508, 703, 714, 715, 716, 717,
- 522, 728, 729, 730, 731, 536, 742, 743,
- 744, 560, 561, 562, 745, 367, 550, 897,
- 898, 704, 899, 910, 911, 912, 913, 718,
- 924, 925, 926, 927, 732, 938, 939, 940,
- 756, 757, 758, 941, 563, 746, 116, 129,
- 312, 117, 130, 313, 325, 508, 118, 131,
- 314, 326, 509, 132, 327, 510, 142, 521,
- 143, 522, 144, 328, 523, 145, 338, 339,
- 340, 341, 524, 146, 156, 535, 157, 536,
- 158, 342, 537, 159, 352, 353, 354, 355,
- 538, 160, 170, 549, 171, 550, 172, 356,
- 551, 366, 367, 368, 173, 369, 552, 174,
- 704, 705, 706, 717, 718, 719, 534, 720,
- 731, 732, 733, 548, 734, 745, 746, 747,
- 562, 563, 564, 565, 748, 370, 900, 901,
- 902, 913, 914, 915, 730, 916, 927, 928,
- 929, 744, 930, 941, 942, 943, 758, 759,
- 760, 761, 944, 566, 132, 119, 315, 328,
- 133, 511, 120, 316, 329, 134, 512, 525,
- 121, 317, 330, 513, 524, 147, 526, 135,
- 148, 331, 145, 146, 343, 344, 341, 342,
- 527, 538, 539, 161, 540, 149, 162, 345,
- 159, 160, 357, 358, 355, 356, 552, 163,
- 541, 554, 174, 553, 175, 176, 359, 173,
- 371, 372, 369, 370, 722, 723, 735, 736,
- 749, 555, 707, 708, 709, 720, 721, 537,
- 734, 551, 737, 750, 748, 565, 566, 567,
- 568, 903, 918, 919, 931, 932, 945, 751,
- 904, 905, 916, 917, 733, 930, 747, 933,
- 944, 946, 761, 762, 763, 764, 1101, 1114,
- 1115, 1127, 1128, 1141, 947, 121, 135, 317,
- 513, 122, 318, 331, 514, 136, 123, 319,
- 332, 137, 515, 528, 124, 320, 333, 516,
- 527, 149, 150, 529, 138, 151, 334, 345,
- 346, 347, 541, 530, 163, 542, 164, 543,
- 152, 165, 348, 359, 360, 361, 544, 555,
- 177, 556, 178, 557, 166, 179, 362, 373,
- 374, 375, 710, 712, 723, 725, 726, 738,
- 739, 740, 751, 752, 753, 558, 709, 711,
- 724, 737, 569, 570, 571, 906, 919, 922,
- 935, 936, 948, 949, 754, 905, 907, 908,
- 920, 921, 933, 934, 947, 765, 766, 767,
- 1102, 1115, 1118, 1131, 1132, 1144, 1145, 950,
- 124, 138, 320, 516, 125, 321, 334, 517,
- 139, 530, 152, 335, 348, 531, 153, 544,
- 166, 349, 362, 545, 167, 558, 180, 363,
- 376, 559, 726, 727, 740, 181, 712, 713,
- 741, 754, 572, 755, 922, 923, 936, 937,
- 950, 377, 908, 909, 768, 951, 1105, 1118,
- 1119, 1132, 573, 1104, 1133, 1146, 964, 1147,
- 1301, 1314, 1315, 1328, 769, 1300, 1329, 1342,
- 1160, 1343, 965, 1497, 1510, 1511, 1524, 1356,
- 1496, 1525, 1538, 1161, 1539, 168, 351, 156,
- 169, 352, 364, 547, 157, 170, 353, 365,
- 548, 158, 171, 354, 366, 549, 560, 182,
- 561, 183, 367, 562, 378, 379, 184, 172,
- 380, 563, 185, 368, 574, 575, 381, 576,
- 743, 744, 550, 745, 756, 757, 758, 759,
- 564, 770, 771, 577, 772, 939, 940, 746,
- 941, 952, 953, 954, 955, 760, 966, 967,
- 773, 968, 171, 354, 159, 172, 355, 367,
- 550, 160, 173, 356, 368, 551, 174, 369,
- 552, 184, 563, 185, 564, 186, 370, 565,
- 187, 380, 381, 382, 383, 566, 188, 577,
- 578, 384, 579, 746, 747, 748, 759, 760,
- 761, 576, 762, 773, 774, 580, 775, 942,
- 943, 944, 955, 956, 957, 772, 958, 969,
- 970, 776, 971, 1138, 1139, 1140, 1151, 1152,
- 1153, 968, 1154, 1165, 1166, 972, 1167, 1334,
- 1335, 1336, 1347, 1348, 1349, 1164, 1350, 1361,
- 1362, 1168, 1363, 1360, 1530, 1531, 1532, 1543,
- 1544, 1545, 1546, 1364, 174, 161, 357, 370,
- 175, 553, 566, 162, 358, 371, 176, 554,
- 567, 163, 359, 372, 555, 189, 568, 177,
- 190, 373, 187, 188, 385, 386, 383, 384,
- 569, 749, 751, 764, 580, 581, 582, 191,
- 750, 763, 762, 579, 765, 945, 776, 777,
- 778, 387, 946, 947, 958, 959, 960, 775,
- 961, 1141, 972, 973, 974, 583, 1142, 1155,
- 1143, 1154, 1156, 971, 1157, 1168, 1169, 1170,
- 779, 1337, 1338, 1339, 1350, 1351, 1352, 1167,
- 975, 1353, 1364, 1365, 1366, 1363, 1171, 1533,
- 1534, 1547, 1535, 1546, 1548, 1549, 163, 177,
- 359, 555, 164, 360, 373, 556, 178, 165,
- 361, 374, 557, 179, 166, 362, 375, 180,
- 558, 571, 569, 191, 570, 192, 193, 376,
- 387, 388, 389, 584, 194, 572, 585, 752,
- 753, 765, 766, 583, 751, 754, 767, 779,
- 780, 768, 948, 949, 950, 961, 962, 963,
- 781, 390, 947, 975, 976, 964, 1144, 1145,
- 1157, 1158, 977, 586, 166, 180, 362, 558,
- 167, 363, 376, 181, 559, 572, 194, 377,
- 390, 573, 195, 586, 391, 754, 755, 768,
- 769, 782, 587, 950, 951, 964, 965, 978,
- 783, 1146, 1147, 1160, 1161, 1174, 979, 1342,
- 1343, 1356, 1357, 1370, 1175, 1538, 1539, 1552,
- 1553, 1371, 393, 406, 588, 602, 784, 589,
- 394, 407, 603, 785, 590, 395, 408, 604,
- 786, 591, 420, 798, 421, 799, 409, 422,
- 605, 618, 787, 800, 616, 617, 434, 812,
- 435, 631, 813, 423, 436, 619, 632, 801,
- 814, 630, 448, 826, 449, 645, 827, 437,
- 450, 633, 815, 828, 980, 981, 982, 994,
- 995, 983, 996, 1008, 1009, 997, 644, 1010,
- 646, 840, 1022, 1023, 829, 842, 1011, 1024,
- 1176, 1177, 1178, 1190, 1191, 1179, 1192, 1204,
- 1193, 1205, 841, 1206, 1218, 1219, 1025, 1038,
- 1207, 1220, 1036, 1037, 396, 409, 591, 592,
- 605, 787, 397, 410, 593, 606, 788, 398,
- 411, 607, 789, 594, 423, 619, 801, 424,
- 802, 412, 425, 608, 790, 803, 620, 621,
- 437, 815, 438, 816, 426, 439, 622, 804,
- 817, 633, 634, 635, 451, 829, 452, 830,
- 440, 453, 636, 818, 831, 983, 984, 985,
- 986, 997, 998, 999, 1012, 1000, 1013, 1011,
- 647, 648, 649, 1025, 844, 1026, 832, 845,
- 1014, 1027, 1179, 1180, 1181, 1182, 1193, 1194,
- 1195, 1208, 1196, 1209, 1207, 843, 1039, 1221,
- 1040, 1222, 1028, 1041, 1210, 1223, 412, 594,
- 608, 790, 230, 399, 426, 595, 804, 986,
- 413, 609, 791, 427, 805, 204, 400, 596,
- 623, 414, 610, 792, 232, 428, 806, 988,
- 205, 401, 597, 624, 622, 218, 219, 415,
- 793, 244, 440, 818, 1000, 245, 441, 819,
- 246, 442, 820, 1002, 611, 636, 637, 638,
- 233, 429, 807, 989, 454, 832, 259, 455,
- 833, 1015, 260, 456, 834, 1016, 625, 258,
- 650, 651, 652, 247, 443, 821, 987, 1001,
- 1014, 1003, 1028, 1029, 847, 1030, 639, 848,
- 1182, 1183, 1184, 1198, 1196, 1211, 1185, 846,
- 1212, 1017, 1197, 1210, 1199, 1224, 1043, 1225,
- 1226, 835, 1044, 1042, 1213, 1379, 1394, 1393,
- 1408, 1239, 1031, 1240, 401, 597, 415, 611,
- 793, 233, 429, 807, 989, 206, 402, 598,
- 625, 416, 612, 794, 430, 808, 207, 234,
- 403, 599, 626, 990, 417, 613, 795, 431,
- 809, 208, 404, 600, 627, 220, 235, 991,
- 418, 796, 247, 443, 821, 1003, 444, 822,
- 640, 445, 823, 222, 614, 639, 248, 1004,
- 249, 641, 236, 432, 810, 992, 457, 835,
- 653, 458, 836, 654, 263, 459, 837, 1019,
- 628, 261, 1017, 262, 1018, 655, 250, 446,
- 824, 1006, 1005, 1031, 849, 850, 1032, 851,
- 1033, 1186, 1185, 1199, 1200, 1201, 1188, 1215,
- 1213, 642, 1020, 1202, 1187, 1214, 1227, 1045,
- 1046, 1228, 1047, 1229, 838, 1216, 1381, 1382,
- 1383, 1395, 1396, 1397, 1409, 1241, 1242, 1410,
- 1034, 1243, 1398, 435, 448, 617, 630, 631,
- 644, 813, 826, 436, 449, 618, 632, 645,
- 814, 827, 437, 450, 619, 646, 815, 828,
- 633, 462, 658, 840, 463, 841, 451, 464,
- 647, 829, 842, 659, 660, 476, 854, 477,
- 855, 465, 478, 661, 843, 856, 672, 673,
- 674, 868, 869, 479, 675, 857, 870, 1009,
- 1022, 1010, 1011, 1023, 1024, 1025, 1036, 1037,
- 1038, 1039, 1050, 1051, 1052, 1064, 1065, 871,
- 1053, 1066, 1205, 1206, 1207, 1218, 1219, 1220,
- 1221, 1232, 1233, 1234, 1235, 1248, 1246, 1247,
- 1260, 1261, 1067, 1249, 1262, 438, 451, 620,
- 633, 647, 816, 829, 634, 439, 452, 621,
- 648, 817, 830, 635, 440, 453, 622, 649,
- 818, 831, 636, 465, 843, 466, 844, 454,
- 467, 650, 832, 845, 661, 662, 663, 479,
- 857, 480, 858, 468, 481, 664, 846, 859,
- 675, 676, 677, 871, 872, 482, 678, 860,
- 873, 1012, 1025, 1013, 1026, 1014, 1027, 1039,
- 1040, 1028, 1041, 1053, 1054, 1042, 1055, 1067,
- 1068, 874, 1056, 1069, 1208, 1221, 1209, 1222,
- 1210, 1223, 1235, 1236, 1224, 1237, 1249, 1250,
- 1238, 1251, 1263, 1264, 1070, 1252, 1265, 454,
- 636, 650, 832, 427, 441, 468, 623, 637,
- 805, 819, 846, 455, 651, 833, 273, 428,
- 469, 610, 624, 806, 847, 1029, 442, 638,
- 820, 456, 652, 834, 274, 429, 470, 611,
- 625, 807, 848, 1030, 443, 639, 821, 664,
- 665, 260, 1016, 666, 457, 835, 482, 860,
- 287, 483, 861, 1043, 484, 862, 653, 680,
- 1017, 678, 1042, 679, 288, 1044, 471, 849,
- 874, 875, 1057, 876, 667, 1031, 300, 496,
- 1056, 497, 302, 498, 1058, 485, 863, 1001,
- 1015, 1028, 1002, 1003, 1045, 1070, 1071, 693,
- 1072, 681, 694, 1225, 1226, 1212, 1213, 1238,
- 1239, 1240, 1253, 1227, 692, 1254, 1059, 1197,
- 1211, 1224, 1198, 1199, 1252, 1241, 1266, 1267,
- 889, 1268, 877, 890, 888, 1086, 1255, 1421,
- 1422, 1408, 1409, 1435, 1436, 1434, 1449, 1423,
- 1084, 1448, 1085, 1450, 1073, 443, 625, 639,
- 821, 457, 653, 835, 430, 471, 626, 808,
- 849, 248, 444, 640, 667, 822, 1004, 458,
- 654, 836, 431, 472, 627, 809, 850, 445,
- 641, 823, 459, 655, 837, 277, 432, 473,
- 614, 628, 810, 851, 1033, 446, 642, 824,
- 275, 1031, 276, 668, 1019, 669, 264, 460,
- 838, 1020, 485, 863, 262, 681, 1018, 290,
- 486, 864, 1046, 291, 487, 865, 1047, 656,
- 289, 1045, 682, 683, 278, 474, 852, 1034,
- 877, 878, 1060, 879, 1061, 670, 303, 499,
- 500, 696, 501, 488, 866, 1017, 1032, 1005,
- 1006, 1059, 1048, 695, 1073, 1074, 1075, 684,
- 697, 1200, 1201, 1229, 1202, 1227, 1228, 1215,
- 1216, 1242, 1243, 1256, 1230, 1255, 1257, 1062,
- 1213, 1214, 1241, 1244, 891, 1269, 1270, 892,
- 1271, 880, 893, 1258, 1396, 1425, 1423, 1424,
- 1412, 1410, 1439, 1437, 1426, 1452, 1453, 1087,
- 1451, 1088, 1089, 446, 628, 642, 824, 460,
- 656, 838, 278, 433, 474, 615, 629, 811,
- 852, 1034, 447, 643, 825, 670, 461, 839,
- 657, 488, 866, 684, 1021, 292, 1048, 475,
- 853, 671, 880, 1035, 306, 502, 1062, 489,
- 867, 685, 1020, 1007, 1049, 1076, 698, 1230,
- 1217, 1244, 1063, 881, 1216, 1203, 1231, 1258,
- 1245, 894, 1272, 1090, 1259, 1077, 1426, 1413,
- 1440, 1427, 1454, 477, 659, 672, 855, 868,
- 490, 673, 686, 478, 660, 856, 869, 491,
- 674, 687, 479, 661, 857, 870, 492, 675,
- 294, 1064, 295, 882, 1052, 1065, 296, 688,
- 871, 883, 1066, 297, 480, 493, 676, 689,
- 858, 884, 1067, 308, 504, 1078, 309, 505,
- 700, 1079, 310, 506, 701, 885, 1080, 896,
- 897, 702, 311, 494, 507, 690, 898, 1081,
- 703, 886, 322, 518, 1092, 323, 519, 714,
- 1093, 324, 520, 715, 899, 1094, 910, 911,
- 716, 325, 508, 521, 704, 912, 1095, 1051,
- 1053, 872, 717, 900, 1260, 1261, 1262, 1054,
- 1263, 1274, 1275, 1276, 1277, 1082, 1288, 1289,
- 1290, 1106, 1107, 1108, 1291, 1247, 1248, 1249,
- 1068, 913, 1096, 1250, 1278, 1302, 1303, 1304,
- 1443, 1456, 1457, 1445, 1458, 1264, 1459, 1470,
- 1471, 1472, 1473, 1484, 1485, 1486, 1109, 1292,
- 1487, 480, 662, 675, 858, 871, 493, 676,
- 689, 481, 663, 859, 872, 494, 677, 690,
- 482, 664, 860, 873, 495, 678, 297, 688,
- 884, 1067, 298, 885, 1068, 299, 691, 874,
- 886, 1069, 300, 496, 692, 887, 1070, 311,
- 506, 507, 702, 1081, 312, 508, 703, 1082,
- 313, 509, 704, 888, 1083, 898, 899, 900,
- 705, 314, 510, 901, 1084, 706, 325, 520,
- 521, 716, 1095, 326, 522, 717, 1096, 327,
- 523, 718, 902, 1097, 719, 912, 913, 914,
- 328, 524, 915, 1098, 1054, 1055, 1056, 720,
- 1080, 1263, 1264, 1265, 1266, 1277, 1278, 1279,
- 1094, 1280, 1291, 1292, 1293, 1108, 1109, 1110,
- 1111, 1294, 1250, 1251, 1252, 916, 1276, 1290,
- 1304, 1305, 1306, 1307, 1459, 1460, 1461, 1462,
- 1473, 1474, 1475, 1476, 1487, 1488, 1489, 1112,
- 1490, 678, 874, 469, 483, 496, 665, 679,
- 692, 847, 861, 875, 301, 470, 484, 497,
- 652, 666, 693, 848, 862, 1044, 1071, 288,
- 680, 876, 289, 302, 471, 485, 498, 653,
- 667, 694, 849, 863, 1045, 1072, 681, 300,
- 691, 887, 1070, 888, 889, 890, 877, 1058,
- 499, 314, 510, 1084, 315, 511, 1085, 707,
- 303, 316, 512, 708, 1086, 695, 1073, 509,
- 705, 706, 891, 901, 902, 903, 904, 525,
- 317, 513, 526, 1087, 328, 524, 1098, 329,
- 721, 1099, 330, 1100, 709, 722, 523, 719,
- 720, 905, 915, 916, 917, 918, 1043, 1057,
- 1059, 1281, 1101, 1239, 1267, 1240, 1241, 1268,
- 1083, 1266, 1254, 1255, 1280, 1282, 1269, 1097,
- 1283, 1294, 1295, 1296, 1111, 1112, 1113, 1114,
- 1253, 1297, 1279, 1477, 1293, 1307, 1308, 1309,
- 1310, 1436, 1463, 1437, 1464, 1462, 1450, 1476,
- 1451, 1478, 1465, 1491, 1479, 1490, 1492, 485,
- 667, 681, 863, 877, 290, 303, 472, 486,
- 499, 654, 668, 695, 850, 864, 1046, 1073,
- 682, 878, 291, 304, 473, 487, 500, 655,
- 669, 696, 851, 865, 1047, 1074, 683, 879,
- 305, 474, 488, 501, 656, 670, 697, 852,
- 866, 1075, 292, 684, 1048, 891, 1060, 892,
- 893, 880, 306, 502, 1062, 317, 513, 1087,
- 709, 318, 514, 1061, 1088, 710, 319, 515,
- 711, 1089, 698, 1076, 894, 905, 906, 907,
- 527, 332, 528, 1102, 320, 333, 516, 529,
- 712, 1090, 1103, 331, 1101, 723, 724, 725,
- 908, 919, 920, 921, 1059, 1284, 1285, 1297,
- 1298, 1104, 1242, 1269, 1243, 1270, 1271, 1244,
- 1256, 1283, 1257, 1272, 1286, 1299, 1115, 1116,
- 1117, 1255, 1258, 1300, 1480, 1493, 1311, 1312,
- 1313, 1465, 1439, 1466, 1467, 1440, 1452, 1454,
- 1479, 1481, 1468, 1494, 1482, 1495, 518, 701,
- 714, 897, 323, 519, 702, 715, 898, 910,
- 1093, 324, 520, 703, 716, 899, 911, 1094,
- 325, 521, 704, 717, 900, 912, 1095, 336,
- 532, 1106, 337, 533, 728, 1107, 338, 534,
- 729, 913, 1108, 730, 924, 925, 339, 522,
- 535, 718, 926, 1109, 731, 914, 350, 546,
- 1120, 351, 547, 742, 1121, 743, 352, 548,
- 927, 1122, 744, 938, 939, 353, 536, 549,
- 732, 940, 1123, 745, 928, 364, 560, 1134,
- 756, 365, 561, 1135, 366, 562, 757, 941,
- 1136, 952, 953, 758, 367, 550, 563, 746,
- 954, 1137, 759, 942, 1289, 1290, 1096, 1291,
- 1302, 1303, 1304, 1305, 1110, 1316, 1317, 1318,
- 1319, 1124, 1330, 1331, 1332, 1148, 1149, 1150,
- 1333, 955, 1138, 1292, 1306, 1320, 1344, 1345,
- 1346, 1485, 1486, 1487, 1498, 1499, 1500, 1501,
- 1512, 1513, 1514, 1515, 1526, 1527, 1528, 1151,
- 1334, 1529, 521, 704, 717, 900, 326, 522,
- 705, 718, 901, 913, 1096, 327, 523, 706,
- 719, 902, 914, 1097, 328, 524, 720, 915,
- 1098, 339, 534, 535, 730, 1109, 731, 340,
- 536, 1110, 732, 341, 537, 916, 1111, 926,
- 927, 928, 733, 342, 538, 929, 1112, 734,
- 353, 548, 549, 744, 1123, 354, 550, 745,
- 1124, 355, 551, 746, 930, 1125, 940, 941,
- 942, 747, 356, 552, 943, 1126, 748, 367,
- 562, 563, 758, 1137, 368, 564, 759, 1138,
- 369, 565, 760, 944, 1139, 954, 955, 956,
- 761, 370, 566, 957, 1140, 762, 1292, 1293,
- 1294, 1305, 1306, 1307, 1122, 1308, 1319, 1320,
- 1321, 1136, 1322, 1333, 1334, 1335, 1150, 1151,
- 1152, 1153, 1336, 958, 1318, 1332, 1346, 1347,
- 1348, 1349, 1488, 1489, 1490, 1501, 1502, 1503,
- 1504, 1515, 1516, 1517, 1518, 1529, 1530, 1531,
- 1154, 1532, 524, 720, 525, 707, 903, 916,
- 329, 721, 1099, 708, 904, 917, 330, 526,
- 539, 1100, 722, 709, 905, 918, 331, 527,
- 540, 1101, 342, 538, 1112, 343, 1113, 735,
- 344, 1114, 723, 736, 537, 733, 734, 919,
- 929, 930, 931, 932, 553, 345, 358, 541,
- 554, 737, 1115, 1128, 356, 552, 1126, 357,
- 1127, 749, 750, 551, 747, 748, 933, 943,
- 944, 945, 946, 371, 567, 1141, 359, 372,
- 555, 568, 751, 1129, 1142, 370, 566, 1140,
- 763, 764, 565, 761, 762, 947, 957, 958,
- 959, 960, 1297, 1310, 1311, 1323, 1324, 1337,
- 1143, 1295, 1296, 1308, 1309, 1125, 1322, 1139,
- 1325, 1336, 1338, 1153, 1154, 1155, 1156, 1339,
- 1506, 1321, 1519, 1335, 1349, 1350, 1351, 1352,
- 1491, 1492, 1493, 1504, 1505, 1507, 1520, 1518,
- 1533, 1521, 1534, 1532, 331, 527, 723, 905,
- 1101, 710, 906, 919, 332, 345, 528, 541,
- 724, 1102, 1115, 711, 907, 920, 333, 346,
- 529, 542, 725, 1103, 1116, 712, 908, 921,
- 334, 530, 543, 1104, 737, 738, 347, 1117,
- 726, 739, 922, 933, 934, 935, 359, 555,
- 1129, 556, 348, 544, 557, 1118, 751, 360,
- 1130, 752, 361, 1131, 740, 753, 936, 947,
- 948, 949, 569, 570, 362, 558, 571, 1132,
- 1145, 373, 1143, 765, 374, 1144, 766, 375,
- 754, 767, 950, 961, 962, 963, 1298, 1311,
- 1314, 1327, 1328, 1340, 1341, 1146, 1297, 1299,
- 1300, 1312, 1313, 1325, 1326, 1339, 1157, 1158,
- 1159, 1342, 1510, 1523, 1524, 1536, 1537, 1353,
- 1354, 1355, 1493, 1494, 1507, 1495, 1508, 1496,
- 1509, 1521, 1522, 1535, 560, 756, 939, 365,
- 561, 744, 757, 940, 952, 1135, 366, 562,
- 745, 758, 941, 953, 1136, 367, 563, 746,
- 759, 942, 954, 1137, 378, 574, 1148, 379,
- 575, 770, 1149, 380, 576, 771, 955, 1150,
- 966, 967, 772, 381, 564, 577, 760, 968,
- 1151, 773, 956, 1162, 1163, 969, 1164, 1331,
- 1332, 1138, 1333, 1344, 1345, 1346, 1347, 1152,
- 1358, 1359, 1165, 1360, 1334, 1348, 1527, 1528,
- 1529, 1540, 1541, 1542, 1543, 1361, 373, 569,
- 765, 947, 1143, 752, 948, 961, 374, 570,
- 583, 1144, 766, 753, 949, 962, 375, 571,
- 584, 1145, 1158, 767, 754, 950, 963, 376,
- 572, 585, 768, 1146, 387, 1157, 779, 388,
- 780, 389, 781, 1159, 964, 975, 976, 977,
- 1171, 390, 586, 1160, 1340, 1341, 1353, 1354,
- 1172, 1173, 782, 1339, 1342, 1355, 1367, 1356,
- 1368, 1369, 978, 1536, 1537, 1549, 1550, 1174,
- 1535, 1538, 1551, 1563, 1564, 1552, 981, 994,
- 1176, 1177, 1190, 982, 995, 1178, 1191, 983,
- 996, 1192, 1179, 1374, 1372, 1008, 1204, 1373,
- 1009, 997, 1010, 1193, 1205, 1387, 1206, 1375,
- 1388, 1386, 1022, 1023, 1011, 1024, 1207, 1218,
- 1400, 1219, 1401, 1220, 1389, 1036, 1037, 1402,
- 1025, 1038, 1221, 1234, 984, 1180, 1194, 1376,
- 1232, 1414, 1233, 1415, 1208, 1390, 1403, 1416,
- 1428, 1429, 1417, 1568, 1569, 1570, 1582, 1583,
- 1571, 1584, 1596, 1597, 1585, 1598, 1610, 1611,
- 1404, 1430, 1599, 1612, 1572, 1586, 1624, 1625,
- 1613, 1626, 1764, 1765, 1766, 1778, 1779, 1767,
- 1780, 1792, 1793, 1781, 1794, 1806, 1807, 1600,
- 1795, 1808, 1768, 1782, 984, 997, 1179, 1193,
- 1180, 1375, 985, 998, 1194, 1181, 1376, 986,
- 999, 1182, 1195, 1011, 1207, 1012, 1208, 1377,
- 1000, 1013, 1196, 1209, 1389, 1378, 1025, 1221,
- 1390, 1026, 1391, 1014, 1027, 1210, 1223, 1222,
- 1392, 1403, 1039, 1235, 1404, 1040, 1236, 1405,
- 1028, 1041, 1224, 1237, 1010, 1192, 1206, 1388,
- 1220, 1402, 1234, 1416, 1417, 1418, 1406, 1419,
- 1430, 1431, 1432, 1420, 1571, 1572, 1573, 1585,
- 1586, 1574, 1587, 1599, 1600, 1588, 1601, 1613,
- 1614, 1433, 1602, 1615, 1584, 1598, 1612, 1626,
- 1627, 1628, 1616, 1629, 1767, 1768, 1769, 1781,
- 1782, 1770, 1783, 1795, 1796, 1784, 1797, 1809,
- 1810, 1798, 1811, 1780, 1794, 1808, 1000, 1182,
- 1196, 987, 1014, 1183, 1378, 1001, 1197, 819,
- 1015, 1379, 792, 988, 1184, 1211, 1393, 1002,
- 1198, 1016, 1380, 793, 820, 989, 1185, 1212,
- 1394, 805, 1210, 1392, 1003, 1028, 1029, 1225,
- 1030, 1199, 1226, 1381, 832, 1224, 1406, 1407,
- 834, 1408, 1017, 1042, 1043, 1239, 1044, 821,
- 1213, 1240, 1395, 1238, 1420, 847, 1421, 848,
- 1422, 1031, 1195, 1209, 1391, 1223, 1405, 1237,
- 1419, 1227, 1409, 1433, 1435, 1253, 1436, 1254,
- 1574, 1575, 1576, 1588, 1590, 1577, 1603, 1604,
- 1434, 1589, 1602, 1617, 1591, 1618, 1616, 1423,
- 1587, 1601, 1615, 1449, 1631, 1450, 1605, 1632,
- 1629, 1771, 1772, 1770, 1784, 1785, 1786, 1799,
- 1773, 1630, 1800, 1798, 1813, 1787, 1814, 1812,
- 1619, 1783, 1797, 1811, 1645, 1827, 1646, 1801,
- 1828, 989, 1185, 1003, 1199, 1017, 1381, 794,
- 821, 990, 1186, 1213, 1395, 1004, 1200, 1018,
- 1382, 795, 991, 1187, 1214, 1396, 1005, 1201,
- 823, 1019, 1383, 796, 992, 1188, 1215, 1397,
- 809, 810, 1006, 1031, 836, 1032, 837, 1033,
- 1202, 1229, 1384, 1227, 1409, 1228, 1410, 1411,
- 1020, 1045, 850, 1046, 1242, 1047, 824, 1216,
- 1243, 1398, 1241, 1423, 1424, 851, 1425, 1034,
- 1230, 1412, 1059, 1255, 1437, 1256, 1438, 1439,
- 1257, 1577, 1578, 1579, 1591, 1592, 1580, 1607,
- 1605, 1594, 1593, 1606, 1619, 1620, 1621, 1451,
- 1633, 1452, 1634, 1426, 1453, 1608, 1635, 1773,
- 1774, 1775, 1788, 1787, 1789, 1802, 1776, 1803,
- 1801, 1815, 1816, 1790, 1817, 1622, 1647, 1829,
- 1648, 1830, 1649, 1804, 1831, 992, 1188, 1006,
- 1202, 1020, 1384, 797, 824, 993, 1189, 1216,
- 1398, 1007, 1203, 1034, 811, 1230, 1385, 838,
- 1412, 1021, 1217, 1048, 1244, 1399, 852, 1426,
- 1035, 1231, 1413, 1062, 1258, 1440, 1580, 1594,
- 1608, 1427, 1581, 1595, 1622, 1609, 1454, 1636,
- 1776, 1790, 1777, 1804, 1623, 1791, 1818, 1805,
- 1650, 1832, 1023, 1036, 1205, 1218, 1232, 1219,
- 1401, 1414, 1024, 1037, 1206, 1233, 1220, 1402,
- 1415, 1025, 1038, 1207, 1221, 1234, 1403, 1050,
- 1051, 1416, 1039, 1052, 1235, 1248, 1246, 1428,
- 1247, 1417, 1064, 1260, 1429, 1065, 1261, 1430,
- 1053, 1066, 1249, 1262, 1431, 1442, 1443, 1444,
- 1067, 1263, 1387, 1400, 1388, 1389, 1208, 1222,
- 1404, 1236, 1418, 1456, 1457, 1078, 1079, 1080,
- 1250, 1432, 1445, 1458, 1390, 1274, 1275, 1459,
- 1583, 1596, 1597, 1610, 1584, 1598, 1611, 1585,
- 1599, 1612, 1624, 1625, 1613, 1626, 1638, 1639,
- 1627, 1640, 1652, 1471, 1653, 1446, 1641, 1654,
- 1586, 1600, 1614, 1470, 1472, 1628, 1655, 1779,
- 1792, 1793, 1806, 1780, 1794, 1807, 1781, 1795,
- 1808, 1820, 1821, 1809, 1822, 1834, 1835, 1823,
- 1836, 1848, 1849, 1642, 1837, 1850, 1782, 1796,
- 1810, 1666, 1667, 1668, 1824, 1026, 1039, 1208,
- 1221, 1222, 1235, 1404, 1027, 1040, 1209, 1223,
- 1236, 1405, 1028, 1041, 1210, 1224, 1237, 1406,
- 1417, 1053, 1249, 1418, 1054, 1250, 1419, 1042,
- 1055, 1238, 1251, 1420, 1431, 1067, 1263, 1432,
- 1068, 1264, 1433, 1056, 1069, 1252, 1265, 1434,
- 1447, 1445, 1446, 1070, 1266, 1234, 1248, 1390,
- 1403, 1430, 1391, 1392, 1262, 1444, 1458, 1459,
- 1460, 1081, 1277, 1082, 1083, 1279, 1448, 1461,
- 1276, 1278, 1462, 1586, 1599, 1600, 1613, 1587,
- 1601, 1614, 1588, 1602, 1615, 1627, 1628, 1616,
- 1629, 1641, 1642, 1630, 1643, 1655, 1656, 1644,
- 1657, 1626, 1640, 1654, 1472, 1473, 1474, 1475,
- 1658, 1782, 1795, 1796, 1809, 1783, 1797, 1810,
- 1784, 1798, 1811, 1823, 1824, 1812, 1825, 1837,
- 1838, 1826, 1839, 1669, 1851, 1852, 1671, 1840,
- 1853, 1822, 1836, 1850, 1668, 1670, 1042, 1224,
- 1238, 1015, 1029, 1056, 1211, 1225, 1393, 1407,
- 1420, 1043, 1239, 1016, 1057, 1212, 1421, 834,
- 1030, 1226, 1253, 1394, 1408, 1044, 1240, 1017,
- 1058, 1213, 1422, 1031, 1227, 1395, 1409, 1252,
- 1434, 861, 1435, 1254, 1436, 1045, 847, 874,
- 1070, 1071, 848, 1267, 1072, 1241, 1423, 1266,
- 1448, 875, 1449, 1268, 1450, 863, 1059, 1255,
- 1437, 1084, 1462, 1085, 1463, 1086, 1464, 877,
- 1073, 1282, 1237, 1251, 1406, 1433, 1265, 1447,
- 1461, 1280, 1281, 890, 1269, 1451, 1279, 1617,
- 1618, 1604, 1631, 1605, 1630, 1632, 1645, 1619,
- 1644, 1646, 1602, 1616, 1589, 1603, 1590, 1591,
- 1659, 1633, 1660, 1658, 1476, 1477, 1478, 1629,
- 1643, 1657, 1475, 1465, 1647, 1673, 1786, 1813,
- 1814, 1800, 1827, 1842, 1841, 1674, 1798, 1812,
- 1785, 1799, 1787, 1801, 1828, 1826, 1815, 1840,
- 1855, 1829, 1856, 1672, 1854, 1661, 1825, 1839,
- 1853, 1671, 1843, 1031, 1213, 1227, 1409, 1045,
- 1241, 863, 1018, 1059, 1200, 1214, 1396, 1423,
- 1032, 1228, 1410, 1046, 1242, 864, 1019, 1060,
- 1201, 1215, 1397, 1424, 837, 1033, 1229, 1256,
- 1411, 1047, 1243, 1020, 1061, 1216, 1425, 838,
- 1034, 1230, 1257, 1398, 1412, 1255, 1437, 850,
- 1438, 865, 1439, 1048, 877, 1073, 1269, 1074,
- 1270, 1075, 852, 1244, 1271, 1426, 1451, 878,
- 1452, 879, 1453, 1062, 1258, 1440, 891, 1087,
- 1465, 892, 1088, 1466, 1089, 1467, 880, 1076,
- 1285, 1283, 1284, 893, 1454, 1272, 1592, 1621,
- 1619, 1607, 1608, 1634, 1635, 1622, 1648, 1649,
- 1605, 1606, 1633, 1620, 1593, 1594, 1647, 1479,
- 1661, 1662, 1636, 1663, 1480, 1481, 1468, 1650,
- 1677, 1815, 1789, 1790, 1802, 1816, 1817, 1829,
- 1803, 1804, 1830, 1831, 1818, 1843, 1844, 1845,
- 1801, 1788, 1857, 1858, 1832, 1859, 1675, 1676,
- 1664, 1846, 1034, 1216, 1230, 1412, 1048, 1244,
- 1021, 1062, 1217, 1426, 1035, 1231, 1399, 1413,
- 1258, 1440, 853, 1049, 1245, 880, 1076, 1427,
- 1272, 1454, 867, 1063, 1259, 1441, 1090, 1468,
- 881, 1077, 1286, 1273, 894, 1455, 1622, 1609,
- 1636, 1623, 1650, 1469, 1608, 1595, 1637, 1664,
- 1482, 1651, 1818, 1846, 1678, 1665, 1804, 1791,
- 1805, 1832, 1819, 1833, 1860, 1847, 1065, 1247,
- 1260, 1261, 1078, 1443, 1066, 1248, 1262, 1079,
- 1444, 1067, 1249, 1263, 1080, 1445, 882, 1274,
- 1456, 883, 1275, 1457, 884, 1276, 1458, 1470,
- 1471, 885, 1068, 1081, 1264, 1277, 1459, 1472,
- 896, 1092, 897, 1093, 1288, 898, 1094, 1289,
- 1290, 1473, 899, 1082, 1095, 1278, 1484, 1485,
- 1291, 1486, 910, 1106, 911, 1107, 1302, 1303,
- 912, 1108, 1304, 1487, 913, 1096, 1109, 1292,
- 1429, 1442, 1430, 1431, 1250, 1446, 1460, 1474,
- 1498, 1499, 1305, 1500, 1432, 1488, 1639, 1652,
- 1640, 1653, 1641, 1654, 1655, 1666, 1667, 1668,
- 1669, 1680, 1681, 1682, 1683, 1625, 1638, 1626,
- 1627, 1656, 1501, 1628, 1642, 1670, 1694, 1695,
- 1696, 1684, 1848, 1849, 1850, 1851, 1862, 1863,
- 1864, 1865, 1876, 1877, 1878, 1879, 1821, 1834,
- 1835, 1822, 1836, 1823, 1837, 1697, 1824, 1838,
- 1852, 1866, 1890, 1891, 1892, 1068, 1250, 1263,
- 1264, 1081, 1277, 1446, 1069, 1251, 1082, 1265,
- 1278, 1447, 1460, 1070, 1252, 1083, 1266, 1279,
- 1448, 1461, 885, 1276, 1459, 886, 887, 1473,
- 1474, 888, 1084, 1280, 1462, 1475, 899, 1094,
- 1095, 1290, 1291, 900, 1096, 1292, 901, 1097,
- 1293, 1476, 902, 1098, 1487, 1488, 1294, 1489,
- 913, 1108, 1109, 1304, 1305, 914, 1110, 915,
- 1111, 1306, 1307, 1490, 916, 1112, 1432, 1445,
- 1433, 1434, 1472, 1486, 1500, 1501, 1502, 1308,
- 1503, 1642, 1655, 1643, 1656, 1657, 1658, 1669,
- 1670, 1671, 1672, 1683, 1684, 1685, 1686, 1628,
- 1641, 1629, 1630, 1644, 1504, 1668, 1682, 1696,
- 1697, 1698, 1699, 1851, 1839, 1852, 1853, 1854,
- 1865, 1866, 1867, 1868, 1879, 1880, 1881, 1882,
- 1824, 1837, 1838, 1825, 1826, 1840, 1700, 1864,
- 1878, 1892, 1893, 1894, 1895, 1266, 875, 888,
- 1057, 1071, 1084, 1253, 1267, 1280, 1435, 1449,
- 1462, 876, 889, 1058, 1072, 1085, 1240, 1254,
- 1281, 1436, 1463, 1268, 1450, 877, 890, 1059,
- 1073, 1086, 1241, 1255, 1282, 1437, 1464, 1269,
- 1451, 1279, 1476, 1477, 1478, 891, 1087, 1465,
- 902, 1098, 1293, 1294, 903, 1099, 1295, 904,
- 1100, 1296, 1283, 1097, 1490, 1479, 1491, 917,
- 1113, 1309, 1492, 905, 918, 1101, 1114, 1297,
- 916, 1112, 1307, 1308, 1310, 1111, 1504, 1493,
- 1448, 1475, 1489, 1503, 1505, 1506, 1659, 1660,
- 1673, 1661, 1632, 1645, 1633, 1646, 1631, 1644,
- 1658, 1672, 1647, 1674, 1686, 1687, 1675, 1688,
- 1700, 1701, 1689, 1702, 1671, 1685, 1699, 1856,
- 1869, 1870, 1868, 1871, 1883, 1884, 1882, 1827,
- 1828, 1841, 1855, 1829, 1842, 1840, 1854, 1843,
- 1857, 1896, 1897, 1885, 1898, 1867, 1881, 1895,
- 1073, 1255, 1269, 1451, 891, 1060, 1074, 1087,
- 1242, 1256, 1283, 1438, 1465, 878, 1270, 1452,
- 892, 1061, 1075, 1088, 1243, 1257, 1284, 1439,
- 1466, 1271, 1453, 880, 893, 1062, 1076, 1089,
- 1244, 1258, 1285, 1440, 1467, 1272, 1454, 1479,
- 1480, 1481, 1090, 1468, 905, 1101, 1297, 906,
- 1102, 1298, 894, 907, 1103, 1299, 1286, 1482,
- 1493, 919, 1115, 1494, 920, 1116, 1495, 908,
- 921, 1104, 1117, 1300, 1313, 1311, 1312, 1496,
- 1507, 1508, 1509, 1661, 1663, 1676, 1677, 1689,
- 1690, 1634, 1647, 1635, 1648, 1662, 1636, 1649,
- 1650, 1675, 1664, 1678, 1691, 1703, 1704, 1692,
- 1705, 1857, 1858, 1871, 1872, 1873, 1885, 1874,
- 1886, 1887, 1830, 1843, 1831, 1844, 1832, 1845,
- 1859, 1846, 1860, 1899, 1900, 1888, 1901, 1076,
- 1258, 1272, 1454, 881, 894, 1063, 1077, 1090,
- 1245, 1259, 1286, 1441, 1468, 1273, 1455, 1482,
- 895, 1091, 1469, 1287, 908, 1104, 1300, 1483,
- 909, 1105, 1301, 1496, 922, 1118, 1314, 1497,
- 923, 1119, 1315, 1510, 1664, 1665, 1637, 1650,
- 1651, 1678, 1679, 1692, 1511, 1693, 1706, 1860,
- 1874, 1861, 1875, 1888, 1833, 1846, 1847, 1707,
- 1889, 1902, 1106, 1289, 1302, 911, 1107, 1290,
- 1303, 1485, 1498, 912, 1108, 1291, 1304, 1486,
- 1499, 913, 1109, 1292, 1305, 1487, 1500, 924,
- 1120, 1316, 925, 1121, 1317, 926, 1122, 1318,
- 1501, 927, 1110, 1123, 1306, 1512, 1513, 1319,
- 1514, 938, 1134, 939, 1135, 1330, 940, 1136,
- 1331, 1332, 1515, 941, 1124, 1137, 1320, 1526,
- 1527, 1333, 1528, 952, 1148, 953, 1149, 1344,
- 954, 1150, 1345, 1346, 1529, 955, 1138, 1151,
- 1334, 1488, 1502, 1516, 1540, 1541, 1347, 1542,
- 1530, 1681, 1682, 1683, 1694, 1695, 1696, 1697,
- 1708, 1709, 1710, 1711, 1722, 1723, 1724, 1725,
- 1543, 1684, 1698, 1712, 1736, 1737, 1738, 1726,
- 1877, 1878, 1879, 1890, 1891, 1892, 1893, 1904,
- 1905, 1906, 1907, 1918, 1919, 1920, 1921, 1739,
- 1880, 1894, 1908, 1932, 1933, 1934, 1109, 1305,
- 914, 1110, 1293, 1306, 1488, 1501, 1489, 915,
- 1111, 1294, 1307, 1502, 1490, 916, 1112, 1308,
- 1503, 927, 1122, 1123, 1318, 928, 1124, 1319,
- 929, 1125, 1320, 1321, 1504, 930, 1126, 1515,
- 1516, 1322, 1517, 941, 1136, 1137, 1332, 1333,
- 942, 1138, 943, 1139, 1334, 1335, 1518, 944,
- 1140, 1529, 1530, 1336, 1531, 955, 1150, 1151,
- 1346, 1347, 956, 1152, 1348, 957, 1153, 1349,
- 1532, 958, 1154, 1514, 1528, 1542, 1543, 1544,
- 1350, 1545, 1500, 1684, 1685, 1686, 1697, 1698,
- 1699, 1700, 1711, 1712, 1713, 1714, 1725, 1726,
- 1727, 1728, 1546, 1696, 1710, 1724, 1738, 1739,
- 1740, 1741, 1880, 1881, 1882, 1893, 1894, 1895,
- 1896, 1907, 1908, 1909, 1910, 1921, 1922, 1923,
- 1924, 1742, 1892, 1906, 1920, 1934, 1935, 1936,
- 1937, 1112, 1308, 1113, 1295, 1491, 1504, 917,
- 1309, 1296, 1505, 918, 931, 1100, 1114, 1127,
- 1310, 1492, 1297, 1506, 919, 932, 1101, 1115,
- 1128, 1311, 1493, 930, 1126, 1323, 1324, 1125,
- 1321, 1322, 1518, 1507, 1519, 945, 1141, 1520,
- 933, 946, 1129, 1142, 1325, 944, 1140, 1337,
- 1338, 1139, 1335, 1336, 1532, 1521, 1533, 959,
- 1155, 1534, 947, 960, 1143, 1156, 1339, 1352,
- 958, 1154, 1349, 1350, 1351, 1153, 1546, 1535,
- 1517, 1531, 1545, 1547, 1548, 1503, 1689, 1700,
- 1702, 1703, 1715, 1716, 1729, 1687, 1688, 1701,
- 1714, 1728, 1717, 1730, 1742, 1743, 1731, 1744,
- 1699, 1713, 1727, 1741, 1883, 1884, 1885, 1898,
- 1897, 1896, 1911, 1899, 1912, 1910, 1913, 1925,
- 1926, 1924, 1938, 1939, 1927, 1940, 1895, 1909,
- 1923, 1937, 919, 1115, 1311, 1493, 1298, 1507,
- 920, 933, 1102, 1116, 1129, 1312, 1494, 1299,
- 1508, 921, 934, 1103, 1117, 1130, 1313, 1326,
- 1495, 1300, 1509, 922, 935, 1104, 1118, 1131,
- 1314, 1496, 1325, 1327, 1510, 1521, 947, 1143,
- 1339, 1522, 948, 1144, 1523, 936, 949, 1132,
- 1145, 1328, 1341, 1340, 1524, 1535, 961, 1157,
- 1536, 962, 1158, 1354, 1537, 950, 963, 1146,
- 1159, 1342, 1353, 1355, 1538, 1549, 1550, 1551,
- 1690, 1703, 1706, 1719, 1720, 1732, 1733, 1689,
- 1691, 1704, 1692, 1705, 1717, 1718, 1731, 1745,
- 1746, 1734, 1747, 1885, 1886, 1887, 1888, 1899,
- 1900, 1901, 1902, 1915, 1913, 1914, 1928, 1916,
- 1927, 1929, 1941, 1942, 1930, 1943, 922, 1118,
- 1314, 1496, 1301, 1510, 923, 936, 1105, 1119,
- 1132, 1315, 1328, 1497, 1511, 937, 1133, 1329,
- 1524, 950, 1146, 1342, 1525, 951, 1147, 1343,
- 1538, 964, 1160, 1356, 1539, 965, 1161, 1357,
- 1552, 1693, 1706, 1707, 1720, 1692, 1721, 1734,
- 1553, 1735, 1748, 1888, 1889, 1902, 1903, 1916,
- 1917, 1930, 1749, 1931, 1944, 1148, 1331, 1344,
- 1527, 953, 1149, 1332, 1345, 1540, 954, 1150,
- 1333, 1346, 1528, 1541, 955, 1151, 1334, 1347,
- 1529, 1542, 966, 1162, 967, 1163, 1358, 1359,
- 968, 1164, 1360, 1543, 969, 1152, 1165, 1348,
- 1554, 1555, 1361, 1556, 1530, 1544, 1557, 1723,
- 1724, 1725, 1736, 1737, 1738, 1739, 1750, 1751,
- 1752, 1726, 1740, 1753, 1919, 1920, 1921, 1932,
- 1933, 1934, 1935, 1946, 1947, 1948, 1922, 1936,
- 1151, 1347, 956, 1152, 1335, 1348, 1530, 1543,
- 957, 1153, 1336, 1349, 1531, 1544, 1532, 958,
- 1154, 1350, 1545, 969, 1164, 1165, 1360, 970,
- 1166, 1361, 971, 1167, 1362, 1363, 1546, 972,
- 1168, 1557, 1558, 1364, 1559, 1556, 1542, 1560,
- 1726, 1727, 1728, 1739, 1740, 1741, 1742, 1753,
- 1754, 1755, 1738, 1752, 1756, 1922, 1923, 1924,
- 1935, 1936, 1937, 1938, 1949, 1950, 1951, 1934,
- 1948, 1154, 1350, 1155, 1337, 1533, 1546, 959,
- 1351, 1338, 1547, 960, 973, 1142, 1156, 1169,
- 1352, 1365, 1534, 1339, 1548, 961, 974, 1143,
- 1157, 1170, 1353, 1535, 972, 1168, 1363, 1364,
- 1366, 1167, 1560, 1549, 1561, 1562, 975, 1171,
- 1367, 1559, 1545, 1729, 1742, 1730, 1743, 1731,
- 1744, 1757, 1563, 1745, 1758, 1756, 1741, 1755,
- 1925, 1926, 1927, 1939, 1940, 1938, 1953, 1759,
- 1941, 1954, 1952, 1937, 1951, 961, 1157, 1353,
- 1535, 1340, 1549, 962, 975, 1144, 1158, 1171,
- 1354, 1367, 1536, 1341, 1550, 963, 976, 1145,
- 1159, 1172, 1355, 1537, 1342, 1551, 964, 977,
- 1146, 1160, 1173, 1356, 1369, 1538, 1368, 1552,
- 1563, 1564, 1565, 978, 1174, 1370, 1732, 1733,
- 1745, 1746, 1731, 1734, 1747, 1759, 1760, 1566,
- 1748, 1761, 1927, 1928, 1929, 1941, 1930, 1942,
- 1943, 1955, 1956, 1762, 1944, 1957, 964, 1160,
- 1356, 1538, 1343, 1552, 965, 978, 1147, 1161,
- 1174, 1357, 1539, 1370, 1553, 979, 1175, 1371,
- 1566, 1567, 1734, 1735, 1748, 1749, 1762, 1930,
- 1931, 1944, 1763, 1945, 1958, 1582, 1764, 1569,
- 1583, 1596, 1765, 1778, 1570, 1584, 1597, 1766,
- 1779, 1571, 1585, 1598, 1767, 1780, 1792, 1793,
- 1610, 1611, 1599, 1612, 1768, 1781, 1794, 1806,
- 1807, 1624, 1625, 1613, 1626, 1782, 1795, 1808,
- 1820, 1821, 1809, 1822, 1960, 1961, 1962, 1974,
- 1975, 1963, 1976, 1988, 1989, 1977, 1990, 2002,
- 2003, 1796, 1991, 2004, 1964, 1978, 2016, 2017,
- 2005, 2018, 2156, 2157, 2158, 2170, 2171, 2159,
- 2172, 2184, 2185, 2173, 2186, 2198, 2199, 1992,
- 2187, 2200, 2160, 2174, 2212, 2213, 2201, 2352,
- 2353, 2354, 2366, 2367, 2355, 2368, 2380, 2381,
- 2369, 2382, 2394, 2395, 2188, 2214, 2383, 2396,
- 2356, 2370, 1572, 1585, 1767, 1586, 1599, 1768,
- 1781, 1573, 1587, 1600, 1769, 1782, 1574, 1588,
- 1601, 1770, 1783, 1780, 1794, 1795, 1796, 1613,
- 1614, 1602, 1615, 1784, 1797, 1808, 1809, 1810,
- 1627, 1628, 1616, 1629, 1798, 1811, 1822, 1823,
- 1824, 1812, 1825, 1963, 1964, 1965, 1977, 1978,
- 1966, 1979, 1991, 1992, 1980, 1993, 2005, 2006,
- 1994, 2007, 1976, 1990, 2004, 2018, 2019, 2020,
- 2008, 2159, 2160, 2161, 2173, 2174, 2162, 2175,
- 2187, 2188, 2176, 2189, 2201, 2202, 2021, 2190,
- 2203, 2172, 2186, 2200, 2214, 2215, 2216, 2204,
- 2355, 2356, 2357, 2369, 2370, 2358, 2371, 2383,
- 2384, 2372, 2385, 2397, 2398, 2217, 2386, 2399,
- 2368, 2382, 2396, 1588, 1770, 1575, 1602, 1771,
- 1784, 1589, 1576, 1603, 1785, 1590, 1772, 1799,
- 1577, 1604, 1786, 1591, 1773, 1800, 1783, 1797,
- 1617, 1618, 1616, 1798, 1811, 1813, 1631, 1605,
- 1632, 1787, 1814, 1630, 1812, 1825, 1645, 1827,
- 1619, 1646, 1801, 1828, 1967, 1968, 1966, 1980,
- 1981, 1982, 1826, 1995, 1969, 1996, 1994, 2009,
- 1983, 2010, 2008, 1979, 1993, 2007, 1841, 2023,
- 1815, 1842, 1997, 2024, 2021, 2163, 2164, 2178,
- 2177, 2192, 2022, 2162, 2176, 2191, 2165, 2190,
- 2205, 2179, 2206, 2204, 2011, 2175, 2189, 2203,
- 2037, 2219, 2038, 2193, 2220, 2217, 2358, 2359,
- 2360, 2372, 2374, 2387, 2388, 2218, 2373, 2361,
- 2386, 2401, 2375, 2402, 2400, 2207, 2371, 2385,
- 2399, 2233, 2415, 2234, 2389, 2416, 1577, 1591,
- 1773, 1578, 1605, 1787, 1592, 1774, 1801, 1579,
- 1606, 1788, 1593, 1775, 1802, 1580, 1607, 1789,
- 1594, 1776, 1803, 1619, 1620, 1621, 1790, 1633,
- 1815, 1816, 1634, 1817, 1608, 1635, 1829, 1647,
- 1830, 1648, 1622, 1649, 1804, 1831, 1969, 1970,
- 1971, 1983, 1984, 1985, 1997, 1998, 1972, 1999,
- 2011, 2012, 1986, 2013, 1818, 1843, 2025, 1844,
- 2026, 1845, 2000, 2027, 2165, 2166, 2167, 2179,
- 2180, 2181, 2193, 2194, 2182, 2168, 2195, 2207,
- 2208, 2209, 2039, 2221, 2040, 2222, 2014, 2041,
- 2196, 2223, 2361, 2362, 2363, 2375, 2376, 2364,
- 2391, 2389, 2378, 2377, 2390, 2403, 2404, 2405,
- 2235, 2417, 2236, 2418, 2210, 2237, 2392, 2419,
- 1580, 1594, 1776, 1581, 1608, 1790, 1595, 1777,
- 1804, 1622, 1609, 1791, 1636, 1818, 1623, 1805,
- 1650, 1832, 1972, 1986, 1819, 1973, 2000, 1987,
- 2014, 2001, 1846, 2028, 2168, 2182, 2196, 2015,
- 2169, 2183, 2210, 2197, 2042, 2224, 2364, 2378,
- 2365, 2392, 2211, 2379, 2406, 2393, 2238, 2420,
- 1637, 1664, 1651, 1833, 1860, 1665, 1847, 1678,
- 1874, 2029, 1861, 2056, 2043, 2057, 2225, 2252,
- 2070, 2239, 2407, 2434, 2253, 2421, 2448, 2266,
- 2435, 1611, 1624, 1793, 1806, 1625, 1638, 1780,
- 1794, 1807, 1820, 1612, 1626, 1639, 1781, 1795,
- 1808, 1821, 1613, 1627, 1640, 1782, 1796, 1809,
- 1822, 1834, 1835, 1652, 1653, 1641, 1654, 1810,
- 1823, 1836, 1848, 1849, 1655, 1824, 1837, 1850,
- 1667, 1851, 1975, 1988, 1989, 2002, 1976, 1990,
- 2003, 1977, 1991, 2004, 2016, 2017, 2005, 2018,
- 2030, 2031, 2019, 2032, 2044, 2045, 1838, 2033,
- 2046, 1978, 1992, 2006, 1862, 1863, 1864, 2020,
- 2047, 2171, 2184, 2185, 2198, 2172, 2186, 2199,
- 2173, 2187, 2200, 2212, 2213, 2201, 2214, 2226,
- 2227, 2215, 2228, 2240, 2059, 2241, 2034, 2060,
- 2229, 2242, 2174, 2188, 2202, 2058, 2216, 2243,
- 2367, 2380, 2381, 2394, 2368, 2382, 2395, 2369,
- 2383, 2396, 2408, 2409, 2397, 2410, 2422, 2423,
- 2411, 2424, 2436, 2255, 2437, 2230, 2425, 2438,
- 2370, 2384, 2398, 2254, 2256, 2412, 1627, 1796,
- 1809, 1614, 1628, 1641, 1783, 1797, 1810, 1823,
- 1615, 1629, 1642, 1784, 1798, 1811, 1824, 1616,
- 1630, 1643, 1812, 1825, 1822, 1836, 1837, 1838,
- 1655, 1656, 1644, 1657, 1826, 1839, 1850, 1851,
- 1852, 1658, 1840, 1853, 1668, 1854, 1978, 1991,
- 1992, 2005, 1979, 1993, 2006, 1980, 1994, 2007,
- 2019, 2020, 2008, 2021, 2033, 2034, 2022, 2035,
- 1865, 2047, 2048, 1867, 2036, 2049, 2018, 2032,
- 2046, 1864, 1866, 2050, 2174, 2187, 2188, 2201,
- 2175, 2189, 2202, 2176, 2190, 2203, 2215, 2216,
- 2204, 2217, 2229, 2230, 2218, 2231, 2061, 2243,
- 2244, 2232, 2245, 2214, 2228, 2242, 2060, 2062,
- 2063, 2246, 2370, 2383, 2384, 2397, 2371, 2385,
- 2398, 2372, 2386, 2399, 2411, 2412, 2400, 2413,
- 2425, 2426, 2414, 2427, 2439, 2440, 2428, 2441,
- 2410, 2424, 2438, 2256, 2257, 2258, 2259, 1630,
- 1812, 1617, 1644, 1799, 1826, 1631, 1813, 1604,
- 1618, 1645, 1786, 1800, 1827, 1632, 1814, 1605,
- 1619, 1646, 1787, 1801, 1828, 1825, 1839, 1659,
- 1841, 1633, 1660, 1815, 1842, 1658, 1840, 1853,
- 1855, 1856, 1647, 1829, 1854, 1672, 1673, 1674,
- 1661, 1843, 1981, 1982, 2010, 2009, 1997, 1995,
- 2022, 2024, 2011, 2036, 2037, 2038, 1869, 1994,
- 2008, 1996, 2023, 1983, 2051, 2025, 2052, 2050,
- 1868, 1870, 1857, 2021, 2035, 2049, 1867, 2039,
- 2177, 2205, 2206, 2192, 2219, 2193, 2218, 2220,
- 2233, 2207, 2232, 2234, 2190, 2204, 2191, 2178,
- 2179, 2247, 2221, 2248, 2246, 2064, 2065, 2066,
- 2053, 2217, 2231, 2245, 2063, 2235, 2401, 2402,
- 2388, 2415, 2389, 2414, 2416, 2429, 2403, 2430,
- 2386, 2400, 2373, 2387, 2374, 2375, 2428, 2443,
- 2417, 2444, 2442, 2260, 2261, 2262, 2413, 2427,
- 2441, 2259, 2249, 2431, 1619, 1633, 1801, 1815,
- 1606, 1620, 1647, 1788, 1802, 1829, 1816, 1634,
- 1607, 1621, 1648, 1789, 1803, 1830, 1635, 1817,
- 1608, 1622, 1649, 1790, 1804, 1831, 1843, 1661,
- 1844, 1662, 1636, 1663, 1818, 1845, 1857, 1858,
- 1650, 1832, 1859, 1675, 1676, 1677, 1664, 1846,
- 2011, 1985, 1986, 1998, 2012, 2013, 2025, 1999,
- 2026, 2014, 2041, 2039, 2040, 1873, 2028, 1997,
- 1984, 2000, 2027, 2053, 2054, 2055, 1871, 1872,
- 1860, 2042, 2067, 2180, 2181, 2209, 2207, 2208,
- 2196, 2194, 2223, 2221, 2210, 2236, 2237, 2235,
- 2068, 2193, 2195, 2222, 2182, 2249, 2250, 2224,
- 2251, 2069, 2056, 2238, 2376, 2405, 2403, 2391,
- 2392, 2418, 2419, 2406, 2432, 2433, 2264, 2389,
- 2390, 2417, 2404, 2377, 2378, 2431, 2263, 2445,
- 2446, 2420, 2447, 2265, 2252, 2434, 1835, 1848,
- 1653, 1666, 1822, 1836, 1849, 1654, 1667, 1823,
- 1837, 1850, 1863, 1655, 1668, 1824, 1838, 1851,
- 1862, 1864, 1669, 1852, 1865, 1680, 1681, 1682,
- 1876, 1877, 1878, 1683, 1866, 1879, 1694, 1695,
- 1696, 1890, 1891, 1892, 1697, 1880, 2044, 2045,
- 2046, 2047, 2058, 2059, 2060, 2061, 2072, 2073,
- 2074, 2075, 2017, 2030, 2031, 2018, 2032, 2019,
- 2033, 1893, 2020, 2034, 2048, 2062, 2086, 2087,
- 2088, 2076, 2240, 2241, 2229, 2242, 2243, 2254,
- 2255, 2256, 2257, 2268, 2269, 2270, 2271, 2213,
- 2226, 2227, 2214, 2228, 2215, 2089, 2216, 2230,
- 2244, 2258, 2282, 2283, 2284, 2272, 2423, 2436,
- 2424, 2437, 2425, 2438, 2439, 2450, 2451, 2452,
- 2453, 2464, 2465, 2466, 2467, 2409, 2422, 2410,
- 2411, 2440, 2285, 2412, 2426, 2454, 2478, 2479,
- 2480, 1838, 1851, 1656, 1669, 1825, 1839, 1852,
- 1657, 1670, 1826, 1840, 1853, 1658, 1671, 1854,
- 1864, 1865, 1866, 1867, 1672, 1868, 1683, 1684,
- 1685, 1878, 1879, 1880, 1881, 1686, 1882, 1697,
- 1698, 1699, 1892, 1893, 1894, 1895, 1700, 2034,
- 2047, 2035, 2048, 2036, 2049, 2050, 2061, 2062,
- 2063, 2064, 2075, 2076, 2077, 2078, 2020, 2033,
- 2021, 2022, 1896, 2060, 2074, 2088, 2089, 2090,
- 2091, 2230, 2243, 2244, 2245, 2246, 2257, 2258,
- 2259, 2260, 2271, 2272, 2273, 2274, 2216, 2229,
- 2217, 2231, 2218, 2232, 2092, 2256, 2270, 2284,
- 2285, 2286, 2287, 2426, 2439, 2427, 2440, 2441,
- 2442, 2453, 2454, 2455, 2456, 2467, 2468, 2469,
- 2470, 2412, 2425, 2413, 2414, 2428, 2288, 2452,
- 2466, 2480, 2481, 2482, 2483, 1854, 1659, 1672,
- 1841, 1855, 1868, 1646, 1660, 1673, 1828, 1842,
- 1869, 1856, 1647, 1661, 1674, 1829, 1843, 1870,
- 1857, 1867, 2051, 2052, 1675, 1686, 1687, 1688,
- 1871, 1884, 1881, 1882, 2064, 1883, 2065, 2066,
- 1700, 1701, 1689, 1702, 1897, 1885, 1898, 2067,
- 2080, 1895, 1896, 2079, 2078, 2024, 2037, 2025,
- 2038, 2050, 2039, 2053, 2036, 2023, 2092, 2093,
- 2081, 2094, 2063, 2077, 2091, 2248, 2261, 2262,
- 2260, 2263, 2275, 2276, 2274, 2220, 2233, 2247,
- 2221, 2234, 2219, 2232, 2246, 2235, 2249, 2288,
- 2289, 2277, 2290, 2259, 2273, 2287, 2443, 2444,
- 2456, 2457, 2458, 2445, 2459, 2471, 2472, 2470,
- 2416, 2429, 2417, 2430, 2415, 2428, 2442, 2431,
- 2484, 2485, 2473, 2486, 2455, 2469, 2483, 1661,
- 1843, 1857, 1648, 1662, 1675, 1830, 1844, 1871,
- 1858, 1649, 1663, 1676, 1831, 1845, 1872, 1859,
- 1650, 1664, 1677, 1832, 1846, 1873, 1860, 2053,
- 2054, 2055, 1678, 1689, 1885, 1690, 1691, 1874,
- 2067, 1886, 2068, 1887, 2069, 2056, 1703, 1704,
- 1692, 1705, 1899, 2081, 1900, 1888, 1901, 2070,
- 2082, 2083, 2026, 2039, 2027, 2040, 2028, 2041,
- 2042, 2095, 2096, 2084, 2097, 2250, 2251, 2263,
- 2264, 2265, 2277, 2266, 2278, 2279, 2222, 2235,
- 2249, 2223, 2236, 2224, 2237, 2238, 2252, 2291,
- 2292, 2280, 2293, 2445, 2446, 2447, 2459, 2460,
- 2461, 2473, 2474, 2462, 2475, 2418, 2431, 2419,
- 2432, 2420, 2433, 2434, 2448, 2487, 2488, 2476,
- 2489, 1664, 1846, 1860, 1651, 1665, 1678, 1833,
- 1847, 1874, 1861, 2056, 1679, 1875, 1692, 1888,
- 2070, 1693, 1706, 1889, 2071, 1902, 2084, 1707,
- 2029, 2042, 2043, 2057, 1903, 2085, 2098, 2252,
- 2266, 2267, 2280, 2225, 2238, 2239, 2253, 2099,
- 2281, 2294, 2448, 2462, 2449, 2463, 2476, 2421,
- 2434, 2435, 2295, 2477, 2490, 1694, 1695, 1877,
- 1890, 1878, 1891, 1696, 1879, 1892, 1697, 1880,
- 1893, 1708, 1709, 1710, 1904, 1905, 1906, 1711,
- 1894, 1907, 1722, 1723, 1724, 1918, 1919, 1920,
- 1725, 1908, 1921, 1736, 1737, 1738, 1932, 1933,
- 1934, 1739, 1922, 2073, 2074, 2075, 2086, 2087,
- 2088, 2089, 2100, 2101, 2102, 2103, 2114, 2115,
- 2116, 2117, 1935, 2076, 2090, 2104, 2128, 2129,
- 2130, 2118, 2269, 2270, 2271, 2282, 2283, 2284,
- 2285, 2296, 2297, 2298, 2299, 2310, 2311, 2312,
- 2313, 2131, 2272, 2286, 2300, 2324, 2325, 2326,
- 2314, 2465, 2466, 2467, 2478, 2479, 2480, 2481,
- 2492, 2493, 2494, 2495, 2506, 2507, 2508, 2509,
- 2327, 2468, 2482, 2496, 2520, 2521, 2522, 1697,
- 1698, 1880, 1892, 1893, 1881, 1894, 1699, 1882,
- 1895, 1700, 1896, 1711, 1712, 1713, 1906, 1907,
- 1908, 1909, 1714, 1910, 1725, 1726, 1727, 1920,
- 1921, 1922, 1923, 1728, 1924, 1739, 1740, 1741,
- 1934, 1935, 1936, 1937, 1742, 2076, 2077, 2078,
- 2089, 2090, 2091, 2092, 2103, 2104, 2105, 2106,
- 2117, 2118, 2119, 2120, 1938, 2088, 2102, 2116,
- 2130, 2131, 2132, 2133, 2272, 2273, 2274, 2285,
- 2286, 2287, 2288, 2299, 2300, 2301, 2302, 2313,
- 2314, 2315, 2316, 2134, 2284, 2298, 2312, 2326,
- 2327, 2328, 2329, 2468, 2469, 2470, 2481, 2482,
- 2483, 2484, 2495, 2496, 2497, 2498, 2509, 2510,
- 2511, 2512, 2330, 2480, 2494, 2508, 2522, 2523,
- 2524, 2525, 1700, 1883, 1895, 1896, 1701, 1714,
- 1897, 2079, 1884, 1702, 1715, 1898, 2080, 1885,
- 1703, 1716, 1911, 2093, 1899, 1912, 2081, 2094,
- 1909, 1910, 2092, 1728, 1729, 1717, 1730, 1925,
- 2107, 1913, 1926, 2095, 1923, 1924, 2108, 2106,
- 1742, 1743, 1731, 1744, 1939, 1927, 1940, 2109,
- 1937, 1938, 2120, 2121, 2122, 2134, 2135, 2123,
- 2136, 2091, 2105, 2119, 2133, 2275, 2276, 2277,
- 2290, 2289, 2288, 2303, 2291, 2304, 2302, 2305,
- 2316, 2317, 2318, 2330, 2331, 2319, 2332, 2287,
- 2301, 2315, 2329, 2471, 2472, 2473, 2486, 2484,
- 2485, 2499, 2487, 2500, 2498, 2513, 2501, 2512,
- 2514, 2526, 2527, 2515, 2528, 2483, 2497, 2511,
- 2525, 1703, 1885, 1899, 2081, 1886, 1704, 1717,
- 1900, 2082, 1887, 1705, 1718, 1901, 2083, 1888,
- 1706, 1719, 1913, 1914, 1902, 1915, 2084, 2097,
- 2095, 2096, 1731, 1732, 1720, 1733, 1927, 1928,
- 2110, 1916, 1929, 2098, 2111, 2109, 1745, 1746,
- 1734, 1747, 1941, 2123, 1942, 2124, 1930, 1943,
- 2112, 2125, 2137, 2138, 2126, 2139, 2277, 2278,
- 2279, 2280, 2291, 2292, 2293, 2294, 2307, 2305,
- 2306, 2320, 2308, 2319, 2321, 2333, 2334, 2322,
- 2335, 2473, 2474, 2475, 2487, 2476, 2488, 2489,
- 2490, 2503, 2501, 2502, 2516, 2504, 2517, 2515,
- 2529, 2530, 2518, 2531, 1706, 1888, 1902, 2084,
- 1889, 1707, 1720, 1903, 2085, 1916, 2098, 1721,
- 1734, 1917, 2099, 1930, 2112, 1735, 1748, 1931,
- 2113, 1944, 2126, 1749, 1945, 2127, 2140, 2280,
- 2281, 2294, 2295, 2308, 2309, 2322, 2141, 2323,
- 2336, 2476, 2477, 2490, 2491, 2504, 2505, 2518,
- 2337, 2519, 2532, 1736, 1737, 1919, 1932, 1920,
- 1933, 1738, 1921, 1934, 1739, 1922, 1935, 1750,
- 1751, 1752, 1946, 1947, 1948, 1753, 1936, 1949,
- 2115, 2116, 2117, 2128, 2129, 2130, 2131, 2142,
- 2143, 2144, 2118, 2132, 2145, 2311, 2312, 2313,
- 2324, 2325, 2326, 2327, 2338, 2339, 2340, 2314,
- 2328, 2341, 2507, 2508, 2509, 2520, 2521, 2522,
- 2523, 2534, 2535, 2536, 2510, 2524, 1739, 1740,
- 1922, 1934, 1935, 1923, 1936, 1741, 1924, 1937,
- 1742, 1938, 1753, 1754, 1755, 1948, 1949, 1950,
- 1951, 1756, 1952, 2118, 2119, 2120, 2131, 2132,
- 2133, 2134, 2145, 2146, 2147, 2130, 2144, 2148,
- 2314, 2315, 2316, 2327, 2328, 2329, 2330, 2341,
- 2342, 2343, 2326, 2340, 2344, 2510, 2511, 2512,
- 2523, 2524, 2525, 2526, 2537, 2538, 2539, 2522,
- 2536, 1742, 1925, 1937, 1938, 1743, 1756, 1939,
- 2121, 1926, 1744, 1757, 1940, 2122, 1927, 1745,
- 1758, 1953, 1941, 1954, 2123, 2136, 1951, 1952,
- 2134, 2135, 1759, 2149, 1955, 2137, 2150, 2148,
- 2133, 2147, 2317, 2318, 2319, 2331, 2332, 2330,
- 2345, 2151, 2333, 2346, 2344, 2329, 2343, 2513,
- 2514, 2515, 2527, 2528, 2526, 2541, 2347, 2529,
- 2542, 2540, 2525, 2539, 1745, 1927, 1941, 2123,
- 1928, 1746, 1759, 1942, 2124, 1929, 1747, 1760,
- 1943, 2125, 1930, 1748, 1761, 1955, 2137, 1956,
- 1944, 1957, 2126, 2138, 2139, 1762, 2151, 2152,
- 1958, 2140, 2153, 2319, 2320, 2321, 2333, 2322,
- 2334, 2335, 2347, 2348, 2154, 2336, 2349, 2515,
- 2516, 2517, 2529, 2530, 2518, 2531, 2543, 2544,
- 2350, 2532, 2545, 1748, 1930, 1944, 2126, 1931,
- 1749, 1762, 1945, 2127, 1958, 2140, 1763, 1959,
- 2141, 2154, 2322, 2323, 2336, 2155, 2337, 2350,
- 2518, 2519, 2532, 2351, 2533, 2546, 2157, 2170,
- 2352, 2171, 2184, 2353, 2366, 2158, 2172, 2185,
- 2354, 2367, 2159, 2173, 2186, 2355, 2368, 2380,
- 2381, 2198, 2199, 2187, 2200, 2356, 2369, 2382,
- 2394, 2395, 2212, 2213, 2201, 2214, 2370, 2383,
- 2396, 2408, 2409, 2397, 2410, 2548, 2549, 2550,
- 2562, 2563, 2551, 2564, 2576, 2577, 2565, 2578,
- 2590, 2591, 2384, 2579, 2592, 2552, 2566, 2604,
- 2605, 2173, 2355, 2160, 2174, 2187, 2356, 2369,
- 2161, 2175, 2188, 2357, 2370, 2162, 2176, 2189,
- 2358, 2371, 2368, 2382, 2383, 2384, 2201, 2202,
- 2190, 2203, 2372, 2385, 2396, 2397, 2398, 2215,
- 2216, 2204, 2217, 2386, 2399, 2410, 2411, 2412,
- 2400, 2413, 2551, 2552, 2553, 2565, 2566, 2554,
- 2567, 2579, 2580, 2568, 2581, 2593, 2594, 2582,
- 2595, 2564, 2578, 2592, 2606, 2607, 2608, 2176,
- 2358, 2163, 2190, 2359, 2372, 2177, 2164, 2191,
- 2373, 2178, 2360, 2387, 2165, 2192, 2374, 2179,
- 2361, 2388, 2371, 2385, 2205, 2206, 2204, 2386,
- 2399, 2401, 2219, 2193, 2220, 2375, 2402, 2218,
- 2400, 2413, 2233, 2415, 2207, 2234, 2389, 2416,
- 2555, 2556, 2554, 2568, 2569, 2570, 2557, 2414,
- 2583, 2584, 2582, 2597, 2571, 2598, 2596, 2403,
- 2567, 2581, 2595, 2429, 2611, 2430, 2585, 2612,
- 2609, 2165, 2179, 2361, 2166, 2193, 2375, 2180,
- 2362, 2389, 2167, 2194, 2376, 2181, 2363, 2390,
- 2168, 2195, 2377, 2182, 2364, 2391, 2207, 2208,
- 2209, 2378, 2221, 2403, 2404, 2222, 2405, 2196,
- 2223, 2392, 2235, 2417, 2418, 2236, 2419, 2210,
- 2237, 2557, 2558, 2559, 2572, 2571, 2573, 2560,
- 2586, 2587, 2585, 2599, 2600, 2574, 2601, 2406,
- 2431, 2613, 2432, 2614, 2433, 2588, 2615, 2249,
- 2250, 2224, 2251, 2445, 2446, 2238, 2420, 2447,
- 2263, 2264, 2265, 2252, 2434, 2461, 2602, 2627,
- 2628, 2629, 2641, 2642, 2616, 2643, 2459, 2460,
- 2448, 2630, 2168, 2182, 2364, 2169, 2196, 2378,
- 2183, 2365, 2392, 2210, 2197, 2379, 2224, 2406,
- 2211, 2393, 2238, 2420, 2560, 2574, 2561, 2588,
- 2407, 2575, 2602, 2589, 2434, 2616, 2225, 2252,
- 2239, 2421, 2448, 2253, 2435, 2266, 2630, 2462,
- 2449, 2603, 2617, 2644, 2631, 2212, 2381, 2394,
- 2199, 2213, 2226, 2368, 2382, 2395, 2408, 2200,
- 2214, 2227, 2369, 2383, 2396, 2409, 2201, 2215,
- 2228, 2370, 2384, 2397, 2410, 2422, 2423, 2240,
- 2241, 2229, 2242, 2398, 2411, 2424, 2436, 2437,
- 2243, 2412, 2425, 2438, 2255, 2439, 2563, 2576,
- 2577, 2590, 2564, 2578, 2591, 2565, 2579, 2592,
- 2604, 2605, 2593, 2606, 2618, 2619, 2607, 2620,
- 2632, 2633, 2426, 2621, 2634, 2566, 2580, 2594,
- 2450, 2451, 2452, 2608, 2202, 2215, 2384, 2397,
- 2216, 2229, 2371, 2385, 2398, 2411, 2203, 2217,
- 2230, 2372, 2386, 2399, 2412, 2204, 2218, 2231,
- 2400, 2413, 2410, 2424, 2425, 2426, 2243, 2244,
- 2232, 2245, 2414, 2427, 2438, 2439, 2440, 2246,
- 2428, 2441, 2256, 2257, 2442, 2566, 2579, 2580,
- 2593, 2567, 2581, 2594, 2568, 2582, 2595, 2607,
- 2608, 2596, 2609, 2621, 2622, 2610, 2623, 2453,
- 2635, 2636, 2455, 2624, 2637, 2606, 2620, 2634,
- 2452, 2454, 2218, 2400, 2205, 2232, 2387, 2401,
- 2414, 2219, 2192, 2206, 2233, 2374, 2388, 2415,
- 2220, 2402, 2193, 2207, 2234, 2375, 2389, 2416,
- 2413, 2427, 2247, 2429, 2221, 2248, 2403, 2430,
- 2246, 2428, 2441, 2443, 2235, 2417, 2444, 2442,
- 2259, 2260, 2261, 2457, 2262, 2249, 2431, 2570,
- 2597, 2598, 2583, 2610, 2584, 2611, 2626, 2625,
- 2458, 2582, 2596, 2569, 2571, 2585, 2612, 2599,
- 2624, 2639, 2613, 2640, 2456, 2638, 2445, 2609,
- 2623, 2637, 2455, 2627, 2241, 2423, 2436, 2254,
- 2410, 2424, 2437, 2242, 2255, 2411, 2425, 2438,
- 2451, 2243, 2256, 2412, 2426, 2439, 2450, 2452,
- 2257, 2440, 2453, 2268, 2269, 2270, 2464, 2465,
- 2466, 2271, 2454, 2467, 2282, 2283, 2284, 2478,
- 2479, 2480, 2285, 2468, 2632, 2633, 2634, 2635,
- 2646, 2647, 2648, 2649, 2660, 2661, 2662, 2663,
- 2605, 2618, 2619, 2606, 2620, 2607, 2621, 2481,
- 2608, 2622, 2636, 2650, 2674, 2675, 2676, 2664,
- 2244, 2426, 2439, 2257, 2413, 2427, 2440, 2453,
- 2245, 2258, 2414, 2428, 2441, 2246, 2259, 2442,
- 2452, 2454, 2455, 2260, 2456, 2271, 2272, 2273,
- 2466, 2467, 2468, 2469, 2274, 2470, 2285, 2286,
- 2287, 2480, 2481, 2482, 2483, 2288, 2635, 2623,
- 2636, 2637, 2638, 2649, 2650, 2651, 2652, 2663,
- 2664, 2665, 2666, 2608, 2621, 2622, 2609, 2610,
- 2624, 2484, 2648, 2662, 2676, 2677, 2678, 2679,
- 2442, 2247, 2260, 2429, 2443, 2456, 2234, 2248,
- 2261, 2416, 2430, 2457, 2444, 2235, 2249, 2262,
- 2417, 2431, 2458, 2445, 2455, 2640, 2263, 2274,
- 2275, 2276, 2459, 2472, 2469, 2470, 2471, 2653,
- 2654, 2641, 2652, 2288, 2289, 2277, 2290, 2485,
- 2473, 2486, 2655, 2483, 2484, 2667, 2668, 2666,
- 2611, 2612, 2625, 2639, 2613, 2626, 2624, 2638,
- 2627, 2680, 2681, 2669, 2682, 2651, 2665, 2679,
- 2249, 2431, 2445, 2236, 2250, 2263, 2418, 2432,
- 2459, 2446, 2237, 2251, 2264, 2419, 2433, 2460,
- 2447, 2238, 2252, 2265, 2420, 2434, 2461, 2641,
- 2642, 2448, 2266, 2277, 2473, 2278, 2474, 2279,
- 2462, 2655, 2656, 2475, 2657, 2291, 2292, 2280,
- 2293, 2487, 2669, 2488, 2476, 2489, 2658, 2670,
- 2671, 2614, 2627, 2615, 2628, 2616, 2629, 2643,
- 2630, 2644, 2683, 2684, 2672, 2685, 2252, 2434,
- 2448, 2239, 2253, 2266, 2421, 2435, 2462, 2449,
- 2644, 2267, 2463, 2280, 2476, 2658, 2281, 2294,
- 2477, 2659, 2490, 2672, 2295, 2617, 2630, 2631,
- 2645, 2491, 2673, 2686, 2282, 2283, 2465, 2478,
- 2466, 2479, 2284, 2467, 2480, 2285, 2468, 2481,
- 2296, 2297, 2298, 2492, 2493, 2494, 2299, 2482,
- 2495, 2310, 2311, 2312, 2506, 2507, 2508, 2313,
- 2496, 2509, 2324, 2325, 2326, 2520, 2521, 2522,
- 2327, 2510, 2661, 2662, 2663, 2674, 2675, 2676,
- 2677, 2688, 2689, 2690, 2691, 2702, 2703, 2704,
- 2705, 2523, 2664, 2678, 2692, 2716, 2717, 2718,
- 2706, 2285, 2286, 2468, 2480, 2481, 2469, 2482,
- 2287, 2470, 2483, 2288, 2484, 2299, 2300, 2301,
- 2494, 2495, 2496, 2497, 2302, 2498, 2313, 2314,
- 2315, 2508, 2509, 2510, 2511, 2316, 2512, 2327,
- 2328, 2329, 2522, 2523, 2524, 2525, 2330, 2664,
- 2665, 2666, 2677, 2678, 2679, 2680, 2691, 2692,
- 2693, 2694, 2705, 2706, 2707, 2708, 2526, 2676,
- 2690, 2704, 2718, 2719, 2720, 2721, 2288, 2471,
- 2483, 2484, 2289, 2302, 2485, 2667, 2472, 2290,
- 2303, 2486, 2668, 2473, 2291, 2304, 2499, 2487,
- 2500, 2669, 2682, 2497, 2498, 2680, 2681, 2316,
- 2317, 2305, 2318, 2513, 2695, 2501, 2514, 2683,
- 2511, 2512, 2696, 2694, 2330, 2331, 2319, 2332,
- 2527, 2515, 2528, 2697, 2525, 2526, 2709, 2710,
- 2708, 2722, 2723, 2711, 2724, 2679, 2693, 2707,
- 2721, 2291, 2473, 2487, 2669, 2474, 2292, 2305,
- 2488, 2670, 2475, 2293, 2306, 2489, 2671, 2476,
- 2294, 2307, 2501, 2502, 2490, 2503, 2672, 2683,
- 2684, 2685, 2319, 2320, 2308, 2321, 2515, 2516,
- 2504, 2517, 2686, 2699, 2697, 2698, 2333, 2334,
- 2322, 2335, 2529, 2530, 2712, 2518, 2531, 2700,
- 2711, 2713, 2725, 2726, 2714, 2727, 2294, 2476,
- 2490, 2672, 2477, 2295, 2308, 2491, 2673, 2504,
- 2686, 2309, 2322, 2505, 2687, 2518, 2700, 2323,
- 2336, 2519, 2701, 2532, 2714, 2337, 2533, 2715,
- 2728, 2324, 2325, 2507, 2520, 2508, 2521, 2326,
- 2509, 2522, 2327, 2510, 2523, 2338, 2339, 2340,
- 2534, 2535, 2536, 2341, 2524, 2537, 2703, 2704,
- 2705, 2716, 2717, 2718, 2719, 2730, 2731, 2732,
- 2706, 2720, 2733, 2327, 2328, 2510, 2522, 2523,
- 2511, 2524, 2329, 2512, 2525, 2330, 2526, 2341,
- 2342, 2343, 2536, 2537, 2538, 2539, 2344, 2540,
- 2706, 2707, 2708, 2719, 2720, 2721, 2722, 2733,
- 2734, 2735, 2718, 2732, 2736, 2330, 2513, 2525,
- 2526, 2331, 2344, 2527, 2709, 2514, 2332, 2345,
- 2528, 2710, 2515, 2333, 2346, 2541, 2529, 2542,
- 2711, 2539, 2540, 2723, 2724, 2722, 2347, 2737,
- 2543, 2725, 2738, 2736, 2721, 2735, 2333, 2515,
- 2529, 2711, 2516, 2334, 2347, 2530, 2712, 2517,
- 2335, 2348, 2531, 2713, 2518, 2336, 2349, 2543,
- 2725, 2544, 2532, 2545, 2714, 2726, 2727, 2350,
- 2739, 2740, 2546, 2728, 2741, 2336, 2518, 2532,
- 2714, 2519, 2337, 2350, 2533, 2715, 2546, 2728,
- 2351, 2547, 2729, 2742, 2743,
-};
-
-static long _vq_fitmap_lsp30_1[] = {
- 0, 83, 166, 254, 342, 406, 495, 584,
- 697, 816, 871, 977, 1079, 1193, 1304, 1388,
- 1494, 1596, 1701, 1800, 1877, 1938, 2028, 2118,
- 2180, 2226, 2316, 2406, 2516, 342, 2635, 2725,
- 2815, 2949, 3091, 3155, 3289, 3417, 3559, 1304,
- 3694, 3834, 3970, 4100, 1800, 4220, 1938, 2028,
- 4294, 2180, 4366, 4468, 4574, 4697, 4813, 4866,
- 4997, 5126, 5267, 5402, 5462, 5597, 5725, 5856,
- 5975, 6034, 6158, 6281, 6402, 6510, 6565, 6632,
- 6697, 6765, 6830, 6861, 6962, 7067, 7182, 7288,
- 7361, 7494, 7623, 7756, 7288, 7878, 8001, 8117,
- 8231, 8337, 8389, 8495, 8602, 8705, 8796, 8843,
- 8902, 8961, 9020, 9075, 9102, 9161, 9223, 9289,
- 9378, 9421, 9492, 9562, 9289, 9378, 9636, 9704,
- 9768, 9832, 9894, 9924, 9985, 10046, 10105, 10158,
- 10185, 10219, 10253, 10286, 10317,
-};
-
-static long _vq_fitlength_lsp30_1[] = {
- 83, 83, 88, 88, 64, 89, 89, 113,
- 119, 55, 106, 102, 114, 111, 84, 106,
- 102, 105, 99, 77, 61, 90, 90, 62,
- 46, 90, 90, 110, 119, 64, 90, 90,
- 134, 142, 64, 134, 128, 142, 135, 84,
- 140, 136, 130, 120, 77, 74, 90, 90,
- 72, 46, 102, 106, 123, 116, 53, 131,
- 129, 141, 135, 60, 135, 128, 131, 119,
- 59, 124, 123, 121, 108, 55, 67, 65,
- 68, 65, 31, 101, 105, 115, 106, 73,
- 133, 129, 133, 122, 73, 123, 116, 114,
- 106, 52, 106, 107, 103, 91, 47, 59,
- 59, 59, 55, 27, 59, 62, 66, 89,
- 43, 71, 70, 74, 89, 43, 68, 64,
- 64, 62, 30, 61, 61, 59, 53, 27,
- 34, 34, 33, 31, 16,
-};
-
-static encode_aux_pigeonhole _vq_auxp_lsp30_1 = {
- 0.083, 0.001, 39, 5,
- _vq_pigeonmap_lsp30_1,
- 10333,
- _vq_fitlist_lsp30_1,
- _vq_fitmap_lsp30_1,
- _vq_fitlength_lsp30_1
-};
-
-static static_codebook _vq_book_lsp30_1 = {
- 3, 2744,
- _vq_lengthlist_lsp30_1,
- 1, 1603616637, 1590714958, 6, 1,
- _vq_quantlist_lsp30_1,
- NULL,
- NULL,
- &_vq_auxp_lsp30_1,
- 0
-};
-
-
-#endif
diff --git a/lib/books/lsp9_0.vqh b/lib/books/lsp9_0.vqh
deleted file mode 100644
index fa59ae41..00000000
--- a/lib/books/lsp9_0.vqh
+++ /dev/null
@@ -1,122 +0,0 @@
-/********************************************************************
- * *
- * THIS FILE IS PART OF THE OggVorbis SOFTWARE CODEC SOURCE CODE. *
- * USE, DISTRIBUTION AND REPRODUCTION OF THIS SOURCE IS GOVERNED BY *
- * THE GNU LESSER/LIBRARY PUBLIC LICENSE, WHICH IS INCLUDED WITH *
- * THIS SOURCE. 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_lsp9_0_VQH_
-#define _V_lsp9_0_VQH_
-#include "codebook.h"
-
-static long _vq_quantlist_lsp9_0[] = {
- 0,
- 5,
- 10,
- 15,
- 25,
- 30,
- 35,
- 40,
- 46,
- 52,
- 56,
- 60,
- 65,
- 70,
- 76,
- 82,
- 88,
- 95,
- 102,
- 111,
- 121,
- 132,
- 145,
- 170,
- 220,
-};
-
-static long _vq_lengthlist_lsp9_0[] = {
- 7,10, 8, 7, 6, 7, 9, 5, 5, 5, 5, 4, 3, 3, 3, 3,
- 4, 4, 6, 6, 4, 6, 6,10, 6,
-};
-
-static long _vq_pigeonmap_lsp9_0[] = {
- 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 1, 1, 1,
- 1, 1, 1, 1, 1, 1, 1, 1,
- 1, 1, 1, 1, 1, 1, 1, 1,
- 1, 2, 2, 2, 2, 2, 2, 2,
- 2, 2, 2, 2, 2, 2, 2, 2,
- 2, 2, 3, 3, 3, 3, 3, 3,
- 3, 3, 3, 3, 3, 3, 3, 4,
- 4, 4, 4, 4, 4, 4, 4, 4,
- 4, 4, 4, 4, 4, 4, 4, 4,
- 5, 5, 5, 5, 5, 5, 5, 5,
- 5, 5, 5, 5, 5, 5, 5, 5,
- 5, 5, 5, 6, 6, 6, 6, 6,
- 6, 6, 6, 6, 6, 6, 6, 6,
- 6, 6, 6, 6, 6, 6, 6, 6,
- 6, 6, 6, 6, 6, 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, 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, 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 long _vq_fitlist_lsp9_0[] = {
- 0, 1, 2, 3, 3, 4, 5, 6,
- 6, 7, 8, 9, 9, 10, 11, 12,
- 12, 13, 14, 15, 15, 16, 17, 18,
- 18, 19, 20, 21, 21, 22, 23, 24,
-};
-
-static long _vq_fitmap_lsp9_0[] = {
- 0, 4, 8, 12, 16, 20, 24, 28,
- 28,
-};
-
-static long _vq_fitlength_lsp9_0[] = {
- 4, 4, 4, 4, 4, 4, 4, 4,
- 4,
-};
-
-static encode_aux_pigeonhole _vq_auxp_lsp9_0 = {
- 0.16, 0.002, 220, 9,
- _vq_pigeonmap_lsp9_0,
- 32,
- _vq_fitlist_lsp9_0,
- _vq_fitmap_lsp9_0,
- _vq_fitlength_lsp9_0
-};
-
-static static_codebook _vq_book_lsp9_0 = {
- 1, 25,
- _vq_lengthlist_lsp9_0,
- 1, 1605663457, 1592812110, 8, 1,
- _vq_quantlist_lsp9_0,
- NULL,
- NULL,
- &_vq_auxp_lsp9_0,
- 0
-};
-
-
-#endif
diff --git a/lib/books/lsp9_1.vqh b/lib/books/lsp9_1.vqh
deleted file mode 100644
index 80ae3d3c..00000000
--- a/lib/books/lsp9_1.vqh
+++ /dev/null
@@ -1,880 +0,0 @@
-/********************************************************************
- * *
- * THIS FILE IS PART OF THE OggVorbis SOFTWARE CODEC SOURCE CODE. *
- * USE, DISTRIBUTION AND REPRODUCTION OF THIS SOURCE IS GOVERNED BY *
- * THE GNU LESSER/LIBRARY PUBLIC LICENSE, WHICH IS INCLUDED WITH *
- * THIS SOURCE. 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_lsp9_1_VQH_
-#define _V_lsp9_1_VQH_
-#include "codebook.h"
-
-static long _vq_quantlist_lsp9_1[] = {
- 0,
- 6,
- 10,
- 14,
- 19,
- 24,
- 30,
- 36,
- 42,
- 49,
- 56,
- 65,
-};
-
-static long _vq_lengthlist_lsp9_1[] = {
- 17,17,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
- 16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
- 16,16,16,16,16,16,16,16,16,16,16,16,16,16,15,16,
- 16,16,16,16,15,15,14,16,16,16,16,16,16,16,16,16,
- 15,12,14,16,16,15,16,16,16,14,16,16,15,11,13,14,
- 14,15,16,16,14,16,16,16,15,16,15,14,14,16,16,16,
- 16,16,16,16,16,16,14,13,15,16,16,16,16,16,15,15,
- 14,14,14,15,16,16,16,16,16,16,16,15,16,16,14,16,
- 16,16,16,16,16,16,16,16,16,15,16,16,16,16,16,16,
- 16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
- 16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
- 16,16,16,16,16,16,16,16,16,16,16,16,16,16,14,15,
- 16,16,16,16,15,14,15,14,14,15,14,16,16,16,15,16,
- 15,11,13,16,14,14,16,16,16,16,15,16,14,11,13,13,
- 13,14,16,15,16,16,16,16,16,13,13,13,14,16,16,16,
- 16,16,16,16,14,13,14,12,14,16,16,16,16,16,16,15,
- 14,14,14,15,14,16,16,16,16,16,15,15,15,16,15,15,
- 14,16,16,16,16,16,16,16,16,16,16,16,15,16,16,16,
- 16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
- 16,16,16,15,16,16,16,16,16,16,16,16,16,16,16,16,
- 16,15,16,15,16,16,16,16,16,16,15,16,16,15,15,16,
- 16,16,16,16,15,12,12,14,15,14,16,15,15,16,16,16,
- 13,10,11,12,13,14,16,16,16,16,16,16,12,11,10,11,
- 12,14,14,16,16,16,16,14,13,11,11,11,12,14,15,16,
- 16,16,16,15,13,11,12,12,14,15,15,16,16,16,16,16,
- 13,13,14,14,15,14,16,16,16,16,15,15,14,16,14,14,
- 16,16,16,16,16,16,16,15,16,16,15,15,16,16,16,16,
- 16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
- 16,16,16,16,16,16,16,15,16,16,16,16,16,15,15,15,
- 15,15,16,15,16,16,16,16,16,16,13,15,13,14,14,16,
- 16,15,16,16,14,11,10,11,12,13,14,16,16,16,16,16,
- 12,10,10,10,11,12,14,15,16,16,16,13,10, 9, 9,10,
- 11,13,15,15,16,14,15,13,10,10, 9,10,11,13,15,16,
- 16,16,14,14,12,10,10,11,13,14,16,16,16,16,16,14,
- 12,12,12,12,14,16,16,16,16,15,16,14,13,14,14,15,
- 16,14,16,16,16,16,16,15,15,16,14,16,16,16,16,16,
- 16,16,16,16,16,16,16,16,16,14,15,15,16,16,16,16,
- 16,16,15,16,13,14,15,16,16,16,16,16,16,16,14,14,
- 13,14,14,15,16,16,16,16,14,12,11,12,11,12,14,16,
- 16,16,16,15,12, 9, 9,10,10,12,13,16,16,15,14,13,
- 10, 9, 8, 9,10,11,13,16,16,16,13,10, 8, 8, 7, 8,
- 9,12,14,15,16,14,12,10, 8, 8, 8, 8,10,12,14,16,
- 16,14,15,11,10, 9, 9, 9,11,13,13,16,14,16,14,13,
- 11,11,11,11,13,13,16,16,16,16,15,13,13,12,12,14,
- 13,14,16,16,16,16,16,15,16,14,15,14,15,16,16,16,
- 16,16,16,16,16,16,15,15,14,16,16,16,16,16,16,16,
- 16,16,15,13,13,14,14,16,16,16,16,16,14,13,12,12,
- 12,12,13,15,16,16,16,15,13,10,10,11,10,11,12,13,
- 16,16,16,14,10, 8, 8, 8, 9,10,11,16,16,16,14,11,
- 8, 8, 7, 8, 9,10,12,16,16,15,10, 8, 7, 7, 6, 6,
- 8,10,12,15,16,14,11, 8, 7, 6, 6, 7, 9,11,12,14,
- 15,14,12,10, 8, 8, 8, 9,10,12,13,16,13,14,13,11,
- 10,10,10,10,11,13,14,15,16,16,14,14,12,12,12,11,
- 13,15,14,16,16,16,16,14,13,13,13,16,16,16,16,16,
- 16,16,16,16,16,16,15,15,14,15,14,16,16,16,16,16,
- 16,16,14,12,12,13,15,11,16,14,16,16,14,12,10,10,
- 10,12,13,13,16,16,16,16,11, 9, 9, 9,10,11,11,12,
- 16,16,14,11, 7, 7, 7, 8, 9,10,10,16,16,16,13, 8,
- 7, 7, 6, 7, 8, 9,12,14,16,15,10, 7, 6, 6, 5, 5,
- 8,10,12,16,14,12,10, 8, 6, 6, 5, 7, 9,10,12,14,
- 15,13,10, 9, 8, 8, 8, 9, 9,11,12,14,16,13,13,12,
- 10,10,10,10,10,12,13,16,16,16,14,13,12,12,11,11,
- 12,14,15,16,16,16,15,16,14,12,13,13,16,15,16,16,
- 16,15,16,16,16,16,16,13,13,15,15,16,16,16,16,16,
- 16,16,11,12,12,13,15,16,16,15,16,15,13,10, 9,10,
- 11,12,16,14,16,16,16,12, 9, 8, 8, 9,10,12,12,14,
- 16,16,13,10, 7, 7, 7, 8, 9,11,12,16,16,15,12, 8,
- 7, 6, 6, 7, 9,10,12,16,16,13,10, 8, 6, 6, 6, 7,
- 9,10,12,14,13,12,10, 8, 7, 7, 7, 8, 9,10,12,15,
- 16,11,10,10, 9, 9, 9, 8, 9,10,13,16,14,12,12,12,
- 11,10, 9, 9,10,12,14,16,15,15,14,12,11,11,10,11,
- 13,13,14,16,16,15,15,15,13,13,13,15,15,16,16,16,
- 16,16,16,16,16,16,15,13,15,16,16,16,16,16,16,16,
- 15,14,12,12,13,15,16,16,16,16,15,16,13,11,10,11,
- 12,13,16,16,16,16,16,12,10, 9, 8, 9,10,13,14,16,
- 16,14,13,11, 9, 8, 8, 9,12,13,14,16,16,12,11,10,
- 8, 7, 8, 9,11,12,13,16,14,13,11, 9, 8, 8, 8, 9,
- 10,11,13,15,14,12,11,10, 9, 9, 9, 9, 9,10,12,16,
- 13,13,12,10,10,10, 9, 9, 9,11,13,15,14,13,12,11,
- 11,10,10,10,10,12,16,16,14,14,13,12,12,11,12,11,
- 13,15,16,16,15,14,14,15,14,14,15,15,16,16,16,16,
- 16,16,16,16,16,16,16,16,16,15,16,15,16,16,16,15,
- 16,14,15,13,14,15,16,16,16,16,16,14,13,12,13,13,
- 13,16,16,16,16,15,15,13,12,11,11,11,14,14,16,16,
- 16,15,12,11,10,10,10,12,13,15,15,16,14,12,12,11,
- 10, 9,10,12,12,14,15,16,14,12,11,10, 9, 9,10,11,
- 11,12,14,16,16,13,11,10,10,10,10, 9, 9,11,13,15,
- 15,13,12,11,11,11,10, 9,10,12,14,16,15,12,12,12,
- 12,11,10,10,11,13,15,16,12,13,14,16,13,14,12,12,
- 14,14,16,16,15,15,16,16,14,14,14,15,16,16,16,16,
- 16,16,16,16,16,15,16,16,16,16,16,16,16,16,16,16,
- 16,14,16,15,16,16,16,16,16,16,16,14,15,14,14,14,
- 15,16,16,16,15,15,13,15,13,13,12,14,16,16,16,16,
- 14,13,13,12,11,12,14,14,16,16,16,16,13,13,12,11,
- 10,11,13,14,13,14,15,16,15,14,11,11,11,11,12,12,
- 12,13,15,16,16,15,12,11,11,12,11,11,11,13,15,16,
- 16,14,13,13,13,12,11,10,11,14,16,16,14,13,15,16,
- 16,13,11,11,12,15,16,16,15,16,16,16,15,15,12,12,
- 14,16,16,16,15,14,16,16,15,15,15,16,16,16,16,16,
- 16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
- 16,16,16,16,16,16,16,16,16,14,16,16,14,15,15,16,
- 16,16,16,16,16,16,15,14,14,15,16,15,16,16,16,16,
- 16,15,14,13,13,14,16,16,16,16,16,16,16,14,13,12,
- 13,13,14,16,15,16,16,16,16,13,14,13,14,13,16,15,
- 15,16,16,16,16,14,14,14,16,15,16,14,16,16,16,16,
- 16,16,15,13,16,14,14,15,14,15,16,16,16,15,16,16,
- 16,16,15,15,16,16,16,16,15,16,16,16,16,16,16,16,
- 16,16,16,16,16,14,16,16,16,16,16,16,16,16,16,16,
-};
-
-static long _vq_pigeonmap_lsp9_1[] = {
- 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 1, 1, 1,
- 1, 1, 1, 1, 1, 1, 1, 1,
- 1, 1, 1, 1, 2, 2, 2, 2,
- 2, 2, 2, 2, 2, 2, 2, 2,
- 2, 2, 2, 2, 2, 2, 3, 3,
- 3, 3, 3, 3, 3, 3, 3, 3,
- 3, 3, 3, 3, 3, 3, 3, 3,
- 3,
-};
-
-static long _vq_fitlist_lsp9_1[] = {
- 0, 1, 12, 144, 2, 3, 145, 146,
- 13, 14, 24, 25, 156, 15, 26, 147,
- 36, 27, 38, 168, 37, 157, 158, 169,
- 159, 170, 180, 181, 39, 171, 182, 48,
- 288, 289, 290, 291, 300, 301, 302, 312,
- 313, 314, 303, 432, 324, 325, 315, 326,
- 433, 434, 435, 444, 446, 445, 456, 447,
- 457, 458, 468, 469, 459, 470, 3, 4,
- 15, 147, 5, 16, 148, 6, 17, 149,
- 14, 26, 27, 28, 29, 18, 150, 161,
- 39, 40, 41, 171, 30, 159, 160, 172,
- 173, 162, 38, 183, 184, 185, 158, 53,
- 174, 291, 292, 293, 294, 303, 304, 305,
- 317, 315, 316, 306, 302, 170, 329, 327,
- 328, 435, 436, 437, 438, 318, 447, 448,
- 449, 461, 459, 460, 450, 446, 314, 473,
- 471, 472, 462, 6, 18, 150, 7, 19,
- 151, 8, 20, 152, 9, 29, 30, 31,
- 32, 162, 163, 164, 21, 44, 42, 43,
- 174, 33, 165, 153, 176, 41, 175, 188,
- 186, 187, 56, 54, 55, 294, 295, 296,
- 173, 306, 307, 308, 297, 320, 318, 319,
- 177, 185, 309, 332, 440, 438, 439, 330,
- 331, 200, 321, 450, 451, 452, 441, 464,
- 462, 463, 453, 476, 317, 474, 475, 344,
- 465, 9, 20, 21, 153, 10, 22, 154,
- 11, 34, 23, 155, 33, 32, 165, 166,
- 46, 178, 45, 35, 44, 58, 190, 167,
- 47, 164, 177, 189, 179, 57, 310, 297,
- 298, 299, 176, 309, 322, 321, 188, 311,
- 334, 333, 202, 320, 191, 323, 441, 442,
- 443, 454, 466, 201, 478, 308, 453, 465,
- 455, 332, 477, 346, 335, 467, 464, 345,
- 36, 25, 37, 26, 38, 27, 39, 48,
- 180, 50, 49, 181, 171, 182, 60, 51,
- 183, 192, 61, 193, 62, 194, 63, 195,
- 72, 204, 205, 206, 73, 74, 169, 170,
- 157, 207, 216, 168, 324, 315, 313, 314,
- 326, 325, 327, 336, 337, 338, 339, 348,
- 349, 350, 217, 218, 351, 360, 468, 469,
- 480, 481, 482, 492, 493, 361, 362, 457,
- 458, 459, 470, 471, 483, 494, 495, 504,
- 505, 506, 27, 39, 28, 40, 29, 41,
- 30, 51, 183, 52, 184, 53, 185, 42,
- 174, 50, 63, 64, 195, 196, 65, 197,
- 54, 186, 62, 75, 207, 76, 208, 77,
- 209, 66, 198, 74, 172, 173, 171, 162,
- 210, 221, 194, 206, 219, 220, 329, 327,
- 316, 328, 317, 318, 339, 340, 341, 330,
- 351, 352, 353, 342, 218, 182, 315, 338,
- 350, 497, 354, 365, 473, 472, 483, 484,
- 485, 474, 495, 496, 486, 363, 362, 364,
- 459, 460, 461, 471, 462, 482, 494, 498,
- 509, 507, 506, 508, 30, 42, 31, 43,
- 32, 44, 33, 56, 54, 186, 55, 187,
- 188, 45, 65, 66, 67, 68, 198, 199,
- 200, 57, 78, 210, 79, 211, 80, 212,
- 69, 201, 53, 174, 175, 176, 177, 189,
- 163, 164, 165, 222, 223, 224, 213, 309,
- 332, 318, 330, 331, 319, 320, 342, 343,
- 344, 333, 354, 355, 356, 345, 197, 321,
- 500, 368, 366, 367, 357, 474, 475, 476,
- 486, 487, 488, 498, 499, 462, 463, 464,
- 453, 465, 477, 489, 510, 511, 501, 512,
- 33, 45, 34, 57, 46, 23, 35, 58,
- 190, 167, 47, 56, 189, 202, 179, 70,
- 59, 191, 69, 68, 201, 214, 71, 203,
- 82, 80, 81, 213, 83, 215, 177, 178,
- 226, 166, 225, 311, 200, 212, 358, 224,
- 94, 310, 333, 334, 321, 322, 323, 346,
- 335, 345, 347, 357, 370, 359, 502, 501,
- 369, 478, 455, 477, 467, 490, 489, 479,
- 491, 227, 465, 454, 466, 344, 356, 514,
- 503, 368, 238, 513, 371, 72, 61, 73,
- 205, 62, 63, 74, 206, 216, 75, 207,
- 84, 217, 218, 85, 86, 228, 87, 219,
- 96, 229, 230, 97, 98, 240, 99, 231,
- 108, 241, 242, 109, 110, 243, 384, 385,
- 386, 252, 349, 350, 351, 360, 361, 362,
- 363, 372, 373, 374, 375, 253, 254, 387,
- 493, 504, 505, 516, 528, 529, 494, 506,
- 517, 518, 396, 397, 530, 495, 507, 519,
- 398, 531, 672, 540, 673, 541, 674, 63,
- 74, 75, 207, 64, 76, 208, 65, 77,
- 209, 66, 219, 220, 78, 210, 221, 87,
- 88, 89, 86, 90, 101, 222, 233, 99,
- 231, 100, 232, 98, 243, 102, 234, 245,
- 244, 113, 110, 111, 112, 246, 218, 242,
- 389, 387, 388, 257, 351, 352, 353, 354,
- 363, 364, 365, 230, 366, 375, 376, 377,
- 378, 254, 255, 362, 386, 256, 374, 522,
- 533, 531, 532, 390, 496, 497, 498, 507,
- 508, 509, 510, 519, 520, 521, 398, 399,
- 401, 495, 400, 506, 530, 518, 534, 677,
- 675, 676, 542, 543, 544, 545, 66, 78,
- 210, 67, 79, 211, 68, 80, 212, 69,
- 90, 222, 223, 224, 91, 92, 81, 213,
- 102, 234, 103, 235, 236, 104, 93, 225,
- 246, 247, 248, 114, 115, 105, 116, 237,
- 113, 390, 391, 392, 258, 259, 249, 260,
- 354, 355, 356, 366, 367, 368, 357, 378,
- 379, 380, 369, 381, 500, 511, 522, 524,
- 534, 535, 536, 525, 404, 499, 498, 510,
- 512, 501, 523, 513, 393, 402, 403, 537,
- 548, 678, 679, 680, 546, 547, 69, 81,
- 213, 70, 82, 214, 71, 83, 215, 92,
- 225, 93, 94, 226, 95, 227, 104, 237,
- 105, 106, 238, 250, 107, 239, 249, 116,
- 117, 118, 251, 224, 236, 248, 262, 203,
- 370, 359, 382, 371, 394, 393, 383, 261,
- 357, 358, 347, 369, 381, 260, 395, 406,
- 501, 502, 514, 503, 526, 525, 515, 538,
- 537, 527, 513, 405, 380, 392, 539, 550,
- 404, 549, 682, 681, 108, 240, 97, 241,
- 98, 109, 99, 242, 110, 252, 111, 120,
- 253, 254, 121, 122, 264, 123, 265, 266,
- 132, 133, 134, 267, 276, 135, 243, 255,
- 277, 278, 408, 409, 410, 385, 386, 387,
- 396, 397, 398, 399, 411, 420, 384, 421,
- 279, 422, 552, 553, 529, 540, 541, 542,
- 554, 530, 555, 564, 531, 543, 423, 566,
- 565, 696, 697, 673, 674, 684, 685, 686,
- 698, 110, 243, 100, 111, 244, 112, 101,
- 245, 113, 102, 246, 255, 114, 257, 256,
- 125, 122, 123, 124, 258, 126, 269, 267,
- 268, 134, 135, 136, 137, 270, 280, 279,
- 138, 281, 413, 411, 412, 278, 414, 254,
- 389, 388, 390, 401, 399, 400, 266, 402,
- 387, 425, 398, 410, 422, 423, 424, 557,
- 555, 556, 282, 531, 533, 532, 534, 545,
- 543, 544, 546, 558, 569, 567, 568, 542,
- 554, 566, 426, 701, 699, 700, 675, 676,
- 677, 678, 689, 687, 688, 690, 102, 113,
- 246, 114, 103, 247, 115, 104, 248, 116,
- 105, 258, 259, 249, 260, 127, 117, 128,
- 126, 125, 270, 271, 261, 272, 129, 140,
- 138, 137, 139, 281, 282, 283, 273, 284,
- 257, 269, 416, 414, 415, 391, 390, 392,
- 393, 404, 402, 403, 405, 426, 427, 141,
- 428, 417, 425, 401, 548, 413, 549, 560,
- 558, 559, 534, 535, 536, 537, 546, 547,
- 570, 571, 572, 561, 569, 285, 557, 545,
- 704, 702, 703, 678, 679, 680, 681, 692,
- 690, 691, 693, 105, 249, 117, 106, 250,
- 118, 107, 251, 119, 116, 128, 260, 261,
- 129, 262, 130, 263, 131, 272, 273, 274,
- 142, 141, 275, 140, 284, 285, 286, 143,
- 418, 419, 407, 417, 430, 393, 394, 395,
- 405, 406, 428, 429, 287, 404, 416, 562,
- 563, 539, 551, 561, 574, 537, 538, 549,
- 550, 572, 573, 548, 560, 431, 706, 707,
- 695, 705, 718, 681, 682, 683, 693, 694,
- 432, 289, 300, 576, 433, 290, 434, 291,
- 435, 444, 301, 577, 302, 578, 445, 446,
- 312, 303, 157, 456, 588, 313, 314, 447,
- 579, 457, 458, 324, 325, 315, 326, 468,
- 600, 469, 459, 470, 589, 590, 591, 601,
- 602, 612, 613, 471, 603, 614, 480, 720,
- 722, 721, 732, 723, 733, 734, 744, 735,
- 745, 746, 756, 757, 615, 747, 758, 624,
- 864, 865, 866, 876, 867, 877, 878, 888,
- 889, 879, 890, 900, 901, 759, 891, 902,
- 768, 291, 435, 292, 303, 436, 579, 293,
- 304, 437, 580, 161, 294, 305, 581, 438,
- 447, 448, 449, 446, 315, 316, 317, 459,
- 460, 306, 461, 582, 591, 592, 593, 450,
- 329, 327, 328, 471, 472, 473, 605, 318,
- 462, 594, 314, 603, 604, 458, 590, 617,
- 615, 616, 606, 485, 723, 724, 725, 726,
- 735, 736, 737, 749, 747, 748, 738, 602,
- 734, 761, 759, 760, 750, 629, 867, 868,
- 869, 746, 879, 880, 870, 881, 893, 891,
- 892, 882, 758, 903, 904, 905, 878, 773,
- 894, 294, 438, 295, 306, 582, 439, 163,
- 296, 307, 583, 440, 164, 308, 584, 297,
- 452, 450, 451, 441, 318, 319, 320, 462,
- 594, 463, 595, 464, 596, 309, 330, 331,
- 332, 453, 476, 474, 606, 475, 607, 608,
- 321, 344, 465, 317, 461, 585, 597, 620,
- 473, 618, 619, 488, 486, 487, 609, 726,
- 727, 728, 605, 738, 739, 740, 617, 750,
- 751, 752, 729, 741, 764, 762, 763, 632,
- 630, 631, 753, 872, 870, 871, 749, 761,
- 882, 883, 884, 894, 896, 885, 873, 895,
- 908, 906, 907, 776, 774, 775, 297, 308,
- 441, 309, 585, 298, 453, 442, 166, 310,
- 586, 454, 299, 155, 443, 452, 322, 466,
- 311, 587, 321, 598, 320, 464, 465, 167,
- 455, 597, 334, 478, 333, 610, 323, 477,
- 467, 609, 476, 346, 599, 345, 490, 622,
- 335, 596, 621, 479, 611, 489, 608, 620,
- 729, 730, 731, 742, 741, 754, 743, 753,
- 634, 766, 740, 765, 623, 755, 633, 752,
- 764, 873, 874, 875, 898, 778, 885, 886,
- 897, 887, 910, 767, 884, 909, 899, 777,
- 324, 468, 313, 336, 457, 325, 469, 458,
- 326, 470, 459, 327, 480, 612, 337, 338,
- 471, 601, 481, 613, 482, 614, 348, 349,
- 339, 350, 483, 492, 624, 493, 625, 494,
- 626, 351, 495, 360, 636, 504, 361, 637,
- 362, 638, 505, 506, 602, 603, 615, 627,
- 639, 648, 600, 649, 650, 745, 746, 756,
- 747, 758, 757, 768, 759, 769, 770, 771,
- 780, 781, 782, 783, 792, 744, 793, 794,
- 913, 900, 889, 890, 901, 902, 903, 912,
- 914, 915, 924, 925, 926, 891, 877, 927,
- 936, 888, 327, 459, 471, 460, 328, 472,
- 461, 329, 473, 318, 341, 462, 339, 340,
- 330, 485, 617, 483, 615, 604, 616, 484,
- 605, 474, 606, 482, 351, 352, 353, 342,
- 495, 627, 496, 628, 497, 629, 486, 618,
- 494, 354, 363, 639, 364, 640, 365, 641,
- 498, 630, 507, 509, 508, 506, 603, 594,
- 642, 626, 638, 651, 652, 653, 650, 614,
- 747, 748, 749, 761, 759, 760, 750, 771,
- 772, 773, 762, 783, 784, 785, 774, 738,
- 786, 795, 796, 797, 770, 782, 794, 758,
- 917, 928, 929, 905, 903, 904, 893, 894,
- 915, 916, 906, 927, 918, 892, 891, 882,
- 930, 941, 914, 926, 939, 940, 330, 462,
- 474, 319, 342, 463, 331, 475, 320, 343,
- 464, 332, 476, 344, 321, 465, 486, 618,
- 487, 619, 488, 620, 607, 608, 333, 477,
- 356, 354, 355, 498, 630, 499, 631, 500,
- 632, 345, 489, 368, 366, 642, 367, 643,
- 224, 644, 357, 510, 511, 512, 501, 633,
- 606, 609, 621, 485, 595, 596, 597, 656,
- 654, 655, 645, 750, 751, 752, 629, 762,
- 763, 764, 774, 775, 776, 786, 787, 788,
- 777, 741, 753, 641, 765, 739, 740, 800,
- 798, 799, 789, 773, 919, 932, 906, 907,
- 908, 896, 785, 918, 920, 930, 931, 921,
- 894, 895, 897, 909, 883, 884, 885, 942,
- 943, 944, 933, 465, 333, 477, 345, 322,
- 466, 334, 478, 346, 490, 622, 323, 455,
- 467, 599, 335, 479, 489, 621, 488, 609,
- 610, 611, 358, 357, 502, 634, 347, 491,
- 623, 500, 501, 633, 370, 646, 359, 226,
- 514, 503, 635, 368, 225, 369, 645, 512,
- 513, 371, 647, 382, 658, 598, 515, 657,
- 656, 743, 632, 644, 790, 753, 754, 766,
- 755, 765, 778, 767, 777, 779, 789, 791,
- 742, 526, 802, 659, 801, 800, 776, 788,
- 887, 910, 899, 922, 921, 911, 934, 933,
- 923, 909, 897, 898, 670, 803, 935, 946,
- 886, 945, 920, 932, 944, 360, 504, 493,
- 361, 637, 494, 505, 362, 495, 506, 363,
- 372, 638, 648, 507, 516, 373, 649, 374,
- 650, 517, 518, 375, 229, 384, 519, 240,
- 660, 528, 385, 661, 386, 662, 529, 530,
- 387, 241, 672, 531, 396, 252, 673, 674,
- 540, 397, 398, 253, 541, 542, 639, 651,
- 663, 675, 684, 816, 685, 781, 782, 792,
- 793, 794, 804, 805, 806, 807, 817, 818,
- 686, 783, 795, 819, 828, 829, 925, 936,
- 937, 948, 960, 961, 962, 830, 926, 927,
- 938, 939, 949, 950, 951, 963, 972, 363,
- 506, 507, 496, 364, 640, 508, 497, 365,
- 641, 509, 498, 222, 366, 377, 642, 653,
- 375, 651, 376, 652, 233, 510, 519, 520,
- 521, 518, 234, 378, 389, 654, 665, 387,
- 663, 388, 664, 245, 522, 531, 532, 533,
- 530, 246, 390, 666, 675, 676, 401, 677,
- 534, 399, 400, 257, 255, 256, 545, 398,
- 542, 543, 544, 639, 650, 662, 678, 674,
- 689, 821, 819, 820, 686, 687, 688, 783,
- 784, 785, 786, 797, 795, 796, 798, 809,
- 807, 808, 810, 794, 806, 822, 833, 818,
- 830, 831, 832, 928, 929, 951, 952, 954,
- 965, 963, 964, 927, 939, 940, 930, 941,
- 942, 953, 966, 950, 962, 977, 366, 498,
- 642, 510, 499, 367, 643, 511, 500, 368,
- 644, 512, 501, 223, 378, 654, 224, 379,
- 655, 380, 234, 235, 656, 369, 524, 645,
- 522, 523, 513, 390, 666, 391, 392, 246,
- 667, 668, 381, 536, 657, 534, 535, 525,
- 679, 402, 678, 403, 404, 680, 249, 260,
- 393, 669, 258, 259, 537, 548, 546, 547,
- 545, 690, 691, 681, 692, 822, 823, 824,
- 786, 787, 788, 798, 799, 800, 789, 811,
- 810, 812, 801, 813, 689, 834, 835, 825,
- 836, 932, 944, 943, 933, 956, 954, 945,
- 957, 968, 966, 967, 930, 931, 942, 955,
- 833, 978, 979, 969, 980, 501, 369, 645,
- 513, 502, 370, 646, 514, 359, 382, 503,
- 658, 371, 647, 225, 380, 381, 238, 515,
- 237, 657, 525, 526, 227, 524, 383, 659,
- 394, 670, 392, 393, 250, 239, 527, 669,
- 537, 538, 536, 395, 671, 682, 406, 251,
- 539, 405, 681, 261, 262, 550, 549, 683,
- 656, 668, 404, 680, 407, 548, 694, 693,
- 826, 825, 815, 789, 790, 802, 791, 801,
- 803, 814, 813, 692, 827, 800, 812, 824,
- 551, 838, 837, 933, 945, 934, 946, 935,
- 958, 957, 947, 969, 970, 959, 836, 695,
- 971, 944, 956, 968, 982, 923, 981, 396,
- 540, 529, 673, 253, 397, 530, 541, 674,
- 398, 531, 542, 675, 399, 408, 684, 543,
- 264, 685, 686, 552, 409, 410, 265, 553,
- 266, 554, 687, 411, 696, 555, 697, 698,
- 276, 420, 421, 564, 277, 565, 422, 566,
- 699, 278, 423, 708, 567, 709, 710, 840,
- 841, 842, 817, 828, 829, 830, 818, 819,
- 831, 843, 852, 711, 816, 853, 854, 984,
- 985, 986, 961, 962, 972, 973, 974, 987,
- 855, 960, 996, 963, 975, 997, 998, 399,
- 531, 542, 675, 532, 543, 676, 400, 533,
- 544, 677, 257, 401, 545, 534, 256, 402,
- 678, 258, 689, 687, 688, 413, 546, 411,
- 412, 269, 267, 268, 557, 410, 554, 555,
- 556, 690, 270, 414, 701, 699, 700, 558,
- 281, 425, 422, 566, 279, 423, 280, 424,
- 568, 567, 569, 702, 426, 282, 713, 711,
- 712, 570, 686, 698, 710, 845, 843, 844,
- 820, 821, 822, 833, 831, 832, 834, 819,
- 846, 857, 855, 856, 714, 830, 854, 842,
- 987, 988, 989, 965, 964, 966, 976, 977,
- 975, 978, 963, 990, 999, 1000, 858, 1001,
- 974, 986, 998, 534, 545, 678, 402, 546,
- 535, 679, 259, 403, 547, 536, 680, 404,
- 548, 537, 258, 260, 414, 690, 415, 691,
- 272, 405, 416, 681, 692, 261, 270, 271,
- 549, 560, 558, 559, 557, 702, 703, 417,
- 693, 704, 273, 284, 428, 561, 282, 426,
- 283, 427, 569, 570, 571, 572, 425, 714,
- 715, 429, 705, 716, 713, 689, 701, 848,
- 846, 847, 823, 822, 824, 825, 836, 834,
- 835, 837, 858, 859, 573, 849, 860, 833,
- 857, 845, 990, 992, 991, 967, 968, 966,
- 969, 980, 978, 979, 981, 717, 993, 1002,
- 1003, 1004, 1001, 861, 977, 989, 1134, 537,
- 681, 261, 405, 549, 538, 682, 262, 406,
- 550, 395, 539, 683, 263, 407, 548, 416,
- 417, 693, 418, 694, 551, 273, 274, 562,
- 561, 695, 275, 419, 560, 705, 706, 563,
- 286, 430, 285, 429, 574, 707, 573, 572,
- 287, 431, 716, 717, 718, 575, 692, 704,
- 850, 851, 839, 849, 862, 825, 826, 827,
- 837, 838, 860, 861, 719, 836, 848, 994,
- 995, 993, 983, 1006, 969, 970, 971, 981,
- 982, 863, 980, 992, 1005, 1004, 1138, 1139,
- 864, 721, 732, 865, 722, 733, 866, 723,
- 734, 867, 876, 877, 878, 744, 745, 735,
- 746, 888, 889, 879, 890, 756, 757, 747,
- 758, 900, 901, 891, 902, 768, 1008, 1009,
- 1010, 1020, 1011, 1032, 1021, 1022, 1033, 1023,
- 1034, 1044, 1045, 903, 1035, 1046, 912, 1152,
- 1153, 1154, 1164, 1155, 1176, 1165, 1166, 1177,
- 1167, 1178, 1188, 1189, 1047, 1179, 1190, 1056,
- 1296, 1297, 1298, 1308, 1299, 1310, 1309, 1320,
- 1321, 1311, 1322, 1191, 1333, 1200, 1332, 1201,
- 1323, 1334, 723, 867, 724, 735, 868, 725,
- 736, 869, 726, 737, 870, 881, 879, 880,
- 878, 746, 747, 748, 749, 738, 891, 892,
- 893, 761, 882, 759, 760, 750, 903, 904,
- 905, 894, 773, 1011, 1013, 1012, 890, 1014,
- 1025, 1035, 1023, 1024, 1036, 1037, 1026, 902,
- 1047, 1048, 1049, 1022, 917, 1038, 1157, 1155,
- 1156, 1034, 1167, 1168, 1158, 1169, 1179, 1180,
- 1181, 1170, 1046, 1191, 1192, 1193, 1166, 1061,
- 1182, 1299, 1300, 1301, 1178, 1302, 1311, 1312,
- 1313, 1323, 1324, 1325, 1314, 1335, 1203, 1336,
- 1204, 1205, 1337, 726, 870, 727, 738, 871,
- 728, 739, 872, 740, 729, 882, 883, 884,
- 752, 873, 750, 751, 895, 896, 893, 894,
- 741, 764, 762, 763, 885, 753, 908, 906,
- 907, 774, 775, 776, 897, 1014, 1015, 1016,
- 905, 1026, 1027, 1028, 1039, 1029, 1017, 1040,
- 1038, 1052, 1050, 1051, 920, 918, 919, 1037,
- 1041, 1158, 1159, 1160, 1049, 1170, 1171, 1172,
- 1182, 1183, 1184, 1173, 1161, 1196, 1194, 1195,
- 1064, 1062, 1063, 1181, 1185, 1193, 1302, 1303,
- 1304, 1314, 1315, 1316, 1328, 1305, 1326, 1327,
- 1317, 1340, 1208, 1205, 1206, 1338, 1207, 1339,
- 729, 740, 873, 741, 730, 874, 742, 731,
- 886, 875, 884, 885, 754, 753, 743, 898,
- 897, 887, 896, 765, 766, 764, 910, 755,
- 909, 899, 908, 778, 777, 767, 1017, 1018,
- 1019, 1042, 922, 1029, 1030, 1031, 1054, 911,
- 1028, 1041, 1053, 1043, 921, 1040, 1052, 1161,
- 1162, 1163, 1174, 1186, 1066, 1175, 1173, 1185,
- 1198, 1055, 1172, 1197, 1187, 1065, 1184, 1196,
- 1210, 1305, 1306, 1307, 1199, 1318, 1317, 1330,
- 1329, 1319, 1342, 1316, 1341, 1209, 1331, 1328,
- 756, 888, 900, 768, 889, 757, 901, 890,
- 758, 902, 891, 759, 769, 770, 903, 912,
- 913, 914, 780, 781, 771, 782, 915, 924,
- 925, 926, 783, 792, 793, 794, 927, 936,
- 937, 938, 1068, 1069, 1070, 1044, 1045, 1035,
- 1046, 1047, 1056, 1057, 1058, 1059, 1033, 1034,
- 1021, 1071, 1080, 1032, 1081, 1082, 1212, 1201,
- 1213, 1214, 1188, 1177, 1178, 1189, 1179, 1190,
- 1191, 1200, 1202, 1203, 1215, 1165, 1224, 1176,
- 1225, 1226, 1332, 1333, 1344, 1345, 1356, 1357,
- 1321, 1334, 1335, 1346, 1347, 1358, 1309, 1322,
- 1323, 1359, 1320, 1310, 1311, 1368, 759, 891,
- 903, 760, 771, 892, 904, 761, 772, 893,
- 905, 773, 894, 762, 915, 916, 917, 906,
- 914, 782, 783, 784, 785, 774, 929, 927,
- 928, 918, 926, 786, 795, 796, 797, 930,
- 941, 939, 940, 938, 902, 1073, 1062, 1071,
- 1072, 1047, 1048, 1049, 1059, 1060, 1061, 1050,
- 1036, 1037, 1038, 1035, 1026, 1074, 1085, 1058,
- 1070, 1083, 1084, 1082, 1046, 1192, 1193, 1204,
- 1205, 1215, 1216, 1217, 1206, 1191, 1181, 1182,
- 1203, 1194, 1180, 1179, 1170, 1218, 1229, 1202,
- 1214, 1227, 1228, 1226, 1190, 1335, 1336, 1337,
- 1347, 1348, 1338, 1349, 1359, 1360, 1361, 1350,
- 1324, 1325, 1326, 1314, 1323, 1312, 1313, 1362,
- 1373, 762, 894, 906, 774, 895, 763, 907,
- 775, 896, 764, 908, 776, 753, 765, 885,
- 897, 920, 918, 919, 909, 788, 786, 787,
- 931, 777, 932, 930, 921, 800, 798, 799,
- 789, 942, 943, 944, 933, 917, 1052, 1062,
- 1074, 1075, 1076, 1050, 1051, 1039, 929, 1063,
- 1064, 1065, 1038, 1040, 1041, 1053, 1027, 1028,
- 1029, 1086, 1087, 1088, 1077, 1061, 1196, 1206,
- 1207, 1208, 1218, 1219, 1220, 1194, 1195, 1183,
- 1184, 1073, 1209, 1182, 1185, 1197, 1171, 1172,
- 1173, 1230, 1231, 1232, 1221, 1205, 1340, 1338,
- 1339, 1217, 1350, 1351, 1352, 1362, 1363, 1364,
- 1327, 1353, 1326, 1315, 1316, 1328, 1317, 1329,
- 1341, 1361, 1374, 1375, 1365, 1376, 765, 897,
- 909, 777, 754, 766, 886, 898, 910, 778,
- 755, 887, 899, 922, 767, 911, 921, 920,
- 790, 789, 779, 934, 923, 933, 932, 802,
- 791, 801, 935, 946, 944, 945, 803, 1031,
- 1054, 1043, 1066, 1055, 1078, 1077, 1067, 1053,
- 1065, 947, 1079, 1041, 1042, 1090, 1030, 1089,
- 1064, 1076, 1088, 1175, 1198, 1197, 1187, 1210,
- 1209, 1199, 1222, 1221, 1211, 1185, 1186, 1091,
- 1223, 1234, 1174, 1233, 1208, 1220, 1232, 1342,
- 1341, 1354, 1343, 1353, 1366, 1355, 1365, 1235,
- 1319, 1329, 1330, 1331, 1367, 1318, 1352, 1364,
- 1378, 1317, 1340, 1376, 1377, 1246, 792, 936,
- 925, 793, 926, 937, 794, 927, 938, 795,
- 804, 805, 806, 939, 948, 949, 950, 807,
- 816, 817, 818, 951, 960, 961, 962, 819,
- 828, 963, 829, 830, 972, 973, 1069, 1070,
- 1080, 1081, 1082, 1092, 1093, 1094, 1104, 1105,
- 1106, 974, 1071, 1083, 1095, 1107, 1116, 1117,
- 1213, 1214, 1224, 1225, 1226, 1236, 1237, 1238,
- 1248, 1249, 1250, 1118, 1215, 1227, 1239, 1251,
- 1260, 1261, 1262, 1357, 1358, 1368, 1369, 1370,
- 1380, 1382, 1381, 1392, 1393, 1359, 1371, 1383,
- 1394, 1395, 1404, 795, 927, 938, 939, 928,
- 796, 940, 929, 797, 941, 930, 798, 809,
- 807, 808, 942, 953, 951, 952, 950, 810,
- 821, 819, 820, 954, 965, 963, 964, 962,
- 822, 833, 831, 832, 966, 974, 975, 976,
- 977, 1071, 1072, 1073, 1074, 1083, 1084, 1085,
- 1086, 1097, 1095, 1096, 1098, 1107, 1109, 1108,
- 1110, 1082, 1106, 1121, 1094, 1118, 1119, 1215,
- 1216, 1217, 1218, 1229, 1227, 1228, 1230, 1239,
- 1240, 1241, 1242, 1253, 1251, 1252, 1120, 1254,
- 1250, 1265, 1226, 1238, 1262, 1263, 1264, 1397,
- 1359, 1360, 1361, 1362, 1371, 1372, 1373, 1374,
- 1383, 1384, 1385, 1386, 1395, 1396, 1398, 1409,
- 798, 930, 942, 931, 799, 943, 932, 800,
- 944, 933, 810, 811, 812, 801, 954, 955,
- 956, 945, 822, 823, 824, 813, 966, 967,
- 957, 968, 834, 835, 825, 836, 980, 979,
- 969, 978, 1074, 1075, 1076, 1087, 1088, 1086,
- 1077, 1099, 1089, 1100, 1098, 1111, 1112, 1110,
- 1101, 977, 1122, 1123, 1113, 1124, 1218, 1219,
- 1220, 1231, 1221, 1232, 1230, 1242, 1243, 1244,
- 1233, 1254, 1255, 1256, 1245, 1121, 1266, 1267,
- 1257, 1268, 1399, 1362, 1363, 1364, 1374, 1375,
- 1376, 1365, 1386, 1387, 1388, 1377, 1398, 1400,
- 1389, 1229, 1241, 1373, 1253, 1385, 1265, 1410,
- 1411, 1401, 1412, 933, 801, 945, 934, 802,
- 946, 791, 814, 935, 803, 813, 947, 812,
- 958, 956, 957, 815, 826, 825, 959, 824,
- 970, 968, 969, 827, 838, 971, 836, 837,
- 982, 981, 1077, 1078, 1079, 1089, 1090, 1091,
- 1101, 1102, 1103, 1113, 1114, 980, 839, 1115,
- 1088, 1100, 1112, 1126, 1067, 1125, 1221, 1222,
- 1223, 1233, 1234, 1235, 1245, 1246, 1247, 1257,
- 1258, 1124, 983, 1259, 1232, 1244, 1256, 1270,
- 1211, 1269, 1379, 1402, 1268, 1401, 1365, 1366,
- 1367, 1378, 1377, 1390, 1389, 1391, 1127, 1376,
- 1388, 1400, 1271, 1403, 1355, 1414, 1412, 1413,
- 828, 972, 961, 829, 962, 973, 830, 963,
- 974, 831, 840, 975, 841, 842, 984, 985,
- 986, 843, 987, 852, 1128, 853, 997, 854,
- 996, 1129, 1130, 998, 855, 1105, 1116, 1117,
- 1118, 1131, 999, 1104, 1106, 1140, 1107, 1119,
- 1141, 1142, 1273, 1272, 1274, 1249, 1250, 1260,
- 1261, 1262, 1275, 1284, 1143, 1248, 1251, 1263,
- 1285, 1286, 1393, 1405, 1416, 1417, 1418, 1287,
- 1394, 1404, 1406, 1419, 1428, 1395, 1407, 1430,
- 1429, 831, 963, 974, 964, 975, 832, 965,
- 976, 833, 977, 966, 834, 845, 843, 844,
- 978, 986, 987, 988, 989, 846, 990, 1133,
- 857, 854, 855, 1131, 856, 998, 999, 1132,
- 1000, 1001, 858, 1108, 1109, 1110, 1121, 1119,
- 1120, 1122, 1002, 1107, 1134, 1143, 1145, 1144,
- 1142, 1118, 1130, 1277, 1275, 1276, 1251, 1252,
- 1253, 1254, 1265, 1263, 1264, 1266, 1146, 1278,
- 1287, 1289, 1288, 1262, 1274, 1286, 1409, 1421,
- 1419, 1420, 1395, 1396, 1397, 1398, 1407, 1408,
- 1410, 1290, 1422, 1433, 1431, 1432, 1430, 966,
- 834, 978, 967, 835, 979, 968, 836, 980,
- 969, 977, 846, 847, 837, 848, 981, 992,
- 990, 991, 989, 849, 860, 993, 858, 1134,
- 859, 1136, 1135, 1004, 1001, 1002, 1003, 861,
- 1110, 1111, 1112, 1122, 1123, 1113, 1124, 1125,
- 1146, 1145, 1137, 1147, 1148, 1121, 1133, 1280,
- 1279, 1278, 1005, 1254, 1255, 1256, 1266, 1267,
- 1257, 1268, 1269, 1281, 1291, 1290, 1292, 1289,
- 1265, 1277, 1149, 1399, 1401, 1412, 1413, 1424,
- 1411, 1422, 1423, 1398, 1400, 1410, 1434, 1435,
- 1425, 1436, 1421, 1433, 1293, 969, 837, 981,
- 970, 838, 982, 827, 971, 839, 848, 980,
- 849, 850, 983, 994, 993, 851, 992, 995,
- 862, 1138, 861, 718, 1127, 1137, 1006, 1005,
- 1004, 863, 1139, 1150, 719, 1007, 1113, 1114,
- 1115, 1125, 1126, 1124, 1136, 1148, 1149, 1282,
- 1283, 1271, 1281, 1294, 1151, 1257, 1258, 1259,
- 1269, 1270, 1268, 1280, 1292, 1293, 1426, 1427,
- 1295, 1401, 1402, 1413, 1414, 1403, 1415, 1425,
- 1438, 1412, 1424, 1436, 1437, 1296, 1153, 1164,
- 1297, 1154, 1165, 1298, 1155, 1166, 1299, 1308,
- 1176, 1309, 1177, 1310, 1167, 1178, 1320, 1188,
- 1189, 1321, 1179, 1190, 1311, 1322, 1333, 1332,
- 1191, 1323, 1334, 1200, 1440, 1441, 1442, 1452,
- 1443, 1454, 1453, 1464, 1465, 1455, 1466, 1335,
- 1344, 1476, 1345, 1477, 1467, 1478, 1584, 1585,
- 1586, 1479, 1587, 1596, 1598, 1608, 1597, 1599,
- 1488, 1609, 1490, 1610, 1620, 1489, 1621, 1611,
- 1622, 1155, 1166, 1299, 1156, 1167, 1300, 1157,
- 1168, 1301, 1158, 1169, 1302, 1311, 1312, 1313,
- 1181, 1178, 1310, 1179, 1180, 1170, 1322, 1325,
- 1191, 1323, 1192, 1324, 1193, 1314, 1182, 1335,
- 1336, 1337, 1194, 1205, 1326, 1445, 1443, 1444,
- 1455, 1456, 1446, 1457, 1467, 1468, 1469, 1458,
- 1479, 1347, 1480, 1348, 1349, 1481, 1454, 1466,
- 1338, 1470, 1589, 1478, 1587, 1588, 1590, 1601,
- 1599, 1600, 1613, 1611, 1612, 1491, 1492, 1493,
- 1602, 1586, 1623, 1624, 1625, 1482, 1598, 1610,
- 1614, 1158, 1302, 1159, 1170, 1303, 1160, 1171,
- 1304, 1172, 1161, 1316, 1314, 1182, 1315, 1183,
- 1184, 1305, 1326, 1327, 1173, 1196, 1328, 1193,
- 1325, 1194, 1195, 1185, 1317, 1340, 1337, 1338,
- 1339, 1206, 1207, 1208, 1329, 1446, 1448, 1447,
- 1313, 1458, 1459, 1460, 1472, 1449, 1470, 1471,
- 1461, 1484, 1352, 1349, 1350, 1482, 1351, 1483,
- 1469, 1481, 1473, 1457, 1590, 1591, 1592, 1496,
- 1601, 1604, 1602, 1603, 1593, 1614, 1615, 1616,
- 1605, 1493, 1494, 1495, 1628, 1626, 1627, 1613,
- 1625, 1617, 1161, 1172, 1305, 1173, 1162, 1306,
- 1174, 1163, 1318, 1307, 1317, 1186, 1184, 1316,
- 1185, 1175, 1330, 1198, 1328, 1197, 1329, 1187,
- 1319, 1196, 1342, 1341, 1210, 1199, 1331, 1340,
- 1208, 1209, 1449, 1450, 1451, 1354, 1343, 1462,
- 1461, 1474, 1473, 1463, 1486, 1460, 1485, 1353,
- 1475, 1472, 1484, 1352, 1498, 1487, 1593, 1594,
- 1595, 1497, 1618, 1630, 1606, 1604, 1605, 1617,
- 1607, 1616, 1629, 1619, 1496, 1628, 1592, 1642,
- 1188, 1320, 1332, 1200, 1189, 1321, 1178, 1310,
- 1322, 1333, 1190, 1323, 1334, 1191, 1201, 1202,
- 1344, 1335, 1212, 1345, 1346, 1203, 1213, 1214,
- 1356, 1357, 1347, 1358, 1215, 1224, 1225, 1226,
- 1359, 1368, 1369, 1370, 1500, 1476, 1477, 1488,
- 1489, 1501, 1465, 1478, 1479, 1490, 1491, 1502,
- 1453, 1466, 1467, 1503, 1464, 1454, 1455, 1512,
- 1513, 1514, 1644, 1645, 1646, 1608, 1597, 1620,
- 1609, 1610, 1621, 1622, 1611, 1623, 1632, 1633,
- 1634, 1635, 1515, 1647, 1598, 1599, 1656, 1657,
- 1658, 1191, 1323, 1335, 1192, 1203, 1324, 1336,
- 1193, 1204, 1325, 1337, 1205, 1194, 1326, 1202,
- 1347, 1348, 1349, 1338, 1217, 1346, 1214, 1215,
- 1216, 1206, 1359, 1360, 1361, 1350, 1358, 1218,
- 1226, 1227, 1228, 1229, 1362, 1371, 1372, 1373,
- 1370, 1334, 1505, 1503, 1504, 1479, 1480, 1481,
- 1491, 1492, 1493, 1494, 1468, 1469, 1482, 1458,
- 1470, 1467, 1456, 1457, 1506, 1517, 1490, 1502,
- 1515, 1516, 1514, 1478, 1649, 1647, 1648, 1611,
- 1600, 1623, 1612, 1601, 1624, 1613, 1602, 1625,
- 1614, 1637, 1635, 1636, 1626, 1638, 1622, 1634,
- 1646, 1518, 1650, 1661, 1659, 1660, 1658, 1194,
- 1326, 1338, 1206, 1195, 1327, 1339, 1207, 1196,
- 1328, 1340, 1208, 1185, 1197, 1317, 1329, 1349,
- 1350, 1351, 1352, 1218, 1219, 1220, 1341, 1209,
- 1361, 1362, 1363, 1364, 1353, 1221, 1232, 1230,
- 1231, 1374, 1375, 1376, 1365, 1507, 1508, 1506,
- 1484, 1482, 1483, 1495, 1496, 1494, 1471, 1497,
- 1470, 1459, 1460, 1472, 1461, 1473, 1485, 1505,
- 1493, 1518, 1519, 1509, 1520, 1650, 1651, 1652,
- 1614, 1603, 1626, 1615, 1604, 1627, 1616, 1628,
- 1605, 1617, 1638, 1639, 1640, 1629, 1641, 1662,
- 1531, 1663, 1637, 1649, 1530, 1664, 1653, 1197,
- 1329, 1341, 1209, 1186, 1198, 1318, 1330, 1342,
- 1210, 1187, 1319, 1331, 1354, 1199, 1222, 1343,
- 1353, 1220, 1352, 1221, 1211, 1366, 1355, 1364,
- 1365, 1234, 1223, 1233, 1378, 1367, 1376, 1377,
- 1246, 1235, 1510, 1509, 1486, 1485, 1498, 1487,
- 1497, 1499, 1379, 1463, 1473, 1474, 1475, 1511,
- 1462, 1496, 1508, 1522, 1461, 1484, 1520, 1521,
- 1390, 1523, 1654, 1642, 1619, 1631, 1653, 1643,
- 1655, 1605, 1617, 1629, 1606, 1618, 1630, 1607,
- 1641, 1534, 1666, 1628, 1640, 1652, 1532, 1664,
- 1665, 1533, 1224, 1368, 1357, 1225, 1358, 1369,
- 1226, 1359, 1370, 1227, 1236, 1237, 1238, 1371,
- 1380, 1381, 1382, 1239, 1248, 1249, 1250, 1383,
- 1392, 1393, 1394, 1251, 1260, 1261, 1262, 1395,
- 1404, 1356, 1405, 1501, 1512, 1513, 1524, 1525,
- 1536, 1406, 1502, 1514, 1526, 1537, 1503, 1515,
- 1527, 1538, 1539, 1548, 1500, 1549, 1550, 1680,
- 1645, 1656, 1657, 1668, 1669, 1658, 1670, 1681,
- 1682, 1646, 1647, 1659, 1671, 1633, 1683, 1644,
- 1692, 1693, 1694, 1227, 1359, 1370, 1360, 1371,
- 1228, 1361, 1372, 1229, 1373, 1362, 1230, 1241,
- 1238, 1239, 1240, 1374, 1383, 1384, 1385, 1382,
- 1242, 1253, 1250, 1251, 1252, 1386, 1395, 1396,
- 1397, 1394, 1254, 1265, 1263, 1264, 1398, 1409,
- 1406, 1407, 1408, 1504, 1505, 1506, 1517, 1515,
- 1516, 1518, 1529, 1527, 1528, 1530, 1541, 1539,
- 1540, 1503, 1542, 1553, 1514, 1526, 1538, 1550,
- 1551, 1552, 1685, 1650, 1661, 1662, 1673, 1674,
- 1683, 1684, 1648, 1649, 1659, 1660, 1671, 1672,
- 1647, 1638, 1658, 1670, 1682, 1686, 1697, 1694,
- 1695, 1696, 1230, 1362, 1374, 1363, 1231, 1375,
- 1364, 1232, 1376, 1365, 1242, 1243, 1244, 1233,
- 1388, 1386, 1387, 1377, 1254, 1255, 1256, 1245,
- 1400, 1398, 1399, 1389, 1266, 1267, 1257, 1268,
- 1410, 1401, 1412, 1411, 1506, 1507, 1508, 1519,
- 1518, 1520, 1530, 1531, 1532, 1542, 1543, 1544,
- 1533, 1509, 1521, 1373, 1385, 1517, 1397, 1529,
- 1409, 1554, 1555, 1545, 1556, 1541, 1688, 1686,
- 1687, 1651, 1652, 1662, 1663, 1664, 1674, 1675,
- 1676, 1677, 1553, 1650, 1653, 1665, 1673, 1639,
- 1640, 1641, 1698, 1699, 1689, 1700, 1661, 1685,
- 1365, 1233, 1377, 1366, 1234, 1378, 1223, 1246,
- 1355, 1367, 1235, 1245, 1244, 1390, 1379, 1389,
- 1388, 1258, 1247, 1257, 1256, 1402, 1391, 1401,
- 1400, 1259, 1270, 1268, 1269, 1403, 1414, 1412,
- 1413, 1509, 1510, 1511, 1522, 1521, 1523, 1534,
- 1533, 1535, 1546, 1545, 1520, 1532, 1544, 1271,
- 1415, 1547, 1499, 1558, 1556, 1557, 1689, 1690,
- 1653, 1654, 1666, 1655, 1665, 1667, 1677, 1678,
- 1679, 1559, 1691, 1664, 1643, 1676, 1688, 1642,
- 1700, 1701, 1702, 1260, 1249, 1393, 1404, 1261,
- 1394, 1405, 1262, 1395, 1406, 1263, 1272, 1273,
- 1274, 1407, 1416, 1417, 1418, 1275, 1419, 1284,
- 1285, 1286, 1429, 1428, 1430, 1287, 1392, 1536,
- 1537, 1548, 1549, 1560, 1561, 1562, 1538, 1550,
- 1563, 1572, 1431, 1539, 1551, 1573, 1574, 1575,
- 1681, 1692, 1693, 1704, 1705, 1682, 1683, 1694,
- 1706, 1716, 1695, 1707, 1717, 1718, 1680, 1719,
- 1263, 1395, 1406, 1396, 1407, 1264, 1397, 1408,
- 1265, 1254, 1398, 1409, 1266, 1277, 1275, 1276,
- 1410, 1421, 1418, 1419, 1420, 1278, 1422, 1287,
- 1288, 1289, 1286, 1430, 1431, 1432, 1433, 1290,
- 1539, 1540, 1541, 1542, 1553, 1551, 1552, 1554,
- 1565, 1563, 1564, 1434, 1566, 1577, 1575, 1576,
- 1574, 1550, 1562, 1697, 1709, 1578, 1684, 1685,
- 1686, 1695, 1696, 1698, 1707, 1708, 1710, 1683,
- 1721, 1719, 1720, 1694, 1706, 1718, 1398, 1266,
- 1255, 1399, 1410, 1267, 1256, 1400, 1411, 1268,
- 1257, 1401, 1412, 1409, 1278, 1279, 1269, 1280,
- 1277, 1423, 1413, 1424, 1422, 1421, 1281, 1292,
- 1290, 1291, 1425, 1436, 1433, 1434, 1435, 1293,
- 1542, 1543, 1544, 1554, 1555, 1545, 1556, 1567,
- 1557, 1568, 1566, 1578, 1579, 1569, 1580, 1553,
- 1437, 1577, 1565, 1686, 1687, 1688, 1689, 1700,
- 1698, 1699, 1701, 1712, 1710, 1711, 1581, 1713,
- 1724, 1722, 1723, 1721, 1697, 1709, 1401, 1269,
- 1258, 1402, 1413, 1270, 1414, 1259, 1403, 1271,
- 1282, 1280, 1412, 1281, 1415, 1426, 1424, 1425,
- 1283, 1294, 1427, 1293, 1292, 1438, 1437, 1295,
- 1436, 1570, 1571, 1439, 1545, 1546, 1547, 1557,
- 1558, 1559, 1569, 1582, 1556, 1568, 1580, 1581,
- 1583, 1689, 1690, 1691, 1701, 1702, 1703, 1713,
- 1714, 1715, 1726, 1724, 1725, 1700, 1712, 1679,
- 1727,
-};
-
-static long _vq_fitmap_lsp9_1[] = {
- 0, 62, 131, 201, 264, 338, 428, 512,
- 589, 663, 758, 838, 908, 977, 1062, 1147,
- 1216, 1297, 1385, 1478, 1560, 1650, 1758, 1867,
- 1965, 2055, 2166, 2269, 2367, 2447, 2547, 2647,
- 2728, 2810, 2899, 2992, 3072, 3166, 3273, 3382,
- 3478, 3563, 3664, 3763, 3856, 3929, 4015, 4101,
- 4173, 4241, 4321, 4402, 4472, 4553, 4647, 4735,
- 4818, 4891, 4978, 5064, 5139, 5200, 5270, 5342,
-};
-
-static long _vq_fitlength_lsp9_1[] = {
- 62, 69, 70, 63, 74, 90, 84, 77,
- 74, 95, 80, 70, 69, 85, 85, 69,
- 81, 88, 93, 82, 90, 108, 109, 98,
- 90, 111, 103, 98, 80, 100, 100, 81,
- 82, 89, 93, 80, 94, 107, 109, 96,
- 85, 101, 99, 93, 73, 86, 86, 72,
- 68, 80, 81, 70, 81, 94, 88, 83,
- 73, 87, 86, 75, 61, 70, 72, 59,
-};
-
-static encode_aux_pigeonhole _vq_auxp_lsp9_1 = {
- 0.252, 0.002, 65, 4,
- _vq_pigeonmap_lsp9_1,
- 5401,
- _vq_fitlist_lsp9_1,
- _vq_fitmap_lsp9_1,
- _vq_fitlength_lsp9_1
-};
-
-static static_codebook _vq_book_lsp9_1 = {
- 3, 1728,
- _vq_lengthlist_lsp9_1,
- 1, 1607475397, 1592812110, 7, 1,
- _vq_quantlist_lsp9_1,
- NULL,
- NULL,
- &_vq_auxp_lsp9_1,
- 0
-};
-
-
-#endif
diff --git a/lib/books/res0_128_1024_1.vqh b/lib/books/res0_128_1024_1.vqh
deleted file mode 100644
index 2bbc639a..00000000
--- a/lib/books/res0_128_1024_1.vqh
+++ /dev/null
@@ -1,63 +0,0 @@
-/********************************************************************
- * *
- * 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_res0_128_1024_1_VQH_
-#define _V_res0_128_1024_1_VQH_
-#include "codebook.h"
-
-static long _vq_quantlist_res0_128_1024_1[] = {
- 1,
- 0,
- 2,
-};
-
-static long _vq_lengthlist_res0_128_1024_1[] = {
- 1, 4, 4, 5, 8, 7, 4, 7, 7, 5, 8, 8, 8,11,11, 8,
- 11,11, 5, 8, 7, 8,11,11, 8,11,11, 5, 8, 8, 8,11,
- 11, 8,11,11, 8,12,11,11,15,15,12,15,15, 8,11,11,
- 11,15,15,11,15,15, 4, 8, 8, 8,11,11, 8,11,11, 8,
- 11,11,11,15,15,11,15,15, 8,11,11,11,15,15,11,15,
- 15,
-};
-
-static float _vq_quantthresh_res0_128_1024_1[] = {
- -0.5, 0.5,
-};
-
-static long _vq_quantmap_res0_128_1024_1[] = {
- 1, 0, 2,
-};
-
-static encode_aux_threshmatch _vq_auxt_res0_128_1024_1 = {
- _vq_quantthresh_res0_128_1024_1,
- _vq_quantmap_res0_128_1024_1,
- 3,
- 3
-};
-
-static static_codebook _vq_book_res0_128_1024_1 = {
- 4, 81,
- _vq_lengthlist_res0_128_1024_1,
- 1, -535822336, 1611661312, 2, 0,
- _vq_quantlist_res0_128_1024_1,
- NULL,
- &_vq_auxt_res0_128_1024_1,
- NULL,
- 0
-};
-
-
-#endif
diff --git a/lib/books/res0_128_1024_2.vqh b/lib/books/res0_128_1024_2.vqh
deleted file mode 100644
index 262c6a02..00000000
--- a/lib/books/res0_128_1024_2.vqh
+++ /dev/null
@@ -1,63 +0,0 @@
-/********************************************************************
- * *
- * 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_res0_128_1024_2_VQH_
-#define _V_res0_128_1024_2_VQH_
-#include "codebook.h"
-
-static long _vq_quantlist_res0_128_1024_2[] = {
- 1,
- 0,
- 2,
-};
-
-static long _vq_lengthlist_res0_128_1024_2[] = {
- 3, 4, 4, 5, 6, 6, 4, 6, 6, 5, 6, 6, 6, 8, 8, 6,
- 8, 8, 4, 6, 6, 6, 8, 8, 6, 8, 8, 5, 7, 6, 7, 8,
- 8, 6, 8, 8, 6, 8, 8, 8,10,10, 8,10,10, 6, 8, 8,
- 8,10,10, 8,10,10, 5, 6, 6, 6, 8, 8, 6, 8, 8, 6,
- 8, 8, 8,10,10, 8,10,10, 6, 8, 8, 8,10,10, 8,10,
- 10,
-};
-
-static float _vq_quantthresh_res0_128_1024_2[] = {
- -0.5, 0.5,
-};
-
-static long _vq_quantmap_res0_128_1024_2[] = {
- 1, 0, 2,
-};
-
-static encode_aux_threshmatch _vq_auxt_res0_128_1024_2 = {
- _vq_quantthresh_res0_128_1024_2,
- _vq_quantmap_res0_128_1024_2,
- 3,
- 3
-};
-
-static static_codebook _vq_book_res0_128_1024_2 = {
- 4, 81,
- _vq_lengthlist_res0_128_1024_2,
- 1, -535822336, 1611661312, 2, 0,
- _vq_quantlist_res0_128_1024_2,
- NULL,
- &_vq_auxt_res0_128_1024_2,
- NULL,
- 0
-};
-
-
-#endif
diff --git a/lib/books/res0_128_1024_3.vqh b/lib/books/res0_128_1024_3.vqh
deleted file mode 100644
index e00fabfa..00000000
--- a/lib/books/res0_128_1024_3.vqh
+++ /dev/null
@@ -1,99 +0,0 @@
-/********************************************************************
- * *
- * 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_res0_128_1024_3_VQH_
-#define _V_res0_128_1024_3_VQH_
-#include "codebook.h"
-
-static long _vq_quantlist_res0_128_1024_3[] = {
- 2,
- 1,
- 3,
- 0,
- 4,
-};
-
-static long _vq_lengthlist_res0_128_1024_3[] = {
- 2, 4, 4, 7, 7, 5, 7, 7, 9, 9, 5, 7, 7, 9, 9, 7,
- 10,10,14,13, 7,10,10,14,14, 5, 7, 7, 9, 9, 7, 9,
- 9,12,12, 7, 9, 9,12,12,10,12,12,16,16,10,12,12,
- 16,17, 4, 7, 7, 9, 9, 7, 9, 9,12,12, 7, 9, 9,12,
- 12,10,12,12,17,16,10,12,12,16,16, 7,10, 9,13,13,
- 10,12,12,16,16,10,12,12,17,16,14,17,17,21,21,14,
- 16,17,21,22, 7,10,10,13,13,10,12,12,16,16,10,12,
- 12,16,17,14,17,16,19,20,14,16,16,19,21, 5, 7, 7,
- 10, 9, 7, 9, 9,12,12, 7, 9, 9,12,12,10,12,12,16,
- 17,10,12,12,17,16, 7, 9, 9,12,12, 9,12,12,14,14,
- 9,12,11,15,15,12,15,15,17,19,12,14,15,18,18, 7,
- 9, 9,12,12, 9,12,11,14,14, 9,12,12,14,14,12,15,
- 14,19,18,12,14,14,18,19,10,12,12,16,17,12,14,15,
- 18,19,12,15,15,18,19,17,17,19,19,22,17,19,19,20,
- 20,10,12,12,17,16,12,14,15,18,19,12,15,15,19,18,
- 16,18,17,21,20,17,19,19,20,21, 5, 7, 7, 9, 9, 7,
- 9, 9,12,12, 7, 9, 9,12,12,10,12,12,17,17,10,12,
- 12,17,16, 7, 9, 9,12,12, 9,12,12,14,14, 9,11,12,
- 14,14,12,14,15,19,19,12,14,14,18,18, 7, 9, 9,12,
- 12, 9,11,12,14,14, 9,12,11,14,14,12,14,15,18,20,
- 12,15,14,19,18,10,12,12,16,16,12,15,15,20,18,12,
- 14,14,19,19,16,19,19,21,20,16,18,20,21,20,10,12,
- 12,17,17,12,14,15,19,19,12,14,14,19,19,17,19,18,
- 20,21,16,19,17,20,20, 7,10,10,13,13,10,12,12,17,
- 17,10,12,12,17,17,13,16,17,21,21,13,16,17,20,20,
- 10,12,12,17,17,12,15,15,19,18,12,15,15,19,20,16,
- 19,18,20,21,17,19,18,20,21,10,12,12,17,16,12,15,
- 15,20,18,12,15,15,19,19,16,19,18,21,21,16,18,18,
- 21,21,14,17,17,20,19,17,18,18,21,21,17,18,19,21,
- 20,19,19,20,21,21,20,20,20,21,21,14,17,17,19,21,
- 16,19,18,21,19,17,19,19,21,20,21,20,19,21,20,20,
- 21,20,20,21, 7,10,10,13,13,10,12,12,17,17,10,12,
- 12,17,16,13,17,17,20,20,13,17,17,20,21,10,12,12,
- 16,17,12,15,15,19,18,12,15,15,21,18,17,19,18,21,
- 21,17,19,19,20,21,10,12,12,17,16,12,15,14,19,19,
- 12,15,14,20,19,16,19,18,20,21,17,19,18,21,20,14,
- 17,16,19,20,17,19,19,20,21,16,18,19,20,21,20,20,
- 21,21,21,20,21,21,21,21,14,17,17,19,21,17,19,19,
- 21,21,16,18,17,21,21,20,21,21,21,21,19,21,20,21,
- 21,
-};
-
-static float _vq_quantthresh_res0_128_1024_3[] = {
- -1.5, -0.5, 0.5, 1.5,
-};
-
-static long _vq_quantmap_res0_128_1024_3[] = {
- 3, 1, 0, 2, 4,
-};
-
-static encode_aux_threshmatch _vq_auxt_res0_128_1024_3 = {
- _vq_quantthresh_res0_128_1024_3,
- _vq_quantmap_res0_128_1024_3,
- 5,
- 5
-};
-
-static static_codebook _vq_book_res0_128_1024_3 = {
- 4, 625,
- _vq_lengthlist_res0_128_1024_3,
- 1, -533725184, 1611661312, 3, 0,
- _vq_quantlist_res0_128_1024_3,
- NULL,
- &_vq_auxt_res0_128_1024_3,
- NULL,
- 0
-};
-
-
-#endif
diff --git a/lib/books/res0_128_1024_4.vqh b/lib/books/res0_128_1024_4.vqh
deleted file mode 100644
index 3111f744..00000000
--- a/lib/books/res0_128_1024_4.vqh
+++ /dev/null
@@ -1,99 +0,0 @@
-/********************************************************************
- * *
- * 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_res0_128_1024_4_VQH_
-#define _V_res0_128_1024_4_VQH_
-#include "codebook.h"
-
-static long _vq_quantlist_res0_128_1024_4[] = {
- 2,
- 1,
- 3,
- 0,
- 4,
-};
-
-static long _vq_lengthlist_res0_128_1024_4[] = {
- 5, 6, 6, 8, 8, 6, 6, 6, 9, 9, 6, 6, 6, 9, 9, 8,
- 9, 9,11,11, 8, 9, 9,11,11, 6, 6, 6, 9, 9, 6, 7,
- 7,10,10, 6, 7, 7,10,10, 9,10,10,12,13, 9,10,10,
- 13,13, 6, 6, 6, 9, 9, 6, 7, 7,10,10, 6, 7, 7,10,
- 10, 9,10,10,13,12, 9,10,10,13,12, 8, 9, 9,12,12,
- 9,10,10,13,13, 9,10,10,13,13,12,13,13,15,15,12,
- 13,13,15,15, 8, 9, 9,12,12, 9,10,10,13,13, 9,10,
- 10,13,13,12,13,13,15,15,12,13,13,15,15, 6, 7, 7,
- 9, 9, 7, 8, 8,10,10, 6, 7, 8,10,10, 9,10,10,13,
- 13, 9,10,10,13,13, 6, 8, 7,10,10, 7, 8, 9,11,11,
- 7, 9, 9,11,11,10,11,11,14,14,10,11,11,14,13, 6,
- 8, 8,10,10, 7, 9, 8,11,11, 7, 9, 9,11,11,10,11,
- 11,14,14,10,11,11,14,14, 9,10,10,13,13,10,11,11,
- 14,14,10,11,11,14,14,13,13,14,15,17,13,14,14,17,
- 17, 9,10,10,13,14,10,11,11,15,14,10,11,11,14,14,
- 13,14,14,16,15,13,14,14,17,17, 6, 7, 7, 9, 9, 7,
- 7, 7,10,10, 7, 8, 7,10,10, 9,10,10,13,13, 9,10,
- 10,13,13, 6, 8, 7,10,10, 7, 9, 8,11,11, 7, 9, 9,
- 11,11,10,11,11,14,14,10,11,11,14,14, 6, 7, 8,10,
- 10, 7, 9, 9,11,11, 7, 9, 8,11,11,10,11,11,14,14,
- 10,11,11,14,14, 9,10,10,13,13,10,11,11,14,14,10,
- 11,11,14,14,13,14,14,16,16,13,14,15,16,16, 9,10,
- 10,13,13,10,11,11,14,14,10,11,11,14,14,13,14,14,
- 16,16,13,14,14,17,15, 8, 9,10,12,12, 9,11,11,14,
- 13, 9,10,10,13,13,12,14,14,16,16,12,14,13,16,16,
- 9,10,10,13,13,10,11,12,14,14,10,12,12,15,14,14,
- 14,15,16,17,14,14,15,17,17, 9,10,11,13,14,10,12,
- 11,14,14,10,11,12,14,14,13,15,15,17,16,13,14,15,
- 16,17,12,13,13,16,16,13,14,14,17,16,13,15,15,17,
- 17,15,16,17,18,18,17,17,17,18,20,12,14,13,16,16,
- 13,15,14,17,16,13,14,14,16,16,15,16,16,19,16,15,
- 17,17,18,19, 8, 9, 9,12,12, 9,10,10,13,13, 9,11,
- 10,14,13,12,14,13,16,16,12,13,14,16,15, 9,10,10,
- 14,13,10,12,11,15,14,10,11,12,15,15,13,14,14,17,
- 17,14,14,15,16,19, 9,10,10,13,14,10,11,12,14,15,
- 10,12,11,15,14,13,14,15,17,17,14,15,14,17,16,12,
- 14,13,16,16,13,15,14,17,17,13,14,14,16,17,16,16,
- 16,20,18,15,16,16,17,18,12,13,14,16,17,13,15,14,
- 18,17,13,14,14,16,17,16,17,16,20,19,15,18,16,20,
- 18,
-};
-
-static float _vq_quantthresh_res0_128_1024_4[] = {
- -1.5, -0.5, 0.5, 1.5,
-};
-
-static long _vq_quantmap_res0_128_1024_4[] = {
- 3, 1, 0, 2, 4,
-};
-
-static encode_aux_threshmatch _vq_auxt_res0_128_1024_4 = {
- _vq_quantthresh_res0_128_1024_4,
- _vq_quantmap_res0_128_1024_4,
- 5,
- 5
-};
-
-static static_codebook _vq_book_res0_128_1024_4 = {
- 4, 625,
- _vq_lengthlist_res0_128_1024_4,
- 1, -533725184, 1611661312, 3, 0,
- _vq_quantlist_res0_128_1024_4,
- NULL,
- &_vq_auxt_res0_128_1024_4,
- NULL,
- 0
-};
-
-
-#endif
diff --git a/lib/books/res0_128_1024_5.vqh b/lib/books/res0_128_1024_5.vqh
deleted file mode 100644
index d529b911..00000000
--- a/lib/books/res0_128_1024_5.vqh
+++ /dev/null
@@ -1,80 +0,0 @@
-/********************************************************************
- * *
- * 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_res0_128_1024_5_VQH_
-#define _V_res0_128_1024_5_VQH_
-#include "codebook.h"
-
-static long _vq_quantlist_res0_128_1024_5[] = {
- 6,
- 5,
- 7,
- 4,
- 8,
- 3,
- 9,
- 2,
- 10,
- 1,
- 11,
- 0,
- 12,
-};
-
-static long _vq_lengthlist_res0_128_1024_5[] = {
- 1, 4, 4, 6, 6, 6, 6, 8, 8, 9, 9,10,10, 4, 6, 6,
- 9, 9, 9, 9,11,11,12,12,13,13, 4, 6, 6, 9, 9, 9,
- 9,11,11,12,12,13,13, 6, 9, 9,12,11,12,12,14,14,
- 15,14,15,16, 6, 9, 9,12,11,12,12,13,13,14,15,16,
- 16, 6, 9, 9,12,12,14,14,15,15,16,17,16,17, 7, 9,
- 9,12,12,14,14,15,15,16,16,16,16, 8,11,11,14,14,
- 15,15,16,16,17,17,18,18, 8,11,11,14,14,15,15,16,
- 16,16,18,17,18, 9,12,12,15,15,16,16,17,17,18,17,
- 19,18, 9,13,13,15,15,16,16,17,16,17,17,19,18,10,
- 14,14,16,17,17,17,18,18,18,18,19,19,10,14,14,16,
- 16,17,17,18,18,21,21,20,19,
-};
-
-static float _vq_quantthresh_res0_128_1024_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,
-};
-
-static long _vq_quantmap_res0_128_1024_5[] = {
- 11, 9, 7, 5, 3, 1, 0, 2,
- 4, 6, 8, 10, 12,
-};
-
-static encode_aux_threshmatch _vq_auxt_res0_128_1024_5 = {
- _vq_quantthresh_res0_128_1024_5,
- _vq_quantmap_res0_128_1024_5,
- 13,
- 13
-};
-
-static static_codebook _vq_book_res0_128_1024_5 = {
- 2, 169,
- _vq_lengthlist_res0_128_1024_5,
- 1, -531103744, 1611661312, 4, 0,
- _vq_quantlist_res0_128_1024_5,
- NULL,
- &_vq_auxt_res0_128_1024_5,
- NULL,
- 0
-};
-
-
-#endif
diff --git a/lib/books/res0_128_1024_6.vqh b/lib/books/res0_128_1024_6.vqh
deleted file mode 100644
index c0aff00f..00000000
--- a/lib/books/res0_128_1024_6.vqh
+++ /dev/null
@@ -1,80 +0,0 @@
-/********************************************************************
- * *
- * 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_res0_128_1024_6_VQH_
-#define _V_res0_128_1024_6_VQH_
-#include "codebook.h"
-
-static long _vq_quantlist_res0_128_1024_6[] = {
- 6,
- 5,
- 7,
- 4,
- 8,
- 3,
- 9,
- 2,
- 10,
- 1,
- 11,
- 0,
- 12,
-};
-
-static long _vq_lengthlist_res0_128_1024_6[] = {
- 3, 4, 4, 5, 5, 6, 6, 7, 7, 8, 8, 9, 9, 4, 5, 5,
- 6, 6, 7, 7, 8, 8, 9, 9,10,10, 4, 5, 5, 6, 6, 7,
- 7, 8, 8, 9, 9,10,10, 6, 6, 6, 7, 7, 9, 9,10,10,
- 11,11,12,12, 5, 6, 6, 7, 7, 9, 9,10,10,11,11,12,
- 12, 7, 7, 7, 9, 9,10,10,11,11,12,12,13,13, 7, 7,
- 7, 9, 9,10,10,11,11,12,12,13,13, 8, 9, 9,10,10,
- 11,11,13,12,13,13,14,14, 8, 9, 9,10,10,11,11,12,
- 12,13,13,14,14, 9,10,10,11,11,12,13,13,13,14,14,
- 14,14, 9,10,10,11,11,12,12,13,13,14,14,15,14,10,
- 11,11,12,12,13,13,14,14,15,14,15,15,10,11,11,12,
- 12,13,13,14,14,15,15,15,15,
-};
-
-static float _vq_quantthresh_res0_128_1024_6[] = {
- -5.5, -4.5, -3.5, -2.5, -1.5, -0.5, 0.5, 1.5,
- 2.5, 3.5, 4.5, 5.5,
-};
-
-static long _vq_quantmap_res0_128_1024_6[] = {
- 11, 9, 7, 5, 3, 1, 0, 2,
- 4, 6, 8, 10, 12,
-};
-
-static encode_aux_threshmatch _vq_auxt_res0_128_1024_6 = {
- _vq_quantthresh_res0_128_1024_6,
- _vq_quantmap_res0_128_1024_6,
- 13,
- 13
-};
-
-static static_codebook _vq_book_res0_128_1024_6 = {
- 2, 169,
- _vq_lengthlist_res0_128_1024_6,
- 1, -531103744, 1611661312, 4, 0,
- _vq_quantlist_res0_128_1024_6,
- NULL,
- &_vq_auxt_res0_128_1024_6,
- NULL,
- 0
-};
-
-
-#endif
diff --git a/lib/books/res0_128_1024_7.vqh b/lib/books/res0_128_1024_7.vqh
deleted file mode 100644
index 32de71cb..00000000
--- a/lib/books/res0_128_1024_7.vqh
+++ /dev/null
@@ -1,124 +0,0 @@
-/********************************************************************
- * *
- * 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_res0_128_1024_7_VQH_
-#define _V_res0_128_1024_7_VQH_
-#include "codebook.h"
-
-static long _vq_quantlist_res0_128_1024_7[] = {
- 12,
- 11,
- 13,
- 10,
- 14,
- 9,
- 15,
- 8,
- 16,
- 7,
- 17,
- 6,
- 18,
- 5,
- 19,
- 4,
- 20,
- 3,
- 21,
- 2,
- 22,
- 1,
- 23,
- 0,
- 24,
-};
-
-static long _vq_lengthlist_res0_128_1024_7[] = {
- 2, 4, 4, 6, 6, 7, 7, 7, 7, 8, 8, 8, 8, 8, 8, 8,
- 8, 9, 9, 9, 9, 9, 9,10,10, 4, 6, 6, 7, 7, 8, 8,
- 9, 9, 9, 9,10,10, 9, 9,10,10,10,10,11,11,11,11,
- 12,12, 4, 6, 6, 7, 7, 8, 8, 9, 9, 9, 9,10,10, 9,
- 9,10,10,10,10,11,11,11,11,12,12, 6, 7, 7, 9, 9,
- 9, 9,10,10,11,11,11,11,11,11,11,11,12,12,12,12,
- 13,13,13,13, 6, 7, 7, 8, 8, 9, 9,10,10,11,10,11,
- 11,11,11,11,11,12,12,12,12,13,13,13,13, 7, 8, 8,
- 9,10,10,10,11,11,11,12,12,12,12,12,12,12,13,13,
- 13,13,13,13,14,14, 7, 8, 8,10,10,10,10,11,11,11,
- 12,12,12,12,12,12,12,13,13,13,13,14,13,14,14, 8,
- 9, 9,10,10,11,11,12,12,13,12,13,13,13,13,13,13,
- 14,14,14,14,14,14,15,15, 8, 9, 9,10,10,11,11,12,
- 12,12,12,13,13,13,13,13,13,13,14,14,14,14,14,15,
- 15, 8,10,10,11,11,12,12,13,13,13,13,13,13,13,14,
- 14,14,15,14,14,15,15,15,15,15, 8,10,10,11,11,12,
- 12,13,13,13,13,13,13,13,13,14,14,14,14,14,15,15,
- 15,16,15, 9,10,10,11,12,12,12,13,13,14,14,14,14,
- 14,14,14,14,15,15,15,15,15,16,16,16, 9,10,10,12,
- 11,13,12,13,13,14,14,14,14,14,14,14,14,15,14,15,
- 15,16,15,16,16, 8,10,10,12,12,12,13,13,13,14,14,
- 14,14,14,14,15,15,15,15,15,16,16,16,16,17, 8,10,
- 10,12,11,12,12,13,13,14,14,14,14,14,14,15,15,15,
- 15,15,15,16,16,16,16, 9,11,11,12,12,13,13,14,13,
- 14,14,15,14,15,15,15,15,15,16,16,16,16,16,17,16,
- 9,11,11,12,12,13,13,14,14,14,14,14,14,15,14,15,
- 15,15,15,16,16,16,16,17,17, 9,11,11,13,13,14,14,
- 14,14,15,14,15,15,15,15,15,15,16,16,16,16,16,17,
- 17,17, 9,11,11,12,13,13,13,14,14,14,15,15,15,15,
- 15,15,16,17,16,16,17,16,16,17,17,10,12,11,13,13,
- 14,14,14,15,15,15,15,15,15,16,16,17,16,16,16,17,
- 17,17,17,18,10,12,12,13,13,14,14,15,14,15,15,15,
- 15,16,16,17,16,16,16,16,17,17,18,17,17,10,12,12,
- 14,13,15,15,15,15,16,15,16,16,16,16,17,16,17,16,
- 16,16,17,17,17,17,10,12,12,14,14,15,15,15,15,16,
- 15,16,16,17,16,16,17,17,16,17,17,16,17,18,18,11,
- 12,13,14,14,15,15,15,15,16,15,16,16,17,16,17,17,
- 18,17,18,18,18,17,18,18,11,13,13,14,14,14,15,15,
- 16,16,16,16,16,16,16,17,16,17,16,17,17,18,17,17,
- 18,
-};
-
-static float _vq_quantthresh_res0_128_1024_7[] = {
- -11.5, -10.5, -9.5, -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, 9.5, 10.5, 11.5,
-};
-
-static long _vq_quantmap_res0_128_1024_7[] = {
- 23, 21, 19, 17, 15, 13, 11, 9,
- 7, 5, 3, 1, 0, 2, 4, 6,
- 8, 10, 12, 14, 16, 18, 20, 22,
- 24,
-};
-
-static encode_aux_threshmatch _vq_auxt_res0_128_1024_7 = {
- _vq_quantthresh_res0_128_1024_7,
- _vq_quantmap_res0_128_1024_7,
- 25,
- 25
-};
-
-static static_codebook _vq_book_res0_128_1024_7 = {
- 2, 625,
- _vq_lengthlist_res0_128_1024_7,
- 1, -529006592, 1611661312, 5, 0,
- _vq_quantlist_res0_128_1024_7,
- NULL,
- &_vq_auxt_res0_128_1024_7,
- NULL,
- 0
-};
-
-
-#endif
diff --git a/lib/books/res0_128_1024_8.vqh b/lib/books/res0_128_1024_8.vqh
deleted file mode 100644
index 0c454093..00000000
--- a/lib/books/res0_128_1024_8.vqh
+++ /dev/null
@@ -1,110 +0,0 @@
-/********************************************************************
- * *
- * 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_res0_128_1024_8_VQH_
-#define _V_res0_128_1024_8_VQH_
-#include "codebook.h"
-
-static long _vq_quantlist_res0_128_1024_8[] = {
- 21,
- 20,
- 22,
- 19,
- 23,
- 18,
- 24,
- 17,
- 25,
- 16,
- 26,
- 15,
- 27,
- 14,
- 28,
- 13,
- 29,
- 12,
- 30,
- 11,
- 31,
- 10,
- 32,
- 9,
- 33,
- 8,
- 34,
- 7,
- 35,
- 6,
- 36,
- 5,
- 37,
- 4,
- 38,
- 3,
- 39,
- 2,
- 40,
- 1,
- 41,
- 0,
- 42,
-};
-
-static long _vq_lengthlist_res0_128_1024_8[] = {
- 2, 3, 3, 4, 4, 5, 5, 5, 5, 6, 6, 6, 6, 6, 6, 6,
- 6, 7, 7, 7, 7, 7, 7, 8, 8, 7, 7, 7, 7, 8, 8, 8,
- 8, 8, 8, 9, 9, 9, 9, 9, 9, 9, 9,
-};
-
-static float _vq_quantthresh_res0_128_1024_8[] = {
- -20.5, -19.5, -18.5, -17.5, -16.5, -15.5, -14.5, -13.5,
- -12.5, -11.5, -10.5, -9.5, -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, 9.5, 10.5,
- 11.5, 12.5, 13.5, 14.5, 15.5, 16.5, 17.5, 18.5,
- 19.5, 20.5,
-};
-
-static long _vq_quantmap_res0_128_1024_8[] = {
- 41, 39, 37, 35, 33, 31, 29, 27,
- 25, 23, 21, 19, 17, 15, 13, 11,
- 9, 7, 5, 3, 1, 0, 2, 4,
- 6, 8, 10, 12, 14, 16, 18, 20,
- 22, 24, 26, 28, 30, 32, 34, 36,
- 38, 40, 42,
-};
-
-static encode_aux_threshmatch _vq_auxt_res0_128_1024_8 = {
- _vq_quantthresh_res0_128_1024_8,
- _vq_quantmap_res0_128_1024_8,
- 43,
- 43
-};
-
-static static_codebook _vq_book_res0_128_1024_8 = {
- 1, 43,
- _vq_lengthlist_res0_128_1024_8,
- 1, -527106048, 1611661312, 6, 0,
- _vq_quantlist_res0_128_1024_8,
- NULL,
- &_vq_auxt_res0_128_1024_8,
- NULL,
- 0
-};
-
-
-#endif
diff --git a/lib/books/res0_128_1024_9.vqh b/lib/books/res0_128_1024_9.vqh
deleted file mode 100644
index 963cf0ce..00000000
--- a/lib/books/res0_128_1024_9.vqh
+++ /dev/null
@@ -1,501 +0,0 @@
-/********************************************************************
- * *
- * 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_res0_128_1024_9_VQH_
-#define _V_res0_128_1024_9_VQH_
-#include "codebook.h"
-
-static long _vq_quantlist_res0_128_1024_9[] = {
- 170,
- 169,
- 171,
- 168,
- 172,
- 167,
- 173,
- 166,
- 174,
- 165,
- 175,
- 164,
- 176,
- 163,
- 177,
- 162,
- 178,
- 161,
- 179,
- 160,
- 180,
- 159,
- 181,
- 158,
- 182,
- 157,
- 183,
- 156,
- 184,
- 155,
- 185,
- 154,
- 186,
- 153,
- 187,
- 152,
- 188,
- 151,
- 189,
- 150,
- 190,
- 149,
- 191,
- 148,
- 192,
- 147,
- 193,
- 146,
- 194,
- 145,
- 195,
- 144,
- 196,
- 143,
- 197,
- 142,
- 198,
- 141,
- 199,
- 140,
- 200,
- 139,
- 201,
- 138,
- 202,
- 137,
- 203,
- 136,
- 204,
- 135,
- 205,
- 134,
- 206,
- 133,
- 207,
- 132,
- 208,
- 131,
- 209,
- 130,
- 210,
- 129,
- 211,
- 128,
- 212,
- 127,
- 213,
- 126,
- 214,
- 125,
- 215,
- 124,
- 216,
- 123,
- 217,
- 122,
- 218,
- 121,
- 219,
- 120,
- 220,
- 119,
- 221,
- 118,
- 222,
- 117,
- 223,
- 116,
- 224,
- 115,
- 225,
- 114,
- 226,
- 113,
- 227,
- 112,
- 228,
- 111,
- 229,
- 110,
- 230,
- 109,
- 231,
- 108,
- 232,
- 107,
- 233,
- 106,
- 234,
- 105,
- 235,
- 104,
- 236,
- 103,
- 237,
- 102,
- 238,
- 101,
- 239,
- 100,
- 240,
- 99,
- 241,
- 98,
- 242,
- 97,
- 243,
- 96,
- 244,
- 95,
- 245,
- 94,
- 246,
- 93,
- 247,
- 92,
- 248,
- 91,
- 249,
- 90,
- 250,
- 89,
- 251,
- 88,
- 252,
- 87,
- 253,
- 86,
- 254,
- 85,
- 255,
- 84,
- 256,
- 83,
- 257,
- 82,
- 258,
- 81,
- 259,
- 80,
- 260,
- 79,
- 261,
- 78,
- 262,
- 77,
- 263,
- 76,
- 264,
- 75,
- 265,
- 74,
- 266,
- 73,
- 267,
- 72,
- 268,
- 71,
- 269,
- 70,
- 270,
- 69,
- 271,
- 68,
- 272,
- 67,
- 273,
- 66,
- 274,
- 65,
- 275,
- 64,
- 276,
- 63,
- 277,
- 62,
- 278,
- 61,
- 279,
- 60,
- 280,
- 59,
- 281,
- 58,
- 282,
- 57,
- 283,
- 56,
- 284,
- 55,
- 285,
- 54,
- 286,
- 53,
- 287,
- 52,
- 288,
- 51,
- 289,
- 50,
- 290,
- 49,
- 291,
- 48,
- 292,
- 47,
- 293,
- 46,
- 294,
- 45,
- 295,
- 44,
- 296,
- 43,
- 297,
- 42,
- 298,
- 41,
- 299,
- 40,
- 300,
- 39,
- 301,
- 38,
- 302,
- 37,
- 303,
- 36,
- 304,
- 35,
- 305,
- 34,
- 306,
- 33,
- 307,
- 32,
- 308,
- 31,
- 309,
- 30,
- 310,
- 29,
- 311,
- 28,
- 312,
- 27,
- 313,
- 26,
- 314,
- 25,
- 315,
- 24,
- 316,
- 23,
- 317,
- 22,
- 318,
- 21,
- 319,
- 20,
- 320,
- 19,
- 321,
- 18,
- 322,
- 17,
- 323,
- 16,
- 324,
- 15,
- 325,
- 14,
- 326,
- 13,
- 327,
- 12,
- 328,
- 11,
- 329,
- 10,
- 330,
- 9,
- 331,
- 8,
- 332,
- 7,
- 333,
- 6,
- 334,
- 5,
- 335,
- 4,
- 336,
- 3,
- 337,
- 2,
- 338,
- 1,
- 339,
- 0,
- 340,
-};
-
-static long _vq_lengthlist_res0_128_1024_9[] = {
- 3, 3, 3, 4, 4, 5, 5, 5, 5, 5, 5, 6, 6, 6, 6, 6,
- 6, 6, 6, 7, 6, 7, 7, 7, 7, 7, 7, 7, 7, 8, 8, 8,
- 8, 8, 8, 8, 8, 8, 8, 9, 9, 9, 9, 9, 9, 9, 9, 9,
- 9, 9, 9, 9, 9, 9, 9, 9,10,10,10,10,10,10,10,10,
- 10,10,10,10,10,11,10,11,11,11,11,11,11,11,11,11,
- 11,11,11,12,11,12,12,12,12,12,12,12,12,12,12,12,
- 12,12,12,13,13,13,13,13,13,13,13,13,13,13,13,13,
- 13,13,13,13,13,13,13,14,14,13,14,13,14,14,14,14,
- 14,14,14,14,14,14,14,14,15,15,15,14,15,15,15,15,
- 15,15,15,15,15,15,15,15,16,15,15,15,15,15,15,15,
- 15,15,15,16,16,16,16,16,16,16,17,16,16,17,17,16,
- 16,16,16,16,16,16,16,16,16,16,17,17,17,17,17,18,
- 17,17,17,17,18,17,18,18,17,17,18,17,17,19,20,18,
- 19,18,18,17,18,17,18,17,18,18,19,18,18,18,19,19,
- 18,19,19,20,18,19,19,18,19,19,17,19,19,19,20,19,
- 20,20,20,20,19,19,19,19,20,20,19,19,20,18,20,19,
- 20,20,19,19,20,20,19,20,19,20,20,20,19,20,20,19,
- 20,18,20,20,20,20,20,20,20,20,20,19,20,20,20,19,
- 20,20,20,20,20,20,19,20,19,20,20,20,20,20,20,20,
- 19,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,
- 20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,
- 20,19,19,20,20,
-};
-
-static float _vq_quantthresh_res0_128_1024_9[] = {
- -169.5, -168.5, -167.5, -166.5, -165.5, -164.5, -163.5, -162.5,
- -161.5, -160.5, -159.5, -158.5, -157.5, -156.5, -155.5, -154.5,
- -153.5, -152.5, -151.5, -150.5, -149.5, -148.5, -147.5, -146.5,
- -145.5, -144.5, -143.5, -142.5, -141.5, -140.5, -139.5, -138.5,
- -137.5, -136.5, -135.5, -134.5, -133.5, -132.5, -131.5, -130.5,
- -129.5, -128.5, -127.5, -126.5, -125.5, -124.5, -123.5, -122.5,
- -121.5, -120.5, -119.5, -118.5, -117.5, -116.5, -115.5, -114.5,
- -113.5, -112.5, -111.5, -110.5, -109.5, -108.5, -107.5, -106.5,
- -105.5, -104.5, -103.5, -102.5, -101.5, -100.5, -99.5, -98.5,
- -97.5, -96.5, -95.5, -94.5, -93.5, -92.5, -91.5, -90.5,
- -89.5, -88.5, -87.5, -86.5, -85.5, -84.5, -83.5, -82.5,
- -81.5, -80.5, -79.5, -78.5, -77.5, -76.5, -75.5, -74.5,
- -73.5, -72.5, -71.5, -70.5, -69.5, -68.5, -67.5, -66.5,
- -65.5, -64.5, -63.5, -62.5, -61.5, -60.5, -59.5, -58.5,
- -57.5, -56.5, -55.5, -54.5, -53.5, -52.5, -51.5, -50.5,
- -49.5, -48.5, -47.5, -46.5, -45.5, -44.5, -43.5, -42.5,
- -41.5, -40.5, -39.5, -38.5, -37.5, -36.5, -35.5, -34.5,
- -33.5, -32.5, -31.5, -30.5, -29.5, -28.5, -27.5, -26.5,
- -25.5, -24.5, -23.5, -22.5, -21.5, -20.5, -19.5, -18.5,
- -17.5, -16.5, -15.5, -14.5, -13.5, -12.5, -11.5, -10.5,
- -9.5, -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, 9.5, 10.5, 11.5, 12.5, 13.5,
- 14.5, 15.5, 16.5, 17.5, 18.5, 19.5, 20.5, 21.5,
- 22.5, 23.5, 24.5, 25.5, 26.5, 27.5, 28.5, 29.5,
- 30.5, 31.5, 32.5, 33.5, 34.5, 35.5, 36.5, 37.5,
- 38.5, 39.5, 40.5, 41.5, 42.5, 43.5, 44.5, 45.5,
- 46.5, 47.5, 48.5, 49.5, 50.5, 51.5, 52.5, 53.5,
- 54.5, 55.5, 56.5, 57.5, 58.5, 59.5, 60.5, 61.5,
- 62.5, 63.5, 64.5, 65.5, 66.5, 67.5, 68.5, 69.5,
- 70.5, 71.5, 72.5, 73.5, 74.5, 75.5, 76.5, 77.5,
- 78.5, 79.5, 80.5, 81.5, 82.5, 83.5, 84.5, 85.5,
- 86.5, 87.5, 88.5, 89.5, 90.5, 91.5, 92.5, 93.5,
- 94.5, 95.5, 96.5, 97.5, 98.5, 99.5, 100.5, 101.5,
- 102.5, 103.5, 104.5, 105.5, 106.5, 107.5, 108.5, 109.5,
- 110.5, 111.5, 112.5, 113.5, 114.5, 115.5, 116.5, 117.5,
- 118.5, 119.5, 120.5, 121.5, 122.5, 123.5, 124.5, 125.5,
- 126.5, 127.5, 128.5, 129.5, 130.5, 131.5, 132.5, 133.5,
- 134.5, 135.5, 136.5, 137.5, 138.5, 139.5, 140.5, 141.5,
- 142.5, 143.5, 144.5, 145.5, 146.5, 147.5, 148.5, 149.5,
- 150.5, 151.5, 152.5, 153.5, 154.5, 155.5, 156.5, 157.5,
- 158.5, 159.5, 160.5, 161.5, 162.5, 163.5, 164.5, 165.5,
- 166.5, 167.5, 168.5, 169.5,
-};
-
-static long _vq_quantmap_res0_128_1024_9[] = {
- 339, 337, 335, 333, 331, 329, 327, 325,
- 323, 321, 319, 317, 315, 313, 311, 309,
- 307, 305, 303, 301, 299, 297, 295, 293,
- 291, 289, 287, 285, 283, 281, 279, 277,
- 275, 273, 271, 269, 267, 265, 263, 261,
- 259, 257, 255, 253, 251, 249, 247, 245,
- 243, 241, 239, 237, 235, 233, 231, 229,
- 227, 225, 223, 221, 219, 217, 215, 213,
- 211, 209, 207, 205, 203, 201, 199, 197,
- 195, 193, 191, 189, 187, 185, 183, 181,
- 179, 177, 175, 173, 171, 169, 167, 165,
- 163, 161, 159, 157, 155, 153, 151, 149,
- 147, 145, 143, 141, 139, 137, 135, 133,
- 131, 129, 127, 125, 123, 121, 119, 117,
- 115, 113, 111, 109, 107, 105, 103, 101,
- 99, 97, 95, 93, 91, 89, 87, 85,
- 83, 81, 79, 77, 75, 73, 71, 69,
- 67, 65, 63, 61, 59, 57, 55, 53,
- 51, 49, 47, 45, 43, 41, 39, 37,
- 35, 33, 31, 29, 27, 25, 23, 21,
- 19, 17, 15, 13, 11, 9, 7, 5,
- 3, 1, 0, 2, 4, 6, 8, 10,
- 12, 14, 16, 18, 20, 22, 24, 26,
- 28, 30, 32, 34, 36, 38, 40, 42,
- 44, 46, 48, 50, 52, 54, 56, 58,
- 60, 62, 64, 66, 68, 70, 72, 74,
- 76, 78, 80, 82, 84, 86, 88, 90,
- 92, 94, 96, 98, 100, 102, 104, 106,
- 108, 110, 112, 114, 116, 118, 120, 122,
- 124, 126, 128, 130, 132, 134, 136, 138,
- 140, 142, 144, 146, 148, 150, 152, 154,
- 156, 158, 160, 162, 164, 166, 168, 170,
- 172, 174, 176, 178, 180, 182, 184, 186,
- 188, 190, 192, 194, 196, 198, 200, 202,
- 204, 206, 208, 210, 212, 214, 216, 218,
- 220, 222, 224, 226, 228, 230, 232, 234,
- 236, 238, 240, 242, 244, 246, 248, 250,
- 252, 254, 256, 258, 260, 262, 264, 266,
- 268, 270, 272, 274, 276, 278, 280, 282,
- 284, 286, 288, 290, 292, 294, 296, 298,
- 300, 302, 304, 306, 308, 310, 312, 314,
- 316, 318, 320, 322, 324, 326, 328, 330,
- 332, 334, 336, 338, 340,
-};
-
-static encode_aux_threshmatch _vq_auxt_res0_128_1024_9 = {
- _vq_quantthresh_res0_128_1024_9,
- _vq_quantmap_res0_128_1024_9,
- 341,
- 341
-};
-
-static static_codebook _vq_book_res0_128_1024_9 = {
- 1, 341,
- _vq_lengthlist_res0_128_1024_9,
- 1, -520798208, 1611661312, 9, 0,
- _vq_quantlist_res0_128_1024_9,
- NULL,
- &_vq_auxt_res0_128_1024_9,
- NULL,
- 0
-};
-
-
-#endif
diff --git a/lib/books/res0_128_1024aux.vqh b/lib/books/res0_128_1024aux.vqh
deleted file mode 100644
index b84f1590..00000000
--- a/lib/books/res0_128_1024aux.vqh
+++ /dev/null
@@ -1,43 +0,0 @@
-/********************************************************************
- * *
- * 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 huff/huffbuld
-
- ********************************************************************/
-
-#ifndef _V_res0_128_1024aux_VQH_
-#define _V_res0_128_1024aux_VQH_
-#include "codebook.h"
-
-static long _huff_lengthlist_res0_128_1024aux[] = {
- 3, 6,10, 9,12, 9,15,12,15,20, 5, 3, 4, 5, 7, 6,
- 12,11,12,15, 9, 4, 4, 5, 6, 8,11,13,16,17, 8, 4,
- 5, 5, 7, 6,11,10,13,16,12, 7, 6, 7, 8, 9,10,12,
- 16,20, 8, 6, 7, 6, 9, 6,10, 9,12,19,14,10, 9, 8,
- 7, 7, 8, 9,12,18, 9, 9,10, 8, 9, 6, 8, 7, 9,15,
- 11,11,12,10,10, 8, 7, 6, 8,13,12,12,13,12,11,10,
- 6, 6, 7,12,
-};
-
-static static_codebook _huff_book_res0_128_1024aux = {
- 2, 100,
- _huff_lengthlist_res0_128_1024aux,
- 0, 0, 0, 0, 0,
- NULL,
- NULL,
- NULL,
- 0
-};
-
-
-#endif
diff --git a/lib/books/res0_128_128_1.vqh b/lib/books/res0_128_128_1.vqh
deleted file mode 100644
index 931c5351..00000000
--- a/lib/books/res0_128_128_1.vqh
+++ /dev/null
@@ -1,63 +0,0 @@
-/********************************************************************
- * *
- * 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_res0_128_128_1_VQH_
-#define _V_res0_128_128_1_VQH_
-#include "codebook.h"
-
-static long _vq_quantlist_res0_128_128_1[] = {
- 1,
- 0,
- 2,
-};
-
-static long _vq_lengthlist_res0_128_128_1[] = {
- 3, 4, 4, 4, 6, 6, 4, 6, 6, 5, 6, 6, 6, 8, 8, 6,
- 8, 8, 5, 6, 6, 6, 8, 8, 6, 8, 8, 5, 6, 6, 7, 8,
- 8, 6, 8, 8, 7, 8, 8, 8, 9,10, 8,10, 9, 6, 8, 8,
- 8,10, 9, 8, 9,10, 5, 6, 6, 6, 8, 8, 7, 8, 8, 6,
- 8, 8, 8,10, 9, 8, 9,10, 6, 8, 8, 8, 9,10, 8,10,
- 9,
-};
-
-static float _vq_quantthresh_res0_128_128_1[] = {
- -0.5, 0.5,
-};
-
-static long _vq_quantmap_res0_128_128_1[] = {
- 1, 0, 2,
-};
-
-static encode_aux_threshmatch _vq_auxt_res0_128_128_1 = {
- _vq_quantthresh_res0_128_128_1,
- _vq_quantmap_res0_128_128_1,
- 3,
- 3
-};
-
-static static_codebook _vq_book_res0_128_128_1 = {
- 4, 81,
- _vq_lengthlist_res0_128_128_1,
- 1, -535822336, 1611661312, 2, 0,
- _vq_quantlist_res0_128_128_1,
- NULL,
- &_vq_auxt_res0_128_128_1,
- NULL,
- 0
-};
-
-
-#endif
diff --git a/lib/books/res0_128_128_2.vqh b/lib/books/res0_128_128_2.vqh
deleted file mode 100644
index cbe0aa8a..00000000
--- a/lib/books/res0_128_128_2.vqh
+++ /dev/null
@@ -1,65 +0,0 @@
-/********************************************************************
- * *
- * 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_res0_128_128_2_VQH_
-#define _V_res0_128_128_2_VQH_
-#include "codebook.h"
-
-static long _vq_quantlist_res0_128_128_2[] = {
- 3,
- 2,
- 4,
- 1,
- 5,
- 0,
- 6,
-};
-
-static long _vq_lengthlist_res0_128_128_2[] = {
- 2, 3, 3, 6, 6, 9, 9, 3, 5, 5, 7, 7,10,10, 3, 5,
- 5, 7, 7,10,10, 6, 8, 8,11,11,14,14, 6, 8, 8,12,
- 12,14,14, 9,11,11,15,14,16,16, 9,11,11,15,15,15,
- 15,
-};
-
-static float _vq_quantthresh_res0_128_128_2[] = {
- -2.5, -1.5, -0.5, 0.5, 1.5, 2.5,
-};
-
-static long _vq_quantmap_res0_128_128_2[] = {
- 5, 3, 1, 0, 2, 4, 6,
-};
-
-static encode_aux_threshmatch _vq_auxt_res0_128_128_2 = {
- _vq_quantthresh_res0_128_128_2,
- _vq_quantmap_res0_128_128_2,
- 7,
- 7
-};
-
-static static_codebook _vq_book_res0_128_128_2 = {
- 2, 49,
- _vq_lengthlist_res0_128_128_2,
- 1, -533200896, 1611661312, 3, 0,
- _vq_quantlist_res0_128_128_2,
- NULL,
- &_vq_auxt_res0_128_128_2,
- NULL,
- 0
-};
-
-
-#endif
diff --git a/lib/books/res0_128_128_3.vqh b/lib/books/res0_128_128_3.vqh
deleted file mode 100644
index 1e41aa8a..00000000
--- a/lib/books/res0_128_128_3.vqh
+++ /dev/null
@@ -1,152 +0,0 @@
-/********************************************************************
- * *
- * 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_res0_128_128_3_VQH_
-#define _V_res0_128_128_3_VQH_
-#include "codebook.h"
-
-static long _vq_quantlist_res0_128_128_3[] = {
- 15,
- 14,
- 16,
- 13,
- 17,
- 12,
- 18,
- 11,
- 19,
- 10,
- 20,
- 9,
- 21,
- 8,
- 22,
- 7,
- 23,
- 6,
- 24,
- 5,
- 25,
- 4,
- 26,
- 3,
- 27,
- 2,
- 28,
- 1,
- 29,
- 0,
- 30,
-};
-
-static long _vq_lengthlist_res0_128_128_3[] = {
- 3, 4, 4, 6, 6, 7, 7, 7, 7, 7, 8, 8, 8, 8, 8, 8,
- 8, 8, 8, 8, 8, 9, 8, 9, 9,10, 9,10,10,11,10, 4,
- 5, 5, 6, 6, 7, 7, 8, 8, 8, 8, 8, 8, 8, 9, 8, 9,
- 9, 8, 9, 9, 9, 9, 9, 9,10, 9,10,10,11,10, 4, 5,
- 5, 6, 6, 7, 7, 8, 8, 8, 8, 8, 8, 8, 8, 8, 9, 8,
- 9, 9, 9, 9, 9,10, 9,10, 9,10,10,11,10, 7, 7, 7,
- 9, 9, 9, 9,10,10,10,10,10,11,10,11,10,11,10,10,
- 11,11,11,11,11,11,12,12,12,12,13,12, 7, 7, 7, 9,
- 8, 9, 9,10,10,10,10,10,10,10,11,10,11,10,10,11,
- 11,11,11,11,11,11,11,12,12,13,13, 9, 9, 9,10,10,
- 11,11,11,12,11,12,12,12,11,12,12,12,12,12,12,12,
- 12,12,13,13,13,13,13,13,14,14, 8, 9, 9,10,10,11,
- 11,11,12,12,12,12,12,12,12,12,12,12,12,12,12,13,
- 13,13,12,13,13,13,13,14,14, 9,10,10,11,12,13,12,
- 13,13,13,13,13,14,13,14,13,14,13,14,13,13,14,14,
- 15,14,15,14,15,14,15,16, 9,10,10,11,11,12,13,13,
- 13,13,13,13,13,13,13,13,13,13,13,13,13,14,14,14,
- 14,15,14,15,14,15,15,10,11,11,12,13,13,13,14,14,
- 14,15,14,14,14,14,14,14,14,15,14,14,14,15,15,16,
- 15,17,16,16,15,15,10,11,11,13,13,13,13,13,14,13,
- 14,14,14,14,14,15,14,15,14,15,14,15,14,15,16,16,
- 15,16,15,15,16,11,12,12,13,14,14,14,15,14,14,15,
- 15,15,15,15,15,15,15,14,16,15,16,16,16,16,16,15,
- 17,15,16,17,11,12,12,14,13,14,15,14,15,14,15,14,
- 15,16,16,15,15,15,15,16,15,16,16,18,15,17,15,17,
- 15,18,16,12,13,13,14,14,14,15,15,16,16,15,15,16,
- 15,16,16,16,15,15,16,16,17,16,17,16,17,15,17,17,
- 17,18,12,13,12,15,14,15,14,17,15,16,16,16,16,16,
- 16,15,15,16,15,16,16,16,15,16,15,17,17,18,16,16,
- 18,13,14,13,14,14,15,15,16,16,15,16,16,16,16,17,
- 16,16,16,17,16,16,16,16,17,16,17,18,18,17,17,18,
- 14,13,13,15,15,15,15,17,15,16,18,15,17,16,17,15,
- 16,16,16,17,16,16,16,16,15,17,17,18,18,17,17,13,
- 14,14,16,16,18,16,16,16,16,18,18,17,16,18,16,16,
- 16,16,17,16,16,16,18,16,17,17,16,17,17,18,13,14,
- 14,15,15,17,16,17,16,17,16,18,17,16,16,16,17,17,
- 17,16,17,16,16,17,17,18,16,17,18,18,17,15,15,15,
- 16,15,18,17,18,17,16,18,16,17,16,16,18,17,18,17,
- 18,16,18,17,18,18,18,18,18,17,18,18,13,15,15,16,
- 16,16,16,17,16,17,17,17,16,16,17,16,16,17,18,17,
- 17,16,17,18,17,18,17,18,17,18,18,16,14,15,16,16,
- 17,17,17,16,16,17,18,18,18,18,16,17,18,18,18,17,
- 18,17,18,18,18,18,17,18,18,18,15,15,15,16,16,18,
- 18,17,18,18,18,18,18,16,18,16,18,16,18,18,16,17,
- 17,18,17,18,16,18,18,17,18,15,15,15,16,16,17,17,
- 16,17,18,16,18,17,18,18,17,18,17,18,18,16,18,18,
- 18,18,17,18,17,18,18,18,17,15,15,16,16,17,18,16,
- 17,18,18,18,18,18,18,17,18,18,18,17,18,18,16,18,
- 18,17,18,18,18,18,17,16,16,16,18,18,17,18,17,17,
- 18,18,18,18,18,18,18,18,16,18,18,18,18,17,18,18,
- 18,18,18,18,18,18,16,15,16,15,18,18,16,18,18,18,
- 16,17,18,18,16,18,17,17,16,18,17,17,18,18,16,18,
- 18,18,18,18,17,17,16,18,18,18,16,17,18,18,18,18,
- 17,18,18,18,18,18,18,17,18,17,18,17,18,17,18,18,
- 18,18,18,18,15,17,16,17,18,18,18,18,18,18,18,18,
- 18,17,16,18,18,17,18,17,17,18,18,18,18,18,18,18,
- 18,18,18,16,16,17,17,18,17,18,18,18,18,18,18,18,
- 18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,
- 18,18,16,17,18,17,16,18,17,16,18,18,18,18,18,18,
- 18,18,18,18,18,18,18,18,18,18,18,18,17,18,18,18,
- 18,
-};
-
-static float _vq_quantthresh_res0_128_128_3[] = {
- -14.5, -13.5, -12.5, -11.5, -10.5, -9.5, -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,
- 9.5, 10.5, 11.5, 12.5, 13.5, 14.5,
-};
-
-static long _vq_quantmap_res0_128_128_3[] = {
- 29, 27, 25, 23, 21, 19, 17, 15,
- 13, 11, 9, 7, 5, 3, 1, 0,
- 2, 4, 6, 8, 10, 12, 14, 16,
- 18, 20, 22, 24, 26, 28, 30,
-};
-
-static encode_aux_threshmatch _vq_auxt_res0_128_128_3 = {
- _vq_quantthresh_res0_128_128_3,
- _vq_quantmap_res0_128_128_3,
- 31,
- 31
-};
-
-static static_codebook _vq_book_res0_128_128_3 = {
- 2, 961,
- _vq_lengthlist_res0_128_128_3,
- 1, -528613376, 1611661312, 5, 0,
- _vq_quantlist_res0_128_128_3,
- NULL,
- &_vq_auxt_res0_128_128_3,
- NULL,
- 0
-};
-
-
-#endif
diff --git a/lib/books/res0_128_128_4.vqh b/lib/books/res0_128_128_4.vqh
deleted file mode 100644
index 335a6990..00000000
--- a/lib/books/res0_128_128_4.vqh
+++ /dev/null
@@ -1,123 +0,0 @@
-/********************************************************************
- * *
- * 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_res0_128_128_4_VQH_
-#define _V_res0_128_128_4_VQH_
-#include "codebook.h"
-
-static long _vq_quantlist_res0_128_128_4[] = {
- 26,
- 25,
- 27,
- 24,
- 28,
- 23,
- 29,
- 22,
- 30,
- 21,
- 31,
- 20,
- 32,
- 19,
- 33,
- 18,
- 34,
- 17,
- 35,
- 16,
- 36,
- 15,
- 37,
- 14,
- 38,
- 13,
- 39,
- 12,
- 40,
- 11,
- 41,
- 10,
- 42,
- 9,
- 43,
- 8,
- 44,
- 7,
- 45,
- 6,
- 46,
- 5,
- 47,
- 4,
- 48,
- 3,
- 49,
- 2,
- 50,
- 1,
- 51,
- 0,
- 52,
-};
-
-static long _vq_lengthlist_res0_128_128_4[] = {
- 2, 2, 2, 5, 5, 6, 6, 6, 6, 7, 7, 7, 7, 8, 7, 8,
- 8, 9, 8,10, 9,10,10,11,10,11,11,12,12,12,12, 7,
- 7, 8, 7, 8, 8, 8, 8, 9, 9, 9, 9, 9,10,10,10,10,
- 11,10,11,10,11,
-};
-
-static float _vq_quantthresh_res0_128_128_4[] = {
- -25.5, -24.5, -23.5, -22.5, -21.5, -20.5, -19.5, -18.5,
- -17.5, -16.5, -15.5, -14.5, -13.5, -12.5, -11.5, -10.5,
- -9.5, -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, 9.5, 10.5, 11.5, 12.5, 13.5,
- 14.5, 15.5, 16.5, 17.5, 18.5, 19.5, 20.5, 21.5,
- 22.5, 23.5, 24.5, 25.5,
-};
-
-static long _vq_quantmap_res0_128_128_4[] = {
- 51, 49, 47, 45, 43, 41, 39, 37,
- 35, 33, 31, 29, 27, 25, 23, 21,
- 19, 17, 15, 13, 11, 9, 7, 5,
- 3, 1, 0, 2, 4, 6, 8, 10,
- 12, 14, 16, 18, 20, 22, 24, 26,
- 28, 30, 32, 34, 36, 38, 40, 42,
- 44, 46, 48, 50, 52,
-};
-
-static encode_aux_threshmatch _vq_auxt_res0_128_128_4 = {
- _vq_quantthresh_res0_128_128_4,
- _vq_quantmap_res0_128_128_4,
- 53,
- 53
-};
-
-static static_codebook _vq_book_res0_128_128_4 = {
- 1, 53,
- _vq_lengthlist_res0_128_128_4,
- 1, -526778368, 1611661312, 6, 0,
- _vq_quantlist_res0_128_128_4,
- NULL,
- &_vq_auxt_res0_128_128_4,
- NULL,
- 0
-};
-
-
-#endif
diff --git a/lib/books/res0_128_128_5.vqh b/lib/books/res0_128_128_5.vqh
deleted file mode 100644
index b204f317..00000000
--- a/lib/books/res0_128_128_5.vqh
+++ /dev/null
@@ -1,448 +0,0 @@
-/********************************************************************
- * *
- * 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_res0_128_128_5_VQH_
-#define _V_res0_128_128_5_VQH_
-#include "codebook.h"
-
-static long _vq_quantlist_res0_128_128_5[] = {
- 150,
- 149,
- 151,
- 148,
- 152,
- 147,
- 153,
- 146,
- 154,
- 145,
- 155,
- 144,
- 156,
- 143,
- 157,
- 142,
- 158,
- 141,
- 159,
- 140,
- 160,
- 139,
- 161,
- 138,
- 162,
- 137,
- 163,
- 136,
- 164,
- 135,
- 165,
- 134,
- 166,
- 133,
- 167,
- 132,
- 168,
- 131,
- 169,
- 130,
- 170,
- 129,
- 171,
- 128,
- 172,
- 127,
- 173,
- 126,
- 174,
- 125,
- 175,
- 124,
- 176,
- 123,
- 177,
- 122,
- 178,
- 121,
- 179,
- 120,
- 180,
- 119,
- 181,
- 118,
- 182,
- 117,
- 183,
- 116,
- 184,
- 115,
- 185,
- 114,
- 186,
- 113,
- 187,
- 112,
- 188,
- 111,
- 189,
- 110,
- 190,
- 109,
- 191,
- 108,
- 192,
- 107,
- 193,
- 106,
- 194,
- 105,
- 195,
- 104,
- 196,
- 103,
- 197,
- 102,
- 198,
- 101,
- 199,
- 100,
- 200,
- 99,
- 201,
- 98,
- 202,
- 97,
- 203,
- 96,
- 204,
- 95,
- 205,
- 94,
- 206,
- 93,
- 207,
- 92,
- 208,
- 91,
- 209,
- 90,
- 210,
- 89,
- 211,
- 88,
- 212,
- 87,
- 213,
- 86,
- 214,
- 85,
- 215,
- 84,
- 216,
- 83,
- 217,
- 82,
- 218,
- 81,
- 219,
- 80,
- 220,
- 79,
- 221,
- 78,
- 222,
- 77,
- 223,
- 76,
- 224,
- 75,
- 225,
- 74,
- 226,
- 73,
- 227,
- 72,
- 228,
- 71,
- 229,
- 70,
- 230,
- 69,
- 231,
- 68,
- 232,
- 67,
- 233,
- 66,
- 234,
- 65,
- 235,
- 64,
- 236,
- 63,
- 237,
- 62,
- 238,
- 61,
- 239,
- 60,
- 240,
- 59,
- 241,
- 58,
- 242,
- 57,
- 243,
- 56,
- 244,
- 55,
- 245,
- 54,
- 246,
- 53,
- 247,
- 52,
- 248,
- 51,
- 249,
- 50,
- 250,
- 49,
- 251,
- 48,
- 252,
- 47,
- 253,
- 46,
- 254,
- 45,
- 255,
- 44,
- 256,
- 43,
- 257,
- 42,
- 258,
- 41,
- 259,
- 40,
- 260,
- 39,
- 261,
- 38,
- 262,
- 37,
- 263,
- 36,
- 264,
- 35,
- 265,
- 34,
- 266,
- 33,
- 267,
- 32,
- 268,
- 31,
- 269,
- 30,
- 270,
- 29,
- 271,
- 28,
- 272,
- 27,
- 273,
- 26,
- 274,
- 25,
- 275,
- 24,
- 276,
- 23,
- 277,
- 22,
- 278,
- 21,
- 279,
- 20,
- 280,
- 19,
- 281,
- 18,
- 282,
- 17,
- 283,
- 16,
- 284,
- 15,
- 285,
- 14,
- 286,
- 13,
- 287,
- 12,
- 288,
- 11,
- 289,
- 10,
- 290,
- 9,
- 291,
- 8,
- 292,
- 7,
- 293,
- 6,
- 294,
- 5,
- 295,
- 4,
- 296,
- 3,
- 297,
- 2,
- 298,
- 1,
- 299,
- 0,
- 300,
-};
-
-static long _vq_lengthlist_res0_128_128_5[] = {
- 2, 3, 2, 4, 4, 5, 5, 6, 6, 7, 6, 7, 8, 8, 8, 9,
- 9, 9, 9,11,12,11,11,10,13,11,11,12,12,10,13,13,
- 13,13,13,13,12,13,13,13,13,13,13,13,13,13,13,13,
- 13,13,13,13,13, 7, 8, 8,10, 8, 9, 9, 9, 8, 9, 9,
- 10, 9,10, 8,10, 9,11, 9,11, 9,10, 9,11,11,11,10,
- 11,10,12,10,11,11,12,10,11,10,12,10,11,11,12,11,
- 11,11,10,12,11,12,12,12,13,11,13,12,13,12,13,13,
- 10,12,13,13,13,13,11,13,12,11,13,12,12,12,13,12,
- 13,12,13,13,12,12,13,12,13,13,12,12,13,13,13,11,
- 13,13,12,12,13,12,13,12,12,13,13,13,13,11,13,13,
- 13,13,13,13,13,13,13,13,13,13,13,13,13,13,12,13,
- 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
- 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
- 13,13,13,13,13,13,13,13,13,12,13,13,13,13,13,13,
- 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
- 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
- 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
- 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
- 13,13,13,13,13,13,13,13,13,13,13,13,12,
-};
-
-static float _vq_quantthresh_res0_128_128_5[] = {
- -149.5, -148.5, -147.5, -146.5, -145.5, -144.5, -143.5, -142.5,
- -141.5, -140.5, -139.5, -138.5, -137.5, -136.5, -135.5, -134.5,
- -133.5, -132.5, -131.5, -130.5, -129.5, -128.5, -127.5, -126.5,
- -125.5, -124.5, -123.5, -122.5, -121.5, -120.5, -119.5, -118.5,
- -117.5, -116.5, -115.5, -114.5, -113.5, -112.5, -111.5, -110.5,
- -109.5, -108.5, -107.5, -106.5, -105.5, -104.5, -103.5, -102.5,
- -101.5, -100.5, -99.5, -98.5, -97.5, -96.5, -95.5, -94.5,
- -93.5, -92.5, -91.5, -90.5, -89.5, -88.5, -87.5, -86.5,
- -85.5, -84.5, -83.5, -82.5, -81.5, -80.5, -79.5, -78.5,
- -77.5, -76.5, -75.5, -74.5, -73.5, -72.5, -71.5, -70.5,
- -69.5, -68.5, -67.5, -66.5, -65.5, -64.5, -63.5, -62.5,
- -61.5, -60.5, -59.5, -58.5, -57.5, -56.5, -55.5, -54.5,
- -53.5, -52.5, -51.5, -50.5, -49.5, -48.5, -47.5, -46.5,
- -45.5, -44.5, -43.5, -42.5, -41.5, -40.5, -39.5, -38.5,
- -37.5, -36.5, -35.5, -34.5, -33.5, -32.5, -31.5, -30.5,
- -29.5, -28.5, -27.5, -26.5, -25.5, -24.5, -23.5, -22.5,
- -21.5, -20.5, -19.5, -18.5, -17.5, -16.5, -15.5, -14.5,
- -13.5, -12.5, -11.5, -10.5, -9.5, -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, 9.5,
- 10.5, 11.5, 12.5, 13.5, 14.5, 15.5, 16.5, 17.5,
- 18.5, 19.5, 20.5, 21.5, 22.5, 23.5, 24.5, 25.5,
- 26.5, 27.5, 28.5, 29.5, 30.5, 31.5, 32.5, 33.5,
- 34.5, 35.5, 36.5, 37.5, 38.5, 39.5, 40.5, 41.5,
- 42.5, 43.5, 44.5, 45.5, 46.5, 47.5, 48.5, 49.5,
- 50.5, 51.5, 52.5, 53.5, 54.5, 55.5, 56.5, 57.5,
- 58.5, 59.5, 60.5, 61.5, 62.5, 63.5, 64.5, 65.5,
- 66.5, 67.5, 68.5, 69.5, 70.5, 71.5, 72.5, 73.5,
- 74.5, 75.5, 76.5, 77.5, 78.5, 79.5, 80.5, 81.5,
- 82.5, 83.5, 84.5, 85.5, 86.5, 87.5, 88.5, 89.5,
- 90.5, 91.5, 92.5, 93.5, 94.5, 95.5, 96.5, 97.5,
- 98.5, 99.5, 100.5, 101.5, 102.5, 103.5, 104.5, 105.5,
- 106.5, 107.5, 108.5, 109.5, 110.5, 111.5, 112.5, 113.5,
- 114.5, 115.5, 116.5, 117.5, 118.5, 119.5, 120.5, 121.5,
- 122.5, 123.5, 124.5, 125.5, 126.5, 127.5, 128.5, 129.5,
- 130.5, 131.5, 132.5, 133.5, 134.5, 135.5, 136.5, 137.5,
- 138.5, 139.5, 140.5, 141.5, 142.5, 143.5, 144.5, 145.5,
- 146.5, 147.5, 148.5, 149.5,
-};
-
-static long _vq_quantmap_res0_128_128_5[] = {
- 299, 297, 295, 293, 291, 289, 287, 285,
- 283, 281, 279, 277, 275, 273, 271, 269,
- 267, 265, 263, 261, 259, 257, 255, 253,
- 251, 249, 247, 245, 243, 241, 239, 237,
- 235, 233, 231, 229, 227, 225, 223, 221,
- 219, 217, 215, 213, 211, 209, 207, 205,
- 203, 201, 199, 197, 195, 193, 191, 189,
- 187, 185, 183, 181, 179, 177, 175, 173,
- 171, 169, 167, 165, 163, 161, 159, 157,
- 155, 153, 151, 149, 147, 145, 143, 141,
- 139, 137, 135, 133, 131, 129, 127, 125,
- 123, 121, 119, 117, 115, 113, 111, 109,
- 107, 105, 103, 101, 99, 97, 95, 93,
- 91, 89, 87, 85, 83, 81, 79, 77,
- 75, 73, 71, 69, 67, 65, 63, 61,
- 59, 57, 55, 53, 51, 49, 47, 45,
- 43, 41, 39, 37, 35, 33, 31, 29,
- 27, 25, 23, 21, 19, 17, 15, 13,
- 11, 9, 7, 5, 3, 1, 0, 2,
- 4, 6, 8, 10, 12, 14, 16, 18,
- 20, 22, 24, 26, 28, 30, 32, 34,
- 36, 38, 40, 42, 44, 46, 48, 50,
- 52, 54, 56, 58, 60, 62, 64, 66,
- 68, 70, 72, 74, 76, 78, 80, 82,
- 84, 86, 88, 90, 92, 94, 96, 98,
- 100, 102, 104, 106, 108, 110, 112, 114,
- 116, 118, 120, 122, 124, 126, 128, 130,
- 132, 134, 136, 138, 140, 142, 144, 146,
- 148, 150, 152, 154, 156, 158, 160, 162,
- 164, 166, 168, 170, 172, 174, 176, 178,
- 180, 182, 184, 186, 188, 190, 192, 194,
- 196, 198, 200, 202, 204, 206, 208, 210,
- 212, 214, 216, 218, 220, 222, 224, 226,
- 228, 230, 232, 234, 236, 238, 240, 242,
- 244, 246, 248, 250, 252, 254, 256, 258,
- 260, 262, 264, 266, 268, 270, 272, 274,
- 276, 278, 280, 282, 284, 286, 288, 290,
- 292, 294, 296, 298, 300,
-};
-
-static encode_aux_threshmatch _vq_auxt_res0_128_128_5 = {
- _vq_quantthresh_res0_128_128_5,
- _vq_quantmap_res0_128_128_5,
- 301,
- 301
-};
-
-static static_codebook _vq_book_res0_128_128_5 = {
- 1, 301,
- _vq_lengthlist_res0_128_128_5,
- 1, -520962048, 1611661312, 9, 0,
- _vq_quantlist_res0_128_128_5,
- NULL,
- &_vq_auxt_res0_128_128_5,
- NULL,
- 0
-};
-
-
-#endif
diff --git a/lib/books/res0_128_128aux.vqh b/lib/books/res0_128_128aux.vqh
deleted file mode 100644
index 621f4abb..00000000
--- a/lib/books/res0_128_128aux.vqh
+++ /dev/null
@@ -1,50 +0,0 @@
-/********************************************************************
- * *
- * 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 huff/huffbuld
-
- ********************************************************************/
-
-#ifndef _V_res0_128_128aux_VQH_
-#define _V_res0_128_128aux_VQH_
-#include "codebook.h"
-
-static long _huff_lengthlist_res0_128_128aux[] = {
- 13,16,16,16,16,16,12,11,13,14,16,16,11,11,13,13,
- 16,16,10,13,14,14,16,16,16,16,16,16,16,16,16,16,
- 16,16,16,16,10,10,12,14,16,16, 5, 3, 7,13,16,16,
- 6, 5, 9,14,16,16,10,12,14,16,16,16,16,16,16,16,
- 16,16,16,16,16,16,16,16, 8, 9,11,11,16,16, 4, 3,
- 8,13,16,16, 7, 6,10,14,16,16,11,13,16,16,16,16,
- 16,16,16,16,16,16,16,16,16,16,16,16,10,10,12,15,
- 16,16, 9, 2, 4, 9,16,16,11, 3, 5, 9,16,16,13, 8,
- 9,13,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
- 13,15,16,16,16,16,15, 5, 7,12,16,16,16, 6, 7,12,
- 16,16,15,11,12,15,16,16,16,16,16,16,16,16,16,16,
- 16,16,16,16,16,16,16,16,16,16,16, 8,10,15,16,16,
- 16,10,10,15,16,16,16,14,16,16,16,16,16,16,16,16,
- 16,16,16,16,16,16,16,16,
-};
-
-static static_codebook _huff_book_res0_128_128aux = {
- 3, 216,
- _huff_lengthlist_res0_128_128aux,
- 0, 0, 0, 0, 0,
- NULL,
- NULL,
- NULL,
- 0
-};
-
-
-#endif
diff --git a/lib/books/res0_160_1024_1.vqh b/lib/books/res0_160_1024_1.vqh
deleted file mode 100644
index d201982d..00000000
--- a/lib/books/res0_160_1024_1.vqh
+++ /dev/null
@@ -1,63 +0,0 @@
-/********************************************************************
- * *
- * 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_res0_160_1024_1_VQH_
-#define _V_res0_160_1024_1_VQH_
-#include "codebook.h"
-
-static long _vq_quantlist_res0_160_1024_1[] = {
- 1,
- 0,
- 2,
-};
-
-static long _vq_lengthlist_res0_160_1024_1[] = {
- 1, 4, 4, 4, 7, 7, 4, 7, 7, 5, 8, 8, 8,11,11, 8,
- 11,11, 5, 8, 8, 8,11,11, 8,11,11, 5, 8, 8, 8,11,
- 11, 8,11,11, 8,12,11,11,15,15,11,15,15, 8,11,11,
- 11,15,15,11,15,15, 5, 8, 8, 8,11,11, 8,11,11, 8,
- 11,11,12,15,15,11,15,15, 8,11,11,11,15,15,11,15,
- 15,
-};
-
-static float _vq_quantthresh_res0_160_1024_1[] = {
- -0.5, 0.5,
-};
-
-static long _vq_quantmap_res0_160_1024_1[] = {
- 1, 0, 2,
-};
-
-static encode_aux_threshmatch _vq_auxt_res0_160_1024_1 = {
- _vq_quantthresh_res0_160_1024_1,
- _vq_quantmap_res0_160_1024_1,
- 3,
- 3
-};
-
-static static_codebook _vq_book_res0_160_1024_1 = {
- 4, 81,
- _vq_lengthlist_res0_160_1024_1,
- 1, -535822336, 1611661312, 2, 0,
- _vq_quantlist_res0_160_1024_1,
- NULL,
- &_vq_auxt_res0_160_1024_1,
- NULL,
- 0
-};
-
-
-#endif
diff --git a/lib/books/res0_160_1024_2.vqh b/lib/books/res0_160_1024_2.vqh
deleted file mode 100644
index 35db9939..00000000
--- a/lib/books/res0_160_1024_2.vqh
+++ /dev/null
@@ -1,63 +0,0 @@
-/********************************************************************
- * *
- * 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_res0_160_1024_2_VQH_
-#define _V_res0_160_1024_2_VQH_
-#include "codebook.h"
-
-static long _vq_quantlist_res0_160_1024_2[] = {
- 1,
- 0,
- 2,
-};
-
-static long _vq_lengthlist_res0_160_1024_2[] = {
- 3, 4, 4, 5, 6, 6, 5, 6, 6, 5, 6, 6, 6, 7, 8, 6,
- 8, 7, 5, 6, 6, 6, 8, 7, 6, 8, 7, 5, 6, 6, 6, 8,
- 8, 6, 8, 7, 6, 8, 8, 8, 9, 9, 8, 9, 9, 6, 8, 8,
- 8, 9, 9, 8, 9, 9, 5, 6, 6, 6, 8, 7, 6, 8, 8, 6,
- 8, 8, 8, 9, 9, 8, 9, 9, 6, 7, 8, 8, 9, 9, 7, 9,
- 9,
-};
-
-static float _vq_quantthresh_res0_160_1024_2[] = {
- -0.5, 0.5,
-};
-
-static long _vq_quantmap_res0_160_1024_2[] = {
- 1, 0, 2,
-};
-
-static encode_aux_threshmatch _vq_auxt_res0_160_1024_2 = {
- _vq_quantthresh_res0_160_1024_2,
- _vq_quantmap_res0_160_1024_2,
- 3,
- 3
-};
-
-static static_codebook _vq_book_res0_160_1024_2 = {
- 4, 81,
- _vq_lengthlist_res0_160_1024_2,
- 1, -535822336, 1611661312, 2, 0,
- _vq_quantlist_res0_160_1024_2,
- NULL,
- &_vq_auxt_res0_160_1024_2,
- NULL,
- 0
-};
-
-
-#endif
diff --git a/lib/books/res0_160_1024_3.vqh b/lib/books/res0_160_1024_3.vqh
deleted file mode 100644
index a0a67f55..00000000
--- a/lib/books/res0_160_1024_3.vqh
+++ /dev/null
@@ -1,99 +0,0 @@
-/********************************************************************
- * *
- * 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_res0_160_1024_3_VQH_
-#define _V_res0_160_1024_3_VQH_
-#include "codebook.h"
-
-static long _vq_quantlist_res0_160_1024_3[] = {
- 2,
- 1,
- 3,
- 0,
- 4,
-};
-
-static long _vq_lengthlist_res0_160_1024_3[] = {
- 3, 5, 5, 7, 7, 5, 6, 6, 9, 9, 5, 6, 6, 9, 9, 7,
- 9, 9,13,12, 7, 9, 9,13,12, 5, 7, 7, 9, 9, 7, 8,
- 8,11,11, 7, 8, 8,11,11, 9,11,11,14,15, 9,11,11,
- 14,14, 5, 6, 6, 9, 9, 7, 8, 8,11,11, 6, 8, 8,11,
- 11, 9,11,11,15,14, 9,11,11,14,14, 7, 9, 9,13,12,
- 9,11,11,15,15, 9,11,11,15,15,13,15,15,18,18,13,
- 15,15,19,18, 7, 9, 9,12,13, 9,11,11,14,14, 9,11,
- 11,15,15,13,15,15,18,18,13,15,15,18,18, 5, 7, 7,
- 9, 9, 7, 8, 8,11,11, 7, 8, 8,11,11, 9,11,11,15,
- 15, 9,11,11,15,15, 7, 8, 8,11,11, 8,10,10,13,13,
- 8,10,10,13,13,11,13,13,16,17,11,13,13,17,16, 6,
- 8, 8,11,11, 8,10,10,13,13, 8,10,10,13,13,11,13,
- 13,17,16,11,13,13,17,17, 9,11,11,15,15,11,13,13,
- 17,17,11,13,13,17,17,15,17,16,20,20,15,17,17,21,
- 22, 9,11,11,15,15,11,13,13,16,16,11,13,13,17,17,
- 15,17,16,19,18,15,17,17,19,20, 5, 7, 6, 9, 9, 7,
- 8, 8,11,11, 7, 8, 8,11,11, 9,11,11,15,15, 9,11,
- 11,15,15, 7, 8, 8,11,11, 8,10,10,13,13, 8,10,10,
- 13,13,11,13,13,17,16,11,13,13,16,17, 6, 8, 8,11,
- 11, 8,10,10,13,13, 8,10,10,13,13,11,13,13,16,17,
- 11,13,13,16,16, 9,11,11,15,15,11,13,13,17,17,11,
- 13,13,17,17,15,17,17,19,20,15,16,17,20,20, 9,11,
- 11,15,15,11,13,13,16,16,11,13,13,17,17,15,17,17,
- 20,19,15,17,16,19,19, 7, 9, 9,13,13, 9,11,11,15,
- 15, 9,11,11,15,15,13,15,15,18,19,13,15,15,19,18,
- 9,11,11,15,15,11,13,13,16,16,11,13,13,16,16,15,
- 16,16,20,20,15,17,17,20,20, 9,11,11,15,15,11,13,
- 13,17,17,11,13,13,17,17,15,16,16,22,20,15,17,17,
- 20,20,13,15,15,18,18,14,17,17,20,20,15,17,16,21,
- 19,18,19,21,21,20,18,21,20,21,21,13,15,15,19,19,
- 15,17,16,19,19,15,17,17,20,20,18,21,19,20,21,19,
- 21,20,21,21, 7, 9, 9,13,13, 9,11,11,15,15, 9,11,
- 11,15,15,13,15,15,18,19,13,15,15,18,19, 9,11,11,
- 15,15,11,13,13,17,17,11,13,13,16,17,15,17,17,20,
- 19,15,17,17,19,20, 9,11,11,15,15,11,13,13,17,17,
- 11,13,13,17,16,15,16,16,20,20,15,17,17,21,20,13,
- 15,15,18,18,15,17,17,20,20,15,16,16,21,20,18,20,
- 19,21,21,18,19,21,20,21,13,15,15,18,18,15,16,16,
- 19,20,15,17,16,21,21,18,21,20,21,21,18,19,19,20,
- 20,
-};
-
-static float _vq_quantthresh_res0_160_1024_3[] = {
- -1.5, -0.5, 0.5, 1.5,
-};
-
-static long _vq_quantmap_res0_160_1024_3[] = {
- 3, 1, 0, 2, 4,
-};
-
-static encode_aux_threshmatch _vq_auxt_res0_160_1024_3 = {
- _vq_quantthresh_res0_160_1024_3,
- _vq_quantmap_res0_160_1024_3,
- 5,
- 5
-};
-
-static static_codebook _vq_book_res0_160_1024_3 = {
- 4, 625,
- _vq_lengthlist_res0_160_1024_3,
- 1, -533725184, 1611661312, 3, 0,
- _vq_quantlist_res0_160_1024_3,
- NULL,
- &_vq_auxt_res0_160_1024_3,
- NULL,
- 0
-};
-
-
-#endif
diff --git a/lib/books/res0_160_1024_4.vqh b/lib/books/res0_160_1024_4.vqh
deleted file mode 100644
index c0bd3901..00000000
--- a/lib/books/res0_160_1024_4.vqh
+++ /dev/null
@@ -1,99 +0,0 @@
-/********************************************************************
- * *
- * 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_res0_160_1024_4_VQH_
-#define _V_res0_160_1024_4_VQH_
-#include "codebook.h"
-
-static long _vq_quantlist_res0_160_1024_4[] = {
- 2,
- 1,
- 3,
- 0,
- 4,
-};
-
-static long _vq_lengthlist_res0_160_1024_4[] = {
- 5, 6, 6, 8, 8, 6, 7, 7, 9, 9, 6, 7, 6, 9, 9, 8,
- 9, 9,11,11, 8, 9, 9,11,11, 6, 7, 7, 9, 9, 7, 7,
- 7, 9,10, 7, 7, 7, 9,10, 9,10,10,12,12, 9,10,10,
- 12,12, 6, 7, 7, 9, 9, 7, 7, 7,10, 9, 6, 7, 7,10,
- 9, 9,10,10,12,12, 9,10, 9,12,12, 8, 9, 9,11,11,
- 9,10,10,12,12, 9,10,10,12,12,11,12,12,14,14,11,
- 12,12,14,14, 8, 9, 9,11,11, 9,10,10,12,12, 9,10,
- 10,12,12,11,12,12,14,14,11,12,12,15,14, 6, 7, 7,
- 9, 9, 7, 7, 7,10,10, 7, 7, 7,10,10, 9,10,10,12,
- 12, 9,10,10,12,12, 7, 7, 7,10,10, 7, 8, 8,10,10,
- 7, 8, 8,10,10,10,10,11,13,13,10,11,10,13,13, 7,
- 7, 7,10,10, 7, 8, 8,11,10, 7, 8, 8,10,10,10,10,
- 10,13,13,10,10,10,13,13, 9,10,10,12,12,10,10,10,
- 13,13,10,11,10,13,13,12,13,13,15,16,12,13,13,15,
- 16, 9,10,10,12,12,10,10,10,13,13,10,10,11,13,13,
- 12,13,13,16,15,12,13,13,15,16, 6, 7, 7, 9, 9, 7,
- 7, 7,10,10, 7, 7, 7,10,10, 9,10,10,12,12, 9,10,
- 10,12,12, 7, 7, 7,10,10, 7, 8, 8,10,10, 7, 8, 8,
- 10,10,10,11,10,13,13,10,10,10,13,13, 7, 7, 7,10,
- 10, 7, 8, 8,10,10, 7, 8, 8,10,10,10,10,10,13,13,
- 10,10,10,13,13, 9,10,10,12,12,10,11,11,13,13,10,
- 10,10,13,13,12,13,13,16,15,12,13,13,15,15, 9,10,
- 10,12,12,10,10,11,13,13, 9,10,10,13,13,12,13,13,
- 15,15,12,13,13,16,15, 8, 9, 9,11,11, 9,10,10,12,
- 12, 9,10,10,12,12,11,12,12,15,15,11,12,12,15,15,
- 9,10,10,12,12,10,10,11,13,13,10,11,11,13,13,12,
- 13,13,15,16,12,13,13,16,15, 9,10,10,12,12,10,11,
- 10,13,13,10,11,11,13,13,12,13,13,16,15,12,13,13,
- 16,16,11,12,12,15,15,12,13,13,15,15,12,13,13,16,
- 15,14,15,16,17,17,15,16,15,18,18,11,12,12,15,15,
- 12,13,13,16,15,12,13,13,16,16,14,16,15,18,17,15,
- 15,15,18,18, 8, 9, 9,11,11, 9,10,10,12,12, 9,10,
- 10,12,12,11,12,12,15,15,11,12,12,15,15, 9,10,10,
- 12,12,10,11,10,13,13,10,10,11,13,13,12,13,13,15,
- 16,12,13,13,16,16, 9,10,10,12,12,10,10,11,13,13,
- 10,10,10,13,13,12,13,13,16,16,12,13,13,15,16,11,
- 12,12,15,15,12,13,13,16,16,12,13,13,15,15,15,15,
- 15,18,18,15,15,15,17,17,11,12,12,14,15,12,13,13,
- 16,16,12,13,13,15,15,15,15,15,18,18,14,15,15,18,
- 16,
-};
-
-static float _vq_quantthresh_res0_160_1024_4[] = {
- -1.5, -0.5, 0.5, 1.5,
-};
-
-static long _vq_quantmap_res0_160_1024_4[] = {
- 3, 1, 0, 2, 4,
-};
-
-static encode_aux_threshmatch _vq_auxt_res0_160_1024_4 = {
- _vq_quantthresh_res0_160_1024_4,
- _vq_quantmap_res0_160_1024_4,
- 5,
- 5
-};
-
-static static_codebook _vq_book_res0_160_1024_4 = {
- 4, 625,
- _vq_lengthlist_res0_160_1024_4,
- 1, -533725184, 1611661312, 3, 0,
- _vq_quantlist_res0_160_1024_4,
- NULL,
- &_vq_auxt_res0_160_1024_4,
- NULL,
- 0
-};
-
-
-#endif
diff --git a/lib/books/res0_160_1024_5.vqh b/lib/books/res0_160_1024_5.vqh
deleted file mode 100644
index 3b429e77..00000000
--- a/lib/books/res0_160_1024_5.vqh
+++ /dev/null
@@ -1,80 +0,0 @@
-/********************************************************************
- * *
- * 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_res0_160_1024_5_VQH_
-#define _V_res0_160_1024_5_VQH_
-#include "codebook.h"
-
-static long _vq_quantlist_res0_160_1024_5[] = {
- 6,
- 5,
- 7,
- 4,
- 8,
- 3,
- 9,
- 2,
- 10,
- 1,
- 11,
- 0,
- 12,
-};
-
-static long _vq_lengthlist_res0_160_1024_5[] = {
- 2, 3, 3, 6, 6, 7, 7, 8, 8,10, 9,11,11, 4, 5, 5,
- 8, 8, 8, 8,11,11,12,12,14,13, 3, 5, 5, 8, 8, 8,
- 8,11,11,12,12,13,13, 6, 8, 8,10,10,11,11,13,13,
- 15,15,16,16, 6, 8, 8,10,10,11,11,13,13,15,15,16,
- 16, 7, 9, 9,11,11,13,13,15,15,16,16,17,17, 7, 9,
- 9,11,11,13,13,15,15,16,17,17,17, 8,11,11,13,13,
- 15,15,16,16,18,18,19,19, 8,11,11,13,13,15,15,16,
- 16,18,18,19,19,10,13,12,15,15,16,16,18,17,19,18,
- 20,21,10,12,12,15,15,16,17,17,17,18,19,19,19,11,
- 14,14,16,16,18,18,19,19,20,19,21,20,11,14,14,16,
- 16,17,17,19,18,20,19,21,21,
-};
-
-static float _vq_quantthresh_res0_160_1024_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,
-};
-
-static long _vq_quantmap_res0_160_1024_5[] = {
- 11, 9, 7, 5, 3, 1, 0, 2,
- 4, 6, 8, 10, 12,
-};
-
-static encode_aux_threshmatch _vq_auxt_res0_160_1024_5 = {
- _vq_quantthresh_res0_160_1024_5,
- _vq_quantmap_res0_160_1024_5,
- 13,
- 13
-};
-
-static static_codebook _vq_book_res0_160_1024_5 = {
- 2, 169,
- _vq_lengthlist_res0_160_1024_5,
- 1, -531103744, 1611661312, 4, 0,
- _vq_quantlist_res0_160_1024_5,
- NULL,
- &_vq_auxt_res0_160_1024_5,
- NULL,
- 0
-};
-
-
-#endif
diff --git a/lib/books/res0_160_1024_6.vqh b/lib/books/res0_160_1024_6.vqh
deleted file mode 100644
index 09e374c3..00000000
--- a/lib/books/res0_160_1024_6.vqh
+++ /dev/null
@@ -1,80 +0,0 @@
-/********************************************************************
- * *
- * 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_res0_160_1024_6_VQH_
-#define _V_res0_160_1024_6_VQH_
-#include "codebook.h"
-
-static long _vq_quantlist_res0_160_1024_6[] = {
- 6,
- 5,
- 7,
- 4,
- 8,
- 3,
- 9,
- 2,
- 10,
- 1,
- 11,
- 0,
- 12,
-};
-
-static long _vq_lengthlist_res0_160_1024_6[] = {
- 3, 4, 4, 5, 5, 6, 7, 8, 8, 9, 9,10,10, 4, 5, 4,
- 6, 6, 7, 7, 9, 9,10,10,11,11, 4, 5, 4, 6, 6, 7,
- 7, 9, 9,10,10,11,11, 5, 6, 6, 8, 8, 9, 9,10,10,
- 12,12,13,13, 5, 6, 6, 8, 8, 9, 9,10,10,12,11,13,
- 13, 7, 8, 8, 9, 9,11,11,12,12,13,13,14,14, 7, 8,
- 8, 9, 9,10,11,12,12,13,13,14,14, 8, 9, 9,11,11,
- 12,12,13,13,14,14,15,15, 8, 9, 9,11,11,12,12,13,
- 13,14,14,15,15, 9,10,10,12,12,13,13,14,14,15,15,
- 16,16, 9,10,10,12,12,13,13,14,14,15,15,16,16,10,
- 12,12,13,13,14,15,15,15,16,16,17,17,10,12,11,13,
- 13,14,14,15,15,16,16,17,17,
-};
-
-static float _vq_quantthresh_res0_160_1024_6[] = {
- -5.5, -4.5, -3.5, -2.5, -1.5, -0.5, 0.5, 1.5,
- 2.5, 3.5, 4.5, 5.5,
-};
-
-static long _vq_quantmap_res0_160_1024_6[] = {
- 11, 9, 7, 5, 3, 1, 0, 2,
- 4, 6, 8, 10, 12,
-};
-
-static encode_aux_threshmatch _vq_auxt_res0_160_1024_6 = {
- _vq_quantthresh_res0_160_1024_6,
- _vq_quantmap_res0_160_1024_6,
- 13,
- 13
-};
-
-static static_codebook _vq_book_res0_160_1024_6 = {
- 2, 169,
- _vq_lengthlist_res0_160_1024_6,
- 1, -531103744, 1611661312, 4, 0,
- _vq_quantlist_res0_160_1024_6,
- NULL,
- &_vq_auxt_res0_160_1024_6,
- NULL,
- 0
-};
-
-
-#endif
diff --git a/lib/books/res0_160_1024_7.vqh b/lib/books/res0_160_1024_7.vqh
deleted file mode 100644
index 15c32504..00000000
--- a/lib/books/res0_160_1024_7.vqh
+++ /dev/null
@@ -1,142 +0,0 @@
-/********************************************************************
- * *
- * 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_res0_160_1024_7_VQH_
-#define _V_res0_160_1024_7_VQH_
-#include "codebook.h"
-
-static long _vq_quantlist_res0_160_1024_7[] = {
- 14,
- 13,
- 15,
- 12,
- 16,
- 11,
- 17,
- 10,
- 18,
- 9,
- 19,
- 8,
- 20,
- 7,
- 21,
- 6,
- 22,
- 5,
- 23,
- 4,
- 24,
- 3,
- 25,
- 2,
- 26,
- 1,
- 27,
- 0,
- 28,
-};
-
-static long _vq_lengthlist_res0_160_1024_7[] = {
- 2, 4, 4, 6, 6, 7, 7, 7, 7, 8, 8, 8, 8, 8, 8, 8,
- 8, 9, 9, 9, 9,10,10,10,10,10,10,10,10, 4, 6, 6,
- 7, 7, 8, 8, 9, 9, 9, 9,10,10,10,10,10,10,11,10,
- 11,11,11,11,12,11,12,12,12,12, 4, 6, 6, 7, 7, 8,
- 8, 9, 9, 9, 9,10,10,10,10,10,10,10,10,11,11,11,
- 11,11,11,12,12,12,12, 6, 7, 7, 9, 9, 9, 9,10,10,
- 11,11,11,11,11,11,12,12,12,12,12,12,13,13,13,13,
- 13,13,14,14, 6, 7, 7, 9, 9, 9, 9,10,10,11,11,11,
- 11,11,11,11,12,12,12,12,12,13,13,13,13,13,13,14,
- 13, 7, 8, 8, 9,10,10,10,11,11,12,12,12,12,12,12,
- 13,13,13,13,13,13,14,14,14,14,14,14,14,14, 7, 8,
- 8,10, 9,10,10,11,11,12,12,12,12,12,12,13,13,13,
- 13,13,13,14,14,14,14,14,14,14,15, 8, 9, 9,10,10,
- 11,11,12,12,12,12,13,13,13,13,13,13,14,14,14,14,
- 15,14,15,15,15,15,15,15, 8, 9, 9,10,10,11,11,12,
- 12,12,12,13,13,13,13,13,13,14,14,14,14,14,14,15,
- 15,15,15,15,15, 8,10,10,11,11,12,12,12,12,13,13,
- 13,13,13,14,14,14,14,14,15,15,15,15,15,15,15,15,
- 16,16, 8,10,10,11,11,12,12,12,12,13,13,14,13,14,
- 14,14,14,14,14,15,14,15,15,15,15,15,15,16,15, 9,
- 10,10,12,12,12,12,13,13,14,14,14,14,14,14,14,15,
- 15,15,15,15,16,16,15,16,16,16,16,16, 9,10,10,12,
- 12,12,12,13,13,14,14,14,14,14,14,15,15,15,15,15,
- 16,16,15,16,15,16,16,17,16, 8,10,10,12,11,12,12,
- 13,13,14,14,14,14,15,15,15,15,16,15,16,16,16,16,
- 16,16,16,16,16,17, 9,10,10,12,11,13,12,13,13,14,
- 14,14,14,15,15,15,15,15,16,15,16,16,16,16,16,17,
- 16,17,17, 9,11,11,12,12,13,13,14,14,14,14,15,15,
- 15,15,15,15,15,16,16,16,17,16,17,16,17,16,17,17,
- 9,11,11,12,12,13,13,14,13,14,14,15,15,15,15,15,
- 16,16,15,16,16,17,17,16,17,17,17,17,17, 9,11,11,
- 13,12,13,13,14,14,15,15,15,15,16,16,16,16,16,16,
- 17,16,16,17,17,16,17,17,17,18, 9,11,11,12,13,14,
- 13,14,14,15,14,15,15,15,15,16,16,16,16,17,17,16,
- 17,16,17,18,17,18,17,10,11,12,13,13,14,14,15,15,
- 15,15,15,16,16,16,17,16,17,17,17,17,17,17,18,18,
- 17,18,18,18,10,12,11,13,13,14,14,15,14,15,15,16,
- 16,16,16,16,16,16,16,17,16,17,17,17,17,17,17,18,
- 18,10,12,12,13,13,14,14,15,15,15,16,16,16,16,16,
- 17,17,16,17,17,17,17,17,17,17,18,18,18,18,10,12,
- 12,13,13,14,14,15,15,16,15,16,16,16,16,17,17,17,
- 17,17,17,17,17,17,17,17,18,18,18,11,12,12,14,14,
- 15,15,15,15,16,16,16,16,17,17,17,17,17,17,17,17,
- 19,17,17,18,19,18,17,19,11,12,12,14,14,15,14,16,
- 15,16,15,16,16,16,17,17,16,18,17,17,17,18,17,18,
- 18,18,18,18,18,11,13,13,14,14,15,15,16,15,16,16,
- 16,16,17,17,17,17,17,17,17,18,17,17,18,17,19,18,
- 18,18,11,13,13,14,14,15,15,15,16,16,16,17,17,17,
- 17,17,17,17,17,18,18,18,17,18,18,18,17,19,19,11,
- 13,13,14,14,15,15,16,16,17,16,17,16,18,17,17,17,
- 17,17,17,17,19,18,19,18,18,18,18,19,11,13,13,15,
- 15,15,15,16,16,16,17,17,17,17,17,18,17,17,18,17,
- 18,18,17,18,19,18,18,18,18,
-};
-
-static float _vq_quantthresh_res0_160_1024_7[] = {
- -13.5, -12.5, -11.5, -10.5, -9.5, -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, 9.5,
- 10.5, 11.5, 12.5, 13.5,
-};
-
-static long _vq_quantmap_res0_160_1024_7[] = {
- 27, 25, 23, 21, 19, 17, 15, 13,
- 11, 9, 7, 5, 3, 1, 0, 2,
- 4, 6, 8, 10, 12, 14, 16, 18,
- 20, 22, 24, 26, 28,
-};
-
-static encode_aux_threshmatch _vq_auxt_res0_160_1024_7 = {
- _vq_quantthresh_res0_160_1024_7,
- _vq_quantmap_res0_160_1024_7,
- 29,
- 29
-};
-
-static static_codebook _vq_book_res0_160_1024_7 = {
- 2, 841,
- _vq_lengthlist_res0_160_1024_7,
- 1, -528744448, 1611661312, 5, 0,
- _vq_quantlist_res0_160_1024_7,
- NULL,
- &_vq_auxt_res0_160_1024_7,
- NULL,
- 0
-};
-
-
-#endif
diff --git a/lib/books/res0_160_1024_8.vqh b/lib/books/res0_160_1024_8.vqh
deleted file mode 100644
index 022c12a1..00000000
--- a/lib/books/res0_160_1024_8.vqh
+++ /dev/null
@@ -1,133 +0,0 @@
-/********************************************************************
- * *
- * 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_res0_160_1024_8_VQH_
-#define _V_res0_160_1024_8_VQH_
-#include "codebook.h"
-
-static long _vq_quantlist_res0_160_1024_8[] = {
- 30,
- 29,
- 31,
- 28,
- 32,
- 27,
- 33,
- 26,
- 34,
- 25,
- 35,
- 24,
- 36,
- 23,
- 37,
- 22,
- 38,
- 21,
- 39,
- 20,
- 40,
- 19,
- 41,
- 18,
- 42,
- 17,
- 43,
- 16,
- 44,
- 15,
- 45,
- 14,
- 46,
- 13,
- 47,
- 12,
- 48,
- 11,
- 49,
- 10,
- 50,
- 9,
- 51,
- 8,
- 52,
- 7,
- 53,
- 6,
- 54,
- 5,
- 55,
- 4,
- 56,
- 3,
- 57,
- 2,
- 58,
- 1,
- 59,
- 0,
- 60,
-};
-
-static long _vq_lengthlist_res0_160_1024_8[] = {
- 2, 3, 3, 4, 4, 5, 5, 5, 5, 6, 6, 6, 6, 6, 6, 7,
- 7, 7, 7, 7, 7, 7, 7, 8, 8, 8, 8, 8, 8, 8, 7, 8,
- 8, 8, 8, 8, 8, 8, 8, 9, 9, 9, 9, 9, 9, 9, 9,10,
- 10,10,10,10,10,10,10,10,10,11,11,11,11,
-};
-
-static float _vq_quantthresh_res0_160_1024_8[] = {
- -29.5, -28.5, -27.5, -26.5, -25.5, -24.5, -23.5, -22.5,
- -21.5, -20.5, -19.5, -18.5, -17.5, -16.5, -15.5, -14.5,
- -13.5, -12.5, -11.5, -10.5, -9.5, -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, 9.5,
- 10.5, 11.5, 12.5, 13.5, 14.5, 15.5, 16.5, 17.5,
- 18.5, 19.5, 20.5, 21.5, 22.5, 23.5, 24.5, 25.5,
- 26.5, 27.5, 28.5, 29.5,
-};
-
-static long _vq_quantmap_res0_160_1024_8[] = {
- 59, 57, 55, 53, 51, 49, 47, 45,
- 43, 41, 39, 37, 35, 33, 31, 29,
- 27, 25, 23, 21, 19, 17, 15, 13,
- 11, 9, 7, 5, 3, 1, 0, 2,
- 4, 6, 8, 10, 12, 14, 16, 18,
- 20, 22, 24, 26, 28, 30, 32, 34,
- 36, 38, 40, 42, 44, 46, 48, 50,
- 52, 54, 56, 58, 60,
-};
-
-static encode_aux_threshmatch _vq_auxt_res0_160_1024_8 = {
- _vq_quantthresh_res0_160_1024_8,
- _vq_quantmap_res0_160_1024_8,
- 61,
- 61
-};
-
-static static_codebook _vq_book_res0_160_1024_8 = {
- 1, 61,
- _vq_lengthlist_res0_160_1024_8,
- 1, -526516224, 1611661312, 6, 0,
- _vq_quantlist_res0_160_1024_8,
- NULL,
- &_vq_auxt_res0_160_1024_8,
- NULL,
- 0
-};
-
-
-#endif
diff --git a/lib/books/res0_160_1024_9.vqh b/lib/books/res0_160_1024_9.vqh
deleted file mode 100644
index 6aa78674..00000000
--- a/lib/books/res0_160_1024_9.vqh
+++ /dev/null
@@ -1,632 +0,0 @@
-/********************************************************************
- * *
- * 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_res0_160_1024_9_VQH_
-#define _V_res0_160_1024_9_VQH_
-#include "codebook.h"
-
-static long _vq_quantlist_res0_160_1024_9[] = {
- 220,
- 219,
- 221,
- 218,
- 222,
- 217,
- 223,
- 216,
- 224,
- 215,
- 225,
- 214,
- 226,
- 213,
- 227,
- 212,
- 228,
- 211,
- 229,
- 210,
- 230,
- 209,
- 231,
- 208,
- 232,
- 207,
- 233,
- 206,
- 234,
- 205,
- 235,
- 204,
- 236,
- 203,
- 237,
- 202,
- 238,
- 201,
- 239,
- 200,
- 240,
- 199,
- 241,
- 198,
- 242,
- 197,
- 243,
- 196,
- 244,
- 195,
- 245,
- 194,
- 246,
- 193,
- 247,
- 192,
- 248,
- 191,
- 249,
- 190,
- 250,
- 189,
- 251,
- 188,
- 252,
- 187,
- 253,
- 186,
- 254,
- 185,
- 255,
- 184,
- 256,
- 183,
- 257,
- 182,
- 258,
- 181,
- 259,
- 180,
- 260,
- 179,
- 261,
- 178,
- 262,
- 177,
- 263,
- 176,
- 264,
- 175,
- 265,
- 174,
- 266,
- 173,
- 267,
- 172,
- 268,
- 171,
- 269,
- 170,
- 270,
- 169,
- 271,
- 168,
- 272,
- 167,
- 273,
- 166,
- 274,
- 165,
- 275,
- 164,
- 276,
- 163,
- 277,
- 162,
- 278,
- 161,
- 279,
- 160,
- 280,
- 159,
- 281,
- 158,
- 282,
- 157,
- 283,
- 156,
- 284,
- 155,
- 285,
- 154,
- 286,
- 153,
- 287,
- 152,
- 288,
- 151,
- 289,
- 150,
- 290,
- 149,
- 291,
- 148,
- 292,
- 147,
- 293,
- 146,
- 294,
- 145,
- 295,
- 144,
- 296,
- 143,
- 297,
- 142,
- 298,
- 141,
- 299,
- 140,
- 300,
- 139,
- 301,
- 138,
- 302,
- 137,
- 303,
- 136,
- 304,
- 135,
- 305,
- 134,
- 306,
- 133,
- 307,
- 132,
- 308,
- 131,
- 309,
- 130,
- 310,
- 129,
- 311,
- 128,
- 312,
- 127,
- 313,
- 126,
- 314,
- 125,
- 315,
- 124,
- 316,
- 123,
- 317,
- 122,
- 318,
- 121,
- 319,
- 120,
- 320,
- 119,
- 321,
- 118,
- 322,
- 117,
- 323,
- 116,
- 324,
- 115,
- 325,
- 114,
- 326,
- 113,
- 327,
- 112,
- 328,
- 111,
- 329,
- 110,
- 330,
- 109,
- 331,
- 108,
- 332,
- 107,
- 333,
- 106,
- 334,
- 105,
- 335,
- 104,
- 336,
- 103,
- 337,
- 102,
- 338,
- 101,
- 339,
- 100,
- 340,
- 99,
- 341,
- 98,
- 342,
- 97,
- 343,
- 96,
- 344,
- 95,
- 345,
- 94,
- 346,
- 93,
- 347,
- 92,
- 348,
- 91,
- 349,
- 90,
- 350,
- 89,
- 351,
- 88,
- 352,
- 87,
- 353,
- 86,
- 354,
- 85,
- 355,
- 84,
- 356,
- 83,
- 357,
- 82,
- 358,
- 81,
- 359,
- 80,
- 360,
- 79,
- 361,
- 78,
- 362,
- 77,
- 363,
- 76,
- 364,
- 75,
- 365,
- 74,
- 366,
- 73,
- 367,
- 72,
- 368,
- 71,
- 369,
- 70,
- 370,
- 69,
- 371,
- 68,
- 372,
- 67,
- 373,
- 66,
- 374,
- 65,
- 375,
- 64,
- 376,
- 63,
- 377,
- 62,
- 378,
- 61,
- 379,
- 60,
- 380,
- 59,
- 381,
- 58,
- 382,
- 57,
- 383,
- 56,
- 384,
- 55,
- 385,
- 54,
- 386,
- 53,
- 387,
- 52,
- 388,
- 51,
- 389,
- 50,
- 390,
- 49,
- 391,
- 48,
- 392,
- 47,
- 393,
- 46,
- 394,
- 45,
- 395,
- 44,
- 396,
- 43,
- 397,
- 42,
- 398,
- 41,
- 399,
- 40,
- 400,
- 39,
- 401,
- 38,
- 402,
- 37,
- 403,
- 36,
- 404,
- 35,
- 405,
- 34,
- 406,
- 33,
- 407,
- 32,
- 408,
- 31,
- 409,
- 30,
- 410,
- 29,
- 411,
- 28,
- 412,
- 27,
- 413,
- 26,
- 414,
- 25,
- 415,
- 24,
- 416,
- 23,
- 417,
- 22,
- 418,
- 21,
- 419,
- 20,
- 420,
- 19,
- 421,
- 18,
- 422,
- 17,
- 423,
- 16,
- 424,
- 15,
- 425,
- 14,
- 426,
- 13,
- 427,
- 12,
- 428,
- 11,
- 429,
- 10,
- 430,
- 9,
- 431,
- 8,
- 432,
- 7,
- 433,
- 6,
- 434,
- 5,
- 435,
- 4,
- 436,
- 3,
- 437,
- 2,
- 438,
- 1,
- 439,
- 0,
- 440,
-};
-
-static long _vq_lengthlist_res0_160_1024_9[] = {
- 3, 4, 4, 4, 4, 5, 5, 5, 5, 5, 5, 5, 5, 6, 6, 6,
- 6, 6, 6, 6, 6, 7, 6, 7, 7, 7, 7, 7, 7, 7, 7, 7,
- 7, 7, 7, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8,
- 8, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9,
- 9, 9, 9, 9, 9,10,10,10,10,10,10,10,10,10,10,10,
- 10,10,10,10,10,10,10,10,11,11,11,11,11,11,11,11,
- 11,11,11,11,11,11,11,11,11,11,12,12,11,12,12,12,
- 12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,
- 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
- 13,13,13,13,13,13,13,14,14,14,14,13,14,14,14,14,
- 14,14,14,14,14,14,14,14,14,15,14,15,14,14,14,14,
- 14,14,14,15,15,15,15,14,15,15,15,15,15,15,15,15,
- 15,15,15,15,15,15,15,15,15,15,15,15,17,15,16,15,
- 16,15,16,16,16,16,15,16,16,16,16,16,16,16,16,16,
- 16,16,17,16,17,17,16,16,17,17,17,16,16,17,16,17,
- 17,17,17,17,17,17,17,17,17,17,17,18,17,17,17,18,
- 17,18,19,17,18,17,20,18,18,18,18,18,18,18,17,18,
- 19,18,19,18,19,17,18,19,19,18,18,18,18,18,19,18,
- 19,19,18,19,18,20,19,19,19,20,19,18,18,18,19,20,
- 19,20,20,19,21,21,20,21,19,21,20,21,20,19,20,19,
- 19,20,19,20,20,19,21,21,19,21,19,21,20,20,20,19,
- 19,20,21,21,20,21,20,20,20,21,21,21,21,21,21,21,
- 21,21,20,21,21,20,21,21,21,21,21,21,21,20,19,21,
- 21,20,21,20,21,21,20,21,21,20,21,21,21,21,21,21,
- 21,21,21,21,20,21,21,21,21,21,21,21,21,21,21,21,
- 21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,
- 21,21,21,21,20,21,21,21,21,21,21,21,21,21,21,20,
- 21,21,21,21,21,21,21,21,20,
-};
-
-static float _vq_quantthresh_res0_160_1024_9[] = {
- -219.5, -218.5, -217.5, -216.5, -215.5, -214.5, -213.5, -212.5,
- -211.5, -210.5, -209.5, -208.5, -207.5, -206.5, -205.5, -204.5,
- -203.5, -202.5, -201.5, -200.5, -199.5, -198.5, -197.5, -196.5,
- -195.5, -194.5, -193.5, -192.5, -191.5, -190.5, -189.5, -188.5,
- -187.5, -186.5, -185.5, -184.5, -183.5, -182.5, -181.5, -180.5,
- -179.5, -178.5, -177.5, -176.5, -175.5, -174.5, -173.5, -172.5,
- -171.5, -170.5, -169.5, -168.5, -167.5, -166.5, -165.5, -164.5,
- -163.5, -162.5, -161.5, -160.5, -159.5, -158.5, -157.5, -156.5,
- -155.5, -154.5, -153.5, -152.5, -151.5, -150.5, -149.5, -148.5,
- -147.5, -146.5, -145.5, -144.5, -143.5, -142.5, -141.5, -140.5,
- -139.5, -138.5, -137.5, -136.5, -135.5, -134.5, -133.5, -132.5,
- -131.5, -130.5, -129.5, -128.5, -127.5, -126.5, -125.5, -124.5,
- -123.5, -122.5, -121.5, -120.5, -119.5, -118.5, -117.5, -116.5,
- -115.5, -114.5, -113.5, -112.5, -111.5, -110.5, -109.5, -108.5,
- -107.5, -106.5, -105.5, -104.5, -103.5, -102.5, -101.5, -100.5,
- -99.5, -98.5, -97.5, -96.5, -95.5, -94.5, -93.5, -92.5,
- -91.5, -90.5, -89.5, -88.5, -87.5, -86.5, -85.5, -84.5,
- -83.5, -82.5, -81.5, -80.5, -79.5, -78.5, -77.5, -76.5,
- -75.5, -74.5, -73.5, -72.5, -71.5, -70.5, -69.5, -68.5,
- -67.5, -66.5, -65.5, -64.5, -63.5, -62.5, -61.5, -60.5,
- -59.5, -58.5, -57.5, -56.5, -55.5, -54.5, -53.5, -52.5,
- -51.5, -50.5, -49.5, -48.5, -47.5, -46.5, -45.5, -44.5,
- -43.5, -42.5, -41.5, -40.5, -39.5, -38.5, -37.5, -36.5,
- -35.5, -34.5, -33.5, -32.5, -31.5, -30.5, -29.5, -28.5,
- -27.5, -26.5, -25.5, -24.5, -23.5, -22.5, -21.5, -20.5,
- -19.5, -18.5, -17.5, -16.5, -15.5, -14.5, -13.5, -12.5,
- -11.5, -10.5, -9.5, -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, 9.5, 10.5, 11.5,
- 12.5, 13.5, 14.5, 15.5, 16.5, 17.5, 18.5, 19.5,
- 20.5, 21.5, 22.5, 23.5, 24.5, 25.5, 26.5, 27.5,
- 28.5, 29.5, 30.5, 31.5, 32.5, 33.5, 34.5, 35.5,
- 36.5, 37.5, 38.5, 39.5, 40.5, 41.5, 42.5, 43.5,
- 44.5, 45.5, 46.5, 47.5, 48.5, 49.5, 50.5, 51.5,
- 52.5, 53.5, 54.5, 55.5, 56.5, 57.5, 58.5, 59.5,
- 60.5, 61.5, 62.5, 63.5, 64.5, 65.5, 66.5, 67.5,
- 68.5, 69.5, 70.5, 71.5, 72.5, 73.5, 74.5, 75.5,
- 76.5, 77.5, 78.5, 79.5, 80.5, 81.5, 82.5, 83.5,
- 84.5, 85.5, 86.5, 87.5, 88.5, 89.5, 90.5, 91.5,
- 92.5, 93.5, 94.5, 95.5, 96.5, 97.5, 98.5, 99.5,
- 100.5, 101.5, 102.5, 103.5, 104.5, 105.5, 106.5, 107.5,
- 108.5, 109.5, 110.5, 111.5, 112.5, 113.5, 114.5, 115.5,
- 116.5, 117.5, 118.5, 119.5, 120.5, 121.5, 122.5, 123.5,
- 124.5, 125.5, 126.5, 127.5, 128.5, 129.5, 130.5, 131.5,
- 132.5, 133.5, 134.5, 135.5, 136.5, 137.5, 138.5, 139.5,
- 140.5, 141.5, 142.5, 143.5, 144.5, 145.5, 146.5, 147.5,
- 148.5, 149.5, 150.5, 151.5, 152.5, 153.5, 154.5, 155.5,
- 156.5, 157.5, 158.5, 159.5, 160.5, 161.5, 162.5, 163.5,
- 164.5, 165.5, 166.5, 167.5, 168.5, 169.5, 170.5, 171.5,
- 172.5, 173.5, 174.5, 175.5, 176.5, 177.5, 178.5, 179.5,
- 180.5, 181.5, 182.5, 183.5, 184.5, 185.5, 186.5, 187.5,
- 188.5, 189.5, 190.5, 191.5, 192.5, 193.5, 194.5, 195.5,
- 196.5, 197.5, 198.5, 199.5, 200.5, 201.5, 202.5, 203.5,
- 204.5, 205.5, 206.5, 207.5, 208.5, 209.5, 210.5, 211.5,
- 212.5, 213.5, 214.5, 215.5, 216.5, 217.5, 218.5, 219.5,
-};
-
-static long _vq_quantmap_res0_160_1024_9[] = {
- 439, 437, 435, 433, 431, 429, 427, 425,
- 423, 421, 419, 417, 415, 413, 411, 409,
- 407, 405, 403, 401, 399, 397, 395, 393,
- 391, 389, 387, 385, 383, 381, 379, 377,
- 375, 373, 371, 369, 367, 365, 363, 361,
- 359, 357, 355, 353, 351, 349, 347, 345,
- 343, 341, 339, 337, 335, 333, 331, 329,
- 327, 325, 323, 321, 319, 317, 315, 313,
- 311, 309, 307, 305, 303, 301, 299, 297,
- 295, 293, 291, 289, 287, 285, 283, 281,
- 279, 277, 275, 273, 271, 269, 267, 265,
- 263, 261, 259, 257, 255, 253, 251, 249,
- 247, 245, 243, 241, 239, 237, 235, 233,
- 231, 229, 227, 225, 223, 221, 219, 217,
- 215, 213, 211, 209, 207, 205, 203, 201,
- 199, 197, 195, 193, 191, 189, 187, 185,
- 183, 181, 179, 177, 175, 173, 171, 169,
- 167, 165, 163, 161, 159, 157, 155, 153,
- 151, 149, 147, 145, 143, 141, 139, 137,
- 135, 133, 131, 129, 127, 125, 123, 121,
- 119, 117, 115, 113, 111, 109, 107, 105,
- 103, 101, 99, 97, 95, 93, 91, 89,
- 87, 85, 83, 81, 79, 77, 75, 73,
- 71, 69, 67, 65, 63, 61, 59, 57,
- 55, 53, 51, 49, 47, 45, 43, 41,
- 39, 37, 35, 33, 31, 29, 27, 25,
- 23, 21, 19, 17, 15, 13, 11, 9,
- 7, 5, 3, 1, 0, 2, 4, 6,
- 8, 10, 12, 14, 16, 18, 20, 22,
- 24, 26, 28, 30, 32, 34, 36, 38,
- 40, 42, 44, 46, 48, 50, 52, 54,
- 56, 58, 60, 62, 64, 66, 68, 70,
- 72, 74, 76, 78, 80, 82, 84, 86,
- 88, 90, 92, 94, 96, 98, 100, 102,
- 104, 106, 108, 110, 112, 114, 116, 118,
- 120, 122, 124, 126, 128, 130, 132, 134,
- 136, 138, 140, 142, 144, 146, 148, 150,
- 152, 154, 156, 158, 160, 162, 164, 166,
- 168, 170, 172, 174, 176, 178, 180, 182,
- 184, 186, 188, 190, 192, 194, 196, 198,
- 200, 202, 204, 206, 208, 210, 212, 214,
- 216, 218, 220, 222, 224, 226, 228, 230,
- 232, 234, 236, 238, 240, 242, 244, 246,
- 248, 250, 252, 254, 256, 258, 260, 262,
- 264, 266, 268, 270, 272, 274, 276, 278,
- 280, 282, 284, 286, 288, 290, 292, 294,
- 296, 298, 300, 302, 304, 306, 308, 310,
- 312, 314, 316, 318, 320, 322, 324, 326,
- 328, 330, 332, 334, 336, 338, 340, 342,
- 344, 346, 348, 350, 352, 354, 356, 358,
- 360, 362, 364, 366, 368, 370, 372, 374,
- 376, 378, 380, 382, 384, 386, 388, 390,
- 392, 394, 396, 398, 400, 402, 404, 406,
- 408, 410, 412, 414, 416, 418, 420, 422,
- 424, 426, 428, 430, 432, 434, 436, 438,
- 440,
-};
-
-static encode_aux_threshmatch _vq_auxt_res0_160_1024_9 = {
- _vq_quantthresh_res0_160_1024_9,
- _vq_quantmap_res0_160_1024_9,
- 441,
- 441
-};
-
-static static_codebook _vq_book_res0_160_1024_9 = {
- 1, 441,
- _vq_lengthlist_res0_160_1024_9,
- 1, -520388608, 1611661312, 9, 0,
- _vq_quantlist_res0_160_1024_9,
- NULL,
- &_vq_auxt_res0_160_1024_9,
- NULL,
- 0
-};
-
-
-#endif
diff --git a/lib/books/res0_160_1024aux.vqh b/lib/books/res0_160_1024aux.vqh
deleted file mode 100644
index 2941c4ce..00000000
--- a/lib/books/res0_160_1024aux.vqh
+++ /dev/null
@@ -1,43 +0,0 @@
-/********************************************************************
- * *
- * 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 huff/huffbuld
-
- ********************************************************************/
-
-#ifndef _V_res0_160_1024aux_VQH_
-#define _V_res0_160_1024aux_VQH_
-#include "codebook.h"
-
-static long _huff_lengthlist_res0_160_1024aux[] = {
- 3, 7,12,11,15,10,14,11,14,19, 5, 4, 7, 7, 8, 8,
- 9,10,12,19,10, 6, 5, 5, 6, 7, 8,12,14,18, 9, 6,
- 5, 4, 5, 6, 6, 9,12,17,13, 8, 5, 5, 5, 6, 7,11,
- 14,18, 9, 7, 7, 5, 6, 5, 6, 7,11,18,13, 8, 7, 6,
- 6, 6, 6, 8,10,17,10, 9,10, 8, 9, 6, 6, 6, 8,14,
- 10,10,12,10,11, 8, 7, 6, 7,12,13,12,13,11,13,10,
- 7, 6, 6,12,
-};
-
-static static_codebook _huff_book_res0_160_1024aux = {
- 2, 100,
- _huff_lengthlist_res0_160_1024aux,
- 0, 0, 0, 0, 0,
- NULL,
- NULL,
- NULL,
- 0
-};
-
-
-#endif
diff --git a/lib/books/res0_160_128_1.vqh b/lib/books/res0_160_128_1.vqh
deleted file mode 100644
index d5c5b05b..00000000
--- a/lib/books/res0_160_128_1.vqh
+++ /dev/null
@@ -1,63 +0,0 @@
-/********************************************************************
- * *
- * 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_res0_160_128_1_VQH_
-#define _V_res0_160_128_1_VQH_
-#include "codebook.h"
-
-static long _vq_quantlist_res0_160_128_1[] = {
- 1,
- 0,
- 2,
-};
-
-static long _vq_lengthlist_res0_160_128_1[] = {
- 3, 4, 4, 5, 6, 6, 4, 6, 6, 5, 6, 6, 6, 7, 8, 6,
- 7, 8, 5, 6, 6, 6, 8, 7, 6, 8, 7, 5, 6, 6, 7, 8,
- 8, 6, 8, 8, 6, 8, 8, 8, 9, 9, 8, 9, 9, 6, 8, 8,
- 8, 9, 9, 8, 9, 9, 5, 6, 6, 6, 8, 8, 7, 8, 8, 6,
- 8, 8, 8, 9, 9, 8, 9, 9, 6, 8, 8, 8, 9, 9, 8, 9,
- 9,
-};
-
-static float _vq_quantthresh_res0_160_128_1[] = {
- -0.5, 0.5,
-};
-
-static long _vq_quantmap_res0_160_128_1[] = {
- 1, 0, 2,
-};
-
-static encode_aux_threshmatch _vq_auxt_res0_160_128_1 = {
- _vq_quantthresh_res0_160_128_1,
- _vq_quantmap_res0_160_128_1,
- 3,
- 3
-};
-
-static static_codebook _vq_book_res0_160_128_1 = {
- 4, 81,
- _vq_lengthlist_res0_160_128_1,
- 1, -535822336, 1611661312, 2, 0,
- _vq_quantlist_res0_160_128_1,
- NULL,
- &_vq_auxt_res0_160_128_1,
- NULL,
- 0
-};
-
-
-#endif
diff --git a/lib/books/res0_160_128_2.vqh b/lib/books/res0_160_128_2.vqh
deleted file mode 100644
index c4a9f7be..00000000
--- a/lib/books/res0_160_128_2.vqh
+++ /dev/null
@@ -1,65 +0,0 @@
-/********************************************************************
- * *
- * 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_res0_160_128_2_VQH_
-#define _V_res0_160_128_2_VQH_
-#include "codebook.h"
-
-static long _vq_quantlist_res0_160_128_2[] = {
- 3,
- 2,
- 4,
- 1,
- 5,
- 0,
- 6,
-};
-
-static long _vq_lengthlist_res0_160_128_2[] = {
- 2, 3, 3, 5, 5, 8, 8, 4, 5, 5, 7, 7,10, 9, 3, 5,
- 5, 7, 7, 9, 9, 6, 7, 7,10,10,13,13, 6, 7, 7,10,
- 10,13,13, 8,10,10,14,13,16,17, 8,10,10,13,13,15,
- 17,
-};
-
-static float _vq_quantthresh_res0_160_128_2[] = {
- -2.5, -1.5, -0.5, 0.5, 1.5, 2.5,
-};
-
-static long _vq_quantmap_res0_160_128_2[] = {
- 5, 3, 1, 0, 2, 4, 6,
-};
-
-static encode_aux_threshmatch _vq_auxt_res0_160_128_2 = {
- _vq_quantthresh_res0_160_128_2,
- _vq_quantmap_res0_160_128_2,
- 7,
- 7
-};
-
-static static_codebook _vq_book_res0_160_128_2 = {
- 2, 49,
- _vq_lengthlist_res0_160_128_2,
- 1, -533200896, 1611661312, 3, 0,
- _vq_quantlist_res0_160_128_2,
- NULL,
- &_vq_auxt_res0_160_128_2,
- NULL,
- 0
-};
-
-
-#endif
diff --git a/lib/books/res0_160_128_3.vqh b/lib/books/res0_160_128_3.vqh
deleted file mode 100644
index e7ee2f6b..00000000
--- a/lib/books/res0_160_128_3.vqh
+++ /dev/null
@@ -1,152 +0,0 @@
-/********************************************************************
- * *
- * 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_res0_160_128_3_VQH_
-#define _V_res0_160_128_3_VQH_
-#include "codebook.h"
-
-static long _vq_quantlist_res0_160_128_3[] = {
- 15,
- 14,
- 16,
- 13,
- 17,
- 12,
- 18,
- 11,
- 19,
- 10,
- 20,
- 9,
- 21,
- 8,
- 22,
- 7,
- 23,
- 6,
- 24,
- 5,
- 25,
- 4,
- 26,
- 3,
- 27,
- 2,
- 28,
- 1,
- 29,
- 0,
- 30,
-};
-
-static long _vq_lengthlist_res0_160_128_3[] = {
- 3, 4, 4, 6, 6, 7, 7, 7, 7, 7, 8, 8, 8, 8, 8, 8,
- 9, 8, 9, 8, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 4,
- 5, 5, 6, 6, 7, 7, 8, 8, 8, 8, 8, 9, 8, 9, 9, 9,
- 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 4, 5,
- 5, 6, 6, 7, 7, 8, 8, 8, 8, 8, 9, 8, 9, 8, 9, 9,
- 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9,10, 9, 7, 7, 7,
- 9, 9,10,10,10,10,10,11,10,11,11,11,11,11,11,11,
- 11,11,11,11,11,11,11,11,11,11,11,11, 7, 7, 7, 9,
- 9,10, 9,10,10,10,10,10,10,10,11,11,11,11,11,11,
- 12,11,11,11,11,11,11,11,11,11,11, 8, 9, 9,10,10,
- 11,11,11,11,12,12,12,12,12,13,12,12,12,13,13,13,
- 12,12,12,13,12,13,12,13,12,13, 8, 9, 9,11,10,11,
- 11,12,12,12,12,12,12,12,12,12,13,12,13,12,13,12,
- 12,12,12,12,12,13,13,13,12, 8,10,10,12,11,12,12,
- 13,14,13,14,14,14,14,14,13,14,14,14,13,15,13,14,
- 13,13,13,14,14,13,14,14, 8,10,10,11,11,12,13,13,
- 13,13,13,13,14,13,14,13,14,13,15,14,13,14,14,13,
- 14,14,14,13,14,14,13,10,11,11,12,13,13,14,13,14,
- 14,14,14,13,14,16,14,15,14,15,14,15,14,15,14,15,
- 15,15,14,14,15,15,10,11,11,13,12,13,13,13,14,14,
- 14,14,14,14,15,14,15,14,15,15,15,15,15,14,14,15,
- 14,15,15,17,14,11,12,12,14,13,13,14,14,15,14,14,
- 15,15,15,15,15,15,16,16,15,16,16,15,15,15,15,15,
- 15,14,15,15,11,12,12,13,13,14,15,15,15,15,15,15,
- 16,15,15,15,15,15,16,15,15,15,15,15,16,16,15,17,
- 15,17,16,11,13,13,15,15,15,14,14,16,15,16,15,16,
- 15,16,14,17,15,16,15,17,15,15,16,16,16,16,15,16,
- 17,17,11,12,12,14,14,14,15,16,15,16,15,16,16,15,
- 16,16,17,15,16,15,17,16,15,16,15,17,16,16,15,16,
- 16,12,13,13,15,15,14,16,16,15,16,15,16,16,16,16,
- 16,16,16,16,17,16,15,17,16,16,16,16,17,16,17,17,
- 12,14,13,15,15,15,14,17,16,16,16,15,16,17,16,16,
- 17,16,15,15,16,16,16,16,16,16,16,17,16,16,16,13,
- 14,14,16,15,17,16,16,17,15,16,15,17,16,17,17,17,
- 16,16,16,16,16,16,16,16,17,16,17,16,17,17,13,15,
- 14,15,15,17,16,17,17,17,16,16,16,16,17,16,16,17,
- 16,15,17,16,17,17,16,16,16,16,16,17,17,13,15,14,
- 16,16,17,16,17,16,16,16,15,17,17,17,16,16,16,17,
- 17,17,16,16,16,17,16,15,17,16,17,16,13,14,13,16,
- 16,16,16,17,16,16,16,16,16,16,16,17,17,17,17,16,
- 17,17,17,16,17,17,16,16,16,17,16,14,14,15,16,15,
- 16,16,17,17,16,17,17,16,16,17,17,17,17,16,16,17,
- 16,17,17,17,16,17,17,17,17,17,13,14,14,17,16,16,
- 17,16,16,16,17,17,17,15,16,16,17,16,17,16,16,16,
- 17,16,16,17,17,17,15,16,16,14,15,15,17,16,16,17,
- 17,17,17,17,16,16,16,17,17,17,17,17,17,17,17,17,
- 17,17,17,17,17,17,17,17,14,15,14,17,16,16,17,17,
- 17,16,17,17,17,17,17,17,17,17,17,17,17,16,17,17,
- 17,16,17,17,17,16,16,15,16,15,16,16,17,17,16,16,
- 17,17,17,17,17,17,17,17,15,17,17,16,17,17,16,17,
- 17,17,17,17,17,17,15,15,16,16,17,16,16,17,16,17,
- 17,17,17,17,17,17,17,17,17,17,17,16,15,17,17,17,
- 17,17,16,17,17,15,16,15,16,17,16,17,17,17,17,17,
- 17,17,17,16,17,16,17,17,17,17,17,17,17,17,17,17,
- 17,17,17,17,15,16,16,15,16,17,16,16,17,17,17,17,
- 16,17,16,16,17,16,17,17,17,16,16,17,16,16,16,17,
- 16,17,17,15,17,16,16,17,16,16,17,17,17,17,17,17,
- 16,17,17,17,17,17,17,17,17,17,17,17,17,16,17,16,
- 17,16,15,16,16,17,16,17,16,17,17,17,17,17,16,16,
- 17,16,17,16,16,17,17,16,16,17,17,17,16,17,17,17,
- 17,
-};
-
-static float _vq_quantthresh_res0_160_128_3[] = {
- -14.5, -13.5, -12.5, -11.5, -10.5, -9.5, -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,
- 9.5, 10.5, 11.5, 12.5, 13.5, 14.5,
-};
-
-static long _vq_quantmap_res0_160_128_3[] = {
- 29, 27, 25, 23, 21, 19, 17, 15,
- 13, 11, 9, 7, 5, 3, 1, 0,
- 2, 4, 6, 8, 10, 12, 14, 16,
- 18, 20, 22, 24, 26, 28, 30,
-};
-
-static encode_aux_threshmatch _vq_auxt_res0_160_128_3 = {
- _vq_quantthresh_res0_160_128_3,
- _vq_quantmap_res0_160_128_3,
- 31,
- 31
-};
-
-static static_codebook _vq_book_res0_160_128_3 = {
- 2, 961,
- _vq_lengthlist_res0_160_128_3,
- 1, -528613376, 1611661312, 5, 0,
- _vq_quantlist_res0_160_128_3,
- NULL,
- &_vq_auxt_res0_160_128_3,
- NULL,
- 0
-};
-
-
-#endif
diff --git a/lib/books/res0_160_128_4.vqh b/lib/books/res0_160_128_4.vqh
deleted file mode 100644
index e3c1d3d8..00000000
--- a/lib/books/res0_160_128_4.vqh
+++ /dev/null
@@ -1,123 +0,0 @@
-/********************************************************************
- * *
- * 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_res0_160_128_4_VQH_
-#define _V_res0_160_128_4_VQH_
-#include "codebook.h"
-
-static long _vq_quantlist_res0_160_128_4[] = {
- 26,
- 25,
- 27,
- 24,
- 28,
- 23,
- 29,
- 22,
- 30,
- 21,
- 31,
- 20,
- 32,
- 19,
- 33,
- 18,
- 34,
- 17,
- 35,
- 16,
- 36,
- 15,
- 37,
- 14,
- 38,
- 13,
- 39,
- 12,
- 40,
- 11,
- 41,
- 10,
- 42,
- 9,
- 43,
- 8,
- 44,
- 7,
- 45,
- 6,
- 46,
- 5,
- 47,
- 4,
- 48,
- 3,
- 49,
- 2,
- 50,
- 1,
- 51,
- 0,
- 52,
-};
-
-static long _vq_lengthlist_res0_160_128_4[] = {
- 2, 2, 2, 5, 5, 6, 6, 7, 7, 7, 7, 7, 8, 8, 8, 8,
- 8, 8, 8, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9,10, 9, 7,
- 7, 8, 7, 8, 8, 8, 8, 9, 8, 9, 8, 9, 9,10, 9,10,
- 10,10,10,10,10,
-};
-
-static float _vq_quantthresh_res0_160_128_4[] = {
- -25.5, -24.5, -23.5, -22.5, -21.5, -20.5, -19.5, -18.5,
- -17.5, -16.5, -15.5, -14.5, -13.5, -12.5, -11.5, -10.5,
- -9.5, -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, 9.5, 10.5, 11.5, 12.5, 13.5,
- 14.5, 15.5, 16.5, 17.5, 18.5, 19.5, 20.5, 21.5,
- 22.5, 23.5, 24.5, 25.5,
-};
-
-static long _vq_quantmap_res0_160_128_4[] = {
- 51, 49, 47, 45, 43, 41, 39, 37,
- 35, 33, 31, 29, 27, 25, 23, 21,
- 19, 17, 15, 13, 11, 9, 7, 5,
- 3, 1, 0, 2, 4, 6, 8, 10,
- 12, 14, 16, 18, 20, 22, 24, 26,
- 28, 30, 32, 34, 36, 38, 40, 42,
- 44, 46, 48, 50, 52,
-};
-
-static encode_aux_threshmatch _vq_auxt_res0_160_128_4 = {
- _vq_quantthresh_res0_160_128_4,
- _vq_quantmap_res0_160_128_4,
- 53,
- 53
-};
-
-static static_codebook _vq_book_res0_160_128_4 = {
- 1, 53,
- _vq_lengthlist_res0_160_128_4,
- 1, -526778368, 1611661312, 6, 0,
- _vq_quantlist_res0_160_128_4,
- NULL,
- &_vq_auxt_res0_160_128_4,
- NULL,
- 0
-};
-
-
-#endif
diff --git a/lib/books/res0_160_128_5.vqh b/lib/books/res0_160_128_5.vqh
deleted file mode 100644
index 64522eb9..00000000
--- a/lib/books/res0_160_128_5.vqh
+++ /dev/null
@@ -1,448 +0,0 @@
-/********************************************************************
- * *
- * 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_res0_160_128_5_VQH_
-#define _V_res0_160_128_5_VQH_
-#include "codebook.h"
-
-static long _vq_quantlist_res0_160_128_5[] = {
- 150,
- 149,
- 151,
- 148,
- 152,
- 147,
- 153,
- 146,
- 154,
- 145,
- 155,
- 144,
- 156,
- 143,
- 157,
- 142,
- 158,
- 141,
- 159,
- 140,
- 160,
- 139,
- 161,
- 138,
- 162,
- 137,
- 163,
- 136,
- 164,
- 135,
- 165,
- 134,
- 166,
- 133,
- 167,
- 132,
- 168,
- 131,
- 169,
- 130,
- 170,
- 129,
- 171,
- 128,
- 172,
- 127,
- 173,
- 126,
- 174,
- 125,
- 175,
- 124,
- 176,
- 123,
- 177,
- 122,
- 178,
- 121,
- 179,
- 120,
- 180,
- 119,
- 181,
- 118,
- 182,
- 117,
- 183,
- 116,
- 184,
- 115,
- 185,
- 114,
- 186,
- 113,
- 187,
- 112,
- 188,
- 111,
- 189,
- 110,
- 190,
- 109,
- 191,
- 108,
- 192,
- 107,
- 193,
- 106,
- 194,
- 105,
- 195,
- 104,
- 196,
- 103,
- 197,
- 102,
- 198,
- 101,
- 199,
- 100,
- 200,
- 99,
- 201,
- 98,
- 202,
- 97,
- 203,
- 96,
- 204,
- 95,
- 205,
- 94,
- 206,
- 93,
- 207,
- 92,
- 208,
- 91,
- 209,
- 90,
- 210,
- 89,
- 211,
- 88,
- 212,
- 87,
- 213,
- 86,
- 214,
- 85,
- 215,
- 84,
- 216,
- 83,
- 217,
- 82,
- 218,
- 81,
- 219,
- 80,
- 220,
- 79,
- 221,
- 78,
- 222,
- 77,
- 223,
- 76,
- 224,
- 75,
- 225,
- 74,
- 226,
- 73,
- 227,
- 72,
- 228,
- 71,
- 229,
- 70,
- 230,
- 69,
- 231,
- 68,
- 232,
- 67,
- 233,
- 66,
- 234,
- 65,
- 235,
- 64,
- 236,
- 63,
- 237,
- 62,
- 238,
- 61,
- 239,
- 60,
- 240,
- 59,
- 241,
- 58,
- 242,
- 57,
- 243,
- 56,
- 244,
- 55,
- 245,
- 54,
- 246,
- 53,
- 247,
- 52,
- 248,
- 51,
- 249,
- 50,
- 250,
- 49,
- 251,
- 48,
- 252,
- 47,
- 253,
- 46,
- 254,
- 45,
- 255,
- 44,
- 256,
- 43,
- 257,
- 42,
- 258,
- 41,
- 259,
- 40,
- 260,
- 39,
- 261,
- 38,
- 262,
- 37,
- 263,
- 36,
- 264,
- 35,
- 265,
- 34,
- 266,
- 33,
- 267,
- 32,
- 268,
- 31,
- 269,
- 30,
- 270,
- 29,
- 271,
- 28,
- 272,
- 27,
- 273,
- 26,
- 274,
- 25,
- 275,
- 24,
- 276,
- 23,
- 277,
- 22,
- 278,
- 21,
- 279,
- 20,
- 280,
- 19,
- 281,
- 18,
- 282,
- 17,
- 283,
- 16,
- 284,
- 15,
- 285,
- 14,
- 286,
- 13,
- 287,
- 12,
- 288,
- 11,
- 289,
- 10,
- 290,
- 9,
- 291,
- 8,
- 292,
- 7,
- 293,
- 6,
- 294,
- 5,
- 295,
- 4,
- 296,
- 3,
- 297,
- 2,
- 298,
- 1,
- 299,
- 0,
- 300,
-};
-
-static long _vq_lengthlist_res0_160_128_5[] = {
- 2, 2, 3, 4, 4, 5, 5, 6, 6, 7, 7, 7, 7, 7, 7, 8,
- 8, 8, 8, 9, 8, 9, 8, 9, 9,10,10,11, 9,12,11,12,
- 11,13,12,13,12,13,13,12,13,15,13,15,14,14,13,15,
- 15,14,15,14,14, 8, 8, 8, 8, 8, 8, 9, 9, 9, 9, 9,
- 10, 9,10, 9,10, 9,11,10,11,10,11,10,11,10,11,10,
- 11,11,11,10,12,11,13,10,11,11,12,11,11,11,12,12,
- 13,11,12,12,12,12,12,12,13,12,13,13,13,12,13,12,
- 13,13,15,12,13,13,14,12,13,13,13,13,14,12,14,14,
- 15,13,15,13,13,13,15,12,15,13,14,13,15,15,14,13,
- 15,14,15,15,14,14,13,13,13,15,15,15,13,14,15,13,
- 14,15,15,13,13,15,15,14,15,14,14,15,14,14,15,14,
- 15,15,15,14,13,15,14,15,15,15,15,15,14,14,15,14,
- 15,15,14,14,15,15,15,14,15,15,15,14,15,15,15,15,
- 14,15,15,15,15,15,13,15,15,15,14,15,15,15,15,15,
- 15,15,15,14,15,13,15,14,15,15,15,15,15,14,15,15,
- 15,15,15,15,15,15,15,15,15,15,15,15,15,14,15,15,
- 15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,
- 15,15,15,14,15,15,15,15,15,15,15,15,15,15,15,15,
- 15,15,15,15,15,15,15,15,15,15,15,14,13,
-};
-
-static float _vq_quantthresh_res0_160_128_5[] = {
- -149.5, -148.5, -147.5, -146.5, -145.5, -144.5, -143.5, -142.5,
- -141.5, -140.5, -139.5, -138.5, -137.5, -136.5, -135.5, -134.5,
- -133.5, -132.5, -131.5, -130.5, -129.5, -128.5, -127.5, -126.5,
- -125.5, -124.5, -123.5, -122.5, -121.5, -120.5, -119.5, -118.5,
- -117.5, -116.5, -115.5, -114.5, -113.5, -112.5, -111.5, -110.5,
- -109.5, -108.5, -107.5, -106.5, -105.5, -104.5, -103.5, -102.5,
- -101.5, -100.5, -99.5, -98.5, -97.5, -96.5, -95.5, -94.5,
- -93.5, -92.5, -91.5, -90.5, -89.5, -88.5, -87.5, -86.5,
- -85.5, -84.5, -83.5, -82.5, -81.5, -80.5, -79.5, -78.5,
- -77.5, -76.5, -75.5, -74.5, -73.5, -72.5, -71.5, -70.5,
- -69.5, -68.5, -67.5, -66.5, -65.5, -64.5, -63.5, -62.5,
- -61.5, -60.5, -59.5, -58.5, -57.5, -56.5, -55.5, -54.5,
- -53.5, -52.5, -51.5, -50.5, -49.5, -48.5, -47.5, -46.5,
- -45.5, -44.5, -43.5, -42.5, -41.5, -40.5, -39.5, -38.5,
- -37.5, -36.5, -35.5, -34.5, -33.5, -32.5, -31.5, -30.5,
- -29.5, -28.5, -27.5, -26.5, -25.5, -24.5, -23.5, -22.5,
- -21.5, -20.5, -19.5, -18.5, -17.5, -16.5, -15.5, -14.5,
- -13.5, -12.5, -11.5, -10.5, -9.5, -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, 9.5,
- 10.5, 11.5, 12.5, 13.5, 14.5, 15.5, 16.5, 17.5,
- 18.5, 19.5, 20.5, 21.5, 22.5, 23.5, 24.5, 25.5,
- 26.5, 27.5, 28.5, 29.5, 30.5, 31.5, 32.5, 33.5,
- 34.5, 35.5, 36.5, 37.5, 38.5, 39.5, 40.5, 41.5,
- 42.5, 43.5, 44.5, 45.5, 46.5, 47.5, 48.5, 49.5,
- 50.5, 51.5, 52.5, 53.5, 54.5, 55.5, 56.5, 57.5,
- 58.5, 59.5, 60.5, 61.5, 62.5, 63.5, 64.5, 65.5,
- 66.5, 67.5, 68.5, 69.5, 70.5, 71.5, 72.5, 73.5,
- 74.5, 75.5, 76.5, 77.5, 78.5, 79.5, 80.5, 81.5,
- 82.5, 83.5, 84.5, 85.5, 86.5, 87.5, 88.5, 89.5,
- 90.5, 91.5, 92.5, 93.5, 94.5, 95.5, 96.5, 97.5,
- 98.5, 99.5, 100.5, 101.5, 102.5, 103.5, 104.5, 105.5,
- 106.5, 107.5, 108.5, 109.5, 110.5, 111.5, 112.5, 113.5,
- 114.5, 115.5, 116.5, 117.5, 118.5, 119.5, 120.5, 121.5,
- 122.5, 123.5, 124.5, 125.5, 126.5, 127.5, 128.5, 129.5,
- 130.5, 131.5, 132.5, 133.5, 134.5, 135.5, 136.5, 137.5,
- 138.5, 139.5, 140.5, 141.5, 142.5, 143.5, 144.5, 145.5,
- 146.5, 147.5, 148.5, 149.5,
-};
-
-static long _vq_quantmap_res0_160_128_5[] = {
- 299, 297, 295, 293, 291, 289, 287, 285,
- 283, 281, 279, 277, 275, 273, 271, 269,
- 267, 265, 263, 261, 259, 257, 255, 253,
- 251, 249, 247, 245, 243, 241, 239, 237,
- 235, 233, 231, 229, 227, 225, 223, 221,
- 219, 217, 215, 213, 211, 209, 207, 205,
- 203, 201, 199, 197, 195, 193, 191, 189,
- 187, 185, 183, 181, 179, 177, 175, 173,
- 171, 169, 167, 165, 163, 161, 159, 157,
- 155, 153, 151, 149, 147, 145, 143, 141,
- 139, 137, 135, 133, 131, 129, 127, 125,
- 123, 121, 119, 117, 115, 113, 111, 109,
- 107, 105, 103, 101, 99, 97, 95, 93,
- 91, 89, 87, 85, 83, 81, 79, 77,
- 75, 73, 71, 69, 67, 65, 63, 61,
- 59, 57, 55, 53, 51, 49, 47, 45,
- 43, 41, 39, 37, 35, 33, 31, 29,
- 27, 25, 23, 21, 19, 17, 15, 13,
- 11, 9, 7, 5, 3, 1, 0, 2,
- 4, 6, 8, 10, 12, 14, 16, 18,
- 20, 22, 24, 26, 28, 30, 32, 34,
- 36, 38, 40, 42, 44, 46, 48, 50,
- 52, 54, 56, 58, 60, 62, 64, 66,
- 68, 70, 72, 74, 76, 78, 80, 82,
- 84, 86, 88, 90, 92, 94, 96, 98,
- 100, 102, 104, 106, 108, 110, 112, 114,
- 116, 118, 120, 122, 124, 126, 128, 130,
- 132, 134, 136, 138, 140, 142, 144, 146,
- 148, 150, 152, 154, 156, 158, 160, 162,
- 164, 166, 168, 170, 172, 174, 176, 178,
- 180, 182, 184, 186, 188, 190, 192, 194,
- 196, 198, 200, 202, 204, 206, 208, 210,
- 212, 214, 216, 218, 220, 222, 224, 226,
- 228, 230, 232, 234, 236, 238, 240, 242,
- 244, 246, 248, 250, 252, 254, 256, 258,
- 260, 262, 264, 266, 268, 270, 272, 274,
- 276, 278, 280, 282, 284, 286, 288, 290,
- 292, 294, 296, 298, 300,
-};
-
-static encode_aux_threshmatch _vq_auxt_res0_160_128_5 = {
- _vq_quantthresh_res0_160_128_5,
- _vq_quantmap_res0_160_128_5,
- 301,
- 301
-};
-
-static static_codebook _vq_book_res0_160_128_5 = {
- 1, 301,
- _vq_lengthlist_res0_160_128_5,
- 1, -520962048, 1611661312, 9, 0,
- _vq_quantlist_res0_160_128_5,
- NULL,
- &_vq_auxt_res0_160_128_5,
- NULL,
- 0
-};
-
-
-#endif
diff --git a/lib/books/res0_160_128aux.vqh b/lib/books/res0_160_128aux.vqh
deleted file mode 100644
index 199f20c6..00000000
--- a/lib/books/res0_160_128aux.vqh
+++ /dev/null
@@ -1,50 +0,0 @@
-/********************************************************************
- * *
- * 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 huff/huffbuld
-
- ********************************************************************/
-
-#ifndef _V_res0_160_128aux_VQH_
-#define _V_res0_160_128aux_VQH_
-#include "codebook.h"
-
-static long _huff_lengthlist_res0_160_128aux[] = {
- 13,16,16,16,16,16,15,14,15,16,16,16,14,12,14,14,
- 15,16,10,12,14,13,16,16,15,16,15,16,16,16,16,16,
- 16,16,16,16,12,13,14,16,16,16, 8, 4, 7,13,16,16,
- 7, 4, 7,12,16,16, 9, 9,11,13,16,16,14,16,16,16,
- 16,16,15,16,16,16,16,16,10,10,13,11,16,16, 5, 3,
- 7,11,16,16, 5, 3, 7,13,16,16, 9, 9,12,14,16,16,
- 15,16,16,16,16,16,16,16,16,16,16,16,10,10,11,12,
- 16,16, 8, 3, 4,10,16,16, 8, 4, 5, 9,16,16,12, 8,
- 9,12,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
- 14,13,15,16,16,16,13, 4, 5,10,16,16,14, 4, 6,10,
- 16,16,15, 9,10,13,16,16,16,16,16,16,16,16,16,16,
- 16,16,16,16,14,16,16,16,16,16,14, 7, 8,12,16,16,
- 16, 7, 8,12,16,16,16,13,13,16,16,16,16,16,16,16,
- 16,16,16,16,16,16,16,16,
-};
-
-static static_codebook _huff_book_res0_160_128aux = {
- 3, 216,
- _huff_lengthlist_res0_160_128aux,
- 0, 0, 0, 0, 0,
- NULL,
- NULL,
- NULL,
- 0
-};
-
-
-#endif
diff --git a/lib/books/res0_192_1024_1.vqh b/lib/books/res0_192_1024_1.vqh
deleted file mode 100644
index a79db190..00000000
--- a/lib/books/res0_192_1024_1.vqh
+++ /dev/null
@@ -1,63 +0,0 @@
-/********************************************************************
- * *
- * 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_res0_192_1024_1_VQH_
-#define _V_res0_192_1024_1_VQH_
-#include "codebook.h"
-
-static long _vq_quantlist_res0_192_1024_1[] = {
- 1,
- 0,
- 2,
-};
-
-static long _vq_lengthlist_res0_192_1024_1[] = {
- 1, 4, 4, 4, 8, 8, 4, 8, 8, 5, 8, 8, 8,12,12, 8,
- 12,12, 4, 8, 8, 8,12,12, 8,12,12, 5, 8, 8, 9,12,
- 12, 8,12,12, 9,12,12,12,16,16,12,17,16, 9,12,12,
- 12,16,16,12,17,16, 5, 8, 8, 8,12,12, 8,12,12, 9,
- 12,12,13,16,16,12,16,16, 8,12,12,13,16,16,12,16,
- 15,
-};
-
-static float _vq_quantthresh_res0_192_1024_1[] = {
- -0.5, 0.5,
-};
-
-static long _vq_quantmap_res0_192_1024_1[] = {
- 1, 0, 2,
-};
-
-static encode_aux_threshmatch _vq_auxt_res0_192_1024_1 = {
- _vq_quantthresh_res0_192_1024_1,
- _vq_quantmap_res0_192_1024_1,
- 3,
- 3
-};
-
-static static_codebook _vq_book_res0_192_1024_1 = {
- 4, 81,
- _vq_lengthlist_res0_192_1024_1,
- 1, -535822336, 1611661312, 2, 0,
- _vq_quantlist_res0_192_1024_1,
- NULL,
- &_vq_auxt_res0_192_1024_1,
- NULL,
- 0
-};
-
-
-#endif
diff --git a/lib/books/res0_192_1024_2.vqh b/lib/books/res0_192_1024_2.vqh
deleted file mode 100644
index 61a2391e..00000000
--- a/lib/books/res0_192_1024_2.vqh
+++ /dev/null
@@ -1,63 +0,0 @@
-/********************************************************************
- * *
- * 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_res0_192_1024_2_VQH_
-#define _V_res0_192_1024_2_VQH_
-#include "codebook.h"
-
-static long _vq_quantlist_res0_192_1024_2[] = {
- 1,
- 0,
- 2,
-};
-
-static long _vq_lengthlist_res0_192_1024_2[] = {
- 3, 4, 4, 5, 6, 6, 4, 6, 6, 5, 6, 6, 6, 8, 8, 6,
- 8, 8, 5, 6, 6, 6, 8, 8, 6, 8, 8, 5, 6, 6, 6, 8,
- 8, 6, 8, 8, 6, 8, 8, 8, 9, 9, 8, 9, 9, 6, 8, 8,
- 8, 9, 9, 8, 9, 9, 5, 6, 6, 6, 8, 8, 6, 8, 8, 6,
- 8, 8, 8, 9, 9, 8, 9, 9, 6, 8, 8, 8, 9, 9, 8, 9,
- 9,
-};
-
-static float _vq_quantthresh_res0_192_1024_2[] = {
- -0.5, 0.5,
-};
-
-static long _vq_quantmap_res0_192_1024_2[] = {
- 1, 0, 2,
-};
-
-static encode_aux_threshmatch _vq_auxt_res0_192_1024_2 = {
- _vq_quantthresh_res0_192_1024_2,
- _vq_quantmap_res0_192_1024_2,
- 3,
- 3
-};
-
-static static_codebook _vq_book_res0_192_1024_2 = {
- 4, 81,
- _vq_lengthlist_res0_192_1024_2,
- 1, -535822336, 1611661312, 2, 0,
- _vq_quantlist_res0_192_1024_2,
- NULL,
- &_vq_auxt_res0_192_1024_2,
- NULL,
- 0
-};
-
-
-#endif
diff --git a/lib/books/res0_192_1024_3.vqh b/lib/books/res0_192_1024_3.vqh
deleted file mode 100644
index 617ba81c..00000000
--- a/lib/books/res0_192_1024_3.vqh
+++ /dev/null
@@ -1,99 +0,0 @@
-/********************************************************************
- * *
- * 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_res0_192_1024_3_VQH_
-#define _V_res0_192_1024_3_VQH_
-#include "codebook.h"
-
-static long _vq_quantlist_res0_192_1024_3[] = {
- 2,
- 1,
- 3,
- 0,
- 4,
-};
-
-static long _vq_lengthlist_res0_192_1024_3[] = {
- 3, 5, 5, 7, 7, 5, 6, 6, 9, 9, 5, 6, 6, 9, 9, 7,
- 9, 9,12,12, 7, 9, 9,12,12, 5, 7, 6, 9, 9, 7, 8,
- 8,10,10, 7, 8, 8,10,10, 9,11,11,14,14, 9,11,11,
- 14,14, 5, 6, 6, 9, 9, 7, 8, 8,10,10, 7, 8, 8,10,
- 10, 9,11,11,14,13, 9,11,11,14,14, 8, 9, 9,12,12,
- 9,11,11,14,14, 9,11,11,14,14,13,14,14,17,18,13,
- 14,14,17,18, 8, 9, 9,12,12, 9,11,11,14,14, 9,11,
- 11,14,14,12,14,14,17,17,12,14,14,17,18, 5, 7, 7,
- 9, 9, 7, 8, 8,11,11, 7, 8, 8,10,11, 9,11,11,14,
- 14, 9,11,11,14,14, 7, 8, 8,11,11, 8, 9,10,12,12,
- 8,10, 9,12,12,11,12,12,15,15,11,12,12,15,16, 7,
- 8, 8,11,11, 8,10, 9,12,12, 8, 9, 9,12,12,11,12,
- 12,15,15,11,12,12,16,16, 9,11,11,14,14,11,12,13,
- 16,15,11,12,12,16,16,14,16,15,20,19,14,16,15,19,
- 18, 9,11,11,14,14,11,12,12,16,16,11,12,13,15,16,
- 14,16,15,19,18,14,16,16,19,19, 5, 7, 7, 9, 9, 7,
- 8, 8,10,10, 7, 8, 8,10,11, 9,11,11,14,14, 9,11,
- 11,14,14, 7, 8, 8,11,10, 8,10, 9,12,12, 8, 9, 9,
- 12,12,11,12,12,15,15,11,12,12,15,15, 7, 8, 8,11,
- 10, 8, 9,10,12,12, 8, 9, 9,12,12,11,12,12,16,16,
- 11,12,12,16,15, 9,11,11,14,14,11,12,12,15,15,11,
- 12,12,16,15,14,16,15,19,18,14,15,16,19,18, 9,11,
- 11,14,14,11,12,13,16,15,11,12,12,16,15,14,16,16,
- 19,19,14,16,15,19,18, 7, 9, 9,12,12, 9,11,11,14,
- 14, 9,11,11,14,14,12,14,14,17,17,12,14,14,17,17,
- 9,11,11,14,14,11,12,12,16,15,11,12,12,16,15,14,
- 15,16,19,19,14,17,15,21,19, 9,11,11,14,14,11,12,
- 12,16,15,11,12,12,15,16,14,16,16,19,18,14,16,16,
- 19,18,12,14,14,17,18,14,15,16,19,18,14,16,16,19,
- 18,18,19,18,20,20,17,19,19,20,21,12,14,14,17,17,
- 14,15,15,21,18,14,16,16,18,18,17,18,19,20,21,18,
- 20,18,21,21, 7, 9, 9,12,12, 9,11,11,14,14, 9,11,
- 11,14,14,12,14,14,17,17,12,14,14,17,18, 9,11,11,
- 14,14,11,12,12,16,16,11,12,12,15,16,14,16,15,19,
- 19,14,15,15,18,19, 9,11,11,14,14,11,12,12,16,15,
- 11,12,12,15,15,14,16,16,18,19,14,16,15,18,19,12,
- 14,14,17,17,14,16,15,18,20,14,16,16,18,18,16,18,
- 19,21,21,18,17,19,21,21,12,14,14,17,17,14,16,16,
- 18,20,14,16,15,18,18,17,18,20,19,21,17,18,19,21,
- 20,
-};
-
-static float _vq_quantthresh_res0_192_1024_3[] = {
- -1.5, -0.5, 0.5, 1.5,
-};
-
-static long _vq_quantmap_res0_192_1024_3[] = {
- 3, 1, 0, 2, 4,
-};
-
-static encode_aux_threshmatch _vq_auxt_res0_192_1024_3 = {
- _vq_quantthresh_res0_192_1024_3,
- _vq_quantmap_res0_192_1024_3,
- 5,
- 5
-};
-
-static static_codebook _vq_book_res0_192_1024_3 = {
- 4, 625,
- _vq_lengthlist_res0_192_1024_3,
- 1, -533725184, 1611661312, 3, 0,
- _vq_quantlist_res0_192_1024_3,
- NULL,
- &_vq_auxt_res0_192_1024_3,
- NULL,
- 0
-};
-
-
-#endif
diff --git a/lib/books/res0_192_1024_4.vqh b/lib/books/res0_192_1024_4.vqh
deleted file mode 100644
index fccbd292..00000000
--- a/lib/books/res0_192_1024_4.vqh
+++ /dev/null
@@ -1,99 +0,0 @@
-/********************************************************************
- * *
- * 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_res0_192_1024_4_VQH_
-#define _V_res0_192_1024_4_VQH_
-#include "codebook.h"
-
-static long _vq_quantlist_res0_192_1024_4[] = {
- 2,
- 1,
- 3,
- 0,
- 4,
-};
-
-static long _vq_lengthlist_res0_192_1024_4[] = {
- 6, 7, 7, 8, 8, 7, 7, 7, 9, 9, 7, 7, 7, 9, 9, 8,
- 9, 9,10,10, 8, 9, 9,10,10, 7, 7, 7, 9, 9, 7, 7,
- 7, 9, 9, 7, 7, 7, 9, 9, 9, 9, 9,11,11, 9, 9, 9,
- 11,11, 7, 7, 7, 9, 9, 7, 7, 7, 9, 9, 7, 7, 7, 9,
- 9, 9, 9, 9,11,11, 9, 9, 9,11,11, 8, 9, 9,11,11,
- 9, 9, 9,11,11, 9, 9, 9,11,11,11,11,11,13,13,11,
- 11,11,13,13, 8, 9, 9,11,11, 9, 9, 9,11,11, 9, 9,
- 9,11,11,11,11,11,13,13,11,11,11,13,13, 7, 7, 7,
- 9, 9, 7, 8, 8, 9, 9, 7, 7, 7, 9, 9, 9, 9, 9,11,
- 11, 9, 9, 9,11,11, 7, 8, 7, 9, 9, 8, 8, 8,10,10,
- 8, 8, 8,10,10, 9,10,10,12,12, 9,10,10,12,12, 7,
- 8, 8, 9, 9, 7, 8, 8,10,10, 8, 8, 8,10,10, 9,10,
- 10,12,12, 9,10,10,12,12, 9, 9, 9,11,11, 9,10,10,
- 12,12, 9,10,10,12,12,11,12,12,13,14,11,12,12,14,
- 14, 9, 9, 9,11,11, 9,10,10,12,12, 9,10,10,12,12,
- 11,12,12,14,13,11,12,12,13,14, 7, 7, 7, 9, 9, 7,
- 7, 7, 9, 9, 7, 8, 7, 9, 9, 9, 9, 9,11,11, 9, 9,
- 9,11,11, 7, 8, 7, 9, 9, 8, 8, 8,10,10, 8, 8, 8,
- 10,10, 9,10,10,12,12, 9,10,10,12,12, 7, 7, 7, 9,
- 9, 7, 8, 8,10,10, 7, 8, 8,10,10, 9,10,10,12,12,
- 9,10,10,12,11, 9, 9, 9,11,11, 9,10,10,12,12, 9,
- 10,10,12,12,11,12,12,14,14,11,12,12,13,13, 9, 9,
- 9,11,11, 9,10,10,12,12, 9,10,10,12,12,11,12,12,
- 14,14,11,12,12,14,13, 8, 9, 9,11,11, 9, 9, 9,11,
- 11, 9, 9, 9,11,11,11,11,11,13,13,11,11,11,13,13,
- 9, 9, 9,11,11, 9,10,10,12,12, 9,10,10,12,12,11,
- 12,12,14,14,11,12,12,14,14, 9, 9, 9,11,11, 9,10,
- 10,12,12, 9,10,10,12,12,11,12,12,14,14,11,12,12,
- 14,14,11,11,11,13,13,11,12,12,14,14,11,12,12,14,
- 13,13,13,14,15,15,13,14,14,15,16,11,11,11,13,13,
- 11,12,12,14,14,11,12,12,13,14,13,14,13,15,15,13,
- 14,14,15,15, 8, 9, 9,11,11, 9, 9, 9,11,11, 9, 9,
- 9,11,11,11,11,11,13,13,11,11,11,13,13, 9, 9, 9,
- 11,11, 9,10,10,12,12, 9,10,10,12,12,11,12,12,14,
- 14,11,12,12,14,14, 9, 9, 9,11,11, 9,10,10,12,12,
- 9,10,10,12,12,11,12,12,14,14,11,12,12,14,14,11,
- 11,11,13,13,11,12,12,14,14,11,12,12,14,14,13,14,
- 14,16,16,13,13,14,15,15,10,11,11,13,13,11,12,12,
- 14,14,11,12,12,14,13,13,14,14,15,15,13,14,13,16,
- 15,
-};
-
-static float _vq_quantthresh_res0_192_1024_4[] = {
- -1.5, -0.5, 0.5, 1.5,
-};
-
-static long _vq_quantmap_res0_192_1024_4[] = {
- 3, 1, 0, 2, 4,
-};
-
-static encode_aux_threshmatch _vq_auxt_res0_192_1024_4 = {
- _vq_quantthresh_res0_192_1024_4,
- _vq_quantmap_res0_192_1024_4,
- 5,
- 5
-};
-
-static static_codebook _vq_book_res0_192_1024_4 = {
- 4, 625,
- _vq_lengthlist_res0_192_1024_4,
- 1, -533725184, 1611661312, 3, 0,
- _vq_quantlist_res0_192_1024_4,
- NULL,
- &_vq_auxt_res0_192_1024_4,
- NULL,
- 0
-};
-
-
-#endif
diff --git a/lib/books/res0_192_1024_5.vqh b/lib/books/res0_192_1024_5.vqh
deleted file mode 100644
index 3ac3341b..00000000
--- a/lib/books/res0_192_1024_5.vqh
+++ /dev/null
@@ -1,80 +0,0 @@
-/********************************************************************
- * *
- * 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_res0_192_1024_5_VQH_
-#define _V_res0_192_1024_5_VQH_
-#include "codebook.h"
-
-static long _vq_quantlist_res0_192_1024_5[] = {
- 6,
- 5,
- 7,
- 4,
- 8,
- 3,
- 9,
- 2,
- 10,
- 1,
- 11,
- 0,
- 12,
-};
-
-static long _vq_lengthlist_res0_192_1024_5[] = {
- 2, 3, 3, 5, 5, 7, 7, 9, 9,10,10,11,11, 4, 5, 5,
- 7, 7, 8, 8,11,11,12,12,14,14, 4, 5, 5, 7, 7, 8,
- 8,11,11,13,12,14,14, 6, 7, 7, 9, 9,11,11,13,13,
- 15,15,16,16, 6, 7, 7, 9, 9,11,11,13,13,15,15,16,
- 16, 7, 9, 8,11,11,13,13,15,15,16,16,17,18, 7, 8,
- 8,11,11,13,13,15,15,17,17,18,18, 9,11,11,13,13,
- 15,15,17,17,18,18,18,18, 9,11,11,13,13,15,15,17,
- 17,18,18,18,19,10,13,13,15,15,17,16,17,18,18,18,
- 19,21,10,13,13,15,15,17,17,17,18,18,20,19,20,11,
- 14,14,16,16,18,18,19,18,18,18,19,21,12,14,14,16,
- 16,18,18,19,18,19,20,20,20,
-};
-
-static float _vq_quantthresh_res0_192_1024_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,
-};
-
-static long _vq_quantmap_res0_192_1024_5[] = {
- 11, 9, 7, 5, 3, 1, 0, 2,
- 4, 6, 8, 10, 12,
-};
-
-static encode_aux_threshmatch _vq_auxt_res0_192_1024_5 = {
- _vq_quantthresh_res0_192_1024_5,
- _vq_quantmap_res0_192_1024_5,
- 13,
- 13
-};
-
-static static_codebook _vq_book_res0_192_1024_5 = {
- 2, 169,
- _vq_lengthlist_res0_192_1024_5,
- 1, -531103744, 1611661312, 4, 0,
- _vq_quantlist_res0_192_1024_5,
- NULL,
- &_vq_auxt_res0_192_1024_5,
- NULL,
- 0
-};
-
-
-#endif
diff --git a/lib/books/res0_192_1024_6.vqh b/lib/books/res0_192_1024_6.vqh
deleted file mode 100644
index 9c1a861c..00000000
--- a/lib/books/res0_192_1024_6.vqh
+++ /dev/null
@@ -1,80 +0,0 @@
-/********************************************************************
- * *
- * 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_res0_192_1024_6_VQH_
-#define _V_res0_192_1024_6_VQH_
-#include "codebook.h"
-
-static long _vq_quantlist_res0_192_1024_6[] = {
- 6,
- 5,
- 7,
- 4,
- 8,
- 3,
- 9,
- 2,
- 10,
- 1,
- 11,
- 0,
- 12,
-};
-
-static long _vq_lengthlist_res0_192_1024_6[] = {
- 4, 4, 4, 5, 5, 7, 7, 8, 8, 9, 9,10,10, 4, 5, 4,
- 6, 6, 7, 7, 9, 9,10,10,11,11, 4, 4, 4, 6, 6, 7,
- 7, 9, 9,10,10,11,11, 5, 6, 6, 7, 7, 9, 8,10,10,
- 11,11,12,12, 5, 6, 6, 7, 7, 9, 9,10,10,11,11,12,
- 12, 7, 7, 7, 9, 9,10,10,11,11,12,12,14,14, 7, 7,
- 7, 9, 9,10,10,11,11,12,12,14,14, 8, 9, 9,10,10,
- 11,11,12,13,14,14,15,15, 8, 9, 9,10,10,11,11,13,
- 13,13,14,15,15,10,10,10,11,12,13,13,14,14,15,15,
- 16,15,10,10,10,11,11,13,13,14,14,15,15,16,16,11,
- 11,11,13,13,14,14,15,15,16,16,17,17,11,11,11,13,
- 13,14,14,15,15,16,16,16,16,
-};
-
-static float _vq_quantthresh_res0_192_1024_6[] = {
- -5.5, -4.5, -3.5, -2.5, -1.5, -0.5, 0.5, 1.5,
- 2.5, 3.5, 4.5, 5.5,
-};
-
-static long _vq_quantmap_res0_192_1024_6[] = {
- 11, 9, 7, 5, 3, 1, 0, 2,
- 4, 6, 8, 10, 12,
-};
-
-static encode_aux_threshmatch _vq_auxt_res0_192_1024_6 = {
- _vq_quantthresh_res0_192_1024_6,
- _vq_quantmap_res0_192_1024_6,
- 13,
- 13
-};
-
-static static_codebook _vq_book_res0_192_1024_6 = {
- 2, 169,
- _vq_lengthlist_res0_192_1024_6,
- 1, -531103744, 1611661312, 4, 0,
- _vq_quantlist_res0_192_1024_6,
- NULL,
- &_vq_auxt_res0_192_1024_6,
- NULL,
- 0
-};
-
-
-#endif
diff --git a/lib/books/res0_192_1024_7.vqh b/lib/books/res0_192_1024_7.vqh
deleted file mode 100644
index 39ef0fa2..00000000
--- a/lib/books/res0_192_1024_7.vqh
+++ /dev/null
@@ -1,236 +0,0 @@
-/********************************************************************
- * *
- * 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_res0_192_1024_7_VQH_
-#define _V_res0_192_1024_7_VQH_
-#include "codebook.h"
-
-static long _vq_quantlist_res0_192_1024_7[] = {
- 22,
- 21,
- 23,
- 20,
- 24,
- 19,
- 25,
- 18,
- 26,
- 17,
- 27,
- 16,
- 28,
- 15,
- 29,
- 14,
- 30,
- 13,
- 31,
- 12,
- 32,
- 11,
- 33,
- 10,
- 34,
- 9,
- 35,
- 8,
- 36,
- 7,
- 37,
- 6,
- 38,
- 5,
- 39,
- 4,
- 40,
- 3,
- 41,
- 2,
- 42,
- 1,
- 43,
- 0,
- 44,
-};
-
-static long _vq_lengthlist_res0_192_1024_7[] = {
- 3, 4, 4, 6, 6, 7, 7, 7, 7, 8, 8, 8, 8, 8, 8, 9,
- 9, 9, 9,10,10,10,10,10,10,10,10,11,11,11,11,11,
- 11,11,11,11,12,12,12,12,12,12,12,12,12, 5, 5, 5,
- 7, 7, 8, 8, 8, 8, 9, 9, 9, 9, 9, 9,10,10,10,10,
- 11,11,11,11,11,11,12,12,12,12,12,12,12,12,13,13,
- 13,13,13,13,13,13,14,14,14,14, 4, 5, 5, 7, 7, 8,
- 8, 8, 8, 9, 9, 9, 9, 9, 9,10,10,10,10,11,11,11,
- 11,11,11,12,12,12,12,12,12,12,12,13,13,13,13,13,
- 13,13,13,14,13,14,14, 6, 7, 7, 8, 8, 9, 9, 9, 9,
- 10,10,10,11,11,11,11,11,12,12,12,12,12,12,13,13,
- 13,13,13,13,13,13,14,14,14,14,14,14,14,14,14,14,
- 15,15,15,15, 6, 7, 7, 8, 8, 9, 9, 9, 9,10,10,10,
- 10,11,11,11,11,12,12,12,12,12,12,13,13,13,13,13,
- 13,13,13,14,14,14,14,14,14,14,14,15,15,15,15,15,
- 15, 7, 8, 8, 9, 9,10,10,10,10,11,11,11,11,11,11,
- 12,12,12,12,13,13,13,13,13,13,14,14,14,14,14,14,
- 15,14,15,15,15,15,15,15,16,15,16,16,16,16, 7, 8,
- 8, 9, 9,10, 9,10,10,11,11,11,11,11,11,12,12,12,
- 12,13,13,13,13,13,13,14,14,14,14,14,14,15,15,15,
- 15,15,15,15,15,15,15,16,16,16,16, 8, 8, 8,10, 9,
- 10,10,11,11,12,12,12,12,12,12,13,13,13,13,14,14,
- 14,14,14,14,14,14,15,15,15,15,15,15,15,15,16,15,
- 16,16,16,16,16,16,16,16, 8, 8, 8, 9,10,10,10,11,
- 11,12,12,12,12,12,12,13,13,13,13,13,14,14,14,14,
- 14,14,14,15,15,15,15,15,15,15,15,15,16,16,16,16,
- 16,17,17,17,16, 8, 9, 9,10,10,11,11,12,12,12,12,
- 13,13,13,13,13,13,14,14,14,14,14,14,15,15,15,15,
- 15,15,15,16,16,16,16,16,16,16,16,16,16,17,17,17,
- 17,17, 8, 9, 9,10,10,11,11,12,12,12,12,13,13,13,
- 13,13,13,14,14,14,14,14,14,15,15,15,15,15,15,16,
- 15,16,16,16,16,16,16,17,16,17,17,17,17,17,17, 9,
- 10,10,11,11,11,11,12,12,13,13,13,13,13,13,14,14,
- 14,14,15,14,15,15,15,15,15,15,16,15,16,16,16,16,
- 16,16,17,17,17,16,17,17,17,17,18,17, 9,10,10,11,
- 11,12,12,12,12,13,13,13,13,13,14,14,14,14,14,14,
- 15,15,15,15,15,15,15,16,16,16,16,16,16,16,16,17,
- 16,16,17,17,17,17,17,17,17, 9,10,10,11,11,12,12,
- 12,12,13,13,13,13,14,14,14,14,15,15,15,15,15,15,
- 15,16,16,16,16,16,16,16,16,17,17,17,17,17,18,17,
- 17,17,17,17,17,17, 9,10,10,11,11,12,12,12,12,13,
- 13,13,14,14,14,14,14,15,15,15,15,15,15,16,16,16,
- 16,16,16,16,16,16,17,17,17,17,17,17,17,17,17,18,
- 18,18,18, 9,10,10,11,11,12,12,13,13,13,13,14,14,
- 14,14,15,15,15,15,15,15,16,16,16,16,16,17,16,16,
- 17,16,17,17,17,17,17,17,18,18,18,17,18,18,18,18,
- 9,10,10,11,11,12,12,13,13,13,13,14,14,14,15,15,
- 15,15,15,15,15,16,16,16,16,16,16,17,16,17,17,17,
- 17,17,17,17,18,17,18,18,18,18,18,18,18,10,11,11,
- 12,12,13,13,13,13,14,14,14,14,15,15,15,15,15,15,
- 16,16,16,16,16,16,16,16,17,17,17,17,17,17,17,18,
- 18,17,18,18,18,18,18,18,18,19,10,11,11,12,12,13,
- 13,13,13,14,14,14,14,15,15,15,15,16,15,16,16,16,
- 16,16,16,17,17,17,17,17,17,17,17,18,17,18,17,18,
- 18,18,18,18,18,18,18,10,11,11,12,12,13,13,14,14,
- 15,14,15,15,15,15,15,16,16,16,16,16,16,16,17,16,
- 17,17,17,17,17,17,18,17,17,18,18,18,18,18,19,19,
- 18,19,19,19,10,11,11,12,12,13,13,14,14,14,14,15,
- 15,15,15,15,15,16,16,16,16,16,16,17,17,17,17,17,
- 17,17,17,17,17,18,18,17,18,18,18,18,18,18,18,19,
- 18,10,11,11,13,13,14,14,14,14,15,15,15,15,15,15,
- 16,16,17,16,16,17,17,17,17,17,17,17,18,17,18,17,
- 18,18,18,18,18,18,18,18,19,19,18,18,19,19,10,12,
- 11,13,13,14,13,14,14,15,15,15,15,16,16,16,16,16,
- 16,16,17,16,16,17,17,17,17,18,17,17,18,17,18,18,
- 18,18,18,18,19,19,18,19,19,19,18,11,12,12,13,13,
- 14,14,15,14,15,15,16,15,16,16,16,16,17,17,17,17,
- 17,17,17,18,17,17,18,18,18,18,18,18,19,18,19,20,
- 18,18,18,19,19,19,19,19,11,12,12,13,13,14,14,15,
- 15,15,15,15,15,16,16,16,16,17,17,17,17,17,17,17,
- 17,18,17,17,17,18,18,18,18,17,18,18,18,19,19,19,
- 19,19,19,19,19,11,12,12,14,13,14,14,15,15,15,15,
- 16,16,16,16,17,17,17,17,17,17,17,18,17,18,17,18,
- 18,18,18,18,19,18,19,19,19,18,18,19,19,19,19,19,
- 19,19,11,12,12,13,13,14,14,15,15,15,15,16,16,16,
- 16,17,17,17,17,17,17,17,17,17,18,18,17,18,18,19,
- 18,18,19,19,18,19,19,19,19,19,19,19,19,19,19,11,
- 12,12,14,14,14,15,15,15,16,15,16,17,16,17,16,17,
- 17,17,17,17,17,17,18,18,17,18,18,18,19,18,19,19,
- 19,18,20,19,18,18,19,19,21,19,20,19,11,13,12,14,
- 14,15,14,16,15,16,16,16,16,17,16,17,17,17,17,17,
- 17,17,18,18,18,18,18,18,18,19,19,19,18,19,19,19,
- 18,20,19,19,18,19,19,19,20,12,13,13,14,14,15,15,
- 16,16,16,16,16,16,16,17,17,18,17,17,18,18,17,18,
- 18,18,18,18,19,18,18,19,19,18,19,19,19,19,19,19,
- 19,20,20,21,20,20,12,13,13,14,14,15,15,15,16,16,
- 16,16,16,17,17,17,17,17,17,18,18,18,18,18,18,18,
- 17,19,18,18,19,19,19,19,19,19,19,19,19,19,20,19,
- 19,21,21,12,13,13,14,14,15,15,16,16,17,16,16,17,
- 17,17,18,17,18,18,17,18,19,18,18,19,19,19,18,18,
- 19,19,19,19,19,18,20,19,19,20,20,20,19,19,19,19,
- 12,13,13,14,14,15,15,16,16,16,17,16,17,17,17,18,
- 17,18,17,18,18,18,18,18,18,18,18,18,18,18,19,18,
- 19,19,19,19,19,20,21,19,19,20,19,19,21,12,13,13,
- 15,15,15,16,16,16,17,17,17,17,17,17,18,17,18,18,
- 18,19,18,18,19,18,19,19,19,18,18,19,19,19,19,20,
- 21,20,20,20,21,19,20,20,20,21,12,13,13,15,15,16,
- 15,16,16,17,17,17,17,17,17,18,18,18,18,19,18,18,
- 19,19,18,19,18,19,18,19,19,19,20,20,19,19,21,19,
- 21,20,19,19,20,20,20,12,14,14,15,15,16,16,16,16,
- 17,17,17,17,17,18,18,18,18,18,18,19,19,18,18,19,
- 19,19,19,19,19,19,19,20,19,19,19,19,19,20,19,19,
- 21,20,20,19,12,14,14,15,15,16,16,17,16,17,17,17,
- 17,18,18,17,17,18,18,19,18,19,18,18,19,19,19,18,
- 19,20,19,19,19,19,19,21,19,20,20,20,20,20,19,21,
- 21,13,14,14,15,15,16,16,17,17,17,17,18,18,18,18,
- 18,18,19,19,19,19,18,19,19,19,19,20,19,19,20,19,
- 19,20,20,20,19,19,20,19,20,20,20,19,20,21,13,14,
- 14,15,15,16,16,17,17,17,18,18,18,18,18,18,18,18,
- 18,19,18,19,19,19,20,19,18,19,19,20,20,20,19,20,
- 20,19,19,20,19,21,21,21,22,20,21,13,14,14,15,15,
- 16,16,17,17,18,17,18,18,18,18,19,18,19,18,19,18,
- 19,19,20,19,19,19,19,19,20,20,19,19,19,19,22,20,
- 19,20,21,20,21,20,20,20,13,14,14,15,15,16,16,17,
- 17,17,17,18,18,19,18,18,18,18,18,19,18,19,18,19,
- 19,19,19,20,20,20,19,20,20,20,20,20,20,21,22,21,
- 20,19,20,21,22,13,14,14,15,16,17,16,17,17,17,18,
- 18,19,18,18,19,19,18,19,20,20,20,19,19,19,19,20,
- 21,20,20,20,21,19,21,21,21,21,20,20,21,21,20,22,
- 20,20,13,14,14,16,16,17,17,17,17,17,17,19,18,18,
- 18,19,19,19,19,19,19,19,19,20,19,20,20,20,20,19,
- 19,19,19,20,20,20,20,20,19,20,20,21,21,21,22,13,
- 15,15,16,16,17,17,17,17,18,18,18,19,20,18,19,19,
- 19,20,19,19,19,19,19,20,19,21,20,21,20,20,21,20,
- 19,20,21,20,21,21,20,21,20,20,21,21,13,15,15,16,
- 16,17,17,18,17,18,19,18,18,19,18,19,19,19,19,18,
- 20,20,19,20,20,20,20,20,21,19,19,19,20,20,20,20,
- 20,20,19,20,20,21,21,21,19,
-};
-
-static float _vq_quantthresh_res0_192_1024_7[] = {
- -21.5, -20.5, -19.5, -18.5, -17.5, -16.5, -15.5, -14.5,
- -13.5, -12.5, -11.5, -10.5, -9.5, -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, 9.5,
- 10.5, 11.5, 12.5, 13.5, 14.5, 15.5, 16.5, 17.5,
- 18.5, 19.5, 20.5, 21.5,
-};
-
-static long _vq_quantmap_res0_192_1024_7[] = {
- 43, 41, 39, 37, 35, 33, 31, 29,
- 27, 25, 23, 21, 19, 17, 15, 13,
- 11, 9, 7, 5, 3, 1, 0, 2,
- 4, 6, 8, 10, 12, 14, 16, 18,
- 20, 22, 24, 26, 28, 30, 32, 34,
- 36, 38, 40, 42, 44,
-};
-
-static encode_aux_threshmatch _vq_auxt_res0_192_1024_7 = {
- _vq_quantthresh_res0_192_1024_7,
- _vq_quantmap_res0_192_1024_7,
- 45,
- 45
-};
-
-static static_codebook _vq_book_res0_192_1024_7 = {
- 2, 2025,
- _vq_lengthlist_res0_192_1024_7,
- 1, -527040512, 1611661312, 6, 0,
- _vq_quantlist_res0_192_1024_7,
- NULL,
- &_vq_auxt_res0_192_1024_7,
- NULL,
- 0
-};
-
-
-#endif
diff --git a/lib/books/res0_192_1024_8.vqh b/lib/books/res0_192_1024_8.vqh
deleted file mode 100644
index 968804b7..00000000
--- a/lib/books/res0_192_1024_8.vqh
+++ /dev/null
@@ -1,160 +0,0 @@
-/********************************************************************
- * *
- * 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_res0_192_1024_8_VQH_
-#define _V_res0_192_1024_8_VQH_
-#include "codebook.h"
-
-static long _vq_quantlist_res0_192_1024_8[] = {
- 40,
- 39,
- 41,
- 38,
- 42,
- 37,
- 43,
- 36,
- 44,
- 35,
- 45,
- 34,
- 46,
- 33,
- 47,
- 32,
- 48,
- 31,
- 49,
- 30,
- 50,
- 29,
- 51,
- 28,
- 52,
- 27,
- 53,
- 26,
- 54,
- 25,
- 55,
- 24,
- 56,
- 23,
- 57,
- 22,
- 58,
- 21,
- 59,
- 20,
- 60,
- 19,
- 61,
- 18,
- 62,
- 17,
- 63,
- 16,
- 64,
- 15,
- 65,
- 14,
- 66,
- 13,
- 67,
- 12,
- 68,
- 11,
- 69,
- 10,
- 70,
- 9,
- 71,
- 8,
- 72,
- 7,
- 73,
- 6,
- 74,
- 5,
- 75,
- 4,
- 76,
- 3,
- 77,
- 2,
- 78,
- 1,
- 79,
- 0,
- 80,
-};
-
-static long _vq_lengthlist_res0_192_1024_8[] = {
- 2, 3, 3, 4, 4, 5, 5, 5, 6, 6, 6, 6, 6, 6, 7, 7,
- 7, 7, 7, 7, 7, 7, 7, 8, 8, 8, 8, 8, 8, 8, 8, 8,
- 8, 8, 8, 9, 8, 9, 9, 9, 9, 9, 9, 9, 9, 8, 8, 9,
- 8, 9, 9, 9, 9, 9, 9, 9, 9,10, 9,10,10,10,10,10,
- 10,10,10,10,10,10,10,11,11,11,11,11,11,11,11,11,
- 11,
-};
-
-static float _vq_quantthresh_res0_192_1024_8[] = {
- -39.5, -38.5, -37.5, -36.5, -35.5, -34.5, -33.5, -32.5,
- -31.5, -30.5, -29.5, -28.5, -27.5, -26.5, -25.5, -24.5,
- -23.5, -22.5, -21.5, -20.5, -19.5, -18.5, -17.5, -16.5,
- -15.5, -14.5, -13.5, -12.5, -11.5, -10.5, -9.5, -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, 9.5, 10.5, 11.5, 12.5, 13.5, 14.5, 15.5,
- 16.5, 17.5, 18.5, 19.5, 20.5, 21.5, 22.5, 23.5,
- 24.5, 25.5, 26.5, 27.5, 28.5, 29.5, 30.5, 31.5,
- 32.5, 33.5, 34.5, 35.5, 36.5, 37.5, 38.5, 39.5,
-};
-
-static long _vq_quantmap_res0_192_1024_8[] = {
- 79, 77, 75, 73, 71, 69, 67, 65,
- 63, 61, 59, 57, 55, 53, 51, 49,
- 47, 45, 43, 41, 39, 37, 35, 33,
- 31, 29, 27, 25, 23, 21, 19, 17,
- 15, 13, 11, 9, 7, 5, 3, 1,
- 0, 2, 4, 6, 8, 10, 12, 14,
- 16, 18, 20, 22, 24, 26, 28, 30,
- 32, 34, 36, 38, 40, 42, 44, 46,
- 48, 50, 52, 54, 56, 58, 60, 62,
- 64, 66, 68, 70, 72, 74, 76, 78,
- 80,
-};
-
-static encode_aux_threshmatch _vq_auxt_res0_192_1024_8 = {
- _vq_quantthresh_res0_192_1024_8,
- _vq_quantmap_res0_192_1024_8,
- 81,
- 81
-};
-
-static static_codebook _vq_book_res0_192_1024_8 = {
- 1, 81,
- _vq_lengthlist_res0_192_1024_8,
- 1, -525074432, 1611661312, 7, 0,
- _vq_quantlist_res0_192_1024_8,
- NULL,
- &_vq_auxt_res0_192_1024_8,
- NULL,
- 0
-};
-
-
-#endif
diff --git a/lib/books/res0_192_1024_9.vqh b/lib/books/res0_192_1024_9.vqh
deleted file mode 100644
index 28101f63..00000000
--- a/lib/books/res0_192_1024_9.vqh
+++ /dev/null
@@ -1,790 +0,0 @@
-/********************************************************************
- * *
- * 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_res0_192_1024_9_VQH_
-#define _V_res0_192_1024_9_VQH_
-#include "codebook.h"
-
-static long _vq_quantlist_res0_192_1024_9[] = {
- 280,
- 279,
- 281,
- 278,
- 282,
- 277,
- 283,
- 276,
- 284,
- 275,
- 285,
- 274,
- 286,
- 273,
- 287,
- 272,
- 288,
- 271,
- 289,
- 270,
- 290,
- 269,
- 291,
- 268,
- 292,
- 267,
- 293,
- 266,
- 294,
- 265,
- 295,
- 264,
- 296,
- 263,
- 297,
- 262,
- 298,
- 261,
- 299,
- 260,
- 300,
- 259,
- 301,
- 258,
- 302,
- 257,
- 303,
- 256,
- 304,
- 255,
- 305,
- 254,
- 306,
- 253,
- 307,
- 252,
- 308,
- 251,
- 309,
- 250,
- 310,
- 249,
- 311,
- 248,
- 312,
- 247,
- 313,
- 246,
- 314,
- 245,
- 315,
- 244,
- 316,
- 243,
- 317,
- 242,
- 318,
- 241,
- 319,
- 240,
- 320,
- 239,
- 321,
- 238,
- 322,
- 237,
- 323,
- 236,
- 324,
- 235,
- 325,
- 234,
- 326,
- 233,
- 327,
- 232,
- 328,
- 231,
- 329,
- 230,
- 330,
- 229,
- 331,
- 228,
- 332,
- 227,
- 333,
- 226,
- 334,
- 225,
- 335,
- 224,
- 336,
- 223,
- 337,
- 222,
- 338,
- 221,
- 339,
- 220,
- 340,
- 219,
- 341,
- 218,
- 342,
- 217,
- 343,
- 216,
- 344,
- 215,
- 345,
- 214,
- 346,
- 213,
- 347,
- 212,
- 348,
- 211,
- 349,
- 210,
- 350,
- 209,
- 351,
- 208,
- 352,
- 207,
- 353,
- 206,
- 354,
- 205,
- 355,
- 204,
- 356,
- 203,
- 357,
- 202,
- 358,
- 201,
- 359,
- 200,
- 360,
- 199,
- 361,
- 198,
- 362,
- 197,
- 363,
- 196,
- 364,
- 195,
- 365,
- 194,
- 366,
- 193,
- 367,
- 192,
- 368,
- 191,
- 369,
- 190,
- 370,
- 189,
- 371,
- 188,
- 372,
- 187,
- 373,
- 186,
- 374,
- 185,
- 375,
- 184,
- 376,
- 183,
- 377,
- 182,
- 378,
- 181,
- 379,
- 180,
- 380,
- 179,
- 381,
- 178,
- 382,
- 177,
- 383,
- 176,
- 384,
- 175,
- 385,
- 174,
- 386,
- 173,
- 387,
- 172,
- 388,
- 171,
- 389,
- 170,
- 390,
- 169,
- 391,
- 168,
- 392,
- 167,
- 393,
- 166,
- 394,
- 165,
- 395,
- 164,
- 396,
- 163,
- 397,
- 162,
- 398,
- 161,
- 399,
- 160,
- 400,
- 159,
- 401,
- 158,
- 402,
- 157,
- 403,
- 156,
- 404,
- 155,
- 405,
- 154,
- 406,
- 153,
- 407,
- 152,
- 408,
- 151,
- 409,
- 150,
- 410,
- 149,
- 411,
- 148,
- 412,
- 147,
- 413,
- 146,
- 414,
- 145,
- 415,
- 144,
- 416,
- 143,
- 417,
- 142,
- 418,
- 141,
- 419,
- 140,
- 420,
- 139,
- 421,
- 138,
- 422,
- 137,
- 423,
- 136,
- 424,
- 135,
- 425,
- 134,
- 426,
- 133,
- 427,
- 132,
- 428,
- 131,
- 429,
- 130,
- 430,
- 129,
- 431,
- 128,
- 432,
- 127,
- 433,
- 126,
- 434,
- 125,
- 435,
- 124,
- 436,
- 123,
- 437,
- 122,
- 438,
- 121,
- 439,
- 120,
- 440,
- 119,
- 441,
- 118,
- 442,
- 117,
- 443,
- 116,
- 444,
- 115,
- 445,
- 114,
- 446,
- 113,
- 447,
- 112,
- 448,
- 111,
- 449,
- 110,
- 450,
- 109,
- 451,
- 108,
- 452,
- 107,
- 453,
- 106,
- 454,
- 105,
- 455,
- 104,
- 456,
- 103,
- 457,
- 102,
- 458,
- 101,
- 459,
- 100,
- 460,
- 99,
- 461,
- 98,
- 462,
- 97,
- 463,
- 96,
- 464,
- 95,
- 465,
- 94,
- 466,
- 93,
- 467,
- 92,
- 468,
- 91,
- 469,
- 90,
- 470,
- 89,
- 471,
- 88,
- 472,
- 87,
- 473,
- 86,
- 474,
- 85,
- 475,
- 84,
- 476,
- 83,
- 477,
- 82,
- 478,
- 81,
- 479,
- 80,
- 480,
- 79,
- 481,
- 78,
- 482,
- 77,
- 483,
- 76,
- 484,
- 75,
- 485,
- 74,
- 486,
- 73,
- 487,
- 72,
- 488,
- 71,
- 489,
- 70,
- 490,
- 69,
- 491,
- 68,
- 492,
- 67,
- 493,
- 66,
- 494,
- 65,
- 495,
- 64,
- 496,
- 63,
- 497,
- 62,
- 498,
- 61,
- 499,
- 60,
- 500,
- 59,
- 501,
- 58,
- 502,
- 57,
- 503,
- 56,
- 504,
- 55,
- 505,
- 54,
- 506,
- 53,
- 507,
- 52,
- 508,
- 51,
- 509,
- 50,
- 510,
- 49,
- 511,
- 48,
- 512,
- 47,
- 513,
- 46,
- 514,
- 45,
- 515,
- 44,
- 516,
- 43,
- 517,
- 42,
- 518,
- 41,
- 519,
- 40,
- 520,
- 39,
- 521,
- 38,
- 522,
- 37,
- 523,
- 36,
- 524,
- 35,
- 525,
- 34,
- 526,
- 33,
- 527,
- 32,
- 528,
- 31,
- 529,
- 30,
- 530,
- 29,
- 531,
- 28,
- 532,
- 27,
- 533,
- 26,
- 534,
- 25,
- 535,
- 24,
- 536,
- 23,
- 537,
- 22,
- 538,
- 21,
- 539,
- 20,
- 540,
- 19,
- 541,
- 18,
- 542,
- 17,
- 543,
- 16,
- 544,
- 15,
- 545,
- 14,
- 546,
- 13,
- 547,
- 12,
- 548,
- 11,
- 549,
- 10,
- 550,
- 9,
- 551,
- 8,
- 552,
- 7,
- 553,
- 6,
- 554,
- 5,
- 555,
- 4,
- 556,
- 3,
- 557,
- 2,
- 558,
- 1,
- 559,
- 0,
- 560,
-};
-
-static long _vq_lengthlist_res0_192_1024_9[] = {
- 3, 4, 4, 4, 4, 5, 5, 5, 5, 5, 5, 6, 6, 6, 6, 6,
- 6, 6, 6, 6, 6, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7,
- 7, 7, 7, 7, 7, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8,
- 8, 8, 8, 8, 8, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9,
- 9, 9, 9, 9, 9,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,10,10,10,10,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,
- 12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,
- 12,12,12,12,12,12,12,12,12,13,13,13,12,13,12,13,
- 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
- 13,13,13,13,13,13,14,13,13,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,14,14,14,14,14,14,15,15,15,15,15,15,15,15,
- 15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,
- 15,15,15,15,16,15,16,15,16,15,16,16,15,16,15,16,
- 16,15,16,16,16,16,16,15,16,16,16,16,16,17,16,16,
- 16,17,16,16,15,17,17,16,17,16,16,16,17,16,17,17,
- 16,17,16,16,16,16,18,16,17,17,17,16,16,17,17,17,
- 17,17,17,16,17,18,17,18,17,17,18,18,17,17,17,17,
- 17,18,18,17,17,18,17,17,18,18,19,17,18,17,18,18,
- 18,18,18,18,18,18,18,18,18,19,18,18,18,18,18,19,
- 18,20,18,19,19,18,18,19,19,18,19,19,18,20,19,19,
- 19,18,19,19,18,19,18,20,19,20,20,18,19,18,20,20,
- 19,19,18,20,19,19,20,20,19,20,19,20,20,19,18,19,
- 19,19,20,19,18,20,20,18,19,18,19,19,20,20,20,19,
- 19,20,20,19,19,19,20,20,20,20,19,19,20,20,20,20,
- 19,20,20,20,19,20,19,20,20,19,19,19,20,19,20,19,
- 20,20,20,20,19,20,19,20,20,20,20,20,20,20,20,20,
- 20,19,20,20,20,19,20,20,20,20,20,20,20,19,20,19,
- 20,20,20,20,20,20,20,20,19,20,19,20,20,20,20,20,
- 20,19,20,20,20,20,20,20,20,20,20,20,20,20,20,20,
- 20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,
- 20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,
- 20,20,20,20,20,20,20,20,19,20,20,20,20,20,20,20,
- 20,
-};
-
-static float _vq_quantthresh_res0_192_1024_9[] = {
- -279.5, -278.5, -277.5, -276.5, -275.5, -274.5, -273.5, -272.5,
- -271.5, -270.5, -269.5, -268.5, -267.5, -266.5, -265.5, -264.5,
- -263.5, -262.5, -261.5, -260.5, -259.5, -258.5, -257.5, -256.5,
- -255.5, -254.5, -253.5, -252.5, -251.5, -250.5, -249.5, -248.5,
- -247.5, -246.5, -245.5, -244.5, -243.5, -242.5, -241.5, -240.5,
- -239.5, -238.5, -237.5, -236.5, -235.5, -234.5, -233.5, -232.5,
- -231.5, -230.5, -229.5, -228.5, -227.5, -226.5, -225.5, -224.5,
- -223.5, -222.5, -221.5, -220.5, -219.5, -218.5, -217.5, -216.5,
- -215.5, -214.5, -213.5, -212.5, -211.5, -210.5, -209.5, -208.5,
- -207.5, -206.5, -205.5, -204.5, -203.5, -202.5, -201.5, -200.5,
- -199.5, -198.5, -197.5, -196.5, -195.5, -194.5, -193.5, -192.5,
- -191.5, -190.5, -189.5, -188.5, -187.5, -186.5, -185.5, -184.5,
- -183.5, -182.5, -181.5, -180.5, -179.5, -178.5, -177.5, -176.5,
- -175.5, -174.5, -173.5, -172.5, -171.5, -170.5, -169.5, -168.5,
- -167.5, -166.5, -165.5, -164.5, -163.5, -162.5, -161.5, -160.5,
- -159.5, -158.5, -157.5, -156.5, -155.5, -154.5, -153.5, -152.5,
- -151.5, -150.5, -149.5, -148.5, -147.5, -146.5, -145.5, -144.5,
- -143.5, -142.5, -141.5, -140.5, -139.5, -138.5, -137.5, -136.5,
- -135.5, -134.5, -133.5, -132.5, -131.5, -130.5, -129.5, -128.5,
- -127.5, -126.5, -125.5, -124.5, -123.5, -122.5, -121.5, -120.5,
- -119.5, -118.5, -117.5, -116.5, -115.5, -114.5, -113.5, -112.5,
- -111.5, -110.5, -109.5, -108.5, -107.5, -106.5, -105.5, -104.5,
- -103.5, -102.5, -101.5, -100.5, -99.5, -98.5, -97.5, -96.5,
- -95.5, -94.5, -93.5, -92.5, -91.5, -90.5, -89.5, -88.5,
- -87.5, -86.5, -85.5, -84.5, -83.5, -82.5, -81.5, -80.5,
- -79.5, -78.5, -77.5, -76.5, -75.5, -74.5, -73.5, -72.5,
- -71.5, -70.5, -69.5, -68.5, -67.5, -66.5, -65.5, -64.5,
- -63.5, -62.5, -61.5, -60.5, -59.5, -58.5, -57.5, -56.5,
- -55.5, -54.5, -53.5, -52.5, -51.5, -50.5, -49.5, -48.5,
- -47.5, -46.5, -45.5, -44.5, -43.5, -42.5, -41.5, -40.5,
- -39.5, -38.5, -37.5, -36.5, -35.5, -34.5, -33.5, -32.5,
- -31.5, -30.5, -29.5, -28.5, -27.5, -26.5, -25.5, -24.5,
- -23.5, -22.5, -21.5, -20.5, -19.5, -18.5, -17.5, -16.5,
- -15.5, -14.5, -13.5, -12.5, -11.5, -10.5, -9.5, -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, 9.5, 10.5, 11.5, 12.5, 13.5, 14.5, 15.5,
- 16.5, 17.5, 18.5, 19.5, 20.5, 21.5, 22.5, 23.5,
- 24.5, 25.5, 26.5, 27.5, 28.5, 29.5, 30.5, 31.5,
- 32.5, 33.5, 34.5, 35.5, 36.5, 37.5, 38.5, 39.5,
- 40.5, 41.5, 42.5, 43.5, 44.5, 45.5, 46.5, 47.5,
- 48.5, 49.5, 50.5, 51.5, 52.5, 53.5, 54.5, 55.5,
- 56.5, 57.5, 58.5, 59.5, 60.5, 61.5, 62.5, 63.5,
- 64.5, 65.5, 66.5, 67.5, 68.5, 69.5, 70.5, 71.5,
- 72.5, 73.5, 74.5, 75.5, 76.5, 77.5, 78.5, 79.5,
- 80.5, 81.5, 82.5, 83.5, 84.5, 85.5, 86.5, 87.5,
- 88.5, 89.5, 90.5, 91.5, 92.5, 93.5, 94.5, 95.5,
- 96.5, 97.5, 98.5, 99.5, 100.5, 101.5, 102.5, 103.5,
- 104.5, 105.5, 106.5, 107.5, 108.5, 109.5, 110.5, 111.5,
- 112.5, 113.5, 114.5, 115.5, 116.5, 117.5, 118.5, 119.5,
- 120.5, 121.5, 122.5, 123.5, 124.5, 125.5, 126.5, 127.5,
- 128.5, 129.5, 130.5, 131.5, 132.5, 133.5, 134.5, 135.5,
- 136.5, 137.5, 138.5, 139.5, 140.5, 141.5, 142.5, 143.5,
- 144.5, 145.5, 146.5, 147.5, 148.5, 149.5, 150.5, 151.5,
- 152.5, 153.5, 154.5, 155.5, 156.5, 157.5, 158.5, 159.5,
- 160.5, 161.5, 162.5, 163.5, 164.5, 165.5, 166.5, 167.5,
- 168.5, 169.5, 170.5, 171.5, 172.5, 173.5, 174.5, 175.5,
- 176.5, 177.5, 178.5, 179.5, 180.5, 181.5, 182.5, 183.5,
- 184.5, 185.5, 186.5, 187.5, 188.5, 189.5, 190.5, 191.5,
- 192.5, 193.5, 194.5, 195.5, 196.5, 197.5, 198.5, 199.5,
- 200.5, 201.5, 202.5, 203.5, 204.5, 205.5, 206.5, 207.5,
- 208.5, 209.5, 210.5, 211.5, 212.5, 213.5, 214.5, 215.5,
- 216.5, 217.5, 218.5, 219.5, 220.5, 221.5, 222.5, 223.5,
- 224.5, 225.5, 226.5, 227.5, 228.5, 229.5, 230.5, 231.5,
- 232.5, 233.5, 234.5, 235.5, 236.5, 237.5, 238.5, 239.5,
- 240.5, 241.5, 242.5, 243.5, 244.5, 245.5, 246.5, 247.5,
- 248.5, 249.5, 250.5, 251.5, 252.5, 253.5, 254.5, 255.5,
- 256.5, 257.5, 258.5, 259.5, 260.5, 261.5, 262.5, 263.5,
- 264.5, 265.5, 266.5, 267.5, 268.5, 269.5, 270.5, 271.5,
- 272.5, 273.5, 274.5, 275.5, 276.5, 277.5, 278.5, 279.5,
-};
-
-static long _vq_quantmap_res0_192_1024_9[] = {
- 559, 557, 555, 553, 551, 549, 547, 545,
- 543, 541, 539, 537, 535, 533, 531, 529,
- 527, 525, 523, 521, 519, 517, 515, 513,
- 511, 509, 507, 505, 503, 501, 499, 497,
- 495, 493, 491, 489, 487, 485, 483, 481,
- 479, 477, 475, 473, 471, 469, 467, 465,
- 463, 461, 459, 457, 455, 453, 451, 449,
- 447, 445, 443, 441, 439, 437, 435, 433,
- 431, 429, 427, 425, 423, 421, 419, 417,
- 415, 413, 411, 409, 407, 405, 403, 401,
- 399, 397, 395, 393, 391, 389, 387, 385,
- 383, 381, 379, 377, 375, 373, 371, 369,
- 367, 365, 363, 361, 359, 357, 355, 353,
- 351, 349, 347, 345, 343, 341, 339, 337,
- 335, 333, 331, 329, 327, 325, 323, 321,
- 319, 317, 315, 313, 311, 309, 307, 305,
- 303, 301, 299, 297, 295, 293, 291, 289,
- 287, 285, 283, 281, 279, 277, 275, 273,
- 271, 269, 267, 265, 263, 261, 259, 257,
- 255, 253, 251, 249, 247, 245, 243, 241,
- 239, 237, 235, 233, 231, 229, 227, 225,
- 223, 221, 219, 217, 215, 213, 211, 209,
- 207, 205, 203, 201, 199, 197, 195, 193,
- 191, 189, 187, 185, 183, 181, 179, 177,
- 175, 173, 171, 169, 167, 165, 163, 161,
- 159, 157, 155, 153, 151, 149, 147, 145,
- 143, 141, 139, 137, 135, 133, 131, 129,
- 127, 125, 123, 121, 119, 117, 115, 113,
- 111, 109, 107, 105, 103, 101, 99, 97,
- 95, 93, 91, 89, 87, 85, 83, 81,
- 79, 77, 75, 73, 71, 69, 67, 65,
- 63, 61, 59, 57, 55, 53, 51, 49,
- 47, 45, 43, 41, 39, 37, 35, 33,
- 31, 29, 27, 25, 23, 21, 19, 17,
- 15, 13, 11, 9, 7, 5, 3, 1,
- 0, 2, 4, 6, 8, 10, 12, 14,
- 16, 18, 20, 22, 24, 26, 28, 30,
- 32, 34, 36, 38, 40, 42, 44, 46,
- 48, 50, 52, 54, 56, 58, 60, 62,
- 64, 66, 68, 70, 72, 74, 76, 78,
- 80, 82, 84, 86, 88, 90, 92, 94,
- 96, 98, 100, 102, 104, 106, 108, 110,
- 112, 114, 116, 118, 120, 122, 124, 126,
- 128, 130, 132, 134, 136, 138, 140, 142,
- 144, 146, 148, 150, 152, 154, 156, 158,
- 160, 162, 164, 166, 168, 170, 172, 174,
- 176, 178, 180, 182, 184, 186, 188, 190,
- 192, 194, 196, 198, 200, 202, 204, 206,
- 208, 210, 212, 214, 216, 218, 220, 222,
- 224, 226, 228, 230, 232, 234, 236, 238,
- 240, 242, 244, 246, 248, 250, 252, 254,
- 256, 258, 260, 262, 264, 266, 268, 270,
- 272, 274, 276, 278, 280, 282, 284, 286,
- 288, 290, 292, 294, 296, 298, 300, 302,
- 304, 306, 308, 310, 312, 314, 316, 318,
- 320, 322, 324, 326, 328, 330, 332, 334,
- 336, 338, 340, 342, 344, 346, 348, 350,
- 352, 354, 356, 358, 360, 362, 364, 366,
- 368, 370, 372, 374, 376, 378, 380, 382,
- 384, 386, 388, 390, 392, 394, 396, 398,
- 400, 402, 404, 406, 408, 410, 412, 414,
- 416, 418, 420, 422, 424, 426, 428, 430,
- 432, 434, 436, 438, 440, 442, 444, 446,
- 448, 450, 452, 454, 456, 458, 460, 462,
- 464, 466, 468, 470, 472, 474, 476, 478,
- 480, 482, 484, 486, 488, 490, 492, 494,
- 496, 498, 500, 502, 504, 506, 508, 510,
- 512, 514, 516, 518, 520, 522, 524, 526,
- 528, 530, 532, 534, 536, 538, 540, 542,
- 544, 546, 548, 550, 552, 554, 556, 558,
- 560,
-};
-
-static encode_aux_threshmatch _vq_auxt_res0_192_1024_9 = {
- _vq_quantthresh_res0_192_1024_9,
- _vq_quantmap_res0_192_1024_9,
- 561,
- 561
-};
-
-static static_codebook _vq_book_res0_192_1024_9 = {
- 1, 561,
- _vq_lengthlist_res0_192_1024_9,
- 1, -518946816, 1611661312, 10, 0,
- _vq_quantlist_res0_192_1024_9,
- NULL,
- &_vq_auxt_res0_192_1024_9,
- NULL,
- 0
-};
-
-
-#endif
diff --git a/lib/books/res0_192_1024aux.vqh b/lib/books/res0_192_1024aux.vqh
deleted file mode 100644
index 5f4c88e5..00000000
--- a/lib/books/res0_192_1024aux.vqh
+++ /dev/null
@@ -1,43 +0,0 @@
-/********************************************************************
- * *
- * 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 huff/huffbuld
-
- ********************************************************************/
-
-#ifndef _V_res0_192_1024aux_VQH_
-#define _V_res0_192_1024aux_VQH_
-#include "codebook.h"
-
-static long _huff_lengthlist_res0_192_1024aux[] = {
- 3, 7,12,11,17,10,15,11,15,21, 5, 5, 8, 8,11, 9,
- 10,10,13,21, 9, 6, 6, 7, 8, 8, 8,11,15,21, 9, 6,
- 6, 6, 6, 6, 6, 9,13,19,14,10, 7, 6, 5, 5, 5,10,
- 16,21,10, 8, 7, 6, 5, 5, 5, 7,12,19,14, 9, 7, 6,
- 5, 5, 4, 6,11,19, 9, 9, 9, 8, 8, 6, 5, 4, 7,13,
- 11,11,13,11,12, 9, 7, 5, 7,13,12,12,13,11,13,10,
- 8, 5, 8,13,
-};
-
-static static_codebook _huff_book_res0_192_1024aux = {
- 2, 100,
- _huff_lengthlist_res0_192_1024aux,
- 0, 0, 0, 0, 0,
- NULL,
- NULL,
- NULL,
- 0
-};
-
-
-#endif
diff --git a/lib/books/res0_192_128_1.vqh b/lib/books/res0_192_128_1.vqh
deleted file mode 100644
index 075b97f8..00000000
--- a/lib/books/res0_192_128_1.vqh
+++ /dev/null
@@ -1,63 +0,0 @@
-/********************************************************************
- * *
- * 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_res0_192_128_1_VQH_
-#define _V_res0_192_128_1_VQH_
-#include "codebook.h"
-
-static long _vq_quantlist_res0_192_128_1[] = {
- 1,
- 0,
- 2,
-};
-
-static long _vq_lengthlist_res0_192_128_1[] = {
- 2, 4, 4, 5, 6, 6, 5, 6, 6, 5, 7, 6, 7, 7, 8, 6,
- 7, 8, 5, 6, 7, 6, 8, 7, 6, 8, 7, 5, 7, 7, 7, 8,
- 8, 7, 8, 8, 7, 8, 8, 8, 8, 9, 8, 9, 9, 7, 8, 8,
- 8, 9, 8, 8, 9, 9, 5, 7, 7, 7, 8, 8, 7, 8, 8, 7,
- 8, 8, 8, 9, 9, 8, 8, 9, 7, 8, 8, 8, 9, 9, 8, 9,
- 8,
-};
-
-static float _vq_quantthresh_res0_192_128_1[] = {
- -0.5, 0.5,
-};
-
-static long _vq_quantmap_res0_192_128_1[] = {
- 1, 0, 2,
-};
-
-static encode_aux_threshmatch _vq_auxt_res0_192_128_1 = {
- _vq_quantthresh_res0_192_128_1,
- _vq_quantmap_res0_192_128_1,
- 3,
- 3
-};
-
-static static_codebook _vq_book_res0_192_128_1 = {
- 4, 81,
- _vq_lengthlist_res0_192_128_1,
- 1, -535822336, 1611661312, 2, 0,
- _vq_quantlist_res0_192_128_1,
- NULL,
- &_vq_auxt_res0_192_128_1,
- NULL,
- 0
-};
-
-
-#endif
diff --git a/lib/books/res0_192_128_2.vqh b/lib/books/res0_192_128_2.vqh
deleted file mode 100644
index 0665fe15..00000000
--- a/lib/books/res0_192_128_2.vqh
+++ /dev/null
@@ -1,65 +0,0 @@
-/********************************************************************
- * *
- * 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_res0_192_128_2_VQH_
-#define _V_res0_192_128_2_VQH_
-#include "codebook.h"
-
-static long _vq_quantlist_res0_192_128_2[] = {
- 3,
- 2,
- 4,
- 1,
- 5,
- 0,
- 6,
-};
-
-static long _vq_lengthlist_res0_192_128_2[] = {
- 3, 3, 3, 5, 5, 8, 8, 4, 4, 4, 6, 6, 9, 9, 4, 4,
- 4, 6, 6, 9, 9, 6, 7, 6, 9, 9,12,12, 5, 7, 7, 9,
- 9,12,12, 8,10, 9,12,12,15,15, 8,10, 9,12,13,15,
- 15,
-};
-
-static float _vq_quantthresh_res0_192_128_2[] = {
- -2.5, -1.5, -0.5, 0.5, 1.5, 2.5,
-};
-
-static long _vq_quantmap_res0_192_128_2[] = {
- 5, 3, 1, 0, 2, 4, 6,
-};
-
-static encode_aux_threshmatch _vq_auxt_res0_192_128_2 = {
- _vq_quantthresh_res0_192_128_2,
- _vq_quantmap_res0_192_128_2,
- 7,
- 7
-};
-
-static static_codebook _vq_book_res0_192_128_2 = {
- 2, 49,
- _vq_lengthlist_res0_192_128_2,
- 1, -533200896, 1611661312, 3, 0,
- _vq_quantlist_res0_192_128_2,
- NULL,
- &_vq_auxt_res0_192_128_2,
- NULL,
- 0
-};
-
-
-#endif
diff --git a/lib/books/res0_192_128_3.vqh b/lib/books/res0_192_128_3.vqh
deleted file mode 100644
index 2bd3c4e3..00000000
--- a/lib/books/res0_192_128_3.vqh
+++ /dev/null
@@ -1,265 +0,0 @@
-/********************************************************************
- * *
- * 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_res0_192_128_3_VQH_
-#define _V_res0_192_128_3_VQH_
-#include "codebook.h"
-
-static long _vq_quantlist_res0_192_128_3[] = {
- 24,
- 23,
- 25,
- 22,
- 26,
- 21,
- 27,
- 20,
- 28,
- 19,
- 29,
- 18,
- 30,
- 17,
- 31,
- 16,
- 32,
- 15,
- 33,
- 14,
- 34,
- 13,
- 35,
- 12,
- 36,
- 11,
- 37,
- 10,
- 38,
- 9,
- 39,
- 8,
- 40,
- 7,
- 41,
- 6,
- 42,
- 5,
- 43,
- 4,
- 44,
- 3,
- 45,
- 2,
- 46,
- 1,
- 47,
- 0,
- 48,
-};
-
-static long _vq_lengthlist_res0_192_128_3[] = {
- 4, 4, 4, 6, 6, 7, 7, 7, 7, 8, 8, 8, 8, 8, 8, 9,
- 9, 9, 9, 9, 9, 9,10,10,10,10,10,10,10,10,10,11,
- 10,11,11,11,11,12,11,12,11,12,12,13,12,13,12,13,
- 12, 5, 5, 5, 6, 6, 7, 7, 7, 7, 8, 8, 8, 8, 8, 9,
- 9, 9, 9, 9, 9, 9, 9, 9, 9,10,10,10,10,10,10,10,
- 11,10,11,10,11,10,11,11,12,12,12,12,12,12,13,12,
- 13,13, 5, 5, 5, 6, 6, 7, 7, 7, 7, 8, 8, 8, 8, 9,
- 9, 9, 9, 9, 9, 9, 9, 9,10, 9,10,10,10,10,10,10,
- 10,11,10,11,10,11,11,11,11,12,11,12,12,12,12,13,
- 12,13,13, 7, 7, 7, 8, 8, 8, 9, 9, 9, 9, 9,10,10,
- 10,10,10,10,10,11,10,11,10,11,11,11,11,11,11,11,
- 11,11,11,11,12,11,12,11,13,12,13,12,14,13,14,13,
- 14,13,14,14, 6, 7, 7, 8, 8, 9, 8, 9, 9, 9, 9,10,
- 10,10,10,10,10,10,10,10,11,10,11,11,11,11,11,11,
- 11,11,11,12,11,12,11,12,12,13,12,13,12,13,13,13,
- 13,14,13,15,14, 8, 8, 8, 9, 9,10,10,10,10,11,11,
- 11,11,11,11,11,12,11,12,11,12,12,12,11,12,12,12,
- 12,12,12,12,13,12,13,12,14,13,13,13,15,13,14,13,
- 15,14,15,14,15,15, 8, 8, 8, 9, 9,10,10,11,10,10,
- 11,11,11,11,11,11,11,12,12,11,12,12,12,12,12,12,
- 12,12,12,12,12,12,12,13,12,13,13,13,13,14,13,14,
- 14,14,14,15,15,15,15, 8, 9, 9,10,10,11,11,11,11,
- 12,12,12,12,12,12,12,12,12,13,12,13,12,13,12,13,
- 12,12,13,12,13,13,13,13,14,14,15,14,14,14,15,14,
- 14,15,14,14,16,15,15,16, 8, 9, 9,10,10,11,11,11,
- 12,12,12,12,12,12,13,12,13,12,12,12,13,12,12,12,
- 13,13,13,13,12,13,13,13,13,14,13,14,13,15,14,15,
- 14,16,15,16,15,16,15,15,15, 9,10,10,11,11,12,12,
- 12,13,12,13,13,13,13,13,13,14,12,14,13,14,13,14,
- 14,13,13,13,14,14,13,14,13,14,14,13,15,14,15,14,
- 16,15,15,15,16,15,16,15,16,16, 9,10,10,11,11,12,
- 12,12,12,12,12,13,13,13,13,14,13,13,13,13,13,13,
- 13,13,13,14,14,14,14,14,14,14,14,15,14,15,14,15,
- 14,15,15,16,15,16,15,16,16,16,16,10,11,11,12,12,
- 13,13,13,13,13,14,14,13,14,14,14,14,14,14,14,14,
- 14,14,14,14,14,14,14,14,15,14,15,15,15,14,15,15,
- 16,15,17,15,16,16,17,16,17,16,16,17,10,11,11,12,
- 12,13,13,13,13,13,13,14,13,13,13,14,14,13,14,14,
- 14,14,14,14,14,14,14,14,14,14,14,14,15,15,14,16,
- 14,16,15,15,15,17,15,17,15,17,16,17,17,11,12,11,
- 13,13,13,13,13,14,13,14,14,14,14,15,14,15,14,14,
- 14,15,14,15,14,14,14,15,14,15,15,14,15,15,15,15,
- 16,16,17,15,16,17,16,16,17,16,17,16,18,17,11,12,
- 11,12,13,13,14,14,14,14,13,14,15,15,14,15,15,14,
- 14,14,15,14,15,15,15,14,14,15,15,17,15,15,16,15,
- 16,16,15,16,15,17,15,17,16,17,16,18,17,17,17,12,
- 12,12,13,14,14,14,14,14,14,15,14,15,15,15,15,15,
- 14,15,15,15,14,15,15,15,15,16,15,16,16,15,15,16,
- 17,15,18,15,16,16,16,16,17,17,16,17,16,17,18,18,
- 12,12,12,13,13,14,14,14,14,14,14,14,16,15,15,16,
- 15,16,15,15,15,16,15,16,15,16,15,16,15,17,15,17,
- 16,15,16,17,16,18,16,17,17,17,16,17,17,17,18,16,
- 16,12,13,13,14,13,15,14,15,15,15,16,16,15,15,16,
- 15,16,15,16,16,15,16,17,15,16,16,16,17,16,18,16,
- 17,16,17,17,17,17,17,16,17,17,18,17,18,18,18,18,
- 16,17,12,12,12,14,13,14,15,14,15,15,15,15,15,15,
- 15,15,16,14,15,16,16,16,15,16,15,16,17,16,16,15,
- 16,16,17,16,16,16,16,17,16,17,17,16,16,17,17,17,
- 17,17,17,13,13,13,15,14,15,15,16,16,16,16,16,16,
- 15,17,15,16,15,16,15,16,15,17,15,16,16,17,16,16,
- 16,16,18,16,18,17,17,17,17,16,18,18,18,17,18,16,
- 17,17,18,18,13,13,13,14,14,16,15,16,15,16,16,16,
- 16,16,15,15,16,15,16,16,15,16,16,16,17,16,16,16,
- 16,16,16,17,17,17,16,17,16,17,17,18,17,18,16,18,
- 18,17,17,18,18,13,14,13,15,15,15,16,15,16,16,16,
- 15,17,16,17,15,16,16,17,16,17,16,16,17,16,18,15,
- 16,17,17,16,16,17,18,16,17,16,17,17,17,18,18,17,
- 17,17,17,18,18,18,13,14,13,15,15,15,15,16,15,16,
- 16,16,16,16,16,16,16,16,16,17,17,17,16,17,16,17,
- 16,17,16,17,16,18,16,17,16,17,16,18,17,18,17,17,
- 17,18,17,17,18,18,18,13,14,14,16,15,15,16,16,16,
- 16,17,17,15,16,17,16,16,15,17,16,17,17,16,16,16,
- 16,17,16,17,17,17,18,17,16,17,17,17,18,17,17,17,
- 18,17,18,18,17,18,18,18,13,14,14,15,16,15,14,16,
- 16,16,17,17,16,17,16,18,16,16,16,17,16,17,18,17,
- 15,17,17,17,17,18,16,16,16,18,17,17,18,17,17,18,
- 17,17,17,18,18,18,17,17,17,13,15,14,16,15,15,16,
- 17,15,16,17,16,15,17,17,16,17,17,17,15,16,18,17,
- 17,17,16,17,17,18,17,16,17,17,17,17,18,17,17,17,
- 18,17,18,18,17,18,18,18,18,18,15,14,15,16,15,16,
- 15,16,17,16,16,16,17,17,18,16,17,16,17,17,16,16,
- 16,17,16,17,16,18,17,17,18,18,18,17,17,18,17,17,
- 17,17,17,17,18,17,17,18,18,17,18,14,15,15,15,16,
- 16,16,16,16,16,17,16,18,17,16,16,16,16,17,18,17,
- 17,18,17,17,17,17,17,17,17,17,18,18,18,17,18,18,
- 17,17,18,18,18,17,18,17,18,18,17,18,14,15,15,16,
- 16,16,15,16,18,16,16,16,17,17,16,17,17,17,17,17,
- 17,16,18,18,17,17,16,18,17,18,17,17,17,17,17,17,
- 17,18,17,18,18,17,17,18,18,18,17,18,18,14,15,15,
- 16,16,16,17,17,17,16,16,17,17,17,17,17,17,17,18,
- 18,18,16,17,17,18,17,17,18,17,17,17,18,18,18,18,
- 18,16,18,18,18,18,18,18,18,18,18,18,18,18,15,16,
- 16,16,16,16,16,17,16,16,16,17,18,16,18,17,17,17,
- 17,16,18,16,17,18,16,17,16,17,16,18,18,18,17,17,
- 17,18,17,18,17,18,18,17,18,18,18,18,18,17,18,16,
- 16,15,16,17,16,16,17,17,16,17,17,18,18,18,16,18,
- 17,18,17,17,17,17,18,18,17,17,17,17,18,18,18,17,
- 17,17,17,17,17,18,18,18,18,18,18,18,17,18,18,18,
- 14,15,15,16,15,15,17,17,16,15,17,17,16,16,18,17,
- 17,17,17,17,16,17,17,17,17,16,17,17,18,18,17,17,
- 18,18,17,17,17,18,17,18,17,17,17,18,18,18,18,18,
- 18,15,16,15,17,17,18,17,16,18,17,16,17,17,18,17,
- 17,17,18,17,16,18,18,17,18,17,17,16,17,17,17,18,
- 18,17,18,18,18,18,18,18,18,18,17,18,18,18,18,18,
- 17,18,15,15,17,16,17,17,17,16,16,18,17,17,18,18,
- 17,17,18,17,17,18,18,17,17,17,18,17,17,18,16,18,
- 18,17,18,18,18,18,18,18,18,18,17,18,18,18,18,18,
- 17,18,18,16,17,16,16,16,16,17,18,17,17,17,17,18,
- 17,18,16,18,18,18,18,18,18,17,18,18,17,18,18,17,
- 18,18,18,17,17,18,18,18,17,18,18,17,18,18,18,18,
- 18,18,18,18,16,16,17,16,16,17,18,18,17,16,17,17,
- 18,17,17,17,18,16,18,17,17,18,17,17,17,18,18,18,
- 17,17,17,17,18,17,17,18,17,18,17,18,18,18,18,18,
- 18,18,18,18,18,16,16,16,17,17,17,17,17,18,18,18,
- 17,17,18,18,17,17,18,18,18,18,18,18,18,17,18,18,
- 17,18,17,18,17,18,18,17,18,18,18,18,18,18,18,18,
- 18,18,18,18,18,18,16,17,17,17,17,16,16,18,16,18,
- 17,18,18,18,18,18,18,17,17,17,18,17,18,18,17,18,
- 18,17,17,17,18,18,18,18,18,18,17,18,17,18,18,18,
- 18,18,18,18,18,18,18,17,16,17,16,18,18,17,18,18,
- 18,18,18,18,18,18,18,18,18,17,18,18,18,18,18,18,
- 18,18,18,18,18,18,18,18,18,18,18,17,18,18,18,16,
- 18,18,18,17,18,18,18,18,16,18,18,18,16,18,17,16,
- 17,17,18,18,18,16,18,18,18,18,18,17,18,18,18,18,
- 18,17,18,18,18,18,18,17,18,17,17,18,18,18,18,18,
- 17,18,18,18,18,18,18,18,18,17,17,17,17,17,17,18,
- 18,18,18,17,18,18,18,18,18,17,18,18,18,18,18,18,
- 18,17,18,17,17,17,18,17,18,18,18,18,17,17,18,18,
- 18,18,18,18,18,18,18,18,18,18,16,16,17,18,17,17,
- 18,17,17,18,17,18,17,18,17,18,18,18,18,18,17,17,
- 18,18,18,17,17,17,17,18,17,18,18,18,17,18,18,18,
- 17,18,18,18,18,18,18,18,18,17,18,17,17,18,18,17,
- 17,18,17,17,18,18,17,17,18,17,18,18,18,18,18,18,
- 18,18,18,17,18,18,18,18,18,18,18,18,18,18,18,18,
- 18,17,18,17,18,18,18,18,18,18,18,18,16,17,17,16,
- 18,17,17,18,18,18,18,17,18,18,18,18,18,18,18,18,
- 18,18,17,18,18,18,18,17,18,18,18,18,18,18,18,18,
- 18,18,18,18,18,18,17,18,18,18,18,18,18,17,17,18,
- 18,17,18,17,18,17,17,18,17,18,18,18,18,18,18,17,
- 18,18,18,18,18,18,18,18,18,17,18,18,18,18,18,18,
- 18,18,18,18,18,18,18,18,18,18,18,18,18,18,16,18,
- 17,18,17,18,18,17,17,18,18,17,18,18,17,18,18,17,
- 17,18,17,18,18,18,18,18,18,18,18,18,18,18,18,18,
- 17,18,18,18,17,18,18,18,18,18,18,18,18,18,18,17,
- 17,18,18,18,17,17,17,17,18,18,18,18,18,18,17,18,
- 18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,
- 18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,
- 16,17,17,17,18,18,18,18,17,18,18,18,18,17,18,18,
- 18,18,18,18,18,17,18,18,18,18,18,18,18,18,18,18,
- 18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,
- 18,
-};
-
-static float _vq_quantthresh_res0_192_128_3[] = {
- -23.5, -22.5, -21.5, -20.5, -19.5, -18.5, -17.5, -16.5,
- -15.5, -14.5, -13.5, -12.5, -11.5, -10.5, -9.5, -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, 9.5, 10.5, 11.5, 12.5, 13.5, 14.5, 15.5,
- 16.5, 17.5, 18.5, 19.5, 20.5, 21.5, 22.5, 23.5,
-};
-
-static long _vq_quantmap_res0_192_128_3[] = {
- 47, 45, 43, 41, 39, 37, 35, 33,
- 31, 29, 27, 25, 23, 21, 19, 17,
- 15, 13, 11, 9, 7, 5, 3, 1,
- 0, 2, 4, 6, 8, 10, 12, 14,
- 16, 18, 20, 22, 24, 26, 28, 30,
- 32, 34, 36, 38, 40, 42, 44, 46,
- 48,
-};
-
-static encode_aux_threshmatch _vq_auxt_res0_192_128_3 = {
- _vq_quantthresh_res0_192_128_3,
- _vq_quantmap_res0_192_128_3,
- 49,
- 49
-};
-
-static static_codebook _vq_book_res0_192_128_3 = {
- 2, 2401,
- _vq_lengthlist_res0_192_128_3,
- 1, -526909440, 1611661312, 6, 0,
- _vq_quantlist_res0_192_128_3,
- NULL,
- &_vq_auxt_res0_192_128_3,
- NULL,
- 0
-};
-
-
-#endif
diff --git a/lib/books/res0_192_128_4.vqh b/lib/books/res0_192_128_4.vqh
deleted file mode 100644
index 8b439f82..00000000
--- a/lib/books/res0_192_128_4.vqh
+++ /dev/null
@@ -1,160 +0,0 @@
-/********************************************************************
- * *
- * 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_res0_192_128_4_VQH_
-#define _V_res0_192_128_4_VQH_
-#include "codebook.h"
-
-static long _vq_quantlist_res0_192_128_4[] = {
- 40,
- 39,
- 41,
- 38,
- 42,
- 37,
- 43,
- 36,
- 44,
- 35,
- 45,
- 34,
- 46,
- 33,
- 47,
- 32,
- 48,
- 31,
- 49,
- 30,
- 50,
- 29,
- 51,
- 28,
- 52,
- 27,
- 53,
- 26,
- 54,
- 25,
- 55,
- 24,
- 56,
- 23,
- 57,
- 22,
- 58,
- 21,
- 59,
- 20,
- 60,
- 19,
- 61,
- 18,
- 62,
- 17,
- 63,
- 16,
- 64,
- 15,
- 65,
- 14,
- 66,
- 13,
- 67,
- 12,
- 68,
- 11,
- 69,
- 10,
- 70,
- 9,
- 71,
- 8,
- 72,
- 7,
- 73,
- 6,
- 74,
- 5,
- 75,
- 4,
- 76,
- 3,
- 77,
- 2,
- 78,
- 1,
- 79,
- 0,
- 80,
-};
-
-static long _vq_lengthlist_res0_192_128_4[] = {
- 2, 3, 3, 4, 4, 5, 5, 5, 5, 6, 6, 6, 6, 6, 7, 7,
- 7, 7, 7, 7, 7, 8, 8, 8, 8, 9, 8, 9, 9, 9, 9,10,
- 10,11,10,11,10,11,11,11,11,12,12,13,11,12,12,13,
- 12, 7, 7, 8, 8, 8, 8, 8, 8, 8, 9, 8, 9, 8, 9, 9,
- 9, 9,10, 9,10, 9,10, 9,11,10,11, 9,10,10,11,10,
- 11,
-};
-
-static float _vq_quantthresh_res0_192_128_4[] = {
- -39.5, -38.5, -37.5, -36.5, -35.5, -34.5, -33.5, -32.5,
- -31.5, -30.5, -29.5, -28.5, -27.5, -26.5, -25.5, -24.5,
- -23.5, -22.5, -21.5, -20.5, -19.5, -18.5, -17.5, -16.5,
- -15.5, -14.5, -13.5, -12.5, -11.5, -10.5, -9.5, -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, 9.5, 10.5, 11.5, 12.5, 13.5, 14.5, 15.5,
- 16.5, 17.5, 18.5, 19.5, 20.5, 21.5, 22.5, 23.5,
- 24.5, 25.5, 26.5, 27.5, 28.5, 29.5, 30.5, 31.5,
- 32.5, 33.5, 34.5, 35.5, 36.5, 37.5, 38.5, 39.5,
-};
-
-static long _vq_quantmap_res0_192_128_4[] = {
- 79, 77, 75, 73, 71, 69, 67, 65,
- 63, 61, 59, 57, 55, 53, 51, 49,
- 47, 45, 43, 41, 39, 37, 35, 33,
- 31, 29, 27, 25, 23, 21, 19, 17,
- 15, 13, 11, 9, 7, 5, 3, 1,
- 0, 2, 4, 6, 8, 10, 12, 14,
- 16, 18, 20, 22, 24, 26, 28, 30,
- 32, 34, 36, 38, 40, 42, 44, 46,
- 48, 50, 52, 54, 56, 58, 60, 62,
- 64, 66, 68, 70, 72, 74, 76, 78,
- 80,
-};
-
-static encode_aux_threshmatch _vq_auxt_res0_192_128_4 = {
- _vq_quantthresh_res0_192_128_4,
- _vq_quantmap_res0_192_128_4,
- 81,
- 81
-};
-
-static static_codebook _vq_book_res0_192_128_4 = {
- 1, 81,
- _vq_lengthlist_res0_192_128_4,
- 1, -525074432, 1611661312, 7, 0,
- _vq_quantlist_res0_192_128_4,
- NULL,
- &_vq_auxt_res0_192_128_4,
- NULL,
- 0
-};
-
-
-#endif
diff --git a/lib/books/res0_192_128_5.vqh b/lib/books/res0_192_128_5.vqh
deleted file mode 100644
index 952a812b..00000000
--- a/lib/books/res0_192_128_5.vqh
+++ /dev/null
@@ -1,448 +0,0 @@
-/********************************************************************
- * *
- * 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_res0_192_128_5_VQH_
-#define _V_res0_192_128_5_VQH_
-#include "codebook.h"
-
-static long _vq_quantlist_res0_192_128_5[] = {
- 150,
- 149,
- 151,
- 148,
- 152,
- 147,
- 153,
- 146,
- 154,
- 145,
- 155,
- 144,
- 156,
- 143,
- 157,
- 142,
- 158,
- 141,
- 159,
- 140,
- 160,
- 139,
- 161,
- 138,
- 162,
- 137,
- 163,
- 136,
- 164,
- 135,
- 165,
- 134,
- 166,
- 133,
- 167,
- 132,
- 168,
- 131,
- 169,
- 130,
- 170,
- 129,
- 171,
- 128,
- 172,
- 127,
- 173,
- 126,
- 174,
- 125,
- 175,
- 124,
- 176,
- 123,
- 177,
- 122,
- 178,
- 121,
- 179,
- 120,
- 180,
- 119,
- 181,
- 118,
- 182,
- 117,
- 183,
- 116,
- 184,
- 115,
- 185,
- 114,
- 186,
- 113,
- 187,
- 112,
- 188,
- 111,
- 189,
- 110,
- 190,
- 109,
- 191,
- 108,
- 192,
- 107,
- 193,
- 106,
- 194,
- 105,
- 195,
- 104,
- 196,
- 103,
- 197,
- 102,
- 198,
- 101,
- 199,
- 100,
- 200,
- 99,
- 201,
- 98,
- 202,
- 97,
- 203,
- 96,
- 204,
- 95,
- 205,
- 94,
- 206,
- 93,
- 207,
- 92,
- 208,
- 91,
- 209,
- 90,
- 210,
- 89,
- 211,
- 88,
- 212,
- 87,
- 213,
- 86,
- 214,
- 85,
- 215,
- 84,
- 216,
- 83,
- 217,
- 82,
- 218,
- 81,
- 219,
- 80,
- 220,
- 79,
- 221,
- 78,
- 222,
- 77,
- 223,
- 76,
- 224,
- 75,
- 225,
- 74,
- 226,
- 73,
- 227,
- 72,
- 228,
- 71,
- 229,
- 70,
- 230,
- 69,
- 231,
- 68,
- 232,
- 67,
- 233,
- 66,
- 234,
- 65,
- 235,
- 64,
- 236,
- 63,
- 237,
- 62,
- 238,
- 61,
- 239,
- 60,
- 240,
- 59,
- 241,
- 58,
- 242,
- 57,
- 243,
- 56,
- 244,
- 55,
- 245,
- 54,
- 246,
- 53,
- 247,
- 52,
- 248,
- 51,
- 249,
- 50,
- 250,
- 49,
- 251,
- 48,
- 252,
- 47,
- 253,
- 46,
- 254,
- 45,
- 255,
- 44,
- 256,
- 43,
- 257,
- 42,
- 258,
- 41,
- 259,
- 40,
- 260,
- 39,
- 261,
- 38,
- 262,
- 37,
- 263,
- 36,
- 264,
- 35,
- 265,
- 34,
- 266,
- 33,
- 267,
- 32,
- 268,
- 31,
- 269,
- 30,
- 270,
- 29,
- 271,
- 28,
- 272,
- 27,
- 273,
- 26,
- 274,
- 25,
- 275,
- 24,
- 276,
- 23,
- 277,
- 22,
- 278,
- 21,
- 279,
- 20,
- 280,
- 19,
- 281,
- 18,
- 282,
- 17,
- 283,
- 16,
- 284,
- 15,
- 285,
- 14,
- 286,
- 13,
- 287,
- 12,
- 288,
- 11,
- 289,
- 10,
- 290,
- 9,
- 291,
- 8,
- 292,
- 7,
- 293,
- 6,
- 294,
- 5,
- 295,
- 4,
- 296,
- 3,
- 297,
- 2,
- 298,
- 1,
- 299,
- 0,
- 300,
-};
-
-static long _vq_lengthlist_res0_192_128_5[] = {
- 3, 3, 2, 4, 4, 5, 5, 5, 5, 6, 6, 6, 6, 7, 6, 7,
- 7, 7, 8, 8, 8, 9, 8, 9, 9, 9, 9, 9,11, 9,10,10,
- 11,10,11,12,10,11,11,10,11,11,11,11,13,12,11,10,
- 12,11,13,12,13,13,13,13,13,13,13,13,13,13,13,13,
- 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
- 13, 8, 9, 8, 9, 8, 9, 8, 9, 9, 9,10,10,10,10,10,
- 10, 9,10, 9,10, 9,10, 9,12, 9,11,10,11,10,11,10,
- 10,10,11,12,12,10,10,11,11, 9,12,10,12,10,11,11,
- 13,11,12,11,12,11,12,11,13,12,11,11,12,11,11,10,
- 12,12,12,10,12,13,13,12,13,12,13,13,13,13,13,11,
- 11,13,12,13,13,12,12,13,11,11,12,12,13,11,11,12,
- 12,11,13,13,13,12,13,13,12,13,12,12,13,13,12,13,
- 13,12,13,12,13,13,13,12,13,13,13,13,13,13,13,13,
- 12,13,13,11,12,13,12,13,13,13,12,13,12,13,13,13,
- 13,13,13,13,13,13,13,11,13,13,13,13,13,12,13,13,
- 13,13,13,13,13,13,13,12,13,13,13,13,13,13,13,13,
- 13,13,13,13,13,13,13,13,13,13,13,12,13,13,13,13,
- 13,13,13,12,13,13,13,13,13,13,13,13,13,13,13,13,
- 13,13,13,13,13,13,13,13,13,13,13,12,12,
-};
-
-static float _vq_quantthresh_res0_192_128_5[] = {
- -149.5, -148.5, -147.5, -146.5, -145.5, -144.5, -143.5, -142.5,
- -141.5, -140.5, -139.5, -138.5, -137.5, -136.5, -135.5, -134.5,
- -133.5, -132.5, -131.5, -130.5, -129.5, -128.5, -127.5, -126.5,
- -125.5, -124.5, -123.5, -122.5, -121.5, -120.5, -119.5, -118.5,
- -117.5, -116.5, -115.5, -114.5, -113.5, -112.5, -111.5, -110.5,
- -109.5, -108.5, -107.5, -106.5, -105.5, -104.5, -103.5, -102.5,
- -101.5, -100.5, -99.5, -98.5, -97.5, -96.5, -95.5, -94.5,
- -93.5, -92.5, -91.5, -90.5, -89.5, -88.5, -87.5, -86.5,
- -85.5, -84.5, -83.5, -82.5, -81.5, -80.5, -79.5, -78.5,
- -77.5, -76.5, -75.5, -74.5, -73.5, -72.5, -71.5, -70.5,
- -69.5, -68.5, -67.5, -66.5, -65.5, -64.5, -63.5, -62.5,
- -61.5, -60.5, -59.5, -58.5, -57.5, -56.5, -55.5, -54.5,
- -53.5, -52.5, -51.5, -50.5, -49.5, -48.5, -47.5, -46.5,
- -45.5, -44.5, -43.5, -42.5, -41.5, -40.5, -39.5, -38.5,
- -37.5, -36.5, -35.5, -34.5, -33.5, -32.5, -31.5, -30.5,
- -29.5, -28.5, -27.5, -26.5, -25.5, -24.5, -23.5, -22.5,
- -21.5, -20.5, -19.5, -18.5, -17.5, -16.5, -15.5, -14.5,
- -13.5, -12.5, -11.5, -10.5, -9.5, -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, 9.5,
- 10.5, 11.5, 12.5, 13.5, 14.5, 15.5, 16.5, 17.5,
- 18.5, 19.5, 20.5, 21.5, 22.5, 23.5, 24.5, 25.5,
- 26.5, 27.5, 28.5, 29.5, 30.5, 31.5, 32.5, 33.5,
- 34.5, 35.5, 36.5, 37.5, 38.5, 39.5, 40.5, 41.5,
- 42.5, 43.5, 44.5, 45.5, 46.5, 47.5, 48.5, 49.5,
- 50.5, 51.5, 52.5, 53.5, 54.5, 55.5, 56.5, 57.5,
- 58.5, 59.5, 60.5, 61.5, 62.5, 63.5, 64.5, 65.5,
- 66.5, 67.5, 68.5, 69.5, 70.5, 71.5, 72.5, 73.5,
- 74.5, 75.5, 76.5, 77.5, 78.5, 79.5, 80.5, 81.5,
- 82.5, 83.5, 84.5, 85.5, 86.5, 87.5, 88.5, 89.5,
- 90.5, 91.5, 92.5, 93.5, 94.5, 95.5, 96.5, 97.5,
- 98.5, 99.5, 100.5, 101.5, 102.5, 103.5, 104.5, 105.5,
- 106.5, 107.5, 108.5, 109.5, 110.5, 111.5, 112.5, 113.5,
- 114.5, 115.5, 116.5, 117.5, 118.5, 119.5, 120.5, 121.5,
- 122.5, 123.5, 124.5, 125.5, 126.5, 127.5, 128.5, 129.5,
- 130.5, 131.5, 132.5, 133.5, 134.5, 135.5, 136.5, 137.5,
- 138.5, 139.5, 140.5, 141.5, 142.5, 143.5, 144.5, 145.5,
- 146.5, 147.5, 148.5, 149.5,
-};
-
-static long _vq_quantmap_res0_192_128_5[] = {
- 299, 297, 295, 293, 291, 289, 287, 285,
- 283, 281, 279, 277, 275, 273, 271, 269,
- 267, 265, 263, 261, 259, 257, 255, 253,
- 251, 249, 247, 245, 243, 241, 239, 237,
- 235, 233, 231, 229, 227, 225, 223, 221,
- 219, 217, 215, 213, 211, 209, 207, 205,
- 203, 201, 199, 197, 195, 193, 191, 189,
- 187, 185, 183, 181, 179, 177, 175, 173,
- 171, 169, 167, 165, 163, 161, 159, 157,
- 155, 153, 151, 149, 147, 145, 143, 141,
- 139, 137, 135, 133, 131, 129, 127, 125,
- 123, 121, 119, 117, 115, 113, 111, 109,
- 107, 105, 103, 101, 99, 97, 95, 93,
- 91, 89, 87, 85, 83, 81, 79, 77,
- 75, 73, 71, 69, 67, 65, 63, 61,
- 59, 57, 55, 53, 51, 49, 47, 45,
- 43, 41, 39, 37, 35, 33, 31, 29,
- 27, 25, 23, 21, 19, 17, 15, 13,
- 11, 9, 7, 5, 3, 1, 0, 2,
- 4, 6, 8, 10, 12, 14, 16, 18,
- 20, 22, 24, 26, 28, 30, 32, 34,
- 36, 38, 40, 42, 44, 46, 48, 50,
- 52, 54, 56, 58, 60, 62, 64, 66,
- 68, 70, 72, 74, 76, 78, 80, 82,
- 84, 86, 88, 90, 92, 94, 96, 98,
- 100, 102, 104, 106, 108, 110, 112, 114,
- 116, 118, 120, 122, 124, 126, 128, 130,
- 132, 134, 136, 138, 140, 142, 144, 146,
- 148, 150, 152, 154, 156, 158, 160, 162,
- 164, 166, 168, 170, 172, 174, 176, 178,
- 180, 182, 184, 186, 188, 190, 192, 194,
- 196, 198, 200, 202, 204, 206, 208, 210,
- 212, 214, 216, 218, 220, 222, 224, 226,
- 228, 230, 232, 234, 236, 238, 240, 242,
- 244, 246, 248, 250, 252, 254, 256, 258,
- 260, 262, 264, 266, 268, 270, 272, 274,
- 276, 278, 280, 282, 284, 286, 288, 290,
- 292, 294, 296, 298, 300,
-};
-
-static encode_aux_threshmatch _vq_auxt_res0_192_128_5 = {
- _vq_quantthresh_res0_192_128_5,
- _vq_quantmap_res0_192_128_5,
- 301,
- 301
-};
-
-static static_codebook _vq_book_res0_192_128_5 = {
- 1, 301,
- _vq_lengthlist_res0_192_128_5,
- 1, -520962048, 1611661312, 9, 0,
- _vq_quantlist_res0_192_128_5,
- NULL,
- &_vq_auxt_res0_192_128_5,
- NULL,
- 0
-};
-
-
-#endif
diff --git a/lib/books/res0_192_128aux.vqh b/lib/books/res0_192_128aux.vqh
deleted file mode 100644
index fa3ec0c8..00000000
--- a/lib/books/res0_192_128aux.vqh
+++ /dev/null
@@ -1,117 +0,0 @@
-/********************************************************************
- * *
- * 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 huff/huffbuld
-
- ********************************************************************/
-
-#ifndef _V_res0_192_128aux_VQH_
-#define _V_res0_192_128aux_VQH_
-#include "codebook.h"
-
-static long _huff_lengthlist_res0_192_128aux[] = {
- 10,16,16,16,16,16,12,16,16,16,16,16,15,16,16,16,
- 16,16,13,16,16,16,16,16,16,16,16,16,16,16,16,16,
- 16,16,16,16,10,14,16,16,16,16,12,15,16,16,16,16,
- 14,16,16,16,16,16,14,16,16,16,16,16,16,16,16,16,
- 16,16,16,16,16,16,16,16,12,16,16,16,16,16,13,16,
- 16,16,16,16,15,16,16,16,16,16,16,16,16,16,16,16,
- 16,16,16,16,16,16,16,16,16,16,16,16,10,16,16,16,
- 16,16,12,16,16,16,16,16,16,16,16,16,16,16,16,16,
- 16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
- 16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
- 16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
- 16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
- 16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
- 16,16,16,16,16,16,16,16, 5,12,14,16,16,16, 9,12,
- 16,16,16,16,13,14,16,16,16,16,12,16,16,16,16,16,
- 16,16,16,16,16,16,16,16,16,16,16,16, 4, 9,12,13,
- 16,16, 5, 5, 9,11,16,16,10, 8, 9,16,16,16,13,15,
- 15,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
- 8,12,16,13,16,16, 7, 7,10,13,16,16,11, 9, 9,14,
- 16,16,14,14,15,15,16,16,16,16,16,16,16,16,16,16,
- 16,16,16,16,11,16,16,16,16,16,15,13,14,16,16,16,
- 16,16,14,16,16,16,16,15,16,16,16,16,16,16,16,16,
- 16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
- 16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
- 16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
- 16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
- 16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
- 5,11,14,16,16,16, 9,11,16,16,16,16,15,13,14,16,
- 16,16,16,16,15,16,16,16,16,16,16,16,16,16,16,16,
- 16,16,16,16, 4, 8,11,13,16,16, 4, 4, 9,10,16,16,
- 10, 8, 9,16,16,16,16,14,15,15,16,16,16,16,16,16,
- 16,16,16,16,16,16,16,16, 7,11,15,12,16,16, 6, 6,
- 9,11,16,16,10, 8, 9,14,16,16,14,15,14,15,16,16,
- 16,16,16,16,16,16,16,16,16,16,16,16,11,14,16,16,
- 16,16,13,13,14,16,16,16,13,13,15,14,16,16,14,14,
- 13,14,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
- 15,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
- 16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
- 16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
- 16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
- 16,16,16,16,16,16,16,16, 8,12,16,16,16,16,11,12,
- 15,15,16,16,16,15,16,16,16,16,16,15,16,16,16,16,
- 16,16,16,16,16,16,16,16,16,16,16,16, 7,12,15,15,
- 16,16, 9, 7, 7,11,16,16,12, 7, 6, 9,16,16,14,11,
- 9,11,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
- 10,14,16,15,16,16,10, 6, 4, 8,16,16,12, 4, 3, 6,
- 16,16,12, 8, 6, 8,16,16,16,16,16,16,16,16,16,16,
- 16,16,16,16,12,14,14,13,16,16,14, 9, 7, 8,14,16,
- 14, 7, 5, 7,16,16,14, 9, 7, 8,16,16,16,16,16,16,
- 16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
- 16,15,16,16,16,16,16,15,16,16,16,16,16,16,16,16,
- 16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
- 16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
- 16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
- 14,14,16,16,16,16,15,16,16,16,16,16,16,16,16,16,
- 16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
- 16,16,16,16,16,15,16,16,16,16,14,11,10,15,16,16,
- 16,11, 9,13,16,16,15,13,12,14,16,16,16,16,16,16,
- 16,16,16,16,16,16,16,16,16,16,16,16,16,16,16, 9,
- 8,11,16,16,14, 8, 6, 9,16,16,15,12,10,11,16,16,
- 16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
- 16,16,16,12,10,13,16,16,16,10, 8,11,16,16,15,14,
- 11,12,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
- 16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
- 16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
- 16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
- 16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
- 16,16,16,16,16,16,16,16,16,15,16,16,16,16,16,16,
- 16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
- 16,16,16,16,16,16,16,16,16,16,16,16,16,15,16,16,
- 16,16,16,13,13,16,16,16,16,14,12,14,16,16,16,16,
- 15,15,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
- 16,16,16,16,16,16,16,12,10,14,16,16,16,10, 9,11,
- 16,16,16,13,12,15,16,16,16,16,16,16,16,16,16,16,
- 16,16,16,16,16,16,16,16,16,16,16,15,13,16,16,16,
- 16,15,11,13,16,16,16,16,13,15,16,16,16,16,16,16,
- 16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
- 16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
- 16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
- 16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
- 16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
-};
-
-static static_codebook _huff_book_res0_192_128aux = {
- 4, 1296,
- _huff_lengthlist_res0_192_128aux,
- 0, 0, 0, 0, 0,
- NULL,
- NULL,
- NULL,
- 0
-};
-
-
-#endif
diff --git a/lib/books/res0_256_1024_1.vqh b/lib/books/res0_256_1024_1.vqh
deleted file mode 100644
index e2d502d5..00000000
--- a/lib/books/res0_256_1024_1.vqh
+++ /dev/null
@@ -1,99 +0,0 @@
-/********************************************************************
- * *
- * 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_res0_256_1024_1_VQH_
-#define _V_res0_256_1024_1_VQH_
-#include "codebook.h"
-
-static long _vq_quantlist_res0_256_1024_1[] = {
- 2,
- 1,
- 3,
- 0,
- 4,
-};
-
-static long _vq_lengthlist_res0_256_1024_1[] = {
- 2, 4, 4, 8, 8, 5, 7, 7,10,10, 5, 7, 7,10,10, 9,
- 10,10,12,12, 9,10,10,12,12, 5, 7, 7,10,10, 7, 8,
- 8,11,11, 7, 8, 8,11,11,10,11,11,13,13,10,11,11,
- 13,13, 5, 7, 7,10,10, 7, 8, 8,11,11, 7, 8, 8,11,
- 11,10,11,11,13,13,10,11,11,13,13, 9,10,10,12,12,
- 10,11,11,13,13,10,11,11,13,13,13,13,13,15,15,13,
- 13,14,15,15, 9,10,10,12,12,10,11,11,13,13,10,11,
- 11,13,13,13,14,13,15,15,13,13,13,15,15, 5, 7, 7,
- 10,10, 7, 9, 9,11,11, 7, 9, 8,11,11,10,11,11,13,
- 13,10,11,11,13,13, 7, 9, 9,11,11, 9,10,10,12,12,
- 9,10,10,12,12,11,12,12,14,14,11,12,12,14,14, 7,
- 9, 9,11,11, 9,10,10,12,12, 9,10,10,12,12,11,12,
- 12,14,14,11,12,12,14,14,10,11,11,13,13,11,12,12,
- 14,14,11,12,12,14,14,13,14,14,15,16,14,14,14,16,
- 16,10,11,11,13,13,11,12,12,14,14,11,12,12,14,14,
- 14,14,14,16,15,14,14,14,15,15, 5, 7, 7,10,10, 7,
- 8, 8,11,11, 7, 9, 9,11,11,10,11,11,13,13,10,11,
- 11,13,13, 7, 9, 9,11,11, 9,10,10,12,12, 9,10,10,
- 12,12,11,12,12,14,14,11,12,12,14,14, 7, 9, 9,11,
- 11, 9,10,10,12,12, 9,10,10,12,12,11,12,12,14,14,
- 11,12,12,14,14,10,11,11,13,13,11,12,12,14,14,11,
- 12,12,14,14,14,14,14,16,16,13,14,14,15,16,10,11,
- 11,13,13,11,12,12,14,14,11,12,12,14,14,14,14,14,
- 16,16,13,14,14,16,15, 9,10,10,13,13,10,11,11,14,
- 13,10,11,11,14,13,13,14,14,15,15,13,14,14,15,15,
- 10,11,11,14,13,11,12,12,14,14,11,12,12,14,14,14,
- 14,15,16,16,14,14,14,16,16,10,11,11,14,13,11,12,
- 12,14,14,11,12,12,14,14,14,14,14,16,16,14,14,14,
- 16,15,13,14,13,15,15,13,14,14,16,16,13,14,14,16,
- 16,15,16,16,16,17,15,16,16,17,17,13,14,14,15,15,
- 13,14,14,16,15,14,14,14,16,16,15,16,16,17,16,15,
- 16,16,17,17, 9,10,10,13,13,10,11,11,13,14,10,11,
- 11,13,13,13,14,14,15,15,13,13,14,15,15,10,11,11,
- 13,14,11,12,12,14,14,11,12,12,14,14,14,14,14,16,
- 16,14,14,14,15,16,10,11,11,13,13,11,12,12,14,14,
- 11,12,12,14,14,14,14,14,16,16,13,14,14,16,16,13,
- 14,13,15,15,14,14,14,16,16,13,14,14,16,16,15,16,
- 16,18,18,15,15,16,17,17,13,14,14,15,15,14,14,14,
- 16,16,13,14,14,16,16,16,16,16,17,17,16,16,15,17,
- 16,
-};
-
-static float _vq_quantthresh_res0_256_1024_1[] = {
- -1.5, -0.5, 0.5, 1.5,
-};
-
-static long _vq_quantmap_res0_256_1024_1[] = {
- 3, 1, 0, 2, 4,
-};
-
-static encode_aux_threshmatch _vq_auxt_res0_256_1024_1 = {
- _vq_quantthresh_res0_256_1024_1,
- _vq_quantmap_res0_256_1024_1,
- 5,
- 5
-};
-
-static static_codebook _vq_book_res0_256_1024_1 = {
- 4, 625,
- _vq_lengthlist_res0_256_1024_1,
- 1, -533725184, 1611661312, 3, 0,
- _vq_quantlist_res0_256_1024_1,
- NULL,
- &_vq_auxt_res0_256_1024_1,
- NULL,
- 0
-};
-
-
-#endif
diff --git a/lib/books/res0_256_1024_2.vqh b/lib/books/res0_256_1024_2.vqh
deleted file mode 100644
index b1026ccb..00000000
--- a/lib/books/res0_256_1024_2.vqh
+++ /dev/null
@@ -1,70 +0,0 @@
-/********************************************************************
- * *
- * 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_res0_256_1024_2_VQH_
-#define _V_res0_256_1024_2_VQH_
-#include "codebook.h"
-
-static long _vq_quantlist_res0_256_1024_2[] = {
- 4,
- 3,
- 5,
- 2,
- 6,
- 1,
- 7,
- 0,
- 8,
-};
-
-static long _vq_lengthlist_res0_256_1024_2[] = {
- 3, 4, 4, 5, 5, 6, 6, 8, 8, 4, 5, 5, 6, 6, 7, 7,
- 8, 8, 4, 5, 5, 6, 6, 7, 7, 8, 8, 5, 6, 6, 7, 7,
- 8, 8, 9, 9, 5, 6, 6, 7, 7, 8, 8, 9, 9, 7, 7, 7,
- 8, 8, 9, 9,10,10, 6, 7, 7, 8, 8, 9, 9,10,10, 8,
- 9, 9, 9, 9,11,11,12,12, 8, 9, 9, 9, 9,10,10,12,
- 12,
-};
-
-static float _vq_quantthresh_res0_256_1024_2[] = {
- -3.5, -2.5, -1.5, -0.5, 0.5, 1.5, 2.5, 3.5,
-};
-
-static long _vq_quantmap_res0_256_1024_2[] = {
- 7, 5, 3, 1, 0, 2, 4, 6,
- 8,
-};
-
-static encode_aux_threshmatch _vq_auxt_res0_256_1024_2 = {
- _vq_quantthresh_res0_256_1024_2,
- _vq_quantmap_res0_256_1024_2,
- 9,
- 9
-};
-
-static static_codebook _vq_book_res0_256_1024_2 = {
- 2, 81,
- _vq_lengthlist_res0_256_1024_2,
- 1, -531628032, 1611661312, 4, 0,
- _vq_quantlist_res0_256_1024_2,
- NULL,
- &_vq_auxt_res0_256_1024_2,
- NULL,
- 0
-};
-
-
-#endif
diff --git a/lib/books/res0_256_1024_3.vqh b/lib/books/res0_256_1024_3.vqh
deleted file mode 100644
index fa0116b4..00000000
--- a/lib/books/res0_256_1024_3.vqh
+++ /dev/null
@@ -1,107 +0,0 @@
-/********************************************************************
- * *
- * 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_res0_256_1024_3_VQH_
-#define _V_res0_256_1024_3_VQH_
-#include "codebook.h"
-
-static long _vq_quantlist_res0_256_1024_3[] = {
- 10,
- 9,
- 11,
- 8,
- 12,
- 7,
- 13,
- 6,
- 14,
- 5,
- 15,
- 4,
- 16,
- 3,
- 17,
- 2,
- 18,
- 1,
- 19,
- 0,
- 20,
-};
-
-static long _vq_lengthlist_res0_256_1024_3[] = {
- 3, 4, 4, 6, 5, 7, 7, 8, 8, 8, 8, 9, 9,10,10,11,
- 11,11,11,12,12, 5, 5, 5, 6, 6, 7, 7, 8, 8, 9, 9,
- 10,10,11,11,12,12,13,13,13,13, 4, 5, 5, 6, 6, 7,
- 7, 8, 8, 9, 9,10,10,11,11,12,12,13,13,13,13, 6,
- 6, 6, 7, 7, 8, 8, 9, 9,10,10,11,11,12,12,13,13,
- 14,14,15,15, 6, 6, 6, 7, 7, 8, 8, 9, 9, 9,10,11,
- 11,12,12,13,13,14,14,15,15, 7, 7, 7, 8, 8, 9, 9,
- 10,10,11,11,12,12,13,13,15,15,15,15,16,16, 7, 7,
- 7, 8, 8, 9, 9,10,10,11,11,12,12,13,13,15,15,15,
- 15,16,16, 8, 8, 8, 9, 9,10,10,11,11,12,12,13,13,
- 14,15,15,15,17,16,17,17, 8, 8, 8, 9, 9,10,10,11,
- 11,12,12,13,13,14,14,15,15,16,16,17,17, 8, 9, 9,
- 10,10,11,11,12,12,13,13,14,15,16,15,16,16,17,17,
- 17,17, 8, 9, 9,10,10,11,11,12,12,13,13,14,14,16,
- 15,17,17,17,17,18,18, 9,10,10,11,11,12,12,13,13,
- 14,14,16,16,16,17,17,17,18,18,18,18, 9,10,10,11,
- 11,12,12,13,13,14,14,15,16,16,16,17,17,18,18,19,
- 18,10,11,11,12,12,14,13,15,14,16,16,17,17,17,17,
- 18,18,18,18,18,18,10,11,11,12,12,14,13,15,14,16,
- 16,16,16,17,18,18,17,18,18,18,19,11,12,12,13,14,
- 15,15,16,16,16,17,17,17,18,18,18,18,19,19,19,19,
- 11,12,12,14,14,15,15,16,16,17,17,17,17,18,18,19,
- 18,18,18,18,19,11,13,13,14,15,16,16,17,17,17,17,
- 17,18,18,19,18,18,19,19,20,19,12,13,13,15,14,16,
- 16,16,17,17,17,18,18,18,19,19,18,19,19,20,20,12,
- 14,14,15,15,16,17,18,17,18,18,18,19,18,18,19,19,
- 19,19,19,20,12,14,14,15,15,16,16,17,17,17,17,18,
- 19,18,18,19,19,20,19,19,20,
-};
-
-static float _vq_quantthresh_res0_256_1024_3[] = {
- -9.5, -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, 9.5,
-};
-
-static long _vq_quantmap_res0_256_1024_3[] = {
- 19, 17, 15, 13, 11, 9, 7, 5,
- 3, 1, 0, 2, 4, 6, 8, 10,
- 12, 14, 16, 18, 20,
-};
-
-static encode_aux_threshmatch _vq_auxt_res0_256_1024_3 = {
- _vq_quantthresh_res0_256_1024_3,
- _vq_quantmap_res0_256_1024_3,
- 21,
- 21
-};
-
-static static_codebook _vq_book_res0_256_1024_3 = {
- 2, 441,
- _vq_lengthlist_res0_256_1024_3,
- 1, -529268736, 1611661312, 5, 0,
- _vq_quantlist_res0_256_1024_3,
- NULL,
- &_vq_auxt_res0_256_1024_3,
- NULL,
- 0
-};
-
-
-#endif
diff --git a/lib/books/res0_256_1024_4.vqh b/lib/books/res0_256_1024_4.vqh
deleted file mode 100644
index 1dad6656..00000000
--- a/lib/books/res0_256_1024_4.vqh
+++ /dev/null
@@ -1,107 +0,0 @@
-/********************************************************************
- * *
- * 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_res0_256_1024_4_VQH_
-#define _V_res0_256_1024_4_VQH_
-#include "codebook.h"
-
-static long _vq_quantlist_res0_256_1024_4[] = {
- 10,
- 9,
- 11,
- 8,
- 12,
- 7,
- 13,
- 6,
- 14,
- 5,
- 15,
- 4,
- 16,
- 3,
- 17,
- 2,
- 18,
- 1,
- 19,
- 0,
- 20,
-};
-
-static long _vq_lengthlist_res0_256_1024_4[] = {
- 6, 6, 6, 6, 6, 7, 7, 7, 7, 8, 8, 9, 9, 9, 9,10,
- 10,11,11,11,11, 6, 6, 6, 6, 6, 7, 7, 7, 7, 8, 8,
- 9, 9, 9, 9,10,10,11,11,12,12, 6, 6, 6, 6, 6, 7,
- 7, 7, 7, 8, 8, 9, 9, 9, 9,10,10,11,11,11,12, 6,
- 6, 6, 7, 6, 7, 7, 8, 8, 8, 8, 9, 9,10,10,11,11,
- 11,11,12,12, 6, 6, 6, 6, 7, 7, 7, 8, 8, 8, 8, 9,
- 9,10,10,11,11,11,11,12,12, 7, 7, 7, 7, 7, 7, 7,
- 8, 8, 9, 9, 9, 9,10,10,11,11,12,12,12,12, 7, 7,
- 7, 7, 7, 7, 7, 8, 8, 9, 9, 9, 9,10,10,11,11,12,
- 12,12,12, 7, 7, 7, 8, 8, 8, 8, 9, 9, 9, 9,10,10,
- 11,11,12,12,12,12,13,13, 7, 7, 7, 8, 8, 8, 8, 9,
- 9, 9, 9,10,10,11,11,12,12,12,12,13,13, 8, 8, 8,
- 8, 8, 9, 9, 9, 9,10,10,11,11,11,11,12,12,13,13,
- 13,14, 8, 8, 8, 8, 8, 9, 9, 9, 9,10,10,11,11,11,
- 11,12,12,13,13,13,13, 9, 9, 9, 9, 9,10,10,10,10,
- 11,11,11,11,12,12,13,13,13,13,14,14, 9, 9, 9, 9,
- 9,10,10,10,10,11,11,11,11,12,12,13,13,13,13,14,
- 14, 9,10,10,10,10,10,10,11,11,12,11,12,12,13,13,
- 13,13,14,14,15,15, 9,10,10,10,10,10,10,11,11,12,
- 11,12,12,13,13,13,13,14,14,15,15,10,10,10,11,11,
- 11,11,12,12,12,12,13,13,13,13,14,14,14,14,15,15,
- 10,10,10,11,11,11,11,12,12,12,12,13,13,13,13,14,
- 14,15,14,15,15,11,11,11,12,12,12,12,13,12,13,13,
- 14,13,14,14,15,14,15,15,15,16,11,11,11,12,12,12,
- 12,13,12,13,13,14,14,14,14,15,14,15,15,16,16,12,
- 12,12,12,12,13,13,13,13,14,14,14,14,15,15,15,15,
- 16,16,16,16,12,12,12,12,12,13,13,13,13,14,14,14,
- 14,15,15,15,15,15,16,16,16,
-};
-
-static float _vq_quantthresh_res0_256_1024_4[] = {
- -9.5, -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, 9.5,
-};
-
-static long _vq_quantmap_res0_256_1024_4[] = {
- 19, 17, 15, 13, 11, 9, 7, 5,
- 3, 1, 0, 2, 4, 6, 8, 10,
- 12, 14, 16, 18, 20,
-};
-
-static encode_aux_threshmatch _vq_auxt_res0_256_1024_4 = {
- _vq_quantthresh_res0_256_1024_4,
- _vq_quantmap_res0_256_1024_4,
- 21,
- 21
-};
-
-static static_codebook _vq_book_res0_256_1024_4 = {
- 2, 441,
- _vq_lengthlist_res0_256_1024_4,
- 1, -529268736, 1611661312, 5, 0,
- _vq_quantlist_res0_256_1024_4,
- NULL,
- &_vq_auxt_res0_256_1024_4,
- NULL,
- 0
-};
-
-
-#endif
diff --git a/lib/books/res0_256_1024_5.vqh b/lib/books/res0_256_1024_5.vqh
deleted file mode 100644
index 09dfa780..00000000
--- a/lib/books/res0_256_1024_5.vqh
+++ /dev/null
@@ -1,210 +0,0 @@
-/********************************************************************
- * *
- * 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_res0_256_1024_5_VQH_
-#define _V_res0_256_1024_5_VQH_
-#include "codebook.h"
-
-static long _vq_quantlist_res0_256_1024_5[] = {
- 20,
- 19,
- 21,
- 18,
- 22,
- 17,
- 23,
- 16,
- 24,
- 15,
- 25,
- 14,
- 26,
- 13,
- 27,
- 12,
- 28,
- 11,
- 29,
- 10,
- 30,
- 9,
- 31,
- 8,
- 32,
- 7,
- 33,
- 6,
- 34,
- 5,
- 35,
- 4,
- 36,
- 3,
- 37,
- 2,
- 38,
- 1,
- 39,
- 0,
- 40,
-};
-
-static long _vq_lengthlist_res0_256_1024_5[] = {
- 4, 5, 5, 6, 6, 7, 7, 8, 8, 8, 8, 8, 8, 9, 9, 9,
- 9, 9, 9,10,10, 9, 9,10,10,10,10,10,10,11,11,11,
- 11,11,11,11,11,12,12,12,12, 5, 6, 6, 7, 7, 8, 8,
- 8, 8, 8, 8, 9, 9, 9, 9,10,10,10,10,10,10,10,10,
- 10,10,11,11,11,11,11,11,12,12,12,12,12,12,13,13,
- 13,13, 5, 6, 6, 7, 7, 8, 8, 8, 8, 8, 8, 9, 9, 9,
- 9,10,10,10,10,10,10,10,10,10,10,11,11,11,11,11,
- 11,12,12,12,12,12,12,12,12,13,13, 6, 7, 7, 8, 8,
- 8, 8, 9, 9, 9, 9, 9, 9,10,10,10,10,10,10,11,11,
- 11,11,11,11,11,11,12,12,12,12,12,13,13,13,13,13,
- 13,13,14,14, 7, 7, 7, 8, 8, 8, 8, 9, 9, 9, 9, 9,
- 9,10,10,10,10,10,10,11,11,11,11,11,11,11,11,12,
- 12,12,12,12,12,13,13,13,13,13,13,14,14, 7, 8, 8,
- 8, 8, 9, 9, 9, 9, 9, 9,10,10,10,10,10,10,11,11,
- 11,11,11,11,12,12,12,12,12,12,13,13,13,13,13,13,
- 14,14,14,14,14,14, 7, 8, 8, 8, 8, 9, 9, 9, 9, 9,
- 9,10,10,10,10,10,10,11,11,11,11,11,11,12,12,12,
- 12,12,12,13,13,13,13,13,13,14,14,14,14,14,14, 8,
- 8, 8, 9, 9, 9, 9, 9, 9,10,10,10,10,11,10,11,11,
- 11,11,12,12,12,12,12,12,12,12,13,13,13,13,13,13,
- 14,14,14,14,15,14,15,15, 8, 8, 8, 9, 9, 9, 9, 9,
- 9,10,10,10,10,11,11,11,11,11,11,12,12,12,12,12,
- 12,12,12,13,13,13,13,13,13,14,14,14,14,14,14,15,
- 15, 8, 9, 9, 9, 9, 9, 9,10,10,10,10,11,10,11,11,
- 11,11,12,12,12,12,12,12,12,12,13,13,13,13,14,13,
- 14,14,14,14,14,15,15,15,15,15, 8, 9, 9, 9, 9, 9,
- 9,10,10,10,10,10,11,11,11,11,11,12,12,12,12,12,
- 12,12,12,13,13,13,13,14,13,14,14,14,14,15,15,15,
- 15,15,15, 9, 9, 9, 9, 9,10,10,10,10,11,11,11,11,
- 11,11,12,12,12,12,12,12,12,12,13,13,13,13,13,14,
- 14,14,14,14,15,15,15,15,15,15,16,15, 9, 9, 9, 9,
- 9,10,10,10,10,11,11,11,11,11,11,12,12,12,12,12,
- 12,12,12,13,13,13,13,14,14,14,14,14,14,15,14,15,
- 15,15,15,15,15, 9, 9, 9,10,10,10,10,11,11,11,11,
- 11,11,12,12,12,12,12,12,13,13,13,13,13,13,13,13,
- 14,14,14,14,15,15,15,15,15,15,16,16,16,16, 9, 9,
- 9,10,10,10,10,11,11,11,11,11,11,12,12,12,12,12,
- 12,13,13,13,13,13,13,14,14,14,14,14,14,15,14,15,
- 15,15,15,15,16,16,16, 9,10,10,10,10,11,11,11,11,
- 11,11,12,12,12,12,12,12,13,13,13,13,13,13,14,13,
- 14,14,14,14,15,15,15,15,15,15,15,16,16,16,16,16,
- 9,10,10,10,10,11,11,11,11,11,11,12,12,12,12,12,
- 12,13,13,13,13,13,13,13,14,14,14,14,14,15,14,15,
- 15,15,15,16,16,16,16,16,16,10,10,10,11,11,11,11,
- 11,11,12,12,12,12,13,12,13,13,13,13,14,13,13,14,
- 14,14,14,14,15,15,15,15,15,15,15,15,16,16,16,16,
- 16,16,10,10,10,11,11,11,11,11,11,12,12,12,12,12,
- 12,13,13,13,13,13,13,13,13,14,14,14,14,14,15,15,
- 15,15,15,16,15,16,16,16,16,17,17,10,11,11,11,11,
- 11,11,12,12,12,12,12,12,13,13,13,13,13,13,14,14,
- 14,14,14,14,15,15,15,15,15,15,16,16,16,16,16,16,
- 17,16,17,17,10,11,11,11,11,11,11,12,12,12,12,12,
- 12,13,13,13,13,14,13,14,14,14,14,14,14,15,15,15,
- 15,15,15,15,16,16,16,16,16,16,16,16,17,10,10,10,
- 11,11,11,11,12,12,12,12,12,12,13,13,13,13,14,13,
- 14,14,14,14,15,15,15,15,15,15,16,16,16,16,16,16,
- 17,16,17,17,18,17,10,10,10,11,11,11,11,12,12,12,
- 12,13,12,13,13,13,13,14,14,14,14,14,14,15,15,15,
- 15,15,15,16,16,16,16,16,16,17,17,17,17,17,17,10,
- 11,11,11,11,12,12,12,12,13,13,13,13,13,13,14,14,
- 14,14,14,14,15,15,15,15,15,15,16,15,16,16,16,16,
- 16,16,17,17,17,17,17,18,10,11,11,11,11,12,12,12,
- 12,13,13,13,13,13,13,14,14,14,14,14,14,15,15,15,
- 15,16,15,16,16,16,16,16,17,17,16,17,17,17,17,17,
- 17,10,11,11,12,12,12,12,13,13,13,13,13,13,14,14,
- 14,14,14,14,15,14,15,15,15,16,15,16,16,16,16,16,
- 17,17,17,17,17,17,17,18,17,18,10,11,11,12,12,12,
- 12,13,13,13,13,13,13,14,14,14,14,14,14,15,15,15,
- 15,15,15,16,16,16,16,16,16,17,17,17,17,17,17,17,
- 18,18,18,11,12,12,12,12,13,13,13,13,14,13,14,14,
- 14,14,14,14,15,15,15,15,16,15,16,16,16,16,16,16,
- 16,17,17,17,17,17,17,17,18,18,18,18,11,12,12,12,
- 12,13,13,13,13,13,13,14,14,14,14,14,15,15,15,15,
- 15,15,15,16,16,16,16,16,16,17,17,17,17,17,17,17,
- 18,18,17,18,18,11,12,12,13,13,13,13,13,13,14,14,
- 14,14,15,15,15,15,15,15,15,15,16,16,16,16,16,16,
- 17,16,17,17,18,17,18,17,17,18,18,18,18,18,11,12,
- 12,13,13,13,13,13,14,14,14,14,14,15,15,15,15,15,
- 15,15,15,16,16,16,16,16,16,17,17,17,17,17,17,17,
- 17,17,18,19,18,18,18,11,12,12,13,13,14,14,14,14,
- 14,14,15,14,15,15,15,15,15,16,16,16,16,16,17,17,
- 17,16,17,17,17,17,18,18,17,18,18,18,18,18,18,18,
- 11,12,12,13,13,14,13,14,14,14,14,14,15,15,15,15,
- 15,16,16,16,16,16,16,16,16,16,17,17,17,17,18,18,
- 17,18,18,19,18,18,19,19,18,12,13,13,13,13,14,14,
- 14,14,14,14,15,15,15,15,16,16,16,16,16,16,16,16,
- 17,17,17,18,18,17,17,17,18,18,18,18,18,18,18,19,
- 18,18,12,13,13,13,13,14,14,14,14,15,15,15,15,16,
- 15,16,16,16,16,16,16,16,17,17,17,17,17,17,17,18,
- 18,18,19,18,18,18,19,18,19,19,19,12,13,13,14,14,
- 14,14,15,15,15,15,15,15,16,16,16,16,16,16,16,17,
- 16,17,17,17,17,18,17,17,17,18,18,18,18,18,19,19,
- 18,18,18,18,12,13,13,14,14,14,14,15,15,15,15,15,
- 15,16,16,16,16,16,16,16,17,17,17,17,17,17,18,17,
- 17,18,18,18,18,18,18,18,18,19,18,19,19,12,13,13,
- 14,14,15,15,15,15,15,15,16,16,16,16,16,16,17,16,
- 17,17,17,17,17,18,18,18,18,18,18,17,18,18,19,19,
- 19,18,19,18,19,18,12,13,13,14,14,15,15,15,15,15,
- 16,16,16,16,16,16,16,17,17,17,16,17,17,17,17,17,
- 18,18,17,18,19,18,18,19,18,19,19,19,18,19,18,13,
- 14,14,14,15,15,15,15,16,16,16,16,16,17,16,17,17,
- 17,17,17,17,18,17,17,18,18,18,18,18,18,19,18,18,
- 19,18,19,20,19,19,20,19,13,14,14,14,14,15,15,15,
- 15,16,16,16,16,16,16,16,17,17,17,17,17,17,17,18,
- 18,18,17,19,18,18,19,19,18,18,19,19,19,19,18,19,
- 19,
-};
-
-static float _vq_quantthresh_res0_256_1024_5[] = {
- -19.5, -18.5, -17.5, -16.5, -15.5, -14.5, -13.5, -12.5,
- -11.5, -10.5, -9.5, -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, 9.5, 10.5, 11.5,
- 12.5, 13.5, 14.5, 15.5, 16.5, 17.5, 18.5, 19.5,
-};
-
-static long _vq_quantmap_res0_256_1024_5[] = {
- 39, 37, 35, 33, 31, 29, 27, 25,
- 23, 21, 19, 17, 15, 13, 11, 9,
- 7, 5, 3, 1, 0, 2, 4, 6,
- 8, 10, 12, 14, 16, 18, 20, 22,
- 24, 26, 28, 30, 32, 34, 36, 38,
- 40,
-};
-
-static encode_aux_threshmatch _vq_auxt_res0_256_1024_5 = {
- _vq_quantthresh_res0_256_1024_5,
- _vq_quantmap_res0_256_1024_5,
- 41,
- 41
-};
-
-static static_codebook _vq_book_res0_256_1024_5 = {
- 2, 1681,
- _vq_lengthlist_res0_256_1024_5,
- 1, -527171584, 1611661312, 6, 0,
- _vq_quantlist_res0_256_1024_5,
- NULL,
- &_vq_auxt_res0_256_1024_5,
- NULL,
- 0
-};
-
-
-#endif
diff --git a/lib/books/res0_256_1024_6.vqh b/lib/books/res0_256_1024_6.vqh
deleted file mode 100644
index bfd61a2e..00000000
--- a/lib/books/res0_256_1024_6.vqh
+++ /dev/null
@@ -1,565 +0,0 @@
-/********************************************************************
- * *
- * 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_res0_256_1024_6_VQH_
-#define _V_res0_256_1024_6_VQH_
-#include "codebook.h"
-
-static long _vq_quantlist_res0_256_1024_6[] = {
- 40,
- 39,
- 41,
- 38,
- 42,
- 37,
- 43,
- 36,
- 44,
- 35,
- 45,
- 34,
- 46,
- 33,
- 47,
- 32,
- 48,
- 31,
- 49,
- 30,
- 50,
- 29,
- 51,
- 28,
- 52,
- 27,
- 53,
- 26,
- 54,
- 25,
- 55,
- 24,
- 56,
- 23,
- 57,
- 22,
- 58,
- 21,
- 59,
- 20,
- 60,
- 19,
- 61,
- 18,
- 62,
- 17,
- 63,
- 16,
- 64,
- 15,
- 65,
- 14,
- 66,
- 13,
- 67,
- 12,
- 68,
- 11,
- 69,
- 10,
- 70,
- 9,
- 71,
- 8,
- 72,
- 7,
- 73,
- 6,
- 74,
- 5,
- 75,
- 4,
- 76,
- 3,
- 77,
- 2,
- 78,
- 1,
- 79,
- 0,
- 80,
-};
-
-static long _vq_lengthlist_res0_256_1024_6[] = {
- 4, 5, 5, 6, 6, 7, 7, 7, 7, 8, 8, 8, 8, 8, 8, 9,
- 9, 9, 9, 9, 9, 9, 9, 9, 9,10,10,10,10,10,10,10,
- 10,10,10,10,11,11,11,11,11,10,10,10,10,10,10,11,
- 10,11,11,11,11,11,11,11,11,11,11,12,12,12,12,12,
- 12,12,12,13,13,13,13,13,13,13,13,13,13,14,13,14,
- 14, 6, 7, 7, 7, 7, 8, 8, 8, 8, 9, 9, 9, 9, 9, 9,
- 9,10,10,10,10,10,10,10,10,10,11,11,11,11,11,11,
- 11,11,11,11,12,11,12,12,12,12,11,11,11,11,11,11,
- 12,12,12,12,12,12,12,12,12,12,13,13,13,13,13,13,
- 13,13,13,13,14,14,14,14,14,14,14,14,14,14,15,14,
- 15,14, 6, 7, 7, 7, 7, 8, 8, 8, 8, 9, 9, 9, 9, 9,
- 9, 9, 9,10,10,10,10,10,10,10,10,10,11,11,11,11,
- 11,11,11,11,11,11,11,12,11,12,12,11,11,11,11,11,
- 11,12,11,12,12,12,12,12,12,12,12,13,13,13,13,13,
- 13,13,13,13,13,14,14,14,14,14,14,14,14,14,14,14,
- 14,15,15, 7, 7, 7, 8, 8, 9, 9, 9, 9, 9, 9,10,10,
- 10,10,10,10,10,10,10,11,11,11,11,11,11,11,11,11,
- 12,12,12,12,12,12,12,12,12,12,13,13,12,12,12,12,
- 12,12,12,12,13,12,13,13,13,13,13,13,13,13,13,13,
- 14,14,14,14,14,14,14,14,15,14,15,14,15,14,15,15,
- 15,15,15,15, 7, 7, 7, 8, 8, 8, 9, 9, 9, 9, 9,10,
- 10,10,10,10,10,10,10,11,11,11,11,11,11,11,11,11,
- 11,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,
- 12,12,12,12,12,12,12,13,13,13,13,13,13,13,13,13,
- 13,14,14,14,14,14,14,14,14,14,14,15,15,15,15,15,
- 14,15,15,15,16, 8, 8, 8, 9, 9, 9, 9, 9, 9,10,10,
- 10,10,10,10,11,11,11,11,11,11,11,11,11,11,12,12,
- 12,12,12,12,12,12,12,12,13,12,13,13,13,13,12,12,
- 12,12,13,13,13,13,13,13,13,13,13,13,14,14,14,14,
- 14,14,14,14,14,14,15,15,14,15,15,15,15,15,15,15,
- 15,15,16,15,16,15, 8, 8, 8, 9, 9, 9, 9, 9, 9,10,
- 10,10,10,10,10,11,11,11,11,11,11,11,11,11,11,12,
- 12,12,12,12,12,12,12,12,12,13,12,13,13,13,13,12,
- 12,13,12,13,13,13,13,13,13,13,13,13,13,14,14,14,
- 14,14,14,14,14,14,14,15,14,15,15,15,15,15,15,15,
- 15,15,15,16,16,15,15, 8, 9, 9, 9, 9,10,10,10,10,
- 10,10,11,10,11,11,11,11,11,11,11,11,12,12,12,12,
- 12,12,12,12,13,12,13,13,13,13,13,13,13,13,13,13,
- 13,13,13,13,13,13,13,13,14,13,14,14,14,14,14,14,
- 14,14,14,14,15,15,15,15,15,15,16,15,15,15,15,15,
- 16,15,16,16,16,16,16,16, 8, 9, 9, 9, 9,10,10,10,
- 10,10,10,10,11,11,11,11,11,11,11,11,12,12,12,12,
- 12,12,12,12,12,12,12,12,12,13,13,13,13,13,13,13,
- 13,13,13,13,13,13,13,13,13,14,13,14,14,14,14,14,
- 14,14,15,14,14,15,15,15,15,15,15,15,15,15,15,15,
- 15,16,15,15,16,16,16,16,16, 9, 9, 9,10,10,10,10,
- 10,10,11,11,11,11,11,11,11,11,11,11,12,12,12,12,
- 12,12,12,12,13,12,13,13,13,13,13,13,13,13,13,13,
- 14,14,13,13,13,13,13,13,14,14,14,14,14,14,14,14,
- 15,14,15,14,15,15,15,15,15,15,15,15,16,15,16,16,
- 16,16,16,16,16,16,16,16,16,16, 9, 9, 9,10,10,10,
- 10,10,10,11,11,11,11,11,11,11,11,12,12,12,12,12,
- 12,12,12,12,12,13,13,13,13,13,13,13,13,13,13,13,
- 14,14,14,13,13,13,13,14,13,13,14,14,14,14,14,14,
- 14,14,14,15,14,15,15,15,15,15,15,15,15,16,15,16,
- 16,16,15,16,16,16,16,16,16,16,16, 9, 9, 9,10,10,
- 10,10,11,11,11,11,11,11,11,11,12,12,12,12,12,12,
- 12,12,12,12,13,13,13,13,13,13,13,13,13,13,14,13,
- 14,14,14,14,13,14,14,14,14,14,14,14,14,14,14,14,
- 14,15,15,15,15,15,15,15,15,15,15,15,16,16,16,16,
- 16,16,16,16,16,16,16,17,17,17,17,16, 9, 9, 9,10,
- 10,10,10,11,11,11,11,11,11,11,11,12,12,12,12,12,
- 12,12,12,12,12,13,13,13,13,13,13,13,13,13,13,14,
- 14,14,14,14,14,13,13,14,13,14,14,14,14,14,14,14,
- 14,15,14,15,15,15,15,15,15,15,16,15,16,16,16,16,
- 15,17,16,16,16,17,16,17,16,17,16,17,16, 9,10,10,
- 10,10,11,11,11,11,11,11,11,11,12,12,12,12,12,12,
- 12,12,13,13,13,13,13,13,13,13,13,13,14,13,14,14,
- 14,14,14,14,14,14,14,14,14,14,14,14,14,14,15,15,
- 15,15,15,15,15,15,15,15,15,15,15,16,16,16,16,16,
- 16,16,16,17,16,16,17,17,16,16,16,17,18,17, 9,10,
- 10,10,10,11,11,11,11,11,11,11,11,12,12,12,12,12,
- 12,12,12,13,13,13,13,13,13,13,13,13,13,13,14,13,
- 14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,15,
- 15,15,15,15,15,15,15,15,15,15,15,16,15,16,16,16,
- 16,16,16,17,16,16,16,16,16,17,16,17,16,17,16,10,
- 10,10,11,11,11,11,11,11,11,12,12,12,12,12,12,12,
- 13,12,13,13,13,13,13,13,13,13,13,13,14,14,14,14,
- 14,14,14,14,14,14,15,14,14,14,14,14,14,14,15,15,
- 15,15,15,15,15,15,15,15,15,15,16,16,16,16,16,16,
- 16,16,16,16,17,17,16,16,17,17,17,17,18,18,17,17,
- 10,10,10,10,11,11,11,11,11,11,12,12,12,12,12,12,
- 12,13,12,13,13,13,13,13,13,13,13,14,13,14,14,14,
- 14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,
- 14,14,15,15,15,15,15,15,15,16,16,15,15,16,16,16,
- 16,16,16,16,16,17,17,17,17,16,17,17,17,17,17,17,
- 17,10,10,10,11,11,11,11,12,12,12,12,12,12,12,12,
- 12,12,13,13,13,13,13,13,13,13,14,14,14,14,14,14,
- 14,14,14,14,14,14,15,14,15,15,14,14,15,14,15,15,
- 15,15,15,15,15,15,15,16,16,16,15,16,16,16,16,16,
- 17,16,17,16,16,17,16,17,17,17,17,17,17,17,17,17,
- 18,17,10,10,10,11,11,11,11,11,12,12,12,12,12,12,
- 12,13,13,13,13,13,13,13,13,13,13,13,13,14,14,14,
- 14,14,14,14,14,14,14,14,14,15,15,14,14,14,14,15,
- 15,15,15,15,15,15,15,16,16,16,15,16,15,16,15,16,
- 16,16,16,16,17,16,16,17,16,18,17,16,17,17,17,17,
- 17,17,17,10,11,11,11,11,11,12,12,12,12,12,12,12,
- 13,13,13,13,13,13,13,13,13,13,14,13,14,14,14,14,
- 14,14,14,14,14,15,15,15,15,15,15,15,15,15,15,15,
- 15,15,15,15,15,15,15,15,16,16,16,16,16,16,16,16,
- 16,16,18,17,17,16,17,17,17,18,18,18,18,17,18,18,
- 18,19,17,17,10,11,11,11,11,12,12,12,12,12,12,12,
- 12,13,13,13,13,13,13,13,13,13,13,14,14,14,14,14,
- 14,14,14,14,14,15,15,15,15,15,15,15,15,14,15,15,
- 14,15,15,15,15,15,15,16,16,16,16,16,16,16,16,17,
- 16,16,16,16,17,17,17,17,17,17,16,17,17,17,17,17,
- 17,18,18,18,17,10,11,11,11,11,12,12,12,12,12,12,
- 13,13,13,13,13,13,13,13,14,14,14,14,14,14,14,14,
- 14,14,14,15,15,15,15,14,15,15,15,15,16,15,15,15,
- 15,15,15,15,15,15,16,16,16,16,16,16,16,16,16,16,
- 17,16,16,16,17,17,17,18,17,17,17,17,17,17,18,17,
- 19,17,18,18,17,18,10,11,11,11,11,12,12,12,12,12,
- 12,13,13,13,13,13,13,13,13,13,13,14,14,14,14,14,
- 14,14,14,14,15,15,15,15,15,15,15,15,15,15,15,15,
- 15,15,15,15,15,15,15,15,16,16,16,16,16,16,16,16,
- 16,16,16,16,16,16,16,18,17,17,17,17,18,17,17,17,
- 18,18,18,17,18,18,18,11,11,11,12,12,12,12,12,12,
- 13,13,13,13,13,13,13,13,13,13,14,14,14,14,14,14,
- 14,14,14,15,15,15,15,15,15,15,15,15,15,15,15,15,
- 15,15,15,15,16,16,16,16,16,16,16,16,16,16,16,16,
- 17,17,17,16,16,17,17,17,18,17,17,17,18,17,18,17,
- 17,18,18,18,18,18,18,18,11,11,11,12,12,12,12,12,
- 12,13,13,13,13,13,13,13,13,14,13,14,14,14,14,14,
- 14,14,14,15,14,15,15,15,15,15,15,15,15,15,15,16,
- 16,15,15,15,15,16,16,16,16,15,16,16,16,16,15,16,
- 16,16,17,18,16,17,17,18,17,18,16,17,17,17,17,17,
- 17,18,19,18,17,18,18,18,18,11,11,11,12,12,12,12,
- 13,13,13,13,13,13,14,13,14,14,14,14,14,14,14,14,
- 14,15,14,14,15,15,15,15,15,15,15,15,16,15,15,15,
- 16,16,15,15,15,15,16,16,16,15,16,16,16,16,16,16,
- 17,16,17,16,17,17,17,17,18,17,17,17,17,18,17,17,
- 17,18,17,18,18,18,18,18,18,18,11,11,11,12,12,12,
- 12,13,13,13,13,13,13,13,14,14,14,14,14,14,14,14,
- 14,14,15,15,15,15,15,15,15,15,15,16,15,16,16,16,
- 16,16,15,15,15,15,15,16,15,16,16,16,16,16,17,16,
- 17,17,17,17,17,17,17,18,17,18,17,17,18,18,17,18,
- 17,18,18,18,17,17,17,17,18,18,18,11,12,12,12,12,
- 13,13,13,13,13,13,13,14,14,14,14,14,14,14,15,14,
- 15,14,15,15,15,15,15,15,15,15,15,15,15,15,16,16,
- 16,16,16,16,15,15,16,16,16,16,16,17,16,16,16,16,
- 17,16,17,16,17,17,17,17,17,17,17,18,18,18,18,18,
- 19,18,18,18,19,18,19,18,18,17,18,18,11,12,12,12,
- 12,12,13,13,13,13,13,14,14,14,13,14,14,14,14,14,
- 15,14,14,15,15,15,15,15,15,15,15,15,15,16,15,16,
- 16,16,16,16,16,16,16,16,16,16,16,17,16,16,16,17,
- 16,17,16,17,16,17,17,17,17,18,17,17,17,18,17,18,
- 18,18,17,19,18,17,18,18,19,18,18,18,18,11,12,12,
- 13,12,13,13,13,13,13,14,14,14,14,14,14,14,14,14,
- 14,15,15,15,15,15,15,15,15,15,16,15,15,16,15,16,
- 16,16,16,16,16,17,16,16,16,16,16,17,17,17,16,17,
- 16,17,17,17,17,17,17,17,17,17,17,18,18,17,18,18,
- 18,18,19,18,19,18,19,20,18,19,18,19,18,19,11,12,
- 12,13,13,13,13,13,13,13,13,14,14,14,14,14,14,14,
- 14,15,14,14,15,15,15,15,15,15,15,15,15,16,16,16,
- 15,16,16,16,16,16,16,16,15,16,16,16,16,16,16,16,
- 16,17,16,17,17,17,17,17,17,18,18,18,17,17,18,17,
- 17,17,17,18,18,18,18,17,18,18,19,18,18,18,18,11,
- 12,12,13,13,13,13,13,13,14,14,14,14,14,14,14,15,
- 15,14,15,15,15,15,15,15,16,15,15,15,16,16,16,16,
- 15,16,16,16,16,16,16,16,16,16,16,17,16,17,16,17,
- 17,16,17,17,17,17,17,17,17,18,17,18,18,17,17,17,
- 18,18,18,18,18,18,19,18,18,19,19,18,19,18,19,19,
- 11,12,12,13,13,13,13,13,14,14,14,14,14,14,14,15,
- 14,14,15,15,14,15,15,15,15,15,16,16,16,16,16,15,
- 16,16,16,16,16,17,16,16,16,16,16,16,16,17,17,17,
- 17,16,16,17,16,17,17,18,17,17,17,18,18,18,18,18,
- 17,18,18,18,17,19,19,18,18,18,18,18,18,19,19,19,
- 18,12,12,12,13,13,13,13,14,14,14,14,14,14,14,14,
- 15,14,15,15,15,15,15,16,15,15,16,15,16,15,16,16,
- 16,15,16,16,16,16,16,17,17,16,16,16,16,16,17,16,
- 16,17,17,17,17,17,17,17,17,17,18,17,18,18,18,18,
- 18,17,18,18,19,18,18,18,18,18,19,19,19,19,19,19,
- 19,19,12,12,12,13,13,13,13,14,13,14,14,14,14,14,
- 14,14,14,15,15,15,15,15,15,15,15,16,15,16,16,16,
- 16,16,16,16,16,16,17,16,16,17,16,16,17,17,16,16,
- 17,17,17,17,17,17,17,17,18,18,17,17,17,18,18,18,
- 18,18,18,18,18,18,18,18,18,19,18,19,19,18,18,18,
- 20,20,18,12,13,13,13,13,14,13,14,14,14,14,14,14,
- 15,15,15,15,15,15,15,15,15,15,16,15,16,16,16,16,
- 16,17,16,16,16,16,17,16,17,17,17,17,17,16,16,17,
- 17,17,17,16,17,17,17,18,18,18,17,18,18,17,18,18,
- 18,18,19,19,19,18,19,18,18,18,21,18,19,19,18,19,
- 19,19,20,20,12,13,13,13,13,13,14,14,14,14,14,15,
- 14,15,15,15,15,15,15,15,15,16,15,16,15,16,16,16,
- 16,16,16,16,16,16,16,16,17,16,16,17,17,16,16,17,
- 17,17,16,17,17,17,17,17,18,17,18,18,18,17,17,17,
- 17,18,18,18,17,19,18,19,19,19,19,19,19,18,19,18,
- 18,19,18,19,20,12,13,13,14,13,14,14,14,14,14,14,
- 14,15,15,15,15,15,15,15,16,16,16,16,16,16,16,16,
- 16,16,17,16,17,16,17,16,17,17,17,17,17,18,17,16,
- 17,17,17,17,17,17,18,17,17,18,18,18,18,18,17,17,
- 18,18,19,18,19,17,18,19,18,18,18,19,20,19,19,19,
- 18,19,18,19,18,19,12,13,13,13,13,14,14,14,14,14,
- 14,15,15,15,15,15,15,15,16,16,16,16,15,16,16,17,
- 16,16,16,17,16,17,16,16,17,17,17,17,17,17,18,16,
- 16,17,16,17,17,17,17,17,17,18,17,18,18,18,18,17,
- 18,18,18,19,17,19,19,18,19,18,18,19,19,19,19,19,
- 18,20,19,19,19,19,19,12,13,13,14,14,14,14,15,14,
- 15,15,15,15,15,15,15,15,15,16,16,16,15,15,16,16,
- 16,16,16,17,17,17,17,16,17,17,17,17,18,17,17,17,
- 17,17,18,17,17,17,17,17,18,18,17,18,18,18,18,18,
- 18,18,19,18,18,18,18,18,20,19,19,18,21,18,19,20,
- 19,19,19,19,19,19,19,19,13,13,13,14,14,14,14,14,
- 14,15,15,15,15,15,15,15,16,15,15,16,16,16,16,16,
- 16,16,16,16,16,17,17,17,17,17,16,17,17,17,17,17,
- 17,17,16,17,17,17,17,17,17,17,18,17,18,18,18,18,
- 19,18,19,18,18,18,18,18,18,19,18,18,19,19,19,19,
- 19,20,18,19,19,20,19,20,20,11,12,12,13,13,13,13,
- 13,14,14,14,14,14,14,15,15,15,15,15,15,15,16,15,
- 15,15,16,15,16,16,16,16,16,17,16,16,17,17,17,17,
- 17,17,16,17,17,17,17,17,18,18,18,17,18,18,18,18,
- 18,18,18,18,19,18,18,19,20,19,18,19,19,18,18,19,
- 19,18,19,19,19,19,21,21,19,18,11,12,12,13,13,13,
- 13,14,14,14,14,15,14,15,15,15,15,15,15,15,15,15,
- 15,15,15,16,16,16,16,16,15,16,16,17,16,16,16,17,
- 17,17,16,17,17,17,17,17,18,18,18,18,17,18,18,18,
- 18,18,18,18,18,18,18,18,18,19,18,18,18,18,18,18,
- 19,20,19,19,18,19,19,19,20,19,19,11,12,12,13,13,
- 13,13,14,14,14,14,14,15,14,15,15,15,15,15,15,16,
- 16,16,16,16,16,16,16,16,16,16,16,17,16,17,17,16,
- 17,17,17,18,17,18,18,17,17,17,18,19,18,18,17,18,
- 18,18,21,18,18,17,19,19,18,18,18,19,20,18,18,18,
- 19,19,19,18,18,20,21,19,18,19,19,20,11,12,12,13,
- 13,14,13,14,14,14,14,14,14,15,15,15,15,15,15,15,
- 16,16,16,16,16,16,16,16,16,16,16,18,16,17,16,17,
- 16,17,17,17,17,18,17,18,17,18,18,18,18,18,18,17,
- 18,17,18,18,18,18,17,20,18,18,18,19,19,19,18,18,
- 19,19,19,19,19,19,19,19,19,18,19,19,20,12,13,13,
- 13,13,14,14,14,14,15,15,15,15,15,15,15,15,15,16,
- 16,15,16,16,16,15,16,16,16,17,17,16,17,16,17,17,
- 18,17,17,17,17,17,17,17,18,17,18,18,18,18,18,18,
- 18,17,19,20,18,18,18,18,19,18,19,20,19,19,19,20,
- 19,19,19,19,18,19,20,20,19,19,19,21,19,19,12,12,
- 13,13,13,14,14,14,14,14,14,15,15,15,15,15,15,15,
- 15,16,16,16,16,16,16,16,16,16,16,16,16,17,17,17,
- 17,16,17,17,17,17,17,17,17,17,18,17,17,17,18,19,
- 18,18,18,19,18,18,17,19,18,19,18,19,19,19,19,19,
- 21,19,20,19,19,19,19,19,21,19,20,20,20,19,21,12,
- 13,13,13,13,14,14,14,14,15,15,15,15,15,15,15,15,
- 16,16,16,16,16,16,16,16,16,16,16,16,17,17,17,17,
- 18,17,18,17,17,17,18,17,18,18,18,17,19,18,18,19,
- 18,18,18,19,18,18,18,20,19,18,19,18,19,19,19,19,
- 19,20,20,18,19,20,20,21,19,19,19,19,19,21,20,21,
- 12,13,13,14,14,14,14,14,14,14,15,15,15,15,15,16,
- 15,15,16,16,16,16,16,16,16,17,16,17,16,17,17,16,
- 17,17,18,17,18,17,18,17,18,17,17,18,18,18,17,18,
- 18,18,18,18,17,19,19,18,18,19,19,18,19,19,19,18,
- 19,21,19,18,20,19,19,19,21,19,20,19,20,19,20,21,
- 21,12,13,13,14,14,14,15,15,15,15,15,15,15,16,16,
- 16,16,16,16,16,16,16,16,17,16,17,17,18,17,17,17,
- 17,17,18,17,18,18,18,17,18,18,17,18,18,18,18,19,
- 19,19,18,19,18,18,18,19,18,18,19,18,19,19,19,19,
- 19,20,20,20,19,21,19,20,20,19,20,19,19,20,19,19,
- 20,21,12,13,13,14,14,14,14,15,15,15,15,16,15,15,
- 15,16,15,16,16,17,16,16,16,17,16,17,17,16,17,17,
- 17,17,17,17,17,17,17,18,18,17,18,18,18,18,17,18,
- 18,18,19,20,19,19,18,19,19,18,19,19,19,19,19,19,
- 20,19,19,19,21,19,18,20,19,19,19,20,19,20,20,21,
- 21,19,20,12,13,14,14,14,14,15,15,15,15,15,16,16,
- 16,16,16,16,17,16,16,17,17,16,17,17,17,16,17,17,
- 17,17,18,18,18,17,18,18,18,17,18,18,20,18,17,19,
- 19,19,19,19,18,18,19,18,18,18,20,19,18,19,19,19,
- 19,18,19,19,18,19,19,18,21,19,20,19,19,21,19,20,
- 19,20,21,20,12,13,13,14,14,15,14,15,15,15,16,16,
- 15,16,16,16,16,16,16,17,16,16,16,17,16,17,17,18,
- 17,17,17,18,17,18,18,17,18,18,18,19,18,18,18,19,
- 19,18,19,18,19,17,19,18,19,19,19,18,21,19,21,18,
- 18,19,19,19,19,21,20,19,19,19,19,19,19,19,20,20,
- 19,20,20,21,19,13,14,14,14,14,15,15,15,16,15,15,
- 16,16,16,16,16,16,16,17,17,17,17,17,17,17,17,17,
- 17,17,18,17,18,18,18,18,18,18,18,18,18,19,18,18,
- 18,19,17,18,20,18,18,19,19,19,20,20,19,19,19,19,
- 19,19,19,21,19,20,21,19,19,19,21,19,19,19,19,20,
- 19,19,19,21,20,19,13,14,14,14,14,15,15,15,15,15,
- 16,16,16,16,17,16,16,17,16,17,17,17,17,18,17,18,
- 17,17,17,18,17,18,17,18,17,18,18,18,18,19,19,18,
- 18,19,19,20,19,20,19,19,18,18,19,19,19,19,19,18,
- 19,20,19,19,19,19,20,19,21,19,20,19,20,19,20,20,
- 21,21,21,20,19,20,20,13,14,14,15,15,15,15,15,15,
- 16,16,16,16,17,17,16,17,17,17,17,18,17,17,18,17,
- 17,18,18,18,18,18,18,19,18,17,18,18,18,18,19,19,
- 19,19,19,19,19,18,19,19,19,18,20,19,20,19,19,20,
- 20,19,18,20,20,21,19,19,19,20,19,20,19,20,21,19,
- 20,21,20,20,21,19,19,21,13,14,14,14,14,15,15,16,
- 16,16,16,16,16,16,16,17,17,18,17,17,18,17,17,18,
- 18,18,18,19,18,18,18,18,18,18,18,18,18,18,18,18,
- 19,19,18,19,19,18,19,19,19,21,18,21,18,20,19,19,
- 19,21,20,20,18,20,19,20,21,21,19,19,20,20,20,20,
- 21,19,19,21,21,19,21,21,21,13,14,14,15,15,15,16,
- 15,16,16,16,16,17,17,17,18,17,17,17,17,18,18,17,
- 18,17,17,17,19,18,18,18,18,18,18,19,18,20,19,19,
- 19,19,18,19,19,21,20,18,18,19,18,18,21,18,19,19,
- 20,19,19,19,19,19,21,21,21,21,20,19,20,19,21,21,
- 19,21,21,20,19,20,19,20,21,20,13,14,14,15,15,15,
- 16,16,16,16,16,16,17,17,16,17,16,17,17,17,18,18,
- 17,18,17,18,17,18,18,18,18,19,18,18,18,17,18,19,
- 19,18,18,21,18,18,18,19,21,19,19,19,19,19,20,18,
- 19,19,20,19,19,19,19,19,20,21,20,20,20,19,19,19,
- 21,19,21,21,19,21,19,20,21,20,20,13,15,14,15,15,
- 15,16,16,16,17,17,17,17,18,17,17,18,17,17,17,17,
- 17,17,19,18,18,18,18,18,18,18,18,18,18,19,18,19,
- 19,20,20,19,19,20,20,19,20,19,19,19,20,19,19,20,
- 19,20,20,21,20,20,19,19,19,20,20,21,19,21,21,21,
- 19,20,19,19,19,21,20,19,21,20,20,21,13,14,14,15,
- 15,16,16,16,16,16,16,17,17,17,17,17,18,17,17,18,
- 18,18,18,18,18,19,18,18,18,20,19,18,18,19,18,18,
- 19,19,19,19,18,18,21,18,19,19,19,21,19,19,19,21,
- 20,20,21,19,21,21,21,19,20,21,19,19,20,20,20,20,
- 21,20,20,20,20,20,21,20,21,20,21,19,21,14,15,15,
- 15,16,16,16,17,16,17,17,17,18,18,17,17,17,17,18,
- 17,18,18,18,19,18,18,18,18,18,18,18,20,18,19,19,
- 19,19,19,19,19,19,19,19,20,20,20,21,20,19,19,20,
- 21,19,19,19,21,19,20,20,20,19,20,20,20,20,21,19,
- 20,20,21,20,19,21,21,21,21,21,20,19,21,20,14,15,
- 15,15,15,16,16,16,17,17,16,17,17,18,17,17,17,18,
- 18,19,18,18,18,18,18,19,19,18,19,18,19,18,19,19,
- 19,19,19,20,19,19,19,20,19,19,19,19,18,19,20,19,
- 19,19,20,20,20,21,19,19,19,20,20,21,21,20,19,20,
- 20,20,20,19,21,20,20,19,21,19,21,21,20,21,20,14,
- 15,15,16,16,17,16,17,16,17,17,17,17,17,18,18,19,
- 17,18,17,18,19,18,18,19,19,18,19,18,18,19,20,18,
- 21,19,19,18,19,20,18,19,20,20,19,19,19,19,20,20,
- 19,20,21,20,21,19,20,19,20,20,20,21,21,19,19,21,
- 21,20,21,20,21,21,20,20,21,19,21,21,21,19,19,20,
- 14,15,15,16,15,16,16,17,17,17,17,17,18,18,18,18,
- 18,18,17,17,19,19,19,18,19,19,19,19,19,19,19,19,
- 18,19,19,18,19,19,19,19,20,20,20,19,21,20,19,20,
- 19,20,19,19,20,20,21,18,20,19,20,21,19,20,20,21,
- 21,21,19,19,20,20,19,19,20,21,20,21,21,21,21,21,
- 21,14,15,15,16,16,16,17,17,18,17,17,18,17,18,17,
- 18,18,18,17,18,18,18,19,20,18,19,19,19,18,18,19,
- 20,19,19,19,20,19,21,21,19,20,20,19,19,18,21,20,
- 21,19,20,20,19,19,20,21,20,20,20,20,21,20,20,19,
- 18,21,19,20,21,20,20,20,20,21,20,21,20,21,19,21,
- 21,20,14,15,15,16,16,16,18,17,17,17,17,17,18,18,
- 18,18,18,18,18,18,19,18,19,18,18,19,19,18,19,19,
- 18,20,19,19,18,19,20,19,20,19,19,19,19,20,19,19,
- 20,21,20,21,19,20,19,19,20,20,20,20,19,20,20,20,
- 21,19,20,21,21,21,21,21,21,20,20,21,21,21,21,20,
- 21,20,20,14,16,16,16,16,17,17,17,17,17,17,18,18,
- 18,18,18,19,18,18,18,18,18,18,19,18,19,18,19,19,
- 19,19,19,20,19,19,21,20,19,19,20,20,20,19,19,21,
- 20,19,21,21,19,21,20,19,20,20,21,20,21,21,20,21,
- 20,21,21,21,20,21,21,21,20,21,21,20,20,21,21,21,
- 20,21,20,21,15,16,15,17,17,18,17,17,18,17,18,19,
- 18,18,17,18,20,18,18,18,18,18,19,20,19,18,19,21,
- 20,20,19,19,20,21,19,20,19,19,18,21,19,19,20,20,
- 21,19,19,20,19,20,20,21,20,20,20,20,21,21,20,21,
- 21,20,21,20,20,21,19,21,19,19,21,21,21,19,21,20,
- 21,21,21,21,20,15,16,16,17,17,17,17,18,17,18,18,
- 18,18,18,18,18,19,19,19,19,21,18,19,19,19,19,19,
- 19,19,20,19,20,19,21,21,19,19,20,19,21,19,21,19,
- 20,19,19,21,21,19,20,20,21,21,20,21,20,19,20,20,
- 21,21,21,21,20,19,21,20,20,20,21,19,21,21,21,21,
- 21,21,21,20,20,21,15,16,16,17,17,17,17,17,18,18,
- 19,18,18,18,21,18,19,19,19,20,18,20,20,19,19,18,
- 18,18,21,21,19,20,19,20,19,19,19,21,20,20,21,20,
- 19,19,20,21,19,19,21,20,20,21,19,20,21,20,21,21,
- 20,20,20,21,21,19,21,20,20,21,20,21,19,21,21,21,
- 20,21,20,21,20,21,20,15,16,17,17,18,17,18,18,18,
- 18,18,17,18,19,19,19,18,19,18,19,19,19,20,21,19,
- 19,19,20,19,20,19,20,20,20,19,20,19,19,21,21,19,
- 20,21,21,20,21,19,21,20,21,21,20,21,21,19,20,21,
- 21,21,20,19,21,21,21,21,21,21,21,21,20,21,21,21,
- 21,21,21,19,20,21,21,20,15,16,17,17,18,18,18,18,
- 18,18,18,18,19,18,19,19,19,19,19,19,20,19,19,20,
- 19,20,19,21,19,20,19,19,19,20,21,19,21,21,19,20,
- 19,20,21,20,20,21,21,21,20,20,20,21,21,20,19,20,
- 21,20,19,20,21,21,21,21,21,21,21,21,21,21,21,20,
- 21,21,19,21,20,20,21,21,21,15,16,17,17,18,18,18,
- 20,18,19,18,20,19,18,19,19,18,19,19,19,19,20,19,
- 19,19,20,19,19,20,19,21,19,19,21,20,20,19,20,20,
- 21,19,19,20,21,21,21,21,20,19,19,21,20,21,20,20,
- 21,21,21,21,21,21,21,21,21,21,21,21,21,21,20,21,
- 21,21,21,21,21,20,21,21,19,21,16,17,17,18,18,18,
- 18,18,20,18,19,18,19,18,19,18,19,20,21,21,21,19,
- 21,19,20,21,20,19,20,21,19,19,21,20,21,19,21,20,
- 21,21,20,21,19,19,19,19,21,20,20,20,21,19,21,19,
- 21,20,19,21,21,21,21,21,21,21,21,21,20,21,21,21,
- 21,20,21,21,21,21,20,21,21,21,21,16,17,16,18,18,
- 19,18,19,19,19,19,19,18,20,18,19,19,19,21,19,19,
- 19,20,21,21,20,20,19,19,19,19,20,21,19,20,21,20,
- 21,21,19,21,20,20,21,21,19,21,21,21,21,19,21,21,
- 21,21,20,21,20,21,21,20,21,20,20,21,21,21,21,21,
- 20,20,21,21,21,21,21,21,21,21,21,21,16,17,18,18,
- 18,18,18,17,19,19,20,20,19,19,19,20,19,19,18,19,
- 20,20,19,20,21,21,19,20,20,21,19,21,21,21,19,21,
- 20,21,19,20,21,21,19,20,20,19,21,21,21,20,21,21,
- 21,20,20,20,21,21,21,21,21,20,21,21,20,21,21,20,
- 21,20,21,21,21,21,20,21,21,21,21,21,21,16,17,18,
- 19,19,19,19,18,19,19,20,19,19,21,19,19,19,19,20,
- 21,19,20,21,21,19,21,21,19,19,21,21,21,21,21,21,
- 21,21,20,19,21,21,21,20,21,20,19,21,21,21,21,21,
- 20,21,21,21,21,21,21,21,21,21,21,20,20,21,21,21,
- 21,21,21,21,21,21,21,21,20,21,20,21,21,21,16,17,
- 17,18,18,18,19,19,21,19,19,19,19,21,21,20,20,19,
- 19,21,20,21,20,20,21,21,21,20,20,21,21,20,21,19,
- 19,19,20,21,20,21,21,21,20,21,21,21,21,21,21,21,
- 21,21,21,20,21,21,21,21,21,19,21,21,21,21,21,21,
- 20,19,21,21,21,21,21,20,21,21,21,21,21,21,21,16,
- 17,18,18,18,19,18,18,19,19,19,19,20,21,20,19,21,
- 21,21,21,20,21,20,20,21,21,21,21,21,20,20,20,21,
- 21,21,21,21,21,21,20,20,20,21,21,21,21,20,20,20,
- 21,20,21,21,20,20,21,21,20,21,21,21,20,21,21,21,
- 21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,
- 17,18,18,19,18,19,19,18,18,20,19,19,21,19,20,20,
- 21,21,19,20,20,20,19,20,20,21,20,21,21,20,21,21,
- 20,21,20,21,20,21,20,19,21,19,19,20,21,21,21,21,
- 21,21,21,21,20,21,21,21,20,21,20,21,20,21,21,20,
- 21,21,21,21,20,21,21,21,21,21,21,21,21,20,21,21,
- 20,
-};
-
-static float _vq_quantthresh_res0_256_1024_6[] = {
- -39.5, -38.5, -37.5, -36.5, -35.5, -34.5, -33.5, -32.5,
- -31.5, -30.5, -29.5, -28.5, -27.5, -26.5, -25.5, -24.5,
- -23.5, -22.5, -21.5, -20.5, -19.5, -18.5, -17.5, -16.5,
- -15.5, -14.5, -13.5, -12.5, -11.5, -10.5, -9.5, -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, 9.5, 10.5, 11.5, 12.5, 13.5, 14.5, 15.5,
- 16.5, 17.5, 18.5, 19.5, 20.5, 21.5, 22.5, 23.5,
- 24.5, 25.5, 26.5, 27.5, 28.5, 29.5, 30.5, 31.5,
- 32.5, 33.5, 34.5, 35.5, 36.5, 37.5, 38.5, 39.5,
-};
-
-static long _vq_quantmap_res0_256_1024_6[] = {
- 79, 77, 75, 73, 71, 69, 67, 65,
- 63, 61, 59, 57, 55, 53, 51, 49,
- 47, 45, 43, 41, 39, 37, 35, 33,
- 31, 29, 27, 25, 23, 21, 19, 17,
- 15, 13, 11, 9, 7, 5, 3, 1,
- 0, 2, 4, 6, 8, 10, 12, 14,
- 16, 18, 20, 22, 24, 26, 28, 30,
- 32, 34, 36, 38, 40, 42, 44, 46,
- 48, 50, 52, 54, 56, 58, 60, 62,
- 64, 66, 68, 70, 72, 74, 76, 78,
- 80,
-};
-
-static encode_aux_threshmatch _vq_auxt_res0_256_1024_6 = {
- _vq_quantthresh_res0_256_1024_6,
- _vq_quantmap_res0_256_1024_6,
- 81,
- 81
-};
-
-static static_codebook _vq_book_res0_256_1024_6 = {
- 2, 6561,
- _vq_lengthlist_res0_256_1024_6,
- 1, -525074432, 1611661312, 7, 0,
- _vq_quantlist_res0_256_1024_6,
- NULL,
- &_vq_auxt_res0_256_1024_6,
- NULL,
- 0
-};
-
-
-#endif
diff --git a/lib/books/res0_256_1024_7.vqh b/lib/books/res0_256_1024_7.vqh
deleted file mode 100644
index 1440772b..00000000
--- a/lib/books/res0_256_1024_7.vqh
+++ /dev/null
@@ -1,816 +0,0 @@
-/********************************************************************
- * *
- * 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_res0_256_1024_7_VQH_
-#define _V_res0_256_1024_7_VQH_
-#include "codebook.h"
-
-static long _vq_quantlist_res0_256_1024_7[] = {
- 290,
- 289,
- 291,
- 288,
- 292,
- 287,
- 293,
- 286,
- 294,
- 285,
- 295,
- 284,
- 296,
- 283,
- 297,
- 282,
- 298,
- 281,
- 299,
- 280,
- 300,
- 279,
- 301,
- 278,
- 302,
- 277,
- 303,
- 276,
- 304,
- 275,
- 305,
- 274,
- 306,
- 273,
- 307,
- 272,
- 308,
- 271,
- 309,
- 270,
- 310,
- 269,
- 311,
- 268,
- 312,
- 267,
- 313,
- 266,
- 314,
- 265,
- 315,
- 264,
- 316,
- 263,
- 317,
- 262,
- 318,
- 261,
- 319,
- 260,
- 320,
- 259,
- 321,
- 258,
- 322,
- 257,
- 323,
- 256,
- 324,
- 255,
- 325,
- 254,
- 326,
- 253,
- 327,
- 252,
- 328,
- 251,
- 329,
- 250,
- 330,
- 249,
- 331,
- 248,
- 332,
- 247,
- 333,
- 246,
- 334,
- 245,
- 335,
- 244,
- 336,
- 243,
- 337,
- 242,
- 338,
- 241,
- 339,
- 240,
- 340,
- 239,
- 341,
- 238,
- 342,
- 237,
- 343,
- 236,
- 344,
- 235,
- 345,
- 234,
- 346,
- 233,
- 347,
- 232,
- 348,
- 231,
- 349,
- 230,
- 350,
- 229,
- 351,
- 228,
- 352,
- 227,
- 353,
- 226,
- 354,
- 225,
- 355,
- 224,
- 356,
- 223,
- 357,
- 222,
- 358,
- 221,
- 359,
- 220,
- 360,
- 219,
- 361,
- 218,
- 362,
- 217,
- 363,
- 216,
- 364,
- 215,
- 365,
- 214,
- 366,
- 213,
- 367,
- 212,
- 368,
- 211,
- 369,
- 210,
- 370,
- 209,
- 371,
- 208,
- 372,
- 207,
- 373,
- 206,
- 374,
- 205,
- 375,
- 204,
- 376,
- 203,
- 377,
- 202,
- 378,
- 201,
- 379,
- 200,
- 380,
- 199,
- 381,
- 198,
- 382,
- 197,
- 383,
- 196,
- 384,
- 195,
- 385,
- 194,
- 386,
- 193,
- 387,
- 192,
- 388,
- 191,
- 389,
- 190,
- 390,
- 189,
- 391,
- 188,
- 392,
- 187,
- 393,
- 186,
- 394,
- 185,
- 395,
- 184,
- 396,
- 183,
- 397,
- 182,
- 398,
- 181,
- 399,
- 180,
- 400,
- 179,
- 401,
- 178,
- 402,
- 177,
- 403,
- 176,
- 404,
- 175,
- 405,
- 174,
- 406,
- 173,
- 407,
- 172,
- 408,
- 171,
- 409,
- 170,
- 410,
- 169,
- 411,
- 168,
- 412,
- 167,
- 413,
- 166,
- 414,
- 165,
- 415,
- 164,
- 416,
- 163,
- 417,
- 162,
- 418,
- 161,
- 419,
- 160,
- 420,
- 159,
- 421,
- 158,
- 422,
- 157,
- 423,
- 156,
- 424,
- 155,
- 425,
- 154,
- 426,
- 153,
- 427,
- 152,
- 428,
- 151,
- 429,
- 150,
- 430,
- 149,
- 431,
- 148,
- 432,
- 147,
- 433,
- 146,
- 434,
- 145,
- 435,
- 144,
- 436,
- 143,
- 437,
- 142,
- 438,
- 141,
- 439,
- 140,
- 440,
- 139,
- 441,
- 138,
- 442,
- 137,
- 443,
- 136,
- 444,
- 135,
- 445,
- 134,
- 446,
- 133,
- 447,
- 132,
- 448,
- 131,
- 449,
- 130,
- 450,
- 129,
- 451,
- 128,
- 452,
- 127,
- 453,
- 126,
- 454,
- 125,
- 455,
- 124,
- 456,
- 123,
- 457,
- 122,
- 458,
- 121,
- 459,
- 120,
- 460,
- 119,
- 461,
- 118,
- 462,
- 117,
- 463,
- 116,
- 464,
- 115,
- 465,
- 114,
- 466,
- 113,
- 467,
- 112,
- 468,
- 111,
- 469,
- 110,
- 470,
- 109,
- 471,
- 108,
- 472,
- 107,
- 473,
- 106,
- 474,
- 105,
- 475,
- 104,
- 476,
- 103,
- 477,
- 102,
- 478,
- 101,
- 479,
- 100,
- 480,
- 99,
- 481,
- 98,
- 482,
- 97,
- 483,
- 96,
- 484,
- 95,
- 485,
- 94,
- 486,
- 93,
- 487,
- 92,
- 488,
- 91,
- 489,
- 90,
- 490,
- 89,
- 491,
- 88,
- 492,
- 87,
- 493,
- 86,
- 494,
- 85,
- 495,
- 84,
- 496,
- 83,
- 497,
- 82,
- 498,
- 81,
- 499,
- 80,
- 500,
- 79,
- 501,
- 78,
- 502,
- 77,
- 503,
- 76,
- 504,
- 75,
- 505,
- 74,
- 506,
- 73,
- 507,
- 72,
- 508,
- 71,
- 509,
- 70,
- 510,
- 69,
- 511,
- 68,
- 512,
- 67,
- 513,
- 66,
- 514,
- 65,
- 515,
- 64,
- 516,
- 63,
- 517,
- 62,
- 518,
- 61,
- 519,
- 60,
- 520,
- 59,
- 521,
- 58,
- 522,
- 57,
- 523,
- 56,
- 524,
- 55,
- 525,
- 54,
- 526,
- 53,
- 527,
- 52,
- 528,
- 51,
- 529,
- 50,
- 530,
- 49,
- 531,
- 48,
- 532,
- 47,
- 533,
- 46,
- 534,
- 45,
- 535,
- 44,
- 536,
- 43,
- 537,
- 42,
- 538,
- 41,
- 539,
- 40,
- 540,
- 39,
- 541,
- 38,
- 542,
- 37,
- 543,
- 36,
- 544,
- 35,
- 545,
- 34,
- 546,
- 33,
- 547,
- 32,
- 548,
- 31,
- 549,
- 30,
- 550,
- 29,
- 551,
- 28,
- 552,
- 27,
- 553,
- 26,
- 554,
- 25,
- 555,
- 24,
- 556,
- 23,
- 557,
- 22,
- 558,
- 21,
- 559,
- 20,
- 560,
- 19,
- 561,
- 18,
- 562,
- 17,
- 563,
- 16,
- 564,
- 15,
- 565,
- 14,
- 566,
- 13,
- 567,
- 12,
- 568,
- 11,
- 569,
- 10,
- 570,
- 9,
- 571,
- 8,
- 572,
- 7,
- 573,
- 6,
- 574,
- 5,
- 575,
- 4,
- 576,
- 3,
- 577,
- 2,
- 578,
- 1,
- 579,
- 0,
- 580,
-};
-
-static long _vq_lengthlist_res0_256_1024_7[] = {
- 3, 4, 4, 4, 4, 5, 5, 5, 5, 5, 5, 6, 6, 6, 6, 6,
- 6, 6, 6, 6, 6, 7, 6, 7, 7, 7, 7, 7, 7, 7, 7, 7,
- 7, 7, 7, 7, 7, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8,
- 8, 8, 8, 9, 8, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9,
- 9, 9, 9, 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,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,12,12,
- 12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,
- 12,12,12,12,12,12,13,13,13,12,13,13,13,13,13,13,
- 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
- 14,13,13,14,14,14,14,14,13,14,14,14,14,14,14,14,
- 14,14,14,14,14,14,14,14,14,14,14,14,14,15,14,15,
- 14,15,14,15,15,14,15,15,15,15,15,15,15,14,15,15,
- 15,15,15,15,15,15,15,15,15,15,15,15,16,15,15,15,
- 15,15,16,15,15,15,16,16,16,16,16,16,16,16,16,15,
- 16,15,16,16,16,16,16,16,16,16,16,16,16,16,16,17,
- 16,16,16,16,16,16,17,17,17,16,16,16,17,17,17,17,
- 16,16,17,17,16,17,17,17,17,17,17,17,19,16,17,16,
- 17,17,17,17,17,17,18,18,17,17,18,17,18,18,17,18,
- 17,18,18,17,18,18,18,17,18,19,18,17,18,18,19,18,
- 19,18,19,19,18,18,18,19,17,19,18,19,19,19,18,18,
- 20,18,19,20,18,18,18,18,20,18,18,18,20,21,21,19,
- 19,20,19,20,20,20,19,19,19,19,21,21,18,21,18,19,
- 19,20,19,19,20,19,21,20,21,20,19,18,21,21,19,21,
- 19,19,20,19,21,21,20,21,21,20,19,20,19,20,20,20,
- 20,20,19,19,19,21,20,21,21,20,20,21,20,19,20,21,
- 21,20,19,20,21,21,21,20,21,21,21,21,21,20,21,21,
- 20,20,21,21,21,20,20,21,21,21,21,21,20,21,21,21,
- 21,21,21,21,21,21,21,21,21,21,21,19,21,21,21,21,
- 21,21,21,20,21,21,21,21,21,21,20,21,21,21,21,21,
- 21,21,21,21,21,20,21,21,21,21,21,21,21,20,21,20,
- 21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,
- 21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,
- 21,21,20,21,21,21,21,21,21,21,21,21,21,21,21,21,
- 21,20,21,21,21,21,21,21,21,21,21,21,21,21,21,21,
- 21,21,21,20,20,
-};
-
-static float _vq_quantthresh_res0_256_1024_7[] = {
- -289.5, -288.5, -287.5, -286.5, -285.5, -284.5, -283.5, -282.5,
- -281.5, -280.5, -279.5, -278.5, -277.5, -276.5, -275.5, -274.5,
- -273.5, -272.5, -271.5, -270.5, -269.5, -268.5, -267.5, -266.5,
- -265.5, -264.5, -263.5, -262.5, -261.5, -260.5, -259.5, -258.5,
- -257.5, -256.5, -255.5, -254.5, -253.5, -252.5, -251.5, -250.5,
- -249.5, -248.5, -247.5, -246.5, -245.5, -244.5, -243.5, -242.5,
- -241.5, -240.5, -239.5, -238.5, -237.5, -236.5, -235.5, -234.5,
- -233.5, -232.5, -231.5, -230.5, -229.5, -228.5, -227.5, -226.5,
- -225.5, -224.5, -223.5, -222.5, -221.5, -220.5, -219.5, -218.5,
- -217.5, -216.5, -215.5, -214.5, -213.5, -212.5, -211.5, -210.5,
- -209.5, -208.5, -207.5, -206.5, -205.5, -204.5, -203.5, -202.5,
- -201.5, -200.5, -199.5, -198.5, -197.5, -196.5, -195.5, -194.5,
- -193.5, -192.5, -191.5, -190.5, -189.5, -188.5, -187.5, -186.5,
- -185.5, -184.5, -183.5, -182.5, -181.5, -180.5, -179.5, -178.5,
- -177.5, -176.5, -175.5, -174.5, -173.5, -172.5, -171.5, -170.5,
- -169.5, -168.5, -167.5, -166.5, -165.5, -164.5, -163.5, -162.5,
- -161.5, -160.5, -159.5, -158.5, -157.5, -156.5, -155.5, -154.5,
- -153.5, -152.5, -151.5, -150.5, -149.5, -148.5, -147.5, -146.5,
- -145.5, -144.5, -143.5, -142.5, -141.5, -140.5, -139.5, -138.5,
- -137.5, -136.5, -135.5, -134.5, -133.5, -132.5, -131.5, -130.5,
- -129.5, -128.5, -127.5, -126.5, -125.5, -124.5, -123.5, -122.5,
- -121.5, -120.5, -119.5, -118.5, -117.5, -116.5, -115.5, -114.5,
- -113.5, -112.5, -111.5, -110.5, -109.5, -108.5, -107.5, -106.5,
- -105.5, -104.5, -103.5, -102.5, -101.5, -100.5, -99.5, -98.5,
- -97.5, -96.5, -95.5, -94.5, -93.5, -92.5, -91.5, -90.5,
- -89.5, -88.5, -87.5, -86.5, -85.5, -84.5, -83.5, -82.5,
- -81.5, -80.5, -79.5, -78.5, -77.5, -76.5, -75.5, -74.5,
- -73.5, -72.5, -71.5, -70.5, -69.5, -68.5, -67.5, -66.5,
- -65.5, -64.5, -63.5, -62.5, -61.5, -60.5, -59.5, -58.5,
- -57.5, -56.5, -55.5, -54.5, -53.5, -52.5, -51.5, -50.5,
- -49.5, -48.5, -47.5, -46.5, -45.5, -44.5, -43.5, -42.5,
- -41.5, -40.5, -39.5, -38.5, -37.5, -36.5, -35.5, -34.5,
- -33.5, -32.5, -31.5, -30.5, -29.5, -28.5, -27.5, -26.5,
- -25.5, -24.5, -23.5, -22.5, -21.5, -20.5, -19.5, -18.5,
- -17.5, -16.5, -15.5, -14.5, -13.5, -12.5, -11.5, -10.5,
- -9.5, -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, 9.5, 10.5, 11.5, 12.5, 13.5,
- 14.5, 15.5, 16.5, 17.5, 18.5, 19.5, 20.5, 21.5,
- 22.5, 23.5, 24.5, 25.5, 26.5, 27.5, 28.5, 29.5,
- 30.5, 31.5, 32.5, 33.5, 34.5, 35.5, 36.5, 37.5,
- 38.5, 39.5, 40.5, 41.5, 42.5, 43.5, 44.5, 45.5,
- 46.5, 47.5, 48.5, 49.5, 50.5, 51.5, 52.5, 53.5,
- 54.5, 55.5, 56.5, 57.5, 58.5, 59.5, 60.5, 61.5,
- 62.5, 63.5, 64.5, 65.5, 66.5, 67.5, 68.5, 69.5,
- 70.5, 71.5, 72.5, 73.5, 74.5, 75.5, 76.5, 77.5,
- 78.5, 79.5, 80.5, 81.5, 82.5, 83.5, 84.5, 85.5,
- 86.5, 87.5, 88.5, 89.5, 90.5, 91.5, 92.5, 93.5,
- 94.5, 95.5, 96.5, 97.5, 98.5, 99.5, 100.5, 101.5,
- 102.5, 103.5, 104.5, 105.5, 106.5, 107.5, 108.5, 109.5,
- 110.5, 111.5, 112.5, 113.5, 114.5, 115.5, 116.5, 117.5,
- 118.5, 119.5, 120.5, 121.5, 122.5, 123.5, 124.5, 125.5,
- 126.5, 127.5, 128.5, 129.5, 130.5, 131.5, 132.5, 133.5,
- 134.5, 135.5, 136.5, 137.5, 138.5, 139.5, 140.5, 141.5,
- 142.5, 143.5, 144.5, 145.5, 146.5, 147.5, 148.5, 149.5,
- 150.5, 151.5, 152.5, 153.5, 154.5, 155.5, 156.5, 157.5,
- 158.5, 159.5, 160.5, 161.5, 162.5, 163.5, 164.5, 165.5,
- 166.5, 167.5, 168.5, 169.5, 170.5, 171.5, 172.5, 173.5,
- 174.5, 175.5, 176.5, 177.5, 178.5, 179.5, 180.5, 181.5,
- 182.5, 183.5, 184.5, 185.5, 186.5, 187.5, 188.5, 189.5,
- 190.5, 191.5, 192.5, 193.5, 194.5, 195.5, 196.5, 197.5,
- 198.5, 199.5, 200.5, 201.5, 202.5, 203.5, 204.5, 205.5,
- 206.5, 207.5, 208.5, 209.5, 210.5, 211.5, 212.5, 213.5,
- 214.5, 215.5, 216.5, 217.5, 218.5, 219.5, 220.5, 221.5,
- 222.5, 223.5, 224.5, 225.5, 226.5, 227.5, 228.5, 229.5,
- 230.5, 231.5, 232.5, 233.5, 234.5, 235.5, 236.5, 237.5,
- 238.5, 239.5, 240.5, 241.5, 242.5, 243.5, 244.5, 245.5,
- 246.5, 247.5, 248.5, 249.5, 250.5, 251.5, 252.5, 253.5,
- 254.5, 255.5, 256.5, 257.5, 258.5, 259.5, 260.5, 261.5,
- 262.5, 263.5, 264.5, 265.5, 266.5, 267.5, 268.5, 269.5,
- 270.5, 271.5, 272.5, 273.5, 274.5, 275.5, 276.5, 277.5,
- 278.5, 279.5, 280.5, 281.5, 282.5, 283.5, 284.5, 285.5,
- 286.5, 287.5, 288.5, 289.5,
-};
-
-static long _vq_quantmap_res0_256_1024_7[] = {
- 579, 577, 575, 573, 571, 569, 567, 565,
- 563, 561, 559, 557, 555, 553, 551, 549,
- 547, 545, 543, 541, 539, 537, 535, 533,
- 531, 529, 527, 525, 523, 521, 519, 517,
- 515, 513, 511, 509, 507, 505, 503, 501,
- 499, 497, 495, 493, 491, 489, 487, 485,
- 483, 481, 479, 477, 475, 473, 471, 469,
- 467, 465, 463, 461, 459, 457, 455, 453,
- 451, 449, 447, 445, 443, 441, 439, 437,
- 435, 433, 431, 429, 427, 425, 423, 421,
- 419, 417, 415, 413, 411, 409, 407, 405,
- 403, 401, 399, 397, 395, 393, 391, 389,
- 387, 385, 383, 381, 379, 377, 375, 373,
- 371, 369, 367, 365, 363, 361, 359, 357,
- 355, 353, 351, 349, 347, 345, 343, 341,
- 339, 337, 335, 333, 331, 329, 327, 325,
- 323, 321, 319, 317, 315, 313, 311, 309,
- 307, 305, 303, 301, 299, 297, 295, 293,
- 291, 289, 287, 285, 283, 281, 279, 277,
- 275, 273, 271, 269, 267, 265, 263, 261,
- 259, 257, 255, 253, 251, 249, 247, 245,
- 243, 241, 239, 237, 235, 233, 231, 229,
- 227, 225, 223, 221, 219, 217, 215, 213,
- 211, 209, 207, 205, 203, 201, 199, 197,
- 195, 193, 191, 189, 187, 185, 183, 181,
- 179, 177, 175, 173, 171, 169, 167, 165,
- 163, 161, 159, 157, 155, 153, 151, 149,
- 147, 145, 143, 141, 139, 137, 135, 133,
- 131, 129, 127, 125, 123, 121, 119, 117,
- 115, 113, 111, 109, 107, 105, 103, 101,
- 99, 97, 95, 93, 91, 89, 87, 85,
- 83, 81, 79, 77, 75, 73, 71, 69,
- 67, 65, 63, 61, 59, 57, 55, 53,
- 51, 49, 47, 45, 43, 41, 39, 37,
- 35, 33, 31, 29, 27, 25, 23, 21,
- 19, 17, 15, 13, 11, 9, 7, 5,
- 3, 1, 0, 2, 4, 6, 8, 10,
- 12, 14, 16, 18, 20, 22, 24, 26,
- 28, 30, 32, 34, 36, 38, 40, 42,
- 44, 46, 48, 50, 52, 54, 56, 58,
- 60, 62, 64, 66, 68, 70, 72, 74,
- 76, 78, 80, 82, 84, 86, 88, 90,
- 92, 94, 96, 98, 100, 102, 104, 106,
- 108, 110, 112, 114, 116, 118, 120, 122,
- 124, 126, 128, 130, 132, 134, 136, 138,
- 140, 142, 144, 146, 148, 150, 152, 154,
- 156, 158, 160, 162, 164, 166, 168, 170,
- 172, 174, 176, 178, 180, 182, 184, 186,
- 188, 190, 192, 194, 196, 198, 200, 202,
- 204, 206, 208, 210, 212, 214, 216, 218,
- 220, 222, 224, 226, 228, 230, 232, 234,
- 236, 238, 240, 242, 244, 246, 248, 250,
- 252, 254, 256, 258, 260, 262, 264, 266,
- 268, 270, 272, 274, 276, 278, 280, 282,
- 284, 286, 288, 290, 292, 294, 296, 298,
- 300, 302, 304, 306, 308, 310, 312, 314,
- 316, 318, 320, 322, 324, 326, 328, 330,
- 332, 334, 336, 338, 340, 342, 344, 346,
- 348, 350, 352, 354, 356, 358, 360, 362,
- 364, 366, 368, 370, 372, 374, 376, 378,
- 380, 382, 384, 386, 388, 390, 392, 394,
- 396, 398, 400, 402, 404, 406, 408, 410,
- 412, 414, 416, 418, 420, 422, 424, 426,
- 428, 430, 432, 434, 436, 438, 440, 442,
- 444, 446, 448, 450, 452, 454, 456, 458,
- 460, 462, 464, 466, 468, 470, 472, 474,
- 476, 478, 480, 482, 484, 486, 488, 490,
- 492, 494, 496, 498, 500, 502, 504, 506,
- 508, 510, 512, 514, 516, 518, 520, 522,
- 524, 526, 528, 530, 532, 534, 536, 538,
- 540, 542, 544, 546, 548, 550, 552, 554,
- 556, 558, 560, 562, 564, 566, 568, 570,
- 572, 574, 576, 578, 580,
-};
-
-static encode_aux_threshmatch _vq_auxt_res0_256_1024_7 = {
- _vq_quantthresh_res0_256_1024_7,
- _vq_quantmap_res0_256_1024_7,
- 581,
- 581
-};
-
-static static_codebook _vq_book_res0_256_1024_7 = {
- 1, 581,
- _vq_lengthlist_res0_256_1024_7,
- 1, -518905856, 1611661312, 10, 0,
- _vq_quantlist_res0_256_1024_7,
- NULL,
- &_vq_auxt_res0_256_1024_7,
- NULL,
- 0
-};
-
-
-#endif
diff --git a/lib/books/res0_256_1024aux.vqh b/lib/books/res0_256_1024aux.vqh
deleted file mode 100644
index f458bd9c..00000000
--- a/lib/books/res0_256_1024aux.vqh
+++ /dev/null
@@ -1,40 +0,0 @@
-/********************************************************************
- * *
- * 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 huff/huffbuld
-
- ********************************************************************/
-
-#ifndef _V_res0_256_1024aux_VQH_
-#define _V_res0_256_1024aux_VQH_
-#include "codebook.h"
-
-static long _huff_lengthlist_res0_256_1024aux[] = {
- 2, 8,11,11,18,13,15,20, 5, 3, 6, 7,10,10,13,20,
- 10, 5, 4, 5, 7, 9,13,19,10, 6, 4, 4, 6, 7,10,17,
- 17,10, 6, 5, 5, 6,10,17,10, 9, 8, 6, 6, 5, 7,14,
- 11,10,10, 8, 8, 5, 6,12,13,11,10, 9, 8, 6, 7,13,
-};
-
-static static_codebook _huff_book_res0_256_1024aux = {
- 2, 64,
- _huff_lengthlist_res0_256_1024aux,
- 0, 0, 0, 0, 0,
- NULL,
- NULL,
- NULL,
- 0
-};
-
-
-#endif
diff --git a/lib/books/res0_256_128_1.vqh b/lib/books/res0_256_128_1.vqh
deleted file mode 100644
index 0ecb0954..00000000
--- a/lib/books/res0_256_128_1.vqh
+++ /dev/null
@@ -1,63 +0,0 @@
-/********************************************************************
- * *
- * 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_res0_256_128_1_VQH_
-#define _V_res0_256_128_1_VQH_
-#include "codebook.h"
-
-static long _vq_quantlist_res0_256_128_1[] = {
- 1,
- 0,
- 2,
-};
-
-static long _vq_lengthlist_res0_256_128_1[] = {
- 2, 3, 3, 4, 6, 6, 4, 6, 6, 5, 7, 7, 7, 8, 8, 7,
- 8, 8, 5, 7, 7, 7, 8, 8, 7, 8, 8, 6, 7, 8, 8, 9,
- 9, 8, 9, 9, 8, 9, 9, 9, 9,10,10,10,10, 8, 9, 9,
- 9,10, 9, 9,10,10, 6, 7, 7, 8, 8, 9, 8, 9, 9, 8,
- 9, 9,10,10,10, 9, 9,10, 8, 9, 9, 9,10,10, 9,10,
- 9,
-};
-
-static float _vq_quantthresh_res0_256_128_1[] = {
- -0.5, 0.5,
-};
-
-static long _vq_quantmap_res0_256_128_1[] = {
- 1, 0, 2,
-};
-
-static encode_aux_threshmatch _vq_auxt_res0_256_128_1 = {
- _vq_quantthresh_res0_256_128_1,
- _vq_quantmap_res0_256_128_1,
- 3,
- 3
-};
-
-static static_codebook _vq_book_res0_256_128_1 = {
- 4, 81,
- _vq_lengthlist_res0_256_128_1,
- 1, -535822336, 1611661312, 2, 0,
- _vq_quantlist_res0_256_128_1,
- NULL,
- &_vq_auxt_res0_256_128_1,
- NULL,
- 0
-};
-
-
-#endif
diff --git a/lib/books/res0_256_128_2.vqh b/lib/books/res0_256_128_2.vqh
deleted file mode 100644
index 09922690..00000000
--- a/lib/books/res0_256_128_2.vqh
+++ /dev/null
@@ -1,99 +0,0 @@
-/********************************************************************
- * *
- * 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_res0_256_128_2_VQH_
-#define _V_res0_256_128_2_VQH_
-#include "codebook.h"
-
-static long _vq_quantlist_res0_256_128_2[] = {
- 2,
- 1,
- 3,
- 0,
- 4,
-};
-
-static long _vq_lengthlist_res0_256_128_2[] = {
- 5, 6, 6, 7, 7, 6, 7, 7, 8, 8, 6, 7, 7, 8, 8, 8,
- 8, 8,10,10, 8, 8, 8,10,10, 7, 7, 7, 8, 8, 7, 7,
- 8, 8, 9, 7, 8, 8, 9, 9, 9, 9, 9,10,10, 9, 9, 9,
- 10,10, 7, 7, 7, 8, 8, 7, 8, 8, 8, 8, 7, 8, 8, 9,
- 9, 9, 9, 9,10,10, 9, 9, 9,10,10, 8, 9, 9,10,10,
- 9, 9, 9,10,10, 9, 9, 9,11,10,10,11,11,12,12,11,
- 10,11,11,12, 8, 9, 9,10,10, 9, 9, 9,10,10, 9, 9,
- 9,10,10,10,11,10,12,12,10,11,11,12,12, 7, 8, 8,
- 9, 9, 8, 8, 8, 9, 9, 8, 8, 8, 9, 9, 9, 9, 9,11,
- 11, 9, 9, 9,10,11, 8, 8, 8, 9, 9, 8, 8, 8, 9,10,
- 8, 8, 8,10, 9,10, 9,10,11,11, 9,10,10,11,11, 8,
- 8, 8, 9, 9, 8, 8, 8,10, 9, 8, 8, 8, 9,10,10,10,
- 9,11,10,10,10, 9,11,11, 9, 9, 9,11,10, 9, 9,10,
- 11,11,10,10,10,11,11,11,11,11,12,13,11,11,11,13,
- 12, 9, 9,10,10,11, 9,10, 9,11,11,10,10,10,11,11,
- 11,11,10,12,11,11,11,11,12,13, 7, 8, 8, 9, 9, 8,
- 8, 8, 9, 9, 8, 8, 8, 9, 9, 9, 9, 9,10,10, 9, 9,
- 9,11,11, 8, 8, 8, 9, 9, 8, 8, 8,10, 9, 8, 8, 8,
- 9, 9, 9,10,10,11,11,10, 9,10,10,11, 8, 8, 8, 9,
- 9, 8, 8, 9, 9,10, 8, 8, 8, 9, 9, 9,10,10,11,10,
- 9,10, 9,11,11,10,10, 9,11,11,10,10,10,11,11, 9,
- 10,10,11,11,11,11,11,12,13,11,11,11,12,13, 9, 9,
- 10,10,11,10, 9,10,11,11, 9,10, 9,11,11,11,11,11,
- 13,12,11,11,10,12,12, 9, 9, 9,11,11,10,10,10,12,
- 11, 9, 9, 9,11,11,10,11,11,13,13,11,11,11,12,12,
- 10,10, 9,11,11, 9,10,10,11,12,10,10,10,11,11,11,
- 11,11,13,13,11,11,11,13,13, 9, 9,10,11,11,10,10,
- 10,11,11, 9,10,10,11,11,11,11,11,13,13,11,11,11,
- 12,12,11,11,11,12,13,11,11,11,13,13,11,11,11,13,
- 12,12,12,13,12,13,13,13,13,14,14,11,11,11,12,12,
- 11,11,10,12,12,11,12,12,13,13,12,13,11,14,12,13,
- 13,13,13,13, 9, 9, 9,11,11, 9, 9, 9,11,11,10,10,
- 10,11,11,10,11,11,12,12,11,11,11,12,12, 9,10, 9,
- 11,11,10,10,10,11,11, 9,10,10,11,11,11,11,11,13,
- 12,11,11,11,12,13, 9, 9,10,11,11,10,10,10,11,11,
- 10,10, 9,11,11,11,11,12,12,13,12,12,11,13,13,11,
- 11,11,12,12,11,12,11,13,13,11,11,11,13,13,13,12,
- 13,14,15,12,12,12,12,15,11,11,11,12,12,11,11,12,
- 12,13,11,11,11,12,12,12,12,13,14,14,12,13,12,14,
- 13,
-};
-
-static float _vq_quantthresh_res0_256_128_2[] = {
- -1.5, -0.5, 0.5, 1.5,
-};
-
-static long _vq_quantmap_res0_256_128_2[] = {
- 3, 1, 0, 2, 4,
-};
-
-static encode_aux_threshmatch _vq_auxt_res0_256_128_2 = {
- _vq_quantthresh_res0_256_128_2,
- _vq_quantmap_res0_256_128_2,
- 5,
- 5
-};
-
-static static_codebook _vq_book_res0_256_128_2 = {
- 4, 625,
- _vq_lengthlist_res0_256_128_2,
- 1, -533725184, 1611661312, 3, 0,
- _vq_quantlist_res0_256_128_2,
- NULL,
- &_vq_auxt_res0_256_128_2,
- NULL,
- 0
-};
-
-
-#endif
diff --git a/lib/books/res0_256_128_3.vqh b/lib/books/res0_256_128_3.vqh
deleted file mode 100644
index 17230958..00000000
--- a/lib/books/res0_256_128_3.vqh
+++ /dev/null
@@ -1,80 +0,0 @@
-/********************************************************************
- * *
- * 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_res0_256_128_3_VQH_
-#define _V_res0_256_128_3_VQH_
-#include "codebook.h"
-
-static long _vq_quantlist_res0_256_128_3[] = {
- 6,
- 5,
- 7,
- 4,
- 8,
- 3,
- 9,
- 2,
- 10,
- 1,
- 11,
- 0,
- 12,
-};
-
-static long _vq_lengthlist_res0_256_128_3[] = {
- 4, 4, 4, 5, 5, 6, 6, 7, 7, 9, 9,10,10, 4, 5, 5,
- 6, 6, 7, 7, 8, 8, 9, 9,10,10, 4, 5, 5, 6, 6, 7,
- 6, 8, 8, 9, 9,10,10, 6, 6, 6, 7, 7, 8, 8, 9, 9,
- 10,10,12,11, 5, 6, 6, 7, 7, 8, 8, 9, 9,10,10,12,
- 11, 6, 7, 7, 8, 8, 9, 9,10,10,12,12,13,13, 6, 7,
- 7, 8, 8, 9, 9,10,10,11,12,13,13, 8, 8, 8, 9, 9,
- 10,10,12,11,13,13,14,14, 8, 8, 8, 9, 9,10,10,12,
- 12,13,13,14,14, 9,10, 9,11,11,12,12,13,13,14,14,
- 15,15, 9, 9, 9,11,11,12,12,13,13,14,14,15,15,10,
- 11,11,12,12,13,13,15,14,16,15,16,16,10,11,11,12,
- 12,13,13,14,14,15,16,16,16,
-};
-
-static float _vq_quantthresh_res0_256_128_3[] = {
- -5.5, -4.5, -3.5, -2.5, -1.5, -0.5, 0.5, 1.5,
- 2.5, 3.5, 4.5, 5.5,
-};
-
-static long _vq_quantmap_res0_256_128_3[] = {
- 11, 9, 7, 5, 3, 1, 0, 2,
- 4, 6, 8, 10, 12,
-};
-
-static encode_aux_threshmatch _vq_auxt_res0_256_128_3 = {
- _vq_quantthresh_res0_256_128_3,
- _vq_quantmap_res0_256_128_3,
- 13,
- 13
-};
-
-static static_codebook _vq_book_res0_256_128_3 = {
- 2, 169,
- _vq_lengthlist_res0_256_128_3,
- 1, -531103744, 1611661312, 4, 0,
- _vq_quantlist_res0_256_128_3,
- NULL,
- &_vq_auxt_res0_256_128_3,
- NULL,
- 0
-};
-
-
-#endif
diff --git a/lib/books/res0_256_128_4.vqh b/lib/books/res0_256_128_4.vqh
deleted file mode 100644
index 3c09d1ec..00000000
--- a/lib/books/res0_256_128_4.vqh
+++ /dev/null
@@ -1,565 +0,0 @@
-/********************************************************************
- * *
- * 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_res0_256_128_4_VQH_
-#define _V_res0_256_128_4_VQH_
-#include "codebook.h"
-
-static long _vq_quantlist_res0_256_128_4[] = {
- 40,
- 39,
- 41,
- 38,
- 42,
- 37,
- 43,
- 36,
- 44,
- 35,
- 45,
- 34,
- 46,
- 33,
- 47,
- 32,
- 48,
- 31,
- 49,
- 30,
- 50,
- 29,
- 51,
- 28,
- 52,
- 27,
- 53,
- 26,
- 54,
- 25,
- 55,
- 24,
- 56,
- 23,
- 57,
- 22,
- 58,
- 21,
- 59,
- 20,
- 60,
- 19,
- 61,
- 18,
- 62,
- 17,
- 63,
- 16,
- 64,
- 15,
- 65,
- 14,
- 66,
- 13,
- 67,
- 12,
- 68,
- 11,
- 69,
- 10,
- 70,
- 9,
- 71,
- 8,
- 72,
- 7,
- 73,
- 6,
- 74,
- 5,
- 75,
- 4,
- 76,
- 3,
- 77,
- 2,
- 78,
- 1,
- 79,
- 0,
- 80,
-};
-
-static long _vq_lengthlist_res0_256_128_4[] = {
- 5, 6, 6, 7, 7, 7, 7, 8, 8, 8, 8, 9, 9, 8, 8, 9,
- 9, 9, 9,10,10,10,10,10,10,10,10,11,10,11,11,11,
- 11,11,11,11,11,11,11,12,12,12,12,12,12,13,12,13,
- 12,13,13,13,13,13,14,14,13,14,14,14,14,14,15,15,
- 15,15,15,15,15,16,17,15,18,17,17,17,17,16,17,18,
- 17, 6, 6, 6, 7, 7, 7, 7, 8, 8, 8, 8, 8, 8, 8, 8,
- 9, 9, 9, 9, 9, 9, 9, 9,10,10,10,10,10,10,10,10,
- 10,10,10,11,11,11,11,11,11,11,11,11,12,11,12,11,
- 12,12,12,12,13,12,13,13,13,13,14,13,14,14,14,14,
- 14,14,14,14,15,15,15,15,15,16,15,16,15,15,16,17,
- 15,17, 6, 6, 6, 7, 7, 7, 7, 8, 8, 8, 8, 8, 8, 8,
- 8, 9, 9, 9, 9, 9, 9, 9,10,10,10,10,10,10,10,10,
- 10,10,10,10,10,11,10,11,11,11,11,11,11,12,12,12,
- 12,12,12,12,12,13,12,13,13,13,13,14,13,14,14,14,
- 13,14,14,14,14,14,15,15,16,14,15,16,16,15,15,16,
- 15,15,16, 7, 7, 7, 8, 8, 8, 8, 8, 8, 9, 9, 9, 9,
- 9, 9, 9, 9,10,10,10,10,10,10,10,10,10,11,11,11,
- 11,11,11,11,11,11,11,11,12,11,12,12,12,12,12,12,
- 13,12,13,13,13,12,14,13,13,13,14,14,14,14,15,14,
- 14,15,15,15,15,15,14,15,16,15,16,16,15,16,15,17,
- 16,15,15,17, 7, 7, 7, 8, 8, 8, 8, 8, 8, 9, 9, 9,
- 9, 9, 9, 9, 9,10,10,10,10,10,10,10,10,10,11,10,
- 11,11,11,11,11,11,11,11,11,11,11,12,12,12,12,12,
- 12,13,12,13,12,13,13,13,13,14,13,14,14,14,14,14,
- 14,14,14,15,15,15,15,15,16,15,16,16,16,16,16,17,
- 16,16,16,16,18, 8, 8, 8, 8, 8, 9, 9, 9, 9, 9, 9,
- 10,10,10,10,10,10,10,10,10,10,11,11,11,11,11,11,
- 11,11,11,11,12,11,12,12,12,12,12,12,12,12,13,12,
- 13,13,13,12,13,13,14,13,14,13,14,14,14,14,15,14,
- 14,15,15,15,15,15,15,16,14,15,15,15,16,17,16,16,
- 17,16,17,17,16,16, 8, 8, 8, 8, 8, 9, 9, 9, 9, 9,
- 10,10,10,10,10,10,10,10,10,10,10,11,11,11,11,11,
- 11,11,11,11,11,12,11,12,12,12,12,12,12,12,12,13,
- 12,13,12,13,13,13,13,14,14,14,14,14,14,14,15,14,
- 14,14,14,16,15,15,16,15,16,15,15,16,16,17,16,16,
- 16,17,17,17,19,16,19, 8, 8, 8, 9, 9, 9, 9,10,10,
- 10,10,10,10,10,10,11,11,11,11,11,11,11,11,11,11,
- 11,11,11,12,12,12,12,12,12,12,12,12,12,12,13,12,
- 13,12,13,13,13,13,14,13,14,13,14,14,14,14,15,14,
- 15,14,14,14,15,16,15,15,16,15,16,15,16,16,16,17,
- 17,17,16,19,16,17,16,18, 8, 8, 8, 9, 9, 9, 9,10,
- 10,10,10,10,10,10,11,11,11,11,11,11,11,11,11,11,
- 11,11,11,12,12,12,11,12,12,12,12,12,12,13,13,13,
- 12,13,13,13,13,14,13,14,13,14,14,15,14,14,14,15,
- 14,15,15,14,15,15,15,16,15,16,16,17,16,16,16,16,
- 16,15,18,18,16,17,19,17,19, 9, 9, 9,10,10,10,10,
- 10,10,10,11,11,11,11,11,11,11,11,11,11,12,12,12,
- 12,12,12,12,12,12,12,12,12,12,12,12,13,13,13,13,
- 13,13,13,13,13,13,14,13,14,13,14,14,14,14,15,14,
- 15,15,16,14,16,15,15,15,16,16,16,17,16,16,17,16,
- 16,17,16,16,16,17,18,17,17,17, 9, 9, 9,10,10,10,
- 10,10,10,10,11,11,11,11,11,11,11,11,11,12,11,11,
- 12,11,12,12,12,12,12,12,12,12,12,12,12,13,13,13,
- 13,13,13,13,13,14,13,14,13,14,14,15,14,14,14,15,
- 15,15,15,16,15,15,15,16,17,16,16,15,16,15,17,16,
- 16,16,17,17,19,18,18,17,18,17,19,10, 9, 9,10,10,
- 10,11,11,11,11,11,11,11,11,11,12,12,12,12,12,12,
- 12,12,12,12,12,12,12,13,12,13,13,13,13,13,13,13,
- 13,13,14,13,14,14,14,13,14,14,14,14,15,14,14,14,
- 15,15,15,16,17,15,17,15,16,16,16,16,15,16,18,17,
- 16,18,16,17,17,17,17,17,19,16,17,17,10, 9, 9,10,
- 10,11,10,11,11,11,11,11,11,11,12,12,12,12,12,12,
- 12,12,12,12,12,12,13,12,12,13,12,13,12,13,13,13,
- 13,13,13,13,13,14,13,14,14,14,14,15,14,15,14,15,
- 14,16,15,16,15,15,15,16,16,16,15,15,15,15,17,16,
- 16,17,16,16,16,18,18,16,19,17,17,17,16, 9, 9, 9,
- 10,10,11,11,11,11,12,11,11,12,12,12,12,12,12,13,
- 12,12,13,13,12,13,12,13,13,13,13,13,13,13,13,13,
- 13,13,14,14,14,13,14,14,14,14,14,14,15,15,15,14,
- 16,15,16,15,15,15,16,16,16,16,16,16,16,17,16,17,
- 17,19,16,16,16,18,19,17,17,18,17,19,18,19, 9, 9,
- 9,10,10,11,11,11,11,11,11,12,12,12,12,12,12,12,
- 12,12,12,12,12,13,13,13,13,13,13,13,13,13,13,13,
- 13,13,13,14,13,14,14,14,13,14,14,14,14,15,14,15,
- 15,15,16,16,16,16,16,15,16,16,17,16,16,17,19,16,
- 17,17,17,19,18,17,17,17,17,17,18,18,18,17,18,10,
- 10,10,11,11,11,11,12,12,12,12,12,12,12,13,12,13,
- 12,13,12,13,13,13,13,13,13,13,13,13,13,13,13,13,
- 13,14,14,13,14,13,15,14,15,14,14,14,15,14,15,15,
- 16,15,16,15,17,16,16,17,16,16,16,16,18,16,17,16,
- 18,17,19,17,17,16,18,18,18,17,16,19,17,18,17,19,
- 10,10,10,11,11,11,11,12,12,12,12,12,12,12,12,12,
- 12,13,13,13,13,12,13,13,13,13,13,13,13,13,13,13,
- 13,14,14,14,14,14,14,14,13,14,14,14,14,15,15,15,
- 14,15,15,16,16,16,16,17,15,16,16,19,17,18,16,19,
- 18,16,18,18,17,17,19,16,19,17,19,18,17,18,19,17,
- 18,11,10,11,11,11,12,12,12,12,12,13,13,12,13,13,
- 12,13,13,13,13,13,13,13,13,14,13,14,13,13,13,13,
- 13,14,14,14,14,14,14,14,14,14,15,14,15,16,16,14,
- 16,15,19,15,16,15,16,17,17,17,17,16,18,17,17,19,
- 19,16,19,18,17,17,19,18,18,19,19,18,17,17,17,18,
- 19,19,10,11,11,11,12,12,12,12,12,12,12,12,12,13,
- 13,13,13,13,13,13,13,13,13,13,14,13,13,13,14,14,
- 14,14,14,14,14,14,14,15,14,15,14,15,14,15,15,15,
- 15,15,15,17,15,16,16,16,16,16,16,16,17,16,16,17,
- 18,18,17,17,17,19,17,18,18,18,17,17,17,18,17,19,
- 19,18,19,11,11,11,12,12,12,12,12,13,13,13,13,13,
- 13,13,13,13,13,14,14,13,13,14,14,14,14,14,14,14,
- 14,14,14,14,14,14,14,14,14,15,14,14,15,14,15,14,
- 16,15,16,15,18,15,17,16,18,15,19,17,18,16,19,18,
- 19,17,18,18,17,19,19,18,19,17,19,19,17,19,18,19,
- 17,17,19,19,11,11,11,12,12,12,12,12,12,13,13,13,
- 13,13,13,13,13,13,13,13,14,14,13,14,13,14,14,14,
- 13,14,14,14,14,14,14,15,14,14,14,15,15,15,15,15,
- 16,16,16,19,15,16,16,16,16,17,16,17,16,19,19,16,
- 16,19,16,18,17,18,17,16,18,18,18,18,19,17,18,18,
- 19,18,19,18,19,12,12,11,12,12,13,13,13,13,13,13,
- 13,13,13,14,13,14,14,14,14,14,13,14,14,14,14,14,
- 15,14,14,14,14,14,14,14,14,15,15,15,15,15,16,15,
- 16,15,16,15,16,15,17,15,16,16,17,16,19,17,16,17,
- 19,17,17,17,17,17,19,19,18,19,19,19,18,18,18,19,
- 19,18,19,17,19,19,12,12,12,12,12,13,13,13,13,13,
- 13,13,13,13,14,14,13,14,14,14,14,14,13,14,14,14,
- 14,14,14,14,15,14,15,14,14,15,14,15,14,14,15,15,
- 15,18,14,17,15,16,15,17,15,18,17,16,17,17,16,16,
- 18,16,19,16,16,18,17,18,19,18,18,19,19,17,19,19,
- 18,18,19,17,19,19,19,12,12,12,13,13,13,13,13,14,
- 13,13,13,14,13,14,14,14,14,14,14,14,14,15,15,14,
- 14,14,15,15,15,14,14,14,14,14,15,15,15,15,17,15,
- 16,14,16,15,16,15,16,16,17,16,17,16,17,17,17,16,
- 18,17,19,19,18,18,18,18,17,18,17,19,19,18,19,18,
- 17,19,19,19,17,19,18,19,12,12,12,13,13,13,13,13,
- 13,13,13,14,14,14,14,13,14,14,14,14,14,14,15,14,
- 15,14,14,15,15,15,15,14,14,15,15,15,15,14,15,16,
- 15,16,16,16,15,16,15,17,15,19,15,17,15,17,15,17,
- 18,17,16,17,17,17,17,17,17,19,17,18,17,17,18,19,
- 19,18,19,18,18,19,19,19,17,12,12,12,13,13,13,14,
- 14,14,14,14,14,14,14,15,14,14,14,14,15,14,15,15,
- 14,14,15,15,15,14,14,15,15,15,16,15,15,15,16,15,
- 16,16,16,17,15,16,16,18,16,16,17,17,17,17,16,16,
- 19,17,19,17,19,17,19,18,19,17,17,19,18,18,17,18,
- 17,19,18,18,19,19,17,19,19,19,12,12,12,13,13,13,
- 13,13,13,14,14,14,14,14,14,15,14,14,14,15,14,14,
- 15,14,14,14,15,14,15,15,15,14,14,15,15,15,15,17,
- 16,16,16,16,16,17,15,17,16,16,15,16,16,19,16,18,
- 16,19,17,17,18,17,17,17,17,18,18,17,18,19,18,18,
- 19,18,19,19,18,19,19,18,19,19,19,13,13,13,13,13,
- 14,14,14,14,14,14,14,14,14,14,14,15,14,15,15,14,
- 14,15,15,15,15,15,15,15,14,15,15,16,16,14,15,15,
- 15,16,16,16,17,15,17,17,16,16,16,16,17,17,17,16,
- 19,17,18,17,17,18,17,18,18,18,18,17,19,18,19,19,
- 18,17,19,19,19,19,19,18,19,18,19,17,13,13,13,13,
- 13,13,13,14,14,14,14,14,14,15,15,15,14,15,14,15,
- 15,14,15,14,14,15,15,15,15,15,14,15,16,16,15,15,
- 16,16,15,15,16,16,17,16,16,17,17,17,18,19,16,17,
- 17,19,18,18,17,17,18,19,17,18,19,19,17,17,19,19,
- 19,18,17,19,19,19,19,19,17,19,19,19,19,13,13,13,
- 14,14,14,14,14,14,15,15,14,14,15,14,14,15,14,16,
- 14,15,14,14,15,15,15,15,15,15,15,15,15,16,16,15,
- 15,16,17,16,16,16,16,18,16,17,18,16,17,17,17,16,
- 17,18,17,17,19,17,18,17,17,16,18,19,19,17,19,19,
- 19,19,18,19,18,19,19,19,19,18,19,18,19,18,13,13,
- 13,14,14,14,14,14,15,15,15,15,15,15,15,14,14,14,
- 15,15,14,14,16,15,15,15,15,15,15,16,15,15,15,15,
- 15,16,15,16,16,17,16,16,16,18,15,16,17,19,17,19,
- 16,17,17,17,18,18,19,17,18,18,18,18,18,18,19,19,
- 19,18,18,19,19,19,19,19,19,19,19,19,19,19,18,14,
- 14,13,14,14,14,14,15,15,15,14,14,16,15,15,15,16,
- 16,15,15,15,15,16,15,16,15,15,15,15,15,15,15,15,
- 15,16,16,16,17,17,16,16,17,16,16,18,15,17,16,16,
- 16,16,19,17,19,17,17,19,18,18,19,19,18,18,19,17,
- 19,17,19,19,18,19,19,18,19,18,18,18,19,19,19,18,
- 14,14,13,14,13,14,15,14,15,14,14,14,14,14,14,15,
- 15,15,15,17,15,15,16,15,15,15,15,16,15,16,15,16,
- 16,17,15,16,16,17,16,16,16,16,16,17,18,18,18,17,
- 18,18,17,19,17,18,19,19,17,18,18,17,17,19,17,19,
- 19,18,19,19,19,19,17,19,18,19,18,19,19,19,18,19,
- 19,14,13,13,14,14,14,14,14,15,15,15,15,15,15,15,
- 15,16,15,15,15,16,15,15,15,16,15,16,17,15,16,16,
- 16,17,15,16,17,16,16,16,16,19,16,17,17,16,18,16,
- 18,17,18,17,17,17,17,18,17,17,18,19,19,19,19,18,
- 17,19,19,18,19,19,19,19,19,19,19,19,19,19,19,19,
- 18,19,13,14,14,14,14,14,14,15,14,14,14,15,15,15,
- 15,15,15,16,16,16,16,16,16,15,16,15,15,16,16,16,
- 16,16,17,17,15,17,16,16,16,18,16,19,16,19,17,18,
- 18,18,17,16,19,17,17,18,18,17,16,18,18,19,19,19,
- 17,19,18,18,19,18,19,18,18,18,19,18,19,19,19,19,
- 18,18,19,14,14,14,14,14,16,14,15,15,15,15,14,15,
- 16,15,16,16,15,16,14,15,15,16,15,17,16,16,15,18,
- 15,16,16,16,16,15,17,16,17,18,18,17,17,18,18,19,
- 19,17,18,17,17,19,17,18,18,19,17,19,17,18,19,17,
- 18,19,19,17,18,19,19,19,19,19,19,19,17,19,18,19,
- 19,19,18,19,14,13,14,14,14,14,14,14,16,15,15,15,
- 15,15,15,15,16,15,16,15,16,16,15,16,16,15,16,16,
- 16,15,16,17,16,16,17,16,16,18,19,16,17,17,16,17,
- 18,19,16,17,18,19,18,19,18,19,17,19,18,19,18,19,
- 19,19,19,17,19,18,19,19,18,19,19,18,19,19,19,19,
- 19,19,19,19,19,14,14,14,14,15,16,15,16,15,15,16,
- 16,15,15,15,15,17,16,17,16,15,15,16,15,15,15,16,
- 16,17,16,16,16,16,17,17,17,15,18,17,16,17,19,16,
- 17,19,16,18,19,18,18,19,18,16,18,17,18,17,18,19,
- 19,19,18,18,19,17,19,18,19,19,19,18,19,19,18,19,
- 19,19,19,19,19,19,14,14,14,14,15,14,15,14,15,15,
- 15,16,15,14,15,17,16,16,16,16,16,17,15,16,16,16,
- 16,16,17,16,16,16,17,16,16,17,17,16,15,17,17,18,
- 17,19,18,16,18,19,17,19,17,18,17,19,19,19,17,19,
- 18,19,19,19,19,17,19,19,18,19,19,19,19,18,19,19,
- 19,19,19,19,18,19,19,14,14,14,15,15,15,15,15,15,
- 16,17,15,15,16,15,15,15,15,16,16,18,15,17,16,16,
- 16,16,17,18,19,17,18,16,17,16,17,16,18,17,18,17,
- 19,17,17,19,19,17,17,19,18,17,19,17,19,17,19,19,
- 19,19,19,18,17,19,19,19,19,19,19,19,19,19,19,19,
- 18,19,19,19,19,19,19,19,14,14,15,15,16,15,16,15,
- 15,16,16,16,15,16,16,15,17,16,16,17,16,17,15,17,
- 16,18,16,17,16,16,17,15,16,18,16,17,16,16,17,17,
- 16,18,16,18,16,19,16,18,18,17,18,18,19,17,19,19,
- 19,19,18,19,19,19,18,19,19,19,19,19,19,19,19,19,
- 18,19,19,19,19,19,19,19,19,15,14,14,15,16,16,16,
- 15,15,15,15,15,15,16,15,16,16,17,17,16,16,16,16,
- 16,18,16,16,16,16,18,16,17,16,16,17,18,17,18,19,
- 19,17,17,19,18,18,18,17,19,17,18,19,18,17,19,19,
- 18,18,19,19,19,18,19,19,19,19,19,19,19,19,19,19,
- 19,19,19,19,19,18,18,19,19,19,15,14,14,15,15,15,
- 15,16,16,16,16,15,18,15,15,18,16,19,16,16,16,16,
- 17,16,17,17,16,16,16,17,16,18,16,17,16,18,17,18,
- 18,19,16,18,16,19,16,17,17,18,18,18,19,18,18,18,
- 18,19,19,18,18,19,19,19,19,18,19,19,19,19,19,19,
- 19,19,19,18,18,19,19,19,19,19,19,14,15,16,15,16,
- 15,15,16,16,15,16,17,16,16,17,16,17,17,18,17,17,
- 16,17,16,17,18,16,16,15,16,16,19,16,17,16,17,18,
- 18,17,17,17,18,16,18,17,19,17,17,17,18,19,19,19,
- 19,19,19,19,19,19,19,19,19,18,18,18,19,19,19,19,
- 19,19,19,19,19,19,19,19,19,19,19,19,15,15,14,15,
- 15,15,15,16,15,15,17,16,16,16,18,17,17,16,16,18,
- 17,16,16,18,17,16,18,16,16,17,16,16,16,19,17,16,
- 18,17,17,19,17,18,18,18,17,19,17,18,18,19,19,19,
- 19,19,18,18,18,18,18,19,19,19,19,19,19,19,19,18,
- 19,19,18,19,19,19,18,19,19,19,19,19,19,15,15,15,
- 16,15,15,16,16,16,16,17,16,17,16,15,16,16,16,17,
- 16,17,17,16,17,16,16,18,16,18,18,17,17,16,17,16,
- 17,16,19,18,16,17,18,18,18,17,18,19,18,18,17,18,
- 18,19,19,19,19,19,19,19,19,19,19,19,18,19,19,19,
- 19,19,19,19,19,19,19,19,19,19,19,19,19,19,16,15,
- 15,16,14,16,16,16,16,16,16,16,19,15,16,15,16,17,
- 16,16,16,17,16,17,16,17,18,17,17,18,16,19,17,17,
- 17,18,16,19,17,17,17,19,18,19,19,19,17,18,19,19,
- 18,19,19,19,19,19,19,18,19,19,18,19,17,19,19,19,
- 18,19,19,19,19,19,19,19,19,18,19,19,19,19,19,17,
- 15,15,16,16,16,17,15,17,16,16,17,17,17,17,15,16,
- 18,18,17,17,16,15,17,16,16,17,16,17,17,17,18,18,
- 17,18,19,19,19,18,19,19,19,19,18,18,19,18,19,19,
- 18,19,19,17,19,19,19,18,19,18,19,19,19,18,19,19,
- 19,19,18,19,19,19,19,19,19,19,19,19,18,19,19,19,
- 16,16,17,15,16,16,16,17,16,17,17,16,16,17,16,16,
- 16,18,18,17,16,17,17,18,18,17,18,18,17,17,18,19,
- 18,17,17,19,18,17,19,17,19,19,19,18,18,18,18,18,
- 19,19,19,19,18,19,18,18,19,19,19,19,19,18,19,19,
- 19,19,19,19,19,19,19,19,19,19,19,19,19,19,19,19,
- 19,16,15,16,15,15,16,18,17,16,17,17,17,16,19,17,
- 16,18,17,17,16,17,16,18,18,17,16,17,18,19,18,17,
- 18,17,17,19,19,18,18,18,19,18,19,18,19,17,18,18,
- 19,19,19,19,18,19,19,18,19,19,19,19,19,19,18,18,
- 19,19,19,19,19,19,19,19,19,19,19,19,19,19,19,19,
- 19,19,16,15,15,16,16,17,17,16,16,17,17,16,18,17,
- 18,18,16,16,17,19,17,18,17,16,17,18,18,16,16,17,
- 17,18,16,19,17,18,17,19,19,17,19,18,18,19,17,19,
- 18,18,18,19,19,19,19,19,19,18,18,17,17,19,19,19,
- 19,19,18,19,19,19,19,19,18,19,19,19,19,19,19,19,
- 19,19,19,19,16,15,17,15,16,15,16,16,17,17,16,17,
- 19,18,16,16,17,17,19,17,18,17,17,18,18,18,18,17,
- 19,18,18,17,19,17,18,17,17,18,19,18,18,19,19,18,
- 17,19,19,17,18,18,19,19,19,19,19,18,19,19,19,19,
- 19,19,19,19,19,19,19,19,19,19,19,19,19,19,19,19,
- 19,19,19,19,16,16,16,15,15,16,17,16,16,16,18,16,
- 17,16,17,19,17,16,19,18,19,16,17,18,18,17,19,16,
- 17,19,17,18,18,19,18,19,17,19,18,18,18,19,18,18,
- 18,17,18,19,18,18,19,19,19,19,18,19,17,19,19,19,
- 17,19,19,19,19,19,19,19,19,19,19,19,19,19,19,19,
- 19,19,19,19,19,17,16,15,15,16,16,18,16,16,16,18,
- 17,16,17,17,19,17,17,17,16,17,18,19,19,18,17,17,
- 17,18,19,18,18,18,17,17,18,16,19,18,19,18,18,17,
- 19,18,19,18,18,17,19,18,17,19,19,19,19,18,19,19,
- 19,19,19,19,19,19,19,19,19,19,19,19,18,19,19,19,
- 19,19,19,19,19,19,16,16,15,16,16,16,16,17,19,17,
- 17,17,17,19,16,17,17,17,18,17,19,18,19,17,17,19,
- 16,19,18,19,17,17,17,17,18,17,17,19,18,18,19,19,
- 18,17,18,18,18,19,18,18,17,19,19,19,19,19,19,19,
- 18,19,19,19,18,19,19,19,19,19,19,19,19,19,19,19,
- 19,19,19,19,19,19,19,17,15,16,16,19,17,17,19,18,
- 17,18,17,17,18,17,17,16,16,18,19,17,18,19,17,18,
- 17,18,17,18,18,18,19,17,17,17,18,17,18,18,19,19,
- 19,18,19,19,18,18,19,18,19,19,19,19,19,19,19,18,
- 19,19,19,18,19,19,19,19,19,19,19,19,19,19,19,19,
- 19,19,19,19,19,19,19,19,18,16,16,16,16,18,16,18,
- 17,17,17,16,19,16,18,17,17,16,18,18,19,18,18,17,
- 18,17,18,18,17,18,18,18,19,19,16,19,19,19,18,17,
- 19,18,19,19,19,19,19,18,19,18,19,19,19,19,17,19,
- 19,19,18,19,18,19,19,19,19,19,19,19,19,19,19,19,
- 19,18,19,19,19,19,19,19,19,19,18,16,16,16,17,19,
- 18,19,17,18,18,18,18,17,17,18,18,17,18,19,17,19,
- 17,19,18,18,19,19,19,18,19,19,19,18,19,18,19,18,
- 19,19,19,19,19,19,19,18,19,19,18,19,19,19,19,19,
- 19,19,19,19,19,19,19,19,19,19,19,19,19,19,19,19,
- 19,19,19,19,19,19,19,18,19,19,17,17,16,16,17,18,
- 19,17,18,18,17,19,17,18,18,18,17,17,17,17,18,19,
- 19,19,18,17,19,19,19,16,17,18,17,19,18,18,17,17,
- 17,18,18,18,19,17,18,19,18,19,18,19,19,19,19,19,
- 19,18,19,19,19,19,19,19,17,19,19,19,19,19,19,19,
- 19,19,19,19,19,19,19,19,19,19,19,17,16,17,17,17,
- 17,19,18,17,17,18,18,19,18,18,19,18,19,19,18,18,
- 19,18,19,18,19,17,18,18,18,18,17,19,19,18,19,19,
- 19,19,17,17,19,19,19,19,19,19,19,19,19,19,19,19,
- 19,18,18,19,19,19,19,19,18,19,19,18,19,19,19,19,
- 19,19,19,19,19,19,19,19,19,19,19,19,18,16,17,16,
- 18,18,17,17,19,17,17,18,18,19,19,17,19,17,19,19,
- 19,18,18,19,17,19,17,18,19,17,18,18,19,17,19,18,
- 19,19,19,19,19,19,18,19,18,19,18,19,18,19,19,19,
- 18,19,19,19,18,19,19,19,19,19,19,19,19,19,19,19,
- 19,19,19,18,19,19,19,19,19,19,19,19,19,17,16,17,
- 18,18,17,19,17,18,17,16,19,19,17,18,17,19,18,17,
- 19,18,19,19,19,18,19,19,19,18,18,19,19,19,19,19,
- 19,17,18,19,18,19,19,19,19,19,19,19,19,19,19,19,
- 19,19,17,19,19,19,19,18,19,18,19,19,19,18,19,19,
- 19,19,19,19,19,19,19,19,19,19,19,19,19,19,18,17,
- 17,18,18,18,18,17,18,18,18,17,18,19,18,19,19,19,
- 19,17,17,17,19,18,18,19,19,19,19,19,18,19,18,19,
- 19,19,19,19,18,18,19,19,19,19,19,19,19,19,19,19,
- 19,19,19,19,18,19,19,19,19,19,19,19,19,19,19,19,
- 19,19,19,19,19,19,19,19,18,19,19,19,19,19,19,18,
- 17,17,18,19,18,18,17,18,18,17,18,19,16,18,19,19,
- 19,18,18,18,19,18,19,19,19,19,19,19,19,18,18,19,
- 19,18,17,19,19,19,19,19,19,19,19,18,19,19,19,19,
- 19,19,19,19,19,19,19,17,19,19,19,18,19,19,19,19,
- 19,19,19,19,19,19,19,19,19,19,19,19,19,19,19,19,
- 16,17,16,16,18,18,17,19,19,18,17,17,16,18,19,17,
- 17,19,18,18,19,19,19,19,18,19,18,19,19,18,19,19,
- 18,19,18,19,18,19,18,19,19,19,19,19,18,19,19,19,
- 19,19,19,19,18,19,18,19,19,19,19,19,19,19,19,18,
- 19,19,19,19,19,19,19,19,19,19,19,19,19,18,19,19,
- 19,18,16,18,18,19,17,19,17,18,18,17,19,19,18,19,
- 19,19,19,18,18,19,17,18,19,19,19,18,19,19,19,19,
- 18,17,18,19,19,19,19,19,18,19,19,19,19,18,19,19,
- 19,19,19,18,19,18,19,19,19,19,19,18,19,19,19,18,
- 19,19,19,19,19,19,19,19,19,19,19,19,19,19,19,19,
- 19,19,18,17,18,17,19,18,18,19,16,18,18,19,19,17,
- 17,18,19,19,18,19,19,18,18,19,19,19,19,19,19,18,
- 19,19,19,19,19,19,19,19,19,19,19,19,19,19,19,19,
- 19,19,18,19,18,19,19,19,19,19,18,19,19,19,19,19,
- 19,19,19,19,19,19,19,19,19,19,19,19,19,19,19,19,
- 19,19,19,17,18,17,18,18,18,17,17,18,18,19,18,19,
- 17,18,19,19,17,17,19,19,17,19,17,18,19,19,18,19,
- 19,19,19,19,19,18,18,19,19,19,19,19,19,19,19,19,
- 19,18,19,18,19,19,19,19,19,19,18,19,19,19,19,19,
- 19,19,19,19,19,19,19,19,19,19,19,19,19,19,19,19,
- 19,19,19,19,17,18,16,16,18,18,17,18,17,19,17,19,
- 19,18,19,19,18,19,19,19,19,19,19,19,18,18,19,19,
- 19,18,19,19,19,19,19,19,19,19,19,19,19,19,19,19,
- 19,19,19,19,19,19,18,19,19,19,19,19,19,19,19,19,
- 19,19,19,19,19,19,19,19,19,19,19,19,19,19,19,19,
- 19,19,19,19,19,18,19,18,19,17,17,17,19,19,18,19,
- 17,19,18,19,19,19,19,19,19,19,19,19,18,19,19,19,
- 18,19,19,19,19,19,19,19,19,19,19,19,19,19,19,19,
- 19,19,19,18,19,19,19,18,19,19,19,19,19,19,19,19,
- 19,19,19,19,19,19,19,19,19,19,19,19,19,19,19,19,
- 19,19,19,19,19,19,19,16,19,19,19,17,19,17,19,17,
- 19,19,18,19,19,19,19,19,19,17,19,19,19,18,19,19,
- 19,19,19,19,18,19,18,19,19,19,19,19,19,19,18,19,
- 19,19,19,19,19,19,19,19,19,19,19,19,19,19,19,19,
- 19,19,19,19,19,19,19,19,19,19,19,19,19,19,19,19,
- 19,19,19,19,19,19,19,18,18,19,19,18,18,18,19,17,
- 19,17,19,19,19,19,18,18,18,18,19,19,19,19,18,19,
- 19,19,18,19,19,19,19,18,19,19,19,18,19,19,19,19,
- 19,19,19,19,19,19,19,19,19,19,19,19,19,19,19,19,
- 19,19,19,19,19,19,19,19,19,19,19,19,19,19,19,19,
- 19,19,19,19,19,19,19,19,19,18,19,19,17,19,18,17,
- 19,17,19,19,19,19,19,19,19,19,18,17,19,18,19,19,
- 17,19,19,19,18,19,19,19,18,19,19,19,18,19,19,19,
- 19,19,19,19,19,19,19,19,19,19,19,19,18,19,19,19,
- 19,19,19,19,19,19,19,19,19,19,19,19,19,19,19,19,
- 19,19,19,19,19,19,19,19,19,19,18,18,18,18,19,18,
- 17,18,18,18,18,19,19,19,19,18,17,19,19,19,18,19,
- 19,19,18,19,19,19,19,19,19,19,19,18,19,18,19,19,
- 19,19,17,18,19,19,19,19,19,19,19,19,19,19,19,19,
- 19,19,19,19,19,19,19,19,19,19,19,19,19,19,19,19,
- 19,19,19,19,19,19,19,19,19,19,17,18,17,18,19,19,
- 19,19,19,18,19,18,19,19,19,19,18,19,18,19,18,19,
- 18,19,19,19,19,19,19,18,19,19,19,17,19,19,19,19,
- 19,19,19,18,19,19,18,19,19,19,19,19,19,19,19,19,
- 19,19,19,19,19,19,19,19,19,19,19,19,19,19,19,19,
- 19,19,19,19,19,19,19,19,19,19,19,19,19,17,19,18,
- 19,19,19,19,19,19,18,19,19,19,18,17,19,18,18,19,
- 19,19,19,19,19,19,19,19,19,19,19,19,19,19,19,19,
- 19,19,19,18,19,19,19,19,19,19,19,19,19,19,19,19,
- 19,19,19,19,19,19,19,19,19,19,19,19,19,19,19,19,
- 19,19,19,19,19,19,19,19,19,19,19,19,18,19,19,17,
- 19,18,18,19,19,19,18,19,18,19,18,19,18,19,19,19,
- 19,19,19,19,19,19,19,19,19,18,19,19,19,19,19,19,
- 19,19,19,19,19,19,19,19,19,19,19,19,19,19,19,19,
- 19,19,19,19,19,19,19,19,19,19,19,19,19,19,19,19,
- 19,19,19,19,19,19,19,19,19,19,19,19,19,19,18,17,
- 19,19,19,19,18,18,19,19,18,19,19,19,19,18,19,19,
- 19,18,19,19,19,19,18,19,19,19,19,19,19,19,18,19,
- 19,19,19,19,19,19,19,19,19,19,19,19,19,19,19,19,
- 19,19,19,19,19,19,19,18,19,19,19,19,19,19,19,19,
- 19,19,19,19,19,19,19,19,19,19,19,19,19,19,19,17,
- 17,19,19,19,19,19,18,19,19,19,19,19,19,19,19,19,
- 19,18,19,19,19,19,18,19,19,19,19,19,19,19,19,19,
- 18,19,19,19,19,19,19,19,19,19,19,19,19,19,19,19,
- 19,19,19,19,19,19,19,19,19,19,19,19,19,19,19,19,
- 19,19,19,19,19,19,19,19,19,19,19,19,19,19,19,19,
- 18,18,18,19,18,19,19,19,19,19,19,18,19,19,19,19,
- 19,19,19,19,19,19,19,19,19,19,19,19,19,19,18,19,
- 19,19,19,19,19,19,19,19,19,19,19,19,19,19,19,19,
- 19,19,19,19,19,19,19,19,19,19,19,19,19,19,19,19,
- 19,19,19,19,19,19,19,19,19,19,19,19,19,19,19,19,
- 19,19,19,18,18,19,19,18,18,19,19,19,19,18,19,19,
- 18,19,18,18,19,19,18,19,19,19,19,19,19,19,19,19,
- 19,19,18,19,19,19,19,19,18,19,19,19,19,19,19,19,
- 19,19,19,19,19,19,19,19,19,19,19,19,19,19,19,19,
- 19,19,19,19,19,19,19,19,19,19,19,19,19,19,19,19,
- 19,
-};
-
-static float _vq_quantthresh_res0_256_128_4[] = {
- -39.5, -38.5, -37.5, -36.5, -35.5, -34.5, -33.5, -32.5,
- -31.5, -30.5, -29.5, -28.5, -27.5, -26.5, -25.5, -24.5,
- -23.5, -22.5, -21.5, -20.5, -19.5, -18.5, -17.5, -16.5,
- -15.5, -14.5, -13.5, -12.5, -11.5, -10.5, -9.5, -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, 9.5, 10.5, 11.5, 12.5, 13.5, 14.5, 15.5,
- 16.5, 17.5, 18.5, 19.5, 20.5, 21.5, 22.5, 23.5,
- 24.5, 25.5, 26.5, 27.5, 28.5, 29.5, 30.5, 31.5,
- 32.5, 33.5, 34.5, 35.5, 36.5, 37.5, 38.5, 39.5,
-};
-
-static long _vq_quantmap_res0_256_128_4[] = {
- 79, 77, 75, 73, 71, 69, 67, 65,
- 63, 61, 59, 57, 55, 53, 51, 49,
- 47, 45, 43, 41, 39, 37, 35, 33,
- 31, 29, 27, 25, 23, 21, 19, 17,
- 15, 13, 11, 9, 7, 5, 3, 1,
- 0, 2, 4, 6, 8, 10, 12, 14,
- 16, 18, 20, 22, 24, 26, 28, 30,
- 32, 34, 36, 38, 40, 42, 44, 46,
- 48, 50, 52, 54, 56, 58, 60, 62,
- 64, 66, 68, 70, 72, 74, 76, 78,
- 80,
-};
-
-static encode_aux_threshmatch _vq_auxt_res0_256_128_4 = {
- _vq_quantthresh_res0_256_128_4,
- _vq_quantmap_res0_256_128_4,
- 81,
- 81
-};
-
-static static_codebook _vq_book_res0_256_128_4 = {
- 2, 6561,
- _vq_lengthlist_res0_256_128_4,
- 1, -525074432, 1611661312, 7, 0,
- _vq_quantlist_res0_256_128_4,
- NULL,
- &_vq_auxt_res0_256_128_4,
- NULL,
- 0
-};
-
-
-#endif
diff --git a/lib/books/res0_256_128_5.vqh b/lib/books/res0_256_128_5.vqh
deleted file mode 100644
index b98fd652..00000000
--- a/lib/books/res0_256_128_5.vqh
+++ /dev/null
@@ -1,580 +0,0 @@
-/********************************************************************
- * *
- * 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_res0_256_128_5_VQH_
-#define _V_res0_256_128_5_VQH_
-#include "codebook.h"
-
-static long _vq_quantlist_res0_256_128_5[] = {
- 200,
- 199,
- 201,
- 198,
- 202,
- 197,
- 203,
- 196,
- 204,
- 195,
- 205,
- 194,
- 206,
- 193,
- 207,
- 192,
- 208,
- 191,
- 209,
- 190,
- 210,
- 189,
- 211,
- 188,
- 212,
- 187,
- 213,
- 186,
- 214,
- 185,
- 215,
- 184,
- 216,
- 183,
- 217,
- 182,
- 218,
- 181,
- 219,
- 180,
- 220,
- 179,
- 221,
- 178,
- 222,
- 177,
- 223,
- 176,
- 224,
- 175,
- 225,
- 174,
- 226,
- 173,
- 227,
- 172,
- 228,
- 171,
- 229,
- 170,
- 230,
- 169,
- 231,
- 168,
- 232,
- 167,
- 233,
- 166,
- 234,
- 165,
- 235,
- 164,
- 236,
- 163,
- 237,
- 162,
- 238,
- 161,
- 239,
- 160,
- 240,
- 159,
- 241,
- 158,
- 242,
- 157,
- 243,
- 156,
- 244,
- 155,
- 245,
- 154,
- 246,
- 153,
- 247,
- 152,
- 248,
- 151,
- 249,
- 150,
- 250,
- 149,
- 251,
- 148,
- 252,
- 147,
- 253,
- 146,
- 254,
- 145,
- 255,
- 144,
- 256,
- 143,
- 257,
- 142,
- 258,
- 141,
- 259,
- 140,
- 260,
- 139,
- 261,
- 138,
- 262,
- 137,
- 263,
- 136,
- 264,
- 135,
- 265,
- 134,
- 266,
- 133,
- 267,
- 132,
- 268,
- 131,
- 269,
- 130,
- 270,
- 129,
- 271,
- 128,
- 272,
- 127,
- 273,
- 126,
- 274,
- 125,
- 275,
- 124,
- 276,
- 123,
- 277,
- 122,
- 278,
- 121,
- 279,
- 120,
- 280,
- 119,
- 281,
- 118,
- 282,
- 117,
- 283,
- 116,
- 284,
- 115,
- 285,
- 114,
- 286,
- 113,
- 287,
- 112,
- 288,
- 111,
- 289,
- 110,
- 290,
- 109,
- 291,
- 108,
- 292,
- 107,
- 293,
- 106,
- 294,
- 105,
- 295,
- 104,
- 296,
- 103,
- 297,
- 102,
- 298,
- 101,
- 299,
- 100,
- 300,
- 99,
- 301,
- 98,
- 302,
- 97,
- 303,
- 96,
- 304,
- 95,
- 305,
- 94,
- 306,
- 93,
- 307,
- 92,
- 308,
- 91,
- 309,
- 90,
- 310,
- 89,
- 311,
- 88,
- 312,
- 87,
- 313,
- 86,
- 314,
- 85,
- 315,
- 84,
- 316,
- 83,
- 317,
- 82,
- 318,
- 81,
- 319,
- 80,
- 320,
- 79,
- 321,
- 78,
- 322,
- 77,
- 323,
- 76,
- 324,
- 75,
- 325,
- 74,
- 326,
- 73,
- 327,
- 72,
- 328,
- 71,
- 329,
- 70,
- 330,
- 69,
- 331,
- 68,
- 332,
- 67,
- 333,
- 66,
- 334,
- 65,
- 335,
- 64,
- 336,
- 63,
- 337,
- 62,
- 338,
- 61,
- 339,
- 60,
- 340,
- 59,
- 341,
- 58,
- 342,
- 57,
- 343,
- 56,
- 344,
- 55,
- 345,
- 54,
- 346,
- 53,
- 347,
- 52,
- 348,
- 51,
- 349,
- 50,
- 350,
- 49,
- 351,
- 48,
- 352,
- 47,
- 353,
- 46,
- 354,
- 45,
- 355,
- 44,
- 356,
- 43,
- 357,
- 42,
- 358,
- 41,
- 359,
- 40,
- 360,
- 39,
- 361,
- 38,
- 362,
- 37,
- 363,
- 36,
- 364,
- 35,
- 365,
- 34,
- 366,
- 33,
- 367,
- 32,
- 368,
- 31,
- 369,
- 30,
- 370,
- 29,
- 371,
- 28,
- 372,
- 27,
- 373,
- 26,
- 374,
- 25,
- 375,
- 24,
- 376,
- 23,
- 377,
- 22,
- 378,
- 21,
- 379,
- 20,
- 380,
- 19,
- 381,
- 18,
- 382,
- 17,
- 383,
- 16,
- 384,
- 15,
- 385,
- 14,
- 386,
- 13,
- 387,
- 12,
- 388,
- 11,
- 389,
- 10,
- 390,
- 9,
- 391,
- 8,
- 392,
- 7,
- 393,
- 6,
- 394,
- 5,
- 395,
- 4,
- 396,
- 3,
- 397,
- 2,
- 398,
- 1,
- 399,
- 0,
- 400,
-};
-
-static long _vq_lengthlist_res0_256_128_5[] = {
- 4, 3, 3, 4, 4, 4, 5, 5, 5, 5, 5, 5, 6, 6, 6, 6,
- 6, 6, 6, 7, 7, 7, 7, 7, 7, 7, 7, 8, 8, 8, 8, 8,
- 8, 9, 9, 8, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9,10,10,
- 10,10,10,10,10,10,10,11,12,12,11,11,11,11,11,12,
- 12,13,13,12,13,12,12,12,11,13,12,13,12,13,13,12,
- 13, 8, 9, 8,10, 9, 9, 9, 9, 9,10, 9,10, 9,10, 9,
- 11, 9,10,10,11,10,11,10,11,10,11,11,11,10,12,10,
- 11,10,12,11,12,11,11,11,12,11,12,12,12,11,12,11,
- 12,12,12,13,12,12,12,11,12,11,12,12,14,12,13,12,
- 13,11,13,13,12,12,14,12,14,13,13,12,13,13,13,12,
- 14,12,13,13,14,13,14,13,14,13,13,12,14,14,14,14,
- 13,13,14,13,13,13,13,14,14,12,13,13,14,14,13,13,
- 13,14,14,13,13,14,14,13,13,13,13,13,13,14,13,13,
- 13,14,13,13,13,14,13,14,14,14,14,13,14,13,13,13,
- 13,13,14,14,14,14,14,13,14,13,13,14,14,13,13,13,
- 14,14,14,13,14,14,14,14,14,14,14,14,14,13,14,14,
- 14,14,14,14,14,14,14,14,13,14,13,13,14,14,14,14,
- 14,13,13,14,14,13,14,14,14,14,14,13,14,14,14,14,
- 14,14,14,14,14,13,14,14,14,14,14,13,14,14,14,14,
- 14,13,14,14,14,14,14,14,14,14,14,13,14,14,14,14,
- 14,14,14,14,14,14,14,13,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,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,
- 14,14,14,14,14,14,14,14,13,14,14,14,14,14,14,14,
- 14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,
- 14,
-};
-
-static float _vq_quantthresh_res0_256_128_5[] = {
- -199.5, -198.5, -197.5, -196.5, -195.5, -194.5, -193.5, -192.5,
- -191.5, -190.5, -189.5, -188.5, -187.5, -186.5, -185.5, -184.5,
- -183.5, -182.5, -181.5, -180.5, -179.5, -178.5, -177.5, -176.5,
- -175.5, -174.5, -173.5, -172.5, -171.5, -170.5, -169.5, -168.5,
- -167.5, -166.5, -165.5, -164.5, -163.5, -162.5, -161.5, -160.5,
- -159.5, -158.5, -157.5, -156.5, -155.5, -154.5, -153.5, -152.5,
- -151.5, -150.5, -149.5, -148.5, -147.5, -146.5, -145.5, -144.5,
- -143.5, -142.5, -141.5, -140.5, -139.5, -138.5, -137.5, -136.5,
- -135.5, -134.5, -133.5, -132.5, -131.5, -130.5, -129.5, -128.5,
- -127.5, -126.5, -125.5, -124.5, -123.5, -122.5, -121.5, -120.5,
- -119.5, -118.5, -117.5, -116.5, -115.5, -114.5, -113.5, -112.5,
- -111.5, -110.5, -109.5, -108.5, -107.5, -106.5, -105.5, -104.5,
- -103.5, -102.5, -101.5, -100.5, -99.5, -98.5, -97.5, -96.5,
- -95.5, -94.5, -93.5, -92.5, -91.5, -90.5, -89.5, -88.5,
- -87.5, -86.5, -85.5, -84.5, -83.5, -82.5, -81.5, -80.5,
- -79.5, -78.5, -77.5, -76.5, -75.5, -74.5, -73.5, -72.5,
- -71.5, -70.5, -69.5, -68.5, -67.5, -66.5, -65.5, -64.5,
- -63.5, -62.5, -61.5, -60.5, -59.5, -58.5, -57.5, -56.5,
- -55.5, -54.5, -53.5, -52.5, -51.5, -50.5, -49.5, -48.5,
- -47.5, -46.5, -45.5, -44.5, -43.5, -42.5, -41.5, -40.5,
- -39.5, -38.5, -37.5, -36.5, -35.5, -34.5, -33.5, -32.5,
- -31.5, -30.5, -29.5, -28.5, -27.5, -26.5, -25.5, -24.5,
- -23.5, -22.5, -21.5, -20.5, -19.5, -18.5, -17.5, -16.5,
- -15.5, -14.5, -13.5, -12.5, -11.5, -10.5, -9.5, -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, 9.5, 10.5, 11.5, 12.5, 13.5, 14.5, 15.5,
- 16.5, 17.5, 18.5, 19.5, 20.5, 21.5, 22.5, 23.5,
- 24.5, 25.5, 26.5, 27.5, 28.5, 29.5, 30.5, 31.5,
- 32.5, 33.5, 34.5, 35.5, 36.5, 37.5, 38.5, 39.5,
- 40.5, 41.5, 42.5, 43.5, 44.5, 45.5, 46.5, 47.5,
- 48.5, 49.5, 50.5, 51.5, 52.5, 53.5, 54.5, 55.5,
- 56.5, 57.5, 58.5, 59.5, 60.5, 61.5, 62.5, 63.5,
- 64.5, 65.5, 66.5, 67.5, 68.5, 69.5, 70.5, 71.5,
- 72.5, 73.5, 74.5, 75.5, 76.5, 77.5, 78.5, 79.5,
- 80.5, 81.5, 82.5, 83.5, 84.5, 85.5, 86.5, 87.5,
- 88.5, 89.5, 90.5, 91.5, 92.5, 93.5, 94.5, 95.5,
- 96.5, 97.5, 98.5, 99.5, 100.5, 101.5, 102.5, 103.5,
- 104.5, 105.5, 106.5, 107.5, 108.5, 109.5, 110.5, 111.5,
- 112.5, 113.5, 114.5, 115.5, 116.5, 117.5, 118.5, 119.5,
- 120.5, 121.5, 122.5, 123.5, 124.5, 125.5, 126.5, 127.5,
- 128.5, 129.5, 130.5, 131.5, 132.5, 133.5, 134.5, 135.5,
- 136.5, 137.5, 138.5, 139.5, 140.5, 141.5, 142.5, 143.5,
- 144.5, 145.5, 146.5, 147.5, 148.5, 149.5, 150.5, 151.5,
- 152.5, 153.5, 154.5, 155.5, 156.5, 157.5, 158.5, 159.5,
- 160.5, 161.5, 162.5, 163.5, 164.5, 165.5, 166.5, 167.5,
- 168.5, 169.5, 170.5, 171.5, 172.5, 173.5, 174.5, 175.5,
- 176.5, 177.5, 178.5, 179.5, 180.5, 181.5, 182.5, 183.5,
- 184.5, 185.5, 186.5, 187.5, 188.5, 189.5, 190.5, 191.5,
- 192.5, 193.5, 194.5, 195.5, 196.5, 197.5, 198.5, 199.5,
-};
-
-static long _vq_quantmap_res0_256_128_5[] = {
- 399, 397, 395, 393, 391, 389, 387, 385,
- 383, 381, 379, 377, 375, 373, 371, 369,
- 367, 365, 363, 361, 359, 357, 355, 353,
- 351, 349, 347, 345, 343, 341, 339, 337,
- 335, 333, 331, 329, 327, 325, 323, 321,
- 319, 317, 315, 313, 311, 309, 307, 305,
- 303, 301, 299, 297, 295, 293, 291, 289,
- 287, 285, 283, 281, 279, 277, 275, 273,
- 271, 269, 267, 265, 263, 261, 259, 257,
- 255, 253, 251, 249, 247, 245, 243, 241,
- 239, 237, 235, 233, 231, 229, 227, 225,
- 223, 221, 219, 217, 215, 213, 211, 209,
- 207, 205, 203, 201, 199, 197, 195, 193,
- 191, 189, 187, 185, 183, 181, 179, 177,
- 175, 173, 171, 169, 167, 165, 163, 161,
- 159, 157, 155, 153, 151, 149, 147, 145,
- 143, 141, 139, 137, 135, 133, 131, 129,
- 127, 125, 123, 121, 119, 117, 115, 113,
- 111, 109, 107, 105, 103, 101, 99, 97,
- 95, 93, 91, 89, 87, 85, 83, 81,
- 79, 77, 75, 73, 71, 69, 67, 65,
- 63, 61, 59, 57, 55, 53, 51, 49,
- 47, 45, 43, 41, 39, 37, 35, 33,
- 31, 29, 27, 25, 23, 21, 19, 17,
- 15, 13, 11, 9, 7, 5, 3, 1,
- 0, 2, 4, 6, 8, 10, 12, 14,
- 16, 18, 20, 22, 24, 26, 28, 30,
- 32, 34, 36, 38, 40, 42, 44, 46,
- 48, 50, 52, 54, 56, 58, 60, 62,
- 64, 66, 68, 70, 72, 74, 76, 78,
- 80, 82, 84, 86, 88, 90, 92, 94,
- 96, 98, 100, 102, 104, 106, 108, 110,
- 112, 114, 116, 118, 120, 122, 124, 126,
- 128, 130, 132, 134, 136, 138, 140, 142,
- 144, 146, 148, 150, 152, 154, 156, 158,
- 160, 162, 164, 166, 168, 170, 172, 174,
- 176, 178, 180, 182, 184, 186, 188, 190,
- 192, 194, 196, 198, 200, 202, 204, 206,
- 208, 210, 212, 214, 216, 218, 220, 222,
- 224, 226, 228, 230, 232, 234, 236, 238,
- 240, 242, 244, 246, 248, 250, 252, 254,
- 256, 258, 260, 262, 264, 266, 268, 270,
- 272, 274, 276, 278, 280, 282, 284, 286,
- 288, 290, 292, 294, 296, 298, 300, 302,
- 304, 306, 308, 310, 312, 314, 316, 318,
- 320, 322, 324, 326, 328, 330, 332, 334,
- 336, 338, 340, 342, 344, 346, 348, 350,
- 352, 354, 356, 358, 360, 362, 364, 366,
- 368, 370, 372, 374, 376, 378, 380, 382,
- 384, 386, 388, 390, 392, 394, 396, 398,
- 400,
-};
-
-static encode_aux_threshmatch _vq_auxt_res0_256_128_5 = {
- _vq_quantthresh_res0_256_128_5,
- _vq_quantmap_res0_256_128_5,
- 401,
- 401
-};
-
-static static_codebook _vq_book_res0_256_128_5 = {
- 1, 401,
- _vq_lengthlist_res0_256_128_5,
- 1, -520552448, 1611661312, 9, 0,
- _vq_quantlist_res0_256_128_5,
- NULL,
- &_vq_auxt_res0_256_128_5,
- NULL,
- 0
-};
-
-
-#endif
diff --git a/lib/books/res0_256_128aux.vqh b/lib/books/res0_256_128aux.vqh
deleted file mode 100644
index 58315e34..00000000
--- a/lib/books/res0_256_128aux.vqh
+++ /dev/null
@@ -1,39 +0,0 @@
-/********************************************************************
- * *
- * 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 huff/huffbuld
-
- ********************************************************************/
-
-#ifndef _V_res0_256_128aux_VQH_
-#define _V_res0_256_128aux_VQH_
-#include "codebook.h"
-
-static long _huff_lengthlist_res0_256_128aux[] = {
- 4, 8,11,11,11,16, 4, 4, 7, 8,10,15, 7, 5, 5, 4,
- 7,15, 7, 4, 4, 3, 5,16, 9, 7, 5, 2, 4,13,16,12,
- 10, 7, 9,16,
-};
-
-static static_codebook _huff_book_res0_256_128aux = {
- 2, 36,
- _huff_lengthlist_res0_256_128aux,
- 0, 0, 0, 0, 0,
- NULL,
- NULL,
- NULL,
- 0
-};
-
-
-#endif
diff --git a/lib/books/res0_350_1024_7.vqh b/lib/books/res0_350_1024_7.vqh
deleted file mode 100644
index ac3add60..00000000
--- a/lib/books/res0_350_1024_7.vqh
+++ /dev/null
@@ -1,868 +0,0 @@
-/********************************************************************
- * *
- * 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_res0_350_1024_7_VQH_
-#define _V_res0_350_1024_7_VQH_
-#include "codebook.h"
-
-static long _vq_quantlist_res0_350_1024_7[] = {
- 310,
- 309,
- 311,
- 308,
- 312,
- 307,
- 313,
- 306,
- 314,
- 305,
- 315,
- 304,
- 316,
- 303,
- 317,
- 302,
- 318,
- 301,
- 319,
- 300,
- 320,
- 299,
- 321,
- 298,
- 322,
- 297,
- 323,
- 296,
- 324,
- 295,
- 325,
- 294,
- 326,
- 293,
- 327,
- 292,
- 328,
- 291,
- 329,
- 290,
- 330,
- 289,
- 331,
- 288,
- 332,
- 287,
- 333,
- 286,
- 334,
- 285,
- 335,
- 284,
- 336,
- 283,
- 337,
- 282,
- 338,
- 281,
- 339,
- 280,
- 340,
- 279,
- 341,
- 278,
- 342,
- 277,
- 343,
- 276,
- 344,
- 275,
- 345,
- 274,
- 346,
- 273,
- 347,
- 272,
- 348,
- 271,
- 349,
- 270,
- 350,
- 269,
- 351,
- 268,
- 352,
- 267,
- 353,
- 266,
- 354,
- 265,
- 355,
- 264,
- 356,
- 263,
- 357,
- 262,
- 358,
- 261,
- 359,
- 260,
- 360,
- 259,
- 361,
- 258,
- 362,
- 257,
- 363,
- 256,
- 364,
- 255,
- 365,
- 254,
- 366,
- 253,
- 367,
- 252,
- 368,
- 251,
- 369,
- 250,
- 370,
- 249,
- 371,
- 248,
- 372,
- 247,
- 373,
- 246,
- 374,
- 245,
- 375,
- 244,
- 376,
- 243,
- 377,
- 242,
- 378,
- 241,
- 379,
- 240,
- 380,
- 239,
- 381,
- 238,
- 382,
- 237,
- 383,
- 236,
- 384,
- 235,
- 385,
- 234,
- 386,
- 233,
- 387,
- 232,
- 388,
- 231,
- 389,
- 230,
- 390,
- 229,
- 391,
- 228,
- 392,
- 227,
- 393,
- 226,
- 394,
- 225,
- 395,
- 224,
- 396,
- 223,
- 397,
- 222,
- 398,
- 221,
- 399,
- 220,
- 400,
- 219,
- 401,
- 218,
- 402,
- 217,
- 403,
- 216,
- 404,
- 215,
- 405,
- 214,
- 406,
- 213,
- 407,
- 212,
- 408,
- 211,
- 409,
- 210,
- 410,
- 209,
- 411,
- 208,
- 412,
- 207,
- 413,
- 206,
- 414,
- 205,
- 415,
- 204,
- 416,
- 203,
- 417,
- 202,
- 418,
- 201,
- 419,
- 200,
- 420,
- 199,
- 421,
- 198,
- 422,
- 197,
- 423,
- 196,
- 424,
- 195,
- 425,
- 194,
- 426,
- 193,
- 427,
- 192,
- 428,
- 191,
- 429,
- 190,
- 430,
- 189,
- 431,
- 188,
- 432,
- 187,
- 433,
- 186,
- 434,
- 185,
- 435,
- 184,
- 436,
- 183,
- 437,
- 182,
- 438,
- 181,
- 439,
- 180,
- 440,
- 179,
- 441,
- 178,
- 442,
- 177,
- 443,
- 176,
- 444,
- 175,
- 445,
- 174,
- 446,
- 173,
- 447,
- 172,
- 448,
- 171,
- 449,
- 170,
- 450,
- 169,
- 451,
- 168,
- 452,
- 167,
- 453,
- 166,
- 454,
- 165,
- 455,
- 164,
- 456,
- 163,
- 457,
- 162,
- 458,
- 161,
- 459,
- 160,
- 460,
- 159,
- 461,
- 158,
- 462,
- 157,
- 463,
- 156,
- 464,
- 155,
- 465,
- 154,
- 466,
- 153,
- 467,
- 152,
- 468,
- 151,
- 469,
- 150,
- 470,
- 149,
- 471,
- 148,
- 472,
- 147,
- 473,
- 146,
- 474,
- 145,
- 475,
- 144,
- 476,
- 143,
- 477,
- 142,
- 478,
- 141,
- 479,
- 140,
- 480,
- 139,
- 481,
- 138,
- 482,
- 137,
- 483,
- 136,
- 484,
- 135,
- 485,
- 134,
- 486,
- 133,
- 487,
- 132,
- 488,
- 131,
- 489,
- 130,
- 490,
- 129,
- 491,
- 128,
- 492,
- 127,
- 493,
- 126,
- 494,
- 125,
- 495,
- 124,
- 496,
- 123,
- 497,
- 122,
- 498,
- 121,
- 499,
- 120,
- 500,
- 119,
- 501,
- 118,
- 502,
- 117,
- 503,
- 116,
- 504,
- 115,
- 505,
- 114,
- 506,
- 113,
- 507,
- 112,
- 508,
- 111,
- 509,
- 110,
- 510,
- 109,
- 511,
- 108,
- 512,
- 107,
- 513,
- 106,
- 514,
- 105,
- 515,
- 104,
- 516,
- 103,
- 517,
- 102,
- 518,
- 101,
- 519,
- 100,
- 520,
- 99,
- 521,
- 98,
- 522,
- 97,
- 523,
- 96,
- 524,
- 95,
- 525,
- 94,
- 526,
- 93,
- 527,
- 92,
- 528,
- 91,
- 529,
- 90,
- 530,
- 89,
- 531,
- 88,
- 532,
- 87,
- 533,
- 86,
- 534,
- 85,
- 535,
- 84,
- 536,
- 83,
- 537,
- 82,
- 538,
- 81,
- 539,
- 80,
- 540,
- 79,
- 541,
- 78,
- 542,
- 77,
- 543,
- 76,
- 544,
- 75,
- 545,
- 74,
- 546,
- 73,
- 547,
- 72,
- 548,
- 71,
- 549,
- 70,
- 550,
- 69,
- 551,
- 68,
- 552,
- 67,
- 553,
- 66,
- 554,
- 65,
- 555,
- 64,
- 556,
- 63,
- 557,
- 62,
- 558,
- 61,
- 559,
- 60,
- 560,
- 59,
- 561,
- 58,
- 562,
- 57,
- 563,
- 56,
- 564,
- 55,
- 565,
- 54,
- 566,
- 53,
- 567,
- 52,
- 568,
- 51,
- 569,
- 50,
- 570,
- 49,
- 571,
- 48,
- 572,
- 47,
- 573,
- 46,
- 574,
- 45,
- 575,
- 44,
- 576,
- 43,
- 577,
- 42,
- 578,
- 41,
- 579,
- 40,
- 580,
- 39,
- 581,
- 38,
- 582,
- 37,
- 583,
- 36,
- 584,
- 35,
- 585,
- 34,
- 586,
- 33,
- 587,
- 32,
- 588,
- 31,
- 589,
- 30,
- 590,
- 29,
- 591,
- 28,
- 592,
- 27,
- 593,
- 26,
- 594,
- 25,
- 595,
- 24,
- 596,
- 23,
- 597,
- 22,
- 598,
- 21,
- 599,
- 20,
- 600,
- 19,
- 601,
- 18,
- 602,
- 17,
- 603,
- 16,
- 604,
- 15,
- 605,
- 14,
- 606,
- 13,
- 607,
- 12,
- 608,
- 11,
- 609,
- 10,
- 610,
- 9,
- 611,
- 8,
- 612,
- 7,
- 613,
- 6,
- 614,
- 5,
- 615,
- 4,
- 616,
- 3,
- 617,
- 2,
- 618,
- 1,
- 619,
- 0,
- 620,
-};
-
-static long _vq_lengthlist_res0_350_1024_7[] = {
- 3, 4, 4, 5, 5, 5, 5, 5, 5, 5, 5, 6, 6, 6, 6, 6,
- 6, 6, 6, 6, 6, 6, 6, 6, 6, 7, 7, 7, 7, 7, 7, 7,
- 7, 7, 7, 7, 7, 7, 7, 7, 7, 8, 8, 8, 8, 8, 8, 8,
- 8, 8, 8, 8, 8, 8, 8, 8, 8, 9, 9, 9, 9, 9, 9, 9,
- 9, 9, 9, 9, 9, 9, 9, 9, 9,10, 9,10,10,10,10,10,
- 10, 9, 9, 9, 9, 9, 9, 9,10,10,10,10,10,10,10,10,
- 10,10,10,10,10,10,10,11,10,11,11,11,11,11,11,11,
- 11,11,11,11,11,11,11,11,11,11,11,11,11,12,12,12,
- 12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,
- 12,12,12,12,12,12,13,12,12,13,12,13,13,13,13,13,
- 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
- 13,13,14,14,13,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,14,14,
- 15,14,15,15,15,14,15,15,15,15,15,14,15,15,15,15,
- 15,15,15,15,15,15,15,15,15,15,16,15,15,16,16,16,
- 16,15,15,15,16,16,16,16,16,16,16,16,16,16,15,15,
- 16,16,16,16,16,16,16,16,16,16,16,16,16,17,16,16,
- 16,16,16,16,16,16,16,16,16,16,17,16,16,17,16,17,
- 16,16,17,17,17,17,16,17,18,18,17,17,17,17,16,17,
- 18,18,18,17,18,17,17,17,17,17,17,18,17,17,18,17,
- 17,18,18,19,18,17,19,19,18,17,18,18,17,18,18,18,
- 19,18,18,18,18,18,18,18,19,18,18,18,18,18,18,19,
- 18,18,19,18,18,19,20,18,19,18,18,18,18,18,19,18,
- 19,19,20,20,18,20,18,18,19,20,18,19,21,19,19,19,
- 20,20,20,19,20,19,18,21,20,20,19,20,20,21,21,20,
- 19,21,21,20,20,20,21,21,21,20,20,21,21,20,21,21,
- 21,21,21,21,19,21,20,21,20,21,21,20,20,20,21,21,
- 21,21,21,20,21,21,21,21,21,21,21,21,20,21,20,21,
- 21,21,21,20,21,21,19,21,21,21,21,21,21,21,21,21,
- 21,20,21,21,21,21,21,21,21,21,21,21,21,21,21,21,
- 21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,
- 21,21,20,20,21,21,21,20,21,21,20,21,21,21,21,21,
- 21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,
- 21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,
- 21,21,21,21,21,21,21,21,21,21,21,21,21,20,21,21,
- 21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,
- 21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,
- 21,21,21,21,21,21,21,21,20,21,21,21,21,21,21,20,
- 21,21,21,21,21,21,21,21,21,21,20,20,20,
-};
-
-static float _vq_quantthresh_res0_350_1024_7[] = {
- -309.5, -308.5, -307.5, -306.5, -305.5, -304.5, -303.5, -302.5,
- -301.5, -300.5, -299.5, -298.5, -297.5, -296.5, -295.5, -294.5,
- -293.5, -292.5, -291.5, -290.5, -289.5, -288.5, -287.5, -286.5,
- -285.5, -284.5, -283.5, -282.5, -281.5, -280.5, -279.5, -278.5,
- -277.5, -276.5, -275.5, -274.5, -273.5, -272.5, -271.5, -270.5,
- -269.5, -268.5, -267.5, -266.5, -265.5, -264.5, -263.5, -262.5,
- -261.5, -260.5, -259.5, -258.5, -257.5, -256.5, -255.5, -254.5,
- -253.5, -252.5, -251.5, -250.5, -249.5, -248.5, -247.5, -246.5,
- -245.5, -244.5, -243.5, -242.5, -241.5, -240.5, -239.5, -238.5,
- -237.5, -236.5, -235.5, -234.5, -233.5, -232.5, -231.5, -230.5,
- -229.5, -228.5, -227.5, -226.5, -225.5, -224.5, -223.5, -222.5,
- -221.5, -220.5, -219.5, -218.5, -217.5, -216.5, -215.5, -214.5,
- -213.5, -212.5, -211.5, -210.5, -209.5, -208.5, -207.5, -206.5,
- -205.5, -204.5, -203.5, -202.5, -201.5, -200.5, -199.5, -198.5,
- -197.5, -196.5, -195.5, -194.5, -193.5, -192.5, -191.5, -190.5,
- -189.5, -188.5, -187.5, -186.5, -185.5, -184.5, -183.5, -182.5,
- -181.5, -180.5, -179.5, -178.5, -177.5, -176.5, -175.5, -174.5,
- -173.5, -172.5, -171.5, -170.5, -169.5, -168.5, -167.5, -166.5,
- -165.5, -164.5, -163.5, -162.5, -161.5, -160.5, -159.5, -158.5,
- -157.5, -156.5, -155.5, -154.5, -153.5, -152.5, -151.5, -150.5,
- -149.5, -148.5, -147.5, -146.5, -145.5, -144.5, -143.5, -142.5,
- -141.5, -140.5, -139.5, -138.5, -137.5, -136.5, -135.5, -134.5,
- -133.5, -132.5, -131.5, -130.5, -129.5, -128.5, -127.5, -126.5,
- -125.5, -124.5, -123.5, -122.5, -121.5, -120.5, -119.5, -118.5,
- -117.5, -116.5, -115.5, -114.5, -113.5, -112.5, -111.5, -110.5,
- -109.5, -108.5, -107.5, -106.5, -105.5, -104.5, -103.5, -102.5,
- -101.5, -100.5, -99.5, -98.5, -97.5, -96.5, -95.5, -94.5,
- -93.5, -92.5, -91.5, -90.5, -89.5, -88.5, -87.5, -86.5,
- -85.5, -84.5, -83.5, -82.5, -81.5, -80.5, -79.5, -78.5,
- -77.5, -76.5, -75.5, -74.5, -73.5, -72.5, -71.5, -70.5,
- -69.5, -68.5, -67.5, -66.5, -65.5, -64.5, -63.5, -62.5,
- -61.5, -60.5, -59.5, -58.5, -57.5, -56.5, -55.5, -54.5,
- -53.5, -52.5, -51.5, -50.5, -49.5, -48.5, -47.5, -46.5,
- -45.5, -44.5, -43.5, -42.5, -41.5, -40.5, -39.5, -38.5,
- -37.5, -36.5, -35.5, -34.5, -33.5, -32.5, -31.5, -30.5,
- -29.5, -28.5, -27.5, -26.5, -25.5, -24.5, -23.5, -22.5,
- -21.5, -20.5, -19.5, -18.5, -17.5, -16.5, -15.5, -14.5,
- -13.5, -12.5, -11.5, -10.5, -9.5, -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, 9.5,
- 10.5, 11.5, 12.5, 13.5, 14.5, 15.5, 16.5, 17.5,
- 18.5, 19.5, 20.5, 21.5, 22.5, 23.5, 24.5, 25.5,
- 26.5, 27.5, 28.5, 29.5, 30.5, 31.5, 32.5, 33.5,
- 34.5, 35.5, 36.5, 37.5, 38.5, 39.5, 40.5, 41.5,
- 42.5, 43.5, 44.5, 45.5, 46.5, 47.5, 48.5, 49.5,
- 50.5, 51.5, 52.5, 53.5, 54.5, 55.5, 56.5, 57.5,
- 58.5, 59.5, 60.5, 61.5, 62.5, 63.5, 64.5, 65.5,
- 66.5, 67.5, 68.5, 69.5, 70.5, 71.5, 72.5, 73.5,
- 74.5, 75.5, 76.5, 77.5, 78.5, 79.5, 80.5, 81.5,
- 82.5, 83.5, 84.5, 85.5, 86.5, 87.5, 88.5, 89.5,
- 90.5, 91.5, 92.5, 93.5, 94.5, 95.5, 96.5, 97.5,
- 98.5, 99.5, 100.5, 101.5, 102.5, 103.5, 104.5, 105.5,
- 106.5, 107.5, 108.5, 109.5, 110.5, 111.5, 112.5, 113.5,
- 114.5, 115.5, 116.5, 117.5, 118.5, 119.5, 120.5, 121.5,
- 122.5, 123.5, 124.5, 125.5, 126.5, 127.5, 128.5, 129.5,
- 130.5, 131.5, 132.5, 133.5, 134.5, 135.5, 136.5, 137.5,
- 138.5, 139.5, 140.5, 141.5, 142.5, 143.5, 144.5, 145.5,
- 146.5, 147.5, 148.5, 149.5, 150.5, 151.5, 152.5, 153.5,
- 154.5, 155.5, 156.5, 157.5, 158.5, 159.5, 160.5, 161.5,
- 162.5, 163.5, 164.5, 165.5, 166.5, 167.5, 168.5, 169.5,
- 170.5, 171.5, 172.5, 173.5, 174.5, 175.5, 176.5, 177.5,
- 178.5, 179.5, 180.5, 181.5, 182.5, 183.5, 184.5, 185.5,
- 186.5, 187.5, 188.5, 189.5, 190.5, 191.5, 192.5, 193.5,
- 194.5, 195.5, 196.5, 197.5, 198.5, 199.5, 200.5, 201.5,
- 202.5, 203.5, 204.5, 205.5, 206.5, 207.5, 208.5, 209.5,
- 210.5, 211.5, 212.5, 213.5, 214.5, 215.5, 216.5, 217.5,
- 218.5, 219.5, 220.5, 221.5, 222.5, 223.5, 224.5, 225.5,
- 226.5, 227.5, 228.5, 229.5, 230.5, 231.5, 232.5, 233.5,
- 234.5, 235.5, 236.5, 237.5, 238.5, 239.5, 240.5, 241.5,
- 242.5, 243.5, 244.5, 245.5, 246.5, 247.5, 248.5, 249.5,
- 250.5, 251.5, 252.5, 253.5, 254.5, 255.5, 256.5, 257.5,
- 258.5, 259.5, 260.5, 261.5, 262.5, 263.5, 264.5, 265.5,
- 266.5, 267.5, 268.5, 269.5, 270.5, 271.5, 272.5, 273.5,
- 274.5, 275.5, 276.5, 277.5, 278.5, 279.5, 280.5, 281.5,
- 282.5, 283.5, 284.5, 285.5, 286.5, 287.5, 288.5, 289.5,
- 290.5, 291.5, 292.5, 293.5, 294.5, 295.5, 296.5, 297.5,
- 298.5, 299.5, 300.5, 301.5, 302.5, 303.5, 304.5, 305.5,
- 306.5, 307.5, 308.5, 309.5,
-};
-
-static long _vq_quantmap_res0_350_1024_7[] = {
- 619, 617, 615, 613, 611, 609, 607, 605,
- 603, 601, 599, 597, 595, 593, 591, 589,
- 587, 585, 583, 581, 579, 577, 575, 573,
- 571, 569, 567, 565, 563, 561, 559, 557,
- 555, 553, 551, 549, 547, 545, 543, 541,
- 539, 537, 535, 533, 531, 529, 527, 525,
- 523, 521, 519, 517, 515, 513, 511, 509,
- 507, 505, 503, 501, 499, 497, 495, 493,
- 491, 489, 487, 485, 483, 481, 479, 477,
- 475, 473, 471, 469, 467, 465, 463, 461,
- 459, 457, 455, 453, 451, 449, 447, 445,
- 443, 441, 439, 437, 435, 433, 431, 429,
- 427, 425, 423, 421, 419, 417, 415, 413,
- 411, 409, 407, 405, 403, 401, 399, 397,
- 395, 393, 391, 389, 387, 385, 383, 381,
- 379, 377, 375, 373, 371, 369, 367, 365,
- 363, 361, 359, 357, 355, 353, 351, 349,
- 347, 345, 343, 341, 339, 337, 335, 333,
- 331, 329, 327, 325, 323, 321, 319, 317,
- 315, 313, 311, 309, 307, 305, 303, 301,
- 299, 297, 295, 293, 291, 289, 287, 285,
- 283, 281, 279, 277, 275, 273, 271, 269,
- 267, 265, 263, 261, 259, 257, 255, 253,
- 251, 249, 247, 245, 243, 241, 239, 237,
- 235, 233, 231, 229, 227, 225, 223, 221,
- 219, 217, 215, 213, 211, 209, 207, 205,
- 203, 201, 199, 197, 195, 193, 191, 189,
- 187, 185, 183, 181, 179, 177, 175, 173,
- 171, 169, 167, 165, 163, 161, 159, 157,
- 155, 153, 151, 149, 147, 145, 143, 141,
- 139, 137, 135, 133, 131, 129, 127, 125,
- 123, 121, 119, 117, 115, 113, 111, 109,
- 107, 105, 103, 101, 99, 97, 95, 93,
- 91, 89, 87, 85, 83, 81, 79, 77,
- 75, 73, 71, 69, 67, 65, 63, 61,
- 59, 57, 55, 53, 51, 49, 47, 45,
- 43, 41, 39, 37, 35, 33, 31, 29,
- 27, 25, 23, 21, 19, 17, 15, 13,
- 11, 9, 7, 5, 3, 1, 0, 2,
- 4, 6, 8, 10, 12, 14, 16, 18,
- 20, 22, 24, 26, 28, 30, 32, 34,
- 36, 38, 40, 42, 44, 46, 48, 50,
- 52, 54, 56, 58, 60, 62, 64, 66,
- 68, 70, 72, 74, 76, 78, 80, 82,
- 84, 86, 88, 90, 92, 94, 96, 98,
- 100, 102, 104, 106, 108, 110, 112, 114,
- 116, 118, 120, 122, 124, 126, 128, 130,
- 132, 134, 136, 138, 140, 142, 144, 146,
- 148, 150, 152, 154, 156, 158, 160, 162,
- 164, 166, 168, 170, 172, 174, 176, 178,
- 180, 182, 184, 186, 188, 190, 192, 194,
- 196, 198, 200, 202, 204, 206, 208, 210,
- 212, 214, 216, 218, 220, 222, 224, 226,
- 228, 230, 232, 234, 236, 238, 240, 242,
- 244, 246, 248, 250, 252, 254, 256, 258,
- 260, 262, 264, 266, 268, 270, 272, 274,
- 276, 278, 280, 282, 284, 286, 288, 290,
- 292, 294, 296, 298, 300, 302, 304, 306,
- 308, 310, 312, 314, 316, 318, 320, 322,
- 324, 326, 328, 330, 332, 334, 336, 338,
- 340, 342, 344, 346, 348, 350, 352, 354,
- 356, 358, 360, 362, 364, 366, 368, 370,
- 372, 374, 376, 378, 380, 382, 384, 386,
- 388, 390, 392, 394, 396, 398, 400, 402,
- 404, 406, 408, 410, 412, 414, 416, 418,
- 420, 422, 424, 426, 428, 430, 432, 434,
- 436, 438, 440, 442, 444, 446, 448, 450,
- 452, 454, 456, 458, 460, 462, 464, 466,
- 468, 470, 472, 474, 476, 478, 480, 482,
- 484, 486, 488, 490, 492, 494, 496, 498,
- 500, 502, 504, 506, 508, 510, 512, 514,
- 516, 518, 520, 522, 524, 526, 528, 530,
- 532, 534, 536, 538, 540, 542, 544, 546,
- 548, 550, 552, 554, 556, 558, 560, 562,
- 564, 566, 568, 570, 572, 574, 576, 578,
- 580, 582, 584, 586, 588, 590, 592, 594,
- 596, 598, 600, 602, 604, 606, 608, 610,
- 612, 614, 616, 618, 620,
-};
-
-static encode_aux_threshmatch _vq_auxt_res0_350_1024_7 = {
- _vq_quantthresh_res0_350_1024_7,
- _vq_quantmap_res0_350_1024_7,
- 621,
- 621
-};
-
-static static_codebook _vq_book_res0_350_1024_7 = {
- 1, 621,
- _vq_lengthlist_res0_350_1024_7,
- 1, -518823936, 1611661312, 10, 0,
- _vq_quantlist_res0_350_1024_7,
- NULL,
- &_vq_auxt_res0_350_1024_7,
- NULL,
- 0
-};
-
-
-#endif
diff --git a/lib/books/res0_96_1024_1.vqh b/lib/books/res0_96_1024_1.vqh
deleted file mode 100644
index d237edac..00000000
--- a/lib/books/res0_96_1024_1.vqh
+++ /dev/null
@@ -1,63 +0,0 @@
-/********************************************************************
- * *
- * 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_res0_96_1024_1_VQH_
-#define _V_res0_96_1024_1_VQH_
-#include "codebook.h"
-
-static long _vq_quantlist_res0_96_1024_1[] = {
- 1,
- 0,
- 2,
-};
-
-static long _vq_lengthlist_res0_96_1024_1[] = {
- 1, 4, 4, 5, 8, 7, 4, 7, 7, 5, 8, 8, 8,11,11, 8,
- 10,10, 5, 8, 8, 8,11,10, 8,11,10, 5, 8, 8, 8,11,
- 11, 8,11,11, 8,11,11,11,14,14,11,14,14, 8,11,11,
- 11,14,14,11,14,14, 4, 8, 8, 8,11,11, 8,11,11, 8,
- 11,11,11,14,14,11,14,14, 8,11,10,11,14,14,10,14,
- 14,
-};
-
-static float _vq_quantthresh_res0_96_1024_1[] = {
- -0.5, 0.5,
-};
-
-static long _vq_quantmap_res0_96_1024_1[] = {
- 1, 0, 2,
-};
-
-static encode_aux_threshmatch _vq_auxt_res0_96_1024_1 = {
- _vq_quantthresh_res0_96_1024_1,
- _vq_quantmap_res0_96_1024_1,
- 3,
- 3
-};
-
-static static_codebook _vq_book_res0_96_1024_1 = {
- 4, 81,
- _vq_lengthlist_res0_96_1024_1,
- 1, -535822336, 1611661312, 2, 0,
- _vq_quantlist_res0_96_1024_1,
- NULL,
- &_vq_auxt_res0_96_1024_1,
- NULL,
- 0
-};
-
-
-#endif
diff --git a/lib/books/res0_96_1024_2.vqh b/lib/books/res0_96_1024_2.vqh
deleted file mode 100644
index 0a144176..00000000
--- a/lib/books/res0_96_1024_2.vqh
+++ /dev/null
@@ -1,63 +0,0 @@
-/********************************************************************
- * *
- * 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_res0_96_1024_2_VQH_
-#define _V_res0_96_1024_2_VQH_
-#include "codebook.h"
-
-static long _vq_quantlist_res0_96_1024_2[] = {
- 1,
- 0,
- 2,
-};
-
-static long _vq_lengthlist_res0_96_1024_2[] = {
- 3, 5, 4, 5, 6, 6, 4, 6, 6, 5, 6, 6, 6, 7, 8, 6,
- 7, 7, 5, 6, 6, 6, 8, 7, 6, 7, 7, 5, 6, 6, 6, 8,
- 8, 6, 8, 8, 6, 8, 8, 8, 9, 9, 8, 9, 9, 6, 8, 8,
- 8, 9, 9, 8, 9, 9, 5, 6, 6, 6, 8, 8, 6, 8, 8, 6,
- 8, 8, 8, 9, 9, 7, 9, 9, 6, 8, 8, 8, 9, 9, 7, 9,
- 9,
-};
-
-static float _vq_quantthresh_res0_96_1024_2[] = {
- -0.5, 0.5,
-};
-
-static long _vq_quantmap_res0_96_1024_2[] = {
- 1, 0, 2,
-};
-
-static encode_aux_threshmatch _vq_auxt_res0_96_1024_2 = {
- _vq_quantthresh_res0_96_1024_2,
- _vq_quantmap_res0_96_1024_2,
- 3,
- 3
-};
-
-static static_codebook _vq_book_res0_96_1024_2 = {
- 4, 81,
- _vq_lengthlist_res0_96_1024_2,
- 1, -535822336, 1611661312, 2, 0,
- _vq_quantlist_res0_96_1024_2,
- NULL,
- &_vq_auxt_res0_96_1024_2,
- NULL,
- 0
-};
-
-
-#endif
diff --git a/lib/books/res0_96_1024_3.vqh b/lib/books/res0_96_1024_3.vqh
deleted file mode 100644
index 0b80f637..00000000
--- a/lib/books/res0_96_1024_3.vqh
+++ /dev/null
@@ -1,187 +0,0 @@
-/********************************************************************
- * *
- * 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_res0_96_1024_3_VQH_
-#define _V_res0_96_1024_3_VQH_
-#include "codebook.h"
-
-static long _vq_quantlist_res0_96_1024_3[] = {
- 3,
- 2,
- 4,
- 0,
- 6,
-};
-
-static long _vq_lengthlist_res0_96_1024_3[] = {
- 2, 4, 4, 6, 6, 5, 7, 7,10,10, 4, 7, 7,10,10, 7,
- 10,10,15,15, 7,10,10,15,15, 5, 7, 7, 9, 9, 7,10,
- 10,13,12, 7,10,10,12,12,10,13,13,17,18,10,13,13,
- 17,18, 4, 7, 7, 9, 9, 7,10,10,12,12, 7,10,10,12,
- 12,10,13,13,16,18,10,13,13,18,17, 7,10, 9,12,13,
- 10,13,13,17,17,10,13,13,17,17,15,18,21, 0, 0,15,
- 17,17,21, 0, 7, 9, 9,13,13,10,13,13,16,18,10,13,
- 13,17,17,16,19,18, 0, 0,15,18,17, 0, 0, 5, 7, 7,
- 9, 9, 7,10,10,13,13, 7,10,10,13,13,10,13,13,18,
- 17,10,13,13,19,17, 7,10,10,13,13,10,12,13,15,16,
- 10,12,12,15,15,13,15,16,19, 0,13,16,15,19,20, 7,
- 10,10,13,12,10,13,12,16,15,10,12,12,15,16,13,16,
- 15,20,18,13,15,15,19,18,10,13,13,17,17,13,15,16,
- 0,19,13,16,15, 0,20,18,18,20, 0, 0,18,19, 0, 0,
- 0,10,13,13,18,18,13,15,15,19,19,13,16,16,20,19,
- 19,20,19, 0, 0,18,19,20,20, 0, 5, 7, 7, 9, 9, 7,
- 10,10,13,13, 7,10,10,13,13,10,13,13,18,17,10,13,
- 13,18,18, 7,10,10,13,13,10,12,12,16,16,10,12,12,
- 15,16,13,15,15, 0, 0,13,15,15,19, 0, 7,10,10,12,
- 13,10,12,12,15,15,10,12,12,16,15,13,16,15, 0, 0,
- 13,15,15, 0, 0,10,13,13,18,18,13,15,15,20,20,13,
- 16,15,19,19,18,19,19, 0, 0,17,18,20, 0, 0,10,13,
- 13,17,17,13,15,15,19,20,13,15,15,20,18,17,19,20,
- 0, 0,17,20,18,20,19, 7,10,10,13,13,10,13,13,18,
- 18,10,13,13,17,17,14,18,19,20, 0,13,17,18, 0, 0,
- 10,13,13,17,18,13,15,16, 0, 0,13,16,15, 0,20,18,
- 20, 0, 0, 0,18,20, 0, 0, 0,10,13,13,18,18,13,16,
- 15, 0, 0,13,16,15, 0, 0,17,20, 0, 0, 0,17, 0,20,
- 0, 0,15,18,18, 0,20,17,20,19,20, 0,18, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,15,18,18, 0, 0,
- 18, 0,18, 0, 0,17,20, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 7,10,10,13,13,10,13,13,18,18,10,13,
- 13,18,17,14,18,18,20, 0,13,19,18, 0, 0,10,13,13,
- 18,17,13,16,15,20, 0,13,16,16, 0, 0,18, 0,19,20,
- 0,17,19,19, 0, 0,10,13,13,18,17,13,16,15,20, 0,
- 13,15,15,19, 0,18, 0,20,20, 0,18, 0,20, 0, 0,15,
- 18,19,20, 0,18,20,20, 0,20,18, 0,19, 0, 0, 0, 0,
- 0, 0, 0, 0,19, 0,20, 0,15,17,19, 0, 0,18,19,20,
- 0,20,18,19,19, 0, 0, 0, 0, 0, 0, 0, 0, 0,20, 0,
- 0,
-};
-
-static float _vq_quantthresh_res0_96_1024_3[] = {
- -2, -0.5, 0.5, 2,
-};
-
-static long _vq_quantmap_res0_96_1024_3[] = {
- 3, 1, 0, 2, 4,
-};
-
-static encode_aux_threshmatch _vq_auxt_res0_96_1024_3 = {
- _vq_quantthresh_res0_96_1024_3,
- _vq_quantmap_res0_96_1024_3,
- 5,
- 5
-};
-
-static long _vq_pigeonmap_res0_96_1024_3[] = {
- 1, 0, 0, 0, 0, 0,
-};
-
-static long _vq_fitlist_res0_96_1024_3[] = {
- 1, 5, 6, 8, 16, 25, 26, 28,
- 30, 31, 33, 40, 41, 43, 76, 80,
- 81, 83, 91, 125, 126, 128, 130, 131,
- 133, 140, 141, 143, 150, 151, 153, 155,
- 156, 158, 165, 166, 168, 200, 201, 203,
- 205, 206, 215, 216, 376, 380, 381, 383,
- 391, 400, 401, 403, 405, 406, 415, 416,
- 451, 455, 456, 458, 0, 7, 15, 27,
- 32, 42, 75, 82, 90, 127, 132, 142,
- 152, 157, 167, 202, 207, 217, 375, 382,
- 390, 402, 407, 450, 457, 2, 17, 77,
- 92, 377, 392, 452, 9, 29, 34, 44,
- 84, 129, 134, 144, 154, 159, 204, 209,
- 384, 404, 4, 19, 79, 379, 454, 3,
- 11, 35, 36, 38, 78, 86, 135, 136,
- 138, 160, 161, 163, 210, 211, 378, 386,
- 410, 411, 10, 37, 85, 137, 162, 212,
- 385, 412, 460, 12, 87, 387, 39, 139,
- 164, 214, 414, 14, 89, 389, 13, 88,
- 388, 21, 45, 46, 48, 96, 145, 146,
- 148, 170, 171, 173, 220, 221, 396, 420,
- 421, 20, 47, 95, 147, 172, 395, 22,
- 97, 397, 49, 149, 174, 24, 23, 98,
- 18, 51, 55, 56, 58, 66, 175, 176,
- 178, 180, 181, 183, 190, 191, 193, 393,
- 426, 430, 431, 441, 50, 57, 65, 177,
- 182, 192, 425, 432, 440, 52, 67, 427,
- 59, 179, 184, 194, 54, 69, 429, 53,
- 61, 185, 186, 188, 428, 436, 60, 187,
- 435, 62, 437, 189, 64, 63, 71, 195,
- 196, 198, 70, 197, 445, 72, 447, 199,
- 74, 73, 68, 101, 105, 106, 108, 116,
- 225, 226, 228, 230, 231, 233, 240, 241,
- 476, 480, 100, 107, 115, 227, 232, 242,
- 475, 482, 102, 117, 477, 109, 229, 234,
- 104, 103, 111, 235, 236, 238, 486, 110,
- 237, 485, 112, 239, 114, 113, 121, 245,
- 246, 248, 120, 247, 122, 314, 322, 362,
- 364, 372, 374, 251, 255, 256, 258, 266,
- 275, 276, 278, 280, 281, 283, 290, 291,
- 326, 330, 331, 333, 341, 250, 257, 265,
- 277, 282, 292, 325, 332, 340, 252, 267,
- 327, 342, 259, 279, 284, 334, 254, 269,
- 329, 253, 261, 285, 286, 288, 328, 336,
- 260, 287, 335, 262, 337, 289, 264, 339,
- 263, 338, 271, 295, 296, 298, 346, 270,
- 297, 345, 272, 347, 274, 273, 268, 301,
- 305, 306, 308, 316, 300, 307, 315, 302,
- 317, 309, 304, 303, 311, 310, 312, 313,
- 321, 320, 351, 355, 356, 358, 366, 350,
- 357, 365, 352, 367, 359, 354, 353, 361,
- 360, 363, 371, 370, 373, 501, 505, 506,
- 508, 516, 525, 526, 528, 530, 531, 533,
- 540, 543, 576, 580, 581, 500, 507, 515,
- 527, 532, 542, 575, 582, 502, 517, 577,
- 509, 529, 584, 504, 503, 511, 535, 536,
- 578, 510, 537, 585, 512, 587, 514, 513,
- 521, 545, 546, 596, 520, 547, 522, 598,
- 572, 518, 551, 555, 556, 558, 550, 557,
- 565, 552, 567, 554, 553, 561, 560, 562,
- 563, 570, 568, 601, 605, 606, 600, 607,
- 602, 609, 611, 610, 612, 622,
-};
-
-static long _vq_fitmap_res0_96_1024_3[] = {
- 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0,
-};
-
-static long _vq_fitlength_res0_96_1024_3[] = {
- 494, 494, 494, 494, 494, 494, 494, 494,
- 494, 494, 494, 494, 494, 494, 494, 494,
-};
-
-static encode_aux_pigeonhole _vq_auxp_res0_96_1024_3 = {
- -3, 1, 6, 2,
- _vq_pigeonmap_res0_96_1024_3,
- 494,
- _vq_fitlist_res0_96_1024_3,
- _vq_fitmap_res0_96_1024_3,
- _vq_fitlength_res0_96_1024_3
-};
-
-static static_codebook _vq_book_res0_96_1024_3 = {
- 4, 625,
- _vq_lengthlist_res0_96_1024_3,
- 1, -533200896, 1611661312, 3, 0,
- _vq_quantlist_res0_96_1024_3,
- NULL,
- &_vq_auxt_res0_96_1024_3,
- &_vq_auxp_res0_96_1024_3,
- 0
-};
-
-
-#endif
diff --git a/lib/books/res0_96_1024_4.vqh b/lib/books/res0_96_1024_4.vqh
deleted file mode 100644
index 410bbb3b..00000000
--- a/lib/books/res0_96_1024_4.vqh
+++ /dev/null
@@ -1,99 +0,0 @@
-/********************************************************************
- * *
- * 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_res0_96_1024_4_VQH_
-#define _V_res0_96_1024_4_VQH_
-#include "codebook.h"
-
-static long _vq_quantlist_res0_96_1024_4[] = {
- 3,
- 2,
- 4,
- 0,
- 6,
-};
-
-static long _vq_lengthlist_res0_96_1024_4[] = {
- 5, 5, 5, 8, 8, 6, 6, 6, 9, 9, 5, 6, 6, 9, 8, 8,
- 9, 9,11,11, 8, 9, 9,11,11, 6, 7, 6, 9, 9, 6, 7,
- 7,10,10, 6, 7, 7,10,10, 9,10,10,12,12, 9,10,10,
- 12,12, 6, 6, 6, 9, 9, 6, 7, 7,10,10, 6, 7, 7,10,
- 10, 9,10,10,12,12, 9,10,10,12,12, 8, 9, 9,12,12,
- 9,10,10,13,13, 9,10,10,12,13,12,13,13,14,14,12,
- 13,13,15,15, 8, 9, 9,12,12, 9,10,10,12,13, 9,10,
- 10,13,13,12,12,12,15,15,12,13,12,15,14, 6, 7, 7,
- 9, 9, 7, 8, 8,10,10, 7, 7, 7,10,10, 9,10,10,12,
- 13, 9,10,10,13,13, 7, 8, 8,10,10, 8, 8, 8,11,11,
- 8, 8, 8,11,10,10,11,11,13,13,10,11,11,13,13, 7,
- 8, 8,10,10, 7, 8, 8,11,11, 7, 8, 8,11,11,10,11,
- 11,13,13,10,11,11,13,13, 9,10,10,13,13,10,11,11,
- 13,13,10,11,11,13,13,13,13,13,15,15,13,14,13,15,
- 15, 9,10,10,13,13,10,11,11,13,13,10,11,11,14,13,
- 13,13,13,16,15,13,13,13,15,15, 6, 7, 7, 9, 9, 7,
- 8, 7,10,10, 7, 7, 8,10,10, 9,10,10,13,12, 9,10,
- 10,12,12, 7, 8, 8,10,10, 8, 8, 8,11,10, 7, 8, 8,
- 11,10,10,11,11,13,13,10,11,11,13,13, 7, 8, 8,10,
- 10, 7, 8, 8,11,11, 7, 8, 8,11,10,10,11,11,13,13,
- 10,11,11,13,12, 9,10,10,13,13,10,11,11,13,13,10,
- 11,11,13,13,13,13,13,15,15,13,13,13,15,15, 9,10,
- 11,13,13,10,11,11,13,13,10,11,11,13,13,13,14,13,
- 15,15,13,13,13,15,15, 8,10, 9,12,12,10,11,11,13,
- 13,10,10,11,13,13,12,13,13,16,15,12,13,13,15,15,
- 9,11,11,13,13,10,11,11,14,14,11,11,11,14,14,13,
- 14,14,15,15,13,14,14,16,15, 9,10,11,13,13,11,11,
- 11,14,14,10,11,11,13,14,13,14,13,16,15,14,14,14,
- 16,15,13,13,13,16,15,13,14,14,16,15,13,14,14,15,
- 16,16,15,15,16,17,16,16,15,17,17,13,13,14,15,16,
- 13,14,14,15,16,13,14,14,15,16,15,15,15,16,17,15,
- 15,15,16,18, 8,10,10,12,12,10,11,11,13,13,10,11,
- 11,13,13,13,13,14,15,15,12,14,13,15,15, 9,11,11,
- 13,13,11,11,11,14,14,10,11,11,14,13,13,14,14,15,
- 15,13,14,14,16,15, 9,11,11,13,13,10,11,11,13,14,
- 11,11,11,13,13,13,14,14,15,16,14,14,14,16,15,13,
- 14,14,15,14,13,14,13,15,16,13,13,14,15,16,16,15,
- 16,17,18,15,15,16,16,17,13,14,13,15,15,13,13,13,
- 16,15,13,14,13,15,16,15,16,15,17,18,15,15,15,18,
- 17,
-};
-
-static float _vq_quantthresh_res0_96_1024_4[] = {
- -2, -0.5, 0.5, 2,
-};
-
-static long _vq_quantmap_res0_96_1024_4[] = {
- 3, 1, 0, 2, 4,
-};
-
-static encode_aux_threshmatch _vq_auxt_res0_96_1024_4 = {
- _vq_quantthresh_res0_96_1024_4,
- _vq_quantmap_res0_96_1024_4,
- 5,
- 5
-};
-
-static static_codebook _vq_book_res0_96_1024_4 = {
- 4, 625,
- _vq_lengthlist_res0_96_1024_4,
- 1, -533200896, 1611661312, 3, 0,
- _vq_quantlist_res0_96_1024_4,
- NULL,
- &_vq_auxt_res0_96_1024_4,
- NULL,
- 0
-};
-
-
-#endif
diff --git a/lib/books/res0_96_1024_5.vqh b/lib/books/res0_96_1024_5.vqh
deleted file mode 100644
index 96d70c38..00000000
--- a/lib/books/res0_96_1024_5.vqh
+++ /dev/null
@@ -1,70 +0,0 @@
-/********************************************************************
- * *
- * 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_res0_96_1024_5_VQH_
-#define _V_res0_96_1024_5_VQH_
-#include "codebook.h"
-
-static long _vq_quantlist_res0_96_1024_5[] = {
- 8,
- 7,
- 9,
- 5,
- 11,
- 3,
- 13,
- 0,
- 16,
-};
-
-static long _vq_lengthlist_res0_96_1024_5[] = {
- 1, 4, 4, 6, 6, 6, 6, 7, 7, 4, 6, 6, 9, 9, 9, 9,
- 11,11, 4, 6, 6, 9, 9, 9, 9,11,11, 6, 9, 9,12,11,
- 11,12,13,13, 6, 9, 9,12,12,12,12,13,14, 6, 9, 9,
- 12,12,13,13,15,14, 6, 9, 9,12,12,13,13,15,15, 8,
- 12,12,14,14,15,15,16,17, 8,12,12,14,14,15,16,16,
- 17,
-};
-
-static float _vq_quantthresh_res0_96_1024_5[] = {
- -6.5, -4, -2, -0.5, 0.5, 2, 4, 6.5,
-};
-
-static long _vq_quantmap_res0_96_1024_5[] = {
- 7, 5, 3, 1, 0, 2, 4, 6,
- 8,
-};
-
-static encode_aux_threshmatch _vq_auxt_res0_96_1024_5 = {
- _vq_quantthresh_res0_96_1024_5,
- _vq_quantmap_res0_96_1024_5,
- 9,
- 9
-};
-
-static static_codebook _vq_book_res0_96_1024_5 = {
- 2, 81,
- _vq_lengthlist_res0_96_1024_5,
- 1, -529530880, 1611661312, 5, 0,
- _vq_quantlist_res0_96_1024_5,
- NULL,
- &_vq_auxt_res0_96_1024_5,
- NULL,
- 0
-};
-
-
-#endif
diff --git a/lib/books/res0_96_1024_6.vqh b/lib/books/res0_96_1024_6.vqh
deleted file mode 100644
index 00b37dc0..00000000
--- a/lib/books/res0_96_1024_6.vqh
+++ /dev/null
@@ -1,70 +0,0 @@
-/********************************************************************
- * *
- * 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_res0_96_1024_6_VQH_
-#define _V_res0_96_1024_6_VQH_
-#include "codebook.h"
-
-static long _vq_quantlist_res0_96_1024_6[] = {
- 8,
- 7,
- 9,
- 5,
- 11,
- 3,
- 13,
- 0,
- 16,
-};
-
-static long _vq_lengthlist_res0_96_1024_6[] = {
- 3, 4, 4, 5, 5, 6, 6, 7, 7, 4, 5, 4, 6, 6, 7, 7,
- 8, 8, 4, 4, 4, 6, 6, 7, 7, 8, 8, 6, 6, 6, 8, 8,
- 9, 9,10,10, 6, 6, 6, 8, 8, 9, 9,10,10, 7, 8, 8,
- 9, 9,10,10,11,11, 7, 8, 8, 9, 9,10,10,11,11, 8,
- 9, 9,11,10,11,11,12,12, 8, 9, 9,10,11,11,11,12,
- 12,
-};
-
-static float _vq_quantthresh_res0_96_1024_6[] = {
- -6.5, -4, -2, -0.5, 0.5, 2, 4, 6.5,
-};
-
-static long _vq_quantmap_res0_96_1024_6[] = {
- 7, 5, 3, 1, 0, 2, 4, 6,
- 8,
-};
-
-static encode_aux_threshmatch _vq_auxt_res0_96_1024_6 = {
- _vq_quantthresh_res0_96_1024_6,
- _vq_quantmap_res0_96_1024_6,
- 9,
- 9
-};
-
-static static_codebook _vq_book_res0_96_1024_6 = {
- 2, 81,
- _vq_lengthlist_res0_96_1024_6,
- 1, -529530880, 1611661312, 5, 0,
- _vq_quantlist_res0_96_1024_6,
- NULL,
- &_vq_auxt_res0_96_1024_6,
- NULL,
- 0
-};
-
-
-#endif
diff --git a/lib/books/res0_96_1024_7.vqh b/lib/books/res0_96_1024_7.vqh
deleted file mode 100644
index 95c2a9de..00000000
--- a/lib/books/res0_96_1024_7.vqh
+++ /dev/null
@@ -1,86 +0,0 @@
-/********************************************************************
- * *
- * 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_res0_96_1024_7_VQH_
-#define _V_res0_96_1024_7_VQH_
-#include "codebook.h"
-
-static long _vq_quantlist_res0_96_1024_7[] = {
- 17,
- 16,
- 18,
- 14,
- 20,
- 12,
- 22,
- 9,
- 25,
- 6,
- 28,
- 3,
- 31,
- 0,
- 34,
-};
-
-static long _vq_lengthlist_res0_96_1024_7[] = {
- 3, 4, 4, 5, 5, 6, 6, 7, 6, 7, 7, 8, 8, 9, 9, 5,
- 5, 5, 6, 6, 7, 7, 7, 7, 8, 8, 9, 9,10,10, 4, 5,
- 5, 6, 6, 7, 7, 8, 7, 8, 8, 9, 9,10,10, 6, 7, 7,
- 8, 8, 8, 8, 9, 9, 9, 9,10,10,11,11, 6, 7, 7, 8,
- 8, 8, 8, 9, 9, 9, 9,10,10,11,11, 7, 8, 8, 9, 9,
- 9, 9,10, 9,10,10,11,11,12,12, 7, 8, 8, 9, 9, 9,
- 9,10,10,10,10,11,11,12,12, 8, 9, 9,10,10,10,10,
- 11,10,11,11,12,12,13,12, 8, 9, 9,10,10,10,10,11,
- 10,11,11,12,12,13,12, 8, 9, 9,10,10,11,11,11,11,
- 12,12,13,13,13,14, 8, 9, 9,10,10,11,11,11,11,12,
- 12,13,13,14,14,10,11,11,12,12,12,12,13,13,13,13,
- 14,14,15,15,10,11,11,12,12,12,12,13,13,13,14,14,
- 14,15,15,12,13,13,14,14,14,14,14,14,15,15,15,16,
- 16,16,12,13,13,14,13,14,14,14,14,14,15,15,16,16,
- 16,
-};
-
-static float _vq_quantthresh_res0_96_1024_7[] = {
- -15.5, -12.5, -9.5, -6.5, -4, -2, -0.5, 0.5,
- 2, 4, 6.5, 9.5, 12.5, 15.5,
-};
-
-static long _vq_quantmap_res0_96_1024_7[] = {
- 13, 11, 9, 7, 5, 3, 1, 0,
- 2, 4, 6, 8, 10, 12, 14,
-};
-
-static encode_aux_threshmatch _vq_auxt_res0_96_1024_7 = {
- _vq_quantthresh_res0_96_1024_7,
- _vq_quantmap_res0_96_1024_7,
- 15,
- 15
-};
-
-static static_codebook _vq_book_res0_96_1024_7 = {
- 2, 225,
- _vq_lengthlist_res0_96_1024_7,
- 1, -527368192, 1611661312, 6, 0,
- _vq_quantlist_res0_96_1024_7,
- NULL,
- &_vq_auxt_res0_96_1024_7,
- NULL,
- 0
-};
-
-
-#endif
diff --git a/lib/books/res0_96_1024_8.vqh b/lib/books/res0_96_1024_8.vqh
deleted file mode 100644
index 28002ca0..00000000
--- a/lib/books/res0_96_1024_8.vqh
+++ /dev/null
@@ -1,124 +0,0 @@
-/********************************************************************
- * *
- * 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_res0_96_1024_8_VQH_
-#define _V_res0_96_1024_8_VQH_
-#include "codebook.h"
-
-static long _vq_quantlist_res0_96_1024_8[] = {
- 35,
- 34,
- 36,
- 32,
- 38,
- 30,
- 40,
- 27,
- 43,
- 24,
- 46,
- 21,
- 49,
- 18,
- 52,
- 15,
- 55,
- 11,
- 59,
- 7,
- 63,
- 4,
- 66,
- 0,
- 70,
-};
-
-static long _vq_lengthlist_res0_96_1024_8[] = {
- 5, 5, 5, 5, 6, 6, 6, 6, 6, 7, 7, 8, 8, 8, 8, 8,
- 8, 9, 9,10,10,10,10,11,11, 6, 6, 6, 6, 6, 6, 6,
- 7, 6, 7, 7, 8, 8, 9, 9, 8, 8, 9, 9,10,10,10,11,
- 11,11, 6, 6, 6, 6, 6, 6, 6, 7, 6, 7, 7, 8, 8, 9,
- 9, 8, 8, 9, 9,10,10,11,10,11,11, 7, 7, 7, 7, 7,
- 7, 7, 7, 7, 8, 8, 9, 9, 9, 9, 9, 9,10,10,10,11,
- 11,11,11,12, 7, 7, 7, 7, 7, 7, 7, 7, 7, 8, 8, 9,
- 9, 9, 9, 9, 9,10,10,10,11,11,11,11,12, 8, 8, 8,
- 8, 8, 8, 8, 8, 8, 9, 9, 9, 9,10,10,10,10,10,10,
- 11,11,11,12,12,12, 8, 8, 8, 8, 8, 8, 8, 8, 8, 9,
- 9, 9, 9,10,10,10,10,10,10,11,11,11,12,12,12, 9,
- 9, 9, 8, 9, 9, 9, 9, 9,10, 9,10,10,11,11,10,11,
- 11,11,12,12,12,12,13,13, 9, 9, 9, 9, 9, 9, 9, 9,
- 9,10, 9,10,10,11,11,11,11,11,11,12,12,12,12,12,
- 13,10,10,10,10,10,10,10,10,10,11,11,11,11,12,12,
- 11,11,12,12,13,13,13,14,13,14,10,10,10,10,10,10,
- 10,10,10,11,11,11,11,12,12,11,11,12,12,12,13,13,
- 13,14,14,11,11,11,11,11,11,11,11,11,12,12,13,12,
- 13,13,13,13,13,13,14,14,14,14,14,15,11,11,11,11,
- 11,11,11,11,11,12,12,12,12,13,13,13,13,13,13,14,
- 14,14,14,14,14,13,12,12,13,12,12,12,13,13,13,13,
- 14,14,15,14,14,14,14,14,15,15,15,15,16,16,13,13,
- 12,12,12,12,12,13,13,13,13,14,13,14,14,14,14,14,
- 14,15,15,15,16,16,16,12,13,13,13,14,13,14,14,14,
- 14,14,15,15,15,15,15,16,16,15,17,18,16,18,16,16,
- 12,13,13,13,13,13,13,14,14,14,14,15,15,15,15,15,
- 15,15,15,16,17,17,16,17,16,15,15,15,16,16,16,15,
- 16,16,17,16,17,16,18,17,16,16,17,17,19,18,19,18,
- 18,19,15,16,15,15,15,16,16,15,16,16,16,16,17,16,
- 16,16,16,17,18,17,18,17,18,17,18,16,18,19,18,18,
- 19,19,19,18,19,18,18,19,18,18,19,18,18,19,19,19,
- 19,19,19,19,17,18,17,18,18,19,18,18,18,19,18,18,
- 18,19,18,18,18,18,17,18,19,19,19,19,19,19,19,18,
- 19,19,19,18,19,19,19,19,19,19,19,18,18,19,19,18,
- 19,19,19,19,19,18,19,19,19,18,19,18,19,19,19,19,
- 19,19,18,19,19,19,19,19,19,19,19,19,19,19,19,19,
- 19,19,18,19,19,19,19,19,19,19,19,19,19,19,19,19,
- 19,19,19,18,19,19,19,19,19,19,19,19,19,19,19,19,
- 19,19,19,19,19,19,19,19,19,19,19,19,19,19,19,19,
- 19,
-};
-
-static float _vq_quantthresh_res0_96_1024_8[] = {
- -33, -29.5, -26, -22, -18.5, -15.5, -12.5, -9.5,
- -6.5, -4, -2, -0.5, 0.5, 2, 4, 6.5,
- 9.5, 12.5, 15.5, 18.5, 22, 26, 29.5, 33,
-};
-
-static long _vq_quantmap_res0_96_1024_8[] = {
- 23, 21, 19, 17, 15, 13, 11, 9,
- 7, 5, 3, 1, 0, 2, 4, 6,
- 8, 10, 12, 14, 16, 18, 20, 22,
- 24,
-};
-
-static encode_aux_threshmatch _vq_auxt_res0_96_1024_8 = {
- _vq_quantthresh_res0_96_1024_8,
- _vq_quantmap_res0_96_1024_8,
- 25,
- 25
-};
-
-static static_codebook _vq_book_res0_96_1024_8 = {
- 2, 625,
- _vq_lengthlist_res0_96_1024_8,
- 1, -525238272, 1611661312, 7, 0,
- _vq_quantlist_res0_96_1024_8,
- NULL,
- &_vq_auxt_res0_96_1024_8,
- NULL,
- 0
-};
-
-
-#endif
diff --git a/lib/books/res0_96_1024_9.vqh b/lib/books/res0_96_1024_9.vqh
deleted file mode 100644
index 0ad3bffc..00000000
--- a/lib/books/res0_96_1024_9.vqh
+++ /dev/null
@@ -1,131 +0,0 @@
-/********************************************************************
- * *
- * 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_res0_96_1024_9_VQH_
-#define _V_res0_96_1024_9_VQH_
-#include "codebook.h"
-
-static long _vq_quantlist_res0_96_1024_9[] = {
- 123,
- 122,
- 124,
- 120,
- 126,
- 118,
- 128,
- 115,
- 131,
- 112,
- 134,
- 109,
- 137,
- 106,
- 140,
- 103,
- 143,
- 99,
- 147,
- 95,
- 151,
- 92,
- 154,
- 88,
- 158,
- 84,
- 162,
- 80,
- 166,
- 76,
- 170,
- 72,
- 174,
- 67,
- 179,
- 62,
- 184,
- 57,
- 189,
- 52,
- 194,
- 51,
- 195,
- 45,
- 201,
- 39,
- 207,
- 33,
- 213,
- 27,
- 219,
- 21,
- 225,
- 15,
- 231,
- 8,
- 238,
- 0,
- 246,
-};
-
-static long _vq_lengthlist_res0_96_1024_9[] = {
- 3, 3, 3, 3, 3, 4, 4, 4, 5, 5, 5, 6, 6, 7, 7, 8,
- 8, 8, 8, 9, 9,10,10,10,11, 8, 8, 8, 9, 9, 9,10,
- 10,10,10,11,11,12,12,13,13,13,13,13,13,14,15,16,
- 15,16,15,17,16,17,18,17,18,17,17,
-};
-
-static float _vq_quantthresh_res0_96_1024_9[] = {
- -119, -111.5, -105, -99, -93, -87, -81, -75,
- -71.5, -68.5, -63.5, -58.5, -53.5, -49, -45, -41,
- -37, -33, -29.5, -26, -22, -18.5, -15.5, -12.5,
- -9.5, -6.5, -4, -2, -0.5, 0.5, 2, 4,
- 6.5, 9.5, 12.5, 15.5, 18.5, 22, 26, 29.5,
- 33, 37, 41, 45, 49, 53.5, 58.5, 63.5,
- 68.5, 71.5, 75, 81, 87, 93, 99, 105,
- 111.5, 119,
-};
-
-static long _vq_quantmap_res0_96_1024_9[] = {
- 57, 55, 53, 51, 49, 47, 45, 43,
- 41, 39, 37, 35, 33, 31, 29, 27,
- 25, 23, 21, 19, 17, 15, 13, 11,
- 9, 7, 5, 3, 1, 0, 2, 4,
- 6, 8, 10, 12, 14, 16, 18, 20,
- 22, 24, 26, 28, 30, 32, 34, 36,
- 38, 40, 42, 44, 46, 48, 50, 52,
- 54, 56, 58,
-};
-
-static encode_aux_threshmatch _vq_auxt_res0_96_1024_9 = {
- _vq_quantthresh_res0_96_1024_9,
- _vq_quantmap_res0_96_1024_9,
- 59,
- 59
-};
-
-static static_codebook _vq_book_res0_96_1024_9 = {
- 1, 59,
- _vq_lengthlist_res0_96_1024_9,
- 1, -522272768, 1611661312, 8, 0,
- _vq_quantlist_res0_96_1024_9,
- NULL,
- &_vq_auxt_res0_96_1024_9,
- NULL,
- 0
-};
-
-
-#endif
diff --git a/lib/books/res0_96_1024aux.vqh b/lib/books/res0_96_1024aux.vqh
deleted file mode 100644
index b2f98367..00000000
--- a/lib/books/res0_96_1024aux.vqh
+++ /dev/null
@@ -1,99 +0,0 @@
-/********************************************************************
- * *
- * 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 huff/huffbuld
-
- ********************************************************************/
-
-#ifndef _V_res0_96_1024aux_VQH_
-#define _V_res0_96_1024aux_VQH_
-#include "codebook.h"
-
-static long _huff_lengthlist_res0_96_1024aux[] = {
- 5, 7,12,11,14,12,18,17,18,19, 8, 7, 9,11,11,13,
- 18,16,19,19,14,10,11,13,13,18,19,19,19,19,10,11,
- 13,12,14,13,19,18,19,19,14,12,14,15,16,18,18,19,
- 19,19,11,12,16,13,18,13,19,18,19,19,16,17,19,19,
- 19,19,19,19,19,19,14,16,19,19,19,18,19,19,19,19,
- 19,18,19,19,19,19,19,19,19,19,19,19,19,19,19,19,
- 19,19,19,19, 7, 7,10,11,12,13,19,16,19,19, 6, 3,
- 4, 6, 8, 9,14,15,19,19,10, 5, 5, 8, 8,12,16,18,
- 19,19, 9, 6, 7, 7,10,10,15,15,19,19,12, 8, 8,10,
- 11,13,16,18,19,19,10, 8,11, 9,13,10,16,15,18,19,
- 16,14,15,15,17,17,17,18,19,19,14,14,17,15,18,15,
- 18,16,19,19,18,18,19,19,19,19,19,18,19,19,19,19,
- 19,19,19,19,19,19,19,19,12,10,12,14,15,16,19,19,
- 19,19, 9, 4, 5, 8, 9,11,16,17,19,19,11, 5, 4, 8,
- 8,13,16,17,19,19,13, 7, 8, 9,11,12,17,17,19,19,
- 14, 8, 8,10,10,14,16,17,19,19,12,10,11,11,14,13,
- 18,17,19,19,19,14,15,15,16,17,18,19,19,19,12,14,
- 15,15,17,16,19,19,19,19,19,19,18,19,19,19,19,19,
- 19,19,19,19,19,19,19,19,19,19,19,19, 9,10,13,12,
- 15,13,18,17,19,19, 9, 6, 7, 7,10, 9,16,14,18,19,
- 13, 7, 7, 9,10,12,16,17,19,19,11, 7, 9, 7,11, 9,
- 16,14,19,19,14, 9,10,11,12,13,19,19,19,19,11, 9,
- 11, 9,13,10,17,14,19,19,19,14,16,15,18,15,18,19,
- 19,19,13,14,16,13,17,12,18,17,19,19,19,18,19,18,
- 19,19,19,18,19,19,19,19,19,19,19,19,19,19,19,19,
- 14,12,13,14,15,17,19,19,19,19,11, 7, 8, 9,10,11,
- 16,16,19,19,13, 7, 7, 9,10,13,17,17,19,19,14, 8,
- 9, 9,11,11,16,17,19,19,16, 9, 9,11,12,14,17,18,
- 19,19,13,10,11,10,13,12,17,16,19,19,18,14,16,16,
- 17,17,18,19,19,19,15,15,15,14,19,15,19,17,19,19,
- 19,19,19,18,18,18,19,19,19,19,19,19,19,19,19,19,
- 19,19,19,19, 9,11,15,13,17,13,18,16,19,19,10, 8,
- 9, 8,11, 9,17,14,19,19,17, 9,10,10,12,13,18,17,
- 19,19,12, 8,10, 8,12, 9,16,14,19,19,16,10,11,11,
- 14,13,17,17,19,19,12, 9,11, 8,12, 9,16,13,19,19,
- 19,14,16,15,17,14,19,18,19,19,14,12,15,12,16,11,
- 18,14,19,19,19,18,19,17,19,17,19,19,19,19,19,19,
- 19,19,19,19,19,19,19,19,12,13,15,15,17,18,19,19,
- 19,19,15,10,10,10,12,12,17,16,19,19,18,11,11,12,
- 13,13,17,15,19,19,13, 9,11, 9,13,11,16,15,19,19,
- 17,11,12,12,10,12,13,12,19,19,12,10,13,10,14,11,
- 15,13,19,19,16,14,16,15,13,13,13,12,18,19,14,13,
- 16,13,16,12,14,12,18,19,18,18,19,18,18,16,16,17,
- 18,19,19,19,19,19,19,19,19,19,19,19,10,13,16,14,
- 19,16,19,16,19,19,13,11,11,11,12,11,15,15,18,19,
- 19,13,12,14,13,14,15,14,18,19,12,10,11,10,12,10,
- 14,14,18,19,16,11,11,12, 8,11, 9,11,18,19,10,10,
- 12, 9,13, 9,11,10,16,19,15,12,12,11, 8, 9, 7, 9,
- 14,19,11,11,14,10,10, 9, 8, 8,13,19,16,18,18,16,
- 17,14,13,13,17,19,19,19,19,19,19,19,19,19,19,19,
- 12,15,17,17,18,18,18,19,19,19,14,13,13,14,13,15,
- 14,19,19,19,19,15,13,16,12,16,14,17,19,19,16,14,
- 14,14,13,14,13,15,19,19,19,14,12,15, 8,13, 9,12,
- 18,19,13,13,16,12,13,11,11,12,19,19,18,14,11,13,
- 7,10, 6, 8,13,19,14,13,13,12, 9,10, 6, 7,13,19,
- 16,19,18,16,14,15,12,12,17,19,19,19,19,19,19,18,
- 19,19,19,19,15,18,18,19,19,19,18,19,19,19,16,16,
- 16,15,15,17,15,18,19,19,19,18,16,18,15,19,14,17,
- 19,19,18,17,16,17,14,16,14,16,19,19,19,18,15,17,
- 11,15,11,14,19,19,18,18,17,17,16,14,14,15,19,19,
- 19,17,14,15, 9,13, 8,10,15,19,19,19,15,16,11,13,
- 9, 9,14,19,19,19,19,19,15,17,14,14,19,19,19,19,
- 19,19,19,19,19,19,19,19,
-};
-
-static static_codebook _huff_book_res0_96_1024aux = {
- 3, 1000,
- _huff_lengthlist_res0_96_1024aux,
- 0, 0, 0, 0, 0,
- NULL,
- NULL,
- NULL,
- 0
-};
-
-
-#endif
diff --git a/lib/books/res0_96_128_1.vqh b/lib/books/res0_96_128_1.vqh
deleted file mode 100644
index 2a5eff0b..00000000
--- a/lib/books/res0_96_128_1.vqh
+++ /dev/null
@@ -1,63 +0,0 @@
-/********************************************************************
- * *
- * 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_res0_96_128_1_VQH_
-#define _V_res0_96_128_1_VQH_
-#include "codebook.h"
-
-static long _vq_quantlist_res0_96_128_1[] = {
- 1,
- 0,
- 2,
-};
-
-static long _vq_lengthlist_res0_96_128_1[] = {
- 2, 4, 4, 4, 7, 6, 4, 6, 6, 4, 7, 7, 7,10,10, 7,
- 9,10, 4, 7, 7, 7,10, 9, 7,10, 9, 4, 7, 7, 7,10,
- 10, 7,10,10, 7,10,10,10,12,13,10,13,13, 7,10,10,
- 9,13,12,10,13,12, 4, 7, 7, 7,10,10, 7,10,10, 7,
- 10,10,10,13,12, 9,11,13, 7,10,10,10,13,13,10,13,
- 12,
-};
-
-static float _vq_quantthresh_res0_96_128_1[] = {
- -0.5, 0.5,
-};
-
-static long _vq_quantmap_res0_96_128_1[] = {
- 1, 0, 2,
-};
-
-static encode_aux_threshmatch _vq_auxt_res0_96_128_1 = {
- _vq_quantthresh_res0_96_128_1,
- _vq_quantmap_res0_96_128_1,
- 3,
- 3
-};
-
-static static_codebook _vq_book_res0_96_128_1 = {
- 4, 81,
- _vq_lengthlist_res0_96_128_1,
- 1, -535822336, 1611661312, 2, 0,
- _vq_quantlist_res0_96_128_1,
- NULL,
- &_vq_auxt_res0_96_128_1,
- NULL,
- 0
-};
-
-
-#endif
diff --git a/lib/books/res0_96_128_2.vqh b/lib/books/res0_96_128_2.vqh
deleted file mode 100644
index 9c2f3261..00000000
--- a/lib/books/res0_96_128_2.vqh
+++ /dev/null
@@ -1,63 +0,0 @@
-/********************************************************************
- * *
- * 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_res0_96_128_2_VQH_
-#define _V_res0_96_128_2_VQH_
-#include "codebook.h"
-
-static long _vq_quantlist_res0_96_128_2[] = {
- 1,
- 0,
- 2,
-};
-
-static long _vq_lengthlist_res0_96_128_2[] = {
- 5, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 7, 6,
- 6, 7, 6, 6, 6, 6, 7, 6, 6, 7, 6, 6, 6, 6, 7, 7,
- 7, 6, 6, 6, 6, 7, 6, 6, 6, 8, 7, 8, 8, 6, 6, 7,
- 6, 8, 7, 7, 7, 8, 6, 6, 6, 6, 6, 6, 6, 7, 7, 6,
- 7, 6, 7, 8, 7, 6, 6, 8, 6, 6, 7, 7, 8, 8, 6, 8,
- 7,
-};
-
-static float _vq_quantthresh_res0_96_128_2[] = {
- -0.5, 0.5,
-};
-
-static long _vq_quantmap_res0_96_128_2[] = {
- 1, 0, 2,
-};
-
-static encode_aux_threshmatch _vq_auxt_res0_96_128_2 = {
- _vq_quantthresh_res0_96_128_2,
- _vq_quantmap_res0_96_128_2,
- 3,
- 3
-};
-
-static static_codebook _vq_book_res0_96_128_2 = {
- 4, 81,
- _vq_lengthlist_res0_96_128_2,
- 1, -535822336, 1611661312, 2, 0,
- _vq_quantlist_res0_96_128_2,
- NULL,
- &_vq_auxt_res0_96_128_2,
- NULL,
- 0
-};
-
-
-#endif
diff --git a/lib/books/res0_96_128_3.vqh b/lib/books/res0_96_128_3.vqh
deleted file mode 100644
index 93a7eef6..00000000
--- a/lib/books/res0_96_128_3.vqh
+++ /dev/null
@@ -1,70 +0,0 @@
-/********************************************************************
- * *
- * 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_res0_96_128_3_VQH_
-#define _V_res0_96_128_3_VQH_
-#include "codebook.h"
-
-static long _vq_quantlist_res0_96_128_3[] = {
- 8,
- 7,
- 9,
- 5,
- 11,
- 3,
- 13,
- 0,
- 16,
-};
-
-static long _vq_lengthlist_res0_96_128_3[] = {
- 3, 3, 3, 5, 5, 8, 8, 8, 8, 4, 4, 4, 6, 6, 8, 8,
- 9, 8, 4, 4, 4, 6, 6, 8, 8, 8, 9, 6, 7, 7,10,10,
- 11,11,11,11, 6, 7, 7,10,10,11,11,11,11, 9,10,10,
- 12,13,13,14,13,14, 9,10,10,12,12,13,14,13,13,11,
- 13,12,15,14,15,15,15,16,11,12,12,14,14,15,16,15,
- 15,
-};
-
-static float _vq_quantthresh_res0_96_128_3[] = {
- -6.5, -4, -2, -0.5, 0.5, 2, 4, 6.5,
-};
-
-static long _vq_quantmap_res0_96_128_3[] = {
- 7, 5, 3, 1, 0, 2, 4, 6,
- 8,
-};
-
-static encode_aux_threshmatch _vq_auxt_res0_96_128_3 = {
- _vq_quantthresh_res0_96_128_3,
- _vq_quantmap_res0_96_128_3,
- 9,
- 9
-};
-
-static static_codebook _vq_book_res0_96_128_3 = {
- 2, 81,
- _vq_lengthlist_res0_96_128_3,
- 1, -529530880, 1611661312, 5, 0,
- _vq_quantlist_res0_96_128_3,
- NULL,
- &_vq_auxt_res0_96_128_3,
- NULL,
- 0
-};
-
-
-#endif
diff --git a/lib/books/res0_96_128_4.vqh b/lib/books/res0_96_128_4.vqh
deleted file mode 100644
index aaf035cc..00000000
--- a/lib/books/res0_96_128_4.vqh
+++ /dev/null
@@ -1,100 +0,0 @@
-/********************************************************************
- * *
- * 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_res0_96_128_4_VQH_
-#define _V_res0_96_128_4_VQH_
-#include "codebook.h"
-
-static long _vq_quantlist_res0_96_128_4[] = {
- 24,
- 23,
- 25,
- 21,
- 27,
- 19,
- 29,
- 16,
- 32,
- 13,
- 35,
- 10,
- 38,
- 7,
- 41,
- 4,
- 44,
- 0,
- 48,
-};
-
-static long _vq_lengthlist_res0_96_128_4[] = {
- 4, 4, 4, 6, 6, 6, 6, 7, 7, 6, 7, 7, 7, 8, 8, 8,
- 9, 9, 9, 5, 4, 4, 6, 6, 6, 6, 7, 7, 7, 7, 7, 7,
- 8, 8, 9, 9, 9,10, 5, 4, 4, 6, 6, 6, 6, 7, 7, 7,
- 7, 7, 7, 8, 8, 9, 9,10,10, 7, 7, 7, 8, 8, 9, 9,
- 10,10,10,10,10,10,11,11,12,11,12,12, 7, 7, 7, 8,
- 8, 9, 9,10,10, 9,10,10,10,11,11,11,12,12,12, 9,
- 9, 9,10,11,11,11,12,12,12,12,13,13,13,13,14,14,
- 14,15,10, 9, 9,11,10,11,11,12,12,11,12,13,13,13,
- 13,14,14,15,15,11,12,11,12,12,13,13,13,13,13,13,
- 14,14,15,14,15,15,16,17,11,11,11,12,12,13,13,14,
- 14,14,13,14,14,15,14,15,14,15,15,11,12,12,14,14,
- 15,14,15,14,15,15,16,16,14,15,17,17,17,16,11,12,
- 12,13,14,14,14,15,14,15,15,16,15,16,16,17,16,17,
- 17,13,13,15,15,15,16,17,14,16,17,15,16,16,15,17,
- 17,17,17,17,13,14,13,15,15,15,15,16,15,16,16,17,
- 15,16,16,17,17,17,16,14,15,14,16,15,17,16,17,16,
- 16,17,17,17,16,17,16,17,16,17,14,15,14,16,14,17,
- 16,16,17,16,15,17,17,17,17,17,16,17,17,15,17,15,
- 17,15,17,16,17,17,17,17,16,17,17,17,17,17,17,17,
- 15,15,14,15,15,17,17,17,17,16,17,17,16,17,17,17,
- 17,17,17,15,15,16,17,15,17,16,17,16,16,17,17,17,
- 17,17,17,17,17,17,15,15,16,16,17,17,17,17,17,17,
- 17,17,17,17,17,17,17,17,17,
-};
-
-static float _vq_quantthresh_res0_96_128_4[] = {
- -22, -18.5, -15.5, -12.5, -9.5, -6.5, -4, -2,
- -0.5, 0.5, 2, 4, 6.5, 9.5, 12.5, 15.5,
- 18.5, 22,
-};
-
-static long _vq_quantmap_res0_96_128_4[] = {
- 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_res0_96_128_4 = {
- _vq_quantthresh_res0_96_128_4,
- _vq_quantmap_res0_96_128_4,
- 19,
- 19
-};
-
-static static_codebook _vq_book_res0_96_128_4 = {
- 2, 361,
- _vq_lengthlist_res0_96_128_4,
- 1, -526909440, 1611661312, 6, 0,
- _vq_quantlist_res0_96_128_4,
- NULL,
- &_vq_auxt_res0_96_128_4,
- NULL,
- 0
-};
-
-
-#endif
diff --git a/lib/books/res0_96_128_5.vqh b/lib/books/res0_96_128_5.vqh
deleted file mode 100644
index b4ef47af..00000000
--- a/lib/books/res0_96_128_5.vqh
+++ /dev/null
@@ -1,102 +0,0 @@
-/********************************************************************
- * *
- * 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_res0_96_128_5_VQH_
-#define _V_res0_96_128_5_VQH_
-#include "codebook.h"
-
-static long _vq_quantlist_res0_96_128_5[] = {
- 61,
- 60,
- 62,
- 58,
- 64,
- 56,
- 66,
- 53,
- 69,
- 50,
- 72,
- 47,
- 75,
- 44,
- 78,
- 41,
- 81,
- 37,
- 85,
- 33,
- 89,
- 30,
- 92,
- 26,
- 96,
- 22,
- 100,
- 18,
- 104,
- 14,
- 108,
- 10,
- 112,
- 5,
- 117,
- 0,
- 122,
-};
-
-static long _vq_lengthlist_res0_96_128_5[] = {
- 2, 2, 2, 5, 5, 5, 5, 6, 6, 7, 7, 8, 8, 9, 9, 9,
- 9,11,10, 6, 6, 7, 7, 9, 8, 9, 9,10,10,11,11,11,
- 11,13,14,12,14,
-};
-
-static float _vq_quantthresh_res0_96_128_5[] = {
- -58.5, -53.5, -49, -45, -41, -37, -33, -29.5,
- -26, -22, -18.5, -15.5, -12.5, -9.5, -6.5, -4,
- -2, -0.5, 0.5, 2, 4, 6.5, 9.5, 12.5,
- 15.5, 18.5, 22, 26, 29.5, 33, 37, 41,
- 45, 49, 53.5, 58.5,
-};
-
-static long _vq_quantmap_res0_96_128_5[] = {
- 35, 33, 31, 29, 27, 25, 23, 21,
- 19, 17, 15, 13, 11, 9, 7, 5,
- 3, 1, 0, 2, 4, 6, 8, 10,
- 12, 14, 16, 18, 20, 22, 24, 26,
- 28, 30, 32, 34, 36,
-};
-
-static encode_aux_threshmatch _vq_auxt_res0_96_128_5 = {
- _vq_quantthresh_res0_96_128_5,
- _vq_quantmap_res0_96_128_5,
- 37,
- 37
-};
-
-static static_codebook _vq_book_res0_96_128_5 = {
- 1, 37,
- _vq_lengthlist_res0_96_128_5,
- 1, -524386304, 1611661312, 7, 0,
- _vq_quantlist_res0_96_128_5,
- NULL,
- &_vq_auxt_res0_96_128_5,
- NULL,
- 0
-};
-
-
-#endif
diff --git a/lib/books/res0_96_128aux.vqh b/lib/books/res0_96_128aux.vqh
deleted file mode 100644
index 2ef5f208..00000000
--- a/lib/books/res0_96_128aux.vqh
+++ /dev/null
@@ -1,50 +0,0 @@
-/********************************************************************
- * *
- * 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 huff/huffbuld
-
- ********************************************************************/
-
-#ifndef _V_res0_96_128aux_VQH_
-#define _V_res0_96_128aux_VQH_
-#include "codebook.h"
-
-static long _huff_lengthlist_res0_96_128aux[] = {
- 5, 7,10,10,15,16, 6, 5, 7, 9,14,16,11, 9,10,12,
- 16,16,10, 9,13,11,14,16,15,14,16,16,16,16,16,16,
- 16,16,16,16, 5, 5, 9,10,13,16, 4, 2, 5, 7,16,16,
- 8, 5, 7,11,16,16, 9, 7,10,10,14,16,15,14,16,16,
- 16,16,16,16,16,16,16,16, 9, 8,12,14,16,16, 7, 4,
- 8,12,16,16,10, 7, 8,15,16,16,12,11,13,14,16,16,
- 16,16,16,16,16,16,16,16,16,16,16,16, 8, 8,13,11,
- 15,16, 7, 6,10,10,16,16,12, 8, 7, 9,16,16,11, 7,
- 6, 7,14,16,16,11,12,10,15,16,16,14,14,16,16,16,
- 11,13,16,16,16,16,12,13,12,12,16,16,15, 6, 5, 6,
- 14,16,12, 5, 4, 4,11,14,15, 9, 9, 8,13,15,16,15,
- 15,15,16,16,16,16,16,16,16,16,16,16,16,14,16,16,
- 16,10, 9,10,16,16,16, 8, 8, 8,16,16,16,13,13,13,
- 16,16,16,16,16,16,16,15,
-};
-
-static static_codebook _huff_book_res0_96_128aux = {
- 3, 216,
- _huff_lengthlist_res0_96_128aux,
- 0, 0, 0, 0, 0,
- NULL,
- NULL,
- NULL,
- 0
-};
-
-
-#endif
diff --git a/lib/codebook.h b/lib/codebook.h
deleted file mode 100644
index 7402c708..00000000
--- a/lib/codebook.h
+++ /dev/null
@@ -1,164 +0,0 @@
-/********************************************************************
- * *
- * 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: basic shared codebook operations
- last mod: $Id: codebook.h,v 1.8 2001/06/15 21:15:39 xiphmont Exp $
-
- ********************************************************************/
-
-#ifndef _V_CODEBOOK_H_
-#define _V_CODEBOOK_H_
-
-#include "ogg/ogg.h"
-
-/* This structure encapsulates huffman and VQ style encoding books; it
- doesn't do anything specific to either.
-
- valuelist/quantlist are nonNULL (and q_* significant) only if
- there's entry->value mapping to be done.
-
- If encode-side mapping must be done (and thus the entry needs to be
- hunted), the auxiliary encode pointer will point to a decision
- tree. This is true of both VQ and huffman, but is mostly useful
- with VQ.
-
-*/
-
-typedef struct static_codebook{
- long dim; /* codebook dimensions (elements per vector) */
- long entries; /* codebook entries */
- long *lengthlist; /* codeword lengths in bits */
-
- /* mapping ***************************************************************/
- int maptype; /* 0=none
- 1=implicitly populated values from map column
- 2=listed arbitrary values */
-
- /* The below does a linear, single monotonic sequence mapping. */
- long q_min; /* packed 32 bit float; quant value 0 maps to minval */
- long q_delta; /* packed 32 bit float; val 1 - val 0 == delta */
- int q_quant; /* bits: 0 < quant <= 16 */
- int q_sequencep; /* bitflag */
-
- long *quantlist; /* map == 1: (int)(entries^(1/dim)) element column map
- map == 2: list of dim*entries quantized entry vals
- */
-
- /* encode helpers ********************************************************/
- struct encode_aux_nearestmatch *nearest_tree;
- struct encode_aux_threshmatch *thresh_tree;
- struct encode_aux_pigeonhole *pigeon_tree;
-
- int allocedp;
-} static_codebook;
-
-/* this structures an arbitrary trained book to quickly find the
- nearest cell match */
-typedef struct encode_aux_nearestmatch{
- /* pre-calculated partitioning tree */
- long *ptr0;
- long *ptr1;
-
- long *p; /* decision points (each is an entry) */
- long *q; /* decision points (each is an entry) */
- long aux; /* number of tree entries */
- long alloc;
-} encode_aux_nearestmatch;
-
-/* assumes a maptype of 1; encode side only, so that's OK */
-typedef struct encode_aux_threshmatch{
- float *quantthresh;
- long *quantmap;
- int quantvals;
- int threshvals;
-} encode_aux_threshmatch;
-
-typedef struct encode_aux_pigeonhole{
- float min;
- float del;
-
- int mapentries;
- int quantvals;
- long *pigeonmap;
-
- long fittotal;
- long *fitlist;
- long *fitmap;
- long *fitlength;
-} encode_aux_pigeonhole;
-
-typedef struct decode_aux{
- long *tab;
- int *tabl;
- int tabn;
-
- long *ptr0;
- long *ptr1;
- long aux; /* number of tree entries */
-} decode_aux;
-
-typedef struct codebook{
- long dim; /* codebook dimensions (elements per vector) */
- long entries; /* codebook entries */
- const static_codebook *c;
-
- float *valuelist; /* list of dim*entries actual entry values */
- long *codelist; /* list of bitstream codewords for each entry */
- struct decode_aux *decode_tree;
-
- long zeroentry;
-} codebook;
-
-extern void vorbis_staticbook_clear(static_codebook *b);
-extern void vorbis_staticbook_destroy(static_codebook *b);
-extern int vorbis_book_init_encode(codebook *dest,const static_codebook *source);
-extern int vorbis_book_init_decode(codebook *dest,const static_codebook *source);
-extern void vorbis_book_clear(codebook *b);
-
-extern float *_book_unquantize(const static_codebook *b);
-extern float *_book_logdist(const static_codebook *b,float *vals);
-extern float _float32_unpack(long val);
-extern long _float32_pack(float val);
-extern int _best(codebook *book, float *a, int step);
-extern int _ilog(unsigned int v);
-extern long _book_maptype1_quantvals(const static_codebook *b);
-
-extern int vorbis_book_besterror(codebook *book,float *a,int step,int addmul);
-extern long vorbis_book_codeword(codebook *book,int entry);
-extern long vorbis_book_codelen(codebook *book,int entry);
-
-
-
-extern int vorbis_staticbook_pack(const static_codebook *c,oggpack_buffer *b);
-extern int vorbis_staticbook_unpack(oggpack_buffer *b,static_codebook *c);
-
-extern int vorbis_book_encode(codebook *book, int a, oggpack_buffer *b);
-extern int vorbis_book_errorv(codebook *book, float *a);
-extern int vorbis_book_encodev(codebook *book, int best,float *a,
- oggpack_buffer *b);
-extern int vorbis_book_encodevs(codebook *book, float *a, oggpack_buffer *b,
- int step,int stagetype);
-
-extern long vorbis_book_decode(codebook *book, oggpack_buffer *b);
-extern long vorbis_book_decodevs_add(codebook *book, float *a,
- oggpack_buffer *b,int n);
-extern long vorbis_book_decodev_set(codebook *book, float *a,
- oggpack_buffer *b,int n);
-extern long vorbis_book_decodev_add(codebook *book, float *a,
- oggpack_buffer *b,int n);
-extern long vorbis_book_decodevv_add(codebook *book, float **a,
- long off,int ch,
- oggpack_buffer *b,int n);
-
-
-
-#endif
diff --git a/lib/codec_internal.h b/lib/codec_internal.h
deleted file mode 100644
index 3b333684..00000000
--- a/lib/codec_internal.h
+++ /dev/null
@@ -1,124 +0,0 @@
-/********************************************************************
- * *
- * 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: libvorbis codec headers
- last mod: $Id: codec_internal.h,v 1.8 2001/03/26 23:27:43 xiphmont Exp $
-
- ********************************************************************/
-
-#ifndef _V_CODECI_H_
-#define _V_CODECI_H_
-
-#include "envelope.h"
-#include "codebook.h"
-#include "psy.h"
-#include "bitbuffer.h"
-
-typedef struct vorbis_block_internal{
- float **pcmdelay; /* this is a pointer into local storage */
- float ampmax;
-} vorbis_block_internal;
-
-typedef void vorbis_look_time;
-typedef void vorbis_look_mapping;
-typedef void vorbis_look_floor;
-typedef void vorbis_look_residue;
-typedef void vorbis_look_transform;
-
-typedef struct backend_lookup_state {
- /* local lookup storage */
- envelope_lookup *ve; /* envelope lookup */
- float **window[2][2][2]; /* block, leadin, leadout, type */
- vorbis_look_transform **transform[2]; /* block, type */
- codebook *fullbooks;
-
- /* backend lookups are tied to the mode, not the backend or naked mapping */
- int modebits;
- vorbis_look_mapping **mode;
-
- /* local storage, only used on the encoding side. This way the
- application does not need to worry about freeing some packets'
- memory and not others'; packet storage is always tracked.
- Cleared next call to a _dsp_ function */
- unsigned char *header;
- unsigned char *header1;
- unsigned char *header2;
-
- float ampmax;
-
-} backend_lookup_state;
-
-/* mode ************************************************************/
-typedef struct {
- int blockflag;
- int windowtype;
- int transformtype;
- int mapping;
-} vorbis_info_mode;
-
-typedef void vorbis_info_time;
-typedef void vorbis_info_floor;
-typedef void vorbis_info_residue;
-typedef void vorbis_info_mapping;
-
-/* vorbis_info contains all the setup information specific to the
- specific compression/decompression mode in progress (eg,
- psychoacoustic settings, channel setup, options, codebook
- etc).
-*********************************************************************/
-
-typedef struct codec_setup_info {
-
- /* Vorbis supports only short and long blocks, but allows the
- encoder to choose the sizes */
-
- long blocksizes[2];
-
- /* modes are the primary means of supporting on-the-fly different
- blocksizes, different channel mappings (LR or mid-side),
- different residue backends, etc. Each mode consists of a
- blocksize flag and a mapping (along with the mapping setup */
-
- int modes;
- int maps;
- int times;
- int floors;
- int residues;
- int books;
- int psys; /* encode only */
-
- vorbis_info_mode *mode_param[64];
- int map_type[64];
- vorbis_info_mapping *map_param[64];
- int time_type[64];
- vorbis_info_time *time_param[64];
- int floor_type[64];
- vorbis_info_floor *floor_param[64];
- int residue_type[64];
- vorbis_info_residue *residue_param[64];
- static_codebook *book_param[256];
- vorbis_info_psy *psy_param[64]; /* encode only */
-
- /* for block long/sort tuning; encode only */
- int envelopesa;
- float preecho_thresh[4];
- float postecho_thresh[4];
- float preecho_minenergy;
-
- float ampmax_att_per_sec;
-
- /* delay caching... how many samples to keep around prior to our
- current block to aid in analysis? */
- int delaycache;
-
-} codec_setup_info;
-
-#endif
diff --git a/lib/envelope.c b/lib/envelope.c
deleted file mode 100644
index 53d7bf00..00000000
--- a/lib/envelope.c
+++ /dev/null
@@ -1,236 +0,0 @@
-/********************************************************************
- * *
- * 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: PCM data envelope analysis and manipulation
- last mod: $Id: envelope.c,v 1.36 2001/05/27 06:43:59 xiphmont Exp $
-
- Preecho calculation.
-
- ********************************************************************/
-
-#include <stdlib.h>
-#include <string.h>
-#include <stdio.h>
-#include <math.h>
-#include <ogg/ogg.h>
-#include "vorbis/codec.h"
-#include "codec_internal.h"
-
-#include "os.h"
-#include "scales.h"
-#include "envelope.h"
-#include "misc.h"
-#include "iir.c" /* Yes, ugly, but needed for inlining */
-
-/* Digital filter designed by mkfilter/mkshape/gencode A.J. Fisher */
-
-static int cheb_highpass_stages=6;
-static float cheb_highpass_B[]={1.f,-6.f,15.f,-20.f,15.f,-6.f,1.f};
-
-static int cheb_bandpass_stages=6;
-static float cheb_bandpass_B[]={-1.f,0.f,3.f,0.f,-3.f,0.f,1.f};
-
-
-/* 10kHz Chebyshev highpass */
-static float cheb_highpass10k_gain= 54.34519586f;
-static float cheb_highpass10k_A[]={
- -0.2064797169f,
- -0.5609713214f,
- -1.1352465327f,
- -1.4495555418f,
- -1.7938140760f,
- -0.9473564683f};
-
-/* 6kHz-10kHz Chebyshev bandpass */
-static float cheb_bandpass6k_gain=113.4643935f;
-static float cheb_bandpass6k_A[]={
- -0.5712621337f,
- 1.5626130710f,
- -3.3348854983f,
- 4.0471340821f,
- -4.0051680331f,
- 2.2786325610f};
-
-/* 3kHz-6kHz Chebyshev bandpass */
-static float cheb_bandpass3k_gain= 248.8359377f;
-static float cheb_bandpass3k_A[]={
- -0.6564230022f,
- 3.3747911257f,
- -8.0098635981f,
- 11.0040876874f,
- -9.2250963484f,
- 4.4760355389f};
-
-/* 1.5kHz-3kHz Chebyshev bandpass */
-static float cheb_bandpass1k_gain= 1798.537183f;
-static float cheb_bandpass1k_A[]={
- -0.8097527363f,
- 4.7725742682f,
- -11.9800219408f,
- 16.3770336223f,
- -12.8553129536f,
- 5.4948074309f};
-
-void _ve_envelope_init(envelope_lookup *e,vorbis_info *vi){
- codec_setup_info *ci=vi->codec_setup;
- int ch=vi->channels;
- int window=ci->envelopesa;
- int i;
- e->winlength=window;
- e->minenergy=fromdB(ci->preecho_minenergy);
- e->iir=_ogg_calloc(ch*4,sizeof(IIR_state));
- e->filtered=_ogg_calloc(ch*4,sizeof(float *));
- e->ch=ch;
- e->storage=128;
- for(i=0;i<ch*4;i+=4){
-
- IIR_init(e->iir+i,cheb_highpass_stages,cheb_highpass10k_gain,
- cheb_highpass10k_A,cheb_highpass_B);
- IIR_init(e->iir+i+1,cheb_bandpass_stages,cheb_bandpass6k_gain,
- cheb_bandpass6k_A,cheb_bandpass_B);
- IIR_init(e->iir+i+2,cheb_bandpass_stages,cheb_bandpass3k_gain,
- cheb_bandpass3k_A,cheb_bandpass_B);
- IIR_init(e->iir+i+3,cheb_bandpass_stages,cheb_bandpass1k_gain,
- cheb_bandpass1k_A,cheb_bandpass_B);
-
- e->filtered[i]=_ogg_calloc(e->storage,sizeof(float));
- e->filtered[i+1]=_ogg_calloc(e->storage,sizeof(float));
- e->filtered[i+2]=_ogg_calloc(e->storage,sizeof(float));
- e->filtered[i+3]=_ogg_calloc(e->storage,sizeof(float));
- }
-
-}
-
-void _ve_envelope_clear(envelope_lookup *e){
- int i;
- for(i=0;i<e->ch*4;i++){
- IIR_clear((e->iir+i));
- _ogg_free(e->filtered[i]);
- }
- _ogg_free(e->filtered);
- _ogg_free(e->iir);
- memset(e,0,sizeof(envelope_lookup));
-}
-
-/* straight threshhold based until we find something that works better
- and isn't patented */
-static float _ve_deltai(envelope_lookup *ve,float *pre,float *post){
- long n=ve->winlength;
-
- long i;
-
- /* we want to have a 'minimum bar' for energy, else we're just
- basing blocks on quantization noise that outweighs the signal
- itself (for low power signals) */
-
- float min=ve->minenergy;
- float A=min*min*n;
- float B=A;
-
- for(i=0;i<n;i++){
- A+=pre[i]*pre[i];
- B+=post[i]*post[i];
- }
-
- A=todB(&A);
- B=todB(&B);
-
- return(B-A);
-}
-
-long _ve_envelope_search(vorbis_dsp_state *v,long searchpoint){
- vorbis_info *vi=v->vi;
- codec_setup_info *ci=vi->codec_setup;
- envelope_lookup *ve=((backend_lookup_state *)(v->backend_state))->ve;
- long i,j,k,l;
- float *work=alloca(sizeof(float)*ve->winlength*2);
- static int seq=0;
-
- /* make sure we have enough storage to match the PCM */
- if(v->pcm_storage>ve->storage){
- ve->storage=v->pcm_storage;
- for(i=0;i<ve->ch*4;i++)
- ve->filtered[i]=_ogg_realloc(ve->filtered[i],ve->storage*sizeof(float));
- }
-
- /* catch up the highpass to match the pcm */
- for(i=0;i<ve->ch;i++){
- float *pcm=v->pcm[i];
- float *filtered0=ve->filtered[i*4];
- float *filtered1=ve->filtered[i*4+1];
- float *filtered2=ve->filtered[i*4+2];
- float *filtered3=ve->filtered[i*4+3];
- IIR_state *iir0=ve->iir+i*4;
- IIR_state *iir1=ve->iir+i*4+1;
- IIR_state *iir2=ve->iir+i*4+2;
- IIR_state *iir3=ve->iir+i*4+3;
- int flag=1;
- for(j=ve->current;j<v->pcm_current;j++){
- filtered0[j]=IIR_filter(iir0,pcm[j]);
- filtered1[j]=IIR_filter_Band(iir1,pcm[j]);
- filtered2[j]=IIR_filter_Band(iir2,pcm[j]);
- filtered3[j]=IIR_filter_Band(iir3,pcm[j]);
- if(pcm[j])flag=0;
- }
- if(flag && ve->current+64<v->pcm_current){
- IIR_reset(iir0);
- IIR_reset(iir1);
- IIR_reset(iir2);
- IIR_reset(iir3);
- }
-
- }
-
- ve->current=v->pcm_current;
-
- /* Now search through our cached highpass data for breaking points */
- /* starting point */
- if(v->W)
- j=v->centerW+ci->blocksizes[1]/4-ci->blocksizes[0]/4;
- else
- j=v->centerW;
-
- if(j<ve->lastmark)j=ve->lastmark;
-
- while(j+ve->winlength<=v->pcm_current){
- if(j>=searchpoint)return(1);
-
- ve->lastmark=j;
- for(i=0;i<ve->ch;i++){
- for(k=0;k<4;k++){
- float *filtered=ve->filtered[i*4+k]+j;
- float m=_ve_deltai(ve,filtered-ve->winlength,filtered);
-
- if(m>ci->preecho_thresh[k])return(0);
- if(m<ci->postecho_thresh[k])return(0);
-
- }
- }
-
- j+=min(ci->blocksizes[0],ve->winlength)/2;
-
- }
- if(j>=searchpoint)return(1);
-
- return(-1);
-}
-
-void _ve_envelope_shift(envelope_lookup *e,long shift){
- int i;
- for(i=0;i<e->ch*4;i++)
- memmove(e->filtered[i],e->filtered[i]+shift,(e->current-shift)*
- sizeof(float));
- e->current-=shift;
- e->lastmark-=shift;
-}
-
-
diff --git a/lib/envelope.h b/lib/envelope.h
deleted file mode 100644
index 59079a68..00000000
--- a/lib/envelope.h
+++ /dev/null
@@ -1,45 +0,0 @@
-/********************************************************************
- * *
- * 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: PCM data envelope analysis and manipulation
- last mod: $Id: envelope.h,v 1.16 2001/02/26 03:50:41 xiphmont Exp $
-
- ********************************************************************/
-
-#ifndef _V_ENVELOPE_
-#define _V_ENVELOPE_
-
-#include "iir.h"
-#include "smallft.h"
-
-typedef struct {
- int ch;
- int winlength;
- int searchstep;
- float minenergy;
-
- IIR_state *iir;
- float **filtered;
-
- long storage;
- long current;
- long lastmark;
-} envelope_lookup;
-
-extern void _ve_envelope_init(envelope_lookup *e,vorbis_info *vi);
-extern void _ve_envelope_clear(envelope_lookup *e);
-extern long _ve_envelope_search(vorbis_dsp_state *v,long searchpoint);
-extern void _ve_envelope_shift(envelope_lookup *e,long shift);
-
-
-#endif
-
diff --git a/lib/floor0.c b/lib/floor0.c
deleted file mode 100644
index a6372148..00000000
--- a/lib/floor0.c
+++ /dev/null
@@ -1,464 +0,0 @@
-/********************************************************************
- * *
- * 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: floor backend 0 implementation
- last mod: $Id: floor0.c,v 1.44 2001/06/18 09:07:31 xiphmont Exp $
-
- ********************************************************************/
-
-#include <stdlib.h>
-#include <string.h>
-#include <math.h>
-#include <ogg/ogg.h>
-#include "vorbis/codec.h"
-#include "codec_internal.h"
-#include "registry.h"
-#include "lpc.h"
-#include "lsp.h"
-#include "codebook.h"
-#include "scales.h"
-#include "misc.h"
-#include "os.h"
-
-#include "misc.h"
-#include <stdio.h>
-
-typedef struct {
- long n;
- int ln;
- int m;
- int *linearmap;
-
- vorbis_info_floor0 *vi;
- lpc_lookup lpclook;
- float *lsp_look;
-
-} vorbis_look_floor0;
-
-/* infrastructure for finding fit */
-static long _f0_fit(codebook *book,
- float *orig,
- float *workfit,
- int cursor){
- int dim=book->dim;
- float norm,base=0.f;
- int i,best=0;
- float *lsp=workfit+cursor;
-
- if(cursor)base=workfit[cursor-1];
- norm=orig[cursor+dim-1]-base;
-
- for(i=0;i<dim;i++)
- lsp[i]=(orig[i+cursor]-base);
- best=_best(book,lsp,1);
-
- memcpy(lsp,book->valuelist+best*dim,dim*sizeof(float));
- for(i=0;i<dim;i++)
- lsp[i]+=base;
- return(best);
-}
-
-/***********************************************/
-
-static vorbis_info_floor *floor0_copy_info (vorbis_info_floor *i){
- vorbis_info_floor0 *info=(vorbis_info_floor0 *)i;
- vorbis_info_floor0 *ret=_ogg_malloc(sizeof(vorbis_info_floor0));
- memcpy(ret,info,sizeof(vorbis_info_floor0));
- return(ret);
-}
-
-static void floor0_free_info(vorbis_info_floor *i){
- if(i){
- memset(i,0,sizeof(vorbis_info_floor0));
- _ogg_free(i);
- }
-}
-
-static void floor0_free_look(vorbis_look_floor *i){
- vorbis_look_floor0 *look=(vorbis_look_floor0 *)i;
- if(i){
- if(look->linearmap)_ogg_free(look->linearmap);
- if(look->lsp_look)_ogg_free(look->lsp_look);
- lpc_clear(&look->lpclook);
- memset(look,0,sizeof(vorbis_look_floor0));
- _ogg_free(look);
- }
-}
-
-static void floor0_pack (vorbis_info_floor *i,oggpack_buffer *opb){
- vorbis_info_floor0 *info=(vorbis_info_floor0 *)i;
- int j;
- oggpack_write(opb,info->order,8);
- oggpack_write(opb,info->rate,16);
- oggpack_write(opb,info->barkmap,16);
- oggpack_write(opb,info->ampbits,6);
- oggpack_write(opb,info->ampdB,8);
- oggpack_write(opb,info->numbooks-1,4);
- for(j=0;j<info->numbooks;j++)
- oggpack_write(opb,info->books[j],8);
-}
-
-static vorbis_info_floor *floor0_unpack (vorbis_info *vi,oggpack_buffer *opb){
- codec_setup_info *ci=vi->codec_setup;
- int j;
-
- vorbis_info_floor0 *info=_ogg_malloc(sizeof(vorbis_info_floor0));
- info->order=oggpack_read(opb,8);
- info->rate=oggpack_read(opb,16);
- info->barkmap=oggpack_read(opb,16);
- info->ampbits=oggpack_read(opb,6);
- info->ampdB=oggpack_read(opb,8);
- info->numbooks=oggpack_read(opb,4)+1;
-
- if(info->order<1)goto err_out;
- if(info->rate<1)goto err_out;
- if(info->barkmap<1)goto err_out;
- if(info->numbooks<1)goto err_out;
-
- for(j=0;j<info->numbooks;j++){
- info->books[j]=oggpack_read(opb,8);
- if(info->books[j]<0 || info->books[j]>=ci->books)goto err_out;
- }
- return(info);
-
- err_out:
- floor0_free_info(info);
- return(NULL);
-}
-
-/* initialize Bark scale and normalization lookups. We could do this
- with static tables, but Vorbis allows a number of possible
- combinations, so it's best to do it computationally.
-
- The below is authoritative in terms of defining scale mapping.
- Note that the scale depends on the sampling rate as well as the
- linear block and mapping sizes */
-
-static vorbis_look_floor *floor0_look (vorbis_dsp_state *vd,vorbis_info_mode *mi,
- vorbis_info_floor *i){
- int j;
- float scale;
- vorbis_info *vi=vd->vi;
- codec_setup_info *ci=vi->codec_setup;
- vorbis_info_floor0 *info=(vorbis_info_floor0 *)i;
- vorbis_look_floor0 *look=_ogg_calloc(1,sizeof(vorbis_look_floor0));
- look->m=info->order;
- look->n=ci->blocksizes[mi->blockflag]/2;
- look->ln=info->barkmap;
- look->vi=info;
-
- if(vd->analysisp)
- lpc_init(&look->lpclook,look->ln,look->m);
-
- /* we choose a scaling constant so that:
- floor(bark(rate/2-1)*C)=mapped-1
- floor(bark(rate/2)*C)=mapped */
- scale=look->ln/toBARK(info->rate/2.f);
-
- /* the mapping from a linear scale to a smaller bark scale is
- straightforward. We do *not* make sure that the linear mapping
- does not skip bark-scale bins; the decoder simply skips them and
- the encoder may do what it wishes in filling them. They're
- necessary in some mapping combinations to keep the scale spacing
- accurate */
- look->linearmap=_ogg_malloc((look->n+1)*sizeof(int));
- for(j=0;j<look->n;j++){
- int val=floor( toBARK((info->rate/2.f)/look->n*j)
- *scale); /* bark numbers represent band edges */
- if(val>=look->ln)val=look->ln; /* guard against the approximation */
- look->linearmap[j]=val;
- }
- look->linearmap[j]=-1;
-
- look->lsp_look=_ogg_malloc(look->ln*sizeof(float));
- for(j=0;j<look->ln;j++)
- look->lsp_look[j]=2*cos(M_PI/look->ln*j);
-
- return look;
-}
-
-/* less efficient than the decode side (written for clarity). We're
- not bottlenecked here anyway */
-
-float _curve_to_lpc(float *curve,float *lpc,
- vorbis_look_floor0 *l){
- /* map the input curve to a bark-scale curve for encoding */
-
- int mapped=l->ln;
- float *work=alloca(sizeof(float)*mapped);
- int i,j,last=0;
- int bark=0;
- static int seq=0;
-
- memset(work,0,sizeof(float)*mapped);
-
- /* Only the decode side is behavior-specced; for now in the encoder,
- we select the maximum value of each band as representative (this
- helps make sure peaks don't go out of range. In error terms,
- selecting min would make more sense, but the codebook is trained
- numerically, so we don't actually lose. We'd still want to
- use the original curve for error and noise estimation */
-
- for(i=0;i<l->n;i++){
- bark=l->linearmap[i];
- if(work[bark]<curve[i])work[bark]=curve[i];
- if(bark>last+1){
- /* If the bark scale is climbing rapidly, some bins may end up
- going unused. This isn't a waste actually; it keeps the
- scale resolution even so that the LPC generator has an easy
- time. However, if we leave the bins empty we lose energy.
- So, fill 'em in. The decoder does not do anything with he
- unused bins, so we can fill them anyway we like to end up
- with a better spectral curve */
-
- /* we'll always have a bin zero, so we don't need to guard init */
- long span=bark-last;
- for(j=1;j<span;j++){
- float del=(float)j/span;
- work[j+last]=work[bark]*del+work[last]*(1.f-del);
- }
- }
- last=bark;
- }
-
- /* If we're over-ranged to avoid edge effects, fill in the end of spectrum gap */
- for(i=bark+1;i<mapped;i++)
- work[i]=work[i-1];
-
-
- /**********************/
-
- for(i=0;i<l->n;i++)
- curve[i]-=150;
-
- _analysis_output("barkfloor",seq,work,bark,0,0);
- _analysis_output("barkcurve",seq++,curve,l->n,1,0);
-
- for(i=0;i<l->n;i++)
- curve[i]+=150;
-
- /**********************/
-
- return vorbis_lpc_from_curve(work,lpc,&(l->lpclook));
-}
-
-static int floor0_forward(vorbis_block *vb,vorbis_look_floor *in,
- const float *mdct, const float *logmdct, /* in */
- const float *logmask, const float *logmax, /* in */
- float *residue, float *codedflr){ /* out */
- long j;
- vorbis_look_floor0 *look=(vorbis_look_floor0 *)in;
- vorbis_info_floor0 *info=look->vi;
- float amp;
- long bits=0;
- long val=0;
- static int seq=0;
-
-#ifdef TRAIN_LSP
- FILE *of;
- FILE *ef;
- char buffer[80];
-
-#if 1
- sprintf(buffer,"lsp0coeff_%d.vqd",vb->mode);
- of=fopen(buffer,"a");
-#endif
-#endif
-
- seq++;
-
-
- /* our floor comes in on a [-Inf...0] dB scale. The curve has to be
- positive, so we offset it. */
-
- for(j=0;j<look->n;j++)
- codedflr[j]=logmask[j]+info->ampdB;
-
- /* use 'out' as temp storage */
- /* Convert our floor to a set of lpc coefficients */
- amp=sqrt(_curve_to_lpc(codedflr,codedflr,look));
-
- /* amp is in the range (0. to ampdB]. Encode that range using
- ampbits bits */
-
- {
- long maxval=(1L<<info->ampbits)-1;
-
- val=rint(amp/info->ampdB*maxval);
-
- if(val<0)val=0; /* likely */
- if(val>maxval)val=maxval; /* not bloody likely */
-
- if(val>0)
- amp=(float)val/maxval*info->ampdB;
- else
- amp=0;
- }
-
- if(val){
- /* LSP <-> LPC is orthogonal and LSP quantizes more stably */
- _analysis_output("lpc",seq-1,codedflr,look->m,0,0);
- if(vorbis_lpc_to_lsp(codedflr,codedflr,look->m))
- val=0;
-
- }
-
- oggpack_write(&vb->opb,val,info->ampbits);
-
- if(val){
- float *lspwork=alloca(look->m*sizeof(float));
-
- /* the spec supports using one of a number of codebooks. Right
- now, encode using this lib supports only one */
- backend_lookup_state *be=vb->vd->backend_state;
- codebook *b;
- int booknum;
-
- _analysis_output("lsp",seq-1,codedflr,look->m,0,0);
-
- /* which codebook to use? We do it only by range right now. */
- if(info->numbooks>1){
- float last=0.;
- for(j=0;j<look->m;j++){
- float val=codedflr[j]-last;
- if(val<info->lessthan || val>info->greaterthan)break;
- last=codedflr[j];
- }
- if(j<look->m)
- booknum=0;
- else
- booknum=1;
- }else
- booknum=0;
-
- b=be->fullbooks+info->books[booknum];
- oggpack_write(&vb->opb,booknum,_ilog(info->numbooks));
-
-
-#ifdef TRAIN_LSP
- {
- float last=0.f;
- for(j=0;j<look->m;j++){
- fprintf(of,"%.12g, ",codedflr[j]-last);
- last=codedflr[j];
- }
- }
- fprintf(of,"\n");
- fclose(of);
-
- sprintf(buffer,"lsp0ent_m%d_b%d.vqd",vb->mode,booknum);
- ef=fopen(buffer,"a");
-
-#endif
-
- /* code the spectral envelope, and keep track of the actual
- quantized values; we don't want creeping error as each block is
- nailed to the last quantized value of the previous block. */
-
- for(j=0;j<look->m;j+=b->dim){
- int entry=_f0_fit(b,codedflr,lspwork,j);
- bits+=vorbis_book_encode(b,entry,&vb->opb);
-
-#ifdef TRAIN_LSP
- fprintf(ef,"%d,\n",entry);
-#endif
-
- }
-
-#ifdef TRAIN_LSP
- fclose(ef);
-#endif
-
- _analysis_output("lsp2",seq-1,lspwork,look->m,0,0);
-
- /* take the coefficients back to a spectral envelope curve */
- for(j=0;j<look->n;j++)
- codedflr[j]=1.f;
- vorbis_lsp_to_curve(codedflr,look->linearmap,look->n,look->ln,
- lspwork,look->m,amp,info->ampdB);
-
- _analysis_output("barklsp",seq-1,codedflr,look->n,1,1);
- _analysis_output("lsp3",seq-1,codedflr,look->n,0,1);
-
- /* generate residue output */
- for(j=0;j<look->n;j++)
- residue[j]=mdct[j]/codedflr[j];
-
- return(val);
- }
-
-#ifdef TRAIN_LSP
- fclose(of);
-#endif
-
- memset(codedflr,0,sizeof(float)*look->n);
- memset(residue,0,sizeof(float)*look->n);
- return(val);
-}
-
-static void *floor0_inverse1(vorbis_block *vb,vorbis_look_floor *i){
- vorbis_look_floor0 *look=(vorbis_look_floor0 *)i;
- vorbis_info_floor0 *info=look->vi;
- int j,k;
-
- int ampraw=oggpack_read(&vb->opb,info->ampbits);
- if(ampraw>0){ /* also handles the -1 out of data case */
- long maxval=(1<<info->ampbits)-1;
- float amp=(float)ampraw/maxval*info->ampdB;
- int booknum=oggpack_read(&vb->opb,_ilog(info->numbooks));
-
- if(booknum!=-1 && booknum<info->numbooks){ /* be paranoid */
- backend_lookup_state *be=vb->vd->backend_state;
- codebook *b=be->fullbooks+info->books[booknum];
- float last=0.f;
- float *lsp=_vorbis_block_alloc(vb,sizeof(float)*(look->m+1));
-
- for(j=0;j<look->m;j+=b->dim)
- if(vorbis_book_decodev_set(b,lsp+j,&vb->opb,b->dim)==-1)goto eop;
- for(j=0;j<look->m;){
- for(k=0;k<b->dim;k++,j++)lsp[j]+=last;
- last=lsp[j-1];
- }
-
- lsp[look->m]=amp;
- return(lsp);
- }
- }
- eop:
- return(NULL);
-}
-
-static int floor0_inverse2(vorbis_block *vb,vorbis_look_floor *i,
- void *memo,float *out){
- vorbis_look_floor0 *look=(vorbis_look_floor0 *)i;
- vorbis_info_floor0 *info=look->vi;
-
- if(memo){
- float *lsp=(float *)memo;
- float amp=lsp[look->m];
-
- /* take the coefficients back to a spectral envelope curve */
- vorbis_lsp_to_curve(out,look->linearmap,look->n,look->ln,
- lsp,look->m,amp,info->ampdB);
- return(1);
- }
- memset(out,0,sizeof(float)*look->n);
- return(0);
-}
-
-/* export hooks */
-vorbis_func_floor floor0_exportbundle={
- &floor0_pack,&floor0_unpack,&floor0_look,&floor0_copy_info,&floor0_free_info,
- &floor0_free_look,&floor0_forward,&floor0_inverse1,&floor0_inverse2
-};
-
-
diff --git a/lib/floor1.c b/lib/floor1.c
deleted file mode 100644
index 8094d02c..00000000
--- a/lib/floor1.c
+++ /dev/null
@@ -1,1140 +0,0 @@
-/********************************************************************
- * *
- * 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: floor backend 1 implementation
- last mod: $Id: floor1.c,v 1.10 2001/06/15 23:59:47 xiphmont Exp $
-
- ********************************************************************/
-
-#include <stdlib.h>
-#include <string.h>
-#include <math.h>
-#include <ogg/ogg.h>
-#include "vorbis/codec.h"
-#include "codec_internal.h"
-#include "registry.h"
-#include "codebook.h"
-#include "misc.h"
-#include "scales.h"
-
-#include <stdio.h>
-
-#define floor1_rangedB 140 /* floor 1 fixed at -140dB to 0dB range */
-
-typedef struct {
- int sorted_index[VIF_POSIT+2];
- int forward_index[VIF_POSIT+2];
- int reverse_index[VIF_POSIT+2];
-
- int hineighbor[VIF_POSIT];
- int loneighbor[VIF_POSIT];
- int posts;
-
- int n;
- int quant_q;
- vorbis_info_floor1 *vi;
-
-} vorbis_look_floor1;
-
-typedef struct lsfit_acc{
- long x0;
- long x1;
-
- long xa;
- long ya;
- long x2a;
- long y2a;
- long xya;
- long n;
- long an;
- long un;
- long edgey0;
- long edgey1;
-} lsfit_acc;
-
-/***********************************************/
-
-static vorbis_info_floor *floor1_copy_info (vorbis_info_floor *i){
- vorbis_info_floor1 *info=(vorbis_info_floor1 *)i;
- vorbis_info_floor1 *ret=_ogg_malloc(sizeof(vorbis_info_floor1));
- memcpy(ret,info,sizeof(vorbis_info_floor1));
- return(ret);
-}
-
-static void floor1_free_info(vorbis_info_floor *i){
- if(i){
- memset(i,0,sizeof(vorbis_info_floor1));
- _ogg_free(i);
- }
-}
-
-static void floor1_free_look(vorbis_look_floor *i){
- vorbis_look_floor1 *look=(vorbis_look_floor1 *)i;
- if(i){
- memset(look,0,sizeof(vorbis_look_floor1));
- free(i);
- }
-}
-
-static int ilog(unsigned int v){
- int ret=0;
- while(v){
- ret++;
- v>>=1;
- }
- return(ret);
-}
-
-static int ilog2(unsigned int v){
- int ret=0;
- while(v>1){
- ret++;
- v>>=1;
- }
- return(ret);
-}
-
-static void floor1_pack (vorbis_info_floor *i,oggpack_buffer *opb){
- vorbis_info_floor1 *info=(vorbis_info_floor1 *)i;
- int j,k;
- int count=0;
- int rangebits;
- int maxposit=info->postlist[1];
- int maxclass=-1;
-
- /* save out partitions */
- oggpack_write(opb,info->partitions,5); /* only 0 to 31 legal */
- for(j=0;j<info->partitions;j++){
- oggpack_write(opb,info->partitionclass[j],4); /* only 0 to 15 legal */
- if(maxclass<info->partitionclass[j])maxclass=info->partitionclass[j];
- }
-
- /* save out partition classes */
- for(j=0;j<maxclass+1;j++){
- oggpack_write(opb,info->class_dim[j]-1,3); /* 1 to 8 */
- oggpack_write(opb,info->class_subs[j],2); /* 0 to 3 */
- if(info->class_subs[j])oggpack_write(opb,info->class_book[j],8);
- for(k=0;k<(1<<info->class_subs[j]);k++)
- oggpack_write(opb,info->class_subbook[j][k]+1,8);
- }
-
- /* save out the post list */
- oggpack_write(opb,info->mult-1,2); /* only 1,2,3,4 legal now */
- oggpack_write(opb,ilog2(maxposit),4);
- rangebits=ilog2(maxposit);
-
- for(j=0,k=0;j<info->partitions;j++){
- count+=info->class_dim[info->partitionclass[j]];
- for(;k<count;k++)
- oggpack_write(opb,info->postlist[k+2],rangebits);
- }
-}
-
-
-static vorbis_info_floor *floor1_unpack (vorbis_info *vi,oggpack_buffer *opb){
- codec_setup_info *ci=vi->codec_setup;
- int j,k,count=0,maxclass=-1,rangebits;
-
- vorbis_info_floor1 *info=_ogg_calloc(1,sizeof(vorbis_info_floor1));
- /* read partitions */
- info->partitions=oggpack_read(opb,5); /* only 0 to 31 legal */
- for(j=0;j<info->partitions;j++){
- info->partitionclass[j]=oggpack_read(opb,4); /* only 0 to 15 legal */
- if(maxclass<info->partitionclass[j])maxclass=info->partitionclass[j];
- }
-
- /* read partition classes */
- for(j=0;j<maxclass+1;j++){
- info->class_dim[j]=oggpack_read(opb,3)+1; /* 1 to 8 */
- info->class_subs[j]=oggpack_read(opb,2); /* 0,1,2,3 bits */
- if(info->class_subs[j]<0)
- goto err_out;
- if(info->class_subs[j])info->class_book[j]=oggpack_read(opb,8);
- if(info->class_book[j]<0 || info->class_book[j]>=ci->books)
- goto err_out;
- for(k=0;k<(1<<info->class_subs[j]);k++){
- info->class_subbook[j][k]=oggpack_read(opb,8)-1;
- if(info->class_subbook[j][k]<-1 || info->class_subbook[j][k]>=ci->books)
- goto err_out;
- }
- }
-
- /* read the post list */
- info->mult=oggpack_read(opb,2)+1; /* only 1,2,3,4 legal now */
- rangebits=oggpack_read(opb,4);
-
- for(j=0,k=0;j<info->partitions;j++){
- count+=info->class_dim[info->partitionclass[j]];
- for(;k<count;k++){
- int t=info->postlist[k+2]=oggpack_read(opb,rangebits);
- if(t<0 || t>=(1<<rangebits))
- goto err_out;
- }
- }
- info->postlist[0]=0;
- info->postlist[1]=1<<rangebits;
-
- return(info);
-
- err_out:
- floor1_free_info(info);
- return(NULL);
-}
-
-static int icomp(const void *a,const void *b){
- return(**(int **)a-**(int **)b);
-}
-
-static vorbis_look_floor *floor1_look(vorbis_dsp_state *vd,vorbis_info_mode *mi,
- vorbis_info_floor *in){
-
- int *sortpointer[VIF_POSIT+2];
- vorbis_info_floor1 *info=(vorbis_info_floor1 *)in;
- vorbis_look_floor1 *look=_ogg_calloc(1,sizeof(vorbis_look_floor1));
- int i,j,n=0;
-
- look->vi=info;
- look->n=info->postlist[1];
-
- /* we drop each position value in-between already decoded values,
- and use linear interpolation to predict each new value past the
- edges. The positions are read in the order of the position
- list... we precompute the bounding positions in the lookup. Of
- course, the neighbors can change (if a position is declined), but
- this is an initial mapping */
-
- for(i=0;i<info->partitions;i++)n+=info->class_dim[info->partitionclass[i]];
- n+=2;
- look->posts=n;
-
- /* also store a sorted position index */
- for(i=0;i<n;i++)sortpointer[i]=info->postlist+i;
- qsort(sortpointer,n,sizeof(int),icomp);
-
- /* points from sort order back to range number */
- for(i=0;i<n;i++)look->forward_index[i]=sortpointer[i]-info->postlist;
- /* points from range order to sorted position */
- for(i=0;i<n;i++)look->reverse_index[look->forward_index[i]]=i;
- /* we actually need the post values too */
- for(i=0;i<n;i++)look->sorted_index[i]=info->postlist[look->forward_index[i]];
-
- /* quantize values to multiplier spec */
- switch(info->mult){
- case 1: /* 1024 -> 256 */
- look->quant_q=256;
- break;
- case 2: /* 1024 -> 128 */
- look->quant_q=128;
- break;
- case 3: /* 1024 -> 86 */
- look->quant_q=86;
- break;
- case 4: /* 1024 -> 64 */
- look->quant_q=64;
- break;
- }
-
- /* discover our neighbors for decode where we don't use fit flags
- (that would push the neighbors outward) */
- for(i=0;i<n-2;i++){
- int lo=0;
- int hi=1;
- int lx=0;
- int hx=look->n;
- int currentx=info->postlist[i+2];
- for(j=0;j<i+2;j++){
- int x=info->postlist[j];
- if(x>lx && x<currentx){
- lo=j;
- lx=x;
- }
- if(x<hx && x>currentx){
- hi=j;
- hx=x;
- }
- }
- look->loneighbor[i]=lo;
- look->hineighbor[i]=hi;
- }
-
- return(look);
-}
-
-static int render_point(int x0,int x1,int y0,int y1,int x){
- y0&=0x7fff; /* mask off flag */
- y1&=0x7fff;
-
- {
- int dy=y1-y0;
- int adx=x1-x0;
- int ady=abs(dy);
- int err=ady*(x-x0);
-
- int off=err/adx;
- if(dy<0)return(y0-off);
- return(y0+off);
- }
-}
-
-static int vorbis_dBquant(const float *x){
- int i= *x*7.3142857f+1023.5f;
- if(i>1023)return(1023);
- if(i<0)return(0);
- return i;
-}
-
-static float FLOOR_fromdB_LOOKUP[256]={
- 1.0649863e-07F, 1.1341951e-07F, 1.2079015e-07F, 1.2863978e-07F,
- 1.3699951e-07F, 1.4590251e-07F, 1.5538408e-07F, 1.6548181e-07F,
- 1.7623575e-07F, 1.8768855e-07F, 1.9988561e-07F, 2.128753e-07F,
- 2.2670913e-07F, 2.4144197e-07F, 2.5713223e-07F, 2.7384213e-07F,
- 2.9163793e-07F, 3.1059021e-07F, 3.3077411e-07F, 3.5226968e-07F,
- 3.7516214e-07F, 3.9954229e-07F, 4.2550680e-07F, 4.5315863e-07F,
- 4.8260743e-07F, 5.1396998e-07F, 5.4737065e-07F, 5.8294187e-07F,
- 6.2082472e-07F, 6.6116941e-07F, 7.0413592e-07F, 7.4989464e-07F,
- 7.9862701e-07F, 8.5052630e-07F, 9.0579828e-07F, 9.6466216e-07F,
- 1.0273513e-06F, 1.0941144e-06F, 1.1652161e-06F, 1.2409384e-06F,
- 1.3215816e-06F, 1.4074654e-06F, 1.4989305e-06F, 1.5963394e-06F,
- 1.7000785e-06F, 1.8105592e-06F, 1.9282195e-06F, 2.0535261e-06F,
- 2.1869758e-06F, 2.3290978e-06F, 2.4804557e-06F, 2.6416497e-06F,
- 2.8133190e-06F, 2.9961443e-06F, 3.1908506e-06F, 3.3982101e-06F,
- 3.6190449e-06F, 3.8542308e-06F, 4.1047004e-06F, 4.3714470e-06F,
- 4.6555282e-06F, 4.9580707e-06F, 5.2802740e-06F, 5.6234160e-06F,
- 5.9888572e-06F, 6.3780469e-06F, 6.7925283e-06F, 7.2339451e-06F,
- 7.7040476e-06F, 8.2047000e-06F, 8.7378876e-06F, 9.3057248e-06F,
- 9.9104632e-06F, 1.0554501e-05F, 1.1240392e-05F, 1.1970856e-05F,
- 1.2748789e-05F, 1.3577278e-05F, 1.4459606e-05F, 1.5399272e-05F,
- 1.6400004e-05F, 1.7465768e-05F, 1.8600792e-05F, 1.9809576e-05F,
- 2.1096914e-05F, 2.2467911e-05F, 2.3928002e-05F, 2.5482978e-05F,
- 2.7139006e-05F, 2.8902651e-05F, 3.0780908e-05F, 3.2781225e-05F,
- 3.4911534e-05F, 3.7180282e-05F, 3.9596466e-05F, 4.2169667e-05F,
- 4.4910090e-05F, 4.7828601e-05F, 5.0936773e-05F, 5.4246931e-05F,
- 5.7772202e-05F, 6.1526565e-05F, 6.5524908e-05F, 6.9783085e-05F,
- 7.4317983e-05F, 7.9147585e-05F, 8.4291040e-05F, 8.9768747e-05F,
- 9.5602426e-05F, 0.00010181521F, 0.00010843174F, 0.00011547824F,
- 0.00012298267F, 0.00013097477F, 0.00013948625F, 0.00014855085F,
- 0.00015820453F, 0.00016848555F, 0.00017943469F, 0.00019109536F,
- 0.00020351382F, 0.00021673929F, 0.00023082423F, 0.00024582449F,
- 0.00026179955F, 0.00027881276F, 0.00029693158F, 0.00031622787F,
- 0.00033677814F, 0.00035866388F, 0.00038197188F, 0.00040679456F,
- 0.00043323036F, 0.00046138411F, 0.00049136745F, 0.00052329927F,
- 0.00055730621F, 0.00059352311F, 0.00063209358F, 0.00067317058F,
- 0.00071691700F, 0.00076350630F, 0.00081312324F, 0.00086596457F,
- 0.00092223983F, 0.00098217216F, 0.0010459992F, 0.0011139742F,
- 0.0011863665F, 0.0012634633F, 0.0013455702F, 0.0014330129F,
- 0.0015261382F, 0.0016253153F, 0.0017309374F, 0.0018434235F,
- 0.0019632195F, 0.0020908006F, 0.0022266726F, 0.0023713743F,
- 0.0025254795F, 0.0026895994F, 0.0028643847F, 0.0030505286F,
- 0.0032487691F, 0.0034598925F, 0.0036847358F, 0.0039241906F,
- 0.0041792066F, 0.0044507950F, 0.0047400328F, 0.0050480668F,
- 0.0053761186F, 0.0057254891F, 0.0060975636F, 0.0064938176F,
- 0.0069158225F, 0.0073652516F, 0.0078438871F, 0.0083536271F,
- 0.0088964928F, 0.009474637F, 0.010090352F, 0.010746080F,
- 0.011444421F, 0.012188144F, 0.012980198F, 0.013823725F,
- 0.014722068F, 0.015678791F, 0.016697687F, 0.017782797F,
- 0.018938423F, 0.020169149F, 0.021479854F, 0.022875735F,
- 0.024362330F, 0.025945531F, 0.027631618F, 0.029427276F,
- 0.031339626F, 0.033376252F, 0.035545228F, 0.037855157F,
- 0.040315199F, 0.042935108F, 0.045725273F, 0.048696758F,
- 0.051861348F, 0.055231591F, 0.058820850F, 0.062643361F,
- 0.066714279F, 0.071049749F, 0.075666962F, 0.080584227F,
- 0.085821044F, 0.091398179F, 0.097337747F, 0.10366330F,
- 0.11039993F, 0.11757434F, 0.12521498F, 0.13335215F,
- 0.14201813F, 0.15124727F, 0.16107617F, 0.17154380F,
- 0.18269168F, 0.19456402F, 0.20720788F, 0.22067342F,
- 0.23501402F, 0.25028656F, 0.26655159F, 0.28387361F,
- 0.30232132F, 0.32196786F, 0.34289114F, 0.36517414F,
- 0.38890521F, 0.41417847F, 0.44109412F, 0.46975890F,
- 0.50028648F, 0.53279791F, 0.56742212F, 0.60429640F,
- 0.64356699F, 0.68538959F, 0.72993007F, 0.77736504F,
- 0.82788260F, 0.88168307F, 0.9389798F, 1.F,
-};
-
-static void render_line(int x0,int x1,int y0,int y1,float *d){
- int dy=y1-y0;
- int adx=x1-x0;
- int ady=abs(dy);
- int base=dy/adx;
- int sy=(dy<0?base-1:base+1);
- int x=x0;
- int y=y0;
- int err=0;
-
- ady-=abs(base*adx);
-
- d[x]*=FLOOR_fromdB_LOOKUP[y];
- while(++x<x1){
- err=err+ady;
- if(err>=adx){
- err-=adx;
- y+=sy;
- }else{
- y+=base;
- }
- d[x]*=FLOOR_fromdB_LOOKUP[y];
- }
-}
-
-static void render_line0(int x0,int x1,int y0,int y1,float *d){
- int dy=y1-y0;
- int adx=x1-x0;
- int ady=abs(dy);
- int base=dy/adx;
- int sy=(dy<0?base-1:base+1);
- int x=x0;
- int y=y0;
- int err=0;
-
- ady-=abs(base*adx);
-
- d[x]=FLOOR_fromdB_LOOKUP[y];
- while(++x<x1){
- err=err+ady;
- if(err>=adx){
- err-=adx;
- y+=sy;
- }else{
- y+=base;
- }
- d[x]=FLOOR_fromdB_LOOKUP[y];
- }
-}
-
-/* the floor has already been filtered to only include relevant sections */
-static int accumulate_fit(const float *flr,const float *mdct,
- int x0, int x1,lsfit_acc *a,
- int n,vorbis_info_floor1 *info){
- long i;
- int quantized=vorbis_dBquant(flr);
-
- long xa=0,ya=0,x2a=0,y2a=0,xya=0,na=0, xb=0,yb=0,x2b=0,y2b=0,xyb=0,nb=0;
-
- memset(a,0,sizeof(lsfit_acc));
- a->x0=x0;
- a->x1=x1;
- a->edgey0=quantized;
- if(x1>n)x1=n;
-
- for(i=x0;i<x1;i++){
- int quantized=vorbis_dBquant(flr+i);
- if(quantized){
- if(mdct[i]+info->twofitatten>=flr[i]){
- xa += i;
- ya += quantized;
- x2a += i*i;
- y2a += quantized*quantized;
- xya += i*quantized;
- na++;
- }else{
- xb += i;
- yb += quantized;
- x2b += i*i;
- y2b += quantized*quantized;
- xyb += i*quantized;
- nb++;
- }
- }
- }
-
- xb+=xa;
- yb+=ya;
- x2b+=x2a;
- y2b+=y2a;
- xyb+=xya;
- nb+=na;
-
- /* weight toward the actually used frequencies if we meet the threshhold */
- {
- int weight;
- if(nb<info->twofitminsize || na<info->twofitminused){
- weight=0;
- }else{
- weight=nb*info->twofitweight/na;
- }
- a->xa=xa*weight+xb;
- a->ya=ya*weight+yb;
- a->x2a=x2a*weight+x2b;
- a->y2a=y2a*weight+y2b;
- a->xya=xya*weight+xyb;
- a->an=na*weight+nb;
- a->n=nb;
- a->un=na;
- if(nb>=info->unusedminsize)a->un++;
- }
-
- a->edgey1=-200;
- if(x1<n){
- int quantized=vorbis_dBquant(flr+i);
- a->edgey1=quantized;
- }
- return(a->n);
-}
-
-/* returns < 0 on too few points to fit, >=0 (meansq error) on success */
-static int fit_line(lsfit_acc *a,int fits,int *y0,int *y1){
- long x=0,y=0,x2=0,y2=0,xy=0,n=0,an=0,i;
- long x0=a[0].x0;
- long x1=a[fits-1].x1;
-
- for(i=0;i<fits;i++){
- if(a[i].un){
- x+=a[i].xa;
- y+=a[i].ya;
- x2+=a[i].x2a;
- y2+=a[i].y2a;
- xy+=a[i].xya;
- n+=a[i].n;
- an+=a[i].an;
- }
- }
-
- if(*y0>=0){ /* hint used to break degenerate cases */
- x+= x0;
- y+= *y0;
- x2+= x0 * x0;
- y2+= *y0 * *y0;
- xy+= *y0 * x0;
- n++;
- an++;
- }
-
- if(*y1>=0){ /* hint used to break degenerate cases */
- x+= x1;
- y+= *y1;
- x2+= x1 * x1;
- y2+= *y1 * *y1;
- xy+= *y1 * x1;
- n++;
- an++;
- }
-
- if(n<2)return(n-2);
-
- {
- /* need 64 bit multiplies, which C doesn't give portably as int */
- double fx=x;
- double fy=y;
- double fx2=x2;
- double fxy=xy;
- double denom=1./(an*fx2-fx*fx);
- double a=(fy*fx2-fxy*fx)*denom;
- double b=(an*fxy-fx*fy)*denom;
- *y0=rint(a+b*x0);
- *y1=rint(a+b*x1);
-
- /* limit to our range! */
- if(*y0>1023)*y0=1023;
- if(*y1>1023)*y1=1023;
- if(*y0<0)*y0=0;
- if(*y1<0)*y1=0;
-
- return(0);
- }
-}
-
-/*static void fit_line_point(lsfit_acc *a,int fits,int *y0,int *y1){
- long y=0;
- int i;
-
- for(i=0;i<fits && y==0;i++)
- y+=a[i].ya;
-
- *y0=*y1=y;
- }*/
-
-static int inspect_error(int x0,int x1,int y0,int y1,const float *mask,
- const float *mdct,
- vorbis_info_floor1 *info){
- int dy=y1-y0;
- int adx=x1-x0;
- int ady=abs(dy);
- int base=dy/adx;
- int sy=(dy<0?base-1:base+1);
- int x=x0;
- int y=y0;
- int err=0;
- int val=vorbis_dBquant(mask+x);
- int mse=0;
- int n=0;
-
- ady-=abs(base*adx);
-
- if(mdct[x]+info->twofitatten>=mask[x]){
- if(y+info->maxover<val)return(1);
- if(y-info->maxunder>val)return(1);
- mse=(y-val);
- mse*=mse;
- n++;
- }
-
- while(++x<x1){
- err=err+ady;
- if(err>=adx){
- err-=adx;
- y+=sy;
- }else{
- y+=base;
- }
-
- if(mdct[x]+info->twofitatten>=mask[x]){
- val=vorbis_dBquant(mask+x);
- if(val){
- if(y+info->maxover<val)return(1);
- if(y-info->maxunder>val)return(1);
- mse+=((y-val)*(y-val));
- n++;
- }
- }
- }
-
- if(n){
- if(info->maxover*info->maxover/n>info->maxerr)return(0);
- if(info->maxunder*info->maxunder/n>info->maxerr)return(0);
- if(mse/n>info->maxerr)return(1);
- }
- return(0);
-}
-
-static int post_Y(int *A,int *B,int pos){
- if(A[pos]<0)
- return B[pos];
- if(B[pos]<0)
- return A[pos];
- return (A[pos]+B[pos])>>1;
-}
-
-static int floor1_forward(vorbis_block *vb,vorbis_look_floor *in,
- const float *mdct, const float *logmdct, /* in */
- const float *logmask, const float *logmax, /* in */
- float *residue, float *codedflr){ /* out */
- static int seq=0;
- long i,j,k,l;
- vorbis_look_floor1 *look=(vorbis_look_floor1 *)in;
- vorbis_info_floor1 *info=look->vi;
- long n=look->n;
- long posts=look->posts;
- long nonzero=0;
- lsfit_acc fits[VIF_POSIT+1];
- int fit_valueA[VIF_POSIT+2]; /* index by range list position */
- int fit_valueB[VIF_POSIT+2]; /* index by range list position */
- int fit_flag[VIF_POSIT+2];
-
- int loneighbor[VIF_POSIT+2]; /* sorted index of range list position (+2) */
- int hineighbor[VIF_POSIT+2];
- int memo[VIF_POSIT+2];
- codec_setup_info *ci=vb->vd->vi->codec_setup;
- static_codebook **sbooks=ci->book_param;
- codebook *books=((backend_lookup_state *)(vb->vd->backend_state))->
- fullbooks;
-
- memset(fit_flag,0,sizeof(fit_flag));
- for(i=0;i<posts;i++)loneighbor[i]=0; /* 0 for the implicit 0 post */
- for(i=0;i<posts;i++)hineighbor[i]=1; /* 1 for the implicit post at n */
- for(i=0;i<posts;i++)memo[i]=-1; /* no neighbor yet */
-
- /* Scan back from high edge to first 'used' frequency */
- for(;n>info->unusedmin_n;n--)
- if(logmdct[n-1]>-floor1_rangedB &&
- logmdct[n-1]+info->twofitatten>logmask[n-1])break;
-
- /* quantize the relevant floor points and collect them into line fit
- structures (one per minimal division) at the same time */
- if(posts==0){
- nonzero+=accumulate_fit(logmask,logmax,0,n,fits,n,info);
- }else{
- for(i=0;i<posts-1;i++)
- nonzero+=accumulate_fit(logmask,logmax,look->sorted_index[i],
- look->sorted_index[i+1],fits+i,
- n,info);
- }
-
- if(nonzero){
- /* start by fitting the implicit base case.... */
- int y0=-200;
- int y1=-200;
- int mse=fit_line(fits,posts-1,&y0,&y1);
- if(mse<0){
- /* Only a single nonzero point */
- y0=-200;
- y1=0;
- fit_line(fits,posts-1,&y0,&y1);
- }
-
- fit_flag[0]=1;
- fit_flag[1]=1;
- fit_valueA[0]=y0;
- fit_valueB[0]=y0;
- fit_valueB[1]=y1;
- fit_valueA[1]=y1;
-
- if(mse>=0){
- /* Non degenerate case */
- /* start progressive splitting. This is a greedy, non-optimal
- algorithm, but simple and close enough to the best
- answer. */
- for(i=2;i<posts;i++){
- int sortpos=look->reverse_index[i];
- int ln=loneighbor[sortpos];
- int hn=hineighbor[sortpos];
-
- /* eliminate repeat searches of a particular range with a memo */
- if(memo[ln]!=hn){
- /* haven't performed this error search yet */
- int lsortpos=look->reverse_index[ln];
- int hsortpos=look->reverse_index[hn];
- memo[ln]=hn;
-
- /* if this is an empty segment, its endpoints don't matter.
- Mark as such */
- for(j=lsortpos;j<hsortpos;j++)
- if(fits[j].un)break;
- if(j==hsortpos){
- /* empty segment; important to note that this does not
- break 0/n post case */
- fit_valueB[ln]=-200;
- if(fit_valueA[ln]<0)
- fit_flag[ln]=0;
- fit_valueA[hn]=-200;
- if(fit_valueB[hn]<0)
- fit_flag[hn]=0;
-
- }else{
- /* A note: we want to bound/minimize *local*, not global, error */
- int lx=info->postlist[ln];
- int hx=info->postlist[hn];
- int ly=post_Y(fit_valueA,fit_valueB,ln);
- int hy=post_Y(fit_valueA,fit_valueB,hn);
-
- if(inspect_error(lx,hx,ly,hy,logmask,logmdct,info)){
- /* outside error bounds/begin search area. Split it. */
- int ly0=-200;
- int ly1=-200;
- int hy0=-200;
- int hy1=-200;
- int lmse=fit_line(fits+lsortpos,sortpos-lsortpos,&ly0,&ly1);
- int hmse=fit_line(fits+sortpos,hsortpos-sortpos,&hy0,&hy1);
-
- /* the boundary/sparsity cases are the hard part. They
- don't happen often given that we use the full mask
- curve (weighted) now, but when they do happen they
- can go boom. Pay them detailed attention */
- /* cases for a segment:
- >=0) normal fit (>=2 unique points)
- -1) one point on x0;
- one point on x1; <-- disallowed by fit_line
- -2) one point in between x0 and x1
- -3) no points */
-
- switch(lmse){
- case -2:
- /* no points in the low segment */
- break;
- case -1:
- ly0=fits[lsortpos].edgey0;
- break;
- /*default:
- break;*/
- }
-
- switch(hmse){
- case -2:
- /* no points in the hi segment */
- break;
- case -1:
- hy0=fits[sortpos].edgey0;
- break;
- }
-
- /* store new edge values */
- fit_valueB[ln]=ly0;
- if(ln==0 && ly0>=0)fit_valueA[ln]=ly0;
- fit_valueA[i]=ly1;
- fit_valueB[i]=hy0;
- fit_valueA[hn]=hy1;
- if(hn==1 && hy1>=0)fit_valueB[hn]=hy1;
-
- if(ly0<0 && fit_valueA[ln]<0)
- fit_flag[ln]=0;
- if(hy1<0 && fit_valueB[hn]<0)
- fit_flag[hn]=0;
-
- if(ly1>=0 || hy0>=0){
- /* store new neighbor values */
- for(j=sortpos-1;j>=0;j--)
- if(hineighbor[j]==hn)
- hineighbor[j]=i;
- else
- break;
- for(j=sortpos+1;j<posts;j++)
- if(loneighbor[j]==ln)
- loneighbor[j]=i;
- else
- break;
-
- /* store flag (set) */
- fit_flag[i]=1;
- }
- }
- }
- }
- }
- }
-
- /* quantize values to multiplier spec */
- switch(info->mult){
- case 1: /* 1024 -> 256 */
- for(i=0;i<posts;i++)
- if(fit_flag[i])
- fit_valueA[i]=post_Y(fit_valueA,fit_valueB,i)>>2;
- break;
- case 2: /* 1024 -> 128 */
- for(i=0;i<posts;i++)
- if(fit_flag[i])
- fit_valueA[i]=post_Y(fit_valueA,fit_valueB,i)>>3;
- break;
- case 3: /* 1024 -> 86 */
- for(i=0;i<posts;i++)
- if(fit_flag[i])
- fit_valueA[i]=post_Y(fit_valueA,fit_valueB,i)/12;
- break;
- case 4: /* 1024 -> 64 */
- for(i=0;i<posts;i++)
- if(fit_flag[i])
- fit_valueA[i]=post_Y(fit_valueA,fit_valueB,i)>>4;
- break;
- }
-
- /* find prediction values for each post and subtract them */
- for(i=2;i<posts;i++){
- int sp=look->reverse_index[i];
- int ln=look->loneighbor[i-2];
- int hn=look->hineighbor[i-2];
- int x0=info->postlist[ln];
- int x1=info->postlist[hn];
- int y0=fit_valueA[ln];
- int y1=fit_valueA[hn];
-
- int predicted=render_point(x0,x1,y0,y1,info->postlist[i]);
-
- if(fit_flag[i]){
- int headroom=(look->quant_q-predicted<predicted?
- look->quant_q-predicted:predicted);
-
- int val=fit_valueA[i]-predicted;
-
- /* at this point the 'deviation' value is in the range +/- max
- range, but the real, unique range can always be mapped to
- only [0-maxrange). So we want to wrap the deviation into
- this limited range, but do it in the way that least screws
- an essentially gaussian probability distribution. */
-
- if(val<0)
- if(val<-headroom)
- val=headroom-val-1;
- else
- val=-1-(val<<1);
- else
- if(val>=headroom)
- val= val+headroom;
- else
- val<<=1;
-
- fit_valueB[i]=val;
-
- /* unroll the neighbor arrays */
- for(j=sp+1;j<posts;j++)
- if(loneighbor[j]==i)
- loneighbor[j]=loneighbor[sp];
- else
- break;
- for(j=sp-1;j>=0;j--)
- if(hineighbor[j]==i)
- hineighbor[j]=hineighbor[sp];
- else
- break;
-
- }else{
- fit_valueA[i]=predicted;
- fit_valueB[i]=0;
- }
- if(fit_valueB[i]==0)
- fit_valueA[i]|=0x8000;
- else{
- fit_valueA[look->loneighbor[i-2]]&=0x7fff;
- fit_valueA[look->hineighbor[i-2]]&=0x7fff;
- }
- }
-
- /* we have everything we need. pack it out */
- /* mark nontrivial floor */
- oggpack_write(&vb->opb,1,1);
-
- /* beginning/end post */
- oggpack_write(&vb->opb,fit_valueA[0],ilog(look->quant_q-1));
- oggpack_write(&vb->opb,fit_valueA[1],ilog(look->quant_q-1));
-
-#ifdef TRAIN_FLOOR1
- {
- FILE *of;
- char buffer[80];
- sprintf(buffer,"line%d_full.vqd",vb->mode);
- of=fopen(buffer,"a");
- for(j=2;j<posts;j++)
- fprintf(of,"%d\n",fit_valueB[j]);
- fclose(of);
- }
-#endif
-
-
- /* partition by partition */
- for(i=0,j=2;i<info->partitions;i++){
- int class=info->partitionclass[i];
- int cdim=info->class_dim[class];
- int csubbits=info->class_subs[class];
- int csub=1<<csubbits;
- int bookas[8]={0,0,0,0,0,0,0,0};
- int cval=0;
- int cshift=0;
-
- /* generate the partition's first stage cascade value */
- if(csubbits){
- int maxval[8];
- for(k=0;k<csub;k++){
- int booknum=info->class_subbook[class][k];
- if(booknum<0){
- maxval[k]=1;
- }else{
- maxval[k]=sbooks[info->class_subbook[class][k]]->entries;
- }
- }
- for(k=0;k<cdim;k++){
- for(l=0;l<csub;l++){
- int val=fit_valueB[j+k];
- if(val<maxval[l]){
- bookas[k]=l;
- break;
- }
- }
- cval|= bookas[k]<<cshift;
- cshift+=csubbits;
- }
- /* write it */
- vorbis_book_encode(books+info->class_book[class],cval,&vb->opb);
-
-#ifdef TRAIN_FLOOR1
- {
- FILE *of;
- char buffer[80];
- sprintf(buffer,"line%d_class%d.vqd",vb->mode,class);
- of=fopen(buffer,"a");
- fprintf(of,"%d\n",cval);
- fclose(of);
- }
-#endif
- }
-
- /* write post values */
- for(k=0;k<cdim;k++){
- int book=info->class_subbook[class][bookas[k]];
- if(book>=0){
- vorbis_book_encode(books+book,
- fit_valueB[j+k],&vb->opb);
-
-#ifdef TRAIN_FLOOR1
- {
- FILE *of;
- char buffer[80];
- sprintf(buffer,"line%d_%dsub%d.vqd",vb->mode,class,bookas[k]);
- of=fopen(buffer,"a");
- fprintf(of,"%d\n",fit_valueB[j+k]);
- fclose(of);
- }
-#endif
- }
- }
- j+=cdim;
- }
-
- {
- /* generate quantized floor equivalent to what we'd unpack in decode */
- int hx;
- int lx=0;
- int ly=fit_valueA[0]*info->mult;
-
- for(j=1;j<posts;j++){
- int current=look->forward_index[j];
- if(!(fit_valueA[current]&0x8000)){
- int hy=(fit_valueA[current]&0x7fff)*info->mult;
- hx=info->postlist[current];
-
- render_line0(lx,hx,ly,hy,codedflr);
-
- lx=hx;
- ly=hy;
- }
- }
- for(j=hx;j<look->n;j++)codedflr[j]=codedflr[j-1]; /* be certain */
-
- /* use it to create residue vector. Eliminate residue elements
- that were below the error training attenuation relative to
- the original mask. This avoids portions of the floor fit
- that were considered 'unused' in fitting from being used in
- coding residue if the unfit values are significantly below
- the original input mask */
- for(j=0;j<n;j++)
- if(logmdct[j]+info->twofitatten<logmask[j])
- residue[j]=0.f;
- else
- residue[j]=mdct[j]/codedflr[j];
- for(j=n;j<look->n;j++)residue[j]=0.f;
-
- }
-
- }else{
- oggpack_write(&vb->opb,0,1);
- memset(codedflr,0,n*sizeof(float));
- memset(residue,0,n*sizeof(float));
- }
- seq++;
- return(nonzero);
-}
-
-static void *floor1_inverse1(vorbis_block *vb,vorbis_look_floor *in){
- vorbis_look_floor1 *look=(vorbis_look_floor1 *)in;
- vorbis_info_floor1 *info=look->vi;
-
- codec_setup_info *ci=vb->vd->vi->codec_setup;
- int i,j,k;
- codebook *books=((backend_lookup_state *)(vb->vd->backend_state))->
- fullbooks;
-
- /* unpack wrapped/predicted values from stream */
- if(oggpack_read(&vb->opb,1)==1){
- int *fit_value=_vorbis_block_alloc(vb,(look->posts)*sizeof(int));
-
- fit_value[0]=oggpack_read(&vb->opb,ilog(look->quant_q-1));
- fit_value[1]=oggpack_read(&vb->opb,ilog(look->quant_q-1));
-
- /* partition by partition */
- /* partition by partition */
- for(i=0,j=2;i<info->partitions;i++){
- int class=info->partitionclass[i];
- int cdim=info->class_dim[class];
- int csubbits=info->class_subs[class];
- int csub=1<<csubbits;
- int cval=0;
-
- /* decode the partition's first stage cascade value */
- if(csubbits){
- cval=vorbis_book_decode(books+info->class_book[class],&vb->opb);
-
- if(cval==-1)goto eop;
- }
-
- for(k=0;k<cdim;k++){
- int book=info->class_subbook[class][cval&(csub-1)];
- cval>>=csubbits;
- if(book>=0){
- if((fit_value[j+k]=vorbis_book_decode(books+book,&vb->opb))==-1)
- goto eop;
- }else{
- fit_value[j+k]=0;
- }
- }
- j+=cdim;
- }
-
- /* unwrap positive values and reconsitute via linear interpolation */
- for(i=2;i<look->posts;i++){
- int predicted=render_point(info->postlist[look->loneighbor[i-2]],
- info->postlist[look->hineighbor[i-2]],
- fit_value[look->loneighbor[i-2]],
- fit_value[look->hineighbor[i-2]],
- info->postlist[i]);
- int hiroom=look->quant_q-predicted;
- int loroom=predicted;
- int room=(hiroom<loroom?hiroom:loroom)<<1;
- int val=fit_value[i];
-
- if(val){
- if(val>=room){
- if(hiroom>loroom){
- val = val-loroom;
- }else{
- val = -1-(val-hiroom);
- }
- }else{
- if(val&1){
- val= -((val+1)>>1);
- }else{
- val>>=1;
- }
- }
-
- fit_value[i]=val+predicted;
- fit_value[look->loneighbor[i-2]]&=0x7fff;
- fit_value[look->hineighbor[i-2]]&=0x7fff;
-
- }else{
- fit_value[i]=predicted|0x8000;
- }
-
- }
-
- return(fit_value);
- }
- eop:
- return(NULL);
-}
-
-static int floor1_inverse2(vorbis_block *vb,vorbis_look_floor *in,void *memo,
- float *out){
- vorbis_look_floor1 *look=(vorbis_look_floor1 *)in;
- vorbis_info_floor1 *info=look->vi;
-
- codec_setup_info *ci=vb->vd->vi->codec_setup;
- int n=ci->blocksizes[vb->mode]/2;
- int j;
-
- if(memo){
- /* render the lines */
- int *fit_value=(int *)memo;
- int hx;
- int lx=0;
- int ly=fit_value[0]*info->mult;
- for(j=1;j<look->posts;j++){
- int current=look->forward_index[j];
- int hy=fit_value[current]&0x7fff;
- if(hy==fit_value[current]){
-
- hy*=info->mult;
- hx=info->postlist[current];
-
- render_line(lx,hx,ly,hy,out);
-
- lx=hx;
- ly=hy;
- }
- }
- for(j=hx;j<n;j++)out[j]*=out[j-1]; /* be certain */
- return(1);
- }
- memset(out,0,sizeof(float)*n);
- return(0);
-}
-
-/* export hooks */
-vorbis_func_floor floor1_exportbundle={
- &floor1_pack,&floor1_unpack,&floor1_look,&floor1_copy_info,&floor1_free_info,
- &floor1_free_look,&floor1_forward,&floor1_inverse1,&floor1_inverse2
-};
-
diff --git a/lib/iir.c b/lib/iir.c
deleted file mode 100644
index 7a4a39e0..00000000
--- a/lib/iir.c
+++ /dev/null
@@ -1,300 +0,0 @@
-/********************************************************************
- * *
- * 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: Direct Form II IIR filters, plus some specializations
- last mod: $Id: iir.c,v 1.10 2001/02/26 03:50:41 xiphmont Exp $
-
- ********************************************************************/
-
-/* LPC is actually a degenerate case of form I/II filters, but we need
- both */
-
-#include <ogg/ogg.h>
-#include <stdlib.h>
-#include <string.h>
-#include <math.h>
-#include "iir.h"
-
-void IIR_init(IIR_state *s,int stages,float gain, float *A, float *B){
- memset(s,0,sizeof(IIR_state));
- s->stages=stages;
- s->gain=1.f/gain;
- s->coeff_A=_ogg_malloc(stages*sizeof(float));
- s->coeff_B=_ogg_malloc((stages+1)*sizeof(float));
- s->z_A=_ogg_calloc(stages*2,sizeof(float));
-
- memcpy(s->coeff_A,A,stages*sizeof(float));
- memcpy(s->coeff_B,B,(stages+1)*sizeof(float));
-}
-
-void IIR_clear(IIR_state *s){
- if(s){
- _ogg_free(s->coeff_A);
- _ogg_free(s->coeff_B);
- _ogg_free(s->z_A);
- memset(s,0,sizeof(IIR_state));
- }
-}
-
-void IIR_reset(IIR_state *s){
- memset(s->z_A,0,sizeof(float)*s->stages*2);
-}
-
-float IIR_filter(IIR_state *s,float in){
- int stages=s->stages,i;
- float newA= in*s->gain;
- float newB=0;
- float *zA=s->z_A+s->ring;
-
- for(i=0;i<stages;i++){
- newA+= s->coeff_A[i] * zA[i];
- newB+= s->coeff_B[i] * zA[i];
- }
- newB+=newA*s->coeff_B[stages];
-
- zA[0]=zA[stages]=newA;
- if(++s->ring>=stages)s->ring=0;
- return(newB);
-}
-
-/* this assumes the symmetrical structure of the feed-forward stage of
- a typical bandpass to save multiplies */
-float IIR_filter_Band(IIR_state *s,float in){
- int stages=s->stages,i;
- int stages2=stages>>1;
- float newA= in*s->gain;
- float newB=0;
- float *zA=s->z_A+s->ring;
-
- newA+= s->coeff_A[0] * zA[0];
- for(i=1;i<stages2;i++){
- newA+= s->coeff_A[i] * zA[i];
- newB+= s->coeff_B[i] * (zA[i]-zA[stages-i]);
- }
- newB+= s->coeff_B[i] * zA[i];
- for(;i<stages;i++)
- newA+= s->coeff_A[i] * zA[i];
-
- newB+=newA-zA[0];
-
- zA[0]=zA[stages]=newA;
- if(++s->ring>=stages)s->ring=0;
- return(newB);
-}
-
-#ifdef _V_SELFTEST
-
-/* z^-stage, z^-stage+1... */
-static float cheb_bandpass_B[]={-1.f,0.f,5.f,0.f,-10.f,0.f,10.f,0.f,-5.f,0.f,1f};
-static float cheb_bandpass_A[]={-0.6665900311f,
- 1.0070146601f,
- -3.1262875409f,
- 3.5017171569f,
- -6.2779211945f,
- 5.2966481740f,
- -6.7570216587f,
- 4.0760335768f,
- -3.9134284363f,
- 1.3997338886f};
-
-static float data[128]={
- 0.0426331f,
- 0.0384521f,
- 0.0345764f,
- 0.0346069f,
- 0.0314636f,
- 0.0310059f,
- 0.0318604f,
- 0.0336304f,
- 0.036438f,
- 0.0348511f,
- 0.0354919f,
- 0.0343628f,
- 0.0325623f,
- 0.0318909f,
- 0.0263367f,
- 0.0225525f,
- 0.0195618f,
- 0.0160828f,
- 0.0168762f,
- 0.0145569f,
- 0.0126343f,
- 0.0127258f,
- 0.00820923f,
- 0.00787354f,
- 0.00558472f,
- 0.00204468f,
- 3.05176e-05f,
- -0.00357056f,
- -0.00570679f,
- -0.00991821f,
- -0.0101013f,
- -0.00881958f,
- -0.0108948f,
- -0.0110168f,
- -0.0119324f,
- -0.0161438f,
- -0.0194702f,
- -0.0229187f,
- -0.0260315f,
- -0.0282288f,
- -0.0306091f,
- -0.0330505f,
- -0.0364685f,
- -0.0385742f,
- -0.0428772f,
- -0.043457f,
- -0.0425415f,
- -0.0462341f,
- -0.0467529f,
- -0.0489807f,
- -0.0520325f,
- -0.0558167f,
- -0.0596924f,
- -0.0591431f,
- -0.0612793f,
- -0.0618591f,
- -0.0615845f,
- -0.0634155f,
- -0.0639648f,
- -0.0683594f,
- -0.0718079f,
- -0.0729675f,
- -0.0791931f,
- -0.0860901f,
- -0.0885315f,
- -0.088623f,
- -0.089386f,
- -0.0899353f,
- -0.0886841f,
- -0.0910645f,
- -0.0948181f,
- -0.0919495f,
- -0.0891418f,
- -0.0916443f,
- -0.096344f,
- -0.100464f,
- -0.105499f,
- -0.108612f,
- -0.112213f,
- -0.117676f,
- -0.120911f,
- -0.124329f,
- -0.122162f,
- -0.120605f,
- -0.12326f,
- -0.12619f,
- -0.128998f,
- -0.13205f,
- -0.134247f,
- -0.137939f,
- -0.143555f,
- -0.14389f,
- -0.14859f,
- -0.153717f,
- -0.159851f,
- -0.164551f,
- -0.162811f,
- -0.164276f,
- -0.156952f,
- -0.140564f,
- -0.123291f,
- -0.10321f,
- -0.0827637f,
- -0.0652466f,
- -0.053772f,
- -0.0509949f,
- -0.0577698f,
- -0.0818176f,
- -0.114929f,
- -0.148895f,
- -0.181122f,
- -0.200714f,
- -0.21048f,
- -0.203644f,
- -0.179413f,
- -0.145325f,
- -0.104492f,
- -0.0658264f,
- -0.0332031f,
- -0.0106201f,
- -0.00363159f,
- -0.00909424f,
- -0.0244141f,
- -0.0422058f,
- -0.0537415f,
- -0.0610046f,
- -0.0609741f,
- -0.0547791f};
-
-/* comparison test code from http://www-users.cs.york.ac.uk/~fisher/mkfilter/
- (the above page kicks ass, BTW)*/
-
-#define NZEROS 10
-#define NPOLES 10
-#define GAIN 4.599477515e+02f
-
-static float xv[NZEROS+1], yv[NPOLES+1];
-
-static float filterloop(float next){
- xv[0] = xv[1]; xv[1] = xv[2]; xv[2] = xv[3]; xv[3] = xv[4]; xv[4] = xv[5];
- xv[5] = xv[6]; xv[6] = xv[7]; xv[7] = xv[8]; xv[8] = xv[9]; xv[9] = xv[10];
- xv[10] = next / GAIN;
- yv[0] = yv[1]; yv[1] = yv[2]; yv[2] = yv[3]; yv[3] = yv[4]; yv[4] = yv[5];
- yv[5] = yv[6]; yv[6] = yv[7]; yv[7] = yv[8]; yv[8] = yv[9]; yv[9] = yv[10];
- yv[10] = (xv[10] - xv[0]) + 5 * (xv[2] - xv[8]) + 10 * (xv[6] - xv[4])
- + ( -0.6665900311f * yv[0]) + ( 1.0070146601f * yv[1])
- + ( -3.1262875409f * yv[2]) + ( 3.5017171569f * yv[3])
- + ( -6.2779211945f * yv[4]) + ( 5.2966481740f * yv[5])
- + ( -6.7570216587f * yv[6]) + ( 4.0760335768f * yv[7])
- + ( -3.9134284363f * yv[8]) + ( 1.3997338886f * yv[9]);
- return(yv[10]);
-}
-
-#include <stdio.h>
-int main(){
-
- /* run the pregenerated Chebyshev filter, then our own distillation
- through the generic and specialized code */
- float *work=_ogg_malloc(128*sizeof(float));
- IIR_state iir;
- int i;
-
- for(i=0;i<128;i++)work[i]=filterloop(data[i]);
- {
- FILE *out=fopen("IIR_ref.m","w");
- for(i=0;i<128;i++)fprintf(out,"%g\n",work[i]);
- fclose(out);
- }
-
- IIR_init(&iir,NPOLES,GAIN,cheb_bandpass_A,cheb_bandpass_B);
- for(i=0;i<128;i++)work[i]=IIR_filter(&iir,data[i]);
- {
- FILE *out=fopen("IIR_gen.m","w");
- for(i=0;i<128;i++)fprintf(out,"%g\n",work[i]);
- fclose(out);
- }
- IIR_clear(&iir);
-
- IIR_init(&iir,NPOLES,GAIN,cheb_bandpass_A,cheb_bandpass_B);
- for(i=0;i<128;i++)work[i]=IIR_filter_ChebBand(&iir,data[i]);
- {
- FILE *out=fopen("IIR_cheb.m","w");
- for(i=0;i<128;i++)fprintf(out,"%g\n",work[i]);
- fclose(out);
- }
- IIR_clear(&iir);
-
- return(0);
-}
-
-#endif
diff --git a/lib/iir.h b/lib/iir.h
deleted file mode 100644
index a3be4790..00000000
--- a/lib/iir.h
+++ /dev/null
@@ -1,36 +0,0 @@
-/********************************************************************
- * *
- * 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: Direct Form I, II IIR filters, plus some specializations
- last mod: $Id: iir.h,v 1.7 2001/02/26 03:50:41 xiphmont Exp $
-
- ********************************************************************/
-
-#ifndef _V_IIR_H_
-#define _V_IIR_H_
-
-typedef struct {
- int stages;
- float *coeff_A;
- float *coeff_B;
- float *z_A;
- int ring;
- float gain;
-} IIR_state;
-
-extern void IIR_init(IIR_state *s,int stages,float gain, float *A, float *B);
-extern void IIR_clear(IIR_state *s);
-extern float IIR_filter(IIR_state *s,float in);
-extern float IIR_filter_Band(IIR_state *s,float in);
-extern void IIR_reset(IIR_state *s);
-
-#endif
diff --git a/lib/info.c b/lib/info.c
deleted file mode 100644
index 50a484cc..00000000
--- a/lib/info.c
+++ /dev/null
@@ -1,589 +0,0 @@
-/********************************************************************
- * *
- * 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: maintain the info structure, info <-> header packets
- last mod: $Id: info.c,v 1.41 2001/06/15 21:15:39 xiphmont Exp $
-
- ********************************************************************/
-
-/* general handling of the header and the vorbis_info structure (and
- substructures) */
-
-#include <stdlib.h>
-#include <string.h>
-#include <ctype.h>
-#include <ogg/ogg.h>
-#include "vorbis/codec.h"
-#include "backends.h"
-#include "codec_internal.h"
-#include "codebook.h"
-#include "registry.h"
-#include "window.h"
-#include "psy.h"
-#include "misc.h"
-#include "os.h"
-
-/* helpers */
-static int ilog2(unsigned int v){
- int ret=0;
- while(v>1){
- ret++;
- v>>=1;
- }
- return(ret);
-}
-
-static void _v_writestring(oggpack_buffer *o,char *s){
- while(*s){
- oggpack_write(o,*s++,8);
- }
-}
-
-static void _v_readstring(oggpack_buffer *o,char *buf,int bytes){
- while(bytes--){
- *buf++=oggpack_read(o,8);
- }
-}
-
-void vorbis_comment_init(vorbis_comment *vc){
- memset(vc,0,sizeof(vorbis_comment));
-}
-
-void vorbis_comment_add(vorbis_comment *vc,char *comment){
- vc->user_comments=_ogg_realloc(vc->user_comments,
- (vc->comments+2)*sizeof(char *));
- vc->comment_lengths=_ogg_realloc(vc->comment_lengths,
- (vc->comments+2)*sizeof(int));
- vc->user_comments[vc->comments]=strdup(comment);
- vc->comment_lengths[vc->comments]=strlen(comment);
- vc->comments++;
- vc->user_comments[vc->comments]=NULL;
-}
-
-void vorbis_comment_add_tag(vorbis_comment *vc, char *tag, char *contents){
- char *comment=alloca(strlen(tag)+strlen(contents)+2); /* +2 for = and \0 */
- strcpy(comment, tag);
- strcat(comment, "=");
- strcat(comment, contents);
- vorbis_comment_add(vc, comment);
-}
-
-/* This is more or less the same as strncasecmp - but that doesn't exist
- * everywhere, and this is a fairly trivial function, so we include it */
-static int tagcompare(const char *s1, const char *s2, int n){
- int c=0;
- while(c < n){
- if(toupper(s1[c]) != toupper(s2[c]))
- return !0;
- c++;
- }
- return 0;
-}
-
-char *vorbis_comment_query(vorbis_comment *vc, char *tag, int count){
- long i;
- int found = 0;
- int taglen = strlen(tag)+1; /* +1 for the = we append */
- char *fulltag = alloca(taglen+ 1);
-
- strcpy(fulltag, tag);
- strcat(fulltag, "=");
-
- for(i=0;i<vc->comments;i++){
- if(!tagcompare(vc->user_comments[i], fulltag, taglen)){
- if(count == found)
- /* We return a pointer to the data, not a copy */
- return vc->user_comments[i] + taglen;
- else
- found++;
- }
- }
- return NULL; /* didn't find anything */
-}
-
-int vorbis_comment_query_count(vorbis_comment *vc, char *tag){
- int i,count=0;
- int taglen = strlen(tag)+1; /* +1 for the = we append */
- char *fulltag = alloca(taglen+1);
- strcpy(fulltag,tag);
- strcat(fulltag, "=");
-
- for(i=0;i<vc->comments;i++){
- if(!tagcompare(vc->user_comments[i], fulltag, taglen))
- count++;
- }
-
- return count;
-}
-
-void vorbis_comment_clear(vorbis_comment *vc){
- if(vc){
- long i;
- for(i=0;i<vc->comments;i++)
- if(vc->user_comments[i])_ogg_free(vc->user_comments[i]);
- if(vc->user_comments)_ogg_free(vc->user_comments);
- if(vc->comment_lengths)_ogg_free(vc->comment_lengths);
- if(vc->vendor)_ogg_free(vc->vendor);
- }
- memset(vc,0,sizeof(vorbis_comment));
-}
-
-/* used by synthesis, which has a full, alloced vi */
-void vorbis_info_init(vorbis_info *vi){
- memset(vi,0,sizeof(vorbis_info));
- vi->codec_setup=_ogg_calloc(1,sizeof(codec_setup_info));
-}
-
-void vorbis_info_clear(vorbis_info *vi){
- codec_setup_info *ci=vi->codec_setup;
- int i;
-
- if(ci){
-
- for(i=0;i<ci->modes;i++)
- if(ci->mode_param[i])_ogg_free(ci->mode_param[i]);
-
- for(i=0;i<ci->maps;i++) /* unpack does the range checking */
- _mapping_P[ci->map_type[i]]->free_info(ci->map_param[i]);
-
- for(i=0;i<ci->times;i++) /* unpack does the range checking */
- _time_P[ci->time_type[i]]->free_info(ci->time_param[i]);
-
- for(i=0;i<ci->floors;i++) /* unpack does the range checking */
- _floor_P[ci->floor_type[i]]->free_info(ci->floor_param[i]);
-
- for(i=0;i<ci->residues;i++) /* unpack does the range checking */
- _residue_P[ci->residue_type[i]]->free_info(ci->residue_param[i]);
-
- for(i=0;i<ci->books;i++){
- if(ci->book_param[i]){
- /* knows if the book was not alloced */
- vorbis_staticbook_destroy(ci->book_param[i]);
- }
- }
-
- for(i=0;i<ci->psys;i++)
- _vi_psy_free(ci->psy_param[i]);
-
- _ogg_free(ci);
- }
-
- memset(vi,0,sizeof(vorbis_info));
-}
-
-/* Header packing/unpacking ********************************************/
-
-static int _vorbis_unpack_info(vorbis_info *vi,oggpack_buffer *opb){
- codec_setup_info *ci=vi->codec_setup;
- if(!ci)return(OV_EFAULT);
-
- vi->version=oggpack_read(opb,32);
- if(vi->version!=0)return(OV_EVERSION);
-
- vi->channels=oggpack_read(opb,8);
- vi->rate=oggpack_read(opb,32);
-
- vi->bitrate_upper=oggpack_read(opb,32);
- vi->bitrate_nominal=oggpack_read(opb,32);
- vi->bitrate_lower=oggpack_read(opb,32);
-
- ci->blocksizes[0]=1<<oggpack_read(opb,4);
- ci->blocksizes[1]=1<<oggpack_read(opb,4);
-
- if(vi->rate<1)goto err_out;
- if(vi->channels<1)goto err_out;
- if(ci->blocksizes[0]<8)goto err_out;
- if(ci->blocksizes[1]<ci->blocksizes[0])goto err_out;
-
- if(oggpack_read(opb,1)!=1)goto err_out; /* EOP check */
-
- return(0);
- err_out:
- vorbis_info_clear(vi);
- return(OV_EBADHEADER);
-}
-
-static int _vorbis_unpack_comment(vorbis_comment *vc,oggpack_buffer *opb){
- int i;
- int vendorlen=oggpack_read(opb,32);
- if(vendorlen<0)goto err_out;
- vc->vendor=_ogg_calloc(vendorlen+1,1);
- _v_readstring(opb,vc->vendor,vendorlen);
- vc->comments=oggpack_read(opb,32);
- if(vc->comments<0)goto err_out;
- vc->user_comments=_ogg_calloc(vc->comments+1,sizeof(char **));
- vc->comment_lengths=_ogg_calloc(vc->comments+1, sizeof(int));
-
- for(i=0;i<vc->comments;i++){
- int len=oggpack_read(opb,32);
- if(len<0)goto err_out;
- vc->comment_lengths[i]=len;
- vc->user_comments[i]=_ogg_calloc(len+1,1);
- _v_readstring(opb,vc->user_comments[i],len);
- }
- if(oggpack_read(opb,1)!=1)goto err_out; /* EOP check */
-
- return(0);
- err_out:
- vorbis_comment_clear(vc);
- return(OV_EBADHEADER);
-}
-
-/* all of the real encoding details are here. The modes, books,
- everything */
-static int _vorbis_unpack_books(vorbis_info *vi,oggpack_buffer *opb){
- codec_setup_info *ci=vi->codec_setup;
- int i;
- if(!ci)return(OV_EFAULT);
-
- /* codebooks */
- ci->books=oggpack_read(opb,8)+1;
- /*ci->book_param=_ogg_calloc(ci->books,sizeof(static_codebook *));*/
- for(i=0;i<ci->books;i++){
- ci->book_param[i]=_ogg_calloc(1,sizeof(static_codebook));
- if(vorbis_staticbook_unpack(opb,ci->book_param[i]))goto err_out;
- }
-
- /* time backend settings */
- ci->times=oggpack_read(opb,6)+1;
- /*ci->time_type=_ogg_malloc(ci->times*sizeof(int));*/
- /*ci->time_param=_ogg_calloc(ci->times,sizeof(void *));*/
- for(i=0;i<ci->times;i++){
- ci->time_type[i]=oggpack_read(opb,16);
- if(ci->time_type[i]<0 || ci->time_type[i]>=VI_TIMEB)goto err_out;
- ci->time_param[i]=_time_P[ci->time_type[i]]->unpack(vi,opb);
- if(!ci->time_param[i])goto err_out;
- }
-
- /* floor backend settings */
- ci->floors=oggpack_read(opb,6)+1;
- /*ci->floor_type=_ogg_malloc(ci->floors*sizeof(int));*/
- /*ci->floor_param=_ogg_calloc(ci->floors,sizeof(void *));*/
- for(i=0;i<ci->floors;i++){
- ci->floor_type[i]=oggpack_read(opb,16);
- if(ci->floor_type[i]<0 || ci->floor_type[i]>=VI_FLOORB)goto err_out;
- ci->floor_param[i]=_floor_P[ci->floor_type[i]]->unpack(vi,opb);
- if(!ci->floor_param[i])goto err_out;
- }
-
- /* residue backend settings */
- ci->residues=oggpack_read(opb,6)+1;
- /*ci->residue_type=_ogg_malloc(ci->residues*sizeof(int));*/
- /*ci->residue_param=_ogg_calloc(ci->residues,sizeof(void *));*/
- for(i=0;i<ci->residues;i++){
- ci->residue_type[i]=oggpack_read(opb,16);
- if(ci->residue_type[i]<0 || ci->residue_type[i]>=VI_RESB)goto err_out;
- ci->residue_param[i]=_residue_P[ci->residue_type[i]]->unpack(vi,opb);
- if(!ci->residue_param[i])goto err_out;
- }
-
- /* map backend settings */
- ci->maps=oggpack_read(opb,6)+1;
- /*ci->map_type=_ogg_malloc(ci->maps*sizeof(int));*/
- /*ci->map_param=_ogg_calloc(ci->maps,sizeof(void *));*/
- for(i=0;i<ci->maps;i++){
- ci->map_type[i]=oggpack_read(opb,16);
- if(ci->map_type[i]<0 || ci->map_type[i]>=VI_MAPB)goto err_out;
- ci->map_param[i]=_mapping_P[ci->map_type[i]]->unpack(vi,opb);
- if(!ci->map_param[i])goto err_out;
- }
-
- /* mode settings */
- ci->modes=oggpack_read(opb,6)+1;
- /*vi->mode_param=_ogg_calloc(vi->modes,sizeof(void *));*/
- for(i=0;i<ci->modes;i++){
- ci->mode_param[i]=_ogg_calloc(1,sizeof(vorbis_info_mode));
- ci->mode_param[i]->blockflag=oggpack_read(opb,1);
- ci->mode_param[i]->windowtype=oggpack_read(opb,16);
- ci->mode_param[i]->transformtype=oggpack_read(opb,16);
- ci->mode_param[i]->mapping=oggpack_read(opb,8);
-
- if(ci->mode_param[i]->windowtype>=VI_WINDOWB)goto err_out;
- if(ci->mode_param[i]->transformtype>=VI_WINDOWB)goto err_out;
- if(ci->mode_param[i]->mapping>=ci->maps)goto err_out;
- }
-
- if(oggpack_read(opb,1)!=1)goto err_out; /* top level EOP check */
-
- return(0);
- err_out:
- vorbis_info_clear(vi);
- return(OV_EBADHEADER);
-}
-
-/* The Vorbis header is in three packets; the initial small packet in
- the first page that identifies basic parameters, a second packet
- with bitstream comments and a third packet that holds the
- codebook. */
-
-int vorbis_synthesis_headerin(vorbis_info *vi,vorbis_comment *vc,ogg_packet *op){
- oggpack_buffer opb;
-
- if(op){
- oggpack_readinit(&opb,op->packet,op->bytes);
-
- /* Which of the three types of header is this? */
- /* Also verify header-ness, vorbis */
- {
- char buffer[6];
- int packtype=oggpack_read(&opb,8);
- memset(buffer,0,6);
- _v_readstring(&opb,buffer,6);
- if(memcmp(buffer,"vorbis",6)){
- /* not a vorbis header */
- return(OV_ENOTVORBIS);
- }
- switch(packtype){
- case 0x01: /* least significant *bit* is read first */
- if(!op->b_o_s){
- /* Not the initial packet */
- return(OV_EBADHEADER);
- }
- if(vi->rate!=0){
- /* previously initialized info header */
- return(OV_EBADHEADER);
- }
-
- return(_vorbis_unpack_info(vi,&opb));
-
- case 0x03: /* least significant *bit* is read first */
- if(vi->rate==0){
- /* um... we didn't get the initial header */
- return(OV_EBADHEADER);
- }
-
- return(_vorbis_unpack_comment(vc,&opb));
-
- case 0x05: /* least significant *bit* is read first */
- if(vi->rate==0 || vc->vendor==NULL){
- /* um... we didn;t get the initial header or comments yet */
- return(OV_EBADHEADER);
- }
-
- return(_vorbis_unpack_books(vi,&opb));
-
- default:
- /* Not a valid vorbis header type */
- return(OV_EBADHEADER);
- break;
- }
- }
- }
- return(OV_EBADHEADER);
-}
-
-/* pack side **********************************************************/
-
-static int _vorbis_pack_info(oggpack_buffer *opb,vorbis_info *vi){
- codec_setup_info *ci=vi->codec_setup;
- if(!ci)return(OV_EFAULT);
-
- /* preamble */
- oggpack_write(opb,0x01,8);
- _v_writestring(opb,"vorbis");
-
- /* basic information about the stream */
- oggpack_write(opb,0x00,32);
- oggpack_write(opb,vi->channels,8);
- oggpack_write(opb,vi->rate,32);
-
- oggpack_write(opb,vi->bitrate_upper,32);
- oggpack_write(opb,vi->bitrate_nominal,32);
- oggpack_write(opb,vi->bitrate_lower,32);
-
- oggpack_write(opb,ilog2(ci->blocksizes[0]),4);
- oggpack_write(opb,ilog2(ci->blocksizes[1]),4);
- oggpack_write(opb,1,1);
-
- return(0);
-}
-
-static int _vorbis_pack_comment(oggpack_buffer *opb,vorbis_comment *vc){
- char temp[]="Xiphophorus libVorbis I 20010615";
-
- /* preamble */
- oggpack_write(opb,0x03,8);
- _v_writestring(opb,"vorbis");
-
- /* vendor */
- oggpack_write(opb,strlen(temp),32);
- _v_writestring(opb,temp);
-
- /* comments */
-
- oggpack_write(opb,vc->comments,32);
- if(vc->comments){
- int i;
- for(i=0;i<vc->comments;i++){
- if(vc->user_comments[i]){
- oggpack_write(opb,vc->comment_lengths[i],32);
- _v_writestring(opb,vc->user_comments[i]);
- }else{
- oggpack_write(opb,0,32);
- }
- }
- }
- oggpack_write(opb,1,1);
-
- return(0);
-}
-
-static int _vorbis_pack_books(oggpack_buffer *opb,vorbis_info *vi){
- codec_setup_info *ci=vi->codec_setup;
- int i;
- if(!ci)return(OV_EFAULT);
-
- oggpack_write(opb,0x05,8);
- _v_writestring(opb,"vorbis");
-
- /* books */
- oggpack_write(opb,ci->books-1,8);
- for(i=0;i<ci->books;i++)
- if(vorbis_staticbook_pack(ci->book_param[i],opb))goto err_out;
-
- /* times */
- oggpack_write(opb,ci->times-1,6);
- for(i=0;i<ci->times;i++){
- oggpack_write(opb,ci->time_type[i],16);
- _time_P[ci->time_type[i]]->pack(ci->time_param[i],opb);
- }
-
- /* floors */
- oggpack_write(opb,ci->floors-1,6);
- for(i=0;i<ci->floors;i++){
- oggpack_write(opb,ci->floor_type[i],16);
- _floor_P[ci->floor_type[i]]->pack(ci->floor_param[i],opb);
- }
-
- /* residues */
- oggpack_write(opb,ci->residues-1,6);
- for(i=0;i<ci->residues;i++){
- oggpack_write(opb,ci->residue_type[i],16);
- _residue_P[ci->residue_type[i]]->pack(ci->residue_param[i],opb);
- }
-
- /* maps */
- oggpack_write(opb,ci->maps-1,6);
- for(i=0;i<ci->maps;i++){
- oggpack_write(opb,ci->map_type[i],16);
- _mapping_P[ci->map_type[i]]->pack(vi,ci->map_param[i],opb);
- }
-
- /* modes */
- oggpack_write(opb,ci->modes-1,6);
- for(i=0;i<ci->modes;i++){
- oggpack_write(opb,ci->mode_param[i]->blockflag,1);
- oggpack_write(opb,ci->mode_param[i]->windowtype,16);
- oggpack_write(opb,ci->mode_param[i]->transformtype,16);
- oggpack_write(opb,ci->mode_param[i]->mapping,8);
- }
- oggpack_write(opb,1,1);
-
- return(0);
-err_out:
- return(-1);
-}
-
-int vorbis_commentheader_out(vorbis_comment *vc,
- ogg_packet *op){
-
- oggpack_buffer opb;
-
- oggpack_writeinit(&opb);
- if(_vorbis_pack_comment(&opb,vc)) return OV_EIMPL;
-
- op->packet = _ogg_malloc(oggpack_bytes(&opb));
- memcpy(op->packet, opb.buffer, oggpack_bytes(&opb));
-
- op->bytes=oggpack_bytes(&opb);
- op->b_o_s=0;
- op->e_o_s=0;
- op->granulepos=0;
-
- return 0;
-}
-
-int vorbis_analysis_headerout(vorbis_dsp_state *v,
- vorbis_comment *vc,
- ogg_packet *op,
- ogg_packet *op_comm,
- ogg_packet *op_code){
- int ret=OV_EIMPL;
- vorbis_info *vi=v->vi;
- oggpack_buffer opb;
- backend_lookup_state *b=v->backend_state;
-
- if(!b){
- ret=OV_EFAULT;
- goto err_out;
- }
-
- /* first header packet **********************************************/
-
- oggpack_writeinit(&opb);
- if(_vorbis_pack_info(&opb,vi))goto err_out;
-
- /* build the packet */
- if(b->header)_ogg_free(b->header);
- b->header=_ogg_malloc(oggpack_bytes(&opb));
- memcpy(b->header,opb.buffer,oggpack_bytes(&opb));
- op->packet=b->header;
- op->bytes=oggpack_bytes(&opb);
- op->b_o_s=1;
- op->e_o_s=0;
- op->granulepos=0;
-
- /* second header packet (comments) **********************************/
-
- oggpack_reset(&opb);
- if(_vorbis_pack_comment(&opb,vc))goto err_out;
-
- if(b->header1)_ogg_free(b->header1);
- b->header1=_ogg_malloc(oggpack_bytes(&opb));
- memcpy(b->header1,opb.buffer,oggpack_bytes(&opb));
- op_comm->packet=b->header1;
- op_comm->bytes=oggpack_bytes(&opb);
- op_comm->b_o_s=0;
- op_comm->e_o_s=0;
- op_comm->granulepos=0;
-
- /* third header packet (modes/codebooks) ****************************/
-
- oggpack_reset(&opb);
- if(_vorbis_pack_books(&opb,vi))goto err_out;
-
- if(b->header2)_ogg_free(b->header2);
- b->header2=_ogg_malloc(oggpack_bytes(&opb));
- memcpy(b->header2,opb.buffer,oggpack_bytes(&opb));
- op_code->packet=b->header2;
- op_code->bytes=oggpack_bytes(&opb);
- op_code->b_o_s=0;
- op_code->e_o_s=0;
- op_code->granulepos=0;
-
- oggpack_writeclear(&opb);
- return(0);
- err_out:
- oggpack_writeclear(&opb);
- memset(op,0,sizeof(ogg_packet));
- memset(op_comm,0,sizeof(ogg_packet));
- memset(op_code,0,sizeof(ogg_packet));
-
- if(b->header)_ogg_free(b->header);
- if(b->header1)_ogg_free(b->header1);
- if(b->header2)_ogg_free(b->header2);
- b->header=NULL;
- b->header1=NULL;
- b->header2=NULL;
- return(ret);
-}
-
diff --git a/lib/lookup.c b/lib/lookup.c
deleted file mode 100644
index b1c43366..00000000
--- a/lib/lookup.c
+++ /dev/null
@@ -1,93 +0,0 @@
-/********************************************************************
- * *
- * 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: lookup based functions
- last mod: $Id: lookup.c,v 1.7 2001/02/26 03:50:42 xiphmont Exp $
-
- ********************************************************************/
-
-#include <math.h>
-#include "lookup.h"
-#include "lookup_data.h"
-#include "os.h"
-
-#ifdef FLOAT_LOOKUP
-
-/* interpolated lookup based cos function, domain 0 to PI only */
-float vorbis_coslook(float a){
- double d=a*(.31830989*(float)COS_LOOKUP_SZ);
- int i=vorbis_ftoi(d-.5);
-
- return COS_LOOKUP[i]+ (d-i)*(COS_LOOKUP[i+1]-COS_LOOKUP[i]);
-}
-
-/* interpolated 1./sqrt(p) where .5 <= p < 1. */
-float vorbis_invsqlook(float a){
- double d=a*(2.f*(float)INVSQ_LOOKUP_SZ)-(float)INVSQ_LOOKUP_SZ;
- int i=vorbis_ftoi(d-.5f);
- return INVSQ_LOOKUP[i]+ (d-i)*(INVSQ_LOOKUP[i+1]-INVSQ_LOOKUP[i]);
-}
-
-/* interpolated 1./sqrt(p) where .5 <= p < 1. */
-float vorbis_invsq2explook(int a){
- return INVSQ2EXP_LOOKUP[a-INVSQ2EXP_LOOKUP_MIN];
-}
-
-#include <stdio.h>
-/* interpolated lookup based fromdB function, domain -140dB to 0dB only */
-float vorbis_fromdBlook(float a){
- int i=vorbis_ftoi(a*((float)(-(1<<FROMdB2_SHIFT)))-.5f);
- return (i<0)?1.f:
- ((i>=(FROMdB_LOOKUP_SZ<<FROMdB_SHIFT))?0.f:
- FROMdB_LOOKUP[i>>FROMdB_SHIFT]*FROMdB2_LOOKUP[i&FROMdB2_MASK]);
-}
-
-#endif
-
-#ifdef INT_LOOKUP
-/* interpolated 1./sqrt(p) where .5 <= a < 1. (.100000... to .111111...) in
- 16.16 format
-
- returns in m.8 format */
-long vorbis_invsqlook_i(long a,long e){
- long i=(a&0x7fff)>>(INVSQ_LOOKUP_I_SHIFT-1);
- long d=(a&INVSQ_LOOKUP_I_MASK)<<(16-INVSQ_LOOKUP_I_SHIFT); /* 0.16 */
- long val=INVSQ_LOOKUP_I[i]- /* 1.16 */
- (((INVSQ_LOOKUP_I[i]-INVSQ_LOOKUP_I[i+1])* /* 0.16 */
- d)>>16); /* result 1.16 */
-
- e+=32;
- if(e&1)val=(val*5792)>>13; /* multiply val by 1/sqrt(2) */
- e=(e>>1)-8;
-
- return(val>>e);
-}
-
-/* interpolated lookup based fromdB function, domain -140dB to 0dB only */
-/* a is in n.12 format */
-float vorbis_fromdBlook_i(long a){
- int i=(-a)>>(12-FROMdB2_SHIFT);
- return (i<0)?1.f:
- ((i>=(FROMdB_LOOKUP_SZ<<FROMdB_SHIFT))?0.f:
- FROMdB_LOOKUP[i>>FROMdB_SHIFT]*FROMdB2_LOOKUP[i&FROMdB2_MASK]);
-}
-
-/* interpolated lookup based cos function, domain 0 to PI only */
-/* a is in 0.16 format, where 0==0, 2^^16-1==PI, return 0.14 */
-long vorbis_coslook_i(long a){
- int i=a>>COS_LOOKUP_I_SHIFT;
- int d=a&COS_LOOKUP_I_MASK;
- return COS_LOOKUP_I[i]- ((d*(COS_LOOKUP_I[i]-COS_LOOKUP_I[i+1]))>>
- COS_LOOKUP_I_SHIFT);
-}
-
-#endif
diff --git a/lib/lookup.h b/lib/lookup.h
deleted file mode 100644
index 126e8286..00000000
--- a/lib/lookup.h
+++ /dev/null
@@ -1,32 +0,0 @@
-/********************************************************************
- * *
- * 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: lookup based functions
- last mod: $Id: lookup.h,v 1.5 2001/02/26 03:50:42 xiphmont Exp $
-
- ********************************************************************/
-
-#ifndef _V_LOOKUP_H_
-
-#ifdef FLOAT_LOOKUP
-extern float vorbis_coslook(float a);
-extern float vorbis_invsqlook(float a);
-extern float vorbis_invsq2explook(int a);
-extern float vorbis_fromdBlook(float a);
-#endif
-#ifdef INT_LOOKUP
-extern long vorbis_invsqlook_i(long a,long e);
-extern long vorbis_coslook_i(long a);
-extern float vorbis_fromdBlook_i(long a);
-#endif
-
-#endif
diff --git a/lib/lookup_data.h b/lib/lookup_data.h
deleted file mode 100644
index 5798fb22..00000000
--- a/lib/lookup_data.h
+++ /dev/null
@@ -1,189 +0,0 @@
-/********************************************************************
- * *
- * 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: lookup data; generated by lookups.pl; edit there
- last mod: $Id: lookup_data.h,v 1.7 2001/02/26 03:50:42 xiphmont Exp $
-
- ********************************************************************/
-
-#ifndef _V_LOOKUP_DATA_H_
-
-#ifdef FLOAT_LOOKUP
-#define COS_LOOKUP_SZ 128
-static float COS_LOOKUP[COS_LOOKUP_SZ+1]={
- +1.0000000000000f,+0.9996988186962f,+0.9987954562052f,+0.9972904566787f,
- +0.9951847266722f,+0.9924795345987f,+0.9891765099648f,+0.9852776423889f,
- +0.9807852804032f,+0.9757021300385f,+0.9700312531945f,+0.9637760657954f,
- +0.9569403357322f,+0.9495281805930f,+0.9415440651830f,+0.9329927988347f,
- +0.9238795325113f,+0.9142097557035f,+0.9039892931234f,+0.8932243011955f,
- +0.8819212643484f,+0.8700869911087f,+0.8577286100003f,+0.8448535652497f,
- +0.8314696123025f,+0.8175848131516f,+0.8032075314806f,+0.7883464276266f,
- +0.7730104533627f,+0.7572088465065f,+0.7409511253550f,+0.7242470829515f,
- +0.7071067811865f,+0.6895405447371f,+0.6715589548470f,+0.6531728429538f,
- +0.6343932841636f,+0.6152315905806f,+0.5956993044924f,+0.5758081914178f,
- +0.5555702330196f,+0.5349976198871f,+0.5141027441932f,+0.4928981922298f,
- +0.4713967368260f,+0.4496113296546f,+0.4275550934303f,+0.4052413140050f,
- +0.3826834323651f,+0.3598950365350f,+0.3368898533922f,+0.3136817403989f,
- +0.2902846772545f,+0.2667127574749f,+0.2429801799033f,+0.2191012401569f,
- +0.1950903220161f,+0.1709618887603f,+0.1467304744554f,+0.1224106751992f,
- +0.0980171403296f,+0.0735645635997f,+0.0490676743274f,+0.0245412285229f,
- +0.0000000000000f,-0.0245412285229f,-0.0490676743274f,-0.0735645635997f,
- -0.0980171403296f,-0.1224106751992f,-0.1467304744554f,-0.1709618887603f,
- -0.1950903220161f,-0.2191012401569f,-0.2429801799033f,-0.2667127574749f,
- -0.2902846772545f,-0.3136817403989f,-0.3368898533922f,-0.3598950365350f,
- -0.3826834323651f,-0.4052413140050f,-0.4275550934303f,-0.4496113296546f,
- -0.4713967368260f,-0.4928981922298f,-0.5141027441932f,-0.5349976198871f,
- -0.5555702330196f,-0.5758081914178f,-0.5956993044924f,-0.6152315905806f,
- -0.6343932841636f,-0.6531728429538f,-0.6715589548470f,-0.6895405447371f,
- -0.7071067811865f,-0.7242470829515f,-0.7409511253550f,-0.7572088465065f,
- -0.7730104533627f,-0.7883464276266f,-0.8032075314806f,-0.8175848131516f,
- -0.8314696123025f,-0.8448535652497f,-0.8577286100003f,-0.8700869911087f,
- -0.8819212643484f,-0.8932243011955f,-0.9039892931234f,-0.9142097557035f,
- -0.9238795325113f,-0.9329927988347f,-0.9415440651830f,-0.9495281805930f,
- -0.9569403357322f,-0.9637760657954f,-0.9700312531945f,-0.9757021300385f,
- -0.9807852804032f,-0.9852776423889f,-0.9891765099648f,-0.9924795345987f,
- -0.9951847266722f,-0.9972904566787f,-0.9987954562052f,-0.9996988186962f,
- -1.0000000000000f,
-};
-
-#define INVSQ_LOOKUP_SZ 32
-static float INVSQ_LOOKUP[INVSQ_LOOKUP_SZ+1]={
- 1.414213562373f,1.392621247646f,1.371988681140f,1.352246807566f,
- 1.333333333333f,1.315191898443f,1.297771369046f,1.281025230441f,
- 1.264911064067f,1.249390095109f,1.234426799697f,1.219988562661f,
- 1.206045378311f,1.192569588000f,1.179535649239f,1.166919931983f,
- 1.154700538379f,1.142857142857f,1.131370849898f,1.120224067222f,
- 1.109400392450f,1.098884511590f,1.088662107904f,1.078719779941f,
- 1.069044967650f,1.059625885652f,1.050451462878f,1.041511287847f,
- 1.032795558989f,1.024295039463f,1.016001016002f,1.007905261358f,
- 1.000000000000f,
-};
-
-#define INVSQ2EXP_LOOKUP_MIN -32
-#define INVSQ2EXP_LOOKUP_MAX 32
-static float INVSQ2EXP_LOOKUP[INVSQ2EXP_LOOKUP_MAX-\
- INVSQ2EXP_LOOKUP_MIN+1]={
- 65536.f, 46340.95001f, 32768.f, 23170.47501f,
- 16384.f, 11585.2375f, 8192.f, 5792.618751f,
- 4096.f, 2896.309376f, 2048.f, 1448.154688f,
- 1024.f, 724.0773439f, 512.f, 362.038672f,
- 256.f, 181.019336f, 128.f, 90.50966799f,
- 64.f, 45.254834f, 32.f, 22.627417f,
- 16.f, 11.3137085f, 8.f, 5.656854249f,
- 4.f, 2.828427125f, 2.f, 1.414213562f,
- 1.f, 0.7071067812f, 0.5f, 0.3535533906f,
- 0.25f, 0.1767766953f, 0.125f, 0.08838834765f,
- 0.0625f, 0.04419417382f, 0.03125f, 0.02209708691f,
- 0.015625f, 0.01104854346f, 0.0078125f, 0.005524271728f,
- 0.00390625f, 0.002762135864f, 0.001953125f, 0.001381067932f,
- 0.0009765625f, 0.000690533966f, 0.00048828125f, 0.000345266983f,
- 0.000244140625f,0.0001726334915f,0.0001220703125f,8.631674575e-05f,
- 6.103515625e-05f,4.315837288e-05f,3.051757812e-05f,2.157918644e-05f,
- 1.525878906e-05f,
-};
-
-#endif
-
-#define FROMdB_LOOKUP_SZ 35
-#define FROMdB2_LOOKUP_SZ 32
-#define FROMdB_SHIFT 5
-#define FROMdB2_SHIFT 3
-#define FROMdB2_MASK 31
-static float FROMdB_LOOKUP[FROMdB_LOOKUP_SZ]={
- 1.f, 0.6309573445f, 0.3981071706f, 0.2511886432f,
- 0.1584893192f, 0.1f, 0.06309573445f, 0.03981071706f,
- 0.02511886432f, 0.01584893192f, 0.01f, 0.006309573445f,
- 0.003981071706f, 0.002511886432f, 0.001584893192f, 0.001f,
- 0.0006309573445f,0.0003981071706f,0.0002511886432f,0.0001584893192f,
- 0.0001f,6.309573445e-05f,3.981071706e-05f,2.511886432e-05f,
- 1.584893192e-05f, 1e-05f,6.309573445e-06f,3.981071706e-06f,
- 2.511886432e-06f,1.584893192e-06f, 1e-06f,6.309573445e-07f,
- 3.981071706e-07f,2.511886432e-07f,1.584893192e-07f,
-};
-
-static float FROMdB2_LOOKUP[FROMdB2_LOOKUP_SZ]={
- 0.9928302478f, 0.9786445908f, 0.9646616199f, 0.9508784391f,
- 0.9372921937f, 0.92390007f, 0.9106992942f, 0.8976871324f,
- 0.8848608897f, 0.8722179097f, 0.8597555737f, 0.8474713009f,
- 0.835362547f, 0.8234268041f, 0.8116616003f, 0.8000644989f,
- 0.7886330981f, 0.7773650302f, 0.7662579617f, 0.755309592f,
- 0.7445176537f, 0.7338799116f, 0.7233941627f, 0.7130582353f,
- 0.7028699885f, 0.6928273125f, 0.6829281272f, 0.6731703824f,
- 0.6635520573f, 0.6540711597f, 0.6447257262f, 0.6355138211f,
-};
-
-#ifdef INT_LOOKUP
-
-#define INVSQ_LOOKUP_I_SHIFT 10
-#define INVSQ_LOOKUP_I_MASK 1023
-static long INVSQ_LOOKUP_I[64+1]={
- 92682l, 91966l, 91267l, 90583l,
- 89915l, 89261l, 88621l, 87995l,
- 87381l, 86781l, 86192l, 85616l,
- 85051l, 84497l, 83953l, 83420l,
- 82897l, 82384l, 81880l, 81385l,
- 80899l, 80422l, 79953l, 79492l,
- 79039l, 78594l, 78156l, 77726l,
- 77302l, 76885l, 76475l, 76072l,
- 75674l, 75283l, 74898l, 74519l,
- 74146l, 73778l, 73415l, 73058l,
- 72706l, 72359l, 72016l, 71679l,
- 71347l, 71019l, 70695l, 70376l,
- 70061l, 69750l, 69444l, 69141l,
- 68842l, 68548l, 68256l, 67969l,
- 67685l, 67405l, 67128l, 66855l,
- 66585l, 66318l, 66054l, 65794l,
- 65536l,
-};
-
-#define COS_LOOKUP_I_SHIFT 9
-#define COS_LOOKUP_I_MASK 511
-#define COS_LOOKUP_I_SZ 128
-static long COS_LOOKUP_I[COS_LOOKUP_I_SZ+1]={
- 16384l, 16379l, 16364l, 16340l,
- 16305l, 16261l, 16207l, 16143l,
- 16069l, 15986l, 15893l, 15791l,
- 15679l, 15557l, 15426l, 15286l,
- 15137l, 14978l, 14811l, 14635l,
- 14449l, 14256l, 14053l, 13842l,
- 13623l, 13395l, 13160l, 12916l,
- 12665l, 12406l, 12140l, 11866l,
- 11585l, 11297l, 11003l, 10702l,
- 10394l, 10080l, 9760l, 9434l,
- 9102l, 8765l, 8423l, 8076l,
- 7723l, 7366l, 7005l, 6639l,
- 6270l, 5897l, 5520l, 5139l,
- 4756l, 4370l, 3981l, 3590l,
- 3196l, 2801l, 2404l, 2006l,
- 1606l, 1205l, 804l, 402l,
- 0l, -401l, -803l, -1204l,
- -1605l, -2005l, -2403l, -2800l,
- -3195l, -3589l, -3980l, -4369l,
- -4755l, -5138l, -5519l, -5896l,
- -6269l, -6638l, -7004l, -7365l,
- -7722l, -8075l, -8422l, -8764l,
- -9101l, -9433l, -9759l, -10079l,
- -10393l, -10701l, -11002l, -11296l,
- -11584l, -11865l, -12139l, -12405l,
- -12664l, -12915l, -13159l, -13394l,
- -13622l, -13841l, -14052l, -14255l,
- -14448l, -14634l, -14810l, -14977l,
- -15136l, -15285l, -15425l, -15556l,
- -15678l, -15790l, -15892l, -15985l,
- -16068l, -16142l, -16206l, -16260l,
- -16304l, -16339l, -16363l, -16378l,
- -16383l,
-};
-
-#endif
-
-#endif
diff --git a/lib/lookups.pl b/lib/lookups.pl
deleted file mode 100755
index 211deea5..00000000
--- a/lib/lookups.pl
+++ /dev/null
@@ -1,142 +0,0 @@
-#!/usr/bin/perl
-print <<'EOD';
-/********************************************************************
- * *
- * 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: lookup data; generated by lookups.pl; edit there
- last mod: $Id: lookups.pl,v 1.5 2001/02/26 03:50:42 xiphmont Exp $
-
- ********************************************************************/
-
-#ifndef _V_LOOKUP_DATA_H_
-
-#ifdef FLOAT_LOOKUP
-EOD
-
-$cos_sz=128;
-$invsq_sz=32;
-$invsq2exp_min=-32;
-$invsq2exp_max=32;
-
-$fromdB_sz=35;
-$fromdB_shift=5;
-$fromdB2_shift=3;
-
-$invsq_i_shift=10;
-$cos_i_shift=9;
-$delta_shift=6;
-
-print "#define COS_LOOKUP_SZ $cos_sz\n";
-print "static float COS_LOOKUP[COS_LOOKUP_SZ+1]={\n";
-
-for($i=0;$i<=$cos_sz;){
- print "\t";
- for($j=0;$j<4 && $i<=$cos_sz;$j++){
- printf "%+.13f,", cos(3.14159265358979323846*($i++)/$cos_sz) ;
- }
- print "\n";
-}
-print "};\n\n";
-
-print "#define INVSQ_LOOKUP_SZ $invsq_sz\n";
-print "static float INVSQ_LOOKUP[INVSQ_LOOKUP_SZ+1]={\n";
-
-for($i=0;$i<=$invsq_sz;){
- print "\t";
- for($j=0;$j<4 && $i<=$invsq_sz;$j++){
- my$indexmap=$i++/$invsq_sz*.5+.5;
- printf "%.12f,", 1./sqrt($indexmap);
- }
- print "\n";
-}
-print "};\n\n";
-
-print "#define INVSQ2EXP_LOOKUP_MIN $invsq2exp_min\n";
-print "#define INVSQ2EXP_LOOKUP_MAX $invsq2exp_max\n";
-print "static float INVSQ2EXP_LOOKUP[INVSQ2EXP_LOOKUP_MAX-\\\n".
- " INVSQ2EXP_LOOKUP_MIN+1]={\n";
-
-for($i=$invsq2exp_min;$i<=$invsq2exp_max;){
- print "\t";
- for($j=0;$j<4 && $i<=$invsq2exp_max;$j++){
- printf "%15.10g,", 2**($i++*-.5);
- }
- print "\n";
-}
-print "};\n\n#endif\n\n";
-
-
-# 0 to -140 dB
-$fromdB2_sz=1<<$fromdB_shift;
-$fromdB_gran=1<<($fromdB_shift-$fromdB2_shift);
-print "#define FROMdB_LOOKUP_SZ $fromdB_sz\n";
-print "#define FROMdB2_LOOKUP_SZ $fromdB2_sz\n";
-print "#define FROMdB_SHIFT $fromdB_shift\n";
-print "#define FROMdB2_SHIFT $fromdB2_shift\n";
-print "#define FROMdB2_MASK ".((1<<$fromdB_shift)-1)."\n";
-
-print "static float FROMdB_LOOKUP[FROMdB_LOOKUP_SZ]={\n";
-
-for($i=0;$i<$fromdB_sz;){
- print "\t";
- for($j=0;$j<4 && $i<$fromdB_sz;$j++){
- printf "%15.10g,", 10**(.05*(-$fromdB_gran*$i++));
- }
- print "\n";
-}
-print "};\n\n";
-
-print "static float FROMdB2_LOOKUP[FROMdB2_LOOKUP_SZ]={\n";
-
-for($i=0;$i<$fromdB2_sz;){
- print "\t";
- for($j=0;$j<4 && $i<$fromdB_sz;$j++){
- printf "%15.10g,", 10**(.05*(-$fromdB_gran/$fromdB2_sz*(.5+$i++)));
- }
- print "\n";
-}
-print "};\n\n#ifdef INT_LOOKUP\n\n";
-
-
-$iisz=0x10000>>$invsq_i_shift;
-print "#define INVSQ_LOOKUP_I_SHIFT $invsq_i_shift\n";
-print "#define INVSQ_LOOKUP_I_MASK ".(0x0ffff>>(16-$invsq_i_shift))."\n";
-print "static long INVSQ_LOOKUP_I[$iisz+1]={\n";
-for($i=0;$i<=$iisz;){
- print "\t";
- for($j=0;$j<4 && $i<=$iisz;$j++){
- my$indexmap=$i++/$iisz*.5+.5;
- printf "%8d,", int(1./sqrt($indexmap)*65536.+.5);
- }
- print "\n";
-}
-print "};\n\n";
-
-$cisz=0x10000>>$cos_i_shift;
-print "#define COS_LOOKUP_I_SHIFT $cos_i_shift\n";
-print "#define COS_LOOKUP_I_MASK ".(0x0ffff>>(16-$cos_i_shift))."\n";
-print "#define COS_LOOKUP_I_SZ $cisz\n";
-print "static long COS_LOOKUP_I[COS_LOOKUP_I_SZ+1]={\n";
-
-for($i=0;$i<=$cisz;){
- print "\t";
- for($j=0;$j<4 && $i<=$cisz;$j++){
- printf "%8d,", int(cos(3.14159265358979323846*($i++)/$cos_sz)*16384.+.5) ;
- }
- print "\n";
-}
-print "};\n\n";
-
-
-print "#endif\n\n#endif\n";
-
-
diff --git a/lib/lpc.c b/lib/lpc.c
deleted file mode 100644
index 6d491cd3..00000000
--- a/lib/lpc.c
+++ /dev/null
@@ -1,200 +0,0 @@
-/********************************************************************
- * *
- * 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: LPC low level routines
- last mod: $Id: lpc.c,v 1.31 2001/02/26 03:50:42 xiphmont Exp $
-
- ********************************************************************/
-
-/* Some of these routines (autocorrelator, LPC coefficient estimator)
- are derived from code written by Jutta Degener and Carsten Bormann;
- thus we include their copyright below. The entirety of this file
- is freely redistributable on the condition that both of these
- copyright notices are preserved without modification. */
-
-/* Preserved Copyright: *********************************************/
-
-/* Copyright 1992, 1993, 1994 by Jutta Degener and Carsten Bormann,
-Technische Universita"t Berlin
-
-Any use of this software is permitted provided that this notice is not
-removed and that neither the authors nor the Technische Universita"t
-Berlin are deemed to have made any representations as to the
-suitability of this software for any purpose nor are held responsible
-for any defects of this software. THERE IS ABSOLUTELY NO WARRANTY FOR
-THIS SOFTWARE.
-
-As a matter of courtesy, the authors request to be informed about uses
-this software has found, about bugs in this software, and about any
-improvements that may be of general interest.
-
-Berlin, 28.11.1994
-Jutta Degener
-Carsten Bormann
-
-*********************************************************************/
-
-#include <stdlib.h>
-#include <string.h>
-#include <math.h>
-#include "os.h"
-#include "smallft.h"
-#include "lpc.h"
-#include "scales.h"
-#include "misc.h"
-
-/* Autocorrelation LPC coeff generation algorithm invented by
- N. Levinson in 1947, modified by J. Durbin in 1959. */
-
-/* Input : n elements of time doamin data
- Output: m lpc coefficients, excitation energy */
-
-float vorbis_lpc_from_data(float *data,float *lpc,int n,int m){
- float *aut=alloca(sizeof(float)*(m+1));
- float error;
- int i,j;
-
- /* autocorrelation, p+1 lag coefficients */
-
- j=m+1;
- while(j--){
- float d=0;
- for(i=j;i<n;i++)d+=data[i]*data[i-j];
- aut[j]=d;
- }
-
- /* Generate lpc coefficients from autocorr values */
-
- error=aut[0];
-
- for(i=0;i<m;i++){
- float r=-aut[i+1];
-
- if(error==0){
- memset(lpc,0,m*sizeof(float));
- return 0;
- }
-
- /* Sum up this iteration's reflection coefficient; note that in
- Vorbis we don't save it. If anyone wants to recycle this code
- and needs reflection coefficients, save the results of 'r' from
- each iteration. */
-
- for(j=0;j<i;j++)r-=lpc[j]*aut[i-j];
- r/=error;
-
- /* Update LPC coefficients and total error */
-
- lpc[i]=r;
- for(j=0;j<i/2;j++){
- float tmp=lpc[j];
- lpc[j]+=r*lpc[i-1-j];
- lpc[i-1-j]+=r*tmp;
- }
- if(i%2)lpc[j]+=lpc[j]*r;
-
- error*=1.f-r*r;
- }
-
- /* we need the error value to know how big an impulse to hit the
- filter with later */
-
- return error;
-}
-
-/* Input : n element envelope spectral curve
- Output: m lpc coefficients, excitation energy */
-
-float vorbis_lpc_from_curve(float *curve,float *lpc,lpc_lookup *l){
- int n=l->ln;
- int m=l->m;
- float *work=alloca(sizeof(float)*(n+n));
- float fscale=.5f/n;
- int i,j;
-
- /* input is a real curve. make it complex-real */
- /* This mixes phase, but the LPC generation doesn't care. */
- for(i=0;i<n;i++){
- work[i*2]=curve[i]*fscale;
- work[i*2+1]=0;
- }
- work[n*2-1]=curve[n-1]*fscale;
-
- n*=2;
- drft_backward(&l->fft,work);
-
- /* The autocorrelation will not be circular. Shift, else we lose
- most of the power in the edges. */
-
- for(i=0,j=n/2;i<n/2;){
- float temp=work[i];
- work[i++]=work[j];
- work[j++]=temp;
- }
-
- /* we *could* shave speed here by skimping on the edges (thus
- speeding up the autocorrelation in vorbis_lpc_from_data) but we
- don't right now. */
-
- return(vorbis_lpc_from_data(work,lpc,n,m));
-}
-
-void lpc_init(lpc_lookup *l,long mapped, int m){
- memset(l,0,sizeof(lpc_lookup));
-
- l->ln=mapped;
- l->m=m;
-
- /* we cheat decoding the LPC spectrum via FFTs */
- drft_init(&l->fft,mapped*2);
-
-}
-
-void lpc_clear(lpc_lookup *l){
- if(l){
- drft_clear(&l->fft);
- }
-}
-
-void vorbis_lpc_predict(float *coeff,float *prime,int m,
- float *data,long n){
-
- /* in: coeff[0...m-1] LPC coefficients
- prime[0...m-1] initial values (allocated size of n+m-1)
- out: data[0...n-1] data samples */
-
- long i,j,o,p;
- float y;
- float *work=alloca(sizeof(float)*(m+n));
-
- if(!prime)
- for(i=0;i<m;i++)
- work[i]=0.f;
- else
- for(i=0;i<m;i++)
- work[i]=prime[i];
-
- for(i=0;i<n;i++){
- y=0;
- o=i;
- p=m;
- for(j=0;j<m;j++)
- y-=work[o++]*coeff[--p];
-
- data[i]=work[o]=y;
- }
-}
-
-
-
-
-
diff --git a/lib/lpc.h b/lib/lpc.h
deleted file mode 100644
index 48251738..00000000
--- a/lib/lpc.h
+++ /dev/null
@@ -1,43 +0,0 @@
-/********************************************************************
- * *
- * 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: LPC low level routines
- last mod: $Id: lpc.h,v 1.17 2001/02/26 03:50:42 xiphmont Exp $
-
- ********************************************************************/
-
-#ifndef _V_LPC_H_
-#define _V_LPC_H_
-
-#include "vorbis/codec.h"
-#include "smallft.h"
-
-typedef struct lpclook{
- /* en/decode lookups */
- drft_lookup fft;
-
- int ln;
- int m;
-
-} lpc_lookup;
-
-extern void lpc_init(lpc_lookup *l,long mapped, int m);
-extern void lpc_clear(lpc_lookup *l);
-
-/* simple linear scale LPC code */
-extern float vorbis_lpc_from_data(float *data,float *lpc,int n,int m);
-extern float vorbis_lpc_from_curve(float *curve,float *lpc,lpc_lookup *l);
-
-extern void vorbis_lpc_predict(float *coeff,float *prime,int m,
- float *data,long n);
-
-#endif
diff --git a/lib/lsp.c b/lib/lsp.c
deleted file mode 100644
index 1854a370..00000000
--- a/lib/lsp.c
+++ /dev/null
@@ -1,457 +0,0 @@
-/********************************************************************
- * *
- * 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: LSP (also called LSF) conversion routines
- last mod: $Id: lsp.c,v 1.18 2001/06/15 21:15:39 xiphmont Exp $
-
- The LSP generation code is taken (with minimal modification and a
- few bugfixes) from "On the Computation of the LSP Frequencies" by
- Joseph Rothweiler <rothwlr@altavista.net>, available at:
-
- http://www2.xtdl.com/~rothwlr/lsfpaper/lsfpage.html
-
- ********************************************************************/
-
-/* Note that the lpc-lsp conversion finds the roots of polynomial with
- an iterative root polisher (CACM algorithm 283). It *is* possible
- to confuse this algorithm into not converging; that should only
- happen with absurdly closely spaced roots (very sharp peaks in the
- LPC f response) which in turn should be impossible in our use of
- the code. If this *does* happen anyway, it's a bug in the floor
- finder; find the cause of the confusion (probably a single bin
- spike or accidental near-float-limit resolution problems) and
- correct it. */
-
-#include <math.h>
-#include <string.h>
-#include <stdlib.h>
-#include "lsp.h"
-#include "os.h"
-#include "misc.h"
-#include "lookup.h"
-#include "scales.h"
-
-/* three possible LSP to f curve functions; the exact computation
- (float), a lookup based float implementation, and an integer
- implementation. The float lookup is likely the optimal choice on
- any machine with an FPU. The integer implementation is *not* fixed
- point (due to the need for a large dynamic range and thus a
- seperately tracked exponent) and thus much more complex than the
- relatively simple float implementations. It's mostly for future
- work on a fully fixed point implementation for processors like the
- ARM family. */
-
-/* undefine both for the 'old' but more precise implementation */
-#undef FLOAT_LOOKUP
-#undef INT_LOOKUP
-
-#ifdef FLOAT_LOOKUP
-#include "lookup.c" /* catch this in the build system; we #include for
- compilers (like gcc) that can't inline across
- modules */
-
-/* side effect: changes *lsp to cosines of lsp */
-void vorbis_lsp_to_curve(float *curve,int *map,int n,int ln,float *lsp,int m,
- float amp,float ampoffset){
- int i;
- float wdel=M_PI/ln;
- vorbis_fpu_control fpu;
-
- vorbis_fpu_setround(&fpu);
- for(i=0;i<m;i++)lsp[i]=vorbis_coslook(lsp[i]);
-
- i=0;
- while(i<n){
- int k=map[i];
- int qexp;
- float p=.7071067812f;
- float q=.7071067812f;
- float w=vorbis_coslook(wdel*k);
- float *ftmp=lsp;
- int c=m>>1;
-
- do{
- q*=ftmp[0]-w;
- p*=ftmp[1]-w;
- ftmp+=2;
- }while(--c);
-
- if(m&1){
- /* odd order filter; slightly assymetric */
- /* the last coefficient */
- q*=ftmp[0]-w;
- q*=q;
- p*=p*(1.f-w*w);
- }else{
- /* even order filter; still symmetric */
- q*=q*(1.f+w);
- p*=p*(1.f-w);
- }
-
- q=frexp(p+q,&qexp);
- q=vorbis_fromdBlook(amp*
- vorbis_invsqlook(q)*
- vorbis_invsq2explook(qexp+m)-
- ampoffset);
-
- do{
- curve[i++]*=q;
- }while(map[i]==k);
- }
- vorbis_fpu_restore(fpu);
-}
-
-#else
-
-#ifdef INT_LOOKUP
-#include "lookup.c" /* catch this in the build system; we #include for
- compilers (like gcc) that can't inline across
- modules */
-
-static int MLOOP_1[64]={
- 0,10,11,11, 12,12,12,12, 13,13,13,13, 13,13,13,13,
- 14,14,14,14, 14,14,14,14, 14,14,14,14, 14,14,14,14,
- 15,15,15,15, 15,15,15,15, 15,15,15,15, 15,15,15,15,
- 15,15,15,15, 15,15,15,15, 15,15,15,15, 15,15,15,15,
-};
-
-static int MLOOP_2[64]={
- 0,4,5,5, 6,6,6,6, 7,7,7,7, 7,7,7,7,
- 8,8,8,8, 8,8,8,8, 8,8,8,8, 8,8,8,8,
- 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 int MLOOP_3[8]={0,1,2,2,3,3,3,3};
-
-
-/* side effect: changes *lsp to cosines of lsp */
-void vorbis_lsp_to_curve(float *curve,int *map,int n,int ln,float *lsp,int m,
- float amp,float ampoffset){
-
- /* 0 <= m < 256 */
-
- /* set up for using all int later */
- int i;
- int ampoffseti=rint(ampoffset*4096.f);
- int ampi=rint(amp*16.f);
- long *ilsp=alloca(m*sizeof(long));
- for(i=0;i<m;i++)ilsp[i]=vorbis_coslook_i(lsp[i]/M_PI*65536.f+.5f);
-
- i=0;
- while(i<n){
- int j,k=map[i];
- unsigned long pi=46341; /* 2**-.5 in 0.16 */
- unsigned long qi=46341;
- int qexp=0,shift;
- long wi=vorbis_coslook_i(k*65536/ln);
-
- qi*=labs(ilsp[0]-wi);
- pi*=labs(ilsp[1]-wi);
-
- for(j=3;j<m;j+=2){
- if(!(shift=MLOOP_1[(pi|qi)>>25]))
- if(!(shift=MLOOP_2[(pi|qi)>>19]))
- shift=MLOOP_3[(pi|qi)>>16];
- qi=(qi>>shift)*labs(ilsp[j-1]-wi);
- pi=(pi>>shift)*labs(ilsp[j]-wi);
- qexp+=shift;
- }
- if(!(shift=MLOOP_1[(pi|qi)>>25]))
- if(!(shift=MLOOP_2[(pi|qi)>>19]))
- shift=MLOOP_3[(pi|qi)>>16];
-
- /* pi,qi normalized collectively, both tracked using qexp */
-
- if(m&1){
- /* odd order filter; slightly assymetric */
- /* the last coefficient */
- qi=(qi>>shift)*labs(ilsp[j-1]-wi);
- pi=(pi>>shift)<<14;
- qexp+=shift;
-
- if(!(shift=MLOOP_1[(pi|qi)>>25]))
- if(!(shift=MLOOP_2[(pi|qi)>>19]))
- shift=MLOOP_3[(pi|qi)>>16];
-
- pi>>=shift;
- qi>>=shift;
- qexp+=shift-14*((m+1)>>1);
-
- pi=((pi*pi)>>16);
- qi=((qi*qi)>>16);
- qexp=qexp*2+m;
-
- pi*=(1<<14)-((wi*wi)>>14);
- qi+=pi>>14;
-
- }else{
- /* even order filter; still symmetric */
-
- /* p*=p(1-w), q*=q(1+w), let normalization drift because it isn't
- worth tracking step by step */
-
- pi>>=shift;
- qi>>=shift;
- qexp+=shift-7*m;
-
- pi=((pi*pi)>>16);
- qi=((qi*qi)>>16);
- qexp=qexp*2+m;
-
- pi*=(1<<14)-wi;
- qi*=(1<<14)+wi;
- qi=(qi+pi)>>14;
-
- }
-
-
- /* we've let the normalization drift because it wasn't important;
- however, for the lookup, things must be normalized again. We
- need at most one right shift or a number of left shifts */
-
- if(qi&0xffff0000){ /* checks for 1.xxxxxxxxxxxxxxxx */
- qi>>=1; qexp++;
- }else
- while(qi && !(qi&0x8000)){ /* checks for 0.0xxxxxxxxxxxxxxx or less*/
- qi<<=1; qexp--;
- }
-
- amp=vorbis_fromdBlook_i(ampi* /* n.4 */
- vorbis_invsqlook_i(qi,qexp)-
- /* m.8, m+n<=8 */
- ampoffseti); /* 8.12[0] */
-
- curve[i]*=amp;
- while(map[++i]==k)curve[i]*=amp;
- }
-}
-
-#else
-
-/* old, nonoptimized but simple version for any poor sap who needs to
- figure out what the hell this code does, or wants the other
- fraction of a dB precision */
-
-/* side effect: changes *lsp to cosines of lsp */
-void vorbis_lsp_to_curve(float *curve,int *map,int n,int ln,float *lsp,int m,
- float amp,float ampoffset){
- int i;
- float wdel=M_PI/ln;
- for(i=0;i<m;i++)lsp[i]=2.f*cos(lsp[i]);
-
- i=0;
- while(i<n){
- int j,k=map[i];
- float p=.5f;
- float q=.5f;
- float w=2.f*cos(wdel*k);
- for(j=1;j<m;j+=2){
- q *= w-lsp[j-1];
- p *= w-lsp[j];
- }
- if(j==m){
- /* odd order filter; slightly assymetric */
- /* the last coefficient */
- q*=w-lsp[j-1];
- p*=p*(4.f-w*w);
- q*=q;
- }else{
- /* even order filter; still symmetric */
- p*=p*(2.f-w);
- q*=q*(2.f+w);
- }
-
- q=fromdB(amp/sqrt(p+q)-ampoffset);
-
- curve[i]*=q;
- while(map[++i]==k)curve[i]*=q;
- }
-}
-
-#endif
-#endif
-
-static void cheby(float *g, int ord) {
- int i, j;
-
- g[0] *= .5f;
- for(i=2; i<= ord; i++) {
- for(j=ord; j >= i; j--) {
- g[j-2] -= g[j];
- g[j] += g[j];
- }
- }
-}
-
-static int comp(const void *a,const void *b){
- if(*(float *)a<*(float *)b)
- return(1);
- else
- return(-1);
-}
-
-/* Newton-Raphson-Maehly actually functioned as a decent root finder,
- but there are root sets for which it gets into limit cycles
- (exacerbated by zero suppression) and fails. We can't afford to
- fail, even if the failure is 1 in 100,000,000, so we now use
- Laguerre and later polish with Newton-Raphson (which can then
- afford to fail) */
-
-#define EPSILON 10e-7
-static int Laguerre_With_Deflation(float *a,int ord,float *r){
- int i,m;
- double lastdelta=0.f;
- double *defl=alloca(sizeof(double)*(ord+1));
- for(i=0;i<=ord;i++)defl[i]=a[i];
-
- for(m=ord;m>0;m--){
- double new=0.f,delta;
-
- /* iterate a root */
- while(1){
- double p=defl[m],pp=0.f,ppp=0.f,denom;
-
- /* eval the polynomial and its first two derivatives */
- for(i=m;i>0;i--){
- ppp = new*ppp + pp;
- pp = new*pp + p;
- p = new*p + defl[i-1];
- }
-
- /* Laguerre's method */
- denom=(m-1) * ((m-1)*pp*pp - m*p*ppp);
- if(denom<0)
- return(-1); /* complex root! The LPC generator handed us a bad filter */
-
- if(pp>0){
- denom = pp + sqrt(denom);
- if(denom<EPSILON)denom=EPSILON;
- }else{
- denom = pp - sqrt(denom);
- if(denom>-(EPSILON))denom=-(EPSILON);
- }
-
- delta = m*p/denom;
- new -= delta;
-
- if(delta<0.f)delta*=-1;
-
- if(fabs(delta/new)<10e-12)break;
- lastdelta=delta;
- }
-
- r[m-1]=new;
-
- /* forward deflation */
-
- for(i=m;i>0;i--)
- defl[i-1]+=new*defl[i];
- defl++;
-
- }
- return(0);
-}
-
-
-/* for spit-and-polish only */
-static int Newton_Raphson(float *a,int ord,float *r){
- int i, k, count=0;
- double error=1.f;
- double *root=alloca(ord*sizeof(double));
-
- for(i=0; i<ord;i++) root[i] = r[i];
-
- while(error>1e-20){
- error=0;
-
- for(i=0; i<ord; i++) { /* Update each point. */
- double pp=0.,delta;
- double rooti=root[i];
- double p=a[ord];
- for(k=ord-1; k>= 0; k--) {
-
- pp= pp* rooti + p;
- p = p * rooti + a[k];
- }
-
- delta = p/pp;
- root[i] -= delta;
- error+= delta*delta;
- }
-
- if(count>40)return(-1);
-
- count++;
- }
-
- /* Replaced the original bubble sort with a real sort. With your
- help, we can eliminate the bubble sort in our lifetime. --Monty */
-
- for(i=0; i<ord;i++) r[i] = root[i];
- return(0);
-}
-
-
-/* Convert lpc coefficients to lsp coefficients */
-int vorbis_lpc_to_lsp(float *lpc,float *lsp,int m){
- int order2=(m+1)>>1;
- int g1_order,g2_order;
- float *g1=alloca(sizeof(float)*(order2+1));
- float *g2=alloca(sizeof(float)*(order2+1));
- float *g1r=alloca(sizeof(float)*(order2+1));
- float *g2r=alloca(sizeof(float)*(order2+1));
- int i;
-
- /* even and odd are slightly different base cases */
- g1_order=(m+1)>>1;
- g2_order=(m) >>1;
-
- /* Compute the lengths of the x polynomials. */
- /* Compute the first half of K & R F1 & F2 polynomials. */
- /* Compute half of the symmetric and antisymmetric polynomials. */
- /* Remove the roots at +1 and -1. */
-
- g1[g1_order] = 1.f;
- for(i=1;i<=g1_order;i++) g1[g1_order-i] = lpc[i-1]+lpc[m-i];
- g2[g2_order] = 1.f;
- for(i=1;i<=g2_order;i++) g2[g2_order-i] = lpc[i-1]-lpc[m-i];
-
- if(g1_order>g2_order){
- for(i=2; i<=g2_order;i++) g2[g2_order-i] += g2[g2_order-i+2];
- }else{
- for(i=1; i<=g1_order;i++) g1[g1_order-i] -= g1[g1_order-i+1];
- for(i=1; i<=g2_order;i++) g2[g2_order-i] += g2[g2_order-i+1];
- }
-
- /* Convert into polynomials in cos(alpha) */
- cheby(g1,g1_order);
- cheby(g2,g2_order);
-
- /* Find the roots of the 2 even polynomials.*/
- if(Laguerre_With_Deflation(g1,g1_order,g1r) ||
- Laguerre_With_Deflation(g2,g2_order,g2r))
- return(-1);
-
- Newton_Raphson(g1,g1_order,g1r); /* if it fails, it leaves g1r alone */
- Newton_Raphson(g2,g2_order,g2r); /* if it fails, it leaves g2r alone */
-
- qsort(g1r,g1_order,sizeof(float),comp);
- qsort(g2r,g2_order,sizeof(float),comp);
-
- for(i=0;i<g1_order;i++)
- lsp[i*2] = acos(g1r[i]);
-
- for(i=0;i<g2_order;i++)
- lsp[i*2+1] = acos(g2r[i]);
- return(0);
-}
diff --git a/lib/lsp.h b/lib/lsp.h
deleted file mode 100644
index e8fcf6a8..00000000
--- a/lib/lsp.h
+++ /dev/null
@@ -1,28 +0,0 @@
-/********************************************************************
- * *
- * 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: LSP (also called LSF) conversion routines
- last mod: $Id: lsp.h,v 1.9 2001/02/26 03:50:42 xiphmont Exp $
-
- ********************************************************************/
-
-
-#ifndef _V_LSP_H_
-#define _V_LSP_H_
-
-extern int vorbis_lpc_to_lsp(float *lpc,float *lsp,int m);
-
-extern void vorbis_lsp_to_curve(float *curve,int *map,int n,int ln,
- float *lsp,int m,
- float amp,float ampoffset);
-
-#endif
diff --git a/lib/mapping0.c b/lib/mapping0.c
deleted file mode 100644
index b16e0150..00000000
--- a/lib/mapping0.c
+++ /dev/null
@@ -1,565 +0,0 @@
-/********************************************************************
- * *
- * 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: channel mapping 0 implementation
- last mod: $Id: mapping0.c,v 1.33 2001/06/17 22:25:50 xiphmont Exp $
-
- ********************************************************************/
-
-#include <stdlib.h>
-#include <stdio.h>
-#include <string.h>
-#include <math.h>
-#include <ogg/ogg.h>
-#include "vorbis/codec.h"
-#include "codec_internal.h"
-#include "codebook.h"
-#include "bitbuffer.h"
-#include "registry.h"
-#include "psy.h"
-#include "misc.h"
-
-/* simplistic, wasteful way of doing this (unique lookup for each
- mode/submapping); there should be a central repository for
- identical lookups. That will require minor work, so I'm putting it
- off as low priority.
-
- Why a lookup for each backend in a given mode? Because the
- blocksize is set by the mode, and low backend lookups may require
- parameters from other areas of the mode/mapping */
-
-typedef struct {
- drft_lookup fft_look;
- vorbis_info_mode *mode;
- vorbis_info_mapping0 *map;
-
- vorbis_look_time **time_look;
- vorbis_look_floor **floor_look;
-
- vorbis_look_residue **residue_look;
- vorbis_look_psy *psy_look;
-
- vorbis_func_time **time_func;
- vorbis_func_floor **floor_func;
- vorbis_func_residue **residue_func;
-
- int ch;
- long lastframe; /* if a different mode is called, we need to
- invalidate decay */
-} vorbis_look_mapping0;
-
-static vorbis_info_mapping *mapping0_copy_info(vorbis_info_mapping *vm){
- vorbis_info_mapping0 *info=(vorbis_info_mapping0 *)vm;
- vorbis_info_mapping0 *ret=_ogg_malloc(sizeof(vorbis_info_mapping0));
- memcpy(ret,info,sizeof(vorbis_info_mapping0));
- return(ret);
-}
-
-static void mapping0_free_info(vorbis_info_mapping *i){
- if(i){
- memset(i,0,sizeof(vorbis_info_mapping0));
- _ogg_free(i);
- }
-}
-
-static void mapping0_free_look(vorbis_look_mapping *look){
- int i;
- vorbis_look_mapping0 *l=(vorbis_look_mapping0 *)look;
- if(l){
- drft_clear(&l->fft_look);
-
- for(i=0;i<l->map->submaps;i++){
- l->time_func[i]->free_look(l->time_look[i]);
- l->floor_func[i]->free_look(l->floor_look[i]);
- l->residue_func[i]->free_look(l->residue_look[i]);
- if(l->psy_look)_vp_psy_clear(l->psy_look+i);
- }
-
- _ogg_free(l->time_func);
- _ogg_free(l->floor_func);
- _ogg_free(l->residue_func);
- _ogg_free(l->time_look);
- _ogg_free(l->floor_look);
- _ogg_free(l->residue_look);
- if(l->psy_look)_ogg_free(l->psy_look);
- memset(l,0,sizeof(vorbis_look_mapping0));
- _ogg_free(l);
- }
-}
-
-static vorbis_look_mapping *mapping0_look(vorbis_dsp_state *vd,vorbis_info_mode *vm,
- vorbis_info_mapping *m){
- int i;
- vorbis_info *vi=vd->vi;
- codec_setup_info *ci=vi->codec_setup;
- vorbis_look_mapping0 *look=_ogg_calloc(1,sizeof(vorbis_look_mapping0));
- vorbis_info_mapping0 *info=look->map=(vorbis_info_mapping0 *)m;
- look->mode=vm;
-
- look->time_look=_ogg_calloc(info->submaps,sizeof(vorbis_look_time *));
- look->floor_look=_ogg_calloc(info->submaps,sizeof(vorbis_look_floor *));
-
- look->residue_look=_ogg_calloc(info->submaps,sizeof(vorbis_look_residue *));
- if(ci->psys)look->psy_look=_ogg_calloc(info->submaps,sizeof(vorbis_look_psy));
-
- look->time_func=_ogg_calloc(info->submaps,sizeof(vorbis_func_time *));
- look->floor_func=_ogg_calloc(info->submaps,sizeof(vorbis_func_floor *));
- look->residue_func=_ogg_calloc(info->submaps,sizeof(vorbis_func_residue *));
-
- for(i=0;i<info->submaps;i++){
- int timenum=info->timesubmap[i];
- int floornum=info->floorsubmap[i];
- int resnum=info->residuesubmap[i];
-
- look->time_func[i]=_time_P[ci->time_type[timenum]];
- look->time_look[i]=look->time_func[i]->
- look(vd,vm,ci->time_param[timenum]);
- look->floor_func[i]=_floor_P[ci->floor_type[floornum]];
- look->floor_look[i]=look->floor_func[i]->
- look(vd,vm,ci->floor_param[floornum]);
- look->residue_func[i]=_residue_P[ci->residue_type[resnum]];
- look->residue_look[i]=look->residue_func[i]->
- look(vd,vm,ci->residue_param[resnum]);
-
- if(ci->psys && vd->analysisp){
- int psynum=info->psysubmap[i];
- _vp_psy_init(look->psy_look+i,ci->psy_param[psynum],
- ci->blocksizes[vm->blockflag]/2,vi->rate);
- }
- }
-
- look->ch=vi->channels;
-
- if(vd->analysisp)drft_init(&look->fft_look,ci->blocksizes[vm->blockflag]);
- return(look);
-}
-
-static int ilog2(unsigned int v){
- int ret=0;
- while(v>1){
- ret++;
- v>>=1;
- }
- return(ret);
-}
-
-static void mapping0_pack(vorbis_info *vi,vorbis_info_mapping *vm,oggpack_buffer *opb){
- int i;
- vorbis_info_mapping0 *info=(vorbis_info_mapping0 *)vm;
-
- /* another 'we meant to do it this way' hack... up to beta 4, we
- packed 4 binary zeros here to signify one submapping in use. We
- now redefine that to mean four bitflags that indicate use of
- deeper features; bit0:submappings, bit1:coupling,
- bit2,3:reserved. This is backward compatable with all actual uses
- of the beta code. */
-
- if(info->submaps>1){
- oggpack_write(opb,1,1);
- oggpack_write(opb,info->submaps-1,4);
- }else
- oggpack_write(opb,0,1);
-
- if(info->coupling_steps>0){
- oggpack_write(opb,1,1);
- oggpack_write(opb,info->coupling_steps-1,8);
-
- for(i=0;i<info->coupling_steps;i++){
- oggpack_write(opb,info->coupling_mag[i],ilog2(vi->channels));
- oggpack_write(opb,info->coupling_ang[i],ilog2(vi->channels));
- }
- }else
- oggpack_write(opb,0,1);
-
- oggpack_write(opb,0,2); /* 2,3:reserved */
-
- /* we don't write the channel submappings if we only have one... */
- if(info->submaps>1){
- for(i=0;i<vi->channels;i++)
- oggpack_write(opb,info->chmuxlist[i],4);
- }
- for(i=0;i<info->submaps;i++){
- oggpack_write(opb,info->timesubmap[i],8);
- oggpack_write(opb,info->floorsubmap[i],8);
- oggpack_write(opb,info->residuesubmap[i],8);
- }
-}
-
-/* also responsible for range checking */
-static vorbis_info_mapping *mapping0_unpack(vorbis_info *vi,oggpack_buffer *opb){
- int i;
- vorbis_info_mapping0 *info=_ogg_calloc(1,sizeof(vorbis_info_mapping0));
- codec_setup_info *ci=vi->codec_setup;
- memset(info,0,sizeof(vorbis_info_mapping0));
-
- if(oggpack_read(opb,1))
- info->submaps=oggpack_read(opb,4)+1;
- else
- info->submaps=1;
-
- if(oggpack_read(opb,1)){
- info->coupling_steps=oggpack_read(opb,8)+1;
-
- for(i=0;i<info->coupling_steps;i++){
- int testM=info->coupling_mag[i]=oggpack_read(opb,ilog2(vi->channels));
- int testA=info->coupling_ang[i]=oggpack_read(opb,ilog2(vi->channels));
-
- if(testM<0 ||
- testA<0 ||
- testM==testA ||
- testM>=vi->channels ||
- testA>=vi->channels) goto err_out;
- }
-
- }
-
- if(oggpack_read(opb,2)>0)goto err_out; /* 2,3:reserved */
-
- if(info->submaps>1){
- for(i=0;i<vi->channels;i++){
- info->chmuxlist[i]=oggpack_read(opb,4);
- if(info->chmuxlist[i]>=info->submaps)goto err_out;
- }
- }
- for(i=0;i<info->submaps;i++){
- info->timesubmap[i]=oggpack_read(opb,8);
- if(info->timesubmap[i]>=ci->times)goto err_out;
- info->floorsubmap[i]=oggpack_read(opb,8);
- if(info->floorsubmap[i]>=ci->floors)goto err_out;
- info->residuesubmap[i]=oggpack_read(opb,8);
- if(info->residuesubmap[i]>=ci->residues)goto err_out;
- }
-
- return info;
-
- err_out:
- mapping0_free_info(info);
- return(NULL);
-}
-
-#include "os.h"
-#include "lpc.h"
-#include "lsp.h"
-#include "envelope.h"
-#include "mdct.h"
-#include "psy.h"
-#include "scales.h"
-
-/* no time mapping implementation for now */
-static long seq=0;
-static int mapping0_forward(vorbis_block *vb,vorbis_look_mapping *l){
- vorbis_dsp_state *vd=vb->vd;
- vorbis_info *vi=vd->vi;
- backend_lookup_state *b=vb->vd->backend_state;
- vorbis_look_mapping0 *look=(vorbis_look_mapping0 *)l;
- vorbis_info_mapping0 *info=look->map;
- vorbis_info_mode *mode=look->mode;
- vorbis_block_internal *vbi=(vorbis_block_internal *)vb->internal;
- int n=vb->pcmend;
- int i,j;
- float *window=b->window[vb->W][vb->lW][vb->nW][mode->windowtype];
-
- float **pcmbundle=alloca(sizeof(float *)*vi->channels);
- int *zerobundle=alloca(sizeof(int)*vi->channels);
-
- int *nonzero=alloca(sizeof(int)*vi->channels);
-
- float *work=_vorbis_block_alloc(vb,n*sizeof(float));
- float newmax=vbi->ampmax;
-
- for(i=0;i<vi->channels;i++){
- float scale=4.f/n;
- int submap=info->chmuxlist[i];
- float ret;
-
- /* the following makes things clearer to *me* anyway */
- float *pcm =vb->pcm[i];
- float *mdct =pcm;
- float *logmdct =pcm+n/2;
- float *res =pcm;
- float *codedflr=pcm+n/2;
- float *fft =work;
- float *logfft =work;
- float *logmax =work;
- float *logmask =work+n/2;
-
- /* window the PCM data */
- for(j=0;j<n;j++)
- fft[j]=pcm[j]*=window[j];
-
- /* transform the PCM data */
- /* only MDCT right now.... */
- mdct_forward(b->transform[vb->W][0],pcm,pcm);
- for(j=0;j<n/2;j++)
- logmdct[j]=todB(mdct+j);
-
- /* FFT yields more accurate tonal estimation (not phase sensitive) */
- drft_forward(&look->fft_look,fft);
- fft[0]*=scale;
- fft[0]=todB(fft);
- for(j=1;j<n-1;j+=2){
- float temp=scale*FAST_HYPOT(fft[j],fft[j+1]);
- logfft[(j+1)>>1]=todB(&temp);
- }
-
- _analysis_output("fft",seq,logfft,n/2,0,0);
- _analysis_output("mdct",seq,logmdct,n/2,0,0);
-
- /* perform psychoacoustics; do masking */
- ret=_vp_compute_mask(look->psy_look+submap,
- logfft, /* -> logmax */
- logmdct,
- logmask,
- vbi->ampmax);
- if(ret>newmax)newmax=ret;
-
- _analysis_output("mask",seq,logmask,n/2,0,0);
-
- /* perform floor encoding */
- nonzero[i]=look->floor_func[submap]->
- forward(vb,look->floor_look[submap],
- mdct,
- logmdct,
- logmask,
- logmax,
- res,
- codedflr);
-
- /*for(j=0;j<n/2;j++)
- if(fabs(vb->pcm[i][j]>200))
- fprintf(stderr,"%ld ",seq);*/
-
- _analysis_output("res",seq-vi->channels+j,vb->pcm[i],n,0,0);
- _analysis_output("codedflr",seq++,codedflr,n/2,0,1);
-
- }
-
- vbi->ampmax=newmax;
-
- /* channel coupling */
- for(i=0;i<info->coupling_steps;i++){
- if(nonzero[info->coupling_mag[i]] ||
- nonzero[info->coupling_ang[i]]){
-
- float *pcmM=vb->pcm[info->coupling_mag[i]];
- float *pcmA=vb->pcm[info->coupling_ang[i]];
-
- /* +-
- B
- | A-B
- -4 -3 -2 -1 0
- |
- 3 | 1
- |
- -+ 2-----+-----2----A ++
- |
- 1 | 3
- |
- 0 -1 -2 -3 -4
- B-A |
- --
-
- */
-
- nonzero[info->coupling_mag[i]]=1;
- nonzero[info->coupling_ang[i]]=1;
-
- for(j=n/2-1;j>=0;j--){
- float A=rint(pcmM[j]);
- float B=rint(pcmA[j]);
- float mag;
- float ang;
-
- if(fabs(A)>fabs(B)){
- mag=A;
- if(A>0)
- ang=A-B;
- else
- ang=B-A;
- }else{
- mag=B;
- if(B>0)
- ang=A-B;
- else
- ang=B-A;
- }
-
- /*if(fabs(mag)<3.5f)
- ang=rint(ang/(mag*2.f))*mag*2.f;*/
-
- /*if(fabs(mag)<1.5)
- ang=0;
-
- if(j>(n*3/16))
- ang=0;
-
- if(ang>=fabs(mag*2))ang=-fabs(mag*2);*/
-
- pcmM[j]=mag;
- pcmA[j]=ang;
- }
- }
- }
-
- /* perform residue encoding with residue mapping; this is
- multiplexed. All the channels belonging to one submap are
- encoded (values interleaved), then the next submap, etc */
-
- for(i=0;i<info->submaps;i++){
- int ch_in_bundle=0;
- for(j=0;j<vi->channels;j++){
- if(info->chmuxlist[j]==i){
- if(nonzero[j])
- zerobundle[ch_in_bundle]=1;
- else
- zerobundle[ch_in_bundle]=0;
- pcmbundle[ch_in_bundle++]=vb->pcm[j];
- }
- }
-
- look->residue_func[i]->forward(vb,look->residue_look[i],
- pcmbundle,zerobundle,ch_in_bundle);
- }
-
- look->lastframe=vb->sequence;
- return(0);
-}
-
-static int mapping0_inverse(vorbis_block *vb,vorbis_look_mapping *l){
- vorbis_dsp_state *vd=vb->vd;
- vorbis_info *vi=vd->vi;
- codec_setup_info *ci=vi->codec_setup;
- backend_lookup_state *b=vd->backend_state;
- vorbis_look_mapping0 *look=(vorbis_look_mapping0 *)l;
- vorbis_info_mapping0 *info=look->map;
- vorbis_info_mode *mode=look->mode;
- int i,j;
- long n=vb->pcmend=ci->blocksizes[vb->W];
-
- float *window=b->window[vb->W][vb->lW][vb->nW][mode->windowtype];
- float **pcmbundle=alloca(sizeof(float *)*vi->channels);
- int *zerobundle=alloca(sizeof(int)*vi->channels);
-
- int *nonzero =alloca(sizeof(int)*vi->channels);
- void **floormemo=alloca(sizeof(void *)*vi->channels);
-
- /* time domain information decode (note that applying the
- information would have to happen later; we'll probably add a
- function entry to the harness for that later */
- /* NOT IMPLEMENTED */
-
- /* recover the spectral envelope; store it in the PCM vector for now */
- for(i=0;i<vi->channels;i++){
- int submap=info->chmuxlist[i];
- floormemo[i]=look->floor_func[submap]->
- inverse1(vb,look->floor_look[submap]);
- if(floormemo[i])
- nonzero[i]=1;
- else
- nonzero[i]=0;
- memset(vb->pcm[i],0,sizeof(float)*n/2);
- }
-
- /* channel coupling can 'dirty' the nonzero listing */
- for(i=0;i<info->coupling_steps;i++){
- if(nonzero[info->coupling_mag[i]] ||
- nonzero[info->coupling_ang[i]]){
- nonzero[info->coupling_mag[i]]=1;
- nonzero[info->coupling_ang[i]]=1;
- }
- }
-
- /* recover the residue into our working vectors */
- for(i=0;i<info->submaps;i++){
- int ch_in_bundle=0;
- for(j=0;j<vi->channels;j++){
- if(info->chmuxlist[j]==i){
- if(nonzero[j])
- zerobundle[ch_in_bundle]=1;
- else
- zerobundle[ch_in_bundle]=0;
- pcmbundle[ch_in_bundle++]=vb->pcm[j];
- }
- }
-
- look->residue_func[i]->inverse(vb,look->residue_look[i],
- pcmbundle,zerobundle,ch_in_bundle);
- }
-
- /* channel coupling */
- for(i=info->coupling_steps-1;i>=0;i--){
- float *pcmM=vb->pcm[info->coupling_mag[i]];
- float *pcmA=vb->pcm[info->coupling_ang[i]];
-
- for(j=0;j<n/2;j++){
- float mag=pcmM[j];
- float ang=pcmA[j];
-
- if(mag>0)
- if(ang>0){
- pcmM[j]=mag;
- pcmA[j]=mag-ang;
- }else{
- pcmA[j]=mag;
- pcmM[j]=mag+ang;
- }
- else
- if(ang>0){
- pcmM[j]=mag;
- pcmA[j]=mag+ang;
- }else{
- pcmA[j]=mag;
- pcmM[j]=mag-ang;
- }
- }
- }
-
- /* compute and apply spectral envelope */
- for(i=0;i<vi->channels;i++){
- float *pcm=vb->pcm[i];
- int submap=info->chmuxlist[i];
- look->floor_func[submap]->
- inverse2(vb,look->floor_look[submap],floormemo[i],pcm);
- }
-
- /* transform the PCM data; takes PCM vector, vb; modifies PCM vector */
- /* only MDCT right now.... */
- for(i=0;i<vi->channels;i++){
- float *pcm=vb->pcm[i];
- _analysis_output("out",seq+i,pcm,n/2,0,1);
- mdct_backward(b->transform[vb->W][0],pcm,pcm);
- }
-
- /* window the data */
- for(i=0;i<vi->channels;i++){
- float *pcm=vb->pcm[i];
- if(nonzero[i])
- for(j=0;j<n;j++)
- pcm[j]*=window[j];
- else
- for(j=0;j<n;j++)
- pcm[j]=0.f;
- _analysis_output("final",seq++,pcm,n,0,0);
- }
-
- /* now apply the decoded post-window time information */
- /* NOT IMPLEMENTED */
-
- /* all done! */
- return(0);
-}
-
-/* export hooks */
-vorbis_func_mapping mapping0_exportbundle={
- &mapping0_pack,&mapping0_unpack,&mapping0_look,&mapping0_copy_info,
- &mapping0_free_info,&mapping0_free_look,&mapping0_forward,&mapping0_inverse
-};
diff --git a/lib/masking.h b/lib/masking.h
deleted file mode 100644
index eb19c073..00000000
--- a/lib/masking.h
+++ /dev/null
@@ -1,243 +0,0 @@
-/********************************************************************
- * *
- * 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: masking curve data for psychoacoustics
- last mod: $Id: masking.h,v 1.17 2001/06/18 09:07:31 xiphmont Exp $
-
- ********************************************************************/
-
-#ifndef _V_MASKING_H_
-#define _V_MASKING_H_
-
-/* Not really an ATH, more a bottom curve to limit LSP dynamic range */
-static float ATH_Bark_dB_lspconservative[]={
- 15, 15, 15, 15, 11, 10, 8, 7, 7, 7,
- 6, 2, 0, 0, -3, -5, -6, -6, -4.5f, 2.5f,
- 10, 15, 15, 15, 15, 15, 15};
-
-/* The below masking curves are straight from the R. Ehmer
- (J. Acoustical Society of America) papers ca 1958-59. I modified
- them slightly as Ehmer does not correct for the Absolute Threshold
- of Hearing, and the low dB portions of the curves are thus highly
- suspect. */
-
-/* Let's all do the Trek thing and just call them 'Ehmer curves' ;-)
- Note these are octaves, not Bark scale. */
-
-#define EHMER_OFFSET 16
-#define EHMER_MAX 56
-
-static float tone_125_40dB_SL[EHMER_MAX]={
- 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20,
- 20, 18, 16, 14, 12, 11, 9, 7, 5, 3, 2, 0, -2, -4, -6, -8,
- -10, -12, -14, -16, -18, -20, -23, -25, -28,-30,-34,-37,-40,-44,-48,-52,
--900,-900,-900,-900,-900,-900,-900,-900};
-static float tone_125_60dB_SL[EHMER_MAX]={
- 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40,
- 40, 38, 36, 34, 32, 31, 29, 27, 25, 23, 22, 20, 18, 16, 14, 12,
- 10, 8, 6, 4, 2, 0, -3, -5, -8,-10,-14,-17,-20,-24,-28,-32,
--900,-900,-900,-900,-900,-900,-900,-900};
-static float tone_125_80dB_SL[EHMER_MAX]={
- 60, 60, 60, 60, 60, 60, 60, 60, 60, 60, 60, 60, 60, 60, 60, 60,
- 60, 58, 56, 54, 52, 51, 49, 47, 45, 43, 42, 40, 38, 36, 34, 32,
- 30, 28, 26, 24, 22, 20, 17, 15, 12, 10, 6, 3, 0, -4, -8,-12,
--900,-900,-900,-900,-900,-900,-900,-900};
-static float tone_125_100dB_SL[EHMER_MAX]={
- 78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78,
- 78, 77, 75, 74, 73, 72, 71, 70, 69, 68, 67, 65, 64, 63, 62, 60,
- 58, 57, 55, 54, 52, 50, 48, 46, 44, 42, 40, 38, 36, 34, 31, 29,
- 27, 24, 22, 20, 18, 15, 13, 11};
-
-static float tone_250_40dB_SL[EHMER_MAX]={
--900,-900,-900,-900,-900,-900,-900,-900, -19, -13, -7, -1, 4, 9, 15, 20,
- 22, 23, 22, 19, 18, 18, 16, 13, 9, 7, 3, 1, -1, -3, -6, -8,
- -10, -13, -16, -19, -21, -24, -28, -32, -900,-900,-900,-900,-900,-900,-900,-900,
--900,-900,-900,-900,-900,-900,-900,-900};
-static float tone_250_60dB_SL[EHMER_MAX]={
--900,-900,-900,-900,-900,-900,-900, -10, -5, 1, 7, 13, 19, 25, 30, 33,
- 36, 39, 38, 37, 38, 39, 39, 40, 38, 36, 35, 34, 33, 31, 29, 28,
- 28, 28, 25, 20, 14, 10, 5, 0, -5,-10,-15,-20,-25,-30,-35,-40,
--900,-900,-900,-900,-900,-900,-900,-900};
-static float tone_250_80dB_SL[EHMER_MAX]={
--900,-900,-900,-900,-900,-900,-900, -10, 10, 17, 24, 30, 37, 41, 48, 49,
- 50, 53, 54, 53, 53, 54, 55, 57, 57, 57, 58, 59, 60, 58, 57, 58,
- 59, 58, 57, 54, 52, 50, 49, 47, 46, 47, 46, 44, 43, 42, 41, 40,
- 38, 32, 27, 22, 17, 11, 6, 0};
-/* no data, just interpolated from 80 */
-static float tone_250_100dB_SL[EHMER_MAX]={
--900,-900,-900,-900,-900,-900,-900, -10, 15, 25, 34, 40, 50, 56, 60, 70,
- 70, 73, 74, 73, 73, 74, 75, 77, 77, 77, 78, 79, 80, 78, 77, 78,
- 79, 78, 77, 74, 72, 70, 69, 67, 66, 67, 66, 64, 63, 62, 61, 60,
- 58, 52, 47, 42, 37, 31, 26, 20};
-
-static float tone_500_40dB_SL[EHMER_MAX]={
--900,-900,-900,-900,-900,-900,-900, -40, -26, -20, -14, -8, -2, 4, 10, 17,
- 23, 16, 12, 9, 6, 3, 0, -3, -7, -10, -13, -16, -20, -23, -26, -30,
--900,-900,-900,-900,-900,-900,-900,-900, -900,-900,-900,-900,-900,-900,-900,-900,
--900,-900,-900,-900,-900,-900,-900,-900};
-static float tone_500_60dB_SL[EHMER_MAX]={
--900,-900,-900,-900,-900,-900,-900,-900, -18, -12, -6, 0, 6, 13, 20, 30,
- 39, 34, 31, 29, 29, 27, 24, 21, 18, 16, 13, 8, 6, 3, 1, -1,
- -5, -2, -5, -8, -12, -15, -18, -22, -900,-900,-900,-900,-900,-900,-900,-900,
--900,-900,-900,-900,-900,-900,-900,-900};
-static float tone_500_80dB_SL[EHMER_MAX]={
--900,-900,-900,-900,-900,-900,-900,-900, -22,-16,-10, 0, 10, 20, 32, 43,
- 53, 52, 52, 50, 49, 50, 52, 55, 55, 54, 51, 49, 46, 44, 44, 42,
- 38, 34, 32, 29, 29, 28, 25, 23, 20, 16, 10, 7, 4, 2, -1, -4,
- -7, -10, -15, -20, -25, -30, -35, -40};
-static float tone_500_100dB_SL[EHMER_MAX]={
--900,-900,-900,-900,-900,-900,-900, -10, -7, 2, 10, 19, 27, 35, 55, 56,
- 62, 61, 60, 58, 57, 57, 59, 63, 65, 66, 62, 60, 57, 57, 58, 58,
- 57, 56, 56, 56, 57, 57, 56, 57, 57, 54, 47, 41, 37, 28, 21, 16,
- 10, 3, -3, -8, -13, -18, -23, -28};
-
-static float tone_1000_40dB_SL[EHMER_MAX]={
--900,-900,-900,-900,-900,-900,-900,-900, -55, -40, -30, -20, -10, 0, 9, 20,
- 27, 20, 13, 14, 13, 5, -1, -6, -11, -20, -30,-900,-900,-900,-900,-900,
--900,-900,-900,-900,-900,-900,-900,-900, -900,-900,-900,-900,-900,-900,-900,-900,
--900,-900,-900,-900,-900,-900,-900,-900};
-static float tone_1000_60dB_SL[EHMER_MAX]={
--900,-900,-900,-900,-900,-900,-900, -43, -33,-23,-13, -3, 7, 17, 25, 37,
- 42, 33, 25, 25, 23, 18, 13, 9, 4, -1, -7,-13,-18, -23, -28, -33,
--900,-900,-900,-900,-900,-900,-900,-900, -900,-900,-900,-900,-900,-900,-900,-900,
--900,-900,-900,-900,-900,-900,-900,-900};
-static float tone_1000_80dB_SL[EHMER_MAX]={
--900,-900,-900,-900,-900,-900,-900, -35, -25,-14, -4, 6, 16, 27, 33, 50,
- 59, 57, 47, 41, 40, 43, 47, 48, 47, 42, 39, 37, 37, 36, 35, 32,
- 30, 27, 21, 15, 5, -2, -10, -18, -900,-900,-900,-900,-900,-900,-900,-900,
--900,-900,-900,-900,-900,-900,-900,-900};
-static float tone_1000_100dB_SL[EHMER_MAX]={
--900,-900,-900,-900,-900,-900, -40, -30, -20,-10, 0, 10, 23, 33, 45, 60,
- 70, 72, 55, 49, 43, 40, 44, 54, 59, 58, 49, 43, 52, 57, 57, 58,
- 58, 54, 49, 47, 42, 39, 33, 28, 20, 15, 5, 0, -5,-15,-20,-25,
--900,-900,-900,-900,-900,-900,-900,-900};
-
-static float tone_2000_40dB_SL[EHMER_MAX]={
--900,-900,-900,-900,-900,-900,-900,-900, -40, -30, -21, -12, -3, 5, 12, 20,
- 24, 21, 14, 5, -5, -15, -25, -35, -900,-900,-900,-900,-900,-900,-900,-900,
--900,-900,-900,-900,-900,-900,-900,-900, -900,-900,-900,-900,-900,-900,-900,-900,
--900,-900,-900,-900,-900,-900,-900,-900};
-static float tone_2000_60dB_SL[EHMER_MAX]={
--900,-900,-900,-900,-900,-900,-900,-900, -40, -30, -21, -12, -2, 8, 19, 31,
- 38, 34, 24, 17, 14, 13, 11, 7, 3, -2, -6, -10, -14, -20, -26, -32,
--900,-900,-900,-900,-900,-900,-900,-900, -900,-900,-900,-900,-900,-900,-900,-900,
--900,-900,-900,-900,-900,-900,-900,-900};
-static float tone_2000_80dB_SL[EHMER_MAX]={
--900,-900,-900,-900,-900,-900,-900,-900, -40, -30, -21, -12, -2, 13, 28, 40,
- 51, 51, 43, 35, 28, 29, 35, 37, 37, 35, 31, 28, 25, 22, 19, 15,
- 11, 8, 6, 2, -6, -14, -22, -30, -900,-900,-900,-900,-900,-900,-900,-900,
--900,-900,-900,-900,-900,-900,-900,-900};
-static float tone_2000_100dB_SL[EHMER_MAX]={
--900,-900,-900,-900,-900,-900,-900,-900, -40, -30, -21, -10, 6, 25, 42, 60,
- 66, 60, 53, 43, 35, 31, 34, 47, 58, 51, 43, 45, 54, 59, 59, 56,
- 54, 51, 40, 29, 20, 11, 2, -8, -17, -26, -35,-900,-900,-900,-900,-900,
--900,-900,-900,-900,-900,-900,-900,-900};
-
-static float tone_4000_40dB_SL[EHMER_MAX]={
--900,-900,-900,-900,-900,-900,-900,-900, -40, -30, -21, -12, 0, 3, 10, 18,
- 24, 21, 14, 5, -5, -15, -25, -35, -900,-900,-900,-900,-900,-900,-900,-900,
--900,-900,-900,-900,-900,-900,-900,-900, -900,-900,-900,-900,-900,-900,-900,-900,
--900,-900,-900,-900,-900,-900,-900,-900};
-
-static float tone_4000_60dB_SL[EHMER_MAX]={
--900,-900,-900,-900,-900,-900,-900,-900, -40, -30, -21, -12, -2, 8, 19, 31,
- 38, 33, 28, 23, 19, 14, 11, 8, 3, -2, -7, -12, -17, -22, -27, -37,
--900,-900,-900,-900,-900,-900,-900,-900, -900,-900,-900,-900,-900,-900,-900,-900,
--900,-900,-900,-900,-900,-900,-900,-900};
-
-static float tone_4000_80dB_SL[EHMER_MAX]={
--900,-900,-900,-900,-900,-900,-900,-900, -60, -50, -40, -29, -12, 5, 19, 37,
- 51, 49, 40, 35, 36, 36, 36, 33, 32, 24, 18, 8, -3, -12, -20, -29,
--900,-900,-900,-900,-900,-900,-900,-900, -900,-900,-900,-900,-900,-900,-900,-900,
--900,-900,-900,-900,-900,-900,-900,-900};
-
-static float tone_4000_100dB_SL[EHMER_MAX]={
- -20, -12, -8, -4, 0, 4, 8, 11, 15, 22, 26, 28, 32, 36, 43, 52,
- 62, 59, 50, 48, 50, 50, 45, 36, 45, 30, 20, 10, 0, -10, -19, -28,
- -37,-900,-900,-900,-900,-900,-900,-900, -900,-900,-900,-900,-900,-900,-900,-900,
--900,-900,-900,-900,-900,-900,-900,-900};
-
-
-static float tone_8000_40dB_SL[EHMER_MAX]={
--900,-900,-900,-900,-900,-900,-900,-900, -40, -30, -21, -12, 0, 3, 10, 18,
- 24, 21, 14, 5, 0, 0, 5, 10, 15, 25, 30, 45, 50, 55, 60, 65,
- 70, 75, 80, 85, 90, 95, 100, 100, -900,-900,-900,-900,-900,-900,-900,-900,
--900,-900,-900,-900,-900,-900,-900,-900};
-static float tone_8000_60dB_SL[EHMER_MAX]={
--900,-900,-900,-900,-900,-900,-900, -10, -21, -18, -14, -10, 0, 3, 15, 30,
- 43, 40, 36, 35, 36, 38, 41, 43, 45, 47, 50, 55, 60, 65, 70, 75,
- 80, 85, 90, 95, 100, 100, 100, 100, -900,-900,-900,-900,-900,-900,-900,-900,
- -900,-900,-900,-900,-900,-900,-900,-900};
-static float tone_8000_80dB_SL[EHMER_MAX]={
--900,-900,-900,-900,-900,-900,-900, -10, -1, 2, 6, 10, 13, 19, 25, 35,
- 63, 55, 50, 48, 46, 45, 45, 50, 55, 65, 75, 80, 85, 90, 95, 100,
- 100, 100, 100, 100,-900,-900,-900,-900, -900,-900,-900,-900,-900,-900,-900,-900,
- -900,-900,-900,-900,-900,-900,-900,-900};
-static float tone_8000_100dB_SL[EHMER_MAX]={
- -18, -12, -7, -3, 0, 2, 6, 9, 12, 19, 22, 21, 19, 21, 40, 40,
- 80, 60, 35, 25, 15, 5, 5, 5, 25, 30, 35, 43, 50, 55, 60, 65,
- 70, 75, 80, 85, 90, 95, 100, 100, -900,-900,-900,-900,-900,-900,-900,-900,
- -900,-900,-900,-900,-900,-900,-900,-900};
-
-#if 0 /* not used for the time being */
-static float noise_500_60dB_SL[EHMER_MAX]={
--900,-900,-900,-900,-900, -20, -11, -2, 7, 16, 25, 34, 43, 52, 61, 66,
- 69, 68, 58, 50, 44, 38, 32, 28, 25, 24, 20, 18, 17, 12, 10, 8,
- 5, 0, -5, -8, -12, -15, -18, -22, -900,-900,-900,-900,-900,-900,-900,-900,
--900,-900,-900,-900,-900,-900,-900,-900};
-
-static float noise_500_80dB_SL[EHMER_MAX]={
--900,-900,-900, -20, -10, -1, 8, 17, 26, 35, 44, 53, 62, 70, 79, 83,
- 85, 85, 81, 77, 74, 71, 68, 63, 61, 59, 56, 55, 54, 52, 48, 47,
- 45, 46, 45, 43, 40, 37, 33, 32, 35, 32, 30, 29, 20, 10, 0, -10,
- -20, -30,-900,-900,-900,-900,-900,-900};
-
-static float noise_1000_60dB_SL[EHMER_MAX]={
--900,-900,-900,-900, -24, -15, -6, 3, 12, 21, 28, 34, 40, 48, 57, 60,
- 61, 56, 54, 45, 36, 27, 21, 19, 17, 13, 10, 0, -10, -20, -20,-900,
--900,-900,-900,-900,-900,-900,-900,-900, -900,-900,-900,-900,-900,-900,-900,-900,
--900,-900,-900,-900,-900,-900,-900,-900};
-
-static float noise_1000_80dB_SL[EHMER_MAX]={
--900, -26, -17, -8, 1, 10, 19, 28, 37, 41, 46, 51, 58, 68, 74, 81,
- 80, 81, 70, 66, 58, 61, 59, 55, 54, 53, 52, 49, 48, 42, 38, 38,
- 39, 34, 30, 27, 20, 10, 0, -10, -20, -30,-900,-900,-900,-900,-900,-900,
--900,-900,-900,-900,-900,-900,-900,-900};
-
-static float noise_2000_60dB_SL[EHMER_MAX]={
--900,-900,-900, -34, -25, -16, -7, 2, 11, 18, 23, 30, 35, 42, 51, 58,
- 58, 57, 50, 40,-900,-900,-900,-900, -900,-900,-900,-900,-900,-900,-900,-900,
--900,-900,-900,-900,-900,-900,-900,-900, -900,-900,-900,-900,-900,-900,-900,-900,
--900,-900,-900,-900,-900,-900,-900,-900};
-
-static float noise_2000_80dB_SL[EHMER_MAX]={
--900, -26, -17, -8, 1, 10, 19, 28, 33, 38, 43, 48, 53, 62, 70, 77,
- 77, 75, 70, 67, 68, 66, 62, 61, 60, 59, 52, 47, 39, 35, 34, 35,
- 35, 33, 30, 27, 20, 10, 0, -10, -20, -30,-900,-900,-900,-900,-900,-900,
--900,-900,-900,-900,-900,-900,-900,-900};
-
-static float noise_4000_60dB_SL[EHMER_MAX]={
--900,-900,-900, -34, -25, -16, -7, 2, 11, 20, 25, 31, 37, 45, 56, 62,
- 64, 61,-900,-900,-900,-900,-900,-900, -900,-900,-900,-900,-900,-900,-900,-900,
--900,-900,-900,-900,-900,-900,-900,-900, -900,-900,-900,-900,-900,-900,-900,-900,
--900,-900,-900,-900,-900,-900,-900,-900};
-
-static float noise_4000_80dB_SL[EHMER_MAX]={
--900, -26, -17, -8, 1, 10, 19, 26, 33, 39, 45, 50, 55, 65, 75, 82,
- 84, 81, 78, 72, 70, 69, 66, 61, 50, 48, 46, 40, 35, 30, 25, 20,
- 15, 10, 5, 0, -10, -20, -30,-900, -900,-900,-900,-900,-900,-900,-900,-900,
--900,-900,-900,-900,-900,-900,-900,-900};
-
-#endif
-#endif
-
-
diff --git a/lib/mdct.c b/lib/mdct.c
deleted file mode 100644
index c145e9cc..00000000
--- a/lib/mdct.c
+++ /dev/null
@@ -1,568 +0,0 @@
-/********************************************************************
- * *
- * 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: normalized modified discrete cosine transform
- power of two length transform only [64 <= n ]
- last mod: $Id: mdct.c,v 1.25 2001/02/26 03:50:42 xiphmont Exp $
-
- Original algorithm adapted long ago from _The use of multirate filter
- banks for coding of high quality digital audio_, by T. Sporer,
- K. Brandenburg and B. Edler, collection of the European Signal
- Processing Conference (EUSIPCO), Amsterdam, June 1992, Vol.1, pp
- 211-214
-
- The below code implements an algorithm that no longer looks much like
- that presented in the paper, but the basic structure remains if you
- dig deep enough to see it.
-
- This module DOES NOT INCLUDE code to generate/apply the window
- function. Everybody has their own weird favorite including me... I
- happen to like the properties of y=sin(2PI*sin^2(x)), but others may
- vehemently disagree.
-
- ********************************************************************/
-
-/* this can also be run as an integer transform by uncommenting a
- define in mdct.h; the integerization is a first pass and although
- it's likely stable for Vorbis, the dynamic range is constrained and
- roundoff isn't done (so it's noisy). Consider it functional, but
- only a starting point. There's no point on a machine with an FPU */
-
-#include <stdio.h>
-#include <stdlib.h>
-#include <string.h>
-#include <math.h>
-#include "vorbis/codec.h"
-#include "mdct.h"
-#include "os.h"
-
-/* build lookups for trig functions; also pre-figure scaling and
- some window function algebra. */
-
-void mdct_init(mdct_lookup *lookup,int n){
- int *bitrev=_ogg_malloc(sizeof(int)*(n/4));
- DATA_TYPE *T=_ogg_malloc(sizeof(DATA_TYPE)*(n+n/4));
-
- int i;
- int n2=n>>1;
- int log2n=lookup->log2n=rint(log(n)/log(2));
- lookup->n=n;
- lookup->trig=T;
- lookup->bitrev=bitrev;
-
-/* trig lookups... */
-
- for(i=0;i<n/4;i++){
- T[i*2]=FLOAT_CONV(cos((M_PI/n)*(4*i)));
- T[i*2+1]=FLOAT_CONV(-sin((M_PI/n)*(4*i)));
- T[n2+i*2]=FLOAT_CONV(cos((M_PI/(2*n))*(2*i+1)));
- T[n2+i*2+1]=FLOAT_CONV(sin((M_PI/(2*n))*(2*i+1)));
- }
- for(i=0;i<n/8;i++){
- T[n+i*2]=FLOAT_CONV(cos((M_PI/n)*(4*i+2))*.5);
- T[n+i*2+1]=FLOAT_CONV(-sin((M_PI/n)*(4*i+2))*.5);
- }
-
- /* bitreverse lookup... */
-
- {
- int mask=(1<<(log2n-1))-1,i,j;
- int msb=1<<(log2n-2);
- for(i=0;i<n/8;i++){
- int acc=0;
- for(j=0;msb>>j;j++)
- if((msb>>j)&i)acc|=1<<j;
- bitrev[i*2]=((~acc)&mask)-1;
- bitrev[i*2+1]=acc;
-
- }
- }
- lookup->scale=FLOAT_CONV(4.f/n);
-}
-
-/* 8 point butterfly (in place, 4 register) */
-STIN void mdct_butterfly_8(DATA_TYPE *x){
- REG_TYPE r0 = x[6] + x[2];
- REG_TYPE r1 = x[6] - x[2];
- REG_TYPE r2 = x[4] + x[0];
- REG_TYPE r3 = x[4] - x[0];
-
- r0 = x[6] + x[2];
- r1 = x[6] - x[2];
- r2 = x[4] + x[0];
- r3 = x[4] - x[0];
-
- x[6] = r0 + r2;
- x[4] = r0 - r2;
-
- r0 = x[5] - x[1];
- r2 = x[7] - x[3];
- x[0] = r1 + r0;
- x[2] = r1 - r0;
-
- r0 = x[5] + x[1];
- r1 = x[7] + x[3];
- x[3] = r2 + r3;
- x[1] = r2 - r3;
- x[7] = r1 + r0;
- x[5] = r1 - r0;
-
-}
-
-/* 16 point butterfly (in place, 4 register) */
-STIN void mdct_butterfly_16(DATA_TYPE *x){
- REG_TYPE r0 = x[1] - x[9];
- REG_TYPE r1 = x[0] - x[8];
-
- x[8] += x[0];
- x[9] += x[1];
- x[0] = MULT_NORM((r0 + r1) * cPI2_8);
- x[1] = MULT_NORM((r0 - r1) * cPI2_8);
-
- r0 = x[3] - x[11];
- r1 = x[10] - x[2];
- x[10] += x[2];
- x[11] += x[3];
- x[2] = r0;
- x[3] = r1;
-
- r0 = x[12] - x[4];
- r1 = x[13] - x[5];
- x[12] += x[4];
- x[13] += x[5];
- x[4] = MULT_NORM((r0 - r1) * cPI2_8);
- x[5] = MULT_NORM((r0 + r1) * cPI2_8);
-
- r0 = x[14] - x[6];
- r1 = x[15] - x[7];
- x[14] += x[6];
- x[15] += x[7];
- x[6] = r0;
- x[7] = r1;
-
- mdct_butterfly_8(x);
- mdct_butterfly_8(x+8);
-}
-
-/* 32 point butterfly (in place, 4 register) */
-STIN void mdct_butterfly_32(DATA_TYPE *x){
- REG_TYPE r0 = x[30] - x[14];
- REG_TYPE r1 = x[31] - x[15];
-
- x[30] += x[14];
- x[31] += x[15];
- x[14] = r0;
- x[15] = r1;
-
- r0 = x[28] - x[12];
- r1 = x[29] - x[13];
- x[28] += x[12];
- x[29] += x[13];
- x[12] = MULT_NORM( r0 * cPI1_8 - r1 * cPI3_8 );
- x[13] = MULT_NORM( r0 * cPI3_8 + r1 * cPI1_8 );
-
- r0 = x[26] - x[10];
- r1 = x[27] - x[11];
- x[26] += x[10];
- x[27] += x[11];
- x[10] = MULT_NORM(( r0 - r1 ) * cPI2_8);
- x[11] = MULT_NORM(( r0 + r1 ) * cPI2_8);
-
- r0 = x[24] - x[8];
- r1 = x[25] - x[9];
- x[24] += x[8];
- x[25] += x[9];
- x[8] = MULT_NORM( r0 * cPI3_8 - r1 * cPI1_8 );
- x[9] = MULT_NORM( r1 * cPI3_8 + r0 * cPI1_8 );
-
- r0 = x[22] - x[6];
- r1 = x[7] - x[23];
- x[22] += x[6];
- x[23] += x[7];
- x[6] = r1;
- x[7] = r0;
-
- r0 = x[4] - x[20];
- r1 = x[5] - x[21];
- x[20] += x[4];
- x[21] += x[5];
- x[4] = MULT_NORM( r1 * cPI1_8 + r0 * cPI3_8 );
- x[5] = MULT_NORM( r1 * cPI3_8 - r0 * cPI1_8 );
-
- r0 = x[2] - x[18];
- r1 = x[3] - x[19];
- x[18] += x[2];
- x[19] += x[3];
- x[2] = MULT_NORM(( r1 + r0 ) * cPI2_8);
- x[3] = MULT_NORM(( r1 - r0 ) * cPI2_8);
-
- r0 = x[0] - x[16];
- r1 = x[1] - x[17];
- x[16] += x[0];
- x[17] += x[1];
- x[0] = MULT_NORM( r1 * cPI3_8 + r0 * cPI1_8 );
- x[1] = MULT_NORM( r1 * cPI1_8 - r0 * cPI3_8 );
-
- mdct_butterfly_16(x);
- mdct_butterfly_16(x+16);
-
-}
-
-/* N point first stage butterfly (in place, 2 register) */
-STIN void mdct_butterfly_first(DATA_TYPE *T,
- DATA_TYPE *x,
- int points){
-
- DATA_TYPE *x1 = x + points - 8;
- DATA_TYPE *x2 = x + (points>>1) - 8;
- REG_TYPE r0;
- REG_TYPE r1;
-
- do{
-
- r0 = x1[6] - x2[6];
- r1 = x1[7] - x2[7];
- x1[6] += x2[6];
- x1[7] += x2[7];
- x2[6] = MULT_NORM(r1 * T[1] + r0 * T[0]);
- x2[7] = MULT_NORM(r1 * T[0] - r0 * T[1]);
-
- r0 = x1[4] - x2[4];
- r1 = x1[5] - x2[5];
- x1[4] += x2[4];
- x1[5] += x2[5];
- x2[4] = MULT_NORM(r1 * T[5] + r0 * T[4]);
- x2[5] = MULT_NORM(r1 * T[4] - r0 * T[5]);
-
- r0 = x1[2] - x2[2];
- r1 = x1[3] - x2[3];
- x1[2] += x2[2];
- x1[3] += x2[3];
- x2[2] = MULT_NORM(r1 * T[9] + r0 * T[8]);
- x2[3] = MULT_NORM(r1 * T[8] - r0 * T[9]);
-
- r0 = x1[0] - x2[0];
- r1 = x1[1] - x2[1];
- x1[0] += x2[0];
- x1[1] += x2[1];
- x2[0] = MULT_NORM(r1 * T[13] + r0 * T[12]);
- x2[1] = MULT_NORM(r1 * T[12] - r0 * T[13]);
-
- x1-=8;
- x2-=8;
- T+=16;
-
- }while(x2>=x);
-}
-
-/* N/stage point generic N stage butterfly (in place, 2 register) */
-STIN void mdct_butterfly_generic(DATA_TYPE *T,
- DATA_TYPE *x,
- int points,
- int trigint){
-
- DATA_TYPE *x1 = x + points - 8;
- DATA_TYPE *x2 = x + (points>>1) - 8;
- REG_TYPE r0;
- REG_TYPE r1;
-
- do{
-
- r0 = x1[6] - x2[6];
- r1 = x1[7] - x2[7];
- x1[6] += x2[6];
- x1[7] += x2[7];
- x2[6] = MULT_NORM(r1 * T[1] + r0 * T[0]);
- x2[7] = MULT_NORM(r1 * T[0] - r0 * T[1]);
-
- T+=trigint;
-
- r0 = x1[4] - x2[4];
- r1 = x1[5] - x2[5];
- x1[4] += x2[4];
- x1[5] += x2[5];
- x2[4] = MULT_NORM(r1 * T[1] + r0 * T[0]);
- x2[5] = MULT_NORM(r1 * T[0] - r0 * T[1]);
-
- T+=trigint;
-
- r0 = x1[2] - x2[2];
- r1 = x1[3] - x2[3];
- x1[2] += x2[2];
- x1[3] += x2[3];
- x2[2] = MULT_NORM(r1 * T[1] + r0 * T[0]);
- x2[3] = MULT_NORM(r1 * T[0] - r0 * T[1]);
-
- T+=trigint;
-
- r0 = x1[0] - x2[0];
- r1 = x1[1] - x2[1];
- x1[0] += x2[0];
- x1[1] += x2[1];
- x2[0] = MULT_NORM(r1 * T[1] + r0 * T[0]);
- x2[1] = MULT_NORM(r1 * T[0] - r0 * T[1]);
-
- T+=trigint;
- x1-=8;
- x2-=8;
-
- }while(x2>=x);
-}
-
-STIN void mdct_butterflies(mdct_lookup *init,
- DATA_TYPE *x,
- int points){
-
- DATA_TYPE *T=init->trig;
- int stages=init->log2n-5;
- int i,j;
-
- if(--stages>0){
- mdct_butterfly_first(T,x,points);
- }
-
- for(i=1;--stages>0;i++){
- for(j=0;j<(1<<i);j++)
- mdct_butterfly_generic(T,x+(points>>i)*j,points>>i,4<<i);
- }
-
- for(j=0;j<points;j+=32)
- mdct_butterfly_32(x+j);
-
-}
-
-void mdct_clear(mdct_lookup *l){
- if(l){
- if(l->trig)_ogg_free(l->trig);
- if(l->bitrev)_ogg_free(l->bitrev);
- memset(l,0,sizeof(mdct_lookup));
- }
-}
-
-STIN void mdct_bitreverse(mdct_lookup *init,
- DATA_TYPE *x){
- int n = init->n;
- int *bit = init->bitrev;
- DATA_TYPE *w0 = x;
- DATA_TYPE *w1 = x = w0+(n>>1);
- DATA_TYPE *T = init->trig+n;
-
- do{
- DATA_TYPE *x0 = x+bit[0];
- DATA_TYPE *x1 = x+bit[1];
-
- REG_TYPE r0 = x0[1] - x1[1];
- REG_TYPE r1 = x0[0] + x1[0];
- REG_TYPE r2 = MULT_NORM(r1 * T[0] + r0 * T[1]);
- REG_TYPE r3 = MULT_NORM(r1 * T[1] - r0 * T[0]);
-
- w1 -= 4;
-
- r0 = HALVE(x0[1] + x1[1]);
- r1 = HALVE(x0[0] - x1[0]);
-
- w0[0] = r0 + r2;
- w1[2] = r0 - r2;
- w0[1] = r1 + r3;
- w1[3] = r3 - r1;
-
- x0 = x+bit[2];
- x1 = x+bit[3];
-
- r0 = x0[1] - x1[1];
- r1 = x0[0] + x1[0];
- r2 = MULT_NORM(r1 * T[2] + r0 * T[3]);
- r3 = MULT_NORM(r1 * T[3] - r0 * T[2]);
-
- r0 = HALVE(x0[1] + x1[1]);
- r1 = HALVE(x0[0] - x1[0]);
-
- w0[2] = r0 + r2;
- w1[0] = r0 - r2;
- w0[3] = r1 + r3;
- w1[1] = r3 - r1;
-
- T += 4;
- bit += 4;
- w0 += 4;
-
- }while(w0<w1);
-}
-
-void mdct_backward(mdct_lookup *init, DATA_TYPE *in, DATA_TYPE *out){
- int n=init->n;
- int n2=n>>1;
- int n4=n>>2;
-
- /* rotate */
-
- DATA_TYPE *iX = in+n2-7;
- DATA_TYPE *oX = out+n2+n4;
- DATA_TYPE *T = init->trig+n4;
-
- do{
- oX -= 4;
- oX[0] = MULT_NORM(-iX[2] * T[3] - iX[0] * T[2]);
- oX[1] = MULT_NORM (iX[0] * T[3] - iX[2] * T[2]);
- oX[2] = MULT_NORM(-iX[6] * T[1] - iX[4] * T[0]);
- oX[3] = MULT_NORM (iX[4] * T[1] - iX[6] * T[0]);
- iX -= 8;
- T += 4;
- }while(iX>=in);
-
- iX = in+n2-8;
- oX = out+n2+n4;
- T = init->trig+n4;
-
- do{
- T -= 4;
- oX[0] = MULT_NORM (iX[4] * T[3] + iX[6] * T[2]);
- oX[1] = MULT_NORM (iX[4] * T[2] - iX[6] * T[3]);
- oX[2] = MULT_NORM (iX[0] * T[1] + iX[2] * T[0]);
- oX[3] = MULT_NORM (iX[0] * T[0] - iX[2] * T[1]);
- iX -= 8;
- oX += 4;
- }while(iX>=in);
-
- mdct_butterflies(init,out+n2,n2);
- mdct_bitreverse(init,out);
-
- /* roatate + window */
-
- {
- DATA_TYPE *oX1=out+n2+n4;
- DATA_TYPE *oX2=out+n2+n4;
- DATA_TYPE *iX =out;
- T =init->trig+n2;
-
- do{
- oX1-=4;
-
- oX1[3] = MULT_NORM (iX[0] * T[1] - iX[1] * T[0]);
- oX2[0] = -MULT_NORM (iX[0] * T[0] + iX[1] * T[1]);
-
- oX1[2] = MULT_NORM (iX[2] * T[3] - iX[3] * T[2]);
- oX2[1] = -MULT_NORM (iX[2] * T[2] + iX[3] * T[3]);
-
- oX1[1] = MULT_NORM (iX[4] * T[5] - iX[5] * T[4]);
- oX2[2] = -MULT_NORM (iX[4] * T[4] + iX[5] * T[5]);
-
- oX1[0] = MULT_NORM (iX[6] * T[7] - iX[7] * T[6]);
- oX2[3] = -MULT_NORM (iX[6] * T[6] + iX[7] * T[7]);
-
- oX2+=4;
- iX += 8;
- T += 8;
- }while(iX<oX1);
-
- iX=out+n2+n4;
- oX1=out+n4;
- oX2=oX1;
-
- do{
- oX1-=4;
- iX-=4;
-
- oX2[0] = -(oX1[3] = iX[3]);
- oX2[1] = -(oX1[2] = iX[2]);
- oX2[2] = -(oX1[1] = iX[1]);
- oX2[3] = -(oX1[0] = iX[0]);
-
- oX2+=4;
- }while(oX2<iX);
-
- iX=out+n2+n4;
- oX1=out+n2+n4;
- oX2=out+n2;
- do{
- oX1-=4;
- oX1[0]= iX[3];
- oX1[1]= iX[2];
- oX1[2]= iX[1];
- oX1[3]= iX[0];
- iX+=4;
- }while(oX1>oX2);
- }
-}
-
-void mdct_forward(mdct_lookup *init, DATA_TYPE *in, DATA_TYPE *out){
- int n=init->n;
- int n2=n>>1;
- int n4=n>>2;
- int n8=n>>3;
- DATA_TYPE *w=alloca(n*sizeof(DATA_TYPE)); /* forward needs working space */
- DATA_TYPE *w2=w+n2;
-
- /* rotate */
-
- /* window + rotate + step 1 */
-
- REG_TYPE r0;
- REG_TYPE r1;
- DATA_TYPE *x0=in+n2+n4;
- DATA_TYPE *x1=x0+1;
- DATA_TYPE *T=init->trig+n2;
-
- int i=0;
-
- for(i=0;i<n8;i+=2){
- x0 -=4;
- T-=2;
- r0= x0[2] + x1[0];
- r1= x0[0] + x1[2];
- w2[i]= MULT_NORM(r1*T[1] + r0*T[0]);
- w2[i+1]= MULT_NORM(r1*T[0] - r0*T[1]);
- x1 +=4;
- }
-
- x1=in+1;
-
- for(;i<n2-n8;i+=2){
- T-=2;
- x0 -=4;
- r0= x0[2] - x1[0];
- r1= x0[0] - x1[2];
- w2[i]= MULT_NORM(r1*T[1] + r0*T[0]);
- w2[i+1]= MULT_NORM(r1*T[0] - r0*T[1]);
- x1 +=4;
- }
-
- x0=in+n;
-
- for(;i<n2;i+=2){
- T-=2;
- x0 -=4;
- r0= -x0[2] - x1[0];
- r1= -x0[0] - x1[2];
- w2[i]= MULT_NORM(r1*T[1] + r0*T[0]);
- w2[i+1]= MULT_NORM(r1*T[0] - r0*T[1]);
- x1 +=4;
- }
-
-
- mdct_butterflies(init,w+n2,n2);
- mdct_bitreverse(init,w);
-
- /* roatate + window */
-
- T=init->trig+n2;
- x0=out+n2;
-
- for(i=0;i<n4;i++){
- x0--;
- out[i] =MULT_NORM((w[0]*T[0]+w[1]*T[1])*init->scale);
- x0[0] =MULT_NORM((w[0]*T[1]-w[1]*T[0])*init->scale);
- w+=2;
- T+=2;
- }
-}
-
diff --git a/lib/mdct.h b/lib/mdct.h
deleted file mode 100644
index d2810deb..00000000
--- a/lib/mdct.h
+++ /dev/null
@@ -1,79 +0,0 @@
-/********************************************************************
- * *
- * 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: modified discrete cosine transform prototypes
- last mod: $Id: mdct.h,v 1.18 2001/02/26 03:50:42 xiphmont Exp $
-
- ********************************************************************/
-
-#ifndef _OGG_mdct_H_
-#define _OGG_mdct_H_
-
-#include "vorbis/codec.h"
-
-/*#define MDCT_INTEGERIZED <- be warned there could be some hurt left here*/
-#ifdef MDCT_INTEGERIZED
-
-#define DATA_TYPE int
-#define REG_TYPE register int
-#define TRIGBITS 14
-#define cPI3_8 6270
-#define cPI2_8 11585
-#define cPI1_8 15137
-
-#define FLOAT_CONV(x) ((int)((x)*(1<<TRIGBITS)+.5))
-#define MULT_NORM(x) ((x)>>TRIGBITS)
-#define HALVE(x) ((x)>>1)
-
-#else
-
-#define DATA_TYPE float
-#define REG_TYPE float
-#define cPI3_8 .38268343236508977175F
-#define cPI2_8 .70710678118654752441F
-#define cPI1_8 .92387953251128675613F
-
-#define FLOAT_CONV(x) (x)
-#define MULT_NORM(x) (x)
-#define HALVE(x) ((x)*.5f)
-
-#endif
-
-
-typedef struct {
- int n;
- int log2n;
-
- DATA_TYPE *trig;
- int *bitrev;
-
- DATA_TYPE scale;
-} mdct_lookup;
-
-extern void mdct_init(mdct_lookup *lookup,int n);
-extern void mdct_clear(mdct_lookup *l);
-extern void mdct_forward(mdct_lookup *init, DATA_TYPE *in, DATA_TYPE *out);
-extern void mdct_backward(mdct_lookup *init, DATA_TYPE *in, DATA_TYPE *out);
-
-#endif
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/lib/misc.c b/lib/misc.c
deleted file mode 100644
index 9bdbe345..00000000
--- a/lib/misc.c
+++ /dev/null
@@ -1,106 +0,0 @@
-/********************************************************************
- * *
- * 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/ *
-
- ********************************************************************/
-
-#define HEAD_ALIGN 32
-#include <pthread.h>
-#include <stdlib.h>
-#include <stdio.h>
-#include "vorbis/codec.h"
-#define MISC_C
-#include "misc.h"
-
-static pthread_mutex_t memlock=PTHREAD_MUTEX_INITIALIZER;
-void **pointers=NULL;
-long *insertlist=NULL; /* We can't embed this in the pointer list;
- a pointer can have any value... */
-int ptop=0;
-int palloced=0;
-int pinsert=0;
-
-typedef struct {
- char *file;
- long line;
- long ptr;
-} head;
-
-static void *_insert(void *ptr,char *file,long line){
- ((head *)ptr)->file=file;
- ((head *)ptr)->line=line;
- ((head *)ptr)->ptr=pinsert;
-
- pthread_mutex_lock(&memlock);
- if(pinsert>=palloced){
- palloced+=64;
- if(pointers){
- pointers=(void **)realloc(pointers,sizeof(void **)*palloced);
- insertlist=(long *)realloc(insertlist,sizeof(long *)*palloced);
- }else{
- pointers=(void **)malloc(sizeof(void **)*palloced);
- insertlist=(long *)malloc(sizeof(long *)*palloced);
- }
- }
-
- pointers[pinsert]=ptr;
-
- if(pinsert==ptop)
- pinsert=++ptop;
- else
- pinsert=insertlist[pinsert];
-
- pthread_mutex_unlock(&memlock);
- return(ptr+HEAD_ALIGN);
-}
-
-static void _ripremove(void *ptr){
- int insert;
- pthread_mutex_lock(&memlock);
- insert=((head *)ptr)->ptr;
- insertlist[insert]=pinsert;
- pinsert=insert;
- pointers[insert]=NULL;
- pthread_mutex_unlock(&memlock);
-}
-
-void _VDBG_dump(void){
- int i;
- pthread_mutex_lock(&memlock);
- for(i=0;i<ptop;i++){
- head *ptr=pointers[i];
- if(ptr)
- fprintf(stderr,"unfreed bytes from %s:%ld\n",
- ptr->file,ptr->line);
- }
-
- pthread_mutex_unlock(&memlock);
-}
-
-extern void *_VDBG_malloc(void *ptr,long bytes,char *file,long line){
- bytes+=HEAD_ALIGN;
- if(ptr){
- ptr-=HEAD_ALIGN;
- _ripremove(ptr);
- ptr=realloc(ptr,bytes);
- }else{
- ptr=malloc(bytes);
- memset(ptr,0,bytes);
- }
- return _insert(ptr,file,line);
-}
-
-extern void _VDBG_free(void *ptr,char *file,long line){
- if(ptr){
- ptr-=HEAD_ALIGN;
- _ripremove(ptr);
- free(ptr);
- }
-}
-
diff --git a/lib/misc.h b/lib/misc.h
deleted file mode 100644
index 6cb105a0..00000000
--- a/lib/misc.h
+++ /dev/null
@@ -1,43 +0,0 @@
-/********************************************************************
- * *
- * 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: miscellaneous prototypes
- last mod: $Id: misc.h,v 1.9 2001/02/26 03:50:42 xiphmont Exp $
-
- ********************************************************************/
-
-#ifndef _V_RANDOM_H_
-#define _V_RANDOM_H_
-#include "vorbis/codec.h"
-
-extern void *_vorbis_block_alloc(vorbis_block *vb,long bytes);
-extern void _vorbis_block_ripcord(vorbis_block *vb);
-extern void _analysis_output(char *base,int i,float *v,int n,int bark,int dB);
-
-#ifdef DEBUG_LEAKS
-extern void *_VDBG_malloc(void *ptr,long bytes,char *file,long line);
-extern void _VDBG_free(void *ptr,char *file,long line);
-
-#ifndef MISC_C
-#undef _ogg_malloc
-#undef _ogg_calloc
-#undef _ogg_realloc
-#undef _ogg_free
-
-#define _ogg_malloc(x) _VDBG__ogg_malloc(NULL,(x),__FILE__,__LINE__)
-#define _ogg_calloc(x,y) _VDBG__ogg_malloc(NULL,(x)*(y),__FILE__,__LINE__)
-#define _ogg_realloc(x,y) _VDBG__ogg_malloc((x),(y),__FILE__,__LINE__)
-#define _ogg_free(x) _VDBG__ogg_free((x),__FILE__,__LINE__)
-#endif
-#endif
-
-#endif
diff --git a/lib/modes/.cvsignore b/lib/modes/.cvsignore
deleted file mode 100644
index 282522db..00000000
--- a/lib/modes/.cvsignore
+++ /dev/null
@@ -1,2 +0,0 @@
-Makefile
-Makefile.in
diff --git a/lib/modes/Makefile.am b/lib/modes/Makefile.am
deleted file mode 100644
index f6ca9d7e..00000000
--- a/lib/modes/Makefile.am
+++ /dev/null
@@ -1,5 +0,0 @@
-## Process this file with automake to produce Makefile.in
-
-AUTOMAKE_OPTIONS = foreign
-
-EXTRA_DIST = mode_AA.h mode_A.h mode_B.h mode_C.h mode_D.h mode_E.h modes.h
diff --git a/lib/modes/mode_A.h b/lib/modes/mode_A.h
index 71ea7031..da4ff583 100644
--- a/lib/modes/mode_A.h
+++ b/lib/modes/mode_A.h
@@ -11,7 +11,7 @@
********************************************************************
function: predefined encoding modes
- last mod: $Id: mode_A.h,v 1.16 2001/06/18 09:07:32 xiphmont Exp $
+ last mod: $Id: mode_A.h,v 1.14.4.5 2001/05/23 02:15:24 xiphmont Exp $
********************************************************************/
@@ -22,10 +22,33 @@
#include "vorbis/codec.h"
#include "backends.h"
-#include "books/lsp12_0.vqh"
-#include "books/lsp30_0.vqh"
-#include "books/lsp12_1.vqh"
-#include "books/lsp30_1.vqh"
+#include "books/line0_class0.vqh"
+#include "books/line0_class1.vqh"
+#include "books/line0_class2.vqh"
+#include "books/line1_class0.vqh"
+#include "books/line1_class1.vqh"
+#include "books/line1_class2.vqh"
+#include "books/line1_class3.vqh"
+
+#include "books/line0_0sub0.vqh"
+#include "books/line0_0sub1.vqh"
+#include "books/line0_1sub1.vqh"
+#include "books/line0_1sub2.vqh"
+#include "books/line0_1sub3.vqh"
+#include "books/line0_2sub1.vqh"
+#include "books/line0_2sub2.vqh"
+#include "books/line0_2sub3.vqh"
+
+#include "books/line1_0sub0.vqh"
+#include "books/line1_0sub1.vqh"
+#include "books/line1_1sub0.vqh"
+#include "books/line1_1sub1.vqh"
+#include "books/line1_2sub1.vqh"
+#include "books/line1_2sub2.vqh"
+#include "books/line1_2sub3.vqh"
+#include "books/line1_3sub1.vqh"
+#include "books/line1_3sub2.vqh"
+#include "books/line1_3sub3.vqh"
#include "books/res0_128_128aux.vqh"
#include "books/res0_128_1024aux.vqh"
@@ -48,7 +71,7 @@
static vorbis_info_psy _psy_set_A0={
- ATH_Bark_dB_lspconservative,
+ 1,/*athp*/
1,/*decayp*/
-100.,
@@ -136,7 +159,7 @@ static vorbis_info_psy _psy_set_A0={
};
static vorbis_info_psy _psy_set_A={
- ATH_Bark_dB_lspconservative,
+ 1,/*athp*/
1,/*decayp*/
-100.f,
@@ -199,7 +222,7 @@ static vorbis_info_psy _psy_set_A={
.5f, /* high window */
25,
25,
- 50,
+ 40,
{.000f, 0.f, /*63*/
.000f, 0.f, /*88*/
.000f, 0.f, /*125*/
@@ -227,22 +250,71 @@ static vorbis_info_psy _psy_set_A={
/* with GNUisms, this could be short and readable. Oh well */
static vorbis_info_time0 _time_set0A={0};
-static vorbis_info_floor0 _floor_set0A={12, 44100, 64, 10,130, 2, {0,1},
- 0.199f, .285f};
-static vorbis_info_floor0 _floor_set1A={30, 44100, 256, 12,150, 2, {2,3},
- .082f, .126f};
-static vorbis_info_residue0 _residue_set0A={0,96,16,6,4,
+/*static vorbis_info_floor0 _floor_set0A={12, 44100, 64, 10,130, 2, {0,1},
+ 0.199f, .285f};*/
+/*static vorbis_info_floor0 _floor_set1A={30, 44100, 256, 12,150, 2, {2,3},
+ .082f, .126f};*/
+
+static vorbis_info_floor1 _floor_set0A={4,
+ {0,1,2,2},
+
+ {3,3,3},
+ {1,2,2},
+ {0,1,2},
+ {{3,4},{-1,5,6,7},{-1,8,9,10}},
+
+ 4,
+ {0,128,
+ 5,21,
+
+ 2,1,3,
+ 11,7,15,
+ 45,30,73},
+
+ 60,30,600,
+ 999,999,0,18.,
+ 8,96};
+
+static vorbis_info_floor1 _floor_set1A={10,
+ {0,1,2,2,2,2,2, 3,3,3},
+
+ {3,4,3,3},
+ {1,1,2,2},
+ {11,12,13,14},
+ {{15,16},
+ {17,18},
+ {-1,19,20,21},
+ {-1,22,23,24},
+ },
+
+ 4,
+ {0,1024,
+
+ 88,31,243,
+
+ 14,54,143,460,
+
+ 6,3,10, 22,18,26, 41,36,47,
+ 69,61,78, 112,99,126, 185,162,211,
+ 329,282,387, 672,553,825
+ },
+
+ 60,30,600,
+ 20,8,1,18.,
+ 20,600};
+
+static vorbis_info_residue0 _residue_set0A={0,96,16,6,25,
{0,1,1,1,1,1},
- {6,7,8,9,10},
+ {27,28,29,30,31},
{0,99999,9999,9999,9999},
{999.f,1.5f,3.5f,15.5f,26.5f},
{4,4,4,4,4},
{99,99,99,99,99}};
-static vorbis_info_residue0 _residue_set1A={0, 960, 32,10,5,
+static vorbis_info_residue0 _residue_set1A={0, 960, 32,10,26,
{0,1,1,1,1,1,1,1,1,1},
- {11,12,13,14,15,16,17,18,19},
+ {32,33,34,35,36,37,38,39,40},
{0,8,9999,16,9999,
24,9999,9999,9999},
@@ -251,10 +323,8 @@ static vorbis_info_residue0 _residue_set1A={0, 960, 32,10,5,
{5,5,5,5,5,5,5,5,5},
{99,99,99,99,99,99,99,99,99}};
-static vorbis_info_mapping0 _mapping_set0A={1, {0,0}, {0}, {0}, {0}, {0},
- 0,{0},{0}};
-static vorbis_info_mapping0 _mapping_set1A={1, {0,0}, {0}, {1}, {1}, {1},
- 0,{0},{0}};
+static vorbis_info_mapping0 _mapping_set0A={1, {0,0}, {0}, {0}, {0}, {0}};
+static vorbis_info_mapping0 _mapping_set1A={1, {0,0}, {0}, {1}, {1}, {1}};
static vorbis_info_mode _mode_set0A={0,0,0,0};
static vorbis_info_mode _mode_set1A={1,0,0,1};
@@ -264,7 +334,7 @@ codec_setup_info info_A={
/* smallblock, largeblock */
{256, 2048},
/* modes,maps,times,floors,residues,books,psys */
- 2, 2, 1, 2, 2, 20, 2,
+ 2, 2, 1, 2, 2, 41, 2,
/* modes */
{&_mode_set0A,&_mode_set1A},
/* maps */
@@ -272,32 +342,56 @@ codec_setup_info info_A={
/* times */
{0,0},{&_time_set0A},
/* floors */
- {0,0},{&_floor_set0A,&_floor_set1A},
+ {1,1},{&_floor_set0A,&_floor_set1A},
/* residue */
- {0,0},{&_residue_set0A,&_residue_set1A},
+ {1,1},{&_residue_set0A,&_residue_set1A},
/* books */
- {&_vq_book_lsp12_0, /* 0 */
- &_vq_book_lsp12_1, /* 1 */
- &_vq_book_lsp30_0, /* 2 */
- &_vq_book_lsp30_1, /* 3 */
-
- &_huff_book_res0_128_128aux,
+ {&_huff_book_line0_class0, /* 0 */
+ &_huff_book_line0_class1,
+ &_huff_book_line0_class2, /* 2 */
+
+ &_huff_book_line0_0sub0, /* 3 */
+ &_huff_book_line0_0sub1,
+ &_huff_book_line0_1sub1, /* 5 */
+ &_huff_book_line0_1sub2,
+ &_huff_book_line0_1sub3, /* 7 */
+ &_huff_book_line0_2sub1,
+ &_huff_book_line0_2sub2, /* 9 */
+ &_huff_book_line0_2sub3,
+
+ &_huff_book_line1_class0,
+ &_huff_book_line1_class1, /* 12 */
+ &_huff_book_line1_class2,
+ &_huff_book_line1_class3, /* 14 */
+
+ &_huff_book_line1_0sub0,
+ &_huff_book_line1_0sub1, /* 16 */
+ &_huff_book_line1_1sub0,
+ &_huff_book_line1_1sub1,
+ &_huff_book_line1_2sub1,
+ &_huff_book_line1_2sub2, /* 20 */
+ &_huff_book_line1_2sub3,
+ &_huff_book_line1_3sub1,
+ &_huff_book_line1_3sub2,
+ &_huff_book_line1_3sub3, /* 24 */
+
+ &_huff_book_res0_128_128aux,
&_huff_book_res0_128_1024aux,
- &_vq_book_res0_128_128_1,
+ &_vq_book_res0_128_128_1,
&_vq_book_res0_128_128_2,
&_vq_book_res0_128_128_3,
&_vq_book_res0_128_128_4,
- &_vq_book_res0_128_128_5,
+ &_vq_book_res0_128_128_5,
&_vq_book_res0_128_1024_1,
- &_vq_book_res0_128_1024_2,
+ &_vq_book_res0_128_1024_2,
&_vq_book_res0_128_1024_3,
- &_vq_book_res0_128_1024_4,
+ &_vq_book_res0_128_1024_4,
&_vq_book_res0_128_1024_5,
- &_vq_book_res0_128_1024_6,
+ &_vq_book_res0_128_1024_6,
&_vq_book_res0_128_1024_7,
- &_vq_book_res0_128_1024_8,
+ &_vq_book_res0_128_1024_8,
&_vq_book_res0_128_1024_9,
},
diff --git a/lib/modes/mode_B.h b/lib/modes/mode_B.h
deleted file mode 100644
index 35fdb770..00000000
--- a/lib/modes/mode_B.h
+++ /dev/null
@@ -1,314 +0,0 @@
-/********************************************************************
- * *
- * 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: predefined encoding modes
- last mod: $Id: mode_B.h,v 1.15 2001/06/18 09:07:32 xiphmont Exp $
-
- ********************************************************************/
-
-#ifndef _V_MODES_B_H_
-#define _V_MODES_B_H_
-
-#include <stdio.h>
-#include "vorbis/codec.h"
-#include "backends.h"
-
-#include "books/lsp12_0.vqh"
-#include "books/lsp30_0.vqh"
-#include "books/lsp12_1.vqh"
-#include "books/lsp30_1.vqh"
-
-#include "books/res0_160_128aux.vqh"
-#include "books/res0_160_1024aux.vqh"
-
-#include "books/res0_160_128_1.vqh"
-#include "books/res0_160_128_2.vqh"
-#include "books/res0_160_128_3.vqh"
-#include "books/res0_160_128_4.vqh"
-#include "books/res0_160_128_5.vqh"
-
-#include "books/res0_160_1024_1.vqh"
-#include "books/res0_160_1024_2.vqh"
-#include "books/res0_160_1024_3.vqh"
-#include "books/res0_160_1024_4.vqh"
-#include "books/res0_160_1024_5.vqh"
-#include "books/res0_160_1024_6.vqh"
-#include "books/res0_160_1024_7.vqh"
-#include "books/res0_160_1024_8.vqh"
-#include "books/res0_160_1024_9.vqh"
-
-
-static vorbis_info_psy _psy_set_B0={
- ATH_Bark_dB_lspconservative,
- 1,/*decayp*/
-
- -100.,
- -140.,
-
- 8,
-
- /* 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 */
- /* x: 63 88 125 175 250 350 500 700 1k 1.4k 2k 2.8k 4k 5.6k 8k 11.5k 16k Hz */
- /* y: 0 10 20 30 40 50 60 70 80 90 100 dB */
-
- 1,/* tonemaskp */
- /* 0 10 20 30 40 50 60 70 80 90 100 */
- {
- {-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.}, /*63*/
- {-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.}, /*88*/
- {-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.}, /*125*/
- {-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.}, /*175*/
- {-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.}, /*250*/
- {-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.}, /*350*/
- {-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.}, /*500*/
- {-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.}, /*700*/
-
- {-30.,-35.,-40.,-40.,-40.,-50.,-60.,-70.,-80.,-90.,-100.}, /*1000*/
- {-30.,-35.,-40.,-40.,-40.,-50.,-60.,-70.,-80.,-90.,-100.}, /*1400*/
- {-40.,-40.,-40.,-40.,-40.,-50.,-60.,-70.,-80.,-90.,-100.}, /*2000*/
- {-40.,-40.,-40.,-40.,-40.,-50.,-60.,-70.,-80.,-90.,-100.}, /*2800*/
- {-30.,-35.,-40.,-40.,-40.,-50.,-60.,-70.,-80.,-90.,-100.}, /*4000*/
- {-30.,-35.,-40.,-40.,-40.,-50.,-60.,-70.,-80.,-90.,-100.}, /*5600*/
- {-30.,-35.,-40.,-40.,-40.,-50.,-60.,-70.,-80.,-90.,-100.}, /*8000*/
- {-30.,-35.,-40.,-40.,-40.,-50.,-60.,-70.,-80.,-90.,-100.}, /*11500*/
- {-30.,-35.,-35.,-40.,-40.,-50.,-60.,-70.,-80.,-90.,-100.}, /*16000*/
- },
-
- 1,/* peakattp */
- {{-14.f,-16.f,-18.f,-19.f,-20.f,-21.f,-24.f,-24.f,-24.f,-24.f,-24.f},/*63*/
- {-14.f,-16.f,-18.f,-19.f,-20.f,-21.f,-24.f,-24.f,-24.f,-24.f,-24.f},/*88*/
- {-14.f,-16.f,-18.f,-19.f,-20.f,-21.f,-24.f,-24.f,-24.f,-24.f,-24.f},/*125*/
- {-14.f,-14.f,-14.f,-14.f,-16.f,-16.f,-20.f,-24.f,-24.f,-24.f,-24.f},/*175*/
- {-14.f,-14.f,-14.f,-14.f,-16.f,-16.f,-20.f,-24.f,-24.f,-24.f,-24.f},/*250*/
- {-14.f,-14.f,-14.f,-14.f,-16.f,-16.f,-20.f,-24.f,-24.f,-24.f,-24.f},/*350*/
- {-14.f,-14.f,-14.f,-14.f,-16.f,-16.f,-20.f,-24.f,-24.f,-24.f,-24.f},/*500*/
- {-14.f,-14.f,-14.f,-14.f,-14.f,-14.f,-18.f,-24.f,-24.f,-24.f,-24.f},/*700*/
- {-14.f,-14.f,-14.f,-14.f,-14.f,-14.f,-14.f,-24.f,-24.f,-24.f,-24.f},/*1000*/
- {-14.f,-14.f,-14.f,-14.f,-14.f,-16.f,-18.f,-24.f,-24.f,-24.f,-24.f},/*1400*/
- {-14.f,-14.f,-14.f,-14.f,-14.f,-16.f,-18.f,-24.f,-24.f,-24.f,-24.f},/*2000*/
- {-14.f,-14.f,-14.f,-14.f,-14.f,-16.f,-18.f,-24.f,-24.f,-24.f,-24.f},/*2400*/
- {-14.f,-14.f,-14.f,-14.f,-14.f,-16.f,-18.f,-24.f,-24.f,-24.f,-24.f},/*4000*/
- {-14.f,-14.f,-14.f,-14.f,-14.f,-14.f,-12.f,-20.f,-24.f,-24.f,-24.f},/*5600*/
- {-14.f,-14.f,-14.f,-14.f,-14.f,-14.f,-14.f,-20.f,-24.f,-24.f,-24.f},/*8000*/
- {-14.f,-14.f,-14.f,-14.f,-14.f,-14.f,-14.f,-20.f,-24.f,-24.f,-24.f},/*11500*/
- {-14.f,-14.f,-14.f,-14.f,-14.f,-14.f,-14.f,-14.f,-20.f,-24.f,-24.f},/*16000*/
- },
-
- 1,/*noisemaskp */
- -10.f, /* suppress any noise curve over maxspec+n */
- .5f, /* low window */
- .5f, /* high window */
- 5,
- 5,
- 10,
- {.000f, 0.f,/*63*/
- .000f, 0.f,/*88*/
- .000f, 0.f,/*125*/
- .000f, 0.f,/*175*/
- .000f, 0.f,/*250*/
- .000f, 0.f,/*350*/
- .000f, 0.f,/*500*/
- .300f, 0.f,/*700*/
- .500f, 0.f,/*1000*/
- .500f, 0.f,/*1400*/
- .500f, 0.f,/*2000*/
- .500f, 0.f,/*2800*/
- .600f, 0.f,/*4000*/
- .700f, 0.f,/*5600*/
- .800f, 0.f,/*8000*/
- .800f, 0.f,/*11500*/
- .800f, 0.f,/*16000*/
- },
-
- 95.f, /* even decade + 5 is important; saves an rint() later in a
- tight loop) */
- -26.,
-};
-
-static vorbis_info_psy _psy_set_B={
- ATH_Bark_dB_lspconservative,
- 1,/*decayp*/
-
- -100.f,
- -140.f,
-
- 8,
-
- /* 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 */
- /* x: 63 88 125 175 250 350 500 700 1k 1.4k 2k 2.8k 4k 5.6k 8k 11.5k 16k Hz */
- /* y: 0 10 20 30 40 50 60 70 80 90 100 dB */
- 1,/* tonemaskp */
- /* 0 10 20 30 40 50 60 70 80 90 100 */
- {
- {-999.f,-999.f,-999.f,-999.f,-999.f,-999.f,-999.f,-999.f,-999.f,-999.f,-999.f}, /*63*/
- {-999.f,-999.f,-999.f,-999.f,-999.f,-999.f,-999.f,-999.f,-999.f,-999.f,-999.f}, /*88*/
- {-999.f,-999.f,-999.f,-999.f,-999.f,-999.f,-999.f,-999.f,-999.f,-999.f,-999.f}, /*125*/
-
- {-40.f,-40.f,-40.f,-40.f,-40.f,-50.f,-60.f,-70.f,-80.f,-90.f,-100.f}, /*175*/
- {-40.f,-40.f,-40.f,-40.f,-40.f,-50.f,-60.f,-70.f,-80.f,-90.f,-100.f}, /*250*/
- {-40.f,-40.f,-40.f,-40.f,-40.f,-50.f,-60.f,-70.f,-80.f,-90.f,-100.f}, /*350*/
- {-40.f,-40.f,-40.f,-40.f,-40.f,-50.f,-60.f,-70.f,-80.f,-90.f,-100.f}, /*500*/
- {-40.f,-40.f,-40.f,-40.f,-40.f,-50.f,-60.f,-70.f,-80.f,-90.f,-100.f}, /*700*/
-
- {-40.f,-40.f,-40.f,-40.f,-40.f,-50.f,-60.f,-70.f,-80.f,-90.f,-100.f}, /*1000*/
- {-40.f,-40.f,-40.f,-40.f,-40.f,-50.f,-60.f,-70.f,-80.f,-90.f,-100.f}, /*1400*/
- {-40.f,-40.f,-40.f,-40.f,-40.f,-50.f,-60.f,-70.f,-80.f,-90.f,-100.f}, /*2000*/
- {-40.f,-40.f,-40.f,-40.f,-40.f,-50.f,-60.f,-70.f,-80.f,-90.f,-100.f}, /*2800*/
- {-40.f,-40.f,-40.f,-40.f,-40.f,-50.f,-60.f,-70.f,-80.f,-90.f,-100.f}, /*4000*/
- {-40.f,-40.f,-40.f,-40.f,-40.f,-50.f,-60.f,-70.f,-80.f,-90.f,-100.f}, /*5600*/
-
- {-35.f,-40.f,-40.f,-40.f,-40.f,-50.f,-60.f,-70.f,-80.f,-90.f,-100.f}, /*8000*/
- {-35.f,-40.f,-40.f,-40.f,-40.f,-50.f,-60.f,-70.f,-80.f,-90.f,-100.f}, /*11500*/
- {-30.f,-35.f,-35.f,-40.f,-40.f,-50.f,-60.f,-70.f,-80.f,-90.f,-100.f}, /*16000*/
-
- },
-
- 1,/* peakattp */
- {{-14.f,-16.f,-18.f,-19.f,-20.f,-21.f,-26.f,-26.f,-26.f,-26.f,-26.f},/*63*/
- {-14.f,-16.f,-18.f,-19.f,-20.f,-21.f,-26.f,-26.f,-26.f,-26.f,-26.f},/*88*/
- {-14.f,-16.f,-18.f,-19.f,-20.f,-21.f,-26.f,-26.f,-26.f,-26.f,-26.f},/*125*/
- {-14.f,-14.f,-14.f,-14.f,-16.f,-16.f,-20.f,-24.f,-26.f,-26.f,-26.f},/*175*/
- {-14.f,-14.f,-14.f,-14.f,-16.f,-16.f,-20.f,-24.f,-26.f,-26.f,-26.f},/*250*/
- {-14.f,-14.f,-14.f,-14.f,-16.f,-16.f,-20.f,-24.f,-26.f,-26.f,-26.f},/*350*/
- {-14.f,-14.f,-14.f,-14.f,-16.f,-16.f,-20.f,-24.f,-26.f,-26.f,-26.f},/*500*/
- {-14.f,-14.f,-14.f,-14.f,-14.f,-14.f,-18.f,-24.f,-26.f,-26.f,-26.f},/*700*/
- {-14.f,-14.f,-14.f,-14.f,-14.f,-14.f,-14.f,-24.f,-26.f,-26.f,-26.f},/*1000*/
- {-14.f,-14.f,-14.f,-14.f,-14.f,-16.f,-18.f,-24.f,-26.f,-26.f,-26.f},/*1400*/
- {-14.f,-14.f,-14.f,-14.f,-14.f,-16.f,-18.f,-24.f,-26.f,-26.f,-26.f},/*2000*/
- {-14.f,-14.f,-14.f,-14.f,-14.f,-16.f,-18.f,-24.f,-26.f,-26.f,-26.f},/*2400*/
- {-14.f,-14.f,-14.f,-14.f,-14.f,-16.f,-18.f,-24.f,-26.f,-26.f,-26.f},/*4000*/
- {-14.f,-14.f,-14.f,-14.f,-14.f,-14.f,-12.f,-20.f,-26.f,-26.f,-26.f},/*5600*/
- {-10.f,-10.f,-14.f,-14.f,-14.f,-14.f,-14.f,-20.f,-22.f,-24.f,-26.f},/*8000*/
- {-10.f,-10.f,-10.f,-14.f,-14.f,-14.f,-14.f,-20.f,-22.f,-24.f,-26.f},/*11500*/
- {-10.f,-10.f,-10.f,-14.f,-14.f,-14.f,-14.f,-14.f,-20.f,-24.f,-26.f},/*16000*/
- },
-
- 1,/*noisemaskp */
- -28.f, /* suppress any noise curve over maxspec+n */
- .5f, /* low window */
- .5f, /* high window */
- 25,
- 25,
- 40,
- {.000f, 0.f, /*63*/
- .000f, 0.f, /*88*/
- .000f, 0.f, /*125*/
- .000f, 0.f, /*175*/
- .000f, 0.f, /*250*/
- .000f, 0.f, /*350*/
- .000f, 0.f, /*500*/
- .000f, 0.f, /*700*/
- .200f, 0.f, /*1000*/
- .300f, 0.f, /*1400*/
- .300f, 0.f, /*2000*/
- .300f, 0.f, /*2800*/
- .700f, 0.f, /*4000*/
- .700f, 0.f, /*5600*/
- .750f, 0.f, /*8000*/
- .750f, 0.f, /*11500*/
- .800f, 0.f, /*16000*/
- },
-
- 105.f, /* even decade + 5 is important; saves an rint() later in a
- tight loop) */
- -30.,
-
-};
-
-/* with GNUisms, this could be short and readable. Oh well */
-static vorbis_info_time0 _time_set0B={0};
-static vorbis_info_floor0 _floor_set0B={12, 44100, 64, 10,130, 2, {0,1},
- 0.199f, .285f};
-static vorbis_info_floor0 _floor_set1B={30, 44100, 256, 12,150, 2, {2,3},
- .082f, .126f};
-static vorbis_info_residue0 _residue_set0B={0,96,16,6,4,
- {0,1,1,1,1,1},
- {6,7,8,9,10},
-
- {0,99999,9999,9999,9999},
- {999.f,1.5f,3.5f,15.5f,26.5f},
- {4,4,4,4,4},
- {99,99,99,99,99}};
-
-static vorbis_info_residue0 _residue_set1B={0, 960, 32,10,5,
- {0,1,1,1,1,1,1,1,1,1},
- {11,12,13,14,15,16,17,18,19},
-
- {0,8,9999,16,9999,
- 24,9999,9999,9999},
- {999.f,1.5f,1.5f,2.5f,2.5f,
- 6.5f,6.5f,12.5f,22.5f},
- {5,5,5,5,5,5,5,5,5},
- {99,99,99,99,99,99,99,99,99}};
-
-static vorbis_info_mapping0 _mapping_set0B={1, {0,0}, {0}, {0}, {0}, {0}};
-static vorbis_info_mapping0 _mapping_set1B={1, {0,0}, {0}, {1}, {1}, {1}};
-static vorbis_info_mode _mode_set0B={0,0,0,0};
-static vorbis_info_mode _mode_set1B={1,0,0,1};
-
-/* CD quality stereo, no channel coupling */
-codec_setup_info info_B={
-
- /* smallblock, largeblock */
- {256, 2048},
- /* modes,maps,times,floors,residues,books,psys */
- 2, 2, 1, 2, 2, 20, 2,
- /* modes */
- {&_mode_set0B,&_mode_set1B},
- /* maps */
- {0,0},{&_mapping_set0B,&_mapping_set1B},
- /* times */
- {0,0},{&_time_set0B},
- /* floors */
- {0,0},{&_floor_set0B,&_floor_set1B},
- /* residue */
- {0,0},{&_residue_set0B,&_residue_set1B},
- /* books */
- {&_vq_book_lsp12_0, /* 0 */
- &_vq_book_lsp12_1, /* 1 */
- &_vq_book_lsp30_0, /* 2 */
- &_vq_book_lsp30_1, /* 3 */
-
- &_huff_book_res0_160_128aux,
- &_huff_book_res0_160_1024aux,
-
- &_vq_book_res0_160_128_1,
- &_vq_book_res0_160_128_2,
- &_vq_book_res0_160_128_3,
- &_vq_book_res0_160_128_4,
- &_vq_book_res0_160_128_5,
-
- &_vq_book_res0_160_1024_1,
- &_vq_book_res0_160_1024_2,
- &_vq_book_res0_160_1024_3,
- &_vq_book_res0_160_1024_4,
- &_vq_book_res0_160_1024_5,
- &_vq_book_res0_160_1024_6,
- &_vq_book_res0_160_1024_7,
- &_vq_book_res0_160_1024_8,
- &_vq_book_res0_160_1024_9,
-
- },
- /* psy */
- {&_psy_set_B0,&_psy_set_B},
-
- /* thresh sample period, preecho clamp trigger threshhold, range, minenergy */
- 256, {26.f,26.f,26.f,30.f}, {-90.f,-90.f,-90.f,-90.f}, -90.f,
-
- -10.,
-
- 0,
-};
-
-#define PREDEF_INFO_MAX 0
-
-#endif
diff --git a/lib/modes/mode_C.h b/lib/modes/mode_C.h
deleted file mode 100644
index 75ea9673..00000000
--- a/lib/modes/mode_C.h
+++ /dev/null
@@ -1,314 +0,0 @@
-/********************************************************************
- * *
- * 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: predefined encoding modes
- last mod: $Id: mode_C.h,v 1.14 2001/06/18 09:07:32 xiphmont Exp $
-
- ********************************************************************/
-
-#ifndef _V_MODES_C_H_
-#define _V_MODES_C_H_
-
-#include <stdio.h>
-#include "vorbis/codec.h"
-#include "backends.h"
-
-#include "books/lsp12_0.vqh"
-#include "books/lsp30_0.vqh"
-#include "books/lsp12_1.vqh"
-#include "books/lsp30_1.vqh"
-
-#include "books/res0_192_128aux.vqh"
-#include "books/res0_192_1024aux.vqh"
-
-#include "books/res0_192_128_1.vqh"
-#include "books/res0_192_128_2.vqh"
-#include "books/res0_192_128_3.vqh"
-#include "books/res0_192_128_4.vqh"
-#include "books/res0_192_128_5.vqh"
-
-#include "books/res0_192_1024_1.vqh"
-#include "books/res0_192_1024_2.vqh"
-#include "books/res0_192_1024_3.vqh"
-#include "books/res0_192_1024_4.vqh"
-#include "books/res0_192_1024_5.vqh"
-#include "books/res0_192_1024_6.vqh"
-#include "books/res0_192_1024_7.vqh"
-#include "books/res0_192_1024_8.vqh"
-#include "books/res0_192_1024_9.vqh"
-
-
-static vorbis_info_psy _psy_set_C0={
- ATH_Bark_dB_lspconservative,
- 1,/*decayp*/
-
- -100.,
- -140.,
-
- 8,
-
- /* 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 */
- /* x: 63 88 125 175 250 350 500 700 1k 1.4k 2k 2.8k 4k 5.6k 8k 11.5k 16k Hz */
- /* y: 0 10 20 30 40 50 60 70 80 90 100 dB */
-
- 1,/* tonemaskp */
- /* 0 10 20 30 40 50 60 70 80 90 100 */
- {
- {-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.}, /*63*/
- {-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.}, /*88*/
- {-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.}, /*125*/
- {-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.}, /*175*/
- {-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.}, /*250*/
- {-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.}, /*350*/
- {-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.}, /*500*/
- {-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.}, /*700*/
-
- {-35.,-40.,-40.,-40.,-40.,-50.,-60.,-70.,-80.,-90.,-100.}, /*1000*/
- {-35.,-40.,-40.,-40.,-40.,-50.,-60.,-70.,-80.,-90.,-100.}, /*1400*/
- {-40.,-40.,-40.,-40.,-40.,-50.,-60.,-70.,-80.,-90.,-100.}, /*2000*/
- {-40.,-40.,-40.,-40.,-40.,-50.,-60.,-70.,-80.,-90.,-100.}, /*2800*/
- {-35.,-40.,-40.,-40.,-40.,-50.,-60.,-70.,-80.,-90.,-100.}, /*4000*/
- {-35.,-40.,-40.,-40.,-40.,-50.,-60.,-70.,-80.,-90.,-100.}, /*5600*/
- {-35.,-40.,-40.,-40.,-40.,-50.,-60.,-70.,-80.,-90.,-100.}, /*8000*/
- {-35.,-40.,-40.,-40.,-40.,-50.,-60.,-70.,-80.,-90.,-100.}, /*11500*/
- {-35.,-40.,-40.,-40.,-40.,-50.,-60.,-70.,-80.,-90.,-100.}, /*16000*/
- },
-
- 1,/* peakattp */
- {{-14.f,-16.f,-18.f,-19.f,-20.f,-21.f,-24.f,-24.f,-24.f,-24.f,-24.f},/*63*/
- {-14.f,-16.f,-18.f,-19.f,-20.f,-21.f,-24.f,-24.f,-24.f,-24.f,-24.f},/*88*/
- {-14.f,-16.f,-18.f,-19.f,-20.f,-21.f,-24.f,-24.f,-24.f,-24.f,-24.f},/*125*/
- {-14.f,-14.f,-14.f,-14.f,-16.f,-16.f,-20.f,-24.f,-24.f,-24.f,-24.f},/*175*/
- {-14.f,-14.f,-14.f,-14.f,-16.f,-16.f,-20.f,-24.f,-24.f,-24.f,-24.f},/*250*/
- {-14.f,-14.f,-14.f,-14.f,-16.f,-16.f,-20.f,-24.f,-24.f,-24.f,-24.f},/*350*/
- {-14.f,-14.f,-14.f,-14.f,-16.f,-16.f,-20.f,-24.f,-24.f,-24.f,-24.f},/*500*/
- {-14.f,-14.f,-14.f,-14.f,-14.f,-14.f,-18.f,-24.f,-24.f,-24.f,-24.f},/*700*/
- {-14.f,-14.f,-14.f,-14.f,-14.f,-14.f,-14.f,-24.f,-24.f,-24.f,-24.f},/*1000*/
- {-14.f,-14.f,-14.f,-14.f,-14.f,-16.f,-18.f,-24.f,-24.f,-24.f,-24.f},/*1400*/
- {-14.f,-14.f,-14.f,-14.f,-14.f,-16.f,-18.f,-24.f,-24.f,-24.f,-24.f},/*2000*/
- {-14.f,-14.f,-14.f,-14.f,-14.f,-16.f,-18.f,-24.f,-24.f,-24.f,-24.f},/*2400*/
- {-14.f,-14.f,-14.f,-14.f,-14.f,-16.f,-18.f,-24.f,-24.f,-24.f,-24.f},/*4000*/
- {-14.f,-14.f,-14.f,-14.f,-14.f,-14.f,-12.f,-20.f,-24.f,-24.f,-24.f},/*5600*/
- {-14.f,-14.f,-14.f,-14.f,-14.f,-14.f,-14.f,-20.f,-24.f,-24.f,-24.f},/*8000*/
- {-14.f,-14.f,-14.f,-14.f,-14.f,-14.f,-14.f,-20.f,-24.f,-24.f,-24.f},/*11500*/
- {-14.f,-14.f,-14.f,-14.f,-14.f,-14.f,-14.f,-14.f,-20.f,-24.f,-24.f},/*16000*/
- },
-
- 1,/*noisemaskp */
- -20.f, /* suppress any noise curve over maxspec+n */
- .5f, /* low window */
- .5f, /* high window */
- 5,
- 5,
- 10,
- {.000f, 0.f,/*63*/
- .000f, 0.f,/*88*/
- .000f, 0.f,/*125*/
- .000f, 0.f,/*175*/
- .000f, 0.f,/*250*/
- .000f, 0.f,/*350*/
- .000f, 0.f,/*500*/
- .200f, 0.f,/*700*/
- .300f, 0.f,/*1000*/
- .300f, 0.f,/*1400*/
- .300f, 0.f,/*2000*/
- .300f, 0.f,/*2800*/
- .500f, 0.f,/*4000*/
- .600f, 0.f,/*5600*/
- .700f, 0.f,/*8000*/
- .700f, 0.f,/*11500*/
- .700f, 1.f,/*16000*/
- },
-
- 105.f, /* even decade + 5 is important; saves an rint() later in a
- tight loop) */
- -26.,
-};
-
-static vorbis_info_psy _psy_set_C={
- ATH_Bark_dB_lspconservative,
- 1,/*decayp*/
-
- -100.f,
- -140.f,
-
- 8,
-
- /* 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 */
- /* x: 63 88 125 175 250 350 500 700 1k 1.4k 2k 2.8k 4k 5.6k 8k 11.5k 16k Hz */
- /* y: 0 10 20 30 40 50 60 70 80 90 100 dB */
- 1,/* tonemaskp */
- /* 0 10 20 30 40 50 60 70 80 90 100 */
- {
- {-999.f,-999.f,-999.f,-999.f,-999.f,-999.f,-999.f,-999.f,-999.f,-999.f,-999.f}, /*63*/
- {-999.f,-999.f,-999.f,-999.f,-999.f,-999.f,-999.f,-999.f,-999.f,-999.f,-999.f}, /*88*/
- {-999.f,-999.f,-999.f,-999.f,-999.f,-999.f,-999.f,-999.f,-999.f,-999.f,-999.f}, /*125*/
-
- {-40.f,-40.f,-40.f,-40.f,-40.f,-50.f,-60.f,-70.f,-80.f,-90.f,-100.f}, /*175*/
- {-40.f,-40.f,-40.f,-40.f,-40.f,-50.f,-60.f,-70.f,-80.f,-90.f,-100.f}, /*250*/
- {-40.f,-40.f,-40.f,-40.f,-40.f,-50.f,-60.f,-70.f,-80.f,-90.f,-100.f}, /*350*/
- {-40.f,-40.f,-40.f,-40.f,-40.f,-50.f,-60.f,-70.f,-80.f,-90.f,-100.f}, /*500*/
- {-40.f,-40.f,-40.f,-40.f,-40.f,-50.f,-60.f,-70.f,-80.f,-90.f,-100.f}, /*700*/
-
- {-40.f,-40.f,-40.f,-40.f,-40.f,-50.f,-60.f,-70.f,-80.f,-90.f,-100.f}, /*1000*/
- {-40.f,-40.f,-40.f,-40.f,-40.f,-50.f,-60.f,-70.f,-80.f,-90.f,-100.f}, /*1400*/
- {-40.f,-40.f,-40.f,-40.f,-40.f,-50.f,-60.f,-70.f,-80.f,-90.f,-100.f}, /*2000*/
- {-40.f,-40.f,-40.f,-40.f,-40.f,-50.f,-60.f,-70.f,-80.f,-90.f,-100.f}, /*2800*/
- {-40.f,-40.f,-40.f,-40.f,-40.f,-50.f,-60.f,-70.f,-80.f,-90.f,-100.f}, /*4000*/
- {-40.f,-40.f,-40.f,-40.f,-40.f,-50.f,-60.f,-70.f,-80.f,-90.f,-100.f}, /*5600*/
-
- {-40.f,-40.f,-40.f,-40.f,-40.f,-50.f,-60.f,-70.f,-80.f,-90.f,-100.f}, /*8000*/
- {-40.f,-40.f,-40.f,-40.f,-40.f,-50.f,-60.f,-70.f,-80.f,-90.f,-100.f}, /*11500*/
- {-40.f,-40.f,-40.f,-40.f,-40.f,-50.f,-60.f,-70.f,-80.f,-90.f,-100.f}, /*16000*/
-
- },
-
- 1,
- {{-20.f,-20.f,-20.f,-24.f,-24.f,-24.f,-28.f,-28.f,-28.f,-28.f,-28.f},/*63*/
- {-20.f,-20.f,-20.f,-24.f,-24.f,-24.f,-28.f,-28.f,-28.f,-28.f,-28.f},/*88*/
- {-20.f,-20.f,-20.f,-20.f,-24.f,-24.f,-28.f,-28.f,-28.f,-28.f,-28.f},/*125*/
- {-20.f,-20.f,-20.f,-20.f,-24.f,-24.f,-24.f,-24.f,-28.f,-28.f,-28.f},/*175*/
- {-20.f,-20.f,-20.f,-20.f,-20.f,-20.f,-24.f,-24.f,-28.f,-28.f,-28.f},/*250*/
- {-20.f,-20.f,-20.f,-20.f,-20.f,-20.f,-24.f,-24.f,-28.f,-28.f,-28.f},/*350*/
- {-20.f,-20.f,-20.f,-20.f,-20.f,-20.f,-28.f,-24.f,-28.f,-28.f,-28.f},/*500*/
- {-20.f,-20.f,-20.f,-20.f,-20.f,-20.f,-24.f,-24.f,-28.f,-28.f,-28.f},/*700*/
- {-20.f,-20.f,-20.f,-20.f,-20.f,-20.f,-24.f,-24.f,-28.f,-28.f,-28.f},/*1000*/
- {-20.f,-20.f,-20.f,-20.f,-24.f,-24.f,-24.f,-24.f,-28.f,-28.f,-28.f},/*1400*/
- {-20.f,-20.f,-20.f,-20.f,-24.f,-24.f,-24.f,-24.f,-28.f,-28.f,-28.f},/*2000*/
- {-20.f,-20.f,-20.f,-20.f,-24.f,-24.f,-24.f,-24.f,-28.f,-28.f,-28.f},/*2800*/
- {-20.f,-20.f,-20.f,-20.f,-22.f,-20.f,-24.f,-24.f,-28.f,-28.f,-28.f},/*4000*/
- {-20.f,-20.f,-20.f,-20.f,-22.f,-20.f,-22.f,-24.f,-28.f,-28.f,-28.f},/*5600*/
- {-20.f,-20.f,-20.f,-20.f,-20.f,-20.f,-22.f,-24.f,-28.f,-28.f,-28.f},/*8000*/
- {-20.f,-20.f,-20.f,-20.f,-20.f,-20.f,-22.f,-24.f,-28.f,-28.f,-28.f},/*11500*/
- {-20.f,-20.f,-20.f,-20.f,-20.f,-20.f,-22.f,-24.f,-28.f,-28.f,-28.f},/*16000*/
- },
-
- 1,/*noisemaskp */
- -28.f, /* suppress any noise curve over maxspec+n */
- .5f, /* low window */
- .5f, /* high window */
- 25,
- 25,
- 40,
- {.000f, 0.f, /*63*/
- .000f, 0.f, /*88*/
- .000f, 0.f, /*125*/
- .000f, 0.f, /*175*/
- .000f, 0.f, /*250*/
- .000f, 0.f, /*350*/
- .000f, 0.f, /*500*/
- .000f, 0.f, /*700*/
- .200f, 0.f, /*1000*/
- .300f, 0.f, /*1400*/
- .300f, 0.f, /*2000*/
- .300f, 0.f, /*2800*/
- .300f, 0.f, /*4000*/
- .400f, 0.f, /*5600*/
- .600f, 0.f, /*8000*/
- .600f, 0.f, /*11500*/
- .650f, 0.f, /*16000*/
- },
-
- 105.f, /* even decade + 5 is important; saves an rint() later in a
- tight loop) */
- -32.,
-
-};
-
-/* with GNUisms, this could be short and readable. Oh well */
-static vorbis_info_time0 _time_set0C={0};
-static vorbis_info_floor0 _floor_set0C={12, 44100, 64, 10,130, 2, {0,1},
- 0.199f, .285f};
-static vorbis_info_floor0 _floor_set1C={30, 44100, 256, 12,150, 2, {2,3},
- .082f, .126f};
-static vorbis_info_residue0 _residue_set0C={0,128,16,6,4,
- {0,1,1,1,1,1},
- {6,7,8,9,10},
-
- {0,99999,9999,9999,9999},
- {999.f,1.5f,3.5f,15.5f,26.5f},
- {4,4,4,4,4},
- {99,99,99,99,99}};
-
-static vorbis_info_residue0 _residue_set1C={0, 960, 32,10,5,
- {0,1,1,1,1,1,1,1,1,1},
- {11,12,13,14,15,16,17,18,19},
-
- {0,8,9999,16,9999,
- 24,9999,9999,9999},
- {999.f,1.5f,1.5f,2.5f,2.5f,
- 6.5f,6.5f,14.5f,30.f},
- {5,5,5,5,5,5,5,5,5},
- {99,99,99,99,99,99,99,99,99}};
-
-static vorbis_info_mapping0 _mapping_set0C={1, {0,0}, {0}, {0}, {0}, {0}};
-static vorbis_info_mapping0 _mapping_set1C={1, {0,0}, {0}, {1}, {1}, {1}};
-static vorbis_info_mode _mode_set0C={0,0,0,0};
-static vorbis_info_mode _mode_set1C={1,0,0,1};
-
-/* CD quality stereo, no channel coupling */
-codec_setup_info info_C={
-
- /* smallblock, largeblock */
- {256, 2048},
- /* modes,maps,times,floors,residues,books,psys */
- 2, 2, 1, 2, 2, 20, 2,
- /* modes */
- {&_mode_set0C,&_mode_set1C},
- /* maps */
- {0,0},{&_mapping_set0C,&_mapping_set1C},
- /* times */
- {0,0},{&_time_set0C},
- /* floors */
- {0,0},{&_floor_set0C,&_floor_set1C},
- /* residue */
- {0,0},{&_residue_set0C,&_residue_set1C},
- /* books */
- {&_vq_book_lsp12_0, /* 0 */
- &_vq_book_lsp12_1, /* 1 */
- &_vq_book_lsp30_0, /* 2 */
- &_vq_book_lsp30_1, /* 3 */
-
- &_huff_book_res0_192_128aux,
- &_huff_book_res0_192_1024aux,
-
- &_vq_book_res0_192_128_1,
- &_vq_book_res0_192_128_2,
- &_vq_book_res0_192_128_3,
- &_vq_book_res0_192_128_4,
- &_vq_book_res0_192_128_5,
-
- &_vq_book_res0_192_1024_1,
- &_vq_book_res0_192_1024_2,
- &_vq_book_res0_192_1024_3,
- &_vq_book_res0_192_1024_4,
- &_vq_book_res0_192_1024_5,
- &_vq_book_res0_192_1024_6,
- &_vq_book_res0_192_1024_7,
- &_vq_book_res0_192_1024_8,
- &_vq_book_res0_192_1024_9,
-
- },
- /* psy */
- {&_psy_set_C0,&_psy_set_C},
-
- /* thresh sample period, preecho clamp trigger threshhold, range, minenergy */
- 256, {26.f,26.f,26.f,30.f}, {-90.f,-90.f,-90.f,-90.f}, -90.f,
-
- -10.,
-
- 0,
-};
-
-#define PREDEF_INFO_MAX 0
-
-#endif
diff --git a/lib/modes/mode_D.h b/lib/modes/mode_D.h
deleted file mode 100644
index 27145d1f..00000000
--- a/lib/modes/mode_D.h
+++ /dev/null
@@ -1,310 +0,0 @@
-/********************************************************************
- * *
- * 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: predefined encoding modes
- last mod: $Id: mode_D.h,v 1.15 2001/06/18 09:07:32 xiphmont Exp $
-
- ********************************************************************/
-
-#ifndef _V_MODES_D_H_
-#define _V_MODES_D_H_
-
-#include <stdio.h>
-#include "vorbis/codec.h"
-#include "backends.h"
-
-#include "books/lsp12_0.vqh"
-#include "books/lsp30_0.vqh"
-#include "books/lsp12_1.vqh"
-#include "books/lsp30_1.vqh"
-
-#include "books/res0_256_128aux.vqh"
-#include "books/res0_256_1024aux.vqh"
-
-#include "books/res0_256_128_1.vqh"
-#include "books/res0_256_128_2.vqh"
-#include "books/res0_256_128_3.vqh"
-#include "books/res0_256_128_4.vqh"
-#include "books/res0_256_128_5.vqh"
-
-#include "books/res0_256_1024_1.vqh"
-#include "books/res0_256_1024_2.vqh"
-#include "books/res0_256_1024_3.vqh"
-#include "books/res0_256_1024_4.vqh"
-#include "books/res0_256_1024_5.vqh"
-#include "books/res0_256_1024_6.vqh"
-#include "books/res0_256_1024_7.vqh"
-
-
-static vorbis_info_psy _psy_set_D0={
- ATH_Bark_dB_lspconservative,
- 1,/*decayp*/
-
- -100.,
- -140.,
-
- 8,
-
- /* 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 */
- /* x: 63 88 125 175 250 350 500 700 1k 1.4k 2k 2.8k 4k 5.6k 8k 11.5k 16k Hz */
- /* y: 0 10 20 30 40 50 60 70 80 90 100 dB */
-
- 1,/* tonemaskp */
- /* 0 10 20 30 40 50 60 70 80 90 100 */
- {
- {-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.}, /*63*/
- {-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.}, /*88*/
- {-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.}, /*125*/
- {-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.}, /*175*/
- {-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.}, /*250*/
- {-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.}, /*350*/
- {-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.}, /*500*/
- {-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.}, /*700*/
-
- {-35.,-40.,-40.,-40.,-40.,-50.,-60.,-70.,-80.,-90.,-100.}, /*1000*/
- {-35.,-40.,-40.,-40.,-40.,-50.,-60.,-70.,-80.,-90.,-100.}, /*1400*/
- {-40.,-40.,-40.,-40.,-40.,-50.,-60.,-70.,-80.,-90.,-100.}, /*2000*/
- {-40.,-40.,-40.,-40.,-40.,-50.,-60.,-70.,-80.,-90.,-100.}, /*2800*/
- {-35.,-40.,-40.,-40.,-40.,-50.,-60.,-70.,-80.,-90.,-100.}, /*4000*/
- {-35.,-40.,-40.,-40.,-40.,-50.,-60.,-70.,-80.,-90.,-100.}, /*5600*/
- {-35.,-40.,-40.,-40.,-40.,-50.,-60.,-70.,-80.,-90.,-100.}, /*8000*/
- {-35.,-40.,-40.,-40.,-40.,-50.,-60.,-70.,-80.,-90.,-100.}, /*11500*/
- {-35.,-40.,-40.,-40.,-40.,-50.,-60.,-70.,-80.,-90.,-100.}, /*16000*/
- },
-
- 1,/* peakattp */
- {{-16.f,-20.f,-20.f,-22.f,-22.f,-22.f,-26.f,-26.f,-26.f,-26.f,-26.f},/*63*/
- {-16.f,-20.f,-20.f,-22.f,-22.f,-22.f,-26.f,-26.f,-26.f,-26.f,-26.f},/*88*/
- {-16.f,-20.f,-20.f,-22.f,-22.f,-22.f,-26.f,-26.f,-26.f,-26.f,-26.f},/*125*/
- {-16.f,-20.f,-20.f,-20.f,-20.f,-20.f,-20.f,-26.f,-26.f,-26.f,-26.f},/*175*/
- {-16.f,-20.f,-20.f,-20.f,-20.f,-20.f,-20.f,-26.f,-26.f,-26.f,-26.f},/*250*/
- {-16.f,-20.f,-20.f,-20.f,-20.f,-20.f,-20.f,-26.f,-26.f,-26.f,-26.f},/*350*/
- {-16.f,-20.f,-20.f,-20.f,-20.f,-20.f,-20.f,-26.f,-26.f,-26.f,-26.f},/*500*/
- {-16.f,-20.f,-20.f,-20.f,-20.f,-20.f,-20.f,-26.f,-26.f,-26.f,-26.f},/*700*/
- {-16.f,-20.f,-20.f,-20.f,-20.f,-20.f,-20.f,-26.f,-26.f,-26.f,-26.f},/*1000*/
- {-16.f,-20.f,-20.f,-20.f,-20.f,-20.f,-22.f,-26.f,-26.f,-26.f,-26.f},/*2000*/
- {-16.f,-20.f,-20.f,-20.f,-20.f,-20.f,-22.f,-26.f,-26.f,-26.f,-26.f},/*2000*/
- {-16.f,-20.f,-20.f,-20.f,-20.f,-20.f,-22.f,-26.f,-26.f,-26.f,-26.f},/*2600*/
- {-16.f,-20.f,-20.f,-20.f,-20.f,-20.f,-22.f,-26.f,-26.f,-26.f,-26.f},/*4000*/
- {-16.f,-20.f,-20.f,-20.f,-20.f,-20.f,-20.f,-20.f,-26.f,-26.f,-26.f},/*5600*/
- {-16.f,-20.f,-20.f,-20.f,-20.f,-20.f,-20.f,-20.f,-26.f,-26.f,-26.f},/*8000*/
- {-16.f,-20.f,-20.f,-20.f,-20.f,-20.f,-20.f,-20.f,-26.f,-26.f,-26.f},/*11500*/
- {-16.f,-20.f,-20.f,-20.f,-20.f,-20.f,-20.f,-20.f,-20.f,-26.f,-26.f},/*16000*/
- },
-
- 1,/*noisemaskp */
- -20.f, /* suppress any noise curve over maxspec+n */
- .5f, /* low window */
- .5f, /* high window */
- 5,
- 5,
- 10,
- {.000f, 0.f,/*63*/
- .000f, 0.f,/*88*/
- .000f, 0.f,/*125*/
- .000f, 0.f,/*175*/
- .000f, 0.f,/*250*/
- .000f, 0.f,/*350*/
- .000f, 0.f,/*500*/
- .100f, 0.f,/*700*/
- .100f, 0.f,/*1000*/
- .100f, 0.f,/*1400*/
- .100f, 0.f,/*2000*/
- .100f, 0.f,/*2800*/
- .200f, 0.f,/*4000*/
- .300f, 0.f,/*5600*/
- .400f, 0.f,/*8000*/
- .400f, 0.f,/*11500*/
- .400f, 0.f,/*16000*/
- },
-
- 105.f, /* even decade + 5 is important; saves an rint() later in a
- tight loop) */
- -28.,
-};
-
-static vorbis_info_psy _psy_set_D={
- ATH_Bark_dB_lspconservative,
- 1,/*decayp*/
-
- -100.f,
- -140.f,
-
- 8,
-
- /* 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 */
- /* x: 63 88 125 175 250 350 500 700 1k 1.4k 2k 2.8k 4k 5.6k 8k 11.5k 16k Hz */
- /* y: 0 10 20 30 40 50 60 70 80 90 100 dB */
- 1,/* tonemaskp */
- /* 0 10 20 30 40 50 60 70 80 90 100 */
- {
- {-999.f,-999.f,-999.f,-999.f,-999.f,-999.f,-999.f,-999.f,-999.f,-999.f,-999.f}, /*63*/
- {-999.f,-999.f,-999.f,-999.f,-999.f,-999.f,-999.f,-999.f,-999.f,-999.f,-999.f}, /*88*/
- {-999.f,-999.f,-999.f,-999.f,-999.f,-999.f,-999.f,-999.f,-999.f,-999.f,-999.f}, /*125*/
-
- {-40.f,-40.f,-40.f,-40.f,-40.f,-50.f,-60.f,-70.f,-80.f,-90.f,-100.f}, /*175*/
- {-40.f,-40.f,-40.f,-40.f,-40.f,-50.f,-60.f,-70.f,-80.f,-90.f,-100.f}, /*250*/
- {-40.f,-40.f,-40.f,-40.f,-40.f,-50.f,-60.f,-70.f,-80.f,-90.f,-100.f}, /*350*/
- {-40.f,-40.f,-40.f,-40.f,-40.f,-50.f,-60.f,-70.f,-80.f,-90.f,-100.f}, /*500*/
- {-40.f,-40.f,-40.f,-40.f,-40.f,-50.f,-60.f,-70.f,-80.f,-90.f,-100.f}, /*700*/
-
- {-40.f,-40.f,-40.f,-40.f,-40.f,-50.f,-60.f,-70.f,-80.f,-90.f,-100.f}, /*1000*/
- {-40.f,-40.f,-40.f,-40.f,-40.f,-50.f,-60.f,-70.f,-80.f,-90.f,-100.f}, /*1400*/
- {-40.f,-40.f,-40.f,-40.f,-40.f,-50.f,-60.f,-70.f,-80.f,-90.f,-100.f}, /*2000*/
- {-40.f,-40.f,-40.f,-40.f,-40.f,-50.f,-60.f,-70.f,-80.f,-90.f,-100.f}, /*2800*/
- {-40.f,-40.f,-40.f,-40.f,-40.f,-50.f,-60.f,-70.f,-80.f,-90.f,-100.f}, /*4000*/
- {-40.f,-40.f,-40.f,-40.f,-40.f,-50.f,-60.f,-70.f,-80.f,-90.f,-100.f}, /*5600*/
-
- {-40.f,-40.f,-40.f,-40.f,-40.f,-50.f,-60.f,-70.f,-80.f,-90.f,-100.f}, /*8000*/
- {-40.f,-40.f,-40.f,-40.f,-40.f,-50.f,-60.f,-70.f,-80.f,-90.f,-100.f}, /*11500*/
- {-40.f,-40.f,-40.f,-40.f,-40.f,-50.f,-60.f,-70.f,-80.f,-90.f,-100.f}, /*16000*/
-
- },
-
- 1,
- {{-20.f,-20.f,-20.f,-24.f,-24.f,-24.f,-28.f,-28.f,-28.f,-28.f,-28.f},/*63*/
- {-20.f,-20.f,-20.f,-24.f,-24.f,-24.f,-28.f,-28.f,-28.f,-28.f,-28.f},/*88*/
- {-20.f,-20.f,-20.f,-20.f,-24.f,-24.f,-28.f,-28.f,-28.f,-28.f,-28.f},/*125*/
- {-20.f,-20.f,-20.f,-20.f,-24.f,-24.f,-24.f,-24.f,-28.f,-28.f,-28.f},/*175*/
- {-20.f,-20.f,-20.f,-20.f,-20.f,-20.f,-24.f,-24.f,-28.f,-28.f,-28.f},/*250*/
- {-20.f,-20.f,-20.f,-20.f,-20.f,-20.f,-24.f,-24.f,-28.f,-28.f,-28.f},/*350*/
- {-20.f,-20.f,-20.f,-20.f,-20.f,-20.f,-28.f,-24.f,-28.f,-28.f,-28.f},/*500*/
- {-20.f,-20.f,-20.f,-20.f,-20.f,-20.f,-24.f,-24.f,-28.f,-28.f,-28.f},/*700*/
- {-20.f,-20.f,-20.f,-20.f,-20.f,-20.f,-24.f,-24.f,-28.f,-28.f,-28.f},/*1000*/
- {-20.f,-20.f,-20.f,-20.f,-24.f,-24.f,-24.f,-24.f,-28.f,-28.f,-28.f},/*1400*/
- {-20.f,-20.f,-20.f,-20.f,-24.f,-24.f,-24.f,-24.f,-28.f,-28.f,-28.f},/*2000*/
- {-20.f,-20.f,-20.f,-20.f,-24.f,-24.f,-24.f,-24.f,-28.f,-28.f,-28.f},/*2800*/
- {-20.f,-20.f,-20.f,-20.f,-22.f,-20.f,-24.f,-24.f,-28.f,-28.f,-28.f},/*4000*/
- {-20.f,-20.f,-20.f,-20.f,-22.f,-20.f,-22.f,-24.f,-28.f,-28.f,-28.f},/*5600*/
- {-20.f,-20.f,-20.f,-20.f,-20.f,-20.f,-22.f,-24.f,-28.f,-28.f,-28.f},/*8000*/
- {-20.f,-20.f,-20.f,-20.f,-20.f,-20.f,-22.f,-24.f,-28.f,-28.f,-28.f},/*11500*/
- {-20.f,-20.f,-20.f,-20.f,-20.f,-20.f,-22.f,-24.f,-28.f,-28.f,-28.f},/*16000*/
- },
-
- 1,/*noisemaskp */
- -28.f, /* suppress any noise curve over maxspec+n */
- .5f, /* low window */
- .5f, /* high window */
- 25,
- 25,
- 40,
- {.000f, 0.f, /*63*/
- .000f, 0.f, /*88*/
- .000f, 0.f, /*125*/
- .000f, 0.f, /*175*/
- .000f, 0.f, /*250*/
- .000f, 0.f, /*350*/
- .000f, 0.f, /*500*/
- .000f, 0.f, /*700*/
- .000f, 0.f, /*1000*/
- .000f, 0.f, /*1400*/
- .000f, 0.f, /*2000*/
- .000f, 0.f, /*2800*/
- .050f, 0.f, /*4000*/
- .100f, 0.f, /*5600*/
- .100f, 0.f, /*8000*/
- .120f, 0.f, /*11500*/
- .150f, 0.f, /*16000*/
- },
-
- 105.f, /* even decade + 5 is important; saves an rint() later in a
- tight loop) */
- -32.,
-
-};
-
-/* with GNUisms, this could be short and readable. Oh well */
-static vorbis_info_time0 _time_set0D={0};
-static vorbis_info_floor0 _floor_set0D={12, 44100, 64, 10,130, 2, {0,1},
- 0.199f, .285f};
-static vorbis_info_floor0 _floor_set1D={30, 44100, 256, 12,150, 2, {2,3},
- .082f, .126f};
-static vorbis_info_residue0 _residue_set0D={0,128,16,6,4,
- {0,1,1,1,1,1},
- {6,7,8,9,10},
-
- {0,99999,9999,9999,9999},
- {999.f,1.5f,2.5f,6.5f,40.5f},
- {4,4,4,4,4},
- {99,99,99,99,99}};
-
-static vorbis_info_residue0 _residue_set1D={0,1024, 32,8,5,
- {0,1,1,1,1,1,1,1,1,1},
- {11,12,13,14,15,16,17,18,19},
-
- {0,9999,9999,60,9999,
- 9999,9999},
- {999.f,2.5f,4.5f,10.5f,10.5f,
- 20.5f,40.f},
- {5,5,5,5,5,5,5},
- {99,99,99,99,99,99,99,99,99}};
-
-static vorbis_info_mapping0 _mapping_set0D={1, {0,0}, {0}, {0}, {0}, {0}};
-static vorbis_info_mapping0 _mapping_set1D={1, {0,0}, {0}, {1}, {1}, {1}};
-static vorbis_info_mode _mode_set0D={0,0,0,0};
-static vorbis_info_mode _mode_set1D={1,0,0,1};
-
-/* CD quality stereo, no channel coupling */
-codec_setup_info info_D={
-
- /* smallblock, largeblock */
- {256, 2048},
- /* modes,maps,times,floors,residues,books,psys */
- 2, 2, 1, 2, 2, 18, 2,
- /* modes */
- {&_mode_set0D,&_mode_set1D},
- /* maps */
- {0,0},{&_mapping_set0D,&_mapping_set1D},
- /* times */
- {0,0},{&_time_set0D},
- /* floors */
- {0,0},{&_floor_set0D,&_floor_set1D},
- /* residue */
- {0,0},{&_residue_set0D,&_residue_set1D},
- /* books */
- {&_vq_book_lsp12_0, /* 0 */
- &_vq_book_lsp12_1, /* 1 */
- &_vq_book_lsp30_0, /* 2 */
- &_vq_book_lsp30_1, /* 3 */
-
- &_huff_book_res0_256_128aux,
- &_huff_book_res0_256_1024aux,
-
- &_vq_book_res0_256_128_1,
- &_vq_book_res0_256_128_2,
- &_vq_book_res0_256_128_3,
- &_vq_book_res0_256_128_4,
- &_vq_book_res0_256_128_5,
-
- &_vq_book_res0_256_1024_1,
- &_vq_book_res0_256_1024_2,
- &_vq_book_res0_256_1024_3,
- &_vq_book_res0_256_1024_4,
- &_vq_book_res0_256_1024_5,
- &_vq_book_res0_256_1024_6,
- &_vq_book_res0_256_1024_7,
-
- },
- /* psy */
- {&_psy_set_D0,&_psy_set_D},
-
- /* thresh sample period, preecho clamp trigger threshhold, range, minenergy */
- 256, {26.f,26.f,26.f,30.f}, {-36.f,-36.f,-36.f,-36.f}, -90.f,
-
- -10.,
-
- 0,
-};
-
-#define PREDEF_INFO_MAX 0
-
-#endif
diff --git a/lib/modes/mode_E.h b/lib/modes/mode_E.h
deleted file mode 100644
index f8700503..00000000
--- a/lib/modes/mode_E.h
+++ /dev/null
@@ -1,276 +0,0 @@
-/********************************************************************
- * *
- * 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: predefined encoding modes
- last mod: $Id: mode_E.h,v 1.14 2001/06/18 09:07:32 xiphmont Exp $
-
- ********************************************************************/
-
-#ifndef _V_MODES_E_H_
-#define _V_MODES_E_H_
-
-#include <stdio.h>
-#include "vorbis/codec.h"
-#include "backends.h"
-
-#include "books/lsp12_0.vqh"
-#include "books/lsp30_0.vqh"
-#include "books/lsp12_1.vqh"
-#include "books/lsp30_1.vqh"
-
-#include "books/res0_256_128aux.vqh"
-#include "books/res0_256_1024aux.vqh"
-
-#include "books/res0_256_128_1.vqh"
-#include "books/res0_256_128_2.vqh"
-#include "books/res0_256_128_3.vqh"
-#include "books/res0_256_128_4.vqh"
-#include "books/res0_256_128_5.vqh"
-
-#include "books/res0_256_1024_1.vqh"
-#include "books/res0_256_1024_2.vqh"
-#include "books/res0_256_1024_3.vqh"
-#include "books/res0_256_1024_4.vqh"
-#include "books/res0_256_1024_5.vqh"
-#include "books/res0_256_1024_6.vqh"
-#include "books/res0_350_1024_7.vqh"
-
-
-static vorbis_info_psy _psy_set_E0={
- ATH_Bark_dB_lspconservative,
- 1,/*decayp*/
-
- -100.,
- -140.,
-
- 8,
-
- /* 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 */
- /* x: 63 88 125 175 250 350 500 700 1k 1.4k 2k 2.8k 4k 5.6k 8k 11.5k 16k Hz */
- /* y: 0 10 20 30 40 50 60 70 80 90 100 dB */
-
- 1,/* tonemaskp */
- /* 0 10 20 30 40 50 60 70 80 90 100 */
- {
- {-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.}, /*63*/
- {-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.}, /*88*/
- {-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.}, /*125*/
- {-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.}, /*175*/
- {-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.}, /*250*/
- {-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.}, /*350*/
- {-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.}, /*500*/
- {-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.}, /*700*/
-
- {-40.,-40.,-40.,-40.,-40.,-50.,-60.,-70.,-80.,-90.,-100.}, /*1000*/
- {-40.,-40.,-40.,-40.,-40.,-50.,-60.,-70.,-80.,-90.,-100.}, /*1400*/
- {-40.,-45.,-45.,-45.,-45.,-55.,-65.,-75.,-85.,-95.,-105.}, /*2000*/
- {-40.,-45.,-45.,-45.,-45.,-55.,-65.,-75.,-85.,-95.,-105.}, /*2800*/
- {-40.,-45.,-45.,-45.,-45.,-55.,-65.,-75.,-85.,-95.,-105.}, /*4000*/
- {-40.,-40.,-40.,-40.,-40.,-50.,-60.,-70.,-80.,-90.,-100.}, /*5600*/
- {-40.,-40.,-40.,-40.,-40.,-50.,-60.,-70.,-80.,-90.,-100.}, /*8000*/
- {-40.,-40.,-40.,-40.,-40.,-50.,-60.,-70.,-80.,-90.,-100.}, /*11500*/
- {-40.,-40.,-40.,-40.,-40.,-50.,-60.,-70.,-80.,-90.,-100.}, /*16000*/
- },
-
- 1,/* peakattp */
- {{-20.f,-22.f,-24.f,-26.f,-26.f,-26.f,-26.f,-26.f,-26.f,-26.f,-26.f},/*63*/
- {-20.f,-22.f,-24.f,-26.f,-26.f,-26.f,-26.f,-26.f,-26.f,-26.f,-26.f},/*88*/
- {-20.f,-22.f,-24.f,-26.f,-26.f,-26.f,-26.f,-26.f,-26.f,-26.f,-26.f},/*125*/
- {-20.f,-22.f,-24.f,-26.f,-26.f,-26.f,-26.f,-26.f,-26.f,-26.f,-26.f},/*175*/
- {-20.f,-22.f,-24.f,-26.f,-26.f,-26.f,-26.f,-26.f,-26.f,-26.f,-26.f},/*250*/
- {-20.f,-22.f,-24.f,-26.f,-26.f,-26.f,-26.f,-26.f,-26.f,-26.f,-26.f},/*350*/
- {-20.f,-22.f,-24.f,-26.f,-26.f,-26.f,-26.f,-26.f,-26.f,-26.f,-26.f},/*500*/
- {-20.f,-22.f,-24.f,-26.f,-26.f,-26.f,-26.f,-26.f,-26.f,-26.f,-26.f},/*700*/
- {-20.f,-22.f,-24.f,-26.f,-26.f,-26.f,-26.f,-26.f,-26.f,-26.f,-26.f},/*1000*/
- {-20.f,-22.f,-24.f,-26.f,-26.f,-26.f,-26.f,-26.f,-26.f,-26.f,-26.f},/*1400*/
- {-20.f,-22.f,-24.f,-26.f,-26.f,-26.f,-26.f,-26.f,-26.f,-26.f,-26.f},/*2000*/
- {-20.f,-22.f,-24.f,-26.f,-26.f,-26.f,-26.f,-26.f,-26.f,-26.f,-26.f},/*2600*/
- {-20.f,-22.f,-24.f,-26.f,-26.f,-26.f,-26.f,-26.f,-26.f,-26.f,-26.f},/*4000*/
- {-20.f,-22.f,-24.f,-26.f,-26.f,-26.f,-26.f,-26.f,-26.f,-26.f,-26.f},/*5600*/
- {-20.f,-22.f,-22.f,-24.f,-26.f,-26.f,-26.f,-26.f,-26.f,-26.f,-26.f},/*8000*/
- {-20.f,-22.f,-22.f,-22.f,-24.f,-26.f,-26.f,-26.f,-26.f,-26.f,-26.f},/*11500*/
- {-16.f,-20.f,-22.f,-22.f,-24.f,-26.f,-26.f,-26.f,-26.f,-26.f,-26.f},/*16000*/
- },
-
- 0,/*noisemaskp */
- -20.f, /* suppress any noise curve over maxspec+n */
- .5f, /* low window */
- .5f, /* high window */
- 5,
- 5,
- 10,
- {0.f},
-
- 105.f, /* even decade + 5 is important; saves an rint() later in a
- tight loop) */
- -28.,
-};
-
-static vorbis_info_psy _psy_set_E={
- ATH_Bark_dB_lspconservative,
- 1,/*decayp*/
-
- -100.f,
- -140.f,
-
- 8,
-
- /* 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 */
- /* x: 63 88 125 175 250 350 500 700 1k 1.4k 2k 2.8k 4k 5.6k 8k 11.5k 16k Hz */
- /* y: 0 10 20 30 40 50 60 70 80 90 100 dB */
- 1,/* tonemaskp */
- /* 0 10 20 30 40 50 60 70 80 90 100 */
- {
- {-999.f,-999.f,-999.f,-999.f,-999.f,-999.f,-999.f,-999.f,-999.f,-999.f,-999.f}, /*63*/
- {-999.f,-999.f,-999.f,-999.f,-999.f,-999.f,-999.f,-999.f,-999.f,-999.f,-999.f}, /*88*/
- {-999.f,-999.f,-999.f,-999.f,-999.f,-999.f,-999.f,-999.f,-999.f,-999.f,-999.f}, /*125*/
-
- {-40.f,-45.f,-45.f,-45.f,-45.f,-55.f,-65.f,-75.f,-85.f,-95.f,-105.f}, /*175*/
- {-40.f,-45.f,-45.f,-45.f,-45.f,-55.f,-65.f,-75.f,-85.f,-95.f,-105.f}, /*250*/
- {-40.f,-45.f,-45.f,-45.f,-45.f,-55.f,-65.f,-75.f,-85.f,-95.f,-105.f}, /*350*/
- {-40.f,-45.f,-45.f,-45.f,-45.f,-55.f,-65.f,-75.f,-85.f,-95.f,-105.f}, /*500*/
- {-40.f,-45.f,-45.f,-45.f,-45.f,-55.f,-65.f,-75.f,-85.f,-95.f,-105.f}, /*700*/
-
- {-40.f,-45.f,-45.f,-45.f,-45.f,-55.f,-65.f,-75.f,-85.f,-95.f,-105.f}, /*1000*/
- {-40.f,-45.f,-50.f,-50.f,-50.f,-60.f,-70.f,-80.f,-90.f,-99.f,-110.f}, /*1400*/
- {-40.f,-45.f,-50.f,-50.f,-50.f,-60.f,-70.f,-80.f,-90.f,-99.f,-110.f}, /*2000*/
- {-40.f,-45.f,-50.f,-50.f,-50.f,-60.f,-70.f,-80.f,-90.f,-99.f,-110.f}, /*2800*/
- {-40.f,-45.f,-50.f,-50.f,-50.f,-60.f,-70.f,-80.f,-90.f,-99.f,-110.f}, /*4000*/
- {-40.f,-45.f,-45.f,-45.f,-45.f,-55.f,-65.f,-75.f,-85.f,-95.f,-105.f}, /*5600*/
-
- {-40.f,-45.f,-45.f,-45.f,-45.f,-55.f,-65.f,-75.f,-85.f,-95.f,-105.f}, /*8000*/
- {-40.f,-45.f,-45.f,-45.f,-45.f,-55.f,-65.f,-75.f,-85.f,-95.f,-105.f}, /*11500*/
- {-40.f,-40.f,-45.f,-45.f,-45.f,-55.f,-65.f,-75.f,-85.f,-95.f,-105.f}, /*16000*/
-
- },
-
- 1,
- {{-26.f,-26.f,-26.f,-28.f,-28.f,-28.f,-28.f,-28.f,-28.f,-28.f,-28.f},/*63*/
- {-26.f,-26.f,-26.f,-28.f,-28.f,-28.f,-28.f,-28.f,-28.f,-28.f,-28.f},/*88*/
- {-26.f,-26.f,-26.f,-26.f,-28.f,-28.f,-28.f,-28.f,-28.f,-28.f,-28.f},/*125*/
- {-26.f,-26.f,-26.f,-26.f,-28.f,-28.f,-28.f,-28.f,-28.f,-28.f,-28.f},/*175*/
- {-26.f,-26.f,-26.f,-26.f,-26.f,-26.f,-28.f,-28.f,-28.f,-28.f,-28.f},/*250*/
- {-26.f,-26.f,-26.f,-26.f,-26.f,-26.f,-28.f,-28.f,-28.f,-28.f,-28.f},/*350*/
- {-26.f,-26.f,-26.f,-26.f,-26.f,-26.f,-28.f,-28.f,-28.f,-28.f,-28.f},/*500*/
- {-26.f,-26.f,-26.f,-26.f,-26.f,-26.f,-28.f,-28.f,-28.f,-28.f,-28.f},/*700*/
- {-26.f,-26.f,-26.f,-26.f,-26.f,-26.f,-28.f,-28.f,-28.f,-28.f,-28.f},/*1000*/
- {-26.f,-26.f,-26.f,-26.f,-28.f,-28.f,-28.f,-28.f,-28.f,-28.f,-28.f},/*1400*/
- {-26.f,-26.f,-26.f,-26.f,-28.f,-28.f,-28.f,-28.f,-28.f,-28.f,-28.f},/*2000*/
- {-26.f,-26.f,-26.f,-26.f,-28.f,-28.f,-28.f,-28.f,-28.f,-28.f,-28.f},/*2800*/
- {-26.f,-26.f,-26.f,-26.f,-26.f,-26.f,-28.f,-28.f,-28.f,-28.f,-28.f},/*4000*/
- {-26.f,-26.f,-26.f,-26.f,-26.f,-26.f,-26.f,-28.f,-28.f,-28.f,-28.f},/*5600*/
- {-26.f,-26.f,-26.f,-26.f,-26.f,-26.f,-26.f,-28.f,-28.f,-28.f,-28.f},/*8000*/
- {-26.f,-26.f,-26.f,-26.f,-26.f,-26.f,-26.f,-28.f,-28.f,-28.f,-28.f},/*11500*/
- {-26.f,-26.f,-26.f,-26.f,-26.f,-26.f,-26.f,-28.f,-28.f,-28.f,-28.f},/*16000*/
- },
-
- 0,/*noisemaskp */
- -28.f, /* suppress any noise curve over maxspec+n */
- .5f, /* low window */
- .5f, /* high window */
- 25,
- 25,
- 40,
- {0.f},
-
- 105.f, /* even decade + 5 is important; saves an rint() later in a
- tight loop) */
- -32.,
-
-};
-
-/* with GNUisms, this could be short and readable. Oh well */
-static vorbis_info_time0 _time_set0E={0};
-static vorbis_info_floor0 _floor_set0E={12, 44100, 64, 10,130, 2, {0,1},
- 0.199f, .285f};
-static vorbis_info_floor0 _floor_set1E={30, 44100, 256, 12,150, 2, {2,3},
- .082f, .126f};
-static vorbis_info_residue0 _residue_set0E={0,128,16,6,4,
- {0,1,1,1,1,1},
- {6,7,8,9,10},
-
- {0,99999,9999,9999,9999},
- {999.f,1.5f,2.5f,6.5f,40.5f},
- {4,4,4,4,4},
- {99,99,99,99,99}};
-
-static vorbis_info_residue0 _residue_set1E={0,1024, 32,8,5,
- {0,1,1,1,1,1,1,1,1,1},
- {11,12,13,14,15,16,17,18,19},
-
- {0,9999,9999,60,9999,
- 9999,9999},
- {999.f,2.5f,4.5f,10.5f,10.5f,
- 20.5f,40.f},
- {5,5,5,5,5,5,5},
- {99,99,99,99,99,99,99,99,99}};
-
-static vorbis_info_mapping0 _mapping_set0E={1, {0,0}, {0}, {0}, {0}, {0}};
-static vorbis_info_mapping0 _mapping_set1E={1, {0,0}, {0}, {1}, {1}, {1}};
-static vorbis_info_mode _mode_set0E={0,0,0,0};
-static vorbis_info_mode _mode_set1E={1,0,0,1};
-
-/* CD quality stereo, no channel coupling */
-codec_setup_info info_E={
-
- /* smallblock, largeblock */
- {256, 2048},
- /* modes,maps,times,floors,residues,books,psys */
- 2, 2, 1, 2, 2, 18, 2,
- /* modes */
- {&_mode_set0E,&_mode_set1E},
- /* maps */
- {0,0},{&_mapping_set0E,&_mapping_set1E},
- /* times */
- {0,0},{&_time_set0E},
- /* floors */
- {0,0},{&_floor_set0E,&_floor_set1E},
- /* residue */
- {0,0},{&_residue_set0E,&_residue_set1E},
- /* books */
- {&_vq_book_lsp12_0, /* 0 */
- &_vq_book_lsp12_1, /* 1 */
- &_vq_book_lsp30_0, /* 2 */
- &_vq_book_lsp30_1, /* 3 */
-
- &_huff_book_res0_256_128aux,
- &_huff_book_res0_256_1024aux,
-
- &_vq_book_res0_256_128_1,
- &_vq_book_res0_256_128_2,
- &_vq_book_res0_256_128_3,
- &_vq_book_res0_256_128_4,
- &_vq_book_res0_256_128_5,
-
- &_vq_book_res0_256_1024_1,
- &_vq_book_res0_256_1024_2,
- &_vq_book_res0_256_1024_3,
- &_vq_book_res0_256_1024_4,
- &_vq_book_res0_256_1024_5,
- &_vq_book_res0_256_1024_6,
- &_vq_book_res0_350_1024_7,
-
- },
- /* psy */
- {&_psy_set_E0,&_psy_set_E},
-
- /* thresh sample period, preecho clamp trigger threshhold, range, minenergy */
- 256, {26.f,26.f,26.f,30.f}, {-36.f,-36.f,-36.f,-36.f}, -90.f,
-
- -10.,
-
- 0,
-};
-
-#define PREDEF_INFO_MAX 0
-
-#endif
diff --git a/lib/modes/modes.h b/lib/modes/modes.h
deleted file mode 100644
index b218e76e..00000000
--- a/lib/modes/modes.h
+++ /dev/null
@@ -1,29 +0,0 @@
-/********************************************************************
- * *
- * 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: predefined encoding modes
- last mod: $Id: modes.h,v 1.8 2001/06/15 21:15:43 xiphmont Exp $
-
- ********************************************************************/
-
-#ifndef _V_MODES_H_
-#define _V_MODES_H_
-
-#include "masking.h"
-#include "modes/mode_AA.h"
-#include "modes/mode_A.h"
-#include "modes/mode_B.h"
-#include "modes/mode_C.h"
-#include "modes/mode_D.h"
-#include "modes/mode_E.h"
-
-#endif
diff --git a/lib/os.h b/lib/os.h
deleted file mode 100644
index bef8a595..00000000
--- a/lib/os.h
+++ /dev/null
@@ -1,166 +0,0 @@
-#ifndef _OS_H
-#define _OS_H
-/********************************************************************
- * *
- * 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: #ifdef jail to whip a few platforms into the UNIX ideal.
- last mod: $Id: os.h,v 1.26 2001/06/04 05:50:10 xiphmont Exp $
-
- ********************************************************************/
-
-#include <math.h>
-#include <ogg/os_types.h>
-
-#ifndef _V_IFDEFJAIL_H_
-# define _V_IFDEFJAIL_H_
-
-# ifdef __GNUC__
-# define STIN static inline
-# elif _WIN32
-# define STIN static __inline
-#else
-# define STIN static
-#endif
-
-#ifndef M_PI
-# define M_PI (3.1415926536f)
-#endif
-
-#ifdef _WIN32
-# include <malloc.h>
-# define rint(x) (floor((x)+0.5f))
-# define NO_FLOAT_MATH_LIB
-# define FAST_HYPOT(a, b) sqrt((a)*(a) + (b)*(b))
-#endif
-
-#ifdef HAVE_SQRTF
-# define sqrt sqrtf
-#endif
-#ifdef HAVE_LOGF
-# define log logf
-#endif
-#ifdef HAVE_EXPF
-# define exp expf
-#endif
-#ifdef HAVE_POWF
-# define pow powf
-#endif
-#ifdef HAVE_ACOSF
-# define acos acosf
-#endif
-#ifdef HAVE_ATANF
-# define atan atanf
-#endif
-#ifdef HAVE_FREXPF
-# define frexp frexpf
-#endif
-#ifdef HAVE_RINTF
-# define rint rintf
-#endif
-
-#ifndef FAST_HYPOT
-# define FAST_HYPOT hypot
-#endif
-
-#endif
-
-#ifdef HAVE_ALLOCA_H
-# include <alloca.h>
-#endif
-
-#ifdef USE_MEMORY_H
-# include <memory.h>
-#endif
-
-#ifndef min
-# define min(x,y) ((x)>(y)?(y):(x))
-#endif
-
-#ifndef max
-# define max(x,y) ((x)<(y)?(y):(x))
-#endif
-
-#if defined(__i386__) && defined(__GNUC__) && !defined(__BEOS__)
-# define VORBIS_FPU_CONTROL
-/* both GCC and MSVC are kinda stupid about rounding/casting to int.
- Because of encapsulation constraints (GCC can't see inside the asm
- block and so we end up doing stupid things like a store/load that
- is collectively a noop), we do it this way */
-
-/* we must set up the fpu before this works!! */
-
-typedef ogg_int16_t vorbis_fpu_control;
-
-static inline void vorbis_fpu_setround(vorbis_fpu_control *fpu){
- ogg_int16_t ret;
- ogg_int16_t temp;
- __asm__ __volatile__("fnstcw %0\n\t"
- "movw %0,%%dx\n\t"
- "orw $62463,%%dx\n\t"
- "movw %%dx,%1\n\t"
- "fldcw %1\n\t":"=m"(ret):"m"(temp): "dx");
- *fpu=ret;
-}
-
-static inline void vorbis_fpu_restore(vorbis_fpu_control fpu){
- __asm__ __volatile__("fldcw %0":: "m"(fpu));
-}
-
-/* assumes the FPU is in round mode! */
-static inline int vorbis_ftoi(double f){ /* yes, double! Otherwise,
- we get extra fst/fld to
- truncate precision */
- int i;
- __asm__("fistl %0": "=m"(i) : "t"(f));
- return(i);
-}
-#endif
-
-
-#if defined(_WIN32) && !defined(__GNUC__)
-# define VORBIS_FPU_CONTROL
-
-typedef ogg_int16_t vorbis_fpu_control;
-
-static __inline int vorbis_ftoi(double f){
- int i;
- __asm{
- fld f
- fistp i
- }
- return i;
-}
-
-static __inline void vorbis_fpu_setround(vorbis_fpu_control *fpu){
-}
-
-static __inline void vorbis_fpu_restore(vorbis_fpu_control fpu){
-}
-
-#endif
-
-
-#ifndef VORBIS_FPU_CONTROL
-
-typedef int vorbis_fpu_control;
-
-static int vorbis_ftoi(double f){
- return (int)(f+.5);
-}
-
-/* We don't have special code for this compiler/arch, so do it the slow way */
-# define vorbis_fpu_setround(vorbis_fpu_control) {}
-# define vorbis_fpu_restore(vorbis_fpu_control) {}
-
-#endif
-
-#endif /* _OS_H */
diff --git a/lib/psy.h b/lib/psy.h
deleted file mode 100644
index 4047f59b..00000000
--- a/lib/psy.h
+++ /dev/null
@@ -1,99 +0,0 @@
-/********************************************************************
- * *
- * 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: random psychoacoustics (not including preecho)
- last mod: $Id: psy.h,v 1.21 2001/06/15 21:15:40 xiphmont Exp $
-
- ********************************************************************/
-
-#ifndef _V_PSY_H_
-#define _V_PSY_H_
-#include "smallft.h"
-
-#ifndef EHMER_MAX
-#define EHMER_MAX 56
-#endif
-
-/* psychoacoustic setup ********************************************/
-#define MAX_BARK 27
-#define P_BANDS 17
-#define P_LEVELS 11
-typedef struct vorbis_info_psy{
- float *ath;
- int decayp;
-
- float ath_adjatt;
- float ath_maxatt;
-
- int eighth_octave_lines;
-
- /* 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 */
- /* x: 63 88 125 175 250 350 500 700 1k 1.4k 2k 2.8k 4k 5.6k 8k 11.5k 16k Hz */
- /* y: 0 10 20 30 40 50 60 70 80 90 100 dB */
-
- int tonemaskp;
- float toneatt[P_BANDS][P_LEVELS];
-
- int peakattp;
- float peakatt[P_BANDS][P_LEVELS];
-
- int noisemaskp;
- float noisemaxsupp;
- float noisewindowlo;
- float noisewindowhi;
- int noisewindowlomin;
- int noisewindowhimin;
- int noisewindowfixed;
- float noisemedian[P_BANDS*2];
-
- float max_curve_dB;
- float bound_att_dB;
-
-} vorbis_info_psy;
-
-typedef struct {
- int n;
- struct vorbis_info_psy *vi;
-
- float ***tonecurves;
- float **peakatt;
- int *noisemedian;
- float *noiseoffset;
-
- float *ath;
- long *octave; /* in n.ocshift format */
- unsigned long *bark;
-
- long firstoc;
- long shiftoc;
- int eighth_octave_lines; /* power of two, please */
- int total_octave_lines;
-
-} vorbis_look_psy;
-
-extern void _vp_psy_init(vorbis_look_psy *p,vorbis_info_psy *vi,int n,long rate);
-extern void _vp_psy_clear(vorbis_look_psy *p);
-extern void *_vi_psy_dup(void *source);
-
-extern void _vi_psy_free(vorbis_info_psy *i);
-extern vorbis_info_psy *_vi_psy_copy(vorbis_info_psy *i);
-
-extern float _vp_compute_mask(vorbis_look_psy *p,
- float *fft,
- float *mdct,
- float *mask,
- float prev_maxamp);
-extern float _vp_ampmax_decay(float amp,vorbis_dsp_state *vd);
-
-#endif
-
-
diff --git a/lib/psytune.c b/lib/psytune.c
deleted file mode 100644
index 12285d21..00000000
--- a/lib/psytune.c
+++ /dev/null
@@ -1,369 +0,0 @@
-/********************************************************************
- * *
- * 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: simple utility that runs audio through the psychoacoustics
- without encoding
- last mod: $Id: psytune.c,v 1.15 2001/05/27 06:44:00 xiphmont Exp $
-
- ********************************************************************/
-
-#include <stdio.h>
-#include <stdlib.h>
-#include <string.h>
-#include <math.h>
-
-#include "vorbis/codec.h"
-#include "os.h"
-#include "psy.h"
-#include "mdct.h"
-#include "smallft.h"
-#include "window.h"
-#include "scales.h"
-#include "lpc.h"
-#include "lsp.h"
-
-static vorbis_info_psy _psy_set0={
- 1,/*athp*/
- 1,/*decayp*/
-
- -100.f,
- -140.f,
-
- 8,
-
- /* 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 */
- /* x: 63 88 125 175 250 350 500 700 1k 1.4k 2k 2.8k 4k 5.6k 8k 11.5k 16k Hz */
- /* y: 0 10 20 30 40 50 60 70 80 90 100 dB */
- 1,/* tonemaskp */
- /* 0 10 20 30 40 50 60 70 80 90 100 */
- {
- {-999.f,-999.f,-999.f,-999.f,-999.f,-999.f,-999.f,-999.f,-999.f,-999.f,-999.f}, /*63*/
- {-999.f,-999.f,-999.f,-999.f,-999.f,-999.f,-999.f,-999.f,-999.f,-999.f,-999.f}, /*88*/
- {-999.f,-999.f,-999.f,-999.f,-999.f,-999.f,-999.f,-999.f,-999.f,-999.f,-999.f}, /*125*/
-
- {-35.f,-35.f,-35.f,-40.f,-40.f,-50.f,-60.f,-70.f,-80.f,-90.f,-100.f}, /*175*/
- {-35.f,-35.f,-35.f,-40.f,-40.f,-50.f,-60.f,-70.f,-80.f,-90.f,-100.f}, /*250*/
- {-35.f,-35.f,-35.f,-40.f,-40.f,-50.f,-60.f,-70.f,-80.f,-90.f,-100.f}, /*350*/
- {-35.f,-35.f,-35.f,-40.f,-40.f,-50.f,-60.f,-70.f,-80.f,-90.f,-100.f}, /*500*/
- {-35.f,-35.f,-35.f,-40.f,-40.f,-50.f,-60.f,-70.f,-80.f,-90.f,-100.f}, /*700*/
-
- {-35.f,-35.f,-35.f,-40.f,-40.f,-50.f,-60.f,-70.f,-80.f,-90.f,-100.f}, /*1000*/
- {-35.f,-35.f,-35.f,-40.f,-40.f,-50.f,-60.f,-70.f,-80.f,-90.f,-100.f}, /*1400*/
- {-40.f,-40.f,-40.f,-40.f,-40.f,-50.f,-60.f,-70.f,-80.f,-90.f,-100.f}, /*2000*/
- {-40.f,-40.f,-40.f,-40.f,-40.f,-50.f,-60.f,-70.f,-80.f,-90.f,-100.f}, /*2800*/
- {-35.f,-35.f,-35.f,-40.f,-40.f,-50.f,-60.f,-70.f,-80.f,-90.f,-100.f}, /*4000*/
- {-35.f,-35.f,-35.f,-40.f,-40.f,-50.f,-60.f,-70.f,-80.f,-90.f,-100.f}, /*5600*/
-
- {-30.f,-30.f,-33.f,-35.f,-40.f,-50.f,-60.f,-70.f,-80.f,-90.f,-100.f}, /*8000*/
- {-30.f,-30.f,-33.f,-35.f,-35.f,-45.f,-50.f,-60.f,-70.f,-90.f,-100.f}, /*11500*/
- {-24.f,-24.f,-26.f,-32.f,-32.f,-42.f,-50.f,-60.f,-70.f,-90.f,-100.f}, /*16000*/
-
- },
-
- 1,/* peakattp */
- {{-14.f,-16.f,-18.f,-19.f,-20.f,-21.f,-22.f,-22.f,-24.f,-24.f,-24.f},/*63*/
- {-14.f,-16.f,-18.f,-19.f,-20.f,-21.f,-22.f,-22.f,-24.f,-24.f,-24.f},/*88*/
- {-14.f,-16.f,-18.f,-19.f,-20.f,-21.f,-22.f,-22.f,-24.f,-24.f,-24.f},/*125*/
- {-10.f,-10.f,-10.f,-10.f,-16.f,-16.f,-18.f,-20.f,-24.f,-24.f,-24.f},/*175*/
- {-10.f,-10.f,-10.f,-10.f,-16.f,-16.f,-18.f,-20.f,-24.f,-24.f,-24.f},/*250*/
- {-10.f,-10.f,-10.f,-10.f,-16.f,-16.f,-18.f,-20.f,-22.f,-24.f,-24.f},/*350*/
- {-10.f,-10.f,-10.f,-10.f,-16.f,-16.f,-18.f,-20.f,-22.f,-24.f,-24.f},/*500*/
- {-10.f,-10.f,-10.f,-10.f,-14.f,-14.f,-16.f,-20.f,-22.f,-24.f,-24.f},/*700*/
- {-10.f,-10.f,-10.f,-10.f,-14.f,-14.f,-16.f,-20.f,-22.f,-24.f,-24.f},/*1000*/
- {-10.f,-10.f,-10.f,-10.f,-14.f,-14.f,-16.f,-20.f,-22.f,-24.f,-24.f},/*1400*/
- {-10.f,-10.f,-10.f,-10.f,-14.f,-14.f,-16.f,-20.f,-22.f,-24.f,-24.f},/*2000*/
- {-10.f,-10.f,-10.f,-12.f,-16.f,-16.f,-16.f,-20.f,-22.f,-24.f,-24.f},/*2400*/
- {-10.f,-10.f,-10.f,-12.f,-16.f,-16.f,-16.f,-20.f,-22.f,-24.f,-24.f},/*4000*/
- {-10.f,-10.f,-10.f,-12.f,-12.f,-14.f,-16.f,-18.f,-22.f,-24.f,-24.f},/*5600*/
- {-10.f,-10.f,-10.f,-10.f,-10.f,-14.f,-16.f,-18.f,-22.f,-24.f,-24.f},/*8000*/
- {-10.f,-10.f,-10.f,-10.f,-10.f,-14.f,-16.f,-18.f,-22.f,-24.f,-24.f},/*11500*/
- {-10.f,-10.f,-10.f,-10.f,-10.f,-12.f,-16.f,-18.f,-22.f,-24.f,-24.f},/*16000*/
- },
-
- 1,/*noisemaskp */
- -24.f, /* suppress any noise curve over maxspec+n */
- .5f, /* low window */
- .5f, /* high window */
- 25,
- 25,
- {.000f, 0.f, /*63*/
- .000f, 0.f, /*88*/
- .000f, 0.f, /*125*/
- .000f, 0.f, /*175*/
- .000f, 0.f, /*250*/
- .000f, 0.f, /*350*/
- .000f, 0.f, /*500*/
- .200f, 0.f, /*700*/
- .300f, 0.f, /*1000*/
- .400f, 0.f, /*1400*/
- .400f, 0.f, /*2000*/
- .400f, 0.f, /*2800*/
- .700f, 0.f, /*4000*/
- .850f, 0.f, /*5600*/
- .900f, 0.f, /*8000*/
- .900f, 0.f, /*11500*/
- .900f, 1.f, /*16000*/
- },
-
- 95.f, /* even decade + 5 is important; saves an rint() later in a
- tight loop) */
- -28.,
-
-};
-
-static int noisy=1;
-void analysis(char *base,int i,float *v,int n,int bark,int dB){
- if(noisy){
- int j;
- FILE *of;
- char buffer[80];
- sprintf(buffer,"%s_%d.m",base,i);
- of=fopen(buffer,"w");
-
- for(j=0;j<n;j++){
- if(dB && v[j]==0)
- fprintf(of,"\n\n");
- else{
- if(bark)
- fprintf(of,"%g ",toBARK(22050.f*j/n));
- else
- fprintf(of,"%g ",(float)j);
-
- if(dB){
- fprintf(of,"%g\n",todB(fabs(v+j)));
- }else{
- fprintf(of,"%g\n",v[j]);
- }
- }
- }
- fclose(of);
- }
-}
-
-long frameno=0;
-
-/****************************************************************/
-
-int main(int argc,char *argv[]){
- int eos=0;
- float nonz=0.f;
- float acc=0.f;
- float tot=0.f;
- float ampmax=-9999,newmax;
-
- int framesize=2048;
- int order=30;
- int map=256;
- float ampmax_att_per_sec=-10.;
-
- float *pcm[2],*out[2],*window,*lpc,*flr,*mask;
- signed char *buffer,*buffer2;
- mdct_lookup m_look;
- drft_lookup f_look;
- drft_lookup f_look2;
- vorbis_look_psy p_look;
- long i,j,k;
-
- int ath=0;
- int decayp=0;
-
- argv++;
- while(*argv){
- if(*argv[0]=='-'){
- /* option */
- if(argv[0][1]=='v'){
- noisy=0;
- }
- if(argv[0][1]=='o'){
- order=atoi(argv[0]+2);
- }
- if(argv[0][1]=='m'){
- map=atoi(argv[0]+2);
- }
- }else
- if(*argv[0]=='+'){
- /* option */
- if(argv[0][1]=='v'){
- noisy=1;
- }
- if(argv[0][1]=='o'){
- order=atoi(argv[0]+2);
- }
- if(argv[0][1]=='m'){
- map=atoi(argv[0]+2);
- }
- }else
- framesize=atoi(argv[0]);
- argv++;
- }
-
- mask=_ogg_malloc(framesize*sizeof(float));
- pcm[0]=_ogg_malloc(framesize*sizeof(float));
- pcm[1]=_ogg_malloc(framesize*sizeof(float));
- out[0]=_ogg_calloc(framesize/2,sizeof(float));
- out[1]=_ogg_calloc(framesize/2,sizeof(float));
- flr=_ogg_malloc(framesize*sizeof(float));
- lpc=_ogg_malloc(order*sizeof(float));
- buffer=_ogg_malloc(framesize*4);
- buffer2=buffer+framesize*2;
- window=_vorbis_window(0,framesize,framesize/2,framesize/2);
- mdct_init(&m_look,framesize);
- drft_init(&f_look,framesize);
- drft_init(&f_look2,framesize/2);
- _vp_psy_init(&p_look,&_psy_set0,framesize/2,44100);
-
- for(i=0;i<P_BANDS;i++)
- for(j=0;j<P_LEVELS;j++)
- analysis("Ptonecurve",i*100+j,p_look.tonecurves[i][j],EHMER_MAX,0,0);
-
- /* we cheat on the WAV header; we just bypass 44 bytes and never
- verify that it matches 16bit/stereo/44.1kHz. */
-
- fread(buffer,1,44,stdin);
- fwrite(buffer,1,44,stdout);
- memset(buffer,0,framesize*2);
-
- analysis("window",0,window,framesize,0,0);
-
- fprintf(stderr,"Processing for frame size %d...\n",framesize);
-
- while(!eos){
- long bytes=fread(buffer2,1,framesize*2,stdin);
- if(bytes<framesize*2)
- memset(buffer2+bytes,0,framesize*2-bytes);
-
- if(bytes!=0){
-
- /* uninterleave samples */
- for(i=0;i<framesize;i++){
- pcm[0][i]=((buffer[i*4+1]<<8)|
- (0x00ff&(int)buffer[i*4]))/32768.f;
- pcm[1][i]=((buffer[i*4+3]<<8)|
- (0x00ff&(int)buffer[i*4+2]))/32768.f;
- }
-
- {
- float secs=framesize/44100.;
-
- ampmax+=secs*ampmax_att_per_sec;
- if(ampmax<-9999)ampmax=-9999;
- }
- newmax=ampmax;
-
- for(i=0;i<2;i++){
- float amp;
-
- analysis("pre",frameno,pcm[i],framesize,0,0);
- memcpy(mask,pcm[i],sizeof(float)*framesize);
-
- /* do the psychacoustics */
- for(j=0;j<framesize;j++)
- mask[j]=pcm[i][j]*=window[j];
-
- drft_forward(&f_look,mask);
-
- mask[0]/=(framesize/4.);
- for(j=1;j<framesize-1;j+=2)
- mask[(j+1)>>1]=4*hypot(mask[j],mask[j+1])/framesize;
-
- mdct_forward(&m_look,pcm[i],pcm[i]);
- memcpy(mask+framesize/2,pcm[i],sizeof(float)*framesize/2);
- analysis("mdct",frameno,pcm[i],framesize/2,0,1);
- analysis("fft",frameno,mask,framesize/2,0,1);
-
- {
- float ret;
- ret=_vp_compute_mask(&p_look,mask,mask+framesize/2,flr,NULL,ampmax);
- if(ret>newmax)newmax=ret;
- }
-
- analysis("mask",frameno,flr,framesize/2,0,0);
-
- mask[framesize-1]=0.;
- mask[0]=0.;
- for(j=1;j<framesize-1;j+=2){
- mask[j]=todB(pcm[i]+((j+1)>>1));
- mask[j+1]=0;
- }
-
- analysis("lfft",frameno,mask,framesize,0,0);
- drft_backward(&f_look,mask);
-
- analysis("cep",frameno,mask,framesize,0,0);
- analysis("logcep",frameno,mask,framesize,0,1);
-
-
-
- /*for(j=0;j<framesize/2;j++){
- float val=fromdB(flr[j]);
- int p=rint(pcm[i][j]/val);
- pcm[i][j]=p*val;
- }*/
-
- /*for(j=0;j<framesize/2;j++){
- float val=todB(pcm[i]+j);
- if(val+6.<flr[j])
- pcm[i][j]=0.;
- }*/
-
- for(j=0;j<framesize/2;j++){
- float val=rint(todB(pcm[i]+j)/6);
- if(pcm[i][j]>0)
- pcm[i][j]=fromdB(val*6);
- else
- pcm[i][j]=-fromdB(val*6);
- }
-
-
- analysis("final",frameno,pcm[i],framesize/2,0,1);
-
- /* take it back to time */
- mdct_backward(&m_look,pcm[i],pcm[i]);
- for(j=0;j<framesize/2;j++)
- out[i][j]+=pcm[i][j]*window[j];
-
- frameno++;
- }
- ampmax=newmax;
-
- /* write data. Use the part of buffer we're about to shift out */
- for(i=0;i<2;i++){
- char *ptr=buffer+i*2;
- float *mono=out[i];
- for(j=0;j<framesize/2;j++){
- int val=mono[j]*32767.;
- /* might as well guard against clipping */
- if(val>32767)val=32767;
- if(val<-32768)val=-32768;
- ptr[0]=val&0xff;
- ptr[1]=(val>>8)&0xff;
- ptr+=4;
- }
- }
-
- fprintf(stderr,"*");
- fwrite(buffer,1,framesize*2,stdout);
- memmove(buffer,buffer2,framesize*2);
-
- for(i=0;i<2;i++){
- for(j=0,k=framesize/2;j<framesize/2;j++,k++)
- out[i][j]=pcm[i][k]*window[k];
- }
- }else
- eos=1;
- }
- fprintf(stderr,"average raw bits of entropy: %.03g/sample\n",acc/tot);
- fprintf(stderr,"average nonzero samples: %.03g/%d\n",nonz/tot*framesize/2,
- framesize/2);
- fprintf(stderr,"Done\n\n");
- return 0;
-}
diff --git a/lib/registry.c b/lib/registry.c
deleted file mode 100644
index c35b6bb9..00000000
--- a/lib/registry.c
+++ /dev/null
@@ -1,51 +0,0 @@
-/********************************************************************
- * *
- * 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: registry for time, floor, res backends and channel mappings
- last mod: $Id: registry.c,v 1.8 2001/06/15 21:15:40 xiphmont Exp $
-
- ********************************************************************/
-
-#include "vorbis/codec.h"
-#include "registry.h"
-#include "misc.h"
-
-/* seems like major overkill now; the backend numbers will grow into
- the infrastructure soon enough */
-
-extern vorbis_func_time time0_exportbundle;
-extern vorbis_func_floor floor0_exportbundle;
-extern vorbis_func_floor floor1_exportbundle;
-extern vorbis_func_residue residue0_exportbundle;
-extern vorbis_func_residue residue1_exportbundle;
-extern vorbis_func_residue residue2_exportbundle;
-extern vorbis_func_mapping mapping0_exportbundle;
-
-vorbis_func_time *_time_P[]={
- &time0_exportbundle,
-};
-
-vorbis_func_floor *_floor_P[]={
- &floor0_exportbundle,
- &floor1_exportbundle,
-};
-
-vorbis_func_residue *_residue_P[]={
- &residue0_exportbundle,
- &residue1_exportbundle,
- &residue2_exportbundle,
-};
-
-vorbis_func_mapping *_mapping_P[]={
- &mapping0_exportbundle,
-};
-
diff --git a/lib/registry.h b/lib/registry.h
deleted file mode 100644
index 53d7c4a7..00000000
--- a/lib/registry.h
+++ /dev/null
@@ -1,35 +0,0 @@
-/********************************************************************
- * *
- * 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: registry for time, floor, res backends and channel mappings
- last mod: $Id: registry.h,v 1.7 2001/06/15 21:15:40 xiphmont Exp $
-
- ********************************************************************/
-
-#ifndef _V_REG_H_
-#define _V_REG_H_
-
-#include "backends.h"
-
-#define VI_TRANSFORMB 1
-#define VI_WINDOWB 1
-#define VI_TIMEB 1
-#define VI_FLOORB 2
-#define VI_RESB 3
-#define VI_MAPB 1
-
-extern vorbis_func_time *_time_P[];
-extern vorbis_func_floor *_floor_P[];
-extern vorbis_func_residue *_residue_P[];
-extern vorbis_func_mapping *_mapping_P[];
-
-#endif
diff --git a/lib/res0.c b/lib/res0.c
deleted file mode 100644
index 20df837b..00000000
--- a/lib/res0.c
+++ /dev/null
@@ -1,688 +0,0 @@
-/********************************************************************
- * *
- * 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: residue backend 0, 1 and 2 implementation
- last mod: $Id: res0.c,v 1.32 2001/06/15 23:31:00 xiphmont Exp $
-
- ********************************************************************/
-
-/* Slow, slow, slow, simpleminded and did I mention it was slow? The
- encode/decode loops are coded for clarity and performance is not
- yet even a nagging little idea lurking in the shadows. Oh and BTW,
- it's slow. */
-
-#include <stdlib.h>
-#include <string.h>
-#include <math.h>
-#include <stdio.h>
-#include <ogg/ogg.h>
-#include "vorbis/codec.h"
-#include "codec_internal.h"
-#include "registry.h"
-#include "codebook.h"
-#include "misc.h"
-#include "os.h"
-
-typedef struct {
- vorbis_info_residue0 *info;
- int map;
-
- int parts;
- int stages;
- codebook *fullbooks;
- codebook *phrasebook;
- codebook ***partbooks;
-
- int partvals;
- int **decodemap;
-
- /*long resbits[32][32];
- long resbitsflat;
- long resvals[32];
- long phrasebits;
- long frames;*/
-
-} vorbis_look_residue0;
-
-vorbis_info_residue *res0_copy_info(vorbis_info_residue *vr){
- vorbis_info_residue0 *info=(vorbis_info_residue0 *)vr;
- vorbis_info_residue0 *ret=_ogg_malloc(sizeof(vorbis_info_residue0));
- memcpy(ret,info,sizeof(vorbis_info_residue0));
- return(ret);
-}
-
-void res0_free_info(vorbis_info_residue *i){
- if(i){
- memset(i,0,sizeof(vorbis_info_residue0));
- _ogg_free(i);
- }
-}
-
-void res0_free_look(vorbis_look_residue *i){
- int j,k;
- if(i){
-
- vorbis_look_residue0 *look=(vorbis_look_residue0 *)i;
- vorbis_info_residue0 *info=look->info;
-
- /*fprintf(stderr,
- "%ld frames encoded in %ld phrasebits and %ld residue bits "
- "(%g/frame) \n",look->frames,look->phrasebits,
- look->resbitsflat,
- (look->phrasebits+look->resbitsflat)/(float)look->frames);
-
- for(j=0;j<look->parts;j++){
- long acc=0;
- fprintf(stderr,"\t[%d] == ",j);
- for(k=0;k<look->stages;k++)
- if((info->secondstages[j]>>k)&1){
- fprintf(stderr,"%ld,",look->resbits[j][k]);
- acc+=look->resbits[j][k];
- }
-
- fprintf(stderr,":: (%ld vals) %1.2fbits/sample\n",look->resvals[j],
- acc?(float)acc/(look->resvals[j]*info->grouping):0);
- }
- fprintf(stderr,"\n");*/
-
- for(j=0;j<look->parts;j++)
- if(look->partbooks[j])_ogg_free(look->partbooks[j]);
- _ogg_free(look->partbooks);
- for(j=0;j<look->partvals;j++)
- _ogg_free(look->decodemap[j]);
- _ogg_free(look->decodemap);
- memset(i,0,sizeof(vorbis_look_residue0));
- _ogg_free(i);
- }
-}
-
-static int ilog(unsigned int v){
- int ret=0;
- while(v){
- ret++;
- v>>=1;
- }
- return(ret);
-}
-
-static int icount(unsigned int v){
- int ret=0;
- while(v){
- ret+=v&1;
- v>>=1;
- }
- return(ret);
-}
-
-
-void res0_pack(vorbis_info_residue *vr,oggpack_buffer *opb){
- vorbis_info_residue0 *info=(vorbis_info_residue0 *)vr;
- int j,acc=0;
- oggpack_write(opb,info->begin,24);
- oggpack_write(opb,info->end,24);
-
- oggpack_write(opb,info->grouping-1,24); /* residue vectors to group and
- code with a partitioned book */
- oggpack_write(opb,info->partitions-1,6); /* possible partition choices */
- oggpack_write(opb,info->groupbook,8); /* group huffman book */
-
- /* secondstages is a bitmask; as encoding progresses pass by pass, a
- bitmask of one indicates this partition class has bits to write
- this pass */
- for(j=0;j<info->partitions;j++){
- if(ilog(info->secondstages[j])>3){
- /* yes, this is a minor hack due to not thinking ahead */
- oggpack_write(opb,info->secondstages[j],3);
- oggpack_write(opb,1,1);
- oggpack_write(opb,info->secondstages[j]>>3,5);
- }else
- oggpack_write(opb,info->secondstages[j],4); /* trailing zero */
- acc+=icount(info->secondstages[j]);
- }
- for(j=0;j<acc;j++)
- oggpack_write(opb,info->booklist[j],8);
-
-}
-
-/* vorbis_info is for range checking */
-vorbis_info_residue *res0_unpack(vorbis_info *vi,oggpack_buffer *opb){
- int j,acc=0;
- vorbis_info_residue0 *info=_ogg_calloc(1,sizeof(vorbis_info_residue0));
- codec_setup_info *ci=vi->codec_setup;
-
- info->begin=oggpack_read(opb,24);
- info->end=oggpack_read(opb,24);
- info->grouping=oggpack_read(opb,24)+1;
- info->partitions=oggpack_read(opb,6)+1;
- info->groupbook=oggpack_read(opb,8);
-
- for(j=0;j<info->partitions;j++){
- int cascade=oggpack_read(opb,3);
- if(oggpack_read(opb,1))
- cascade|=(oggpack_read(opb,5)<<3);
- info->secondstages[j]=cascade;
-
- acc+=icount(cascade);
- }
- for(j=0;j<acc;j++)
- info->booklist[j]=oggpack_read(opb,8);
-
- if(info->groupbook>=ci->books)goto errout;
- for(j=0;j<acc;j++)
- if(info->booklist[j]>=ci->books)goto errout;
-
- return(info);
- errout:
- res0_free_info(info);
- return(NULL);
-}
-
-vorbis_look_residue *res0_look (vorbis_dsp_state *vd,vorbis_info_mode *vm,
- vorbis_info_residue *vr){
- vorbis_info_residue0 *info=(vorbis_info_residue0 *)vr;
- vorbis_look_residue0 *look=_ogg_calloc(1,sizeof(vorbis_look_residue0));
- backend_lookup_state *be=vd->backend_state;
-
- int j,k,acc=0;
- int dim;
- int maxstage=0;
- look->info=info;
- look->map=vm->mapping;
-
- look->parts=info->partitions;
- look->fullbooks=be->fullbooks;
- look->phrasebook=be->fullbooks+info->groupbook;
- dim=look->phrasebook->dim;
-
- look->partbooks=_ogg_calloc(look->parts,sizeof(codebook **));
-
- for(j=0;j<look->parts;j++){
- int stages=ilog(info->secondstages[j]);
- if(stages){
- if(stages>maxstage)maxstage=stages;
- look->partbooks[j]=_ogg_calloc(stages,sizeof(codebook *));
- for(k=0;k<stages;k++)
- if(info->secondstages[j]&(1<<k))
- look->partbooks[j][k]=be->fullbooks+info->booklist[acc++];
- }
- }
-
- look->partvals=rint(pow(look->parts,dim));
- look->stages=maxstage;
- look->decodemap=_ogg_malloc(look->partvals*sizeof(int *));
- for(j=0;j<look->partvals;j++){
- long val=j;
- long mult=look->partvals/look->parts;
- look->decodemap[j]=_ogg_malloc(dim*sizeof(int));
- for(k=0;k<dim;k++){
- long deco=val/mult;
- val-=deco*mult;
- mult/=look->parts;
- look->decodemap[j][k]=deco;
- }
- }
-
- return(look);
-}
-
-
-/* does not guard against invalid settings; eg, a subn of 16 and a
- subgroup request of 32. Max subn of 128 */
-static int _interleaved_testhack(float *vec,int n,vorbis_look_residue0 *look,
- int auxparts,int auxpartnum){
- vorbis_info_residue0 *info=look->info;
- int i,j=0;
- float max,localmax=0.f;
- float temp[128];
- float entropy[8];
-
- /* setup */
- for(i=0;i<n;i++)temp[i]=fabs(vec[i]);
-
- /* handle case subgrp==1 outside */
- for(i=0;i<n;i++)
- if(temp[i]>localmax)localmax=temp[i];
- max=localmax;
-
- for(i=0;i<n;i++)temp[i]=rint(temp[i]);
-
- while(1){
- entropy[j]=localmax;
- n>>=1;
- if(!n)break;
- j++;
-
- for(i=0;i<n;i++){
- temp[i]+=temp[i+n];
- }
- localmax=0.f;
- for(i=0;i<n;i++)
- if(temp[i]>localmax)localmax=temp[i];
- }
-
- for(i=0;i<auxparts-1;i++)
- if(auxpartnum<info->blimit[i] &&
- entropy[info->subgrp[i]]<=info->entmax[i] &&
- max<=info->ampmax[i])
- break;
-
- return(i);
-}
-
-static int _testhack(float *vec,int n,vorbis_look_residue0 *look,
- int auxparts,int auxpartnum){
- vorbis_info_residue0 *info=look->info;
- int i,j=0;
- float max,localmax=0.f;
- float temp[128];
- float entropy[8];
-
- /* setup */
- for(i=0;i<n;i++)temp[i]=fabs(vec[i]);
-
- /* handle case subgrp==1 outside */
- for(i=0;i<n;i++)
- if(temp[i]>localmax)localmax=temp[i];
- max=localmax;
-
- for(i=0;i<n;i++)temp[i]=rint(temp[i]);
-
- while(n){
- entropy[j]=localmax;
- n>>=1;
- j++;
- if(!n)break;
- for(i=0;i<n;i++){
- temp[i]=temp[i*2]+temp[i*2+1];
- }
- localmax=0.f;
- for(i=0;i<n;i++)
- if(temp[i]>localmax)localmax=temp[i];
- }
-
- for(i=0;i<auxparts-1;i++)
- if(auxpartnum<info->blimit[i] &&
- entropy[info->subgrp[i]]<=info->entmax[i] &&
- max<=info->ampmax[i])
- break;
-
- return(i);
-}
-
-static int _interleaved_encodepart(oggpack_buffer *opb,float *vec, int n,
- codebook *book,vorbis_look_residue0 *look){
- 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);
-}
-
-static int _encodepart(oggpack_buffer *opb,float *vec, int n,
- codebook *book,vorbis_look_residue0 *look){
- 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);
-}
-
-static int _01forward(vorbis_block *vb,vorbis_look_residue *vl,
- float **in,int ch,
- int (*classify)(float *,int,vorbis_look_residue0 *,
- int,int),
- int (*encode)(oggpack_buffer *,float *,int,
- codebook *,vorbis_look_residue0 *)){
- long i,j,k,l,s;
- vorbis_look_residue0 *look=(vorbis_look_residue0 *)vl;
- vorbis_info_residue0 *info=look->info;
-
- /* move all this setup out later */
- int samples_per_partition=info->grouping;
- int possible_partitions=info->partitions;
- int partitions_per_word=look->phrasebook->dim;
- int n=info->end-info->begin;
-
- int partvals=n/samples_per_partition;
- int partwords=(partvals+partitions_per_word-1)/partitions_per_word;
- long **partword=_vorbis_block_alloc(vb,ch*sizeof(long *));
-
-#ifdef TRAIN_RES
- FILE *of;
- char buffer[80];
- int m;
-
- for(i=0;i<ch;i++){
- sprintf(buffer,"residue_%d.vqd",vb->mode);
- of=fopen(buffer,"a");
- for(m=0;m<info->end;m++)
- fprintf(of,"%.2f, ",in[i][m]);
- fprintf(of,"\n");
- fclose(of);
- }
-
-#endif
-
- partvals=partwords*partitions_per_word;
-
- /* we find the patition type for each partition of each
- channel. We'll go back and do the interleaved encoding in a
- bit. For now, clarity */
-
- for(i=0;i<ch;i++){
- partword[i]=_vorbis_block_alloc(vb,n/samples_per_partition*sizeof(long));
- memset(partword[i],0,n/samples_per_partition*sizeof(long));
- }
-
- for(i=info->begin,l=0;i<info->end;i+=samples_per_partition,l++){
- for(j=0;j<ch;j++)
- /* do the partition decision based on the 'entropy'
- int the block */
- partword[j][l]=
- classify(in[j]+i,samples_per_partition,look,possible_partitions,l);
-
- }
-
- /* we code the partition words for each channel, then the residual
- words for a partition per channel until we've written all the
- residual words for that partition word. Then write the next
- partition channel words... */
-
- /*look->frames++;*/
- for(s=0;s<look->stages;s++){
- for(i=info->begin,l=0;i<info->end;){
-
- /* first we encode a partition codeword for each channel */
- if(s==0){
- for(j=0;j<ch;j++){
- long val=partword[j][l];
- long ret;
- for(k=1;k<partitions_per_word;k++)
- val= val*possible_partitions+partword[j][l+k];
- ret=vorbis_book_encode(look->phrasebook,val,&vb->opb);
- /*look->phrasebits+=ret;*/
- }
- }
-
- /* now we encode interleaved residual values for the partitions */
- for(k=0;k<partitions_per_word;k++,l++,i+=samples_per_partition){
-
- for(j=0;j<ch;j++){
- /*if(s==0)look->resvals[partword[j][l]]++;*/
- if(info->secondstages[partword[j][l]]&(1<<s)){
- codebook *statebook=look->partbooks[partword[j][l]][s];
- if(statebook){
- int ret=encode(&vb->opb,in[j]+i,samples_per_partition,
- statebook,look);
- /*look->resbits[partword[j][l]][s]+=ret;
- look->resbitsflat+=ret;*/
-
- }
- }
- }
- }
- }
- }
-
- return(0);
-}
-
-/* a truncated packet here just means 'stop working'; it's not an error */
-static int _01inverse(vorbis_block *vb,vorbis_look_residue *vl,
- float **in,int ch,
- long (*decodepart)(codebook *, float *,
- oggpack_buffer *,int)){
-
- long i,j,k,l,s;
- vorbis_look_residue0 *look=(vorbis_look_residue0 *)vl;
- vorbis_info_residue0 *info=look->info;
-
- /* move all this setup out later */
- int samples_per_partition=info->grouping;
- int partitions_per_word=look->phrasebook->dim;
- int n=info->end-info->begin;
-
- int partvals=n/samples_per_partition;
- int partwords=(partvals+partitions_per_word-1)/partitions_per_word;
- int ***partword=alloca(ch*sizeof(int **));
- partvals=partwords*partitions_per_word;
-
- for(j=0;j<ch;j++)
- partword[j]=_vorbis_block_alloc(vb,partwords*sizeof(int *));
-
- for(s=0;s<look->stages;s++){
- for(i=info->begin,l=0;i<info->end;l++){
-
- if(s==0){
- /* fetch the partition word for each channel */
- for(j=0;j<ch;j++){
- int temp=vorbis_book_decode(look->phrasebook,&vb->opb);
- if(temp==-1)goto eopbreak;
- partword[j][l]=look->decodemap[temp];
- if(partword[j][l]==NULL)goto errout;
- }
- }
-
- /* now we decode residual values for the partitions */
- for(k=0;k<partitions_per_word;k++,i+=samples_per_partition)
- for(j=0;j<ch;j++){
- if(info->secondstages[partword[j][l][k]]&(1<<s)){
- codebook *stagebook=look->partbooks[partword[j][l][k]][s];
- if(stagebook){
- if(decodepart(stagebook,in[j]+i,&vb->opb,
- samples_per_partition)==-1)goto eopbreak;
- }
- }
- }
- }
- }
-
- errout:
- eopbreak:
- return(0);
-}
-
-/* residue 0 and 1 are just slight variants of one another. 0 is
- interleaved, 1 is not */
-int res0_forward(vorbis_block *vb,vorbis_look_residue *vl,
- float **in,int *nonzero,int ch){
- /* we encode only the nonzero parts of a bundle */
- int i,used=0;
- for(i=0;i<ch;i++)
- if(nonzero[i])
- in[used++]=in[i];
- if(used)
- return(_01forward(vb,vl,in,used,_interleaved_testhack,_interleaved_encodepart));
- else
- return(0);
-}
-
-int res0_inverse(vorbis_block *vb,vorbis_look_residue *vl,
- float **in,int *nonzero,int ch){
- int i,used=0;
- for(i=0;i<ch;i++)
- if(nonzero[i])
- in[used++]=in[i];
- if(used)
- return(_01inverse(vb,vl,in,used,vorbis_book_decodevs_add));
- else
- return(0);
-}
-
-int res1_forward(vorbis_block *vb,vorbis_look_residue *vl,
- float **in,int *nonzero,int ch){
- int i,used=0;
- for(i=0;i<ch;i++)
- if(nonzero[i])
- in[used++]=in[i];
- if(used)
- return(_01forward(vb,vl,in,used,_testhack,_encodepart));
- else
- return(0);
-}
-
-int res1_inverse(vorbis_block *vb,vorbis_look_residue *vl,
- float **in,int *nonzero,int ch){
- int i,used=0;
- for(i=0;i<ch;i++)
- if(nonzero[i])
- in[used++]=in[i];
- if(used)
- return(_01inverse(vb,vl,in,used,vorbis_book_decodev_add));
- else
- return(0);
-}
-
-/* res2 is slightly more different; all the channels are interleaved
- into a single vector and encoded. */
-int res2_forward(vorbis_block *vb,vorbis_look_residue *vl,
- float **in,int *nonzero,int ch){
- long i,j,k,n=vb->pcmend/2,used=0;
-
- /* don't duplicate the code; use a working vector hack for now and
- reshape ourselves into a single channel res1 */
- float *work=_vorbis_block_alloc(vb,ch*n*sizeof(float));
- for(i=0;i<ch;i++){
- float *pcm=vb->pcm[i];
- if(nonzero[i])used++;
- for(j=0,k=i;j<n;j++,k+=ch)
- work[k]=pcm[j];
- }
-
- if(used)
- return(_01forward(vb,vl,&work,1,_testhack,_encodepart));
- else
- return(0);
-}
-
-/* duplicate code here as speed is somewhat more important */
-int res2_inverse(vorbis_block *vb,vorbis_look_residue *vl,
- float **in,int *nonzero,int ch){
- long i,k,l,s;
- vorbis_look_residue0 *look=(vorbis_look_residue0 *)vl;
- vorbis_info_residue0 *info=look->info;
-
- /* move all this setup out later */
- int samples_per_partition=info->grouping;
- int partitions_per_word=look->phrasebook->dim;
- int n=info->end-info->begin;
-
- int partvals=n/samples_per_partition;
- int partwords=(partvals+partitions_per_word-1)/partitions_per_word;
- int **partword=_vorbis_block_alloc(vb,partwords*sizeof(int *));
- int used;
- partvals=partwords*partitions_per_word;
-
- for(i=0;i<ch;i++)if(nonzero[i])break;
- if(i==ch)return(0); /* no nonzero vectors */
-
- for(s=0;s<look->stages;s++){
- for(i=info->begin,l=0;i<info->end;l++){
-
- if(s==0){
- /* fetch the partition word */
- int temp=vorbis_book_decode(look->phrasebook,&vb->opb);
- if(temp==-1)goto eopbreak;
- partword[l]=look->decodemap[temp];
- if(partword[l]==NULL)goto errout;
- }
-
- /* now we decode residual values for the partitions */
- for(k=0;k<partitions_per_word;k++,i+=samples_per_partition)
- if(info->secondstages[partword[l][k]]&(1<<s)){
- codebook *stagebook=look->partbooks[partword[l][k]][s];
-
- if(stagebook){
- if(vorbis_book_decodevv_add(stagebook,in,i,ch,
- &vb->opb,samples_per_partition)==-1)
- goto eopbreak;
- }
- }
- }
- }
-
- errout:
- eopbreak:
- return(0);
-}
-
-
-vorbis_func_residue residue0_exportbundle={
- &res0_pack,
- &res0_unpack,
- &res0_look,
- &res0_copy_info,
- &res0_free_info,
- &res0_free_look,
- &res0_forward,
- &res0_inverse
-};
-
-vorbis_func_residue residue1_exportbundle={
- &res0_pack,
- &res0_unpack,
- &res0_look,
- &res0_copy_info,
- &res0_free_info,
- &res0_free_look,
- &res1_forward,
- &res1_inverse
-};
-
-vorbis_func_residue residue2_exportbundle={
- &res0_pack,
- &res0_unpack,
- &res0_look,
- &res0_copy_info,
- &res0_free_info,
- &res0_free_look,
- &res2_forward,
- &res2_inverse
-};
diff --git a/lib/scales.h b/lib/scales.h
deleted file mode 100644
index 1f44889d..00000000
--- a/lib/scales.h
+++ /dev/null
@@ -1,132 +0,0 @@
-/********************************************************************
- * *
- * 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: linear scale -> dB, Bark and Mel scales
- last mod: $Id: scales.h,v 1.16 2001/05/27 06:44:01 xiphmont Exp $
-
- ********************************************************************/
-
-#ifndef _V_SCALE_H_
-#define _V_SCALES_H_
-
-#include <math.h>
-#include "os.h"
-
-/* 20log10(x) */
-#ifdef VORBIS_IEEE_FLOAT32
-static float todB_LOOKUP[256]={
- -140.277330f, -139.633636f, -139.034372f, -138.473797f,
- -137.450747f, -136.535597f, -135.707743f, -134.951972f,
- -134.256730f, -133.613036f, -133.013772f, -132.453198f,
- -131.430147f, -130.514997f, -129.687144f, -128.931372f,
- -128.236130f, -127.592437f, -126.993172f, -126.432598f,
- -125.409547f, -124.494397f, -123.666544f, -122.910772f,
- -122.215530f, -121.571837f, -120.972572f, -120.411998f,
- -119.388947f, -118.473797f, -117.645944f, -116.890173f,
- -116.194930f, -115.551237f, -114.951972f, -114.391398f,
- -113.368347f, -112.453198f, -111.625344f, -110.869573f,
- -110.174331f, -109.530637f, -108.931372f, -108.370798f,
- -107.347748f, -106.432598f, -105.604744f, -104.848973f,
- -104.153731f, -103.510037f, -102.910773f, -102.350198f,
- -101.327148f, -100.411998f, -99.584144f, -98.828373f,
- -98.133131f, -97.489437f, -96.890173f, -96.329598f,
- -95.306548f, -94.391398f, -93.563544f, -92.807773f,
- -92.112531f, -91.468837f, -90.869573f, -90.308998f,
- -89.285948f, -88.370798f, -87.542944f, -86.787173f,
- -86.091931f, -85.448237f, -84.848973f, -84.288398f,
- -83.265348f, -82.350198f, -81.522344f, -80.766573f,
- -80.071331f, -79.427637f, -78.828373f, -78.267799f,
- -77.244748f, -76.329598f, -75.501745f, -74.745973f,
- -74.050731f, -73.407038f, -72.807773f, -72.247199f,
- -71.224148f, -70.308998f, -69.481145f, -68.725373f,
- -68.030131f, -67.386438f, -66.787173f, -66.226599f,
- -65.203548f, -64.288399f, -63.460545f, -62.704774f,
- -62.009531f, -61.365838f, -60.766573f, -60.205999f,
- -59.182948f, -58.267799f, -57.439945f, -56.684174f,
- -55.988932f, -55.345238f, -54.745973f, -54.185399f,
- -53.162349f, -52.247199f, -51.419345f, -50.663574f,
- -49.968332f, -49.324638f, -48.725374f, -48.164799f,
- -47.141749f, -46.226599f, -45.398745f, -44.642974f,
- -43.947732f, -43.304038f, -42.704774f, -42.144199f,
- -41.121149f, -40.205999f, -39.378145f, -38.622374f,
- -37.927132f, -37.283438f, -36.684174f, -36.123599f,
- -35.100549f, -34.185399f, -33.357545f, -32.601774f,
- -31.906532f, -31.262838f, -30.663574f, -30.102999f,
- -29.079949f, -28.164799f, -27.336945f, -26.581174f,
- -25.885932f, -25.242238f, -24.642974f, -24.082400f,
- -23.059349f, -22.144199f, -21.316346f, -20.560574f,
- -19.865332f, -19.221639f, -18.622374f, -18.061800f,
- -17.038749f, -16.123599f, -15.295746f, -14.539974f,
- -13.844732f, -13.201039f, -12.601774f, -12.041200f,
- -11.018149f, -10.103000f, -9.275146f, -8.519375f,
- -7.824132f, -7.180439f, -6.581174f, -6.020600f,
- -4.997549f, -4.082400f, -3.254546f, -2.498775f,
- -1.803533f, -1.159839f, -0.560574f, 0.000000f,
- 1.023050f, 1.938200f, 2.766054f, 3.521825f,
- 4.217067f, 4.860761f, 5.460025f, 6.020600f,
- 7.043650f, 7.958800f, 8.786654f, 9.542425f,
- 10.237667f, 10.881361f, 11.480625f, 12.041200f,
- 13.064250f, 13.979400f, 14.807254f, 15.563025f,
- 16.258267f, 16.901961f, 17.501225f, 18.061800f,
- 19.084850f, 20.000000f, 20.827854f, 21.583625f,
- 22.278867f, 22.922561f, 23.521825f, 24.082400f,
- 25.105450f, 26.020600f, 26.848453f, 27.604225f,
- 28.299467f, 28.943161f, 29.542425f, 30.102999f,
- 31.126050f, 32.041200f, 32.869053f, 33.624825f,
- 34.320067f, 34.963760f, 35.563025f, 36.123599f,
- 37.146650f, 38.061800f, 38.889653f, 39.645424f,
- 40.340667f, 40.984360f, 41.583625f, 42.144199f,
- 43.167250f, 44.082399f, 44.910253f, 45.666024f,
- 46.361266f, 47.004960f, 47.604225f, 48.164799f,
- 49.187850f, 50.102999f, 50.930853f, 51.686624f
-};
-
-static float todB(const float *x){
- ogg_int32_t *i=(ogg_int32_t *)x;
- ogg_int32_t temp=((*i&0x7fffffff)-0x33cfffff)>>20;
- if(temp<0)return -400.f;
- return(todB_LOOKUP[temp]);
-}
-
-#define todB_nn(x) todB(x)
-
-#else
-
-#define todB(x) (*(x)==0?-400.f:log(*(x)**(x))*4.34294480f)
-#define todB_nn(x) (*(x)==0.f?-400.f:log(*(x))*8.6858896f)
-
-#endif
-
-#define fromdB(x) (exp((x)*.11512925f))
-
-/* The bark scale equations are approximations, since the original
- table was somewhat hand rolled. The below are chosen to have the
- best possible fit to the rolled tables, thus their somewhat odd
- appearance (these are more accurate and over a longer range than
- the oft-quoted bark equations found in the texts I have). The
- approximations are valid from 0 - 30kHz (nyquist) or so.
-
- all f in Hz, z in Bark */
-
-#define toBARK(n) (13.1f*atan(.00074f*(n))+2.24f*atan((n)*(n)*1.85e-8f)+1e-4f*(n))
-#define fromBARK(z) (102.f*(z)-2.f*pow(z,2.f)+.4f*pow(z,3.f)+pow(1.46f,z)-1.f)
-#define toMEL(n) (log(1.f+(n)*.001f)*1442.695f)
-#define fromMEL(m) (1000.f*exp((m)/1442.695f)-1000.f)
-
-/* Frequency to octave. We arbitrarily declare 63.5 Hz to be octave
- 0.0 */
-
-#define toOC(n) (log(n)*1.442695f-5.965784f)
-#define fromOC(o) (exp(((o)+5.965784f)*.693147f))
-
-#endif
-
diff --git a/lib/sharedbook.c b/lib/sharedbook.c
deleted file mode 100644
index e6898c68..00000000
--- a/lib/sharedbook.c
+++ /dev/null
@@ -1,677 +0,0 @@
-/********************************************************************
- * *
- * 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: basic shared codebook operations
- last mod: $Id: sharedbook.c,v 1.16 2001/02/26 03:50:43 xiphmont Exp $
-
- ********************************************************************/
-
-#include <stdlib.h>
-#include <math.h>
-#include <string.h>
-#include <ogg/ogg.h>
-#include "os.h"
-#include "vorbis/codec.h"
-#include "codebook.h"
-#include "scales.h"
-
-/**** pack/unpack helpers ******************************************/
-int _ilog(unsigned int v){
- int ret=0;
- while(v){
- ret++;
- v>>=1;
- }
- return(ret);
-}
-
-/* 32 bit float (not IEEE; nonnormalized mantissa +
- biased exponent) : neeeeeee eeemmmmm mmmmmmmm mmmmmmmm
- Why not IEEE? It's just not that important here. */
-
-#define VQ_FEXP 10
-#define VQ_FMAN 21
-#define VQ_FEXP_BIAS 768 /* bias toward values smaller than 1. */
-
-/* doesn't currently guard under/overflow */
-long _float32_pack(float val){
- int sign=0;
- long exp;
- long mant;
- if(val<0){
- sign=0x80000000;
- val= -val;
- }
- exp= floor(log(val)/log(2));
- mant=rint(ldexp(val,(VQ_FMAN-1)-exp));
- exp=(exp+VQ_FEXP_BIAS)<<VQ_FMAN;
-
- return(sign|exp|mant);
-}
-
-float _float32_unpack(long val){
- double mant=val&0x1fffff;
- int sign=val&0x80000000;
- long exp =(val&0x7fe00000L)>>VQ_FMAN;
- if(sign)mant= -mant;
- return(ldexp(mant,exp-(VQ_FMAN-1)-VQ_FEXP_BIAS));
-}
-
-/* given a list of word lengths, generate a list of codewords. Works
- for length ordered or unordered, always assigns the lowest valued
- codewords first. Extended to handle unused entries (length 0) */
-long *_make_words(long *l,long n){
- long i,j;
- long marker[33];
- long *r=_ogg_malloc(n*sizeof(long));
- memset(marker,0,sizeof(marker));
-
- for(i=0;i<n;i++){
- long length=l[i];
- if(length>0){
- long entry=marker[length];
-
- /* when we claim a node for an entry, we also claim the nodes
- below it (pruning off the imagined tree that may have dangled
- from it) as well as blocking the use of any nodes directly
- above for leaves */
-
- /* update ourself */
- if(length<32 && (entry>>length)){
- /* error condition; the lengths must specify an overpopulated tree */
- _ogg_free(r);
- return(NULL);
- }
- r[i]=entry;
-
- /* Look to see if the next shorter marker points to the node
- above. if so, update it and repeat. */
- {
- for(j=length;j>0;j--){
-
- if(marker[j]&1){
- /* have to jump branches */
- if(j==1)
- marker[1]++;
- else
- marker[j]=marker[j-1]<<1;
- break; /* invariant says next upper marker would already
- have been moved if it was on the same path */
- }
- marker[j]++;
- }
- }
-
- /* prune the tree; the implicit invariant says all the longer
- markers were dangling from our just-taken node. Dangle them
- from our *new* node. */
- for(j=length+1;j<33;j++)
- if((marker[j]>>1) == entry){
- entry=marker[j];
- marker[j]=marker[j-1]<<1;
- }else
- break;
- }
- }
-
- /* bitreverse the words because our bitwise packer/unpacker is LSb
- endian */
- for(i=0;i<n;i++){
- long temp=0;
- for(j=0;j<l[i];j++){
- temp<<=1;
- temp|=(r[i]>>j)&1;
- }
- r[i]=temp;
- }
-
- return(r);
-}
-
-/* build the decode helper tree from the codewords */
-decode_aux *_make_decode_tree(codebook *c){
- const static_codebook *s=c->c;
- long top=0,i,j,n;
- decode_aux *t=_ogg_malloc(sizeof(decode_aux));
- long *ptr0=t->ptr0=_ogg_calloc(c->entries*2,sizeof(long));
- long *ptr1=t->ptr1=_ogg_calloc(c->entries*2,sizeof(long));
- long *codelist=_make_words(s->lengthlist,s->entries);
-
- if(codelist==NULL)return(NULL);
- t->aux=c->entries*2;
-
- for(i=0;i<c->entries;i++){
- if(s->lengthlist[i]>0){
- long ptr=0;
- for(j=0;j<s->lengthlist[i]-1;j++){
- int bit=(codelist[i]>>j)&1;
- if(!bit){
- if(!ptr0[ptr])
- ptr0[ptr]= ++top;
- ptr=ptr0[ptr];
- }else{
- if(!ptr1[ptr])
- ptr1[ptr]= ++top;
- ptr=ptr1[ptr];
- }
- }
- if(!((codelist[i]>>j)&1))
- ptr0[ptr]=-i;
- else
- ptr1[ptr]=-i;
- }
- }
- _ogg_free(codelist);
-
- t->tabn = _ilog(c->entries)-4; /* this is magic */
- if(t->tabn<5)t->tabn=5;
- n = 1<<t->tabn;
- t->tab = _ogg_malloc(n*sizeof(long));
- t->tabl = _ogg_malloc(n*sizeof(int));
- for (i = 0; i < n; i++) {
- long p = 0;
- for (j = 0; j < t->tabn && (p > 0 || j == 0); j++) {
- if (i & (1 << j))
- p = ptr1[p];
- else
- p = ptr0[p];
- }
- /* now j == length, and p == -code */
- t->tab[i] = p;
- t->tabl[i] = j;
- }
-
- return(t);
-}
-
-/* there might be a straightforward one-line way to do the below
- that's portable and totally safe against roundoff, but I haven't
- thought of it. Therefore, we opt on the side of caution */
-long _book_maptype1_quantvals(const static_codebook *b){
- long vals=floor(pow(b->entries,1.f/b->dim));
-
- /* the above *should* be reliable, but we'll not assume that FP is
- ever reliable when bitstream sync is at stake; verify via integer
- means that vals really is the greatest value of dim for which
- vals^b->bim <= b->entries */
- /* treat the above as an initial guess */
- while(1){
- long acc=1;
- long acc1=1;
- int i;
- for(i=0;i<b->dim;i++){
- acc*=vals;
- acc1*=vals+1;
- }
- if(acc<=b->entries && acc1>b->entries){
- return(vals);
- }else{
- if(acc>b->entries){
- vals--;
- }else{
- vals++;
- }
- }
- }
-}
-
-/* unpack the quantized list of values for encode/decode ***********/
-/* we need to deal with two map types: in map type 1, the values are
- generated algorithmically (each column of the vector counts through
- the values in the quant vector). in map type 2, all the values came
- in in an explicit list. Both value lists must be unpacked */
-float *_book_unquantize(const static_codebook *b){
- long j,k;
- if(b->maptype==1 || b->maptype==2){
- int quantvals;
- float mindel=_float32_unpack(b->q_min);
- float delta=_float32_unpack(b->q_delta);
- float *r=_ogg_calloc(b->entries*b->dim,sizeof(float));
-
- /* maptype 1 and 2 both use a quantized value vector, but
- different sizes */
- switch(b->maptype){
- case 1:
- /* most of the time, entries%dimensions == 0, but we need to be
- well defined. We define that the possible vales at each
- scalar is values == entries/dim. If entries%dim != 0, we'll
- have 'too few' values (values*dim<entries), which means that
- we'll have 'left over' entries; left over entries use zeroed
- values (and are wasted). So don't generate codebooks like
- that */
- quantvals=_book_maptype1_quantvals(b);
- for(j=0;j<b->entries;j++){
- float last=0.f;
- int indexdiv=1;
- for(k=0;k<b->dim;k++){
- int index= (j/indexdiv)%quantvals;
- float val=b->quantlist[index];
- val=fabs(val)*delta+mindel+last;
- if(b->q_sequencep)last=val;
- r[j*b->dim+k]=val;
- indexdiv*=quantvals;
- }
- }
- break;
- case 2:
- for(j=0;j<b->entries;j++){
- float last=0.f;
- for(k=0;k<b->dim;k++){
- float val=b->quantlist[j*b->dim+k];
- val=fabs(val)*delta+mindel+last;
- if(b->q_sequencep)last=val;
- r[j*b->dim+k]=val;
- }
- }
- break;
- }
-
- return(r);
- }
- return(NULL);
-}
-
-void vorbis_staticbook_clear(static_codebook *b){
- if(b->allocedp){
- if(b->quantlist)_ogg_free(b->quantlist);
- if(b->lengthlist)_ogg_free(b->lengthlist);
- if(b->nearest_tree){
- _ogg_free(b->nearest_tree->ptr0);
- _ogg_free(b->nearest_tree->ptr1);
- _ogg_free(b->nearest_tree->p);
- _ogg_free(b->nearest_tree->q);
- memset(b->nearest_tree,0,sizeof(encode_aux_nearestmatch));
- _ogg_free(b->nearest_tree);
- }
- if(b->thresh_tree){
- _ogg_free(b->thresh_tree->quantthresh);
- _ogg_free(b->thresh_tree->quantmap);
- memset(b->thresh_tree,0,sizeof(encode_aux_threshmatch));
- _ogg_free(b->thresh_tree);
- }
-
- memset(b,0,sizeof(static_codebook));
- }
-}
-
-void vorbis_staticbook_destroy(static_codebook *b){
- if(b->allocedp){
- vorbis_staticbook_clear(b);
- _ogg_free(b);
- }
-}
-
-void vorbis_book_clear(codebook *b){
- /* static book is not cleared; we're likely called on the lookup and
- the static codebook belongs to the info struct */
- if(b->decode_tree){
- _ogg_free(b->decode_tree->tab);
- _ogg_free(b->decode_tree->tabl);
-
- _ogg_free(b->decode_tree->ptr0);
- _ogg_free(b->decode_tree->ptr1);
- memset(b->decode_tree,0,sizeof(decode_aux));
- _ogg_free(b->decode_tree);
- }
- if(b->valuelist)_ogg_free(b->valuelist);
- if(b->codelist)_ogg_free(b->codelist);
- memset(b,0,sizeof(codebook));
-}
-
-int vorbis_book_init_encode(codebook *c,const static_codebook *s){
- long j,k;
- memset(c,0,sizeof(codebook));
- c->c=s;
- c->entries=s->entries;
- c->dim=s->dim;
- c->codelist=_make_words(s->lengthlist,s->entries);
- c->valuelist=_book_unquantize(s);
-
- /* set the 'zero entry' */
- c->zeroentry=-1;
- if(c->valuelist){
- for(j=0;j<s->entries;j++){
- int flag=1;
- for(k=0;k<s->dim;k++){
- if(fabs(c->valuelist[j*s->dim+k])>1e-12f){
- flag=0;
- break;
- }
- }
- if(flag)
- c->zeroentry=j;
- }
- }
-
- return(0);
-}
-
-int vorbis_book_init_decode(codebook *c,const static_codebook *s){
- memset(c,0,sizeof(codebook));
- c->c=s;
- c->entries=s->entries;
- c->dim=s->dim;
- c->valuelist=_book_unquantize(s);
- c->decode_tree=_make_decode_tree(c);
- if(c->decode_tree==NULL)goto err_out;
- return(0);
- err_out:
- vorbis_book_clear(c);
- return(-1);
-}
-
-static float _dist(int el,float *ref, float *b,int step){
- int i;
- float acc=0.f;
- for(i=0;i<el;i++){
- float val=(ref[i]-b[i*step]);
- acc+=val*val;
- }
- return(acc);
-}
-
-#include <stdio.h>
-int _best(codebook *book, float *a, int step){
- encode_aux_nearestmatch *nt=book->c->nearest_tree;
- encode_aux_threshmatch *tt=book->c->thresh_tree;
- encode_aux_pigeonhole *pt=book->c->pigeon_tree;
- int dim=book->dim;
- int ptr=0,k,o;
- /*int savebest=-1;
- float saverr;*/
-
- /* do we have a threshhold encode hint? */
- if(tt){
- int index=0;
- /* find the quant val of each scalar */
- for(k=0,o=step*(dim-1);k<dim;k++,o-=step){
- int i;
- /* linear search the quant list for now; it's small and although
- with > 8 entries, it would be faster to bisect, this would be
- a misplaced optimization for now */
- for(i=0;i<tt->threshvals-1;i++)
- if(a[o]<tt->quantthresh[i])break;
-
- index=(index*tt->quantvals)+tt->quantmap[i];
- }
- /* regular lattices are easy :-) */
- if(book->c->lengthlist[index]>0) /* is this unused? If so, we'll
- use a decision tree after all
- and fall through*/
- return(index);
- }
-
- /* do we have a pigeonhole encode hint? */
- if(pt){
- const static_codebook *c=book->c;
- int i,besti=-1;
- float best;
- int entry=0;
-
- /* dealing with sequentialness is a pain in the ass */
- if(c->q_sequencep){
- int pv;
- long mul=1;
- float qlast=0;
- for(k=0,o=0;k<dim;k++,o+=step){
- pv=(int)((a[o]-qlast-pt->min)/pt->del);
- if(pv<0 || pv>=pt->mapentries)break;
- entry+=pt->pigeonmap[pv]*mul;
- mul*=pt->quantvals;
- qlast+=pv*pt->del+pt->min;
- }
- }else{
- for(k=0,o=step*(dim-1);k<dim;k++,o-=step){
- int pv=(int)((a[o]-pt->min)/pt->del);
- if(pv<0 || pv>=pt->mapentries)break;
- entry=entry*pt->quantvals+pt->pigeonmap[pv];
- }
- }
-
- /* must be within the pigeonholable range; if we quant outside (or
- in an entry that we define no list for), brute force it */
- if(k==dim && pt->fitlength[entry]){
- /* search the abbreviated list */
- long *list=pt->fitlist+pt->fitmap[entry];
- for(i=0;i<pt->fitlength[entry];i++){
- float this=_dist(dim,book->valuelist+list[i]*dim,a,step);
- if(besti==-1 || this<best){
- best=this;
- besti=list[i];
- }
- }
-
- return(besti);
- }
- }
-
- if(nt){
- /* optimized using the decision tree */
- while(1){
- float c=0.f;
- float *p=book->valuelist+nt->p[ptr];
- float *q=book->valuelist+nt->q[ptr];
-
- for(k=0,o=0;k<dim;k++,o+=step)
- c+=(p[k]-q[k])*(a[o]-(p[k]+q[k])*.5);
-
- if(c>0.f) /* in A */
- ptr= -nt->ptr0[ptr];
- else /* in B */
- ptr= -nt->ptr1[ptr];
- if(ptr<=0)break;
- }
- return(-ptr);
- }
-
- /* brute force it! */
- {
- const static_codebook *c=book->c;
- int i,besti=-1;
- float best;
- float *e=book->valuelist;
- for(i=0;i<book->entries;i++){
- if(c->lengthlist[i]>0){
- float this=_dist(dim,e,a,step);
- if(besti==-1 || this<best){
- best=this;
- besti=i;
- }
- }
- e+=dim;
- }
-
- /*if(savebest!=-1 && savebest!=besti){
- fprintf(stderr,"brute force/pigeonhole disagreement:\n"
- "original:");
- for(i=0;i<dim*step;i+=step)fprintf(stderr,"%g,",a[i]);
- fprintf(stderr,"\n"
- "pigeonhole (entry %d, err %g):",savebest,saverr);
- for(i=0;i<dim;i++)fprintf(stderr,"%g,",
- (book->valuelist+savebest*dim)[i]);
- fprintf(stderr,"\n"
- "bruteforce (entry %d, err %g):",besti,best);
- for(i=0;i<dim;i++)fprintf(stderr,"%g,",
- (book->valuelist+besti*dim)[i]);
- fprintf(stderr,"\n");
- }*/
- return(besti);
- }
-}
-
-/* returns the entry number and *modifies a* to the remainder value ********/
-int vorbis_book_besterror(codebook *book,float *a,int step,int addmul){
- int dim=book->dim,i,o;
- int best=_best(book,a,step);
- switch(addmul){
- case 0:
- for(i=0,o=0;i<dim;i++,o+=step)
- a[o]-=(book->valuelist+best*dim)[i];
- break;
- case 1:
- for(i=0,o=0;i<dim;i++,o+=step){
- float val=(book->valuelist+best*dim)[i];
- if(val==0){
- a[o]=0;
- }else{
- a[o]/=val;
- }
- }
- break;
- }
- return(best);
-}
-
-long vorbis_book_codeword(codebook *book,int entry){
- return book->codelist[entry];
-}
-
-long vorbis_book_codelen(codebook *book,int entry){
- return book->c->lengthlist[entry];
-}
-
-#ifdef _V_SELFTEST
-
-/* Unit tests of the dequantizer; this stuff will be OK
- cross-platform, I simply want to be sure that special mapping cases
- actually work properly; a bug could go unnoticed for a while */
-
-#include <stdio.h>
-
-/* cases:
-
- no mapping
- full, explicit mapping
- algorithmic mapping
-
- nonsequential
- sequential
-*/
-
-static long full_quantlist1[]={0,1,2,3, 4,5,6,7, 8,3,6,1};
-static long partial_quantlist1[]={0,7,2};
-
-/* no mapping */
-static_codebook test1={
- 4,16,
- NULL,
- 0,
- 0,0,0,0,
- NULL,
- NULL,NULL
-};
-static float *test1_result=NULL;
-
-/* linear, full mapping, nonsequential */
-static_codebook test2={
- 4,3,
- NULL,
- 2,
- -533200896,1611661312,4,0,
- full_quantlist1,
- NULL,NULL
-};
-static float test2_result[]={-3,-2,-1,0, 1,2,3,4, 5,0,3,-2};
-
-/* linear, full mapping, sequential */
-static_codebook test3={
- 4,3,
- NULL,
- 2,
- -533200896,1611661312,4,1,
- full_quantlist1,
- NULL,NULL
-};
-static float test3_result[]={-3,-5,-6,-6, 1,3,6,10, 5,5,8,6};
-
-/* linear, algorithmic mapping, nonsequential */
-static_codebook test4={
- 3,27,
- NULL,
- 1,
- -533200896,1611661312,4,0,
- partial_quantlist1,
- NULL,NULL
-};
-static float test4_result[]={-3,-3,-3, 4,-3,-3, -1,-3,-3,
- -3, 4,-3, 4, 4,-3, -1, 4,-3,
- -3,-1,-3, 4,-1,-3, -1,-1,-3,
- -3,-3, 4, 4,-3, 4, -1,-3, 4,
- -3, 4, 4, 4, 4, 4, -1, 4, 4,
- -3,-1, 4, 4,-1, 4, -1,-1, 4,
- -3,-3,-1, 4,-3,-1, -1,-3,-1,
- -3, 4,-1, 4, 4,-1, -1, 4,-1,
- -3,-1,-1, 4,-1,-1, -1,-1,-1};
-
-/* linear, algorithmic mapping, sequential */
-static_codebook test5={
- 3,27,
- NULL,
- 1,
- -533200896,1611661312,4,1,
- partial_quantlist1,
- NULL,NULL
-};
-static float test5_result[]={-3,-6,-9, 4, 1,-2, -1,-4,-7,
- -3, 1,-2, 4, 8, 5, -1, 3, 0,
- -3,-4,-7, 4, 3, 0, -1,-2,-5,
- -3,-6,-2, 4, 1, 5, -1,-4, 0,
- -3, 1, 5, 4, 8,12, -1, 3, 7,
- -3,-4, 0, 4, 3, 7, -1,-2, 2,
- -3,-6,-7, 4, 1, 0, -1,-4,-5,
- -3, 1, 0, 4, 8, 7, -1, 3, 2,
- -3,-4,-5, 4, 3, 2, -1,-2,-3};
-
-void run_test(static_codebook *b,float *comp){
- float *out=_book_unquantize(b);
- int i;
-
- if(comp){
- if(!out){
- fprintf(stderr,"_book_unquantize incorrectly returned NULL\n");
- exit(1);
- }
-
- for(i=0;i<b->entries*b->dim;i++)
- if(fabs(out[i]-comp[i])>.0001){
- fprintf(stderr,"disagreement in unquantized and reference data:\n"
- "position %d, %g != %g\n",i,out[i],comp[i]);
- exit(1);
- }
-
- }else{
- if(out){
- fprintf(stderr,"_book_unquantize returned a value array: \n"
- " correct result should have been NULL\n");
- exit(1);
- }
- }
-}
-
-int main(){
- /* run the nine dequant tests, and compare to the hand-rolled results */
- fprintf(stderr,"Dequant test 1... ");
- run_test(&test1,test1_result);
- fprintf(stderr,"OK\nDequant test 2... ");
- run_test(&test2,test2_result);
- fprintf(stderr,"OK\nDequant test 3... ");
- run_test(&test3,test3_result);
- fprintf(stderr,"OK\nDequant test 4... ");
- run_test(&test4,test4_result);
- fprintf(stderr,"OK\nDequant test 5... ");
- run_test(&test5,test5_result);
- fprintf(stderr,"OK\n\n");
-
- return(0);
-}
-
-#endif
diff --git a/lib/smallft.c b/lib/smallft.c
deleted file mode 100644
index 60609a2f..00000000
--- a/lib/smallft.c
+++ /dev/null
@@ -1,1254 +0,0 @@
-/********************************************************************
- * *
- * 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: *unnormalized* fft transform
- last mod: $Id: smallft.c,v 1.14 2001/02/26 03:50:43 xiphmont Exp $
-
-********************************************************************/
-
-/* FFT implementation from OggSquish, minus cosine transforms,
- * minus all but radix 2/4 case. In Vorbis we only need this
- * cut-down version.
- *
- * To do more than just power-of-two sized vectors, see the full
- * version I wrote for NetLib.
- *
- * Note that the packing is a little strange; rather than the FFT r/i
- * packing following R_0, I_n, R_1, I_1, R_2, I_2 ... R_n-1, I_n-1,
- * it follows R_0, R_1, I_1, R_2, I_2 ... R_n-1, I_n-1, I_n like the
- * FORTRAN version
- */
-
-#include <stdlib.h>
-#include <string.h>
-#include <math.h>
-#include "smallft.h"
-#include "misc.h"
-
-static void drfti1(int n, float *wa, int *ifac){
- static int ntryh[4] = { 4,2,3,5 };
- static float tpi = 6.28318530717958648f;
- float arg,argh,argld,fi;
- int ntry=0,i,j=-1;
- int k1, l1, l2, ib;
- int ld, ii, ip, is, nq, nr;
- int ido, ipm, nfm1;
- int nl=n;
- int nf=0;
-
- L101:
- j++;
- if (j < 4)
- ntry=ntryh[j];
- else
- ntry+=2;
-
- L104:
- nq=nl/ntry;
- nr=nl-ntry*nq;
- if (nr!=0) goto L101;
-
- nf++;
- ifac[nf+1]=ntry;
- nl=nq;
- if(ntry!=2)goto L107;
- if(nf==1)goto L107;
-
- for (i=1;i<nf;i++){
- ib=nf-i+1;
- ifac[ib+1]=ifac[ib];
- }
- ifac[2] = 2;
-
- L107:
- if(nl!=1)goto L104;
- ifac[0]=n;
- ifac[1]=nf;
- argh=tpi/n;
- is=0;
- nfm1=nf-1;
- l1=1;
-
- if(nfm1==0)return;
-
- for (k1=0;k1<nfm1;k1++){
- ip=ifac[k1+2];
- ld=0;
- l2=l1*ip;
- ido=n/l2;
- ipm=ip-1;
-
- for (j=0;j<ipm;j++){
- ld+=l1;
- i=is;
- argld=(float)ld*argh;
- fi=0.f;
- for (ii=2;ii<ido;ii+=2){
- fi+=1.f;
- arg=fi*argld;
- wa[i++]=cos(arg);
- wa[i++]=sin(arg);
- }
- is+=ido;
- }
- l1=l2;
- }
-}
-
-static void fdrffti(int n, float *wsave, int *ifac){
-
- if (n == 1) return;
- drfti1(n, wsave+n, ifac);
-}
-
-static void dradf2(int ido,int l1,float *cc,float *ch,float *wa1){
- int i,k;
- float ti2,tr2;
- int t0,t1,t2,t3,t4,t5,t6;
-
- t1=0;
- t0=(t2=l1*ido);
- t3=ido<<1;
- for(k=0;k<l1;k++){
- ch[t1<<1]=cc[t1]+cc[t2];
- ch[(t1<<1)+t3-1]=cc[t1]-cc[t2];
- t1+=ido;
- t2+=ido;
- }
-
- if(ido<2)return;
- if(ido==2)goto L105;
-
- t1=0;
- t2=t0;
- for(k=0;k<l1;k++){
- t3=t2;
- t4=(t1<<1)+(ido<<1);
- t5=t1;
- t6=t1+t1;
- for(i=2;i<ido;i+=2){
- t3+=2;
- t4-=2;
- t5+=2;
- t6+=2;
- tr2=wa1[i-2]*cc[t3-1]+wa1[i-1]*cc[t3];
- ti2=wa1[i-2]*cc[t3]-wa1[i-1]*cc[t3-1];
- ch[t6]=cc[t5]+ti2;
- ch[t4]=ti2-cc[t5];
- ch[t6-1]=cc[t5-1]+tr2;
- ch[t4-1]=cc[t5-1]-tr2;
- }
- t1+=ido;
- t2+=ido;
- }
-
- if(ido%2==1)return;
-
- L105:
- t3=(t2=(t1=ido)-1);
- t2+=t0;
- for(k=0;k<l1;k++){
- ch[t1]=-cc[t2];
- ch[t1-1]=cc[t3];
- t1+=ido<<1;
- t2+=ido;
- t3+=ido;
- }
-}
-
-static void dradf4(int ido,int l1,float *cc,float *ch,float *wa1,
- float *wa2,float *wa3){
- static float hsqt2 = .70710678118654752f;
- int i,k,t0,t1,t2,t3,t4,t5,t6;
- float ci2,ci3,ci4,cr2,cr3,cr4,ti1,ti2,ti3,ti4,tr1,tr2,tr3,tr4;
- t0=l1*ido;
-
- t1=t0;
- t4=t1<<1;
- t2=t1+(t1<<1);
- t3=0;
-
- for(k=0;k<l1;k++){
- tr1=cc[t1]+cc[t2];
- tr2=cc[t3]+cc[t4];
-
- ch[t5=t3<<2]=tr1+tr2;
- ch[(ido<<2)+t5-1]=tr2-tr1;
- ch[(t5+=(ido<<1))-1]=cc[t3]-cc[t4];
- ch[t5]=cc[t2]-cc[t1];
-
- t1+=ido;
- t2+=ido;
- t3+=ido;
- t4+=ido;
- }
-
- if(ido<2)return;
- if(ido==2)goto L105;
-
-
- t1=0;
- for(k=0;k<l1;k++){
- t2=t1;
- t4=t1<<2;
- t5=(t6=ido<<1)+t4;
- for(i=2;i<ido;i+=2){
- t3=(t2+=2);
- t4+=2;
- t5-=2;
-
- t3+=t0;
- cr2=wa1[i-2]*cc[t3-1]+wa1[i-1]*cc[t3];
- ci2=wa1[i-2]*cc[t3]-wa1[i-1]*cc[t3-1];
- t3+=t0;
- cr3=wa2[i-2]*cc[t3-1]+wa2[i-1]*cc[t3];
- ci3=wa2[i-2]*cc[t3]-wa2[i-1]*cc[t3-1];
- t3+=t0;
- cr4=wa3[i-2]*cc[t3-1]+wa3[i-1]*cc[t3];
- ci4=wa3[i-2]*cc[t3]-wa3[i-1]*cc[t3-1];
-
- tr1=cr2+cr4;
- tr4=cr4-cr2;
- ti1=ci2+ci4;
- ti4=ci2-ci4;
-
- ti2=cc[t2]+ci3;
- ti3=cc[t2]-ci3;
- tr2=cc[t2-1]+cr3;
- tr3=cc[t2-1]-cr3;
-
- ch[t4-1]=tr1+tr2;
- ch[t4]=ti1+ti2;
-
- ch[t5-1]=tr3-ti4;
- ch[t5]=tr4-ti3;
-
- ch[t4+t6-1]=ti4+tr3;
- ch[t4+t6]=tr4+ti3;
-
- ch[t5+t6-1]=tr2-tr1;
- ch[t5+t6]=ti1-ti2;
- }
- t1+=ido;
- }
- if(ido&1)return;
-
- L105:
-
- t2=(t1=t0+ido-1)+(t0<<1);
- t3=ido<<2;
- t4=ido;
- t5=ido<<1;
- t6=ido;
-
- for(k=0;k<l1;k++){
- ti1=-hsqt2*(cc[t1]+cc[t2]);
- tr1=hsqt2*(cc[t1]-cc[t2]);
-
- ch[t4-1]=tr1+cc[t6-1];
- ch[t4+t5-1]=cc[t6-1]-tr1;
-
- ch[t4]=ti1-cc[t1+t0];
- ch[t4+t5]=ti1+cc[t1+t0];
-
- t1+=ido;
- t2+=ido;
- t4+=t3;
- t6+=ido;
- }
-}
-
-static void dradfg(int ido,int ip,int l1,int idl1,float *cc,float *c1,
- float *c2,float *ch,float *ch2,float *wa){
-
- static float tpi=6.283185307179586f;
- int idij,ipph,i,j,k,l,ic,ik,is;
- int t0,t1,t2,t3,t4,t5,t6,t7,t8,t9,t10;
- float dc2,ai1,ai2,ar1,ar2,ds2;
- int nbd;
- float dcp,arg,dsp,ar1h,ar2h;
- int idp2,ipp2;
-
- arg=tpi/(float)ip;
- dcp=cos(arg);
- dsp=sin(arg);
- ipph=(ip+1)>>1;
- ipp2=ip;
- idp2=ido;
- nbd=(ido-1)>>1;
- t0=l1*ido;
- t10=ip*ido;
-
- if(ido==1)goto L119;
- for(ik=0;ik<idl1;ik++)ch2[ik]=c2[ik];
-
- t1=0;
- for(j=1;j<ip;j++){
- t1+=t0;
- t2=t1;
- for(k=0;k<l1;k++){
- ch[t2]=c1[t2];
- t2+=ido;
- }
- }
-
- is=-ido;
- t1=0;
- if(nbd>l1){
- for(j=1;j<ip;j++){
- t1+=t0;
- is+=ido;
- t2= -ido+t1;
- for(k=0;k<l1;k++){
- idij=is-1;
- t2+=ido;
- t3=t2;
- for(i=2;i<ido;i+=2){
- idij+=2;
- t3+=2;
- ch[t3-1]=wa[idij-1]*c1[t3-1]+wa[idij]*c1[t3];
- ch[t3]=wa[idij-1]*c1[t3]-wa[idij]*c1[t3-1];
- }
- }
- }
- }else{
-
- for(j=1;j<ip;j++){
- is+=ido;
- idij=is-1;
- t1+=t0;
- t2=t1;
- for(i=2;i<ido;i+=2){
- idij+=2;
- t2+=2;
- t3=t2;
- for(k=0;k<l1;k++){
- ch[t3-1]=wa[idij-1]*c1[t3-1]+wa[idij]*c1[t3];
- ch[t3]=wa[idij-1]*c1[t3]-wa[idij]*c1[t3-1];
- t3+=ido;
- }
- }
- }
- }
-
- t1=0;
- t2=ipp2*t0;
- if(nbd<l1){
- for(j=1;j<ipph;j++){
- t1+=t0;
- t2-=t0;
- t3=t1;
- t4=t2;
- for(i=2;i<ido;i+=2){
- t3+=2;
- t4+=2;
- t5=t3-ido;
- t6=t4-ido;
- for(k=0;k<l1;k++){
- t5+=ido;
- t6+=ido;
- c1[t5-1]=ch[t5-1]+ch[t6-1];
- c1[t6-1]=ch[t5]-ch[t6];
- c1[t5]=ch[t5]+ch[t6];
- c1[t6]=ch[t6-1]-ch[t5-1];
- }
- }
- }
- }else{
- for(j=1;j<ipph;j++){
- t1+=t0;
- t2-=t0;
- t3=t1;
- t4=t2;
- for(k=0;k<l1;k++){
- t5=t3;
- t6=t4;
- for(i=2;i<ido;i+=2){
- t5+=2;
- t6+=2;
- c1[t5-1]=ch[t5-1]+ch[t6-1];
- c1[t6-1]=ch[t5]-ch[t6];
- c1[t5]=ch[t5]+ch[t6];
- c1[t6]=ch[t6-1]-ch[t5-1];
- }
- t3+=ido;
- t4+=ido;
- }
- }
- }
-
-L119:
- for(ik=0;ik<idl1;ik++)c2[ik]=ch2[ik];
-
- t1=0;
- t2=ipp2*idl1;
- for(j=1;j<ipph;j++){
- t1+=t0;
- t2-=t0;
- t3=t1-ido;
- t4=t2-ido;
- for(k=0;k<l1;k++){
- t3+=ido;
- t4+=ido;
- c1[t3]=ch[t3]+ch[t4];
- c1[t4]=ch[t4]-ch[t3];
- }
- }
-
- ar1=1.f;
- ai1=0.f;
- t1=0;
- t2=ipp2*idl1;
- t3=(ip-1)*idl1;
- for(l=1;l<ipph;l++){
- t1+=idl1;
- t2-=idl1;
- ar1h=dcp*ar1-dsp*ai1;
- ai1=dcp*ai1+dsp*ar1;
- ar1=ar1h;
- t4=t1;
- t5=t2;
- t6=t3;
- t7=idl1;
-
- for(ik=0;ik<idl1;ik++){
- ch2[t4++]=c2[ik]+ar1*c2[t7++];
- ch2[t5++]=ai1*c2[t6++];
- }
-
- dc2=ar1;
- ds2=ai1;
- ar2=ar1;
- ai2=ai1;
-
- t4=idl1;
- t5=(ipp2-1)*idl1;
- for(j=2;j<ipph;j++){
- t4+=idl1;
- t5-=idl1;
-
- ar2h=dc2*ar2-ds2*ai2;
- ai2=dc2*ai2+ds2*ar2;
- ar2=ar2h;
-
- t6=t1;
- t7=t2;
- t8=t4;
- t9=t5;
- for(ik=0;ik<idl1;ik++){
- ch2[t6++]+=ar2*c2[t8++];
- ch2[t7++]+=ai2*c2[t9++];
- }
- }
- }
-
- t1=0;
- for(j=1;j<ipph;j++){
- t1+=idl1;
- t2=t1;
- for(ik=0;ik<idl1;ik++)ch2[ik]+=c2[t2++];
- }
-
- if(ido<l1)goto L132;
-
- t1=0;
- t2=0;
- for(k=0;k<l1;k++){
- t3=t1;
- t4=t2;
- for(i=0;i<ido;i++)cc[t4++]=ch[t3++];
- t1+=ido;
- t2+=t10;
- }
-
- goto L135;
-
- L132:
- for(i=0;i<ido;i++){
- t1=i;
- t2=i;
- for(k=0;k<l1;k++){
- cc[t2]=ch[t1];
- t1+=ido;
- t2+=t10;
- }
- }
-
- L135:
- t1=0;
- t2=ido<<1;
- t3=0;
- t4=ipp2*t0;
- for(j=1;j<ipph;j++){
-
- t1+=t2;
- t3+=t0;
- t4-=t0;
-
- t5=t1;
- t6=t3;
- t7=t4;
-
- for(k=0;k<l1;k++){
- cc[t5-1]=ch[t6];
- cc[t5]=ch[t7];
- t5+=t10;
- t6+=ido;
- t7+=ido;
- }
- }
-
- if(ido==1)return;
- if(nbd<l1)goto L141;
-
- t1=-ido;
- t3=0;
- t4=0;
- t5=ipp2*t0;
- for(j=1;j<ipph;j++){
- t1+=t2;
- t3+=t2;
- t4+=t0;
- t5-=t0;
- t6=t1;
- t7=t3;
- t8=t4;
- t9=t5;
- for(k=0;k<l1;k++){
- for(i=2;i<ido;i+=2){
- ic=idp2-i;
- cc[i+t7-1]=ch[i+t8-1]+ch[i+t9-1];
- cc[ic+t6-1]=ch[i+t8-1]-ch[i+t9-1];
- cc[i+t7]=ch[i+t8]+ch[i+t9];
- cc[ic+t6]=ch[i+t9]-ch[i+t8];
- }
- t6+=t10;
- t7+=t10;
- t8+=ido;
- t9+=ido;
- }
- }
- return;
-
- L141:
-
- t1=-ido;
- t3=0;
- t4=0;
- t5=ipp2*t0;
- for(j=1;j<ipph;j++){
- t1+=t2;
- t3+=t2;
- t4+=t0;
- t5-=t0;
- for(i=2;i<ido;i+=2){
- t6=idp2+t1-i;
- t7=i+t3;
- t8=i+t4;
- t9=i+t5;
- for(k=0;k<l1;k++){
- cc[t7-1]=ch[t8-1]+ch[t9-1];
- cc[t6-1]=ch[t8-1]-ch[t9-1];
- cc[t7]=ch[t8]+ch[t9];
- cc[t6]=ch[t9]-ch[t8];
- t6+=t10;
- t7+=t10;
- t8+=ido;
- t9+=ido;
- }
- }
- }
-}
-
-static void drftf1(int n,float *c,float *ch,float *wa,int *ifac){
- int i,k1,l1,l2;
- int na,kh,nf;
- int ip,iw,ido,idl1,ix2,ix3;
-
- nf=ifac[1];
- na=1;
- l2=n;
- iw=n;
-
- for(k1=0;k1<nf;k1++){
- kh=nf-k1;
- ip=ifac[kh+1];
- l1=l2/ip;
- ido=n/l2;
- idl1=ido*l1;
- iw-=(ip-1)*ido;
- na=1-na;
-
- if(ip!=4)goto L102;
-
- ix2=iw+ido;
- ix3=ix2+ido;
- if(na!=0)
- dradf4(ido,l1,ch,c,wa+iw-1,wa+ix2-1,wa+ix3-1);
- else
- dradf4(ido,l1,c,ch,wa+iw-1,wa+ix2-1,wa+ix3-1);
- goto L110;
-
- L102:
- if(ip!=2)goto L104;
- if(na!=0)goto L103;
-
- dradf2(ido,l1,c,ch,wa+iw-1);
- goto L110;
-
- L103:
- dradf2(ido,l1,ch,c,wa+iw-1);
- goto L110;
-
- L104:
- if(ido==1)na=1-na;
- if(na!=0)goto L109;
-
- dradfg(ido,ip,l1,idl1,c,c,c,ch,ch,wa+iw-1);
- na=1;
- goto L110;
-
- L109:
- dradfg(ido,ip,l1,idl1,ch,ch,ch,c,c,wa+iw-1);
- na=0;
-
- L110:
- l2=l1;
- }
-
- if(na==1)return;
-
- for(i=0;i<n;i++)c[i]=ch[i];
-}
-
-static void dradb2(int ido,int l1,float *cc,float *ch,float *wa1){
- int i,k,t0,t1,t2,t3,t4,t5,t6;
- float ti2,tr2;
-
- t0=l1*ido;
-
- t1=0;
- t2=0;
- t3=(ido<<1)-1;
- for(k=0;k<l1;k++){
- ch[t1]=cc[t2]+cc[t3+t2];
- ch[t1+t0]=cc[t2]-cc[t3+t2];
- t2=(t1+=ido)<<1;
- }
-
- if(ido<2)return;
- if(ido==2)goto L105;
-
- t1=0;
- t2=0;
- for(k=0;k<l1;k++){
- t3=t1;
- t5=(t4=t2)+(ido<<1);
- t6=t0+t1;
- for(i=2;i<ido;i+=2){
- t3+=2;
- t4+=2;
- t5-=2;
- t6+=2;
- ch[t3-1]=cc[t4-1]+cc[t5-1];
- tr2=cc[t4-1]-cc[t5-1];
- ch[t3]=cc[t4]-cc[t5];
- ti2=cc[t4]+cc[t5];
- ch[t6-1]=wa1[i-2]*tr2-wa1[i-1]*ti2;
- ch[t6]=wa1[i-2]*ti2+wa1[i-1]*tr2;
- }
- t2=(t1+=ido)<<1;
- }
-
- if(ido%2==1)return;
-
-L105:
- t1=ido-1;
- t2=ido-1;
- for(k=0;k<l1;k++){
- ch[t1]=cc[t2]+cc[t2];
- ch[t1+t0]=-(cc[t2+1]+cc[t2+1]);
- t1+=ido;
- t2+=ido<<1;
- }
-}
-
-static void dradb3(int ido,int l1,float *cc,float *ch,float *wa1,
- float *wa2){
- static float taur = -.5f;
- static float taui = .8660254037844386f;
- int i,k,t0,t1,t2,t3,t4,t5,t6,t7,t8,t9,t10;
- float ci2,ci3,di2,di3,cr2,cr3,dr2,dr3,ti2,tr2;
- t0=l1*ido;
-
- t1=0;
- t2=t0<<1;
- t3=ido<<1;
- t4=ido+(ido<<1);
- t5=0;
- for(k=0;k<l1;k++){
- tr2=cc[t3-1]+cc[t3-1];
- cr2=cc[t5]+(taur*tr2);
- ch[t1]=cc[t5]+tr2;
- ci3=taui*(cc[t3]+cc[t3]);
- ch[t1+t0]=cr2-ci3;
- ch[t1+t2]=cr2+ci3;
- t1+=ido;
- t3+=t4;
- t5+=t4;
- }
-
- if(ido==1)return;
-
- t1=0;
- t3=ido<<1;
- for(k=0;k<l1;k++){
- t7=t1+(t1<<1);
- t6=(t5=t7+t3);
- t8=t1;
- t10=(t9=t1+t0)+t0;
-
- for(i=2;i<ido;i+=2){
- t5+=2;
- t6-=2;
- t7+=2;
- t8+=2;
- t9+=2;
- t10+=2;
- tr2=cc[t5-1]+cc[t6-1];
- cr2=cc[t7-1]+(taur*tr2);
- ch[t8-1]=cc[t7-1]+tr2;
- ti2=cc[t5]-cc[t6];
- ci2=cc[t7]+(taur*ti2);
- ch[t8]=cc[t7]+ti2;
- cr3=taui*(cc[t5-1]-cc[t6-1]);
- ci3=taui*(cc[t5]+cc[t6]);
- dr2=cr2-ci3;
- dr3=cr2+ci3;
- di2=ci2+cr3;
- di3=ci2-cr3;
- ch[t9-1]=wa1[i-2]*dr2-wa1[i-1]*di2;
- ch[t9]=wa1[i-2]*di2+wa1[i-1]*dr2;
- ch[t10-1]=wa2[i-2]*dr3-wa2[i-1]*di3;
- ch[t10]=wa2[i-2]*di3+wa2[i-1]*dr3;
- }
- t1+=ido;
- }
-}
-
-static void dradb4(int ido,int l1,float *cc,float *ch,float *wa1,
- float *wa2,float *wa3){
- static float sqrt2=1.414213562373095f;
- int i,k,t0,t1,t2,t3,t4,t5,t6,t7,t8;
- float ci2,ci3,ci4,cr2,cr3,cr4,ti1,ti2,ti3,ti4,tr1,tr2,tr3,tr4;
- t0=l1*ido;
-
- t1=0;
- t2=ido<<2;
- t3=0;
- t6=ido<<1;
- for(k=0;k<l1;k++){
- t4=t3+t6;
- t5=t1;
- tr3=cc[t4-1]+cc[t4-1];
- tr4=cc[t4]+cc[t4];
- tr1=cc[t3]-cc[(t4+=t6)-1];
- tr2=cc[t3]+cc[t4-1];
- ch[t5]=tr2+tr3;
- ch[t5+=t0]=tr1-tr4;
- ch[t5+=t0]=tr2-tr3;
- ch[t5+=t0]=tr1+tr4;
- t1+=ido;
- t3+=t2;
- }
-
- if(ido<2)return;
- if(ido==2)goto L105;
-
- t1=0;
- for(k=0;k<l1;k++){
- t5=(t4=(t3=(t2=t1<<2)+t6))+t6;
- t7=t1;
- for(i=2;i<ido;i+=2){
- t2+=2;
- t3+=2;
- t4-=2;
- t5-=2;
- t7+=2;
- ti1=cc[t2]+cc[t5];
- ti2=cc[t2]-cc[t5];
- ti3=cc[t3]-cc[t4];
- tr4=cc[t3]+cc[t4];
- tr1=cc[t2-1]-cc[t5-1];
- tr2=cc[t2-1]+cc[t5-1];
- ti4=cc[t3-1]-cc[t4-1];
- tr3=cc[t3-1]+cc[t4-1];
- ch[t7-1]=tr2+tr3;
- cr3=tr2-tr3;
- ch[t7]=ti2+ti3;
- ci3=ti2-ti3;
- cr2=tr1-tr4;
- cr4=tr1+tr4;
- ci2=ti1+ti4;
- ci4=ti1-ti4;
-
- ch[(t8=t7+t0)-1]=wa1[i-2]*cr2-wa1[i-1]*ci2;
- ch[t8]=wa1[i-2]*ci2+wa1[i-1]*cr2;
- ch[(t8+=t0)-1]=wa2[i-2]*cr3-wa2[i-1]*ci3;
- ch[t8]=wa2[i-2]*ci3+wa2[i-1]*cr3;
- ch[(t8+=t0)-1]=wa3[i-2]*cr4-wa3[i-1]*ci4;
- ch[t8]=wa3[i-2]*ci4+wa3[i-1]*cr4;
- }
- t1+=ido;
- }
-
- if(ido%2 == 1)return;
-
- L105:
-
- t1=ido;
- t2=ido<<2;
- t3=ido-1;
- t4=ido+(ido<<1);
- for(k=0;k<l1;k++){
- t5=t3;
- ti1=cc[t1]+cc[t4];
- ti2=cc[t4]-cc[t1];
- tr1=cc[t1-1]-cc[t4-1];
- tr2=cc[t1-1]+cc[t4-1];
- ch[t5]=tr2+tr2;
- ch[t5+=t0]=sqrt2*(tr1-ti1);
- ch[t5+=t0]=ti2+ti2;
- ch[t5+=t0]=-sqrt2*(tr1+ti1);
-
- t3+=ido;
- t1+=t2;
- t4+=t2;
- }
-}
-
-static void dradbg(int ido,int ip,int l1,int idl1,float *cc,float *c1,
- float *c2,float *ch,float *ch2,float *wa){
- static float tpi=6.283185307179586f;
- int idij,ipph,i,j,k,l,ik,is,t0,t1,t2,t3,t4,t5,t6,t7,t8,t9,t10,
- t11,t12;
- float dc2,ai1,ai2,ar1,ar2,ds2;
- int nbd;
- float dcp,arg,dsp,ar1h,ar2h;
- int ipp2;
-
- t10=ip*ido;
- t0=l1*ido;
- arg=tpi/(float)ip;
- dcp=cos(arg);
- dsp=sin(arg);
- nbd=(ido-1)>>1;
- ipp2=ip;
- ipph=(ip+1)>>1;
- if(ido<l1)goto L103;
-
- t1=0;
- t2=0;
- for(k=0;k<l1;k++){
- t3=t1;
- t4=t2;
- for(i=0;i<ido;i++){
- ch[t3]=cc[t4];
- t3++;
- t4++;
- }
- t1+=ido;
- t2+=t10;
- }
- goto L106;
-
- L103:
- t1=0;
- for(i=0;i<ido;i++){
- t2=t1;
- t3=t1;
- for(k=0;k<l1;k++){
- ch[t2]=cc[t3];
- t2+=ido;
- t3+=t10;
- }
- t1++;
- }
-
- L106:
- t1=0;
- t2=ipp2*t0;
- t7=(t5=ido<<1);
- for(j=1;j<ipph;j++){
- t1+=t0;
- t2-=t0;
- t3=t1;
- t4=t2;
- t6=t5;
- for(k=0;k<l1;k++){
- ch[t3]=cc[t6-1]+cc[t6-1];
- ch[t4]=cc[t6]+cc[t6];
- t3+=ido;
- t4+=ido;
- t6+=t10;
- }
- t5+=t7;
- }
-
- if (ido == 1)goto L116;
- if(nbd<l1)goto L112;
-
- t1=0;
- t2=ipp2*t0;
- t7=0;
- for(j=1;j<ipph;j++){
- t1+=t0;
- t2-=t0;
- t3=t1;
- t4=t2;
-
- t7+=(ido<<1);
- t8=t7;
- for(k=0;k<l1;k++){
- t5=t3;
- t6=t4;
- t9=t8;
- t11=t8;
- for(i=2;i<ido;i+=2){
- t5+=2;
- t6+=2;
- t9+=2;
- t11-=2;
- ch[t5-1]=cc[t9-1]+cc[t11-1];
- ch[t6-1]=cc[t9-1]-cc[t11-1];
- ch[t5]=cc[t9]-cc[t11];
- ch[t6]=cc[t9]+cc[t11];
- }
- t3+=ido;
- t4+=ido;
- t8+=t10;
- }
- }
- goto L116;
-
- L112:
- t1=0;
- t2=ipp2*t0;
- t7=0;
- for(j=1;j<ipph;j++){
- t1+=t0;
- t2-=t0;
- t3=t1;
- t4=t2;
- t7+=(ido<<1);
- t8=t7;
- t9=t7;
- for(i=2;i<ido;i+=2){
- t3+=2;
- t4+=2;
- t8+=2;
- t9-=2;
- t5=t3;
- t6=t4;
- t11=t8;
- t12=t9;
- for(k=0;k<l1;k++){
- ch[t5-1]=cc[t11-1]+cc[t12-1];
- ch[t6-1]=cc[t11-1]-cc[t12-1];
- ch[t5]=cc[t11]-cc[t12];
- ch[t6]=cc[t11]+cc[t12];
- t5+=ido;
- t6+=ido;
- t11+=t10;
- t12+=t10;
- }
- }
- }
-
-L116:
- ar1=1.f;
- ai1=0.f;
- t1=0;
- t9=(t2=ipp2*idl1);
- t3=(ip-1)*idl1;
- for(l=1;l<ipph;l++){
- t1+=idl1;
- t2-=idl1;
-
- ar1h=dcp*ar1-dsp*ai1;
- ai1=dcp*ai1+dsp*ar1;
- ar1=ar1h;
- t4=t1;
- t5=t2;
- t6=0;
- t7=idl1;
- t8=t3;
- for(ik=0;ik<idl1;ik++){
- c2[t4++]=ch2[t6++]+ar1*ch2[t7++];
- c2[t5++]=ai1*ch2[t8++];
- }
- dc2=ar1;
- ds2=ai1;
- ar2=ar1;
- ai2=ai1;
-
- t6=idl1;
- t7=t9-idl1;
- for(j=2;j<ipph;j++){
- t6+=idl1;
- t7-=idl1;
- ar2h=dc2*ar2-ds2*ai2;
- ai2=dc2*ai2+ds2*ar2;
- ar2=ar2h;
- t4=t1;
- t5=t2;
- t11=t6;
- t12=t7;
- for(ik=0;ik<idl1;ik++){
- c2[t4++]+=ar2*ch2[t11++];
- c2[t5++]+=ai2*ch2[t12++];
- }
- }
- }
-
- t1=0;
- for(j=1;j<ipph;j++){
- t1+=idl1;
- t2=t1;
- for(ik=0;ik<idl1;ik++)ch2[ik]+=ch2[t2++];
- }
-
- t1=0;
- t2=ipp2*t0;
- for(j=1;j<ipph;j++){
- t1+=t0;
- t2-=t0;
- t3=t1;
- t4=t2;
- for(k=0;k<l1;k++){
- ch[t3]=c1[t3]-c1[t4];
- ch[t4]=c1[t3]+c1[t4];
- t3+=ido;
- t4+=ido;
- }
- }
-
- if(ido==1)goto L132;
- if(nbd<l1)goto L128;
-
- t1=0;
- t2=ipp2*t0;
- for(j=1;j<ipph;j++){
- t1+=t0;
- t2-=t0;
- t3=t1;
- t4=t2;
- for(k=0;k<l1;k++){
- t5=t3;
- t6=t4;
- for(i=2;i<ido;i+=2){
- t5+=2;
- t6+=2;
- ch[t5-1]=c1[t5-1]-c1[t6];
- ch[t6-1]=c1[t5-1]+c1[t6];
- ch[t5]=c1[t5]+c1[t6-1];
- ch[t6]=c1[t5]-c1[t6-1];
- }
- t3+=ido;
- t4+=ido;
- }
- }
- goto L132;
-
- L128:
- t1=0;
- t2=ipp2*t0;
- for(j=1;j<ipph;j++){
- t1+=t0;
- t2-=t0;
- t3=t1;
- t4=t2;
- for(i=2;i<ido;i+=2){
- t3+=2;
- t4+=2;
- t5=t3;
- t6=t4;
- for(k=0;k<l1;k++){
- ch[t5-1]=c1[t5-1]-c1[t6];
- ch[t6-1]=c1[t5-1]+c1[t6];
- ch[t5]=c1[t5]+c1[t6-1];
- ch[t6]=c1[t5]-c1[t6-1];
- t5+=ido;
- t6+=ido;
- }
- }
- }
-
-L132:
- if(ido==1)return;
-
- for(ik=0;ik<idl1;ik++)c2[ik]=ch2[ik];
-
- t1=0;
- for(j=1;j<ip;j++){
- t2=(t1+=t0);
- for(k=0;k<l1;k++){
- c1[t2]=ch[t2];
- t2+=ido;
- }
- }
-
- if(nbd>l1)goto L139;
-
- is= -ido-1;
- t1=0;
- for(j=1;j<ip;j++){
- is+=ido;
- t1+=t0;
- idij=is;
- t2=t1;
- for(i=2;i<ido;i+=2){
- t2+=2;
- idij+=2;
- t3=t2;
- for(k=0;k<l1;k++){
- c1[t3-1]=wa[idij-1]*ch[t3-1]-wa[idij]*ch[t3];
- c1[t3]=wa[idij-1]*ch[t3]+wa[idij]*ch[t3-1];
- t3+=ido;
- }
- }
- }
- return;
-
- L139:
- is= -ido-1;
- t1=0;
- for(j=1;j<ip;j++){
- is+=ido;
- t1+=t0;
- t2=t1;
- for(k=0;k<l1;k++){
- idij=is;
- t3=t2;
- for(i=2;i<ido;i+=2){
- idij+=2;
- t3+=2;
- c1[t3-1]=wa[idij-1]*ch[t3-1]-wa[idij]*ch[t3];
- c1[t3]=wa[idij-1]*ch[t3]+wa[idij]*ch[t3-1];
- }
- t2+=ido;
- }
- }
-}
-
-static void drftb1(int n, float *c, float *ch, float *wa, int *ifac){
- int i,k1,l1,l2;
- int na;
- int nf,ip,iw,ix2,ix3,ido,idl1;
-
- nf=ifac[1];
- na=0;
- l1=1;
- iw=1;
-
- for(k1=0;k1<nf;k1++){
- ip=ifac[k1 + 2];
- l2=ip*l1;
- ido=n/l2;
- idl1=ido*l1;
- if(ip!=4)goto L103;
- ix2=iw+ido;
- ix3=ix2+ido;
-
- if(na!=0)
- dradb4(ido,l1,ch,c,wa+iw-1,wa+ix2-1,wa+ix3-1);
- else
- dradb4(ido,l1,c,ch,wa+iw-1,wa+ix2-1,wa+ix3-1);
- na=1-na;
- goto L115;
-
- L103:
- if(ip!=2)goto L106;
-
- if(na!=0)
- dradb2(ido,l1,ch,c,wa+iw-1);
- else
- dradb2(ido,l1,c,ch,wa+iw-1);
- na=1-na;
- goto L115;
-
- L106:
- if(ip!=3)goto L109;
-
- ix2=iw+ido;
- if(na!=0)
- dradb3(ido,l1,ch,c,wa+iw-1,wa+ix2-1);
- else
- dradb3(ido,l1,c,ch,wa+iw-1,wa+ix2-1);
- na=1-na;
- goto L115;
-
- L109:
-/* The radix five case can be translated later..... */
-/* if(ip!=5)goto L112;
-
- ix2=iw+ido;
- ix3=ix2+ido;
- ix4=ix3+ido;
- if(na!=0)
- dradb5(ido,l1,ch,c,wa+iw-1,wa+ix2-1,wa+ix3-1,wa+ix4-1);
- else
- dradb5(ido,l1,c,ch,wa+iw-1,wa+ix2-1,wa+ix3-1,wa+ix4-1);
- na=1-na;
- goto L115;
-
- L112:*/
- if(na!=0)
- dradbg(ido,ip,l1,idl1,ch,ch,ch,c,c,wa+iw-1);
- else
- dradbg(ido,ip,l1,idl1,c,c,c,ch,ch,wa+iw-1);
- if(ido==1)na=1-na;
-
- L115:
- l1=l2;
- iw+=(ip-1)*ido;
- }
-
- if(na==0)return;
-
- for(i=0;i<n;i++)c[i]=ch[i];
-}
-
-void drft_forward(drft_lookup *l,float *data){
- if(l->n==1)return;
- drftf1(l->n,data,l->trigcache,l->trigcache+l->n,l->splitcache);
-}
-
-void drft_backward(drft_lookup *l,float *data){
- if (l->n==1)return;
- drftb1(l->n,data,l->trigcache,l->trigcache+l->n,l->splitcache);
-}
-
-void drft_init(drft_lookup *l,int n){
- l->n=n;
- l->trigcache=_ogg_calloc(3*n,sizeof(float));
- l->splitcache=_ogg_calloc(32,sizeof(int));
- fdrffti(n, l->trigcache, l->splitcache);
-}
-
-void drft_clear(drft_lookup *l){
- if(l){
- if(l->trigcache)_ogg_free(l->trigcache);
- if(l->splitcache)_ogg_free(l->splitcache);
- memset(l,0,sizeof(drft_lookup));
- }
-}
diff --git a/lib/smallft.h b/lib/smallft.h
deleted file mode 100644
index 2dd9b38d..00000000
--- a/lib/smallft.h
+++ /dev/null
@@ -1,34 +0,0 @@
-/********************************************************************
- * *
- * 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: fft transform
- last mod: $Id: smallft.h,v 1.10 2001/02/26 03:50:43 xiphmont Exp $
-
-********************************************************************/
-
-#ifndef _V_SMFT_H_
-#define _V_SMFT_H_
-
-#include "vorbis/codec.h"
-
-typedef struct {
- int n;
- float *trigcache;
- int *splitcache;
-} drft_lookup;
-
-extern void drft_forward(drft_lookup *l,float *data);
-extern void drft_backward(drft_lookup *l,float *data);
-extern void drft_init(drft_lookup *l,int n);
-extern void drft_clear(drft_lookup *l);
-
-#endif
diff --git a/lib/synthesis.c b/lib/synthesis.c
deleted file mode 100644
index eb314b89..00000000
--- a/lib/synthesis.c
+++ /dev/null
@@ -1,103 +0,0 @@
-/********************************************************************
- * *
- * 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: single-block PCM synthesis
- last mod: $Id: synthesis.c,v 1.22 2001/05/27 06:44:01 xiphmont Exp $
-
- ********************************************************************/
-
-#include <stdio.h>
-#include <ogg/ogg.h>
-#include "vorbis/codec.h"
-#include "registry.h"
-#include "misc.h"
-#include "os.h"
-
-int vorbis_synthesis(vorbis_block *vb,ogg_packet *op){
- vorbis_dsp_state *vd=vb->vd;
- backend_lookup_state *b=vd->backend_state;
- vorbis_info *vi=vd->vi;
- codec_setup_info *ci=vi->codec_setup;
- oggpack_buffer *opb=&vb->opb;
- int type,mode,i;
-
- /* first things first. Make sure decode is ready */
- _vorbis_block_ripcord(vb);
- oggpack_readinit(opb,op->packet,op->bytes);
-
- /* Check the packet type */
- if(oggpack_read(opb,1)!=0){
- /* Oops. This is not an audio data packet */
- return(OV_ENOTAUDIO);
- }
-
- /* read our mode and pre/post windowsize */
- mode=oggpack_read(opb,b->modebits);
- if(mode==-1)return(OV_EBADPACKET);
-
- vb->mode=mode;
- vb->W=ci->mode_param[mode]->blockflag;
- if(vb->W){
- vb->lW=oggpack_read(opb,1);
- vb->nW=oggpack_read(opb,1);
- if(vb->nW==-1) return(OV_EBADPACKET);
- }else{
- vb->lW=0;
- vb->nW=0;
- }
-
- /* more setup */
- vb->granulepos=op->granulepos;
- vb->sequence=op->packetno-3; /* first block is third packet */
- vb->eofflag=op->e_o_s;
-
- /* alloc pcm passback storage */
- vb->pcmend=ci->blocksizes[vb->W];
- vb->pcm=_vorbis_block_alloc(vb,sizeof(float *)*vi->channels);
- for(i=0;i<vi->channels;i++)
- vb->pcm[i]=_vorbis_block_alloc(vb,vb->pcmend*sizeof(float));
-
- /* unpack_header enforces range checking */
- type=ci->map_type[ci->mode_param[mode]->mapping];
-
- return(_mapping_P[type]->inverse(vb,b->mode[mode]));
-}
-
-long vorbis_packet_blocksize(vorbis_info *vi,ogg_packet *op){
- codec_setup_info *ci=vi->codec_setup;
- oggpack_buffer opb;
- int type,mode,i;
-
- oggpack_readinit(&opb,op->packet,op->bytes);
-
- /* Check the packet type */
- if(oggpack_read(&opb,1)!=0){
- /* Oops. This is not an audio data packet */
- return(OV_ENOTAUDIO);
- }
-
- {
- int modebits=0;
- int v=ci->modes;
- while(v>1){
- modebits++;
- v>>=1;
- }
-
- /* read our mode and pre/post windowsize */
- mode=oggpack_read(&opb,modebits);
- }
- if(mode==-1)return(OV_EBADPACKET);
- return(ci->blocksizes[ci->mode_param[mode]->blockflag]);
-}
-
-
diff --git a/lib/time0.c b/lib/time0.c
deleted file mode 100644
index b2db6dc1..00000000
--- a/lib/time0.c
+++ /dev/null
@@ -1,54 +0,0 @@
-/********************************************************************
- * *
- * 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: time backend 0 (dummy)
- last mod: $Id: time0.c,v 1.9 2001/02/26 03:50:43 xiphmont Exp $
-
- ********************************************************************/
-
-#include <stdlib.h>
-#include <string.h>
-#include "vorbis/codec.h"
-#include "registry.h"
-#include "misc.h"
-
-static void time0_pack (vorbis_info_time *i,oggpack_buffer *opb){
-}
-static vorbis_info_time *time0_unpack (vorbis_info *vi,oggpack_buffer *opb){
- return "";
-
-}
-static vorbis_info_time *time0_copy_info (vorbis_info_time *vi){
- return "";
-}
-static vorbis_look_time *time0_look (vorbis_dsp_state *vd,vorbis_info_mode *mi,
- vorbis_info_time *i){
- return "";
-}
-static void time0_free_info(vorbis_info_time *i){
-}
-static void time0_free_look(vorbis_look_time *i){
-}
-static int time0_forward(vorbis_block *vb,vorbis_look_time *i,
- float *in,float *out){
- return(0);
-}
-static int time0_inverse(vorbis_block *vb,vorbis_look_time *i,
- float *in,float *out){
- return(0);
-}
-
-/* export hooks */
-vorbis_func_time time0_exportbundle={
- &time0_pack,&time0_unpack,&time0_look,&time0_copy_info,&time0_free_info,
- &time0_free_look,&time0_forward,&time0_inverse
-};
diff --git a/lib/tone.c b/lib/tone.c
deleted file mode 100644
index 3760344d..00000000
--- a/lib/tone.c
+++ /dev/null
@@ -1,54 +0,0 @@
-#include <stdlib.h>
-#include <stdio.h>
-#include <math.h>
-#include <string.h>
-
-void usage(){
- fprintf(stderr,"tone <frequency_Hz>,[<amplitude>] [<frequency_Hz>,[<amplitude>]...]\n");
- exit(1);
-}
-
-int main (int argc,char *argv[]){
- int i,j;
- double *f;
- double *amp;
-
- if(argc<2)usage();
-
- f=alloca(sizeof(float)*(argc-1));
- amp=alloca(sizeof(float)*(argc-1));
-
- i=0;
- while(argv[i+1]){
- char *pos=strchr(argv[i+1],',');
-
- f[i]=atof(argv[i+1]);
- if(pos)
- amp[i]=atof(pos+1)*32767.f;
- else
- amp[i]=32767.f;
-
- fprintf(stderr,"%g Hz, %g amp\n",f[i],amp[i]);
-
- i++;
- }
-
- for(i=0;i<44100*10;i++){
- float val=0;
- int ival;
- for(j=0;j<argc-1;j++)
- val+=amp[j]*sin(i/44100.f*f[j]*2*M_PI);
- ival=rint(val);
-
- if(ival>32767.f)ival=32767.f;
- if(ival<-32768.f)ival=-32768.f;
-
- fprintf(stdout,"%c%c%c%c",
- (char)(ival&0xff),
- (char)((ival>>8)&0xff),
- (char)(ival&0xff),
- (char)((ival>>8)&0xff));
- }
- return(0);
-}
-
diff --git a/lib/vorbisenc.c b/lib/vorbisenc.c
deleted file mode 100644
index 52e06834..00000000
--- a/lib/vorbisenc.c
+++ /dev/null
@@ -1,157 +0,0 @@
-/********************************************************************
- * *
- * 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: simple programmatic interface for encoder mode setup
- last mod: $Id: vorbisenc.c,v 1.7 2001/05/27 06:44:01 xiphmont Exp $
-
- ********************************************************************/
-
-#include <stdlib.h>
-#include <string.h>
-#include <math.h>
-
-#include "vorbis/codec.h"
-#include "vorbis/vorbisenc.h"
-
-#include "codec_internal.h"
-#include "registry.h"
-#include "modes/modes.h"
-
-#include "os.h"
-#include "misc.h"
-
-
-/* deepcopy all but the codebooks; in this usage, they're static
- (don't copy as they could be big) */
-static void codec_setup_partialcopy(codec_setup_info *ci,
- codec_setup_info *cs){
- int i;
-
- memcpy(ci,cs,sizeof(codec_setup_info)); /* to get the flat numbers */
-
- /* codebooks */
- for(i=0;i<ci->books;i++){
- ci->book_param[i]=cs->book_param[i];
- }
-
- /* time backend settings */
- for(i=0;i<ci->times;i++){
- ci->time_param[i]=_time_P[ci->time_type[i]]->
- copy_info(cs->time_param[i]);
- }
-
- /* floor backend settings */
- for(i=0;i<ci->floors;i++){
- ci->floor_param[i]=_floor_P[ci->floor_type[i]]->
- copy_info(cs->floor_param[i]);
- }
-
- /* residue backend settings */
- for(i=0;i<ci->residues;i++){
- ci->residue_param[i]=_residue_P[ci->residue_type[i]]->
- copy_info(cs->residue_param[i]);
- }
-
- /* map backend settings */
- for(i=0;i<ci->maps;i++){
- ci->map_param[i]=_mapping_P[ci->map_type[i]]->
- copy_info(cs->map_param[i]);
- }
-
- /* mode settings */
- for(i=0;i<ci->modes;i++){
- ci->mode_param[i]=_ogg_calloc(1,sizeof(vorbis_info_mode));
- ci->mode_param[i]->blockflag=cs->mode_param[i]->blockflag;
- ci->mode_param[i]->windowtype=cs->mode_param[i]->windowtype;
- ci->mode_param[i]->transformtype=cs->mode_param[i]->transformtype;
- ci->mode_param[i]->mapping=cs->mode_param[i]->mapping;
- }
-
- /* psy settings */
- for(i=0;i<ci->psys;i++){
- ci->psy_param[i]=_vi_psy_copy(cs->psy_param[i]);
- }
-
-}
-
-/* right now, this just encapsultes the old modes behind the interface
- we'll be using from here on out. After beta 3, the new bitrate
- tracking/modding/tuning engine will lurk inside */
-/* encoders will need to use vorbis_info_init beforehand and call
- vorbis_info clear when all done */
-
-int vorbis_encode_init(vorbis_info *vi,
- long channels,
- long rate,
-
- long max_bitrate,
- long nominal_bitrate,
- long min_bitrate){
-
- long bpch;
- int i,j;
- codec_setup_info *ci=vi->codec_setup;
- codec_setup_info *mode=NULL;
- if(!ci)return(OV_EFAULT);
-
- vi->version=0;
- vi->channels=channels;
- vi->rate=rate;
-
- vi->bitrate_upper=max_bitrate;
- vi->bitrate_nominal=nominal_bitrate;
- vi->bitrate_lower=min_bitrate;
- vi->bitrate_window=2;
-
- /* copy a mode into our allocated storage */
- bpch=nominal_bitrate/channels;
- if(bpch<60000){
- /* mode A */
- mode=&info_AA;
- }else if(bpch<75000){
- /* mode A */
- mode=&info_A;
- }else if(bpch<90000){
- /* mode B */
- mode=&info_B;
- }else if(bpch<110000){
- /* mode C */
- mode=&info_C;
- }else if(bpch<160000){
- /* mode D */
- mode=&info_D;
- }else{
- /* mode E */
- mode=&info_E;
- }
-
- /* now we have to deepcopy */
- codec_setup_partialcopy(ci,mode);
-
- /* adjust for sample rate */
- for(i=0;i<ci->floors;i++)
- if(ci->floor_type[i]==0)
- ((vorbis_info_floor0 *)(ci->floor_param[i]))->rate=rate;
-
- /* adjust for channels; all our mappings use submap zero now */
- /* yeah, OK, _ogg_calloc did this for us. But it's a reminder/placeholder */
- for(i=0;i<ci->maps;i++)
- for(j=0;j<channels;j++)
- ((vorbis_info_mapping0 *)ci->map_param[i])->chmuxlist[j]=0;
-
- return(0);
-}
-
-int vorbis_encode_ctl(vorbis_info *vi,int number,void *arg){
- return(OV_EIMPL);
-}
-
diff --git a/lib/vorbisfile.c b/lib/vorbisfile.c
index 07e4ac26..7d30fc7c 100644
--- a/lib/vorbisfile.c
+++ b/lib/vorbisfile.c
@@ -11,7 +11,7 @@
********************************************************************
function: stdio-based convenience library for opening/seeking/decoding
- last mod: $Id: vorbisfile.c,v 1.48 2001/06/02 11:38:14 msmith Exp $
+ last mod: $Id: vorbisfile.c,v 1.46 2001/05/27 08:16:00 xiphmont Exp $
********************************************************************/
@@ -49,7 +49,7 @@
information exists in an Ogg bitstream to seek to
sample-granularity positions in the output. Or, one can seek by
picking some portion of the stream roughly in the desired area if
- we only want coarse navigation through the stream. */
+ we only want course navigation through the stream. */
/*************************************************************************
* Many, many internal helpers. The intention is not to be confusing;
@@ -57,8 +57,7 @@
* harder to understand anyway. The high level functions are last. Begin
* grokking near the end of the file */
-/* read a little more data from the file/pipe into the ogg_sync framer
-*/
+/* read a little more data from the file/pipe into the ogg_sync framer */
#define CHUNKSIZE 8500 /* a shade over 8k; anyone using pages well
over 8k gets what they deserve */
static long _get_data(OggVorbis_File *vf){
@@ -590,14 +589,13 @@ static int _ov_open1(void *f,OggVorbis_File *vf,char *initial,
if((ret=_fetch_headers(vf,vf->vi,vf->vc,&vf->current_serialno,NULL))<0){
vf->datasource=NULL;
ov_clear(vf);
- }else if(vf->ready_state < PARTOPEN)
+ }else
vf->ready_state=PARTOPEN;
return(ret);
}
static int _ov_open2(OggVorbis_File *vf){
- if(vf->ready_state < OPENED)
- vf->ready_state=OPENED;
+ vf->ready_state=OPENED;
if(vf->seekable){
int ret=_open_seekable2(vf);
if(ret){
diff --git a/lib/window.c b/lib/window.c
deleted file mode 100644
index fe4cb269..00000000
--- a/lib/window.c
+++ /dev/null
@@ -1,62 +0,0 @@
-/********************************************************************
- * *
- * 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: window functions
- last mod: $Id: window.c,v 1.13 2001/02/26 03:50:43 xiphmont Exp $
-
- ********************************************************************/
-
-#include <stdlib.h>
-#include <math.h>
-#include "os.h"
-#include "misc.h"
-
-float *_vorbis_window(int type, int window,int left,int right){
- float *ret=_ogg_calloc(window,sizeof(float));
-
- switch(type){
- case 0:
- /* The 'vorbis window' (window 0) is sin(sin(x)*sin(x)*2pi) */
- {
- int leftbegin=window/4-left/2;
- int rightbegin=window-window/4-right/2;
- int i;
-
- for(i=0;i<left;i++){
- float x=(i+.5f)/left*M_PI/2.;
- x=sin(x);
- x*=x;
- x*=M_PI/2.f;
- x=sin(x);
- ret[i+leftbegin]=x;
- }
-
- for(i=leftbegin+left;i<rightbegin;i++)
- ret[i]=1.f;
-
- for(i=0;i<right;i++){
- float x=(right-i-.5f)/right*M_PI/2.;
- x=sin(x);
- x*=x;
- x*=M_PI/2.f;
- x=sin(x);
- ret[i+rightbegin]=x;
- }
- }
- break;
- default:
- _ogg_free(ret);
- return(NULL);
- }
- return(ret);
-}
-
diff --git a/lib/window.h b/lib/window.h
deleted file mode 100644
index 541045b9..00000000
--- a/lib/window.h
+++ /dev/null
@@ -1,23 +0,0 @@
-/********************************************************************
- * *
- * 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: window functions
- last mod: $Id: window.h,v 1.8 2001/02/26 03:50:43 xiphmont Exp $
-
- ********************************************************************/
-
-#ifndef _V_WINDOW_
-#define _V_WINDOW_
-
-extern float *_vorbis_window(int type,int window,int left,int right);
-
-#endif