1 /********************************************************************
2  *                                                                  *
3  * THIS FILE IS PART OF THE OggVorbis SOFTWARE CODEC SOURCE CODE.   *
4  * USE, DISTRIBUTION AND REPRODUCTION OF THIS LIBRARY SOURCE IS     *
5  * GOVERNED BY A BSD-STYLE SOURCE LICENSE INCLUDED WITH THIS SOURCE *
6  * IN 'COPYING'. PLEASE READ THESE TERMS BEFORE DISTRIBUTING.       *
7  *                                                                  *
8  * THE OggVorbis SOURCE CODE IS (C) COPYRIGHT 1994-2009             *
9  * by the Xiph.Org Foundation http://www.xiph.org/                  *
10  *                                                                  *
11  ********************************************************************
12 
13  function: highlevel encoder setup struct seperated out for vorbisenc clarity
14  last mod: $Id: highlevel.h 16995 2010-03-23 03:44:44Z xiphmont $
15 
16  ********************************************************************/
17 
18 typedef struct highlevel_byblocktype {
19   double tone_mask_setting;
20   double tone_peaklimit_setting;
21   double noise_bias_setting;
22   double noise_compand_setting;
23 } highlevel_byblocktype;
24 
25 typedef struct highlevel_encode_setup {
26   int   set_in_stone;
27   const void *setup;
28   double base_setting;
29 
30   double impulse_noisetune;
31 
32   /* bitrate management below all settable */
33   float  req;
34   int    managed;
35   long   bitrate_min;
36   long   bitrate_av;
37   double bitrate_av_damp;
38   long   bitrate_max;
39   long   bitrate_reservoir;
40   double bitrate_reservoir_bias;
41 
42   int impulse_block_p;
43   int noise_normalize_p;
44   int coupling_p;
45 
46   double stereo_point_setting;
47   double lowpass_kHz;
48   int    lowpass_altered;
49 
50   double ath_floating_dB;
51   double ath_absolute_dB;
52 
53   double amplitude_track_dBpersec;
54   double trigger_setting;
55 
56   highlevel_byblocktype block[4]; /* padding, impulse, transition, long */
57 
58 } highlevel_encode_setup;
59