78
81
struct rotary_speaker_metadata: public plugin_metadata<rotary_speaker_metadata>
81
enum { par_speed, par_spacing, par_shift, par_moddepth, par_treblespeed, par_bassspeed, par_micdistance, par_reflection, par_meter_l, par_meter_h, param_count };
84
enum { par_speed, par_spacing, par_shift, par_moddepth, par_treblespeed, par_bassspeed, par_micdistance, par_reflection, par_am_depth, par_test, par_meter_l, par_meter_h, param_count };
82
85
enum { in_count = 2, out_count = 2, ins_optional = 0, outs_optional = 0, support_midi = true, require_midi = false, rt_capable = true };
83
86
PLUGIN_NAME_ID_LABEL("rotary_speaker", "rotaryspeaker", "Rotary Speaker")
147
158
struct compressor_metadata: public plugin_metadata<compressor_metadata>
149
160
enum { in_count = 2, out_count = 2, ins_optional = 0, outs_optional = 0, support_midi = false, require_midi = false, rt_capable = true };
150
enum { param_bypass, param_level_in, param_meter_in, param_meter_out, param_clip_in, param_clip_out,
161
enum { param_bypass, param_level_in, MONO_VU_METER_PARAMS,
151
162
param_threshold, param_ratio, param_attack, param_release, param_makeup, param_knee, param_detection, param_stereo_link, param_compression,
153
164
PLUGIN_NAME_ID_LABEL("compressor", "compressor", "Compressor")
157
168
struct sidechaincompressor_metadata: public plugin_metadata<sidechaincompressor_metadata>
159
170
enum { in_count = 2, out_count = 2, ins_optional = 0, outs_optional = 0, support_midi = false, require_midi = false, rt_capable = true };
160
enum { param_bypass, param_level_in, param_meter_in, param_meter_out, param_clip_in, param_clip_out,
171
enum { param_bypass, param_level_in, MONO_VU_METER_PARAMS,
161
172
param_threshold, param_ratio, param_attack, param_release, param_makeup, param_knee, param_detection, param_stereo_link, param_compression,
162
173
param_sc_mode, param_f1_freq, param_f2_freq, param_f1_level, param_f2_level,
163
174
param_sc_listen, param_f1_active, param_f2_active, param_count };
168
179
struct multibandcompressor_metadata: public plugin_metadata<multibandcompressor_metadata>
170
181
enum { in_count = 2, out_count = 2, ins_optional = 0, outs_optional = 0, support_midi = false, require_midi = false, rt_capable = true };
171
enum { param_bypass, param_level_in, param_level_out, param_meter_inL, param_meter_inR,
172
param_meter_outL, param_meter_outR, param_clip_inL, param_clip_inR, param_clip_outL, param_clip_outR,
182
enum { param_bypass, param_level_in, param_level_out,
183
STEREO_VU_METER_PARAMS,
173
184
param_freq0, param_freq1, param_freq2,
174
185
param_sep0, param_sep1, param_sep2,
175
186
param_q0, param_q1, param_q2,
197
208
PLUGIN_NAME_ID_LABEL("deesser", "deesser", "Deesser")
211
/// Damiens' Gate - metadata
212
/// Added some meters and stripped the weighting part
213
struct gate_metadata: public plugin_metadata<gate_metadata>
215
enum { in_count = 2, out_count = 2, ins_optional = 0, outs_optional = 0, support_midi = false, require_midi = false, rt_capable = true };
216
enum { param_bypass, param_level_in, MONO_VU_METER_PARAMS,
217
param_range, param_threshold, param_ratio, param_attack, param_release, param_makeup, param_knee, param_detection, param_stereo_link, param_gating,
219
PLUGIN_NAME_ID_LABEL("gate", "gate", "Gate")
222
/// Markus's sidechain gate - metadata
223
struct sidechaingate_metadata: public plugin_metadata<sidechaingate_metadata>
225
enum { in_count = 2, out_count = 2, ins_optional = 0, outs_optional = 0, support_midi = false, require_midi = false, rt_capable = true };
226
enum { param_bypass, param_level_in, MONO_VU_METER_PARAMS,
227
param_range, param_threshold, param_ratio, param_attack, param_release, param_makeup, param_knee, param_detection, param_stereo_link, param_gating,
228
param_sc_mode, param_f1_freq, param_f2_freq, param_f1_level, param_f2_level,
229
param_sc_listen, param_f1_active, param_f2_active, param_count };
230
PLUGIN_NAME_ID_LABEL("sidechaingate", "sidechaingate", "Sidechain Gate")
200
233
/// Markus's 5-band EQ - metadata
201
234
struct equalizer5band_metadata: public plugin_metadata<equalizer5band_metadata>
203
236
enum { in_count = 2, out_count = 2, ins_optional = 0, outs_optional = 0, support_midi = false, require_midi = false, rt_capable = true };
204
enum { param_bypass, param_level_in, param_level_out, param_meter_inL, param_meter_inR,
205
param_meter_outL, param_meter_outR, param_clip_inL, param_clip_outL, param_clip_inR, param_clip_outR,
237
enum { param_bypass, param_level_in, param_level_out, STEREO_VU_METER_PARAMS,
206
238
param_ls_active, param_ls_level, param_ls_freq,
207
239
param_hs_active, param_hs_level, param_hs_freq,
208
240
param_p1_active, param_p1_level, param_p1_freq, param_p1_q,
219
251
struct equalizer8band_metadata: public plugin_metadata<equalizer8band_metadata>
221
253
enum { in_count = 2, out_count = 2, ins_optional = 0, outs_optional = 0, support_midi = false, require_midi = false, rt_capable = true };
222
enum { param_bypass, param_level_in, param_level_out, param_meter_inL, param_meter_inR,
223
param_meter_outL, param_meter_outR, param_clip_inL, param_clip_inR, param_clip_outL, param_clip_outR,
254
enum { param_bypass, param_level_in, param_level_out,
255
STEREO_VU_METER_PARAMS,
224
256
param_hp_active, param_hp_freq, param_hp_mode,
225
257
param_lp_active, param_lp_freq, param_lp_mode,
226
258
param_ls_active, param_ls_level, param_ls_freq,
237
269
struct equalizer12band_metadata: public plugin_metadata<equalizer12band_metadata>
239
271
enum { in_count = 2, out_count = 2, ins_optional = 0, outs_optional = 0, support_midi = false, require_midi = false, rt_capable = true };
240
enum { param_bypass, param_level_in, param_level_out, param_meter_inL, param_meter_inR,
241
param_meter_outL, param_meter_outR, param_clip_inL, param_clip_inR, param_clip_outL, param_clip_outR,
272
enum { param_bypass, param_level_in, param_level_out,
273
STEREO_VU_METER_PARAMS,
242
274
param_hp_active, param_hp_freq, param_hp_mode,
243
275
param_lp_active, param_lp_freq, param_lp_mode,
244
276
param_ls_active, param_ls_level, param_ls_freq,
260
292
struct pulsator_metadata: public plugin_metadata<pulsator_metadata>
262
294
enum { in_count = 2, out_count = 2, ins_optional = 0, outs_optional = 0, support_midi = false, require_midi = false, rt_capable = true };
263
enum { param_bypass, param_level_in, param_level_out, param_meter_inL, param_meter_inR,
264
param_meter_outL, param_meter_outR, param_clip_inL, param_clip_inR, param_clip_outL, param_clip_outR,
295
enum { param_bypass, param_level_in, param_level_out, STEREO_VU_METER_PARAMS,
265
296
param_mode, param_freq, param_amount, param_offset, param_mono, param_reset, param_count };
266
297
PLUGIN_NAME_ID_LABEL("pulsator", "pulsator", "Pulsator")
270
301
struct saturator_metadata: public plugin_metadata<saturator_metadata>
272
303
enum { in_count = 2, out_count = 2, ins_optional = 1, outs_optional = 1, support_midi = false, require_midi = false, rt_capable = true };
273
enum { param_bypass, param_level_in, param_level_out, param_mix, param_meter_in,
274
param_meter_out, param_clip_in, param_clip_out, param_drive, param_blend, param_meter_drive,
304
enum { param_bypass, param_level_in, param_level_out, param_mix, MONO_VU_METER_PARAMS, param_drive, param_blend, param_meter_drive,
275
305
param_lp_pre_freq, param_hp_pre_freq, param_lp_post_freq, param_hp_post_freq,
276
306
param_p_freq, param_p_level, param_p_q, param_count };
277
307
PLUGIN_NAME_ID_LABEL("saturator", "saturator", "Saturator")
280
310
struct exciter_metadata: public plugin_metadata<exciter_metadata>
282
312
enum { in_count = 2, out_count = 2, ins_optional = 1, outs_optional = 1, support_midi = false, require_midi = false, rt_capable = true };
283
enum { param_bypass, param_level_in, param_level_out, param_amount, param_meter_in,
284
param_meter_out, param_clip_in, param_clip_out, param_drive, param_blend, param_meter_drive,
313
enum { param_bypass, param_level_in, param_level_out, param_amount, MONO_VU_METER_PARAMS, param_drive, param_blend, param_meter_drive,
285
314
param_freq, param_listen, param_count };
286
315
PLUGIN_NAME_ID_LABEL("exciter", "exciter", "Exciter")
289
318
struct bassenhancer_metadata: public plugin_metadata<bassenhancer_metadata>
291
320
enum { in_count = 2, out_count = 2, ins_optional = 1, outs_optional = 1, support_midi = false, require_midi = false, rt_capable = true };
292
enum { param_bypass, param_level_in, param_level_out, param_amount, param_meter_in,
293
param_meter_out, param_clip_in, param_clip_out, param_drive, param_blend, param_meter_drive,
321
enum { param_bypass, param_level_in, param_level_out, param_amount, MONO_VU_METER_PARAMS, param_drive, param_blend, param_meter_drive,
294
322
param_freq, param_listen, param_count };
295
323
PLUGIN_NAME_ID_LABEL("bassenhancer", "bassenhancer", "Bass Enhancer")
298
/// Damien's gate - metadata
299
struct gate_metadata: public plugin_metadata<gate_metadata>
301
enum { in_count = 3, out_count = 2, ins_optional = 1, outs_optional = 0, support_midi = false, require_midi = false, rt_capable = true };
302
enum { param_threshold, param_ratio, param_attack, param_release, param_makeup, param_knee, param_detection, param_stereo_link, param_aweighting, param_gating, param_peak, param_clip, param_bypass, param_range, param_mono, param_trigger, // param_freq, param_bw,
304
PLUGIN_NAME_ID_LABEL("gate", "gate", "Gate")
307
326
/// Organ - enums for parameter IDs etc. (this mess is caused by organ split between plugin and generic class - which was
308
327
/// a bad design decision and should be sorted out some day) XXXKF @todo
309
328
struct organ_enums
328
347
par_eg1attack, par_eg1decay, par_eg1sustain, par_eg1release, par_eg1velscl, par_eg1ampctl,
329
348
par_eg2attack, par_eg2decay, par_eg2sustain, par_eg2release, par_eg2velscl, par_eg2ampctl,
330
349
par_eg3attack, par_eg3decay, par_eg3sustain, par_eg3release, par_eg3velscl, par_eg3ampctl,
331
par_lforate, par_lfoamt, par_lfowet, par_lfophase, par_lfomode,
350
par_lforate, par_lfoamt, par_lfowet, par_lfophase, par_lfomode, par_lfotype,
332
351
par_transpose, par_detune,
393
416
enum { in_count = 0, out_count = 2, ins_optional = 0, outs_optional = 0, support_midi = true, require_midi = true, rt_capable = true };
394
417
PLUGIN_NAME_ID_LABEL("organ", "organ", "Organ")
395
420
plugin_command_info *get_commands();
421
const char *const *get_configure_vars() const;
398
424
/// FluidSynth - metadata
399
425
struct fluidsynth_metadata: public plugin_metadata<fluidsynth_metadata>
401
enum { par_master, par_interpolation, par_reverb, par_chorus, par_soundfont, par_preset_key_set, param_count };
427
enum { par_master, par_interpolation, par_reverb, par_chorus, param_count };
402
428
enum { in_count = 0, out_count = 2, ins_optional = 0, outs_optional = 0, support_midi = true, require_midi = true, rt_capable = false };
403
429
PLUGIN_NAME_ID_LABEL("fluidsynth", "fluidsynth", "Fluidsynth")
432
const char *const *get_configure_vars() const;
406
435
/// Wavetable - metadata
471
500
enum { in_count = 0, out_count = 2, ins_optional = 0, outs_optional = 0, support_midi = true, require_midi = true, rt_capable = true };
501
enum { mod_matrix_slots = 10 };
472
502
enum { step_size = 64 };
473
503
PLUGIN_NAME_ID_LABEL("wavetable", "wavetable", "Wavetable")
504
mod_matrix_metadata mm_metadata;
506
wavetable_metadata();
507
/// Lookup of table edit interface
508
virtual const table_metadata_iface *get_table_metadata_iface(const char *key) const { if (!strcmp(key, "mod_matrix")) return &mm_metadata; else return NULL; }