Sound Bakery  v0.1.0
Open-source audio middleware for games
Loading...
Searching...
No Matches
sound_chef_dsp.h
Go to the documentation of this file.
1
8#ifndef SOUND_CHEF_DSP
9#define SOUND_CHEF_DSP
10
11enum
12{
13 SC_STRING_NAME_LENGTH = 16
14};
15
16#ifdef __cplusplus
17extern "C"
18{
19#endif
20
21 typedef enum sc_dsp_parameter_type
22 {
23 SC_DSP_PARAMETER_TYPE_FLOAT
24 } sc_dsp_parameter_type;
25
27 {
28 float min;
29 float max;
30 float value;
32
34 {
35 sc_dsp_parameter_type type;
36 char name[SC_STRING_NAME_LENGTH];
37
38 union
39 {
40 sc_dsp_parameter_float floatParameter;
41 };
42 };
43
44 typedef enum sc_dsp_lowpass
45 {
46 SC_DSP_LOWPASS_CUTOFF,
47 SC_DSP_LOWPASS_NUM_PARAM
48 } sc_dsp_lowpass;
49
50 typedef enum sc_dsp_highpass
51 {
52 SC_DSP_HIGHPASS_CUTOFF,
53 SC_DSP_HIGHPASS_NUM_PARAM
54 } sc_dsp_highpass;
55
56 typedef enum sc_dsp_meter
57 {
58 SC_DSP_METER_PEAK,
59 SC_DSP_METER_RMS,
60 SC_DSP_METER_NUM_PARAM
61 } sc_dsp_meter;
62
63 enum
64 {
65 SC_DSP_METER_MAX_CHANNELS = 36 //< Meter up to 5th order ambisonics
66 };
67
68 typedef struct sc_meter
69 {
70 ma_atomic_uint32 channels;
71 ma_atomic_float peakLevels[SC_DSP_METER_MAX_CHANNELS];
72 ma_atomic_float rmsLevels[SC_DSP_METER_MAX_CHANNELS];
73 } sc_meter;
74
75 typedef struct sc_meter_node
76 {
77 ma_node_base baseNode;
78 sc_meter meter;
80
81#ifdef __cplusplus
82}
83#endif
84
85#endif
Definition sound_chef_dsp.h:27
Definition sound_chef_dsp.h:34
Definition sound_chef_dsp.h:76
Definition sound_chef_dsp.h:69