comparison src/libvorbis-1.3.3/lib/highlevel.h @ 1:05aa0afa9217

Bring in flac, ogg, vorbis
author Chris Cannam
date Tue, 19 Mar 2013 17:37:49 +0000
parents
children
comparison
equal deleted inserted replaced
0:c7265573341e 1:05aa0afa9217
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 separated out for vorbisenc clarity
14 last mod: $Id: highlevel.h 17195 2010-05-05 21:49:51Z giles $
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;