#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 "os.h"
#if defined(TRAIN_RES) || defined (TRAIN_RESAUX)
#include <stdio.h>
#endif
vorbis_look_residue0;
void res0_free_info(vorbis_info_residue *i){ … }
void res0_free_look(vorbis_look_residue *i){ … }
static int icount(unsigned int v){ … }
void res0_pack(vorbis_info_residue *vr,oggpack_buffer *opb){ … }
vorbis_info_residue *res0_unpack(vorbis_info *vi,oggpack_buffer *opb){ … }
vorbis_look_residue *res0_look(vorbis_dsp_state *vd,
vorbis_info_residue *vr){ … }
static int local_book_besterror(codebook *book,int *a){ … }
#ifdef TRAIN_RES
static int _encodepart(oggpack_buffer *opb,int *vec, int n,
codebook *book,long *acc){
#else
static int _encodepart(oggpack_buffer *opb,int *vec, int n,
codebook *book){ … }
static long **_01class(vorbis_block *vb,vorbis_look_residue *vl,
int **in,int ch){ … }
static long **_2class(vorbis_block *vb,vorbis_look_residue *vl,int **in,
int ch){ … }
static int _01forward(oggpack_buffer *opb,
vorbis_look_residue *vl,
int **in,int ch,
long **partword,
#ifdef TRAIN_RES
int (*encode)(oggpack_buffer *,int *,int,
codebook *,long *),
int submap
#else
int (*encode)(oggpack_buffer *,int *,int,
codebook *)
#endif
){ … }
static int _01inverse(vorbis_block *vb,vorbis_look_residue *vl,
float **in,int ch,
long (*decodepart)(codebook *, float *,
oggpack_buffer *,int)){ … }
int res0_inverse(vorbis_block *vb,vorbis_look_residue *vl,
float **in,int *nonzero,int ch){ … }
int res1_forward(oggpack_buffer *opb,vorbis_block *vb,vorbis_look_residue *vl,
int **in,int *nonzero,int ch, long **partword, int submap){ … }
long **res1_class(vorbis_block *vb,vorbis_look_residue *vl,
int **in,int *nonzero,int ch){ … }
int res1_inverse(vorbis_block *vb,vorbis_look_residue *vl,
float **in,int *nonzero,int ch){ … }
long **res2_class(vorbis_block *vb,vorbis_look_residue *vl,
int **in,int *nonzero,int ch){ … }
int res2_forward(oggpack_buffer *opb,
vorbis_block *vb,vorbis_look_residue *vl,
int **in,int *nonzero,int ch, long **partword,int submap){ … }
int res2_inverse(vorbis_block *vb,vorbis_look_residue *vl,
float **in,int *nonzero,int ch){ … }
const vorbis_func_residue residue0_exportbundle= …;
const vorbis_func_residue residue1_exportbundle= …;
const vorbis_func_residue residue2_exportbundle= …;