X-Git-Url: http://git.mutantstargoat.com/user/nuclear/?p=laserbrain_demo;a=blobdiff_plain;f=libs%2Fvorbis%2Fhighlevel.h;fp=libs%2Fvorbis%2Fhighlevel.h;h=e38f370fd6cc44a5adc3852d7f1aa6ebdf7011a3;hp=0000000000000000000000000000000000000000;hb=f25228d21d10f8df4607384ddb879251d31ee40e;hpb=c48096383ed398a518e69070bfc9373537ab00bb diff --git a/libs/vorbis/highlevel.h b/libs/vorbis/highlevel.h new file mode 100644 index 0000000..e38f370 --- /dev/null +++ b/libs/vorbis/highlevel.h @@ -0,0 +1,58 @@ +/******************************************************************** + * * + * 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 + last mod: $Id: highlevel.h 17195 2010-05-05 21:49:51Z giles $ + + ********************************************************************/ + +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;