SOUND4 IMPACT.CL Library [1.1.8]
vars_process.h
Go to the documentation of this file.
1 // WARNING: Automated generated files, do not edit
2 #pragma once
3 
4 #include "stack.h"
5 #include "jsmap.h"
6 #include "jsbasetypes.h"
7 
8 #define PROCESS_TITLE "Impact.CL"
9 #define PRESET_EXTENSION "climp"
10 
11 // =============================
12 // ========== defines =========
13 // =============================
14 #define NB_EQ 4
15 #define NB_BAND_AGC 2
16 #define NB_BAND_PROC 6
17 #define NB_BAND_LIM 3
18 #define AGC2B_MAX_PERIOD 6
19 #define BANDPROC_MAX_PERIOD 6
20 
21 // =============================
22 // ======= scales enums =======
23 // =============================
24 // === enum lim_release ===
26  e_lim_release_Slow, // "Slow"
27  e_lim_release_Medium_Slow, // "Medium Slow"
28  e_lim_release_Medium_Fast, // "Medium Fast"
29  e_lim_release_FastLow, // "Medium Fast+"
30  e_lim_release_Fast // "Super Fast"
31 };
32 
33 // === enum bs1770_vutype ===
35  e_bs1770_vutype_Momentary, // "Momentary"
36  e_bs1770_vutype_ShortTerm, // "Short-Term"
37  e_bs1770_vutype_LongTerm // "Long-Term"
38 };
39 
40 // === enum lk_mode ===
41 enum e_lk_mode {
42  e_lk_mode_Stereo_Link, // "Stereo Link"
43  e_lk_mode_Independant, // "Independant"
44  e_lk_mode_Mixed_Channel // "Mixed Channel"
45 };
46 
47 // === enum preset_mode ===
49  e_preset_mode_pure, // "Pure Force"
51  e_preset_mode_hg2, // "HG II"
52  e_preset_mode_hg3 // "HG III"
53 };
54 
55 // === enum history_unit ===
57  e_history_unit_Second, // "Second"
58  e_history_unit_Minute, // "Minute"
60  e_history_unit_Day // "Day"
61 };
62 
63 // === enum history_var ===
65  e_history_var_in_bs_long, // "Input Long-Term LUFS"
66  e_history_var_out_bs_long // "Output Long-Term LUFS"
67 };
68 
69 // === enum lim_hilbert_filter ===
79 };
80 
81 // === enum hilbert_window ===
88  e_hilbert_window_blackman // "blackman"
89 };
90 
91 // === enum autoatt_mode ===
95  e_autoatt_mode_input // "Input"
96 };
97 
98 
99 // =============================
100 // ========== structs =========
101 // =============================
102 // === struct peakhold ===
104  S4Float hold = 0.0; /* dB : -6 to 6 step 0.1 */
105  S4Float pk = 0.0; /* dB : -6 to 6 step 0.1 */
106 };
107 
108 // === struct peakhold_stereo ===
110  S4Float hold[2] = { 0.0,0.0 }; /* dB : -6 to 6 step 0.1 */
111  S4Float pk[2] = { 0.0,0.0 }; /* dB : -6 to 6 step 0.1 */
112 };
113 
114 // === struct vupeakhold_stereo ===
116  S4Float hold[2] = { 0.0,0.0 }; /* dB : -6 to 6 step 0.1 */
117  S4Float pk[2] = { 0.0,0.0 }; /* dB : -6 to 6 step 0.1 */
118  S4Float vu[2] = { 0.0,0.0 }; /* dB : -6 to 6 step 0.1 */
119 };
120 
121 // === struct peak_percent ===
123  S4Float hold = 0.0; /* % : 0 to 100 step 0.1 */
124  S4Float pk = 0.0; /* % : 0 to 100 step 0.1 */
125 };
126 
127 // === struct agc_peakhold ===
129  S4Float hold[NB_BAND_AGC] = { 0.0,0.0 }; /* dB : -6 to 6 step 0.1 */
130  S4Float pk[NB_BAND_AGC] = { 0.0,0.0 }; /* dB : -6 to 6 step 0.1 */
131 };
132 
133 // === struct agc_stereo_peakhold ===
135  S4Float hold[NB_BAND_AGC*2] = { 0.0,0.0,0.0,0.0 }; /* dB : -6 to 6 step 0.1 */
136  S4Float pk[NB_BAND_AGC*2] = { 0.0,0.0,0.0,0.0 }; /* dB : -6 to 6 step 0.1 */
137 };
138 
139 // === struct band_peakhold ===
141  S4Float hold[NB_BAND_PROC] = { 0.0,0.0,0.0,0.0,0.0,0.0 }; /* dB : -6 to 6 step 0.1 */
142  S4Float pk[NB_BAND_PROC] = { 0.0,0.0,0.0,0.0,0.0,0.0 }; /* dB : -6 to 6 step 0.1 */
143 };
144 
145 // === struct band_stereo_peakhold ===
147  S4Float hold[NB_BAND_PROC*2] = { 0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0 }; /* dB : -6 to 6 step 0.1 */
148  S4Float pk[NB_BAND_PROC*2] = { 0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0 }; /* dB : -6 to 6 step 0.1 */
149 };
150 
151 // === struct band_peak_percent ===
153  S4Float hold[NB_BAND_PROC] = { 0.0,0.0,0.0,0.0,0.0,0.0 }; /* % : 0 to 100 step 0.1 */
154  S4Float pk[NB_BAND_PROC] = { 0.0,0.0,0.0,0.0,0.0,0.0 }; /* % : 0 to 100 step 0.1 */
155 };
156 
157 // === struct bandlim_peakhold ===
159  S4Float hold[NB_BAND_LIM] = { 0.0,0.0,0.0 }; /* dB : -6 to 6 step 0.1 */
160  S4Float pk[NB_BAND_LIM] = { 0.0,0.0,0.0 }; /* dB : -6 to 6 step 0.1 */
161 };
162 
163 // === struct bandlim_stereo_peakhold ===
165  S4Float hold[NB_BAND_LIM*2] = { 0.0,0.0,0.0,0.0,0.0,0.0 }; /* dB : -6 to 6 step 0.1 */
166  S4Float pk[NB_BAND_LIM*2] = { 0.0,0.0,0.0,0.0,0.0,0.0 }; /* dB : -6 to 6 step 0.1 */
167 };
168 
169 // === struct bandlim_peak_percent ===
171  S4Float hold[NB_BAND_LIM] = { 0.0,0.0,0.0 }; /* % : 0 to 100 step 0.1 */
172  S4Float pk[NB_BAND_LIM] = { 0.0,0.0,0.0 }; /* % : 0 to 100 step 0.1 */
173 };
174 
175 
176 // =============================
177 // ========== objects =========
178 // =============================
179 // === object preset_setup ===
180 // --- Preset ---
182  bool gate_on = true; /* on : Off,On */
183  S4Float gate = -80; /* dB : -100 to 0 step 0.1 */
184  bool hp_on = true; /* on : Off,On */
185  S4Float hp_freq = 30; /* Hz : 10 to 200 step 1 */
186  bool stereo_link = true; /* on : Off,On */
187  bool agc_matricing = true; /* on : Off,On */
188  bool band_matricing = true; /* on : Off,On */
189  bool agc_usewide = false; /* on : Off,On */
190  S4Float changespeed = 1.0; /* smoothspeed : 0.1 to 4 step 0.1 */
191  bool smoothagc_on = false; /* on : Off,On */
192  bool smoothband_on = false; /* on : Off,On */
193  enum e_preset_mode preset_mode = e_preset_mode_pure; /* DEV */ /* preset_mode : {e_preset_mode_pure,e_preset_mode_hg1,e_preset_mode_hg2,e_preset_mode_hg3} */
194  bool display_agc = true; /* on : Off,On */
195  bool display_tonefx = true; /* on : Off,On */
196  bool display_stereofx = true; /* on : Off,On */
197  bool display_bandexp = false; /* on : Off,On */
198  bool display_bandprocess = true; /* on : Off,On */
199  bool display_bandlook = false; /* on : Off,On */
200  bool display_bandlim = true; /* on : Off,On */
201  bool display_bassclip = false; /* on : Off,On */
202  bool display_agcattack = true; /* on : Off,On */
203  bool display_bassfx = true; /* on : Off,On */
204  bool display_treblefx = true; /* on : Off,On */
205  bool display_bandimpact = true; /* on : Off,On */
206  bool display_bandattack = true; /* on : Off,On */
207  bool display_bandratio = true; /* on : Off,On */
208  bool display_bandthickness = true; /* on : Off,On */
209 };
210 // --- VU ---
212  bool has_tonefx = false; /* on : Off,On */
213  bool has_bandexp = false; /* on : Off,On */
214  bool has_bandlook = false; /* on : Off,On */
215  bool has_bandlim = false; /* on : Off,On */
216  bool has_bassclip = false; /* on : Off,On */
217  bool show_stereolink = false; /* on : Off,On */
218  bool show_2bagc = false; /* on : Off,On */
219  bool show_agcwide = false; /* on : Off,On */
220 };
221 
222 // === object input ===
223 // --- Preset ---
224 struct json_input {
225 };
226 // --- VU ---
227 struct jsonvu_input {
228  struct json_vupeakhold_stereo vu; /* vupeakhold_stereo, Min: -36 Max: 0 */
229  bool standby = false; /* on : Off,On */
230  struct json_peakhold_stereo vuout; /* peakhold_stereo, Min: -80 Max: 0 */
231  S4Float bs_moment = 0.0; /* DEV */ /* LUFS : -36 to 0 step 0.1 */
232  S4Float bs_short = 0.0; /* DEV */ /* LUFS : -36 to 0 step 0.1 */
233  S4Float bs_long = 0.0; /* LUFS : -36 to 0 step 0.1 */
234  S4Float bs_user = 0.0; /* LUFS : -36 to 0 step 0.1 */
235  S4Float bs_psr = 0.0; /* DEV */ /* PSR : 0 to 18 step 0.1 */
236  S4Float bs_plr = 0.0; /* DEV */ /* PLR : 0 to 18 step 0.1 */
237 };
238 
239 // === object agc ===
240 // --- Preset ---
241 struct json_agc {
242  bool on = true; /* on : Off,On */
243  S4Float freq = 1530; /* Hz : 20 to 22000 step 1 */
244  bool hp_on = true; /* DEV */ /* on : Off,On */
245  S4Float hp_freq = 200; /* DEV */ /* Hz : 10 to 200 step 1 */
246  bool gate_on = true; /* on : Off,On */
247  S4Float gate[NB_BAND_AGC] = { -70.0,-70.0 }; /* dB : -100 to -10 step 0.1 */
248  bool drive_on = true; /* on : Off,On */
249  S4Float drive[NB_BAND_AGC] = { 0.0,0.0 }; /* dB : -30 to 30 step 0.1 */
250  S4Float threshold[NB_BAND_AGC] = { -55.0,-55.0 }; /* DEV */ /* dB : -146 to 16 step 0.1 */
251  S4Float postgain[NB_BAND_AGC] = { 12.0,12.0 }; /* DEV */ /* dB : -30 to 30 step 0.1 */
252  S4Float ratio[NB_BAND_AGC] = { 0.0,0.0 }; /* DEV */ /* % : 0 to 100 step 0.1 */
253  S4Float attack[NB_BAND_AGC] = { 1.0,1.0 }; /* dB/s : 1 to 32000 step 1 */
254  S4Float release[NB_BAND_AGC] = { 1.0,1.0 }; /* dB/s : 1.0 to 15 step 0.1 */
255  S4Float sustain[NB_BAND_AGC] = { 0.0,0.0 }; /* ms : 0.0 to 600 step 0.1 */
256  enum e_autoatt_mode autoatt_mode = e_autoatt_mode_gain; /* DEV */ /* autoatt_mode : {e_autoatt_mode_off,e_autoatt_mode_gain,e_autoatt_mode_input} */
257  S4Float autoatt_max[NB_BAND_AGC] = { 12.0,12.0 }; /* DEV */ /* dB/s : 5 to 32000 step 1 */
258  S4Float autoatt_start[NB_BAND_AGC] = { 0.0,0.0 }; /* DEV */ /* dB : 0 to 10 step 1 */
259  S4Float autoatt_stop[NB_BAND_AGC] = { 6.0,6.0 }; /* DEV */ /* dB : 0 to 30 step 1 */
260  bool autoatt_sym = false; /* DEV */ /* on : Off,On */
261  int nbperiod = 1; /* DEV */ /* nbperiod : 1 to AGC2B_MAX_PERIOD step 1 */
262  int smooth_agc = 1; /* DEV */ /* nbperiod : 1 to AGC2B_MAX_PERIOD step 1 */
263  S4Float impact[NB_BAND_AGC] = { 0.0,0.0 }; /* DEV */ /* dB : 0 to 10 step 0.1 */
264  S4Float avg_speed_gain[NB_BAND_AGC] = { 1.6,1.6 }; /* DEV */ /* sec : 0.1 to 300 step 0.1 */
265  S4Float avg_speed_in[NB_BAND_AGC] = { 1.6,1.6 }; /* DEV */ /* sec : 0.1 to 300 step 0.1 */
266  S4Float ref_speed_in[NB_BAND_AGC] = { 0.1,0.1 }; /* DEV */ /* sec : 0.01 to 1 step 0.01 */
267  bool fidelity_on = true; /* on : Off,On */
268  S4Float fidelity_speed = 2.4; /* DEV */ /* sec : 0.1 to 60 step 0.1 */
269  S4Float fidelity[NB_BAND_AGC] = { 50,50 }; /* % : 0 to 100 step 0.1 */
270  S4Float attack_min = 1.0; /* DEV */ /* dB/s : 1 to 32000 step 1 */
271  S4Float attack_max = 32000.0; /* DEV */ /* dB/s : 1 to 32000 step 1 */
272  S4Float voicethres[NB_BAND_AGC] = { 0.0,0.0 }; /* dB : -30 to 10 step 0.1 */
273  bool peak_mode = false; /* peak_mode : Power Mode,Peak Mode */
274 };
275 // --- VU ---
276 struct jsonvu_agc {
277  struct json_agc_peakhold in; /* agc_peakhold, Min: -60 Max: 0 */
278  bool gated[NB_BAND_AGC] = { false,false }; /* on : Off,On */
279  struct json_agc_stereo_peakhold fidel; /* DEV */ /* agc_stereo_peakhold, Min: -20 Max: 20 */
280  struct json_agc_stereo_peakhold mes_in; /* DEV */ /* agc_stereo_peakhold, Min: -60 Max: 0 */
281  struct json_agc_peakhold in_avg; /* DEV */ /* agc_peakhold, Min: -60 Max: 0 */
282  struct json_agc_peakhold gain; /* agc_peakhold, Min: -30 Max: 0 */
283  struct json_agc_peakhold out; /* agc_peakhold, Min: -60 Max: 0 */
284  struct json_agc_peakhold gain_avg; /* DEV */ /* agc_peakhold, Min: -30 Max: 0 */
285  struct json_agc_stereo_peakhold attack_vu; /* DEV */ /* agc_stereo_peakhold, Min: 0 Max: 50 */
286  S4Float attack_min_vu = 1.0; /* dB/s : 1 to 32000 step 1 */
287  S4Float attack_max_vu = 32000.0; /* dB/s : 1 to 32000 step 1 */
288  bool vu_on = false; /* on : Off,On */
289  S4Float vu_freq = 0.0; /* Hz : 20 to 22000 step 1 */
290 };
291 
292 // === object agcwide ===
293 // --- Preset ---
294 struct json_agcwide {
295  bool on = true; /* on : Off,On */
296  bool hp_on = true; /* DEV */ /* on : Off,On */
297  S4Float hp_freq = 200; /* DEV */ /* Hz : 10 to 200 step 1 */
298  bool gate_on = true; /* on : Off,On */
299  S4Float gate = -70.0; /* dB : -100 to -10 step 0.1 */
300  bool drive_on = true; /* on : Off,On */
301  S4Float drive = 0.0; /* dB : -30 to 30 step 0.1 */
302  S4Float threshold = -55.0; /* DEV */ /* dB : -146 to 16 step 0.1 */
303  S4Float postgain = 12.0; /* DEV */ /* dB : -30 to 30 step 0.1 */
304  S4Float ratio = 0.0; /* DEV */ /* % : 0 to 100 step 0.1 */
305  S4Float attack = 1.0; /* dB/s : 1 to 32000 step 1 */
306  S4Float release = 1.0; /* dB/s : 1.0 to 15 step 0.1 */
307  S4Float sustain = 0.0; /* ms : 0.0 to 600 step 0.1 */
308  enum e_autoatt_mode autoatt_mode = e_autoatt_mode_gain; /* DEV */ /* autoatt_mode : {e_autoatt_mode_off,e_autoatt_mode_gain,e_autoatt_mode_input} */
309  S4Float autoatt_max = 12.0; /* DEV */ /* dB/s : 5 to 32000 step 1 */
310  S4Float autoatt_start = 0.0; /* DEV */ /* dB : 0 to 10 step 1 */
311  S4Float autoatt_stop = 6.0; /* DEV */ /* dB : 0 to 30 step 1 */
312  bool autoatt_sym = false; /* DEV */ /* on : Off,On */
313  int nbperiod = 1; /* DEV */ /* nbperiod : 1 to AGC2B_MAX_PERIOD step 1 */
314  int smooth_agc = 1; /* DEV */ /* nbperiod : 1 to AGC2B_MAX_PERIOD step 1 */
315  S4Float impact = 0.0; /* DEV */ /* dB : 0 to 10 step 0.1 */
316  S4Float avg_speed_gain = 1.6; /* DEV */ /* sec : 0.1 to 300 step 0.1 */
317  S4Float avg_speed_in = 1.6; /* DEV */ /* sec : 0.1 to 300 step 0.1 */
318  S4Float ref_speed_in = 0.1; /* DEV */ /* sec : 0.01 to 1 step 0.01 */
319  S4Float attack_min = 1.0; /* DEV */ /* dB/s : 1 to 32000 step 1 */
320  S4Float attack_max = 32000.0; /* DEV */ /* dB/s : 1 to 32000 step 1 */
321  S4Float voicethres = 0.0; /* dB : -30 to 10 step 0.1 */
322  bool peak_mode = false; /* peak_mode : Power Mode,Peak Mode */
323 };
324 // --- VU ---
326  struct json_peakhold in; /* peakhold, Min: -60 Max: 0 */
327  bool gated = false; /* on : Off,On */
328  struct json_peakhold_stereo mes_in; /* DEV */ /* peakhold_stereo, Min: -60 Max: 0 */
329  struct json_peakhold in_avg; /* DEV */ /* peakhold, Min: -60 Max: 0 */
330  struct json_peakhold gain; /* peakhold, Min: -30 Max: 0 */
331  struct json_peakhold out; /* peakhold, Min: -60 Max: 0 */
332  struct json_peakhold gain_avg; /* DEV */ /* peakhold, Min: -30 Max: 0 */
333  struct json_peakhold_stereo attack_vu; /* DEV */ /* peakhold_stereo, Min: 0 Max: 50 */
334  S4Float attack_min_vu = 1.0; /* dB/s : 1 to 32000 step 1 */
335  S4Float attack_max_vu = 32000.0; /* dB/s : 1 to 32000 step 1 */
336  bool vu_on = false; /* on : Off,On */
337 };
338 
339 // === object tonefx ===
340 // --- Preset ---
341 struct json_tonefx {
342  bool on = true; /* on : Off,On */
343  bool eq_on[NB_EQ] = { true,true,true,true }; /* on : Off,On */
344  S4Float eq_freq[NB_EQ] = { 60,60,60,60 }; /* Hz : 20 to 22000 step 1 */
345  S4Float eq_Q[NB_EQ] = { 1,1,1,1 }; /* Q : 0.01 to 60. step 0.01 */
346  S4Float eq_gain[NB_EQ] = { 0.0,0.0,0.0,0.0 }; /* dB : -12 to 12 step 0.1 */
347  bool bass_on = true; /* on : Off,On */
348  S4Float bass_gain = 4; /* dB : 0 to 20 step 0.1 */
349  S4Float bass_gain_max = 20; /* DEV */ /* dB : 0 to 20 step 0.1 */
350  S4Float bass_freq = 90; /* DEV */ /* Hz : 20 to 20000 step 1 */
351  bool bass_fix_mode = true; /* DEV */ /* on : Off,On */
352  S4Float bass_efficiency = 21; /* DEV */ /* % : 0 to 100 step 0.1 */
353  S4Float bass_threshold = -24; /* DEV */ /* dB : -30 to 30 step 0.1 */
354  S4Float bass_attack = 100; /* DEV */ /* dB/s : 0.1 to 320 step 0.1 */
355  S4Float bass_release = 6; /* DEV */ /* dB/s : 0.1 to 320 step 0.1 */
356  bool treble_on = true; /* on : Off,On */
357  S4Float treble_value = 4; /* dB : 0 to 20 step 0.1 */
358  S4Float treble_value_max = 20; /* DEV */ /* dB : 0 to 20 step 0.1 */
359  S4Float treble_range = 14; /* DEV */ /* % : 0 to 100 step 0.1 */
360 };
361 // --- VU ---
363  S4Float bass_vu = 0.0; /* dB : 0 to 20 step 0.1 */
364  S4Float bass_gain_max_vu = 0.0; /* dB : 0 to 20 step 0.1 */
365  S4Float treble_value_max_vu = 0.0; /* dB : 0 to 20 step 0.1 */
366 };
367 
368 // === object stereofx ===
369 // --- Preset ---
371  bool on = true; /* on : Off,On */
372  bool enh_on = true; /* on : Off,On */
373  S4Float enh_width = 0.0; /* % : 0 to 100 step 0.1 */
374  S4Float enh_attack = 1; /* DEV */ /* dB/s : 0 to 100.00 step 0.01 */
375  S4Float enh_release = 1; /* DEV */ /* dB/s : 0 to 100.00 step 0.01 */
376  S4Float enh_threshold = -60; /* DEV */ /* dB : -100 to 0 step 0.1 */
377  S4Float enh_thresLR = -40; /* DEV */ /* dB : -100 to 0 step 0.1 */
378  bool lim_on = true; /* on : Off,On */
379  S4Float lim_threshold[NB_BAND_PROC] = { 50,50,50,50,50,50 }; /* % : 0 to 100 step 0.1 */
380  S4Float lim_attack[NB_BAND_PROC] = { 3000,3000,3000,3000,3000,3000 }; /* DEV */ /* dB/s : 1 to 32000.00 step 1 */
381  S4Float lim_release[NB_BAND_PROC] = { 50,50,50,50,50,50 }; /* DEV */ /* dB/s : 1 to 320.00 step 0.01 */
382  bool clean_on = true; /* DEV */ /* on : Off,On */
383  S4Float clean_threshold[NB_BAND_PROC] = { 50,50,50,50,50,50 }; /* DEV */ /* % : 0 to 100 step 0.1 */
384  S4Float clean_release[NB_BAND_PROC] = { 50,50,50,50,50,50 }; /* DEV */ /* dB/s : 0 to 320.00 step 0.01 */
385 };
386 // --- VU ---
388  struct json_peak_percent enh_vu; /* peak_percent */
389  struct json_band_peak_percent lim_bdvu; /* band_peak_percent */
390  struct json_peak_percent lim_vu; /* peak_percent */
391  struct json_band_peak_percent clean_bdvu; /* DEV */ /* band_peak_percent */
392  struct json_peak_percent clean_vu; /* DEV */ /* peak_percent */
393 };
394 
395 // === object bandexp ===
396 // --- Preset ---
397 struct json_bandexp {
398  bool on = true; /* on : Off,On */
399  bool down_on = true; /* on : Off,On */
400  bool matrix_on = true; /* on : Off,On */
401  bool stereo_link = false; /* DEV */ /* on : Off,On */
402  bool up_on = true; /* on : Off,On */
403  bool drive_on = true; /* on : Off,On */
404  S4Float drive[NB_BAND_PROC] = { 0,0,0,0,0,0 }; /* dB : -20 to 20 step 0.1 */
405  S4Float postgain[NB_BAND_PROC] = { 0,0,0,0,0,0 }; /* DEV */ /* dB : -20 to 20 step 0.1 */
406  S4Float down_thres[NB_BAND_PROC] = { -40,-40,-40,-40,-40,-40 }; /* dB : -60 to 0 step 0.1 */
407  S4Float down_ratio[NB_BAND_PROC] = { 100,100,100,100,100,100 }; /* DEV */ /* % : 0 to 100 step 0.1 */
408  S4Float down_attack[NB_BAND_PROC] = { 7000,7000,7000,7000,7000,7000 }; /* dB/s : 1 to 32000 step 0.1 */
409  S4Float down_release[NB_BAND_PROC] = { 50,50,50,50,50,50 }; /* dB/s : 1 to 32000 step 0.1 */
410  bool down_sustain_on = true; /* on : Off,On */
411  S4Float down_sustain[NB_BAND_PROC] = { 85,85,85,85,85,85 }; /* ms : 0 to 200 step 0.1 */
412  S4Float down_min[NB_BAND_PROC] = { -30,-30,-30,-30,-30,-30 }; /* dB : -90 to 0 step 0.1 */
413  S4Float up_thres[NB_BAND_PROC] = { -30,-30,-30,-30,-30,-30 }; /* dB : -60 to 0 step 0.1 */
414  S4Float up_ratio[NB_BAND_PROC] = { 50,50,50,50,50,50 }; /* DEV */ /* % : 0 to 100 step 0.1 */
415  S4Float up_attack[NB_BAND_PROC] = { 300,300,300,300,300,300 }; /* dB/s : 1 to 32000 step 0.1 */
416  S4Float up_release[NB_BAND_PROC] = { 5,5,5,5,5,5 }; /* dB/s : 1 to 32000 step 0.1 */
417  bool up_sustain_on = true; /* on : Off,On */
418  S4Float up_sustain[NB_BAND_PROC] = { 80,80,80,80,80,80 }; /* ms : 0 to 200 step 0.1 */
419  S4Float up_max[NB_BAND_PROC] = { 6,6,6,6,6,6 }; /* dB : 0 to 20 step 0.1 */
420 };
421 // --- VU ---
423  struct json_band_peakhold down; /* band_peakhold, Min: -60 Max: 0 */
424  struct json_band_peakhold up; /* band_peakhold, Min: 0 Max: 15 */
425  struct json_band_peakhold mes_in; /* DEV */ /* band_peakhold, Min: -60 Max: 0 */
426 };
427 
428 // === object bandprocess ===
429 // --- Preset ---
431  bool on = true; /* on : Off,On */
432  S4Float freq[NB_BAND_PROC-1] = { 80,200,1000,3000,7000 }; /* Hz : 20 to 20000 step 1 */
433  bool gate_on = true; /* on : Off,On */
434  bool gate_to_avg = true; /* DEV */ /* on : Off,On */
435  S4Float gate[NB_BAND_PROC] = { -70,-70,-70,-70,-70,-70 }; /* dB : -100 to 0 step 0.1 */
436  bool fidelity_on = true; /* on : Off,On */
437  S4Float fidelity_speed = 2.4; /* DEV */ /* sec : 0.1 to 60 step 0.1 */
438  S4Float fidelity[NB_BAND_PROC] = { 10,10,10,10,10,10 }; /* % : 0 to 100 step 0.1 */
439  bool peak_mode = false; /* peak_mode : Power Mode,Peak Mode */
440  bool drive_on = true; /* on : Off,On */
441  S4Float drive[NB_BAND_PROC] = { 3.6,3.6,3.6,3.6,3.6,3.6 }; /* dB : -30 to 30 step 0.1 */
442  bool threshold_on = true; /* on : Off,On */
443  S4Float threshold[NB_BAND_PROC] = { 0.0,0.0,0.0,0.0,0.0,0.0 }; /* dB : -6 to 6 step 0.1 */
444  S4Float base_thres[NB_BAND_PROC] = { -41.0,-41.0,-41.0,-41.0,-41.0,-41.0 }; /* DEV */ /* dB : -140 to 10 step 0.1 */
445  S4Float postgain[NB_BAND_PROC] = { 33.0,33.0,33.0,33.0,33.0,33.0 }; /* DEV */ /* dB : 0 to 40 step 0.1 */
446  S4Float ratio[NB_BAND_PROC] = { 60.0,60.0,60.0,60.0,60.0,60.0 }; /* % : 0 to 100 step 0.1 */
447  S4Float attack[NB_BAND_PROC] = { 361.0,361.0,361.0,361.0,361.0,361.0 }; /* dB/s : 1 to 5000 step 1 */
448  S4Float release[NB_BAND_PROC] = { 10.0,10.0,10.0,10.0,10.0,10.0 }; /* dB/s : 0.5 to 400 step 0.1 */
449  S4Float releasesustain[NB_BAND_PROC] = { 0.0,0.0,0.0,0.0,0.0,0.0 }; /* dB/s : 0.1 to 200 step 0.1 */
450  bool sustain_on = true; /* on : Off,On */
451  S4Float sustain[NB_BAND_PROC] = { 0.0,0.0,0.0,0.0,0.0,0.0 }; /* ms : 0 to 200 step 0.1 */
452  int nbperiod = 1; /* DEV */ /* nbperiod : 1 to BANDPROC_MAX_PERIOD step 1 */
453  int smooth_band = 1; /* DEV */ /* nbperiod : 1 to BANDPROC_MAX_PERIOD step 1 */
454  bool impact_on = true; /* on : Off,On */
455  S4Float impact[NB_BAND_PROC] = { 0.0,0.0,0.0,0.0,0.0,0.0 }; /* dB : 0 to 10 step 0.1 */
456  bool mix_on = true; /* on : Off,On */
457  S4Float mix[NB_BAND_PROC] = { 0.0,0.0,0.0,0.0,0.0,0.0 }; /* dB : -16 to +16 step 0.1 */
458  S4Float avg_speed_gain[NB_BAND_PROC] = { 10,10,10,10,10,10 }; /* DEV */ /* sec : 0.1 to 300 step 0.1 */
459  S4Float voicethres[NB_BAND_PROC] = { 0.0,0.0,0.0,0.0,0.0,0.0 }; /* dB : -10 to 10 step 0.1 */
460  bool voiceattack_on = false; /* on : Off,On */
461  S4Float voiceattack[NB_BAND_PROC] = { 361.0,361.0,361.0,361.0,361.0,361.0 }; /* dB/s : 5 to 5000 step 1 */
462  S4Float voicemix[NB_BAND_PROC] = { 0.0,0.0,0.0,0.0,0.0,0.0 }; /* dB : -10 to +10 step 0.1 */
463  S4Float attack_min = 5.0; /* DEV */ /* dB/s : 1 to 5000 step 1 */
464  S4Float attack_max = 5000.0; /* DEV */ /* dB/s : 1 to 5000 step 1 */
465  S4Float release_min = 1.0; /* DEV */ /* dB/s : 1 to 400 step 1 */
466  S4Float release_max = 400.0; /* DEV */ /* dB/s : 1 to 400 step 1 */
467  int listen = 0; /* DEV */ /* int : 0 to NB_BAND_PROC step 1 */
468 };
469 // --- VU ---
471  struct json_band_peakhold splitin; /* band_peakhold, Min: -50 Max: 10 */
472  struct json_band_stereo_peakhold fidel; /* DEV */ /* band_stereo_peakhold, Min: -20 Max: 20 */
473  struct json_band_peakhold splitout; /* band_peakhold, Min: -60 Max: 0 */
474  bool gated[NB_BAND_PROC] = { false,false,false,false,false,false }; /* on : Off,On */
475  struct json_band_peakhold in; /* band_peakhold, Min: -60 Max: 0 */
476  struct json_band_peakhold gain_avg; /* DEV */ /* band_peakhold, Min: -40 Max: 0 */
477  struct json_band_peakhold gain; /* band_peakhold, Min: -40 Max: 0 */
478  S4Float attack_min_vu = 5.0; /* dB/s : 1 to 5000 step 1 */
479  S4Float attack_max_vu = 5000.0; /* dB/s : 1 to 5000 step 1 */
480  S4Float release_min_vu = 1.0; /* dB/s : 1 to 400 step 1 */
481  S4Float release_max_vu = 400.0; /* dB/s : 1 to 400 step 1 */
482  bool vu_on = false; /* on : Off,On */
483  S4Float vu_freq[NB_BAND_PROC-1] = { 0.0,0.0,0.0,0.0,0.0 }; /* Hz : 20 to 20000 step 1 */
484 };
485 
486 // === object bandlook ===
487 // --- Preset ---
489  bool on = true; /* on : Off,On */
490  S4Float drive[NB_BAND_PROC] = { 0.0,0.0,0.0,0.0,0.0,0.0 }; /* dB : -20 to 20 step 0.1 */
491  S4Float base_drive[NB_BAND_PROC] = { 0.0,0.0,0.0,0.0,0.0,0.0 }; /* DEV */ /* dB : -20 to 20 step 0.1 */
492  S4Float threshold[NB_BAND_PROC] = { 0.0,0.0,0.0,0.0,0.0,0.0 }; /* dB : -20 to 20 step 0.1 */
493  S4Float base_thres[NB_BAND_PROC] = { -21,-21,-21,-21,-21,-21 }; /* DEV */ /* dB : -20 to 20 step 0.1 */
494  S4Float latency = 1; /* DEV */ /* ms : 0.5 to 30 step 0.1 */
495  S4Float attack[NB_BAND_PROC] = { 50,50,50,50,50,50 }; /* DEV */ /* dB/s : 1 to 32000 step 1 */
496  S4Float release[NB_BAND_PROC] = { 50,50,50,50,50,50 }; /* DEV */ /* dB/s : 0 to 32000 step 1 */
497  S4Float mix[NB_BAND_PROC] = { 0.0,0.0,0.0,0.0,0.0,0.0 }; /* dB : -20 to 20 step 0.1 */
498  S4Float factor = 4; /* DEV */ /* x : 1.0 to 8.0 step 0.1 */
499  bool fidelity_on = true; /* on : Off,On */
500  S4Float fidelity[NB_BAND_PROC] = { 10,10,10,10,10,10 }; /* % : 0 to 100 step 0.1 */
501  S4Float attack_min = 1.0; /* DEV */ /* dB/s : 1 to 32000 step 1 */
502  S4Float attack_max = 32000.0; /* DEV */ /* dB/s : 1 to 32000 step 1 */
503  S4Float release_min = 1.0; /* DEV */ /* dB/s : 1 to 32000 step 1 */
504  S4Float release_max = 32000.0; /* DEV */ /* dB/s : 1 to 32000 step 1 */
505 };
506 // --- VU ---
508  struct json_band_peakhold gain; /* band_peakhold, Min: -24 Max: 0 */
509  struct json_band_stereo_peakhold fidel; /* DEV */ /* band_stereo_peakhold, Min: -20 Max: 20 */
510  S4Float attack_min_vu = 1.0; /* dB/s : 1 to 32000 step 1 */
511  S4Float attack_max_vu = 32000.0; /* dB/s : 1 to 32000 step 1 */
512  S4Float release_min_vu = 1.0; /* dB/s : 1 to 32000 step 1 */
513  S4Float release_max_vu = 32000.0; /* dB/s : 1 to 32000 step 1 */
514 };
515 
516 // === object bandlim ===
517 // --- Preset ---
518 struct json_bandlim {
519  bool on = true; /* on : Off,On */
520  S4Float freq[NB_BAND_LIM-1] = { 120,2690 }; /* Hz : 20 to 20000 step 1 */
521  bool drive_on = true; /* on : Off,On */
522  S4Float drive[NB_BAND_LIM] = { 3.6,3.6,3.6 }; /* dB : -30 to 30 step 0.1 */
523  bool threshold_on = true; /* on : Off,On */
524  S4Float threshold[NB_BAND_LIM] = { 0.0,0.0,0.0 }; /* dB : -6 to 6 step 0.1 */
525  S4Float base_thres[NB_BAND_LIM] = { -41.0,-41.0,-41.0 }; /* DEV */ /* dB : -30 to 30 step 0.1 */
526  S4Float postgain[NB_BAND_LIM] = { 0.0,0.0,0.0 }; /* DEV */ /* dB : -30 to 30 step 0.1 */
527  bool mix_on = true; /* on : Off,On */
528  S4Float mix[NB_BAND_LIM] = { 0.0,0.0,0.0 }; /* dB : -6 to +6 step 0.1 */
529  bool fidelity_on = true; /* on : Off,On */
530  S4Float fidelity_speed = 2.4; /* DEV */ /* sec : 0.1 to 60 step 0.1 */
531  S4Float fidelity[NB_BAND_LIM] = { 10,10,10 }; /* % : 0 to 100 step 0.1 */
532  int listen = 0; /* DEV */ /* int : 0 to NB_BAND_LIM step 1 */
533 };
534 // --- VU ---
536  struct json_bandlim_peakhold splitin; /* bandlim_peakhold, Min: -50 Max: 10 */
537  struct json_bandlim_peakhold splitout; /* bandlim_peakhold, Min: -60 Max: 0 */
538  struct json_bandlim_peakhold in; /* DEV */ /* bandlim_peakhold, Min: -60 Max: 0 */
539  struct json_bandlim_stereo_peakhold fidel; /* DEV */ /* bandlim_stereo_peakhold, Min: -20 Max: 20 */
540  struct json_bandlim_peakhold gain; /* bandlim_peakhold, Min: -40 Max: 0 */
541 };
542 
543 // === object parameq ===
544 // --- Preset ---
545 struct json_parameq {
546  bool on = true; /* on : Off,On */
547  bool eq_on[NB_EQ] = { true,true,true,true }; /* on : Off,On */
548  S4Float eq_freq[NB_EQ] = { 60,60,60,60 }; /* Hz : 20 to 22000 step 1 */
549  S4Float eq_Q[NB_EQ] = { 1,1,1,1 }; /* Q : 0.01 to 60. step 0.01 */
550  S4Float eq_gain[NB_EQ] = { 0.0,0.0,0.0,0.0 }; /* dB : -12 to 12 step 0.1 */
551 };
552 // --- VU ---
554 };
555 
556 // === object bassclip ===
557 // --- Preset ---
559  bool on = true; /* on : Off,On */
560  S4Float freq = 190; /* DEV */ /* Hz : 20 to 22000 step 1 */
561  S4Float drive = 0; /* dB : -10 to 10 step 0.1 */
562  S4Float base_drive = 0; /* DEV */ /* dB : -50 to 10 step 0.1 */
563  S4Float threshold = -3; /* dB : -8 to 8 step 0.1 */
564  S4Float base_thres = 0; /* DEV */ /* dB : -20 to 20 step 0.1 */
565  S4Float postgain = 0; /* DEV */ /* dB : -30 to 30 step 0.1 */
566 };
567 // --- VU ---
569  struct json_peakhold gain; /* peakhold, Min: -30 Max: 0 */
570 };
571 
572 // === object limiter ===
573 // --- Preset ---
574 struct json_limiter {
575  bool drive_on = true; /* on : Off,On */
576  S4Float drive = 0.0; /* dB : -20 to 20 step 0.1 */
577  S4Float base_drive = 0.0; /* DEV */ /* dB : -20 to 20 step 0.1 */
578  S4Float threshold = 0.0; /* dB : -20 to 20 step 0.1 */
579  S4Float base_thres = 0.0; /* DEV */ /* dB : -20 to 20 step 0.1 */
580  S4Float latency = 2; /* ms : 0.5 to 10 step 0.1 */
581  S4Float attack = 50; /* DEV */ /* dB/s : 1 to 32000 step 1 */
582  enum e_lim_release release = e_lim_release_Slow; /* lim_release : {e_lim_release_Slow,e_lim_release_Medium_Slow,e_lim_release_Medium_Fast,e_lim_release_FastLow,e_lim_release_Fast} */
583  bool overdrive_on = true; /* on : Off,On */
584  S4Float overdrive = 0.0; /* dB : 0 to 4 step 0.1 */
585  S4Float factor = 4; /* DEV */ /* x : 1.0 to 8.0 step 0.1 */
586  S4Float rel_tab[5] = { 50,50,50,50,50 }; /* DEV */ /* dB/s : 1 to 32000 step 1 */
587  bool driveless_on = false; /* on : Off,On */
588  S4Float driveless = 0.0; /* dB : -4 to 0 step 0.1 */
589  bool post_on = true; /* DEV */ /* on : Off,On */
590  S4Float post_thres = 0; /* DEV */ /* dB : -30 to 30 step 0.1 */
591  enum e_lim_hilbert_filter post_filter = e_lim_hilbert_filter_hilb_1001; /* DEV */ /* lim_hilbert_filter : {e_lim_hilbert_filter_hilb_253,e_lim_hilbert_filter_hilb_377,e_lim_hilbert_filter_hilb_501,e_lim_hilbert_filter_hilb_749,e_lim_hilbert_filter_hilb_1001,e_lim_hilbert_filter_hilb_2001,e_lim_hilbert_filter_hilb_4001,e_lim_hilbert_filter_hilb_8001} */
592  enum e_hilbert_window post_window = e_hilbert_window_sinc; /* DEV */ /* hilbert_window : {e_hilbert_window_rect,e_hilbert_window_sinc,e_hilbert_window_kaiser,e_hilbert_window_hann,e_hilbert_window_hamming,e_hilbert_window_blackman} */
593  S4Float post_param_s = 2.0; /* DEV */ /* hilbert_param_s : 0.1 to 20.0 step 0.1 */
594  S4Float post_param_k = 6.0; /* DEV */ /* hilbert_param_k : 0.1 to 10.0 step 0.1 */
595  bool clip_on = true; /* DEV */ /* on : Off,On */
596  bool cliplow_on = true; /* DEV */ /* on : Off,On */
597 };
598 // --- VU ---
600  struct json_peakhold gain; /* peakhold, Min: -12 Max: 0 */
601  struct json_peakhold lkatt; /* DEV */ /* peakhold, Min: -10 Max: 0 */
602  struct json_peakhold post; /* DEV */ /* peakhold, Min: -20 Max: 0 */
603  struct json_peakhold over; /* DEV */ /* peakhold, Min: -10 Max: 0 */
604 };
605 
606 // === object output ===
607 // --- Preset ---
608 struct json_output {
609 };
610 // --- VU ---
612  struct json_vupeakhold_stereo vu; /* vupeakhold_stereo, Min: -36 Max: 0 */
613 };
614 
615 // === object r128 ===
616 // --- Preset ---
617 struct json_r128 {
618  bool on = false; /* on : Off,On */
619  S4Float target = -14; /* LUFS : -36 to 0 step 0.1 */
620  S4Float attack = 0.7; /* DEV */ /* dB/s : 0.01 to 10 step 0.01 */
621  S4Float release = 0.4; /* DEV */ /* dB/s : 0.01 to 10 step 0.01 */
622 };
623 // --- VU ---
624 struct jsonvu_r128 {
625  bool vu_on = false; /* on : Off,On */
626  S4Float vu_target = 0.0; /* LUFS : -36 to 0 step 0.1 */
627  S4Float bs_moment = 0.0; /* DEV */ /* LUFS : -36 to 0 step 0.1 */
628  S4Float bs_short = 0.0; /* DEV */ /* LUFS : -36 to 0 step 0.1 */
629  S4Float bs_long = 0.0; /* LUFS : -36 to 0 step 0.1 */
630  S4Float bs_user = 0.0; /* LUFS : -36 to 0 step 0.1 */
631  S4Float gain = 0.0; /* LUFS : -12 to 0 step 0.1 */
632  S4Float bs_psr = 0.0; /* DEV */ /* PSR : 0 to 18 step 0.1 */
633  S4Float bs_plr = 0.0; /* DEV */ /* PLR : 0 to 18 step 0.1 */
634  S4Float bs_moment_pk = 0.0; /* DEV */ /* dBTP : -36 to 0 step 0.1 */
635  S4Float bs_short_pk = 0.0; /* DEV */ /* dBTP : -36 to 0 step 0.1 */
636  S4Float bs_long_pk = 0.0; /* DEV */ /* dBTP : -36 to 0 step 0.1 */
637  S4Float bs_user_pk = 0.0; /* dBTP : -36 to 0 step 0.1 */
638 };
639 
640 // === object settings_gain ===
641 // --- Preset ---
643  S4Float in = 0.0; /* dB : -30 to 30 step 0.1 */
644  S4Float out = 0.0; /* dB : -30 to 30 step 0.1 */
645 };
646 // --- VU ---
648 };
649 
650 // === object monodetect ===
651 // --- Preset ---
653  S4Float avgpan_max = 6.3; /* monodetect_dev : 0 to 15 step 0.1 */
654  int count = 27; /* monodetect_count : 5 to 30 step */
655  S4Float panmax = 2.0; /* DEV */ /* monodetect_dev : 0 to 15 step 0.1 */
656  S4Float threshold_m = 2.1; /* DEV */ /* monodetect_dev : 0 to 15 step 0.1 */
657  S4Float threshold_s = 6.0; /* DEV */ /* monodetect_dev : 0 to 15 step 0.1 */
658  bool forcemono = false; /* on : Off,On */
659 };
660 // --- VU ---
662  bool active = false; /* monodetect_active : Stereo,Mono */
663  S4Float avgpan = 0.0; /* monodetect_pan : -15 to 15 step 1.0 */
664  int vucount = 0; /* monodetect_countvu : -100 to 100 step */
665  S4Float pan = 0.0; /* DEV */ /* monodetect_pan : -15 to 15 step 1.0 */
666  S4Float dev = 0.0; /* DEV */ /* monodetect_dev : 0 to 15 step 0.1 */
667 };
668 
669 // === object r128_settings ===
670 // --- Preset ---
672  S4Float longterm_time = 10; /* sec : 4 to 120 step 0.1 */
673  enum e_bs1770_vutype vutype = e_bs1770_vutype_LongTerm; /* bs1770_vutype : {e_bs1770_vutype_Momentary,e_bs1770_vutype_ShortTerm,e_bs1770_vutype_LongTerm} */
674  bool on = false; /* on : Off,On */
675  bool truepeak_protect = true; /* on : Off,On */
676  S4Float target = -14; /* LUFS : -36 to 0 step 0.1 */
677 };
678 // --- VU ---
680 };
681 
682 // === object settings_general ===
683 // --- Preset ---
685  bool operate = true; /* operate : FULL BYPASS,Operate */
686  enum e_history_unit history_unit = e_history_unit_Second; /* history_unit : {e_history_unit_Second,e_history_unit_Minute,e_history_unit_Hour,e_history_unit_Day} */
687 };
688 // --- VU ---
690 };
691 
692 
693 // =============================
694 // ========== settings =========
695 // =============================
698  struct json_settings_gain gain;
700  struct json_r128_settings r128;
701 };
702 
703 // =============================
704 // ======== settings VU ========
705 // =============================
708  struct jsonvu_settings_gain gain;
710  struct jsonvu_r128_settings r128;
711 };
712 
713 // =============================
714 // ========== preset ===========
715 // =============================
716 struct json_preset {
717  struct json_preset_setup setup;
718  struct json_input in;
719  struct json_agc agc;
720  struct json_agcwide agcwide;
721  struct json_tonefx tonefx;
722  struct json_stereofx stereofx;
723  struct json_bandexp bandexp;
725  struct json_bandlook bandlook;
726  struct json_bandlim bandlim;
727  struct json_parameq parameq;
728  struct json_bassclip bassclip;
729  struct json_limiter limiter;
730  struct json_output out;
731  struct json_r128 r128;
732 };
733 
734 // =============================
735 // ========== preset VU ========
736 // =============================
737 struct json_vu {
738  struct jsonvu_preset_setup setup;
739  struct jsonvu_input in;
740  struct jsonvu_agc agc;
741  struct jsonvu_agcwide agcwide;
742  struct jsonvu_tonefx tonefx;
743  struct jsonvu_stereofx stereofx;
744  struct jsonvu_bandexp bandexp;
746  struct jsonvu_bandlook bandlook;
747  struct jsonvu_bandlim bandlim;
748  struct jsonvu_parameq parameq;
749  struct jsonvu_bassclip bassclip;
750  struct jsonvu_limiter limiter;
751  struct jsonvu_output out;
752  struct jsonvu_r128 r128;
753  // From settings
754  struct jsonvu_settings settings;
755 };
756 
757 #include "vars_process_operators.h"
S4Float hold[NB_BAND_AGC]
Definition: vars_process.h:129
S4Float pk[NB_BAND_AGC]
Definition: vars_process.h:130
S4Float hold[NB_BAND_AGC *2]
Definition: vars_process.h:135
S4Float pk[NB_BAND_AGC *2]
Definition: vars_process.h:136
S4Float avg_speed_gain[NB_BAND_AGC]
Definition: vars_process.h:264
S4Float fidelity_speed
Definition: vars_process.h:268
S4Float ratio[NB_BAND_AGC]
Definition: vars_process.h:252
bool hp_on
Definition: vars_process.h:244
S4Float sustain[NB_BAND_AGC]
Definition: vars_process.h:255
S4Float gate[NB_BAND_AGC]
Definition: vars_process.h:247
int nbperiod
Definition: vars_process.h:261
S4Float freq
Definition: vars_process.h:243
bool autoatt_sym
Definition: vars_process.h:260
S4Float fidelity[NB_BAND_AGC]
Definition: vars_process.h:269
S4Float attack[NB_BAND_AGC]
Definition: vars_process.h:253
S4Float attack_min
Definition: vars_process.h:270
bool drive_on
Definition: vars_process.h:248
S4Float voicethres[NB_BAND_AGC]
Definition: vars_process.h:272
enum e_autoatt_mode autoatt_mode
Definition: vars_process.h:256
S4Float threshold[NB_BAND_AGC]
Definition: vars_process.h:250
bool gate_on
Definition: vars_process.h:246
int smooth_agc
Definition: vars_process.h:262
S4Float release[NB_BAND_AGC]
Definition: vars_process.h:254
S4Float autoatt_start[NB_BAND_AGC]
Definition: vars_process.h:258
S4Float autoatt_stop[NB_BAND_AGC]
Definition: vars_process.h:259
S4Float postgain[NB_BAND_AGC]
Definition: vars_process.h:251
bool fidelity_on
Definition: vars_process.h:267
bool peak_mode
Definition: vars_process.h:273
S4Float ref_speed_in[NB_BAND_AGC]
Definition: vars_process.h:266
S4Float attack_max
Definition: vars_process.h:271
S4Float avg_speed_in[NB_BAND_AGC]
Definition: vars_process.h:265
S4Float autoatt_max[NB_BAND_AGC]
Definition: vars_process.h:257
S4Float impact[NB_BAND_AGC]
Definition: vars_process.h:263
S4Float drive[NB_BAND_AGC]
Definition: vars_process.h:249
S4Float hp_freq
Definition: vars_process.h:245
enum e_autoatt_mode autoatt_mode
Definition: vars_process.h:308
S4Float autoatt_max
Definition: vars_process.h:309
S4Float threshold
Definition: vars_process.h:302
S4Float attack_min
Definition: vars_process.h:319
S4Float attack
Definition: vars_process.h:305
S4Float hp_freq
Definition: vars_process.h:297
S4Float impact
Definition: vars_process.h:315
S4Float autoatt_start
Definition: vars_process.h:310
S4Float drive
Definition: vars_process.h:301
S4Float voicethres
Definition: vars_process.h:321
S4Float avg_speed_in
Definition: vars_process.h:317
S4Float attack_max
Definition: vars_process.h:320
S4Float gate
Definition: vars_process.h:299
S4Float sustain
Definition: vars_process.h:307
S4Float autoatt_stop
Definition: vars_process.h:311
S4Float postgain
Definition: vars_process.h:303
S4Float ref_speed_in
Definition: vars_process.h:318
S4Float ratio
Definition: vars_process.h:304
S4Float release
Definition: vars_process.h:306
S4Float avg_speed_gain
Definition: vars_process.h:316
S4Float hold[NB_BAND_PROC]
Definition: vars_process.h:153
S4Float pk[NB_BAND_PROC]
Definition: vars_process.h:154
S4Float hold[NB_BAND_PROC]
Definition: vars_process.h:141
S4Float pk[NB_BAND_PROC]
Definition: vars_process.h:142
S4Float pk[NB_BAND_PROC *2]
Definition: vars_process.h:148
S4Float hold[NB_BAND_PROC *2]
Definition: vars_process.h:147
S4Float down_sustain[NB_BAND_PROC]
Definition: vars_process.h:411
S4Float down_attack[NB_BAND_PROC]
Definition: vars_process.h:408
S4Float up_attack[NB_BAND_PROC]
Definition: vars_process.h:415
bool up_sustain_on
Definition: vars_process.h:417
S4Float drive[NB_BAND_PROC]
Definition: vars_process.h:404
S4Float up_thres[NB_BAND_PROC]
Definition: vars_process.h:413
S4Float down_ratio[NB_BAND_PROC]
Definition: vars_process.h:407
S4Float down_thres[NB_BAND_PROC]
Definition: vars_process.h:406
S4Float down_min[NB_BAND_PROC]
Definition: vars_process.h:412
S4Float up_sustain[NB_BAND_PROC]
Definition: vars_process.h:418
S4Float up_max[NB_BAND_PROC]
Definition: vars_process.h:419
S4Float postgain[NB_BAND_PROC]
Definition: vars_process.h:405
S4Float down_release[NB_BAND_PROC]
Definition: vars_process.h:409
bool down_sustain_on
Definition: vars_process.h:410
S4Float up_ratio[NB_BAND_PROC]
Definition: vars_process.h:414
S4Float up_release[NB_BAND_PROC]
Definition: vars_process.h:416
S4Float pk[NB_BAND_LIM]
Definition: vars_process.h:172
S4Float hold[NB_BAND_LIM]
Definition: vars_process.h:171
S4Float hold[NB_BAND_LIM]
Definition: vars_process.h:159
S4Float pk[NB_BAND_LIM]
Definition: vars_process.h:160
S4Float hold[NB_BAND_LIM *2]
Definition: vars_process.h:165
S4Float pk[NB_BAND_LIM *2]
Definition: vars_process.h:166
S4Float fidelity_speed
Definition: vars_process.h:530
S4Float base_thres[NB_BAND_LIM]
Definition: vars_process.h:525
S4Float freq[NB_BAND_LIM-1]
Definition: vars_process.h:520
S4Float mix[NB_BAND_LIM]
Definition: vars_process.h:528
S4Float drive[NB_BAND_LIM]
Definition: vars_process.h:522
S4Float postgain[NB_BAND_LIM]
Definition: vars_process.h:526
S4Float fidelity[NB_BAND_LIM]
Definition: vars_process.h:531
S4Float threshold[NB_BAND_LIM]
Definition: vars_process.h:524
S4Float release_max
Definition: vars_process.h:504
S4Float attack_max
Definition: vars_process.h:502
S4Float attack_min
Definition: vars_process.h:501
S4Float factor
Definition: vars_process.h:498
S4Float drive[NB_BAND_PROC]
Definition: vars_process.h:490
S4Float base_thres[NB_BAND_PROC]
Definition: vars_process.h:493
S4Float threshold[NB_BAND_PROC]
Definition: vars_process.h:492
S4Float release_min
Definition: vars_process.h:503
S4Float base_drive[NB_BAND_PROC]
Definition: vars_process.h:491
S4Float fidelity[NB_BAND_PROC]
Definition: vars_process.h:500
S4Float release[NB_BAND_PROC]
Definition: vars_process.h:496
S4Float attack[NB_BAND_PROC]
Definition: vars_process.h:495
S4Float latency
Definition: vars_process.h:494
S4Float mix[NB_BAND_PROC]
Definition: vars_process.h:497
S4Float voicemix[NB_BAND_PROC]
Definition: vars_process.h:462
S4Float voiceattack[NB_BAND_PROC]
Definition: vars_process.h:461
S4Float mix[NB_BAND_PROC]
Definition: vars_process.h:457
S4Float gate[NB_BAND_PROC]
Definition: vars_process.h:435
S4Float base_thres[NB_BAND_PROC]
Definition: vars_process.h:444
S4Float avg_speed_gain[NB_BAND_PROC]
Definition: vars_process.h:458
S4Float freq[NB_BAND_PROC-1]
Definition: vars_process.h:432
S4Float postgain[NB_BAND_PROC]
Definition: vars_process.h:445
S4Float release[NB_BAND_PROC]
Definition: vars_process.h:448
S4Float sustain[NB_BAND_PROC]
Definition: vars_process.h:451
S4Float voicethres[NB_BAND_PROC]
Definition: vars_process.h:459
S4Float fidelity_speed
Definition: vars_process.h:437
S4Float threshold[NB_BAND_PROC]
Definition: vars_process.h:443
S4Float attack[NB_BAND_PROC]
Definition: vars_process.h:447
S4Float drive[NB_BAND_PROC]
Definition: vars_process.h:441
S4Float releasesustain[NB_BAND_PROC]
Definition: vars_process.h:449
S4Float ratio[NB_BAND_PROC]
Definition: vars_process.h:446
S4Float impact[NB_BAND_PROC]
Definition: vars_process.h:455
S4Float fidelity[NB_BAND_PROC]
Definition: vars_process.h:438
S4Float postgain
Definition: vars_process.h:565
S4Float base_drive
Definition: vars_process.h:562
S4Float threshold
Definition: vars_process.h:563
S4Float base_thres
Definition: vars_process.h:564
S4Float latency
Definition: vars_process.h:580
S4Float post_param_s
Definition: vars_process.h:593
S4Float base_thres
Definition: vars_process.h:579
S4Float threshold
Definition: vars_process.h:578
S4Float factor
Definition: vars_process.h:585
enum e_lim_release release
Definition: vars_process.h:582
S4Float overdrive
Definition: vars_process.h:584
enum e_lim_hilbert_filter post_filter
Definition: vars_process.h:591
S4Float drive
Definition: vars_process.h:576
S4Float base_drive
Definition: vars_process.h:577
enum e_hilbert_window post_window
Definition: vars_process.h:592
S4Float attack
Definition: vars_process.h:581
S4Float rel_tab[5]
Definition: vars_process.h:586
S4Float driveless
Definition: vars_process.h:588
S4Float post_param_k
Definition: vars_process.h:594
S4Float post_thres
Definition: vars_process.h:590
S4Float threshold_s
Definition: vars_process.h:657
S4Float threshold_m
Definition: vars_process.h:656
S4Float avgpan_max
Definition: vars_process.h:653
S4Float eq_gain[NB_EQ]
Definition: vars_process.h:550
S4Float eq_Q[NB_EQ]
Definition: vars_process.h:549
S4Float eq_freq[NB_EQ]
Definition: vars_process.h:548
bool eq_on[NB_EQ]
Definition: vars_process.h:547
enum e_preset_mode preset_mode
Definition: vars_process.h:193
struct json_bandlook bandlook
Definition: vars_process.h:725
struct json_input in
Definition: vars_process.h:718
struct json_r128 r128
Definition: vars_process.h:731
struct json_agc agc
Definition: vars_process.h:719
struct json_agcwide agcwide
Definition: vars_process.h:720
struct json_bandprocess bandprocess
Definition: vars_process.h:724
struct json_tonefx tonefx
Definition: vars_process.h:721
struct json_bassclip bassclip
Definition: vars_process.h:728
struct json_parameq parameq
Definition: vars_process.h:727
struct json_preset_setup setup
Definition: vars_process.h:717
struct json_stereofx stereofx
Definition: vars_process.h:722
struct json_bandlim bandlim
Definition: vars_process.h:726
struct json_output out
Definition: vars_process.h:730
struct json_limiter limiter
Definition: vars_process.h:729
struct json_bandexp bandexp
Definition: vars_process.h:723
enum e_bs1770_vutype vutype
Definition: vars_process.h:673
S4Float release
Definition: vars_process.h:621
S4Float target
Definition: vars_process.h:619
S4Float attack
Definition: vars_process.h:620
enum e_history_unit history_unit
Definition: vars_process.h:686
struct json_monodetect monodetect
Definition: vars_process.h:699
struct json_settings_gain gain
Definition: vars_process.h:698
struct json_r128_settings r128
Definition: vars_process.h:700
struct json_settings_general general
Definition: vars_process.h:697
S4Float lim_release[NB_BAND_PROC]
Definition: vars_process.h:381
S4Float lim_threshold[NB_BAND_PROC]
Definition: vars_process.h:379
S4Float lim_attack[NB_BAND_PROC]
Definition: vars_process.h:380
S4Float enh_thresLR
Definition: vars_process.h:377
S4Float enh_attack
Definition: vars_process.h:374
S4Float clean_release[NB_BAND_PROC]
Definition: vars_process.h:384
S4Float enh_width
Definition: vars_process.h:373
S4Float enh_release
Definition: vars_process.h:375
S4Float clean_threshold[NB_BAND_PROC]
Definition: vars_process.h:383
S4Float enh_threshold
Definition: vars_process.h:376
S4Float bass_release
Definition: vars_process.h:355
S4Float bass_threshold
Definition: vars_process.h:353
S4Float bass_efficiency
Definition: vars_process.h:352
S4Float eq_Q[NB_EQ]
Definition: vars_process.h:345
S4Float treble_value
Definition: vars_process.h:357
bool eq_on[NB_EQ]
Definition: vars_process.h:343
bool bass_fix_mode
Definition: vars_process.h:351
S4Float bass_freq
Definition: vars_process.h:350
S4Float bass_gain_max
Definition: vars_process.h:349
S4Float treble_value_max
Definition: vars_process.h:358
S4Float eq_freq[NB_EQ]
Definition: vars_process.h:344
S4Float treble_range
Definition: vars_process.h:359
S4Float eq_gain[NB_EQ]
Definition: vars_process.h:346
S4Float bass_attack
Definition: vars_process.h:354
S4Float bass_gain
Definition: vars_process.h:348
struct jsonvu_input in
Definition: vars_process.h:739
struct jsonvu_parameq parameq
Definition: vars_process.h:748
struct jsonvu_bandexp bandexp
Definition: vars_process.h:744
struct jsonvu_bandprocess bandprocess
Definition: vars_process.h:745
struct jsonvu_agcwide agcwide
Definition: vars_process.h:741
struct jsonvu_tonefx tonefx
Definition: vars_process.h:742
struct jsonvu_bandlook bandlook
Definition: vars_process.h:746
struct jsonvu_agc agc
Definition: vars_process.h:740
struct jsonvu_settings settings
Definition: vars_process.h:754
struct jsonvu_bassclip bassclip
Definition: vars_process.h:749
struct jsonvu_bandlim bandlim
Definition: vars_process.h:747
struct jsonvu_preset_setup setup
Definition: vars_process.h:738
struct jsonvu_stereofx stereofx
Definition: vars_process.h:743
struct jsonvu_limiter limiter
Definition: vars_process.h:750
struct jsonvu_r128 r128
Definition: vars_process.h:752
struct jsonvu_output out
Definition: vars_process.h:751
struct json_agc_stereo_peakhold mes_in
Definition: vars_process.h:280
struct json_agc_stereo_peakhold fidel
Definition: vars_process.h:279
S4Float vu_freq
Definition: vars_process.h:289
S4Float attack_min_vu
Definition: vars_process.h:286
struct json_agc_peakhold gain_avg
Definition: vars_process.h:284
S4Float attack_max_vu
Definition: vars_process.h:287
struct json_agc_stereo_peakhold attack_vu
Definition: vars_process.h:285
struct json_agc_peakhold in
Definition: vars_process.h:277
struct json_agc_peakhold gain
Definition: vars_process.h:282
struct json_agc_peakhold out
Definition: vars_process.h:283
struct json_agc_peakhold in_avg
Definition: vars_process.h:281
bool gated[NB_BAND_AGC]
Definition: vars_process.h:278
S4Float attack_min_vu
Definition: vars_process.h:334
struct json_peakhold in
Definition: vars_process.h:326
struct json_peakhold gain
Definition: vars_process.h:330
struct json_peakhold in_avg
Definition: vars_process.h:329
struct json_peakhold_stereo mes_in
Definition: vars_process.h:328
struct json_peakhold_stereo attack_vu
Definition: vars_process.h:333
struct json_peakhold out
Definition: vars_process.h:331
S4Float attack_max_vu
Definition: vars_process.h:335
struct json_peakhold gain_avg
Definition: vars_process.h:332
struct json_band_peakhold mes_in
Definition: vars_process.h:425
struct json_band_peakhold up
Definition: vars_process.h:424
struct json_band_peakhold down
Definition: vars_process.h:423
struct json_bandlim_peakhold in
Definition: vars_process.h:538
struct json_bandlim_peakhold splitout
Definition: vars_process.h:537
struct json_bandlim_peakhold gain
Definition: vars_process.h:540
struct json_bandlim_stereo_peakhold fidel
Definition: vars_process.h:539
struct json_bandlim_peakhold splitin
Definition: vars_process.h:536
S4Float release_max_vu
Definition: vars_process.h:513
S4Float attack_min_vu
Definition: vars_process.h:510
S4Float attack_max_vu
Definition: vars_process.h:511
struct json_band_stereo_peakhold fidel
Definition: vars_process.h:509
S4Float release_min_vu
Definition: vars_process.h:512
struct json_band_peakhold gain
Definition: vars_process.h:508
struct json_band_stereo_peakhold fidel
Definition: vars_process.h:472
struct json_band_peakhold gain_avg
Definition: vars_process.h:476
bool gated[NB_BAND_PROC]
Definition: vars_process.h:474
struct json_band_peakhold in
Definition: vars_process.h:475
struct json_band_peakhold splitout
Definition: vars_process.h:473
S4Float vu_freq[NB_BAND_PROC-1]
Definition: vars_process.h:483
struct json_band_peakhold gain
Definition: vars_process.h:477
struct json_band_peakhold splitin
Definition: vars_process.h:471
struct json_peakhold gain
Definition: vars_process.h:569
S4Float bs_moment
Definition: vars_process.h:231
struct json_peakhold_stereo vuout
Definition: vars_process.h:230
struct json_vupeakhold_stereo vu
Definition: vars_process.h:228
S4Float bs_user
Definition: vars_process.h:234
S4Float bs_psr
Definition: vars_process.h:235
S4Float bs_short
Definition: vars_process.h:232
S4Float bs_long
Definition: vars_process.h:233
S4Float bs_plr
Definition: vars_process.h:236
struct json_peakhold lkatt
Definition: vars_process.h:601
struct json_peakhold post
Definition: vars_process.h:602
struct json_peakhold gain
Definition: vars_process.h:600
struct json_peakhold over
Definition: vars_process.h:603
struct json_vupeakhold_stereo vu
Definition: vars_process.h:612
S4Float vu_target
Definition: vars_process.h:626
S4Float bs_user
Definition: vars_process.h:630
S4Float bs_long
Definition: vars_process.h:629
S4Float bs_short
Definition: vars_process.h:628
S4Float bs_long_pk
Definition: vars_process.h:636
S4Float gain
Definition: vars_process.h:631
S4Float bs_user_pk
Definition: vars_process.h:637
S4Float bs_plr
Definition: vars_process.h:633
S4Float bs_short_pk
Definition: vars_process.h:635
S4Float bs_psr
Definition: vars_process.h:632
S4Float bs_moment_pk
Definition: vars_process.h:634
S4Float bs_moment
Definition: vars_process.h:627
struct jsonvu_settings_gain gain
Definition: vars_process.h:708
struct jsonvu_r128_settings r128
Definition: vars_process.h:710
struct jsonvu_monodetect monodetect
Definition: vars_process.h:709
struct jsonvu_settings_general general
Definition: vars_process.h:707
struct json_peak_percent lim_vu
Definition: vars_process.h:390
struct json_band_peak_percent lim_bdvu
Definition: vars_process.h:389
struct json_peak_percent enh_vu
Definition: vars_process.h:388
struct json_band_peak_percent clean_bdvu
Definition: vars_process.h:391
struct json_peak_percent clean_vu
Definition: vars_process.h:392
S4Float bass_gain_max_vu
Definition: vars_process.h:364
S4Float treble_value_max_vu
Definition: vars_process.h:365
S4Float bass_vu
Definition: vars_process.h:363
e_autoatt_mode
Definition: vars_process.h:92
@ e_autoatt_mode_input
Definition: vars_process.h:95
@ e_autoatt_mode_off
Definition: vars_process.h:93
@ e_autoatt_mode_gain
Definition: vars_process.h:94
e_bs1770_vutype
Definition: vars_process.h:34
@ e_bs1770_vutype_LongTerm
Definition: vars_process.h:37
@ e_bs1770_vutype_ShortTerm
Definition: vars_process.h:36
@ e_bs1770_vutype_Momentary
Definition: vars_process.h:35
e_history_var
Definition: vars_process.h:64
@ e_history_var_in_bs_long
Definition: vars_process.h:65
@ e_history_var_out_bs_long
Definition: vars_process.h:66
e_history_unit
Definition: vars_process.h:56
@ e_history_unit_Hour
Definition: vars_process.h:59
@ e_history_unit_Day
Definition: vars_process.h:60
@ e_history_unit_Second
Definition: vars_process.h:57
@ e_history_unit_Minute
Definition: vars_process.h:58
e_lim_hilbert_filter
Definition: vars_process.h:70
@ e_lim_hilbert_filter_hilb_501
Definition: vars_process.h:73
@ e_lim_hilbert_filter_hilb_1001
Definition: vars_process.h:75
@ e_lim_hilbert_filter_hilb_377
Definition: vars_process.h:72
@ e_lim_hilbert_filter_hilb_253
Definition: vars_process.h:71
@ e_lim_hilbert_filter_hilb_749
Definition: vars_process.h:74
@ e_lim_hilbert_filter_hilb_4001
Definition: vars_process.h:77
@ e_lim_hilbert_filter_hilb_2001
Definition: vars_process.h:76
@ e_lim_hilbert_filter_hilb_8001
Definition: vars_process.h:78
e_lk_mode
Definition: vars_process.h:41
@ e_lk_mode_Independant
Definition: vars_process.h:43
@ e_lk_mode_Stereo_Link
Definition: vars_process.h:42
@ e_lk_mode_Mixed_Channel
Definition: vars_process.h:44
#define NB_BAND_LIM
Definition: vars_process.h:17
#define NB_EQ
Definition: vars_process.h:14
#define NB_BAND_PROC
Definition: vars_process.h:16
e_hilbert_window
Definition: vars_process.h:82
@ e_hilbert_window_sinc
Definition: vars_process.h:84
@ e_hilbert_window_kaiser
Definition: vars_process.h:85
@ e_hilbert_window_hann
Definition: vars_process.h:86
@ e_hilbert_window_hamming
Definition: vars_process.h:87
@ e_hilbert_window_blackman
Definition: vars_process.h:88
@ e_hilbert_window_rect
Definition: vars_process.h:83
e_preset_mode
Definition: vars_process.h:48
@ e_preset_mode_hg1
Definition: vars_process.h:50
@ e_preset_mode_pure
Definition: vars_process.h:49
@ e_preset_mode_hg2
Definition: vars_process.h:51
@ e_preset_mode_hg3
Definition: vars_process.h:52
e_lim_release
Definition: vars_process.h:25
@ e_lim_release_Medium_Slow
Definition: vars_process.h:27
@ e_lim_release_Medium_Fast
Definition: vars_process.h:28
@ e_lim_release_Fast
Definition: vars_process.h:30
@ e_lim_release_Slow
Definition: vars_process.h:26
@ e_lim_release_FastLow
Definition: vars_process.h:29
#define NB_BAND_AGC
Definition: vars_process.h:15