New Bark-scale based lpc code in place (replacing biased log scale).
[platform/upstream/libvorbis.git] / include / modes.h
1 /********************************************************************
2  *                                                                  *
3  * THIS FILE IS PART OF THE Ogg Vorbis SOFTWARE CODEC SOURCE CODE.  *
4  * USE, DISTRIBUTION AND REPRODUCTION OF THIS SOURCE IS GOVERNED BY *
5  * THE GNU PUBLIC LICENSE 2, WHICH IS INCLUDED WITH THIS SOURCE.    *
6  * PLEASE READ THESE TERMS DISTRIBUTING.                            *
7  *                                                                  *
8  * THE OggSQUISH SOURCE CODE IS (C) COPYRIGHT 1994-2000             *
9  * by Monty <monty@xiph.org> and The XIPHOPHORUS Company            *
10  * http://www.xiph.org/                                             *
11  *                                                                  *
12  ********************************************************************
13
14  function: predefined encoding modes
15  last mod: $Id: modes.h,v 1.1 1999/12/31 12:35:11 xiphmont Exp $
16
17  ********************************************************************/
18
19 #ifndef _V_MODES_H_
20 #define _V_MODES_H_
21
22 #include <stdio.h>
23 #include "codec.h"
24
25 double threshhold_points[THRESH_POINTS]=
26 /* 0Hz                                                             24kHz
27  0   1   2   3   4   5   6   7  8   9  10 11  12 13  14 15 16 17 18 19 */ 
28 {0.,.01,.02,.03,.04,.06,.08,.1,.15,.2,.25,.3,.34,.4,.45,.5,.6,.7,.8,1.};
29
30 vorbis_info predef_modes[]={
31   /* CD quality stereo, no channel coupling */
32
33     /* channels, sample rate, upperkbps, nominalkbps, lowerkbps */
34   { 2, 44100, 0,0,0,
35     /* dummy, dummy, dummy, dummy */
36     0, NULL, 0, NULL, 
37     /* smallblock, largeblock, LPC order (small, large) */
38     {256, 2048}, {8,22}, 
39     /* {bark mapping size}, spectral channels */
40     {32,128}, 2,
41     /* thresh sample period, preecho clamp trigger threshhold, range, dummy */
42     64, 4, 2, NULL,
43     /* noise masking curve dB attenuation levels [20] */
44     /*{-12,-12,-18,-18,-18,-18,-18,-18,-18,-12,
45       -8,-4,0,0,0,0,0,0,0,0},*/
46     {-100,-100,-100,-100,-100,-100,-100,-24,-24,-24,
47      -24,-24,-24,-24,-24,-24,-24,-24,-24,-24},
48     /* noise masking scale biases */
49     .95,1.01,.01,
50     /* tone masking curve dB attenuation levels [20] */
51     {-20,-20,-20,-20,-20,-20,-20,-20,-20,-20,
52      -20,-20,-20,-20,-20,-20,-20,-20,-20,-20},
53     /* tone masking rolloff settings (dB per octave), octave bias */
54     90,60,.001,
55     NULL,NULL,NULL},
56   
57 };
58
59 #define predef_mode_max 0
60
61 #endif