diff options
Diffstat (limited to 'lib/highlevel.h')
-rw-r--r-- | lib/highlevel.h | 57 |
1 files changed, 57 insertions, 0 deletions
diff --git a/lib/highlevel.h b/lib/highlevel.h new file mode 100644 index 0000000..337b75b --- /dev/null +++ b/lib/highlevel.h @@ -0,0 +1,57 @@ +/******************************************************************** + * * + * 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-2009 * + * by the Xiph.Org Foundation http://www.xiph.org/ * + * * + ******************************************************************** + + function: highlevel encoder setup struct separated out for vorbisenc clarity + + ********************************************************************/ + +typedef struct highlevel_byblocktype { + double tone_mask_setting; + double tone_peaklimit_setting; + double noise_bias_setting; + double noise_compand_setting; +} highlevel_byblocktype; + +typedef struct highlevel_encode_setup { + int set_in_stone; + const void *setup; + double base_setting; + + double impulse_noisetune; + + /* bitrate management below all settable */ + float req; + int managed; + long bitrate_min; + long bitrate_av; + double bitrate_av_damp; + long bitrate_max; + long bitrate_reservoir; + double bitrate_reservoir_bias; + + int impulse_block_p; + int noise_normalize_p; + int coupling_p; + + double stereo_point_setting; + double lowpass_kHz; + int lowpass_altered; + + double ath_floating_dB; + double ath_absolute_dB; + + double amplitude_track_dBpersec; + double trigger_setting; + + highlevel_byblocktype block[4]; /* padding, impulse, transition, long */ + +} highlevel_encode_setup; |