added ogg/vorbis source code for ease of building on msvc
[laserbrain_demo] / libs / vorbis / highlevel.h
diff --git a/libs/vorbis/highlevel.h b/libs/vorbis/highlevel.h
new file mode 100644 (file)
index 0000000..e38f370
--- /dev/null
@@ -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;