# 7. Core API Reference | Effect Parameters

These are the parameters for controlling Digital Signal Processors.

DSP Types:

- FMOD_DSP_TYPE DSP types.

DSP Parameters:

- FMOD_DSP_CHANNELMIX Channel Mix DSP parameter types.
- FMOD_DSP_CHORUS Chorus DSP parameter types.
- FMOD_DSP_COMPRESSOR Compressor DSP parameter types.
- FMOD_DSP_CONVOLUTION_REVERB Convolution reverb DSP parameter types.
- FMOD_DSP_DELAY Delay DSP parameter types.
- FMOD_DSP_DISTORTION Distortion DSP parameter types.
- FMOD_DSP_ECHO Echo DSP parameter types.
- FMOD_DSP_ENVELOPEFOLLOWER Deprecated and will be removed in a future release.
- FMOD_DSP_FADER Fader DSP parameter types.
- FMOD_DSP_FFT FFT DSP parameter types.
- FMOD_DSP_FLANGE Flange DSP parameter types.
- FMOD_DSP_HIGHPASS Highpass DSP parameter types.
- FMOD_DSP_HIGHPASS_SIMPLE Simple Highpass DSP parameter types.
- FMOD_DSP_ITECHO IT Echo DSP parameter types.
- FMOD_DSP_ITLOWPASS Lowpass DSP parameter types.
- FMOD_DSP_LIMITER Limited DSP parameter types.
- FMOD_DSP_LOUDNESS_METER Loudness meter DSP parameter types.
- FMOD_DSP_LOWPASS Lowpass DSP parameter types.
- FMOD_DSP_LOWPASS_SIMPLE Simple Lowpass DSP Parameter types.
- FMOD_DSP_MULTIBAND_EQ Multiband EQ DSP parameter types.
- FMOD_DSP_NORMALIZE Normalize DSP parameter types.
- FMOD_DSP_OBJECTPAN Object based spatializer parameters.
- FMOD_DSP_OSCILLATOR Oscillator DSP parameter types.
- FMOD_DSP_PAN Pan DSP parameter types.
- FMOD_DSP_PARAMEQ Parametric EQ DSP parameter types.
- FMOD_DSP_PITCHSHIFT Pitch shift DSP parameter types.
- FMOD_DSP_RETURN Return DSP parameter types.
- FMOD_DSP_SEND Send DSP parameter types.
- FMOD_DSP_SFXREVERB SFX Reverb DSP parameter types.
- FMOD_DSP_THREE_EQ Three EQ DSP parameter types.
- FMOD_DSP_TRANSCEIVER Transceiver DSP parameter types.
- FMOD_DSP_TREMOLO Tremolo DSP parameter types.

DSP Parameter Types:

- FMOD_DSP_CHANNELMIX_OUTPUT Channel Mix DSP outgrouping parameter types.
- FMOD_DSP_TRANSCEIVER_SPEAKERMODE Speaker mode values for Transceiver DSP.
- FMOD_DSP_THREE_EQ_CROSSOVERSLOPE_TYPE Crossover values for Three EQ DSP.
- FMOD_DSP_LOUDNESS_METER_STATE_TYPE Loudness meter state indicating update behavior.
- FMOD_DSP_PAN_2D_STEREO_MODE_TYPE 2D Stereo Mode values for Pan DSP.
- FMOD_DSP_PAN_3D_EXTENT_MODE_TYPE 3D Extent Mode values for Pan DSP.
- FMOD_DSP_PAN_3D_ROLLOFF_TYPE 3D roll-off values for Pan DSP.
- FMOD_DSP_PAN_MODE_TYPE Pan Mode values for Pan DSP.
- FMOD_DSP_MULTIBAND_EQ_FILTER_TYPE Multiband EQ Filter types.
- FMOD_DSP_FFT_WINDOW List of windowing methods for the FFT DSP.
- FMOD_DSP_LOUDNESS_METER_INFO_TYPE Loudness meter information data structure.
- FMOD_DSP_LOUDNESS_METER_WEIGHTING_TYPE Loudness meter channel weighting.

## FMOD_DSP_CHANNELMIX

Channel Mix DSP parameter types.

C
C++
C#
JS

    typedef enum FMOD_DSP_CHANNELMIX {
      FMOD_DSP_CHANNELMIX_OUTPUTGROUPING,
      FMOD_DSP_CHANNELMIX_GAIN_CH0,
      FMOD_DSP_CHANNELMIX_GAIN_CH1,
      FMOD_DSP_CHANNELMIX_GAIN_CH2,
      FMOD_DSP_CHANNELMIX_GAIN_CH3,
      FMOD_DSP_CHANNELMIX_GAIN_CH4,
      FMOD_DSP_CHANNELMIX_GAIN_CH5,
      FMOD_DSP_CHANNELMIX_GAIN_CH6,
      FMOD_DSP_CHANNELMIX_GAIN_CH7,
      FMOD_DSP_CHANNELMIX_GAIN_CH8,
      FMOD_DSP_CHANNELMIX_GAIN_CH9,
      FMOD_DSP_CHANNELMIX_GAIN_CH10,
      FMOD_DSP_CHANNELMIX_GAIN_CH11,
      FMOD_DSP_CHANNELMIX_GAIN_CH12,
      FMOD_DSP_CHANNELMIX_GAIN_CH13,
      FMOD_DSP_CHANNELMIX_GAIN_CH14,
      FMOD_DSP_CHANNELMIX_GAIN_CH15,
      FMOD_DSP_CHANNELMIX_GAIN_CH16,
      FMOD_DSP_CHANNELMIX_GAIN_CH17,
      FMOD_DSP_CHANNELMIX_GAIN_CH18,
      FMOD_DSP_CHANNELMIX_GAIN_CH19,
      FMOD_DSP_CHANNELMIX_GAIN_CH20,
      FMOD_DSP_CHANNELMIX_GAIN_CH21,
      FMOD_DSP_CHANNELMIX_GAIN_CH22,
      FMOD_DSP_CHANNELMIX_GAIN_CH23,
      FMOD_DSP_CHANNELMIX_GAIN_CH24,
      FMOD_DSP_CHANNELMIX_GAIN_CH25,
      FMOD_DSP_CHANNELMIX_GAIN_CH26,
      FMOD_DSP_CHANNELMIX_GAIN_CH27,
      FMOD_DSP_CHANNELMIX_GAIN_CH28,
      FMOD_DSP_CHANNELMIX_GAIN_CH29,
      FMOD_DSP_CHANNELMIX_GAIN_CH30,
      FMOD_DSP_CHANNELMIX_GAIN_CH31,
      FMOD_DSP_CHANNELMIX_OUTPUT_CH0,
      FMOD_DSP_CHANNELMIX_OUTPUT_CH1,
      FMOD_DSP_CHANNELMIX_OUTPUT_CH2,
      FMOD_DSP_CHANNELMIX_OUTPUT_CH3,
      FMOD_DSP_CHANNELMIX_OUTPUT_CH4,
      FMOD_DSP_CHANNELMIX_OUTPUT_CH5,
      FMOD_DSP_CHANNELMIX_OUTPUT_CH6,
      FMOD_DSP_CHANNELMIX_OUTPUT_CH7,
      FMOD_DSP_CHANNELMIX_OUTPUT_CH8,
      FMOD_DSP_CHANNELMIX_OUTPUT_CH9,
      FMOD_DSP_CHANNELMIX_OUTPUT_CH10,
      FMOD_DSP_CHANNELMIX_OUTPUT_CH11,
      FMOD_DSP_CHANNELMIX_OUTPUT_CH12,
      FMOD_DSP_CHANNELMIX_OUTPUT_CH13,
      FMOD_DSP_CHANNELMIX_OUTPUT_CH14,
      FMOD_DSP_CHANNELMIX_OUTPUT_CH15,
      FMOD_DSP_CHANNELMIX_OUTPUT_CH16,
      FMOD_DSP_CHANNELMIX_OUTPUT_CH17,
      FMOD_DSP_CHANNELMIX_OUTPUT_CH18,
      FMOD_DSP_CHANNELMIX_OUTPUT_CH19,
      FMOD_DSP_CHANNELMIX_OUTPUT_CH20,
      FMOD_DSP_CHANNELMIX_OUTPUT_CH21,
      FMOD_DSP_CHANNELMIX_OUTPUT_CH22,
      FMOD_DSP_CHANNELMIX_OUTPUT_CH23,
      FMOD_DSP_CHANNELMIX_OUTPUT_CH24,
      FMOD_DSP_CHANNELMIX_OUTPUT_CH25,
      FMOD_DSP_CHANNELMIX_OUTPUT_CH26,
      FMOD_DSP_CHANNELMIX_OUTPUT_CH27,
      FMOD_DSP_CHANNELMIX_OUTPUT_CH28,
      FMOD_DSP_CHANNELMIX_OUTPUT_CH29,
      FMOD_DSP_CHANNELMIX_OUTPUT_CH30,
      FMOD_DSP_CHANNELMIX_OUTPUT_CH31
    } FMOD_DSP_CHANNELMIX;

    enum DSP_CHANNELMIX
    {
      OUTPUTGROUPING,
      GAIN_CH0,
      GAIN_CH1,
      GAIN_CH2,
      GAIN_CH3,
      GAIN_CH4,
      GAIN_CH5,
      GAIN_CH6,
      GAIN_CH7,
      GAIN_CH8,
      GAIN_CH9,
      GAIN_CH10,
      GAIN_CH11,
      GAIN_CH12,
      GAIN_CH13,
      GAIN_CH14,
      GAIN_CH15,
      GAIN_CH16,
      GAIN_CH17,
      GAIN_CH18,
      GAIN_CH19,
      GAIN_CH20,
      GAIN_CH21,
      GAIN_CH22,
      GAIN_CH23,
      GAIN_CH24,
      GAIN_CH25,
      GAIN_CH26,
      GAIN_CH27,
      GAIN_CH28,
      GAIN_CH29,
      GAIN_CH30,
      GAIN_CH31,
      OUTPUT_CH0,
      OUTPUT_CH1,
      OUTPUT_CH2,
      OUTPUT_CH3,
      OUTPUT_CH4,
      OUTPUT_CH5,
      OUTPUT_CH6,
      OUTPUT_CH7,
      OUTPUT_CH8,
      OUTPUT_CH9,
      OUTPUT_CH10,
      OUTPUT_CH11,
      OUTPUT_CH12,
      OUTPUT_CH13,
      OUTPUT_CH14,
      OUTPUT_CH15,
      OUTPUT_CH16,
      OUTPUT_CH17,
      OUTPUT_CH18,
      OUTPUT_CH19,
      OUTPUT_CH20,
      OUTPUT_CH21,
      OUTPUT_CH22,
      OUTPUT_CH23,
      OUTPUT_CH24,
      OUTPUT_CH25,
      OUTPUT_CH26,
      OUTPUT_CH27,
      OUTPUT_CH28,
      OUTPUT_CH29,
      OUTPUT_CH30,
      OUTPUT_CH31
    }

    FMOD.DSP_CHANNELMIX_OUTPUTGROUPING
    FMOD.DSP_CHANNELMIX_GAIN_CH0
    FMOD.DSP_CHANNELMIX_GAIN_CH1
    FMOD.DSP_CHANNELMIX_GAIN_CH2
    FMOD.DSP_CHANNELMIX_GAIN_CH3
    FMOD.DSP_CHANNELMIX_GAIN_CH4
    FMOD.DSP_CHANNELMIX_GAIN_CH5
    FMOD.DSP_CHANNELMIX_GAIN_CH6
    FMOD.DSP_CHANNELMIX_GAIN_CH7
    FMOD.DSP_CHANNELMIX_GAIN_CH8
    FMOD.DSP_CHANNELMIX_GAIN_CH9
    FMOD.DSP_CHANNELMIX_GAIN_CH10
    FMOD.DSP_CHANNELMIX_GAIN_CH11
    FMOD.DSP_CHANNELMIX_GAIN_CH12
    FMOD.DSP_CHANNELMIX_GAIN_CH13
    FMOD.DSP_CHANNELMIX_GAIN_CH14
    FMOD.DSP_CHANNELMIX_GAIN_CH15
    FMOD.DSP_CHANNELMIX_GAIN_CH16
    FMOD.DSP_CHANNELMIX_GAIN_CH17
    FMOD.DSP_CHANNELMIX_GAIN_CH18
    FMOD.DSP_CHANNELMIX_GAIN_CH19
    FMOD.DSP_CHANNELMIX_GAIN_CH20
    FMOD.DSP_CHANNELMIX_GAIN_CH21
    FMOD.DSP_CHANNELMIX_GAIN_CH22
    FMOD.DSP_CHANNELMIX_GAIN_CH23
    FMOD.DSP_CHANNELMIX_GAIN_CH24
    FMOD.DSP_CHANNELMIX_GAIN_CH25
    FMOD.DSP_CHANNELMIX_GAIN_CH26
    FMOD.DSP_CHANNELMIX_GAIN_CH27
    FMOD.DSP_CHANNELMIX_GAIN_CH28
    FMOD.DSP_CHANNELMIX_GAIN_CH29
    FMOD.DSP_CHANNELMIX_GAIN_CH30
    FMOD.DSP_CHANNELMIX_GAIN_CH31
    FMOD.DSP_CHANNELMIX_OUTPUT_CH0,
    FMOD.DSP_CHANNELMIX_OUTPUT_CH1,
    FMOD.DSP_CHANNELMIX_OUTPUT_CH2,
    FMOD.DSP_CHANNELMIX_OUTPUT_CH3,
    FMOD.DSP_CHANNELMIX_OUTPUT_CH4,
    FMOD.DSP_CHANNELMIX_OUTPUT_CH5,
    FMOD.DSP_CHANNELMIX_OUTPUT_CH6,
    FMOD.DSP_CHANNELMIX_OUTPUT_CH7,
    FMOD.DSP_CHANNELMIX_OUTPUT_CH8,
    FMOD.DSP_CHANNELMIX_OUTPUT_CH9,
    FMOD.DSP_CHANNELMIX_OUTPUT_CH10,
    FMOD.DSP_CHANNELMIX_OUTPUT_CH11,
    FMOD.DSP_CHANNELMIX_OUTPUT_CH12,
    FMOD.DSP_CHANNELMIX_OUTPUT_CH13,
    FMOD.DSP_CHANNELMIX_OUTPUT_CH14,
    FMOD.DSP_CHANNELMIX_OUTPUT_CH15,
    FMOD.DSP_CHANNELMIX_OUTPUT_CH16,
    FMOD.DSP_CHANNELMIX_OUTPUT_CH17,
    FMOD.DSP_CHANNELMIX_OUTPUT_CH18,
    FMOD.DSP_CHANNELMIX_OUTPUT_CH19,
    FMOD.DSP_CHANNELMIX_OUTPUT_CH20,
    FMOD.DSP_CHANNELMIX_OUTPUT_CH21,
    FMOD.DSP_CHANNELMIX_OUTPUT_CH22,
    FMOD.DSP_CHANNELMIX_OUTPUT_CH23,
    FMOD.DSP_CHANNELMIX_OUTPUT_CH24,
    FMOD.DSP_CHANNELMIX_OUTPUT_CH25,
    FMOD.DSP_CHANNELMIX_OUTPUT_CH26,
    FMOD.DSP_CHANNELMIX_OUTPUT_CH27,
    FMOD.DSP_CHANNELMIX_OUTPUT_CH28,
    FMOD.DSP_CHANNELMIX_OUTPUT_CH29,
    FMOD.DSP_CHANNELMIX_OUTPUT_CH30,
    FMOD.DSP_CHANNELMIX_OUTPUT_CH31

FMOD_DSP_CHANNELMIX_OUTPUTGROUPING

  Channel mix output grouping. (FMOD_DSP_CHANNELMIX_OUTPUT)

  - Type: int
  - Default: FMOD_DSP_CHANNELMIX_OUTPUT_DEFAULT
FMOD_DSP_CHANNELMIX_GAIN_CH0

  Channel #0 gain.

  - Type: float
  - Units: Decibels
  - Range: [-80, 10]
  - Default: 0
FMOD_DSP_CHANNELMIX_GAIN_CH1

  Channel #1 gain.

  - Type: float
  - Units: Decibels
  - Range: [-80, 10]
  - Default: 0
FMOD_DSP_CHANNELMIX_GAIN_CH2

  Channel #2 gain.

  - Type: float
  - Units: Decibels
  - Range: [-80, 10]
  - Default: 0
FMOD_DSP_CHANNELMIX_GAIN_CH3

  Channel #3 gain.

  - Type: float
  - Units: Decibels
  - Range: [-80, 10]
  - Default: 0
FMOD_DSP_CHANNELMIX_GAIN_CH4

  Channel #4 gain.

  - Type: float
  - Units: Decibels
  - Range: [-80, 10]
  - Default: 0
FMOD_DSP_CHANNELMIX_GAIN_CH5

  Channel #5 gain.

  - Type: float
  - Units: Decibels
  - Range: [-80, 10]
  - Default: 0
FMOD_DSP_CHANNELMIX_GAIN_CH6

  Channel #6 gain.

  - Type: float
  - Units: Decibels
  - Range: [-80, 10]
  - Default: 0
FMOD_DSP_CHANNELMIX_GAIN_CH7

  Channel #7 gain.

  - Type: float
  - Units: Decibels
  - Range: [-80, 10]
  - Default: 0
FMOD_DSP_CHANNELMIX_GAIN_CH8

  Channel #8 gain.

  - Type: float
  - Units: Decibels
  - Range: [-80, 10]
  - Default: 0
FMOD_DSP_CHANNELMIX_GAIN_CH9

  Channel #9 gain.

  - Type: float
  - Units: Decibels
  - Range: [-80, 10]
  - Default: 0
FMOD_DSP_CHANNELMIX_GAIN_CH10

  Channel #10 gain.

  - Type: float
  - Units: Decibels
  - Range: [-80, 10]
  - Default: 0
FMOD_DSP_CHANNELMIX_GAIN_CH11

  Channel #11 gain.

  - Type: float
  - Units: Decibels
  - Range: [-80, 10]
  - Default: 0
FMOD_DSP_CHANNELMIX_GAIN_CH12

  Channel #12 gain.

  - Type: float
  - Units: Decibels
  - Range: [-80, 10]
  - Default: 0
FMOD_DSP_CHANNELMIX_GAIN_CH13

  Channel #13 gain.

  - Type: float
  - Units: Decibels
  - Range: [-80, 10]
  - Default: 0
FMOD_DSP_CHANNELMIX_GAIN_CH14

  Channel #14 gain.

  - Type: float
  - Units: Decibels
  - Range: [-80, 10]
  - Default: 0
FMOD_DSP_CHANNELMIX_GAIN_CH15

  Channel #15 gain.

  - Type: float
  - Units: Decibels
  - Range: [-80, 10]
  - Default: 0
FMOD_DSP_CHANNELMIX_GAIN_CH16

  Channel #16 gain.

  - Type: float
  - Units: Decibels
  - Range: [-80, 10]
  - Default: 0
FMOD_DSP_CHANNELMIX_GAIN_CH17

  Channel #17 gain.

  - Type: float
  - Units: Decibels
  - Range: [-80, 10]
  - Default: 0
FMOD_DSP_CHANNELMIX_GAIN_CH18

  Channel #18 gain.

  - Type: float
  - Units: Decibels
  - Range: [-80, 10]
  - Default: 0
FMOD_DSP_CHANNELMIX_GAIN_CH19

  Channel #19 gain.

  - Type: float
  - Units: Decibels
  - Range: [-80, 10]
  - Default: 0
FMOD_DSP_CHANNELMIX_GAIN_CH20

  Channel #20 gain.

  - Type: float
  - Units: Decibels
  - Range: [-80, 10]
  - Default: 0
FMOD_DSP_CHANNELMIX_GAIN_CH21

  Channel #21 gain.

  - Type: float
  - Units: Decibels
  - Range: [-80, 10]
  - Default: 0
FMOD_DSP_CHANNELMIX_GAIN_CH22

  Channel #22 gain.

  - Type: float
  - Units: Decibels
  - Range: [-80, 10]
  - Default: 0
FMOD_DSP_CHANNELMIX_GAIN_CH23

  Channel #23 gain.

  - Type: float
  - Units: Decibels
  - Range: [-80, 10]
  - Default: 0
FMOD_DSP_CHANNELMIX_GAIN_CH24

  Channel #24 gain.

  - Type: float
  - Units: Decibels
  - Range: [-80, 10]
  - Default: 0
FMOD_DSP_CHANNELMIX_GAIN_CH25

  Channel #25 gain.

  - Type: float
  - Units: Decibels
  - Range: [-80, 10]
  - Default: 0
FMOD_DSP_CHANNELMIX_GAIN_CH26

  Channel #26 gain.

  - Type: float
  - Units: Decibels
  - Range: [-80, 10]
  - Default: 0
FMOD_DSP_CHANNELMIX_GAIN_CH27

  Channel #27 gain.

  - Type: float
  - Units: Decibels
  - Range: [-80, 10]
  - Default: 0
FMOD_DSP_CHANNELMIX_GAIN_CH28

  Channel #28 gain.

  - Type: float
  - Units: Decibels
  - Range: [-80, 10]
  - Default: 0
FMOD_DSP_CHANNELMIX_GAIN_CH29

  Channel #29 gain.

  - Type: float
  - Units: Decibels
  - Range: [-80, 10]
  - Default: 0
FMOD_DSP_CHANNELMIX_GAIN_CH30

  Channel #30 gain.

  - Type: float
  - Units: Decibels
  - Range: [-80, 10]
  - Default: 0
FMOD_DSP_CHANNELMIX_GAIN_CH31

  Channel #31 gain.

  - Type: float
  - Units: Decibels
  - Range: [-80, 10]
  - Default: 0
FMOD_DSP_CHANNELMIX_OUTPUT_CH0

  Output channel for Input channel #0

  - Type: int
  - Default: 0
FMOD_DSP_CHANNELMIX_OUTPUT_CH1

  Output channel for Input channel #1

  - Type: int
  - Default: 1
FMOD_DSP_CHANNELMIX_OUTPUT_CH2

  Output channel for Input channel #2

  - Type: int
  - Default: 2
FMOD_DSP_CHANNELMIX_OUTPUT_CH3

  Output channel for Input channel #3

  - Type: int
  - Default: 3
FMOD_DSP_CHANNELMIX_OUTPUT_CH4

  Output channel for Input channel #4

  - Type: int
  - Default: 4
FMOD_DSP_CHANNELMIX_OUTPUT_CH5

  Output channel for Input channel #5

  - Type: int
  - Default: 5
FMOD_DSP_CHANNELMIX_OUTPUT_CH6

  Output channel for Input channel #6

  - Type: int
  - Default: 6
FMOD_DSP_CHANNELMIX_OUTPUT_CH7

  Output channel for Input channel #7

  - Type: int
  - Default: 7
FMOD_DSP_CHANNELMIX_OUTPUT_CH8

  Output channel for Input channel #8

  - Type: int
  - Default: 8
FMOD_DSP_CHANNELMIX_OUTPUT_CH9

  Output channel for Input channel #9

  - Type: int
  - Default: 9
FMOD_DSP_CHANNELMIX_OUTPUT_CH10

  Output channel for Input channel #10

  - Type: int
  - Default: 10
FMOD_DSP_CHANNELMIX_OUTPUT_CH11

  Output channel for Input channel #11

  - Type: int
  - Default: 11
FMOD_DSP_CHANNELMIX_OUTPUT_CH12

  Output channel for Input channel #12

  - Type: int
  - Default: 12
FMOD_DSP_CHANNELMIX_OUTPUT_CH13

  Output channel for Input channel #13

  - Type: int
  - Default: 13
FMOD_DSP_CHANNELMIX_OUTPUT_CH14

  Output channel for Input channel #14

  - Type: int
  - Default: 14
FMOD_DSP_CHANNELMIX_OUTPUT_CH15

  Output channel for Input channel #15

  - Type: int
  - Default: 15
FMOD_DSP_CHANNELMIX_OUTPUT_CH16

  Output channel for Input channel #16

  - Type: int
  - Default: 16
FMOD_DSP_CHANNELMIX_OUTPUT_CH17

  Output channel for Input channel #17

  - Type: int
  - Default: 17
FMOD_DSP_CHANNELMIX_OUTPUT_CH18

  Output channel for Input channel #18

  - Type: int
  - Default: 18
FMOD_DSP_CHANNELMIX_OUTPUT_CH19

  Output channel for Input channel #19

  - Type: int
  - Default: 19
FMOD_DSP_CHANNELMIX_OUTPUT_CH20

  Output channel for Input channel #20

  - Type: int
  - Default: 20
FMOD_DSP_CHANNELMIX_OUTPUT_CH21

  Output channel for Input channel #21

  - Type: int
  - Default: 21
FMOD_DSP_CHANNELMIX_OUTPUT_CH22

  Output channel for Input channel #22

  - Type: int
  - Default: 22
FMOD_DSP_CHANNELMIX_OUTPUT_CH23

  Output channel for Input channel #23

  - Type: int
  - Default: 23
FMOD_DSP_CHANNELMIX_OUTPUT_CH24

  Output channel for Input channel #24

  - Type: int
  - Default: 24
FMOD_DSP_CHANNELMIX_OUTPUT_CH25

  Output channel for Input channel #25

  - Type: int
  - Default: 25
FMOD_DSP_CHANNELMIX_OUTPUT_CH26

  Output channel for Input channel #26

  - Type: int
  - Default: 26
FMOD_DSP_CHANNELMIX_OUTPUT_CH27

  Output channel for Input channel #27

  - Type: int
  - Default: 27
FMOD_DSP_CHANNELMIX_OUTPUT_CH28

  Output channel for Input channel #28

  - Type: int
  - Default: 28
FMOD_DSP_CHANNELMIX_OUTPUT_CH29

  Output channel for Input channel #29

  - Type: int
  - Default: 29
FMOD_DSP_CHANNELMIX_OUTPUT_CH30

  Output channel for Input channel #30

  - Type: int
  - Default: 30
FMOD_DSP_CHANNELMIX_OUTPUT_CH31

  Output channel for Input channel #31

  - Type: int
  - Default: 31

For FMOD_DSP_CHANNELMIX_OUTPUTGROUPING, this value will set the output speaker format for the DSP which determines the number of output channels.

For input channels mapped to an output channel in excess of the number of output channels, it will instead be mapped to the modulo of that channel index. Eg if there are 4 output channels, the input channel mapped to output channel index 5 will be mapped to index 1.

See Also: FMOD_DSP_TYPE_CHANNELMIX, DSP::setParameterInt, DSP::setParameterFloat, FMOD_DSP_TYPE

## FMOD_DSP_CHANNELMIX_OUTPUT

Channel Mix DSP outgrouping parameter types.

C
C++
C#
JS

    typedef enum FMOD_DSP_CHANNELMIX_OUTPUT {
      FMOD_DSP_CHANNELMIX_OUTPUT_DEFAULT,
      FMOD_DSP_CHANNELMIX_OUTPUT_ALLMONO,
      FMOD_DSP_CHANNELMIX_OUTPUT_ALLSTEREO,
      FMOD_DSP_CHANNELMIX_OUTPUT_ALLQUAD,
      FMOD_DSP_CHANNELMIX_OUTPUT_ALL5POINT1,
      FMOD_DSP_CHANNELMIX_OUTPUT_ALL7POINT1,
      FMOD_DSP_CHANNELMIX_OUTPUT_ALLLFE,
      FMOD_DSP_CHANNELMIX_OUTPUT_ALL7POINT1POINT4
    } FMOD_DSP_CHANNELMIX_OUTPUT;

    enum DSP_CHANNELMIX_OUTPUT
    {
      DEFAULT,
      ALLMONO,
      ALLSTEREO,
      ALLQUAD,
      ALL5POINT1,
      ALL7POINT1,
      ALLLFE,
      ALL7POINT1POINT4
    }

    FMOD.DSP_CHANNELMIX_OUTPUT_DEFAULT
    FMOD.DSP_CHANNELMIX_OUTPUT_ALLMONO
    FMOD.DSP_CHANNELMIX_OUTPUT_ALLSTEREO
    FMOD.DSP_CHANNELMIX_OUTPUT_ALLQUAD
    FMOD.DSP_CHANNELMIX_OUTPUT_ALL5POINT1
    FMOD.DSP_CHANNELMIX_OUTPUT_ALL7POINT1
    FMOD.DSP_CHANNELMIX_OUTPUT_ALLLFE
    FMOD.DSP_CHANNELMIX_OUTPUT_ALL7POINT1POINT4

FMOD_DSP_CHANNELMIX_OUTPUT_DEFAULT
  Output channel count = input channel count. Mapping: See FMOD_SPEAKER enumeration.
FMOD_DSP_CHANNELMIX_OUTPUT_ALLMONO
  Output channel count = 1. Mapping: Mono, Mono, Mono, Mono, Mono, Mono, ... (each channel all the way up to FMOD_MAX_CHANNEL_WIDTH channels are treated as if they were mono)
FMOD_DSP_CHANNELMIX_OUTPUT_ALLSTEREO
  Output channel count = 2. Mapping: Left, Right, Left, Right, Left, Right, ... (each pair of channels is treated as stereo all the way up to FMOD_MAX_CHANNEL_WIDTH channels)
FMOD_DSP_CHANNELMIX_OUTPUT_ALLQUAD
  Output channel count = 4. Mapping: Repeating pattern of Front Left, Front Right, Surround Left, Surround Right.
FMOD_DSP_CHANNELMIX_OUTPUT_ALL5POINT1
  Output channel count = 6. Mapping: Repeating pattern of Front Left, Front Right, Center, LFE, Surround Left, Surround Right.
FMOD_DSP_CHANNELMIX_OUTPUT_ALL7POINT1
  Output channel count = 8. Mapping: Repeating pattern of Front Left, Front Right, Center, LFE, Surround Left, Surround Right, Back Left, Back Right.
FMOD_DSP_CHANNELMIX_OUTPUT_ALLLFE
  Output channel count = 6. Mapping: Repeating pattern of LFE in a 5.1 output signal.
FMOD_DSP_CHANNELMIX_OUTPUT_ALL7POINT1POINT4
  Output channel count = 12. Mapping: Repeating pattern of Front Left, Front Right, Center, LFE, Surround Left, Surround Right, Back Left, Back Right, Top Front Left, Top Front Right, Top Back Left, Top Back Right.

See Also: FMOD_DSP_CHANNELMIX_OUTPUTGROUPING, FMOD_DSP_TYPE_CHANNELMIX, DSP::setParameterInt, DSP::getParameterInt, FMOD_DSP_TYPE

## FMOD_DSP_CHORUS

Chorus DSP parameter types.

C
C++
C#
JS

    typedef enum FMOD_DSP_CHORUS {
      FMOD_DSP_CHORUS_MIX,
      FMOD_DSP_CHORUS_RATE,
      FMOD_DSP_CHORUS_DEPTH
    } FMOD_DSP_CHORUS;

    enum DSP_CHORUS
    {
      MIX,
      RATE,
      DEPTH,
    }

    FMOD.DSP_CHORUS_MIX
    FMOD.DSP_CHORUS_RATE
    FMOD.DSP_CHORUS_DEPTH

FMOD_DSP_CHORUS_MIX

  Percentage of wet signal in mix.

  - Type: float
  - Units: Percentage
  - Range: [0, 100]
  - Default: 50
FMOD_DSP_CHORUS_RATE

  Chorus modulation rate.

  - Type: float
  - Units: Hertz
  - Range: [0, 20]
  - Default: 0.8
FMOD_DSP_CHORUS_DEPTH

  Chorus modulation depth.

  - Type: float
  - Units: Milliseconds
  - Range: [0, 100]
  - Default: 3

Chorus is an effect where the sound is more 'spacious' due a copy of the signal being played along side the original, but with the delay of each copy modulating on a sine wave. As there are 2 versions of the same signal (dry vs wet), by default each signal is given 50% mix, so that the total is not louder than the original unaffected signal.

See Also: FMOD_DSP_TYPE_CHORUS, DSP::setParameterFloat, DSP::getParameterFloat, FMOD_DSP_TYPE

## FMOD_DSP_COMPRESSOR

Compressor DSP parameter types.

C
C++
C#
JS

    typedef enum FMOD_DSP_COMPRESSOR {
      FMOD_DSP_COMPRESSOR_THRESHOLD,
      FMOD_DSP_COMPRESSOR_RATIO,
      FMOD_DSP_COMPRESSOR_ATTACK,
      FMOD_DSP_COMPRESSOR_RELEASE,
      FMOD_DSP_COMPRESSOR_GAINMAKEUP,
      FMOD_DSP_COMPRESSOR_USESIDECHAIN,
      FMOD_DSP_COMPRESSOR_LINKED
    } FMOD_DSP_COMPRESSOR;

    enum DSP_COMPRESSOR
    {
      THRESHOLD,
      RATIO,
      ATTACK,
      RELEASE,
      GAINMAKEUP,
      USESIDECHAIN,
      LINKED
    }

    FMOD.DSP_COMPRESSOR_THRESHOLD
    FMOD.DSP_COMPRESSOR_RATIO
    FMOD.DSP_COMPRESSOR_ATTACK
    FMOD.DSP_COMPRESSOR_RELEASE
    FMOD.DSP_COMPRESSOR_GAINMAKEUP
    FMOD.DSP_COMPRESSOR_USESIDECHAIN
    FMOD.DSP_COMPRESSOR_LINKED

FMOD_DSP_COMPRESSOR_THRESHOLD

  Threshold level.

  - Type: float
  - Units: Decibels
  - Range: [-60, 0]
  - Default: 0
FMOD_DSP_COMPRESSOR_RATIO

  Compression Ratio.

  - Type: float
  - Units: Linear
  - Range: [1, 50]
  - Default: 2.5
FMOD_DSP_COMPRESSOR_ATTACK

  Attack time.

  - Type: float
  - Units: Milliseconds
  - Range: [0.1, 500]
  - Default: 20
FMOD_DSP_COMPRESSOR_RELEASE

  Release time.

  - Type: float
  - Units: Milliseconds
  - Range: [10, 5000]
  - Default: 100
FMOD_DSP_COMPRESSOR_GAINMAKEUP

  Make-up gain applied after limiting.

  - Type: float
  - Units: Decibels
  - Range: [-30, 30]
  - Default: 0
FMOD_DSP_COMPRESSOR_USESIDECHAIN
  Data of type FMOD_DSP_PARAMETER_SIDECHAIN. Whether to analyse the sidechain signal instead of the input signal. The FMOD_DSP_PARAMETER_SIDECHAIN::sidechainenable default is false.
FMOD_DSP_COMPRESSOR_LINKED

  false = Independent (compressor per channel), true = Linked.

  - Type: bool
  - Default: true

This is a multi-channel software limiter that is uniform across the whole spectrum.
The limiter is not guaranteed to catch every peak above the threshold level, because it cannot apply gain reduction instantaneously - the time delay is determined by the attack time. However setting the attack time too short will distort the sound, so it is a compromise. High level peaks can be avoided by using a short attack time - but not too short, and setting the threshold a few decibels below the critical level.

See Also: FMOD_DSP_TYPE_COMPRESSOR, DSP::setParameterFloat, DSP::setParameterBool

## FMOD_DSP_CONVOLUTION_REVERB

Convolution reverb DSP parameter types.

C
C++
C#
JS

    typedef enum FMOD_DSP_CONVOLUTION_REVERB {
      FMOD_DSP_CONVOLUTION_REVERB_PARAM_IR,
      FMOD_DSP_CONVOLUTION_REVERB_PARAM_WET,
      FMOD_DSP_CONVOLUTION_REVERB_PARAM_DRY,
      FMOD_DSP_CONVOLUTION_REVERB_PARAM_LINKED
    } FMOD_DSP_CONVOLUTION_REVERB;

    enum DSP_CONVOLUTION_REVERB
    {
      IR,
      WET,
      DRY,
      LINKED
    }

    FMOD.DSP_CONVOLUTION_REVERB_PARAM_IR
    FMOD.DSP_CONVOLUTION_REVERB_PARAM_WET
    FMOD.DSP_CONVOLUTION_REVERB_PARAM_DRY
    FMOD.DSP_CONVOLUTION_REVERB_PARAM_LINKED

FMOD_DSP_CONVOLUTION_REVERB_PARAM_IR
  Array of signed 16-bit (short) PCM data to be used as reverb impulse response. First member of the array should be a 16 bit value (short) which specifies the number of channels. Array looks like [index 0=numchannels][index 1+ = raw 16 bit PCM data]. Data is copied internally so source can be freed.
FMOD_DSP_CONVOLUTION_REVERB_PARAM_WET

  Volume of echo signal to pass to output.

  - Type: float
  - Units: Decibels
  - Range: [-80, 10]
  - Default: 0
FMOD_DSP_CONVOLUTION_REVERB_PARAM_DRY

  Original sound volume.

  - Type: float
  - Units: Decibels
  - Range: [-80, 10]
  - Default: 0
FMOD_DSP_CONVOLUTION_REVERB_PARAM_LINKED

  Linked - channels are mixed together before processing through the reverb.

  - Type: bool
  - Default: true

Convolution reverb is a reverberation effect that uses a recording of a physical space known as an Impulse Response file (or IR file) to generate frequency specific reverberation.

See Also: FMOD_DSP_TYPE_CONVOLUTIONREVERB, DSP::setParameterFloat, DSP::setParameterData

## FMOD_DSP_DELAY

Delay DSP parameter types.

C
C++
C#
JS

    typedef enum FMOD_DSP_DELAY {
      FMOD_DSP_DELAY_CH0,
      FMOD_DSP_DELAY_CH1,
      FMOD_DSP_DELAY_CH2,
      FMOD_DSP_DELAY_CH3,
      FMOD_DSP_DELAY_CH4,
      FMOD_DSP_DELAY_CH5,
      FMOD_DSP_DELAY_CH6,
      FMOD_DSP_DELAY_CH7,
      FMOD_DSP_DELAY_CH8,
      FMOD_DSP_DELAY_CH9,
      FMOD_DSP_DELAY_CH10,
      FMOD_DSP_DELAY_CH11,
      FMOD_DSP_DELAY_CH12,
      FMOD_DSP_DELAY_CH13,
      FMOD_DSP_DELAY_CH14,
      FMOD_DSP_DELAY_CH15,
      FMOD_DSP_DELAY_MAXDELAY
    } FMOD_DSP_DELAY;

    enum DSP_DELAY
    {
      CH0,
      CH1,
      CH2,
      CH3,
      CH4,
      CH5,
      CH6,
      CH7,
      CH8,
      CH9,
      CH10,
      CH11,
      CH12,
      CH13,
      CH14,
      CH15,
      MAXDELAY,
    }

    FMOD.DSP_DELAY_CH0
    FMOD.DSP_DELAY_CH1
    FMOD.DSP_DELAY_CH2
    FMOD.DSP_DELAY_CH3
    FMOD.DSP_DELAY_CH4
    FMOD.DSP_DELAY_CH5
    FMOD.DSP_DELAY_CH6
    FMOD.DSP_DELAY_CH7
    FMOD.DSP_DELAY_CH8
    FMOD.DSP_DELAY_CH9
    FMOD.DSP_DELAY_CH10
    FMOD.DSP_DELAY_CH11
    FMOD.DSP_DELAY_CH12
    FMOD.DSP_DELAY_CH13
    FMOD.DSP_DELAY_CH14
    FMOD.DSP_DELAY_CH15
    FMOD.DSP_DELAY_MAXDELAY

FMOD_DSP_DELAY_CH0

  Channel #0 Delay.

  - Type: float
  - Units: Milliseconds
  - Range: [0, 10000]
  - Default: 0
FMOD_DSP_DELAY_CH1

  Channel #1 Delay.

  - Type: float
  - Units: Milliseconds
  - Range: [0, 10000]
  - Default: 0
FMOD_DSP_DELAY_CH2

  Channel #2 Delay.

  - Type: float
  - Units: Milliseconds
  - Range: [0, 10000]
  - Default: 0
FMOD_DSP_DELAY_CH3

  Channel #3 Delay.

  - Type: float
  - Units: Milliseconds
  - Range: [0, 10000]
  - Default: 0
FMOD_DSP_DELAY_CH4

  Channel #4 Delay.

  - Type: float
  - Units: Milliseconds
  - Range: [0, 10000]
  - Default: 0
FMOD_DSP_DELAY_CH5

  Channel #5 Delay.

  - Type: float
  - Units: Milliseconds
  - Range: [0, 10000]
  - Default: 0
FMOD_DSP_DELAY_CH6

  Channel #6 Delay.

  - Type: float
  - Units: Milliseconds
  - Range: [0, 10000]
  - Default: 0
FMOD_DSP_DELAY_CH7

  Channel #7 Delay.

  - Type: float
  - Units: Milliseconds
  - Range: [0, 10000]
  - Default: 0
FMOD_DSP_DELAY_CH8

  Channel #8 Delay.

  - Type: float
  - Units: Milliseconds
  - Range: [0, 10000]
  - Default: 0
FMOD_DSP_DELAY_CH9

  Channel #9 Delay.

  - Type: float
  - Units: Milliseconds
  - Range: [0, 10000]
  - Default: 0
FMOD_DSP_DELAY_CH10

  Channel #10 Delay.

  - Type: float
  - Units: Milliseconds
  - Range: [0, 10000]
  - Default: 0
FMOD_DSP_DELAY_CH11

  Channel #11 Delay.

  - Type: float
  - Units: Milliseconds
  - Range: [0, 10000]
  - Default: 0
FMOD_DSP_DELAY_CH12

  Channel #12 Delay.

  - Type: float
  - Units: Milliseconds
  - Range: [0, 10000]
  - Default: 0
FMOD_DSP_DELAY_CH13

  Channel #13 Delay.

  - Type: float
  - Units: Milliseconds
  - Range: [0, 10000]
  - Default: 0
FMOD_DSP_DELAY_CH14

  Channel #14 Delay.

  - Type: float
  - Units: Milliseconds
  - Range: [0, 10000]
  - Default: 0
FMOD_DSP_DELAY_CH15

  Channel #15 Delay.

  - Type: float
  - Units: Milliseconds
  - Range: [0, 10000]
  - Default: 0
FMOD_DSP_DELAY_MAXDELAY

  Maximum delay, for memory allocation purposes.

  - Type: float
  - Units: Milliseconds
  - Range: [0, 10000]
  - Default: 10

Note. Every time MaxDelay is changed, the plugin re-allocates the delay buffer. This means the delay will disappear at that time while it refills its new buffer. A larger MaxDelay results in larger amounts of memory allocated.

Channel delays above MaxDelay will be clipped to MaxDelay and the delay buffer will not be resized.

See Also: FMOD_DSP_TYPE_DELAY, DSP::setParameterFloat

## FMOD_DSP_DISTORTION

Distortion DSP parameter types.

C
C++
C#
JS

    typedef enum FMOD_DSP_DISTORTION {
      FMOD_DSP_DISTORTION_LEVEL
    } FMOD_DSP_DISTORTION;

    enum DSP_DISTORTION
    {
      LEVEL
    }

    FMOD.DSP_DISTORTION_LEVEL

FMOD_DSP_DISTORTION_LEVEL

  Distortion value.

  - Type: float
  - Units: Linear
  - Range: [0, 1]
  - Default: 0.5

See Also: FMOD_DSP_TYPE_DISTORTION, DSP::setParameterFloat

## FMOD_DSP_ECHO

Echo DSP parameter types.

C
C++
C#
JS

    typedef enum FMOD_DSP_ECHO {
      FMOD_DSP_ECHO_DELAY,
      FMOD_DSP_ECHO_FEEDBACK,
      FMOD_DSP_ECHO_DRYLEVEL,
      FMOD_DSP_ECHO_WETLEVEL
    } FMOD_DSP_ECHO;

    enum DSP_ECHO
    {
      DELAY,
      FEEDBACK,
      DRYLEVEL,
      WETLEVEL
    }

    FMOD.DSP_ECHO_DELAY
    FMOD.DSP_ECHO_FEEDBACK
    FMOD.DSP_ECHO_DRYLEVEL
    FMOD.DSP_ECHO_WETLEVEL

FMOD_DSP_ECHO_DELAY

  Echo delay.

  - Type: float
  - Units: Milliseconds
  - Range: [1, 5000]
  - Default: 500
FMOD_DSP_ECHO_FEEDBACK

  Echo decay per delay. 100.0 = No decay, 0.0 = total decay.

  - Type: float
  - Units: Percentage
  - Range: [0, 100]
  - Default: 50
FMOD_DSP_ECHO_DRYLEVEL

  Original sound volume.

  - Type: float
  - Units: Decibels
  - Range: [-80, 10]
  - Default: 0
FMOD_DSP_ECHO_WETLEVEL

  Volume of echo signal to pass to output.

  - Type: float
  - Units: Decibels
  - Range: [-80, 10]
  - Default: 0

Note. Every time the delay is changed, the plugin re-allocates the echo buffer. This means the echo will dissapear at that time while it refills its new buffer. Larger echo delays result in larger amounts of memory allocated.

See Also: FMOD_DSP_TYPE_ECHO, DSP::setParameterFloat

## FMOD_DSP_ENVELOPEFOLLOWER

Deprecated and will be removed in a future release.

C
C++
C#
JS

    typedef enum FMOD_DSP_ENVELOPEFOLLOWER {
      FMOD_DSP_ENVELOPEFOLLOWER_ATTACK,
      FMOD_DSP_ENVELOPEFOLLOWER_RELEASE,
      FMOD_DSP_ENVELOPEFOLLOWER_ENVELOPE,
      FMOD_DSP_ENVELOPEFOLLOWER_USESIDECHAIN
    } FMOD_DSP_ENVELOPEFOLLOWER;

    enum DSP_ENVELOPEFOLLOWER
    {
      ATTACK,
      RELEASE,
      ENVELOPE,
      USESIDECHAIN
    }

    FMOD.DSP_ENVELOPEFOLLOWER_ATTACK
    FMOD.DSP_ENVELOPEFOLLOWER_RELEASE
    FMOD.DSP_ENVELOPEFOLLOWER_ENVELOPE
    FMOD.DSP_ENVELOPEFOLLOWER_USESIDECHAIN

FMOD_DSP_ENVELOPEFOLLOWER_ATTACK

  Attack time.

  - Type: float
  - Units: Milliseconds
  - Range: [0.1, 1000]
  - Default: 20
FMOD_DSP_ENVELOPEFOLLOWER_RELEASE

  Release time.

  - Type: float
  - Units: Milliseconds
  - Range: [10, 5000]
  - Default: 100
FMOD_DSP_ENVELOPEFOLLOWER_ENVELOPE

  Current value of the envelope.

  - Type: float
  - Units: Linear
  - Range: [0, 1]
FMOD_DSP_ENVELOPEFOLLOWER_USESIDECHAIN

  Whether to analyse the sidechain signal instead of the input signal.

  - Type: int (FMOD_DSP_PARAMETER_SIDECHAIN)

Parameter types for the FMOD_DSP_TYPE_ENVELOPEFOLLOWER unit. This is a simple envelope follower for tracking the signal level. This unit does not affect the incoming signal.

See Also: DSP::setParameterFloat, DSP::setParameterData

## FMOD_DSP_FADER

Fader DSP parameter types.

C
C++
C#
JS

    typedef enum FMOD_DSP_FADER {
      FMOD_DSP_FADER_GAIN,
      FMOD_DSP_FADER_OVERALL_GAIN
    } FMOD_DSP_FADER;

    enum DSP_FADER
    {
      GAIN,
      OVERALL_GAIN,
    }

Not supported for JavaScript.

FMOD_DSP_FADER_GAIN

  Signal gain.

  - Type: float
  - Units: Decibels
  - Range: [-80, 10]
  - Default: 0
FMOD_DSP_FADER_OVERALL_GAIN

  Overall gain to allow FMOD to know the DSP is scaling the signal for visualization purposes.

  - Type: data (FMOD_DSP_PARAMETER_OVERALLGAIN)

See Also: FMOD_DSP_TYPE_FADER, DSP::setParameterFloat

## FMOD_DSP_FFT

FFT DSP parameter types.

C
C++
C#
JS

    typedef enum FMOD_DSP_FFT {
      FMOD_DSP_FFT_WINDOWSIZE,
      FMOD_DSP_FFT_WINDOWTYPE,
      FMOD_DSP_FFT_SPECTRUMDATA,
      FMOD_DSP_FFT_DOMINANT_FREQ
    } FMOD_DSP_FFT;

    enum DSP_FFT
    {
        WINDOWSIZE,
        WINDOWTYPE,
        SPECTRUMDATA,
        DOMINANT_FREQ
    }

    FMOD.DSP_FFT_WINDOWSIZE
    FMOD.DSP_FFT_WINDOWTYPE
    FMOD.DSP_FFT_SPECTRUMDATA
    FMOD.DSP_FFT_DOMINANT_FREQ

FMOD_DSP_FFT_WINDOWSIZE

  Window size. Must be a power of 2 between 128 and 16384.

  - Type: int
  - Default: 2048
FMOD_DSP_FFT_WINDOWTYPE

  FFT Window Type.

  - Type: int (FMOD_DSP_FFT_WINDOW)
  - Default: FMOD_DSP_FFT_WINDOW_HAMMING
FMOD_DSP_FFT_SPECTRUMDATA R/O

  Returns the current spectrum values between 0 and 1 for each 'fft bin'. Divide the Nyquist frequency by the window size to get the hz value per entry.

  - Type: data (FMOD_DSP_PARAMETER_FFT)
FMOD_DSP_FFT_DOMINANT_FREQ R/O

  Returns the dominant frequencies for each channel.

  - Type: float

Set the attributes for the spectrum analysis with FMOD_DSP_FFT_WINDOWSIZE and FMOD_DSP_FFT_WINDOWTYPE, and retrieve the results with FMOD_DSP_FFT_SPECTRUM and FMOD_DSP_FFT_DOMINANT_FREQ.
FMOD_DSP_FFT_SPECTRUM stores its data in the FMOD_DSP_PARAMETER_DATA_TYPE_FFT. You will need to cast to this structure to get the right data.

See Also: FMOD_DSP_TYPE_FFT, DSP::setParameterFloat, DSP::setParameterInt, DSP::setParameterData, FMOD_DSP_FFT_WINDOW

## FMOD_DSP_FFT_WINDOW

List of windowing methods for the FFT DSP.

C
C++
C#
JS

    typedef enum FMOD_DSP_FFT_WINDOW {
      FMOD_DSP_FFT_WINDOW_RECT,
      FMOD_DSP_FFT_WINDOW_TRIANGLE,
      FMOD_DSP_FFT_WINDOW_HAMMING,
      FMOD_DSP_FFT_WINDOW_HANNING,
      FMOD_DSP_FFT_WINDOW_BLACKMAN,
      FMOD_DSP_FFT_WINDOW_BLACKMANHARRIS
    } FMOD_DSP_FFT_WINDOW;

    enum DSP_FFT_WINDOW
    {
      RECT,
      TRIANGLE,
      HAMMING,
      HANNING,
      BLACKMAN,
      BLACKMANHARRIS
    }

    FMOD.DSP_FFT_WINDOW_RECT
    FMOD.DSP_FFT_WINDOW_TRIANGLE
    FMOD.DSP_FFT_WINDOW_HAMMING
    FMOD.DSP_FFT_WINDOW_HANNING
    FMOD.DSP_FFT_WINDOW_BLACKMAN
    FMOD.DSP_FFT_WINDOW_BLACKMANHARRIS

FMOD_DSP_FFT_WINDOW_RECT
  w[n] = 1.0
FMOD_DSP_FFT_WINDOW_TRIANGLE
  w[n] = TRI(2n/N)
FMOD_DSP_FFT_WINDOW_HAMMING
  w[n] = 0.54 - (0.46 * COS(n/N) )
FMOD_DSP_FFT_WINDOW_HANNING
  w[n] = 0.5 * (1.0 - COS(n/N) )
FMOD_DSP_FFT_WINDOW_BLACKMAN
  w[n] = 0.42 - (0.5 * COS(n/N) ) + (0.08 * COS(2.0 * n/N) )
FMOD_DSP_FFT_WINDOW_BLACKMANHARRIS
  w[n] = 0.35875 - (0.48829 * COS(1.0 * n/N)) + (0.14128 * COS(2.0 * n/N)) - (0.01168 * COS(3.0 * n/N))

Used in spectrum analysis to reduce leakage / transient signals interfering with the analysis. This is a problem with analysis of continuous signals that only have a small portion of the signal sample (the fft window size). Windowing the signal with a curve or triangle tapers the sides of the fft window to help alleviate this problem.

Cyclic signals such as a sine wave that repeat their cycle in a multiple of the window size do not need windowing. I.e. If the sine wave repeats every 1024, 512, 256 etc samples and the FMOD fft window is 1024, then the signal would not need windowing.

Not windowing is the same as FMOD_DSP_FFT_WINDOW_RECT, which is the default. If the cycle of the signal (ie the sine wave) is not a multiple of the window size, it will cause frequency abnormalities, so a different windowing method is needed.

FMOD_DSP_FFT_WINDOW_RECT

FMOD_DSP_FFT_WINDOW_TRIANGLE

FMOD_DSP_FFT_WINDOW_HAMMING

FMOD_DSP_FFT_WINDOW_HANNING

FMOD_DSP_FFT_WINDOW_BLACKMAN

FMOD_DSP_FFT_WINDOW_BLACKMANHARRIS

See Also: FMOD_DSP_FFT, FMOD_DSP_TYPE_FFT

## FMOD_DSP_FLANGE

Flange DSP parameter types.

C
C++
C#
JS

    typedef enum FMOD_DSP_FLANGE {
      FMOD_DSP_FLANGE_MIX,
      FMOD_DSP_FLANGE_DEPTH,
      FMOD_DSP_FLANGE_RATE
    } FMOD_DSP_FLANGE;

    enum DSP_FLANGE
    {
      MIX,
      DEPTH,
      RATE
    }

    FMOD.DSP_FLANGE_MIX
    FMOD.DSP_FLANGE_DEPTH
    FMOD.DSP_FLANGE_RATE

FMOD_DSP_FLANGE_MIX

  Percentage of wet signal in mix.

  - Type: float
  - Units: Percentage
  - Range: [0, 100]
  - Default: 50
FMOD_DSP_FLANGE_DEPTH

  Flange depth.

  - Type: float
  - Units: Linear
  - Range: [0.01, 1]
  - Default: 1
FMOD_DSP_FLANGE_RATE

  Flange speed.

  - Type: float
  - Units: Hertz
  - Range: [0, 20]
  - Default: .1

Flange is an effect where the signal is played twice at the same time, and one copy slides back and forth creating a whooshing or flanging effect. As there are 2 versions of the same signal (dry vs wet), by default each signal is given 50% mix, so that the total is not louder than the original unaffected signal.

Flange depth is a percentage of a 10ms shift from the original signal. Anything above 10ms is not considered flange because to the ear it begins to 'echo' so 10ms is the highest value possible.

See Also: FMOD_DSP_TYPE_FLANGE, DSP::setParameterFloat

## FMOD_DSP_HIGHPASS

Highpass DSP parameter types.

C
C++
C#
JS

    typedef enum FMOD_DSP_HIGHPASS {
      FMOD_DSP_HIGHPASS_CUTOFF,
      FMOD_DSP_HIGHPASS_RESONANCE
    } FMOD_DSP_HIGHPASS;

    enum DSP_HIGHPASS
    {
      CUTOFF,
      RESONANCE
    }

    FMOD.DSP_HIGHPASS_CUTOFF
    FMOD.DSP_HIGHPASS_RESONANCE

FMOD_DSP_HIGHPASS_CUTOFF

  Highpass cutoff frequency.

  - Type: float
  - Units: Hertz
  - Range: [1, 22000]
  - Default: 5000
FMOD_DSP_HIGHPASS_RESONANCE

  Highpass resonance Q value.

  - Type: float
  - Range: [1, 10]
  - Default: 1

Deprecated and will be removed in a future release, to emulate with FMOD_DSP_TYPE_MULTIBAND_EQ:

    // Configure a single band (band A) as a highpass (all other bands default to off).
    // 12dB roll-off to approximate the old effect curve.
    // Cutoff frequency can be used the same as with the old effect.
    // Resonance can be applied by setting the 'Q' value of the new effect.
    FMOD_DSP_SetParameterInt(multiband, FMOD_DSP_MULTIBAND_EQ_A_FILTER, FMOD_DSP_MULTIBAND_EQ_FILTER_HIGHPASS_12DB);
    FMOD_DSP_SetParameterFloat(multiband, FMOD_DSP_MULTIBAND_EQ_A_FREQUENCY, frequency);
    FMOD_DSP_SetParameterFloat(multiband, FMOD_DSP_MULTIBAND_EQ_A_Q, resonance);

See Also: FMOD_DSP_TYPE_HIGHPASS, DSP::setParameterFloat

## FMOD_DSP_HIGHPASS_SIMPLE

Simple Highpass DSP parameter types.

C
C++
C#
JS

    typedef enum FMOD_DSP_HIGHPASS_SIMPLE {
      FMOD_DSP_HIGHPASS_SIMPLE_CUTOFF
    } FMOD_DSP_HIGHPASS_SIMPLE;

    enum DSP_HIGHPASS_SIMPLE
    {
      CUTOFF
    }

    FMOD.DSP_HIGHPASS_SIMPLE_CUTOFF

FMOD_DSP_HIGHPASS_SIMPLE_CUTOFF

  Highpass cutoff frequency.

  - Type: float
  - Units: Hertz
  - Range: [1, 22000]
  - Default: 5000

Deprecated and will be removed in a future release, to emulate with FMOD_DSP_TYPE_MULTIBAND_EQ:

    // Configure a single band (band A) as a highpass (all other bands default to off).
    // 12dB roll-off to approximate the old effect curve.
    // Cutoff frequency can be used the same as with the old effect.
    // Resonance / 'Q' should remain at default 0.707.
    FMOD_DSP_SetParameterInt(multiband, FMOD_DSP_MULTIBAND_EQ_A_FILTER, FMOD_DSP_MULTIBAND_EQ_FILTER_HIGHPASS_12DB);
    FMOD_DSP_SetParameterFloat(multiband, FMOD_DSP_MULTIBAND_EQ_A_FREQUENCY, frequency);

This is a very simple single-order high pass filter. The emphasis is on speed rather than accuracy, so this should not be used for task requiring critical filtering.

See Also: FMOD_DSP_TYPE_HIGHPASS_SIMPLE, DSP::setParameterFloat

## FMOD_DSP_ITECHO

IT Echo DSP parameter types.

C
C++
C#
JS

    typedef enum FMOD_DSP_ITECHO {
      FMOD_DSP_ITECHO_WETDRYMIX,
      FMOD_DSP_ITECHO_FEEDBACK,
      FMOD_DSP_ITECHO_LEFTDELAY,
      FMOD_DSP_ITECHO_RIGHTDELAY,
      FMOD_DSP_ITECHO_PANDELAY
    } FMOD_DSP_ITECHO;

    enum DSP_ITECHO
    {
      WETDRYMIX,
      FEEDBACK,
      LEFTDELAY,
      RIGHTDELAY,
      PANDELAY
    }

    FMOD.DSP_ITECHO_WETDRYMIX
    FMOD.DSP_ITECHO_FEEDBACK
    FMOD.DSP_ITECHO_LEFTDELAY
    FMOD.DSP_ITECHO_RIGHTDELAY
    FMOD.DSP_ITECHO_PANDELAY

FMOD_DSP_ITECHO_WETDRYMIX

  Ratio of wet (processed) signal to dry (unprocessed) signal. Higher is wetter.

  - Type: float
  - Units: Percentage
  - Range: [0, 100]
  - Default: 50
FMOD_DSP_ITECHO_FEEDBACK

  Percentage of output fed back into input.

  - Type: float
  - Units: Percentage
  - Range: [0, 100]
  - Default: 50
FMOD_DSP_ITECHO_LEFTDELAY

  Delay for left channel.

  - Type: float
  - Units: Milliseconds
  - Range: [1, 2000]
  - Default: 500
FMOD_DSP_ITECHO_RIGHTDELAY

  Delay for right channel.

  - Type: float
  - Units: Milliseconds
  - Range: [1, 2000]
  - Default: 500
FMOD_DSP_ITECHO_PANDELAY

  Value that specifies whether to swap left and right delays with each successive echo. CURRENTLY NOT SUPPORTED.

  - Type: float
  - Range: 0, 1
  - Default: 0

This is effectively a software based echo filter that emulates the DirectX DMO echo effect. Impulse tracker files can support this, and FMOD will produce the effect on ANY platform, not just those that support DirectX effects!

Note. Every time the delay is changed, the plugin re-allocates the echo buffer. This means the echo will dissapear at that time while it refills its new buffer. Larger echo delays result in larger amounts of memory allocated.

As this is a stereo filter made mainly for IT playback, it is targeted for stereo signals. With mono signals only the FMOD_DSP_ITECHO_LEFTDELAY is used. For multi-channel signals (>2) there will be no echo on those channels.

See Also: FMOD_DSP_TYPE_ITECHO, DSP::setParameterFloat

## FMOD_DSP_ITLOWPASS

Lowpass DSP parameter types.

C
C++
C#
JS

    typedef enum FMOD_DSP_ITLOWPASS {
      FMOD_DSP_ITLOWPASS_CUTOFF,
      FMOD_DSP_ITLOWPASS_RESONANCE
    } FMOD_DSP_ITLOWPASS;

    enum DSP_ITLOWPASS
    {
      CUTOFF,
      RESONANCE
    }

    FMOD.DSP_ITLOWPASS_CUTOFF
    FMOD.DSP_ITLOWPASS_RESONANCE

FMOD_DSP_ITLOWPASS_CUTOFF

  Lowpass cutoff frequency.

  - Type: float
  - Units: Hertz
  - Range: [1, 22000]
  - Default: 5000
FMOD_DSP_ITLOWPASS_RESONANCE

  Lowpass resonance Q value.

  - Type: float
  - Range: [0, 127]
  - Default: 1

FMOD Studio's .IT playback uses this filter.

This is different to the default FMOD_DSP_TYPE_ITLOWPASS filter in that it uses a different quality algorithm and is the filter used to produce the correct sounding playback in .IT files.

Note! This filter actually has a limited cutoff frequency below the specified maximum, due to its limited design, so for a more open range filter use FMOD_DSP_LOWPASS or if you don't mind not having resonance, FMOD_DSP_LOWPASS_SIMPLE.

The effective maximum cutoff is about 8060hz.

See Also: FMOD_DSP_TYPE_ITLOWPASS, DSP::setParameterFloat

## FMOD_DSP_LIMITER

Limited DSP parameter types.

C
C++
C#
JS

    typedef enum FMOD_DSP_LIMITER {
      FMOD_DSP_LIMITER_RELEASETIME,
      FMOD_DSP_LIMITER_CEILING,
      FMOD_DSP_LIMITER_MAXIMIZERGAIN,
      FMOD_DSP_LIMITER_MODE
    } FMOD_DSP_LIMITER;

    enum DSP_LIMITER
    {
      RELEASETIME,
      CEILING,
      MAXIMIZERGAIN,
      MODE,
    }

    FMOD.DSP_LIMITER_RELEASETIME
    FMOD.DSP_LIMITER_CEILING
    FMOD.DSP_LIMITER_MAXIMIZERGAIN
    FMOD.DSP_LIMITER_MODE

FMOD_DSP_LIMITER_RELEASETIME

  Time to return the gain reduction to full in ms.

  - Type: float
  - Units: Milliseconds
  - Range: [1, 1000]
  - Default: 10
FMOD_DSP_LIMITER_CEILING

  Maximum level of the output signal.

  - Type: float
  - Units: Decibels
  - Range: [-12, 0]
  - Default: 0
FMOD_DSP_LIMITER_MAXIMIZERGAIN

  Maximum amplification allowed.

  - Type: float
  - Units: Decibels
  - Range: [0, 12]
  - Default: 0
FMOD_DSP_LIMITER_MODE

  Channel processing mode where false is independent (limiter per channel) and true is linked (all channels are summed together before processing).

  - Type: bool
  - Default: false

See Also: FMOD_DSP_TYPE_LIMITER, DSP::setParameterFloat

## FMOD_DSP_LOUDNESS_METER

Loudness meter DSP parameter types.

C
C++
C#
JS

    typedef enum FMOD_DSP_LOUDNESS_METER {
      FMOD_DSP_LOUDNESS_METER_STATE,
      FMOD_DSP_LOUDNESS_METER_WEIGHTING,
      FMOD_DSP_LOUDNESS_METER_INFO
    } FMOD_DSP_LOUDNESS_METER;

    enum DSP_LOUDNESS_METER
    {
      STATE,
      WEIGHTING,
      INFO
    }

    FMOD.DSP_LOUDNESS_METER_STATE,
    FMOD.DSP_LOUDNESS_METER_WEIGHTING,
    FMOD.DSP_LOUDNESS_METER_INFO

FMOD_DSP_LOUDNESS_METER_STATE

  Update state.

  - Type: int (FMOD_DSP_LOUDNESS_METER_STATE_TYPE)
  - Default: FMOD_DSP_LOUDNESS_METER_STATE_ANALYZING
FMOD_DSP_LOUDNESS_METER_WEIGHTING

  Channel weighting.

  - Type: data (FMOD_DSP_LOUDNESS_METER_WEIGHTING_TYPE)
FMOD_DSP_LOUDNESS_METER_INFO R/O

  Metering information.

  - Type: data (FMOD_DSP_LOUDNESS_METER_INFO_TYPE)

See Also: FMOD_DSP_TYPE_LOUDNESS_METER, DSP::setParameterInt, DSP::setParameterData

## FMOD_DSP_LOUDNESS_METER_INFO_TYPE

Loudness meter information data structure.

C
C++
C#
JS

    typedef struct FMOD_DSP_LOUDNESS_METER_INFO_TYPE
    {
      float momentaryloudness;
      float shorttermloudness;
      float integratedloudness;
      float loudness10thpercentile;
      float loudness95thpercentile;
      float loudnesshistogram[66];
      float maxtruepeak;
      float maxmomentaryloudness;
    } FMOD_DSP_LOUDNESS_METER_INFO_TYPE;

    struct DSP_LOUDNESS_METER_INFO_TYPE
    {
      float momentaryloudness;
      float shorttermloudness;
      float integratedloudness;
      float loudness10thpercentile;
      float loudness95thpercentile;
      float loudnesshistogram[66];
      float maxtruepeak;
      float maxmomentaryloudness;
    }

    FMOD_DSP_LOUDNESS_METER_INFO_TYPE
    {
      momentaryloudness;
      shorttermloudness;
      integratedloudness;
      loudness10thpercentile;
      loudness95thpercentile;
      loudnesshistogram;
      maxtruepeak;
      maxmomentaryloudness;
    }

momentaryloudness
  Loudness value indicating current loudness. Calculated using a 400ms window.

- Units: Decibels
- Range: [-80, inf)

shorttermloudness
  Loudness value indicating loudness averaged over a short time duration. Calculated using a 3 second window.

- Units: Decibels
- Range: [-80, inf)

integratedloudness
  Loudness value indicating loudness over the entire duration of the recording period.

- Units: Decibels
- Range: [-80, inf)

loudness10thpercentile
  10th percentile loudness (towards lowest loudness). Uses short term loudness values (3 second averages).

- Units: Decibels
- Range: [-80, inf)

loudness95thpercentile
  95th percentile loudness (towards highest loudness). Uses short term loudness values (3 second averages).

- Units: Decibels
- Range: [-80, inf)

loudnesshistogram
  Array containing distribution of loudness values. Each array entry is a count of the momentary loudness values (400ms averages) evenly distributed along the range [-60, 6] excluding loudness values outside that range.
maxtruepeak
  Highest peak.

- Units: Decibels
- Range: [-80, inf)

maxmomentaryloudness
  Highest momentary loudness value (400ms averages).

- Units: Decibels
- Range: [-80, inf)

See Also: FMOD_DSP_PARAMETER_DATA_TYPE, FMOD_DSP_PARAMETER_DESC

## FMOD_DSP_LOUDNESS_METER_STATE_TYPE

Loudness meter state indicating update behavior.

C
C++
C#
JS

    typedef enum FMOD_DSP_LOUDNESS_METER_STATE_TYPE {
      FMOD_DSP_LOUDNESS_METER_STATE_RESET_INTEGRATED = -3,
      FMOD_DSP_LOUDNESS_METER_STATE_RESET_MAXPEAK = -2,
      FMOD_DSP_LOUDNESS_METER_STATE_RESET_ALL = -1,
      FMOD_DSP_LOUDNESS_METER_STATE_PAUSED = 0,
      FMOD_DSP_LOUDNESS_METER_STATE_ANALYZING = 1
    } FMOD_DSP_LOUDNESS_METER_STATE_TYPE;

    enum DSP_LOUDNESS_METER_STATE_TYPE
    {
      RESET_INTEGRATED = -3,
      RESET_MAXPEAK = -2,
      ESET_ALL = -1,
      PAUSED,
      ANALYZING
    }

    FMOD.DSP_LOUDNESS_METER_STATE_RESET_INTEGRATED = -3,
    FMOD.DSP_LOUDNESS_METER_STATE_RESET_MAXPEAK = -2,
    FMOD.DSP_LOUDNESS_METER_STATE_RESET_ALL = -1,
    FMOD.DSP_LOUDNESS_METER_STATE_PAUSED = 0,
    FMOD.DSP_LOUDNESS_METER_STATE_ANALYZING = 1

FMOD_DSP_LOUDNESS_METER_STATE_RESET_INTEGRATED
  Reset loudness meter information except max peak.
FMOD_DSP_LOUDNESS_METER_STATE_RESET_MAXPEAK
  Reset loudness meter max peak.
FMOD_DSP_LOUDNESS_METER_STATE_RESET_ALL
  Reset all loudness meter information.
FMOD_DSP_LOUDNESS_METER_STATE_PAUSED
  Pause loudness meter.
FMOD_DSP_LOUDNESS_METER_STATE_ANALYZING
  Enable loudness meter recording and analyzing.

See Also: FMOD_DSP_TYPE_LOUDNESS_METER

## FMOD_DSP_LOUDNESS_METER_WEIGHTING_TYPE

Loudness meter channel weighting.

C
C++
C#
JS

    typedef struct FMOD_DSP_LOUDNESS_METER_WEIGHTING_TYPE
    {
      float channelweight[32];
    } FMOD_DSP_LOUDNESS_METER_WEIGHTING_TYPE;

    struct DSP_LOUDNESS_METER_WEIGHTING_TYPE
    {
      float channelweight[32];
    }

    FMOD_DSP_LOUDNESS_METER_WEIGHTING_TYPE
    {
      channelweight;
    }

channelweight

  The weighting of each channel used in calculating loudness.

  - Default: { 1, 1, 1, 0, 1.4, 1.4, 1.4, 1.4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }

See Also: FMOD_DSP_PARAMETER_DATA_TYPE, FMOD_DSP_PARAMETER_DESC

## FMOD_DSP_LOWPASS

Lowpass DSP parameter types.

C
C++
C#
JS

    typedef enum FMOD_DSP_LOWPASS {
      FMOD_DSP_LOWPASS_CUTOFF,
      FMOD_DSP_LOWPASS_RESONANCE
    } FMOD_DSP_LOWPASS;

    enum DSP_LOWPASS
    {
      CUTOFF,
      RESONANCE
    }

    FMOD.DSP_LOWPASS_CUTOFF
    FMOD.DSP_LOWPASS_RESONANCE

FMOD_DSP_LOWPASS_CUTOFF

  Lowpass cutoff frequency.

  - Type: float
  - Units: Hertz
  - Range: [1, 22000]
  - Default: 5000
FMOD_DSP_LOWPASS_RESONANCE

  Lowpass resonance Q value.

  - Type: float
  - Range: [0, 10]
  - Default: 1

Deprecated and will be removed in a future release, to emulate with FMOD_DSP_TYPE_MULTIBAND_EQ:

    // Configure a single band (band A) as a lowpass (all other bands default to off).
    // 24dB roll-off to approximate the old effect curve.
    // Cutoff frequency can be used the same as with the old effect.
    // Resonance can be applied by setting the 'Q' value of the new effect.
    FMOD_DSP_SetParameterInt(multiband, FMOD_DSP_MULTIBAND_EQ_A_FILTER, FMOD_DSP_MULTIBAND_EQ_FILTER_LOWPASS_24DB);
    FMOD_DSP_SetParameterFloat(multiband, FMOD_DSP_MULTIBAND_EQ_A_FREQUENCY, frequency);
    FMOD_DSP_SetParameterFloat(multiband, FMOD_DSP_MULTIBAND_EQ_A_Q, resonance);

See Also: FMOD_DSP_TYPE_LOWPASS, DSP::setParameterFloat

## FMOD_DSP_LOWPASS_SIMPLE

Simple Lowpass DSP Parameter types.

C
C++
C#
JS

    typedef enum FMOD_DSP_LOWPASS_SIMPLE {
      FMOD_DSP_LOWPASS_SIMPLE_CUTOFF
    } FMOD_DSP_LOWPASS_SIMPLE;

    enum DSP_LOWPASS_SIMPLE
    {
      CUTOFF
    }

    FMOD.DSP_LOWPASS_SIMPLE_CUTOFF

FMOD_DSP_LOWPASS_SIMPLE_CUTOFF

  Lowpass cutoff frequency.

  - Type: float
  - Units: Hertz
  - Range: [1, 22000]
  - Default: 5000

Deprecated and will be removed in a future release, to emulate with FMOD_DSP_TYPE_MULTIBAND_EQ:

    //  Configure a single band (band A) as a lowpass (all other bands default to off).
    //  12dB roll-off to approximate the old effect curve.
    //  Cutoff frequency can be used the same as with the old effect.
    //  Resonance / 'Q' should remain at default 0.707.
    FMOD_DSP_SetParameterInt(multiband, FMOD_DSP_MULTIBAND_EQ_A_FILTER, FMOD_DSP_MULTIBAND_EQ_FILTER_LOWPASS_12DB);
    FMOD_DSP_SetParameterFloat(multiband, FMOD_DSP_MULTIBAND_EQ_A_FREQUENCY, frequency);

This is a very simple low pass filter, based on two single-pole RC time-constant modules.

The emphasis is on speed rather than accuracy, so this should not be used for task requiring critical filtering.

See Also: FMOD_DSP_TYPE_LOWPASS_SIMPLE, DSP::setParameterFloat, DSP::getParameterFloat, FMOD_DSP_TYPE

## FMOD_DSP_MULTIBAND_EQ

Multiband EQ DSP parameter types.

C
C++
C#
JS

    typedef enum FMOD_DSP_MULTIBAND_EQ {
      FMOD_DSP_MULTIBAND_EQ_A_FILTER,
      FMOD_DSP_MULTIBAND_EQ_A_FREQUENCY,
      FMOD_DSP_MULTIBAND_EQ_A_Q,
      FMOD_DSP_MULTIBAND_EQ_A_GAIN,
      FMOD_DSP_MULTIBAND_EQ_B_FILTER,
      FMOD_DSP_MULTIBAND_EQ_B_FREQUENCY,
      FMOD_DSP_MULTIBAND_EQ_B_Q,
      FMOD_DSP_MULTIBAND_EQ_B_GAIN,
      FMOD_DSP_MULTIBAND_EQ_C_FILTER,
      FMOD_DSP_MULTIBAND_EQ_C_FREQUENCY,
      FMOD_DSP_MULTIBAND_EQ_C_Q,
      FMOD_DSP_MULTIBAND_EQ_C_GAIN,
      FMOD_DSP_MULTIBAND_EQ_D_FILTER,
      FMOD_DSP_MULTIBAND_EQ_D_FREQUENCY,
      FMOD_DSP_MULTIBAND_EQ_D_Q,
      FMOD_DSP_MULTIBAND_EQ_D_GAIN,
      FMOD_DSP_MULTIBAND_EQ_E_FILTER,
      FMOD_DSP_MULTIBAND_EQ_E_FREQUENCY,
      FMOD_DSP_MULTIBAND_EQ_E_Q,
      FMOD_DSP_MULTIBAND_EQ_E_GAIN
    } FMOD_DSP_MULTIBAND_EQ;

    enum DSP_MULTIBAND_EQ
    {
      A_FILTER,
      A_FREQUENCY,
      A_Q,
      A_GAIN,
      B_FILTER,
      B_FREQUENCY,
      B_Q,
      B_GAIN,
      C_FILTER,
      C_FREQUENCY,
      C_Q,
      C_GAIN,
      D_FILTER,
      D_FREQUENCY,
      D_Q,
      D_GAIN,
      E_FILTER,
      E_FREQUENCY,
      E_Q,
      E_GAIN,
    }

    FMOD.DSP_MULTIBAND_EQ_A_FILTER
    FMOD.DSP_MULTIBAND_EQ_A_FREQUENCY
    FMOD.DSP_MULTIBAND_EQ_A_Q
    FMOD.DSP_MULTIBAND_EQ_A_GAIN
    FMOD.DSP_MULTIBAND_EQ_B_FILTER
    FMOD.DSP_MULTIBAND_EQ_B_FREQUENCY
    FMOD.DSP_MULTIBAND_EQ_B_Q
    FMOD.DSP_MULTIBAND_EQ_B_GAIN
    FMOD.DSP_MULTIBAND_EQ_C_FILTER
    FMOD.DSP_MULTIBAND_EQ_C_FREQUENCY
    FMOD.DSP_MULTIBAND_EQ_C_Q
    FMOD.DSP_MULTIBAND_EQ_C_GAIN
    FMOD.DSP_MULTIBAND_EQ_D_FILTER
    FMOD.DSP_MULTIBAND_EQ_D_FREQUENCY
    FMOD.DSP_MULTIBAND_EQ_D_Q
    FMOD.DSP_MULTIBAND_EQ_D_GAIN
    FMOD.DSP_MULTIBAND_EQ_E_FILTER
    FMOD.DSP_MULTIBAND_EQ_E_FREQUENCY
    FMOD.DSP_MULTIBAND_EQ_E_Q
    FMOD.DSP_MULTIBAND_EQ_E_GAIN

FMOD_DSP_MULTIBAND_EQ_A_FILTER

  Band A: used to interpret the behavior of the remaining parameters.

  - Type: int (FMOD_DSP_MULTIBAND_EQ_FILTER_TYPE)
  - Default: FMOD_DSP_MULTIBAND_EQ_FILTER_LOWPASS_12DB
FMOD_DSP_MULTIBAND_EQ_A_FREQUENCY

  Band A: Significant frequency, cutoff [low/high pass, low/high shelf], center [notch, peaking, band-pass], phase transition point [all-pass].

  - Type: float
  - Units: Hertz
  - Range: [20, 22000]
  - Default: 8000
FMOD_DSP_MULTIBAND_EQ_A_Q

  Band A: Quality factor, resonance [low/high pass], bandwidth [notch, peaking, band-pass], phase transition sharpness [all-pass], unused [low/high shelf].

  - Type: float
  - Range: [0.1, 10]
  - Default: 0.707
FMOD_DSP_MULTIBAND_EQ_A_GAIN

  Band A: Boost or attenuation in dB [peaking, high/low shelf only]. -30 to 30. Default = 0.

  - Type: float
  - Units: Decibels
  - Range: [-30, 30]
  - Default: 8000
FMOD_DSP_MULTIBAND_EQ_B_FILTER

  Band B: See Band A.

  - Type: int (FMOD_DSP_MULTIBAND_EQ_FILTER_TYPE)
  - Default: FMOD_DSP_MULTIBAND_EQ_FILTER_DISABLED
FMOD_DSP_MULTIBAND_EQ_B_FREQUENCY
  Band B: See Band A
FMOD_DSP_MULTIBAND_EQ_B_Q
  Band B: See Band A
FMOD_DSP_MULTIBAND_EQ_B_GAIN
  Band B: See Band A
FMOD_DSP_MULTIBAND_EQ_C_FILTER

  Band C: See Band A.

  - Type: int (FMOD_DSP_MULTIBAND_EQ_FILTER_TYPE)
  - Default: FMOD_DSP_MULTIBAND_EQ_FILTER_DISABLED
FMOD_DSP_MULTIBAND_EQ_C_FREQUENCY
  Band C: See Band A.
FMOD_DSP_MULTIBAND_EQ_C_Q
  Band C: See Band A.
FMOD_DSP_MULTIBAND_EQ_C_GAIN
  Band C: See Band A.
FMOD_DSP_MULTIBAND_EQ_D_FILTER

  Band D: See Band A.

  - Type: int (FMOD_DSP_MULTIBAND_EQ_FILTER_TYPE)
  - Default: FMOD_DSP_MULTIBAND_EQ_FILTER_DISABLED
FMOD_DSP_MULTIBAND_EQ_D_FREQUENCY
  Band D: See Band A.
FMOD_DSP_MULTIBAND_EQ_D_Q
  Band D: See Band A.
FMOD_DSP_MULTIBAND_EQ_D_GAIN
  Band D: See Band A.
FMOD_DSP_MULTIBAND_EQ_E_FILTER

  Band E: See Band A.

  - Type: int (FMOD_DSP_MULTIBAND_EQ_FILTER_TYPE)
  - Default: FMOD_DSP_MULTIBAND_EQ_FILTER_DISABLED
FMOD_DSP_MULTIBAND_EQ_E_FREQUENCY
  Band E: See Band A.
FMOD_DSP_MULTIBAND_EQ_E_Q
  Band E: See Band A.
FMOD_DSP_MULTIBAND_EQ_E_GAIN
  Band E: See Band A.

Flexible five band parametric equalizer.

See Also: FMOD_DSP_TYPE_MULTIBAND_EQ, DSP::setParameterInt, DSP::setParameterFloat

## FMOD_DSP_MULTIBAND_EQ_FILTER_TYPE

Multiband EQ Filter types.

C
C++
C#
JS

    typedef enum FMOD_DSP_MULTIBAND_EQ_FILTER_TYPE {
      FMOD_DSP_MULTIBAND_EQ_FILTER_DISABLED,
      FMOD_DSP_MULTIBAND_EQ_FILTER_LOWPASS_12DB,
      FMOD_DSP_MULTIBAND_EQ_FILTER_LOWPASS_24DB,
      FMOD_DSP_MULTIBAND_EQ_FILTER_LOWPASS_48DB,
      FMOD_DSP_MULTIBAND_EQ_FILTER_HIGHPASS_12DB,
      FMOD_DSP_MULTIBAND_EQ_FILTER_HIGHPASS_24DB,
      FMOD_DSP_MULTIBAND_EQ_FILTER_HIGHPASS_48DB,
      FMOD_DSP_MULTIBAND_EQ_FILTER_LOWSHELF,
      FMOD_DSP_MULTIBAND_EQ_FILTER_HIGHSHELF,
      FMOD_DSP_MULTIBAND_EQ_FILTER_PEAKING,
      FMOD_DSP_MULTIBAND_EQ_FILTER_BANDPASS,
      FMOD_DSP_MULTIBAND_EQ_FILTER_NOTCH,
      FMOD_DSP_MULTIBAND_EQ_FILTER_ALLPASS
    } FMOD_DSP_MULTIBAND_EQ_FILTER_TYPE;

    enum DSP_MULTIBAND_EQ_FILTER_TYPE
    {
      DISABLED,
      LOWPASS_12DB,
      LOWPASS_24DB,
      LOWPASS_48DB,
      HIGHPASS_12DB,
      HIGHPASS_24DB,
      HIGHPASS_48DB,
      LOWSHELF,
      HIGHSHELF,
      PEAKING,
      BANDPASS,
      NOTCH,
      ALLPASS,
    }

    FMOD.DSP_MULTIBAND_EQ_FILTER_DISABLED
    FMOD.DSP_MULTIBAND_EQ_FILTER_LOWPASS_12DB
    FMOD.DSP_MULTIBAND_EQ_FILTER_LOWPASS_24DB
    FMOD.DSP_MULTIBAND_EQ_FILTER_LOWPASS_48DB
    FMOD.DSP_MULTIBAND_EQ_FILTER_HIGHPASS_12DB
    FMOD.DSP_MULTIBAND_EQ_FILTER_HIGHPASS_24DB
    FMOD.DSP_MULTIBAND_EQ_FILTER_HIGHPASS_48DB
    FMOD.DSP_MULTIBAND_EQ_FILTER_LOWSHELF
    FMOD.DSP_MULTIBAND_EQ_FILTER_HIGHSHELF
    FMOD.DSP_MULTIBAND_EQ_FILTER_PEAKING
    FMOD.DSP_MULTIBAND_EQ_FILTER_BANDPASS
    FMOD.DSP_MULTIBAND_EQ_FILTER_NOTCH
    FMOD.DSP_MULTIBAND_EQ_FILTER_ALLPASS

FMOD_DSP_MULTIBAND_EQ_FILTER_DISABLED
  Disabled filter, no processing.
FMOD_DSP_MULTIBAND_EQ_FILTER_LOWPASS_12DB
  Resonant low-pass filter, attenuates frequencies (12dB per octave) above a given point (with specificed resonance) while allowing the rest to pass.
FMOD_DSP_MULTIBAND_EQ_FILTER_LOWPASS_24DB
  Resonant low-pass filter, attenuates frequencies (24dB per octave) above a given point (with specificed resonance) while allowing the rest to pass.
FMOD_DSP_MULTIBAND_EQ_FILTER_LOWPASS_48DB
  Resonant low-pass filter, attenuates frequencies (48dB per octave) above a given point (with specificed resonance) while allowing the rest to pass.
FMOD_DSP_MULTIBAND_EQ_FILTER_HIGHPASS_12DB
  Resonant high-pass filter, attenuates frequencies (12dB per octave) below a given point (with specificed resonance) while allowing the rest to pass.
FMOD_DSP_MULTIBAND_EQ_FILTER_HIGHPASS_24DB
  Resonant high-pass filter, attenuates frequencies (24dB per octave) below a given point (with specificed resonance) while allowing the rest to pass.
FMOD_DSP_MULTIBAND_EQ_FILTER_HIGHPASS_48DB
  Resonant high-pass filter, attenuates frequencies (48dB per octave) below a given point (with specificed resonance) while allowing the rest to pass.
FMOD_DSP_MULTIBAND_EQ_FILTER_LOWSHELF
  Low-shelf filter, boosts or attenuates frequencies (with specified gain) below a given point while allowing the rest to pass.
FMOD_DSP_MULTIBAND_EQ_FILTER_HIGHSHELF
  High-shelf filter, boosts or attenuates frequencies (with specified gain) above a given point while allowing the rest to pass.
FMOD_DSP_MULTIBAND_EQ_FILTER_PEAKING
  Peaking filter, boosts or attenuates frequencies (with specified gain) at a given point (with specificed bandwidth) while allowing the rest to pass.
FMOD_DSP_MULTIBAND_EQ_FILTER_BANDPASS
  Band-pass filter, allows frequencies at a given point (with specificed bandwidth) to pass while attenuating frequencies outside this range.
FMOD_DSP_MULTIBAND_EQ_FILTER_NOTCH
  Notch or band-reject filter, attenuates frequencies at a given point (with specificed bandwidth) while allowing frequencies outside this range to pass.
FMOD_DSP_MULTIBAND_EQ_FILTER_ALLPASS
  All-pass filter, allows all frequencies to pass, but changes the phase response at a given point (with specified sharpness).

See Also: FMOD_DSP_MULTIBAND_EQ

## FMOD_DSP_NORMALIZE

Normalize DSP parameter types.

C
C++
C#
JS

    typedef enum FMOD_DSP_NORMALIZE {
      FMOD_DSP_NORMALIZE_FADETIME,
      FMOD_DSP_NORMALIZE_THRESHOLD,
      FMOD_DSP_NORMALIZE_MAXAMP
    } FMOD_DSP_NORMALIZE;

    enum DSP_NORMALIZE
    {
      FADETIME,
      THRESHOLD,
      MAXAMP
    }

    FMOD.DSP_NORMALIZE_FADETIME
    FMOD.DSP_NORMALIZE_THRESHOLD
    FMOD.DSP_NORMALIZE_MAXAMP

FMOD_DSP_NORMALIZE_FADETIME

  Time to ramp the silence to full.

  - Type: float
  - Units: Milliseconds
  - Range: [0, 20000]
  - Default: 5000
FMOD_DSP_NORMALIZE_THRESHOLD

  Lower volume range threshold to ignore.

  - Type: float
  - Units: Linear
  - Range: [0, 1]
  - Default: 0.1
FMOD_DSP_NORMALIZE_MAXAMP

  Maximum amplification allowed.

  - Type: float
  - Units: Linear
  - Range: [1, 100000]
  - Default: 20

Normalize amplifies the sound based on the maximum peaks within the signal. For example if the maximum peaks in the signal were 50% of the bandwidth, it would scale the whole sound by 2.

The lower threshold value makes the normalizer ignore peaks below a certain point, to avoid over-amplification if a loud signal suddenly came in, and also to avoid amplifying to maximum things like background hiss.

Because FMOD is a realtime audio processor, it doesn't have the luxury of knowing the peak for the whole sound (ie it can't see into the future), so it has to process data as it comes in.

To avoid very sudden changes in volume level based on small samples of new data, FMOD fades towards the desired amplification which makes for smooth gain control. The fadetime parameter can control this.

See Also: FMOD_DSP_TYPE_NORMALIZE, DSP::setParameterFloat

## FMOD_DSP_OBJECTPAN

Object based spatializer parameters.

C
C++
C#
JS

    typedef enum FMOD_DSP_OBJECTPAN {
      FMOD_DSP_OBJECTPAN_3D_POSITION,
      FMOD_DSP_OBJECTPAN_3D_ROLLOFF,
      FMOD_DSP_OBJECTPAN_3D_MIN_DISTANCE,
      FMOD_DSP_OBJECTPAN_3D_MAX_DISTANCE,
      FMOD_DSP_OBJECTPAN_3D_EXTENT_MODE,
      FMOD_DSP_OBJECTPAN_3D_SOUND_SIZE,
      FMOD_DSP_OBJECTPAN_3D_MIN_EXTENT,
      FMOD_DSP_OBJECTPAN_OVERALL_GAIN,
      FMOD_DSP_OBJECTPAN_OUTPUTGAIN,
      FMOD_DSP_OBJECTPAN_ATTENUATION_RANGE,
      FMOD_DSP_OBJECTPAN_OVERRIDE_RANGE
    } FMOD_DSP_OBJECTPAN;

    enum DSP_OBJECTPAN
    {
      _3D_POSITION,
      _3D_ROLLOFF,
      _3D_MIN_DISTANCE,
      _3D_MAX_DISTANCE,
      _3D_EXTENT_MODE,
      _3D_SOUND_SIZE,
      _3D_MIN_EXTENT,
      OVERALL_GAIN,
      OUTPUTGAIN,
      ATTENUATION_RANGE,
      OVERRIDE_RANGE
    }

    FMOD.DSP_OBJECTPAN_3D_POSITION
    FMOD.DSP_OBJECTPAN_3D_ROLLOFF
    FMOD.DSP_OBJECTPAN_3D_MIN_DISTANCE
    FMOD.DSP_OBJECTPAN_3D_MAX_DISTANCE
    FMOD.DSP_OBJECTPAN_3D_EXTENT_MODE
    FMOD.DSP_OBJECTPAN_3D_SOUND_SIZE
    FMOD.DSP_OBJECTPAN_3D_MIN_EXTENT
    FMOD.DSP_OBJECTPAN_OVERALL_GAIN
    FMOD.DSP_OBJECTPAN_OUTPUTGAIN
    FMOD.DSP_OBJECTPAN_ATTENUATION_RANGE
    FMOD.DSP_OBJECTPAN_OVERRIDE_RANGE

FMOD_DSP_OBJECTPAN_3D_POSITION

  3D Position.

  - Type: data (FMOD_DSP_PARAMETER_3DATTRIBUTES_MULTI)
FMOD_DSP_OBJECTPAN_3D_ROLLOFF

  3D Roll-off Type.

  - Type: int (FMOD_DSP_PAN_3D_ROLLOFF_TYPE)
  - Default: FMOD_DSP_PAN_3D_ROLLOFF_LINEARSQUARED
FMOD_DSP_OBJECTPAN_3D_MIN_DISTANCE

  3D Min Distance when FMOD_DSP_OBJECTPAN_OVERRIDE_RANGE is true.

  - Type: float
  - Units: Distance units
  - Range: [0, inf)
  - Default: 1
FMOD_DSP_OBJECTPAN_3D_MAX_DISTANCE

  3D Max Distance when FMOD_DSP_OBJECTPAN_OVERRIDE_RANGE is true.

  - Type: float
  - Units: Distance units
  - Range: [0, inf)
  - Default: 20
FMOD_DSP_OBJECTPAN_3D_EXTENT_MODE

  3D Extent Mode.

  - Type: int (FMOD_DSP_PAN_3D_EXTENT_MODE_TYPE)
  - Default: FMOD_DSP_PAN_3D_EXTENT_MODE_AUTO
FMOD_DSP_OBJECTPAN_3D_SOUND_SIZE

  3D Sound Size.

  - Type: float
  - Units: Distance units
  - Range: [0, inf)
  - Default: 0
FMOD_DSP_OBJECTPAN_3D_MIN_EXTENT

  3D Min Extent.

  - Type: float
  - Units: Degrees
  - Range: [0, 360]
  - Default: 0
FMOD_DSP_OBJECTPAN_OVERALL_GAIN R/O

  Overall gain to allow FMOD to know the DSP is scaling the signal for virtualization purposes.

  - Type: data (FMOD_DSP_PARAMETER_OVERALLGAIN)
FMOD_DSP_OBJECTPAN_OUTPUTGAIN

  Output gain level.

  - Type: float
  - Units: Linear
  - Range: [0, 1]
  - Default: 0
FMOD_DSP_OBJECTPAN_ATTENUATION_RANGE

  Attenuation Range when FMOD_DSP_OBJECTPAN_OVERRIDE_RANGE is false.

  - Type: data (FMOD_DSP_PARAMETER_ATTENUATION_RANGE)
FMOD_DSP_OBJECTPAN_OVERRIDE_RANGE

  Override Attenuation Range with FMOD_DSP_OBJECTPAN_3D_MIN_DISTANCE and FMOD_DSP_OBJECTPAN_3D_MAX_DISTANCE.

  - Type: bool
  - Default: true

Signal processed by this DSP will be sent to the global object mixer (effectively a send), any DSP connected after this will receive silence.

For best results this DSP should be used with FMOD_OUTPUTTYPE_WINSONIC or FMOD_OUTPUTTYPE_AUDIO3D to get height spatialization. Playback with any other output will result in fallback spatialization provided by FMOD_DSP_TYPE_PAN.

FMOD_DSP_OBJECTPAN_OVERRIDE_RANGE defaults to true for backwards compatability.

See Also: FMOD_DSP_TYPE_OBJECTPAN, DSP::setParameterFloat, DSP::setParameterInt, DSP::setParameterData, Controlling a Spatializer DSP

## FMOD_DSP_OSCILLATOR

Oscillator DSP parameter types.

C
C++
C#
JS

    typedef enum FMOD_DSP_OSCILLATOR {
      FMOD_DSP_OSCILLATOR_TYPE,
      FMOD_DSP_OSCILLATOR_RATE
    } FMOD_DSP_OSCILLATOR;

    enum DSP_OSCILLATOR
    {
      TYPE,
      RATE
    }

    FMOD.DSP_OSCILLATOR_TYPE
    FMOD.DSP_OSCILLATOR_RATE

FMOD_DSP_OSCILLATOR_TYPE

  Waveform type. 0 = sine. 1 = square. 2 = sawup. 3 = sawdown. 4 = triangle. 5 = noise.

  - Type: int
  - Default: 0
FMOD_DSP_OSCILLATOR_RATE

  Frequency of the tone. Does not affect the noise generator.

  - Type: float
  - Units: Hertz
  - Range: [0, 22000]
  - Default: 220

See Also: FMOD_DSP_TYPE_OSCILLATOR, DSP::setParameterFloat, DSP::setParameterInt

## FMOD_DSP_PAN

Pan DSP parameter types.

C
C++
C#
JS

    typedef enum FMOD_DSP_PAN {
      FMOD_DSP_PAN_MODE,
      FMOD_DSP_PAN_2D_STEREO_POSITION,
      FMOD_DSP_PAN_2D_DIRECTION,
      FMOD_DSP_PAN_2D_EXTENT,
      FMOD_DSP_PAN_2D_ROTATION,
      FMOD_DSP_PAN_2D_LFE_LEVEL,
      FMOD_DSP_PAN_2D_STEREO_MODE,
      FMOD_DSP_PAN_2D_STEREO_SEPARATION,
      FMOD_DSP_PAN_2D_STEREO_AXIS,
      FMOD_DSP_PAN_ENABLED_SPEAKERS,
      FMOD_DSP_PAN_3D_POSITION,
      FMOD_DSP_PAN_3D_ROLLOFF,
      FMOD_DSP_PAN_3D_MIN_DISTANCE,
      FMOD_DSP_PAN_3D_MAX_DISTANCE,
      FMOD_DSP_PAN_3D_EXTENT_MODE,
      FMOD_DSP_PAN_3D_SOUND_SIZE,
      FMOD_DSP_PAN_3D_MIN_EXTENT,
      FMOD_DSP_PAN_3D_PAN_BLEND,
      FMOD_DSP_PAN_LFE_UPMIX_ENABLED,
      FMOD_DSP_PAN_OVERALL_GAIN,
      FMOD_DSP_PAN_SURROUND_SPEAKER_MODE,
      FMOD_DSP_PAN_2D_HEIGHT_BLEND,
      FMOD_DSP_PAN_ATTENUATION_RANGE,
      FMOD_DSP_PAN_OVERRIDE_RANGE
    } FMOD_DSP_PAN;

    enum DSP_PAN
    {
      MODE,
      _2D_STEREO_POSITION,
      _2D_DIRECTION,
      _2D_EXTENT,
      _2D_ROTATION,
      _2D_LFE_LEVEL,
      _2D_STEREO_MODE,
      _2D_STEREO_SEPARATION,
      _2D_STEREO_AXIS,
      ENABLED_SPEAKERS,
      _3D_POSITION,
      _3D_ROLLOFF,
      _3D_MIN_DISTANCE,
      _3D_MAX_DISTANCE,
      _3D_EXTENT_MODE,
      _3D_SOUND_SIZE,
      _3D_MIN_EXTENT,
      _3D_PAN_BLEND,
      LFE_UPMIX_ENABLED,
      OVERALL_GAIN,
      SURROUND_SPEAKER_MODE,
      _2D_HEIGHT_BLEND,
      ATTENUATION_RANGE,
      OVERRIDE_RANGE
    }

    FMOD.DSP_PAN_MODE
    FMOD.DSP_PAN_2D_STEREO_POSITION
    FMOD.DSP_PAN_2D_DIRECTION
    FMOD.DSP_PAN_2D_EXTENT
    FMOD.DSP_PAN_2D_ROTATION
    FMOD.DSP_PAN_2D_LFE_LEVEL
    FMOD.DSP_PAN_2D_STEREO_MODE
    FMOD.DSP_PAN_2D_STEREO_SEPARATION
    FMOD.DSP_PAN_2D_STEREO_AXIS
    FMOD.DSP_PAN_ENABLED_SPEAKERS
    FMOD.DSP_PAN_3D_POSITION
    FMOD.DSP_PAN_3D_ROLLOFF
    FMOD.DSP_PAN_3D_MIN_DISTANCE
    FMOD.DSP_PAN_3D_MAX_DISTANCE
    FMOD.DSP_PAN_3D_EXTENT_MODE
    FMOD.DSP_PAN_3D_SOUND_SIZE
    FMOD.DSP_PAN_3D_MIN_EXTENT
    FMOD.DSP_PAN_3D_PAN_BLEND
    FMOD.DSP_PAN_LFE_UPMIX_ENABLED
    FMOD.DSP_PAN_OVERALL_GAIN
    FMOD.DSP_PAN_SURROUND_SPEAKER_MODE
    FMOD.DSP_PAN_2D_HEIGHT_BLEND
    FMOD.DSP_PAN_ATTENUATION_RANGE
    FMOD.DSP_PAN_OVERRIDE_RANGE

FMOD_DSP_PAN_MODE

  Panner mode.

  - Type: int FMOD_DSP_PAN_MODE_TYPE
  - Default: FMOD_DSP_PAN_MODE_SURROUND
FMOD_DSP_PAN_2D_STEREO_POSITION

  2D Stereo pan position.

  - Type: float
  - Units: Linear
  - Range: [-100, 100]
  - Default: 0
FMOD_DSP_PAN_2D_DIRECTION

  2D Surround pan direction. Direction from center point of panning circle where 0 is front center and -180 or +180 is rear speakers center point.

  - Type: float
  - Units: Degrees
  - Range: [-180, 180]
  - Default: 0
FMOD_DSP_PAN_2D_EXTENT

  2D Surround pan extent.

  - Type: float
  - Units: Degrees
  - Range: [0, 360]
  - Default: 360
FMOD_DSP_PAN_2D_ROTATION

  2D Surround pan rotation.

  - Type: float
  - Units: Degrees
  - Range: [-180, 180]
  - Default: 0
FMOD_DSP_PAN_2D_LFE_LEVEL

  2D Surround pan LFE level.

  - Type: float
  - Units: Decibels
  - Range: [-80, 20]
  - Default: 0
FMOD_DSP_PAN_2D_STEREO_MODE

  Stereo-To-Surround Mode.

  - Type: int (FMOD_DSP_PAN_2D_STEREO_MODE_TYPE)
  - Default: FMOD_DSP_PAN_2D_STEREO_MODE_DISCRETE
FMOD_DSP_PAN_2D_STEREO_SEPARATION

  Stereo-To-Surround Stereo For FMOD_DSP_PAN_2D_STEREO_MODE_DISCRETE mode. Separation/width of L/R parts of stereo sound.

  - Type: float
  - Units: Degrees
  - Range: [-180, 180]
  - Default: 60
FMOD_DSP_PAN_2D_STEREO_AXIS

  Stereo-To-Surround Stereo For FMOD_DSP_PAN_2D_STEREO_MODE_DISCRETE mode. Axis/rotation of L/R parts of stereo sound.

  - Type: float
  - Units: Degrees
  - Range: [-180, 180]
  - Default: 0
FMOD_DSP_PAN_ENABLED_SPEAKERS

  Speakers Enabled Bitmask for each speaker from 0 to 32 to be considered by panner. Use to disable speakers from being panned to. 0 to 0xFFF. Default = 0xFFF (All on).

  - Type: int
  - Range: [0, 0xFFF]
  - Default: 0xFFF
FMOD_DSP_PAN_3D_POSITION

  3D Position of panner and listener(s).

  - Type: data (FMOD_DSP_PARAMETER_3DATTRIBUTES_MULTI)
FMOD_DSP_PAN_3D_ROLLOFF

  3D volume attenuation curve shape.

  - Type: int (FMOD_DSP_PAN_3D_ROLLOFF_TYPE)
  - Default: FMOD_DSP_PAN_3D_ROLLOFF_LINEARSQUARED
FMOD_DSP_PAN_3D_MIN_DISTANCE

  3D volume attenuation minimum distance when FMOD_DSP_OBJECTPAN_OVERRIDE_RANGE is true.

  - Type: float
  - Units: Distance units
  - Range: [0, inf)
  - Default: 1
FMOD_DSP_PAN_3D_MAX_DISTANCE

  3D volume attenuation maximum distance when FMOD_DSP_OBJECTPAN_OVERRIDE_RANGE is true.

  - Type: float
  - Units: Distance units
  - Range: [0, inf)
  - Default: 20
FMOD_DSP_PAN_3D_EXTENT_MODE

  3D Extent Mode.

  - Type: int (FMOD_DSP_PAN_3D_EXTENT_MODE_TYPE)
  - Default: FMOD_DSP_PAN_3D_EXTENT_MODE_AUTO
FMOD_DSP_PAN_3D_SOUND_SIZE

  3D Sound Size.

  - Type: float
  - Units: Distance units
  - Range: [0, inf)
  - Default: 0
FMOD_DSP_PAN_3D_MIN_EXTENT

  3D Min Extent.

  - Type: float
  - Units: Degrees
  - Range: [0, 360]
  - Default: 0
FMOD_DSP_PAN_3D_PAN_BLEND

  3D Pan Blend.

  - Type: float
  - Units: Linear
  - Range: [0, 1]
  - Default: 0
FMOD_DSP_PAN_LFE_UPMIX_ENABLED

  LFE Upmix Enabled. Determines whether non-LFE source channels should mix to the LFE or leave it alone. 0 (off) to 1 (on). Default = 0 (off).

  - Type: int
  - Units: Linear
  - Range: [0, 1]
  - Default: 0
FMOD_DSP_PAN_OVERALL_GAIN

  Overall gain to allow FMOD to know the DSP is scaling the signal for visualization purposes.

  - Type: data (FMOD_DSP_PARAMETER_OVERALLGAIN)
FMOD_DSP_PAN_SURROUND_SPEAKER_MODE

  Surround speaker mode. (FMOD_SPEAKERMODE)

  - Type: int (FMOD_SPEAKERMODE)
  - Default: FMOD_SPEAKERMODE_DEFAULT
FMOD_DSP_PAN_2D_HEIGHT_BLEND

  2D Height blend. When the input or FMOD_DSP_PAN_SURROUND_SPEAKER_MODE has height speakers, control the blend between ground and height. -1.0 (push top speakers to ground), 0.0 (preserve top / ground separation), 1.0 (push ground speakers to top).

  - Type: float
  - Units: Linear
  - Range: [-1, 1]
  - Default: 0
FMOD_DSP_PAN_ATTENUATION_RANGE

  Attenuation Range when FMOD_DSP_OBJECTPAN_OVERRIDE_RANGE is false.

  - Type: data (FMOD_DSP_PARAMETER_ATTENUATION_RANGE)
FMOD_DSP_PAN_OVERRIDE_RANGE

  Override Attenuation Range with FMOD_DSP_PAN_3D_MIN_DISTANCE and FMOD_DSP_PAN_3D_MAX_DISTANCE.

  - Type: bool
  - Default: true

FMOD_DSP_PAN_3D_PAN_BLEND controls the percentage of the effect supplied by FMOD_DSP_PAN_2D_DIRECTION and FMOD_DSP_PAN_2D_EXTENT.

For FMOD_DSP_PAN_3D_POSITION, the following members in the FMOD_DSP_PARAMETER_3DATTRIBUTES_MULTI struct should be non zero.
- numlisteners - This is typically 1, can be up to 8. Typically more than 1 is only used for split screen purposes. The FMOD Panner will average angles and produce the best compromise for panning and attenuation.
- relative[listenernum].position - This is the delta between the listener position and the sound position. Typically the listener position is subtracted from the sound position.
- relative[listenernum].forward - This is the sound's forward vector. Optional, set to 0,0,1 if not needed. This is only relevant for more than mono sounds in 3D, that are spread amongst the destination speakers at the time of panning.

        If the sound rotates then the L/R part of a stereo sound will rotate amongst its destination speakers.
        If the sound has moved and pinpointed into a single speaker, rotation of the sound will have no effect as at that point the channels are collapsed into a single point.

For FMOD_DSP_PAN_2D_STEREO_MODE, when it is set to FMOD_DSP_PAN_2D_STEREO_MODE_DISCRETE, only FMOD_DSP_PAN_2D_STEREO_SEPARATION and FMOD_DSP_PAN_2D_STEREO_AXIS are used.
When it is set to FMOD_DSP_PAN_2D_STEREO_MODE_DISTRIBUTED, then standard FMOD_DSP_PAN_2D_DIRECTION/FMOD_DSP_PAN_2D_EXTENT parameters are used.

FMOD_DSP_OBJECTPAN_OVERRIDE_RANGE defaults to true for backwards compatability.

See Also: FMOD_DSP_TYPE_PAN, DSP::setParameterFloat, DSP::setParameterInt, DSP::setParameterData, Controlling a Spatializer DSP

## FMOD_DSP_PAN_2D_STEREO_MODE_TYPE

2D Stereo Mode values for Pan DSP.

C
C++
C#
JS

    typedef enum FMOD_DSP_PAN_2D_STEREO_MODE_TYPE {
      FMOD_DSP_PAN_2D_STEREO_MODE_DISTRIBUTED,
      FMOD_DSP_PAN_2D_STEREO_MODE_DISCRETE
    } FMOD_DSP_PAN_2D_STEREO_MODE_TYPE;

    enum DSP_PAN_2D_STEREO_MODE_TYPE
    {
      DISTRIBUTED,
      DISCRETE
    }

    FMOD.DSP_PAN_2D_STEREO_MODE_DISTRIBUTED
    FMOD.DSP_PAN_2D_STEREO_MODE_DISCRETE

FMOD_DSP_PAN_2D_STEREO_MODE_DISTRIBUTED
  The parts of a stereo sound are spread around destination speakers based on FMOD_DSP_PAN_2D_EXTENT / FMOD_DSP_PAN_2D_DIRECTION
FMOD_DSP_PAN_2D_STEREO_MODE_DISCRETE
  The L/R parts of a stereo sound are rotated around a circle based on FMOD_DSP_PAN_2D_STEREO_AXIS / FMOD_DSP_PAN_2D_STEREO_SEPARATION.

See Also: FMOD_DSP_PAN_2D_STEREO_MODE, FMOD_DSP_TYPE_PAN, FMOD_DSP_PAN

## FMOD_DSP_PAN_3D_EXTENT_MODE_TYPE

3D Extent Mode values for Pan DSP.

C
C++
C#
JS

    typedef enum FMOD_DSP_PAN_3D_EXTENT_MODE_TYPE {
      FMOD_DSP_PAN_3D_EXTENT_MODE_AUTO,
      FMOD_DSP_PAN_3D_EXTENT_MODE_USER,
      FMOD_DSP_PAN_3D_EXTENT_MODE_OFF
    } FMOD_DSP_PAN_3D_EXTENT_MODE_TYPE;

    enum DSP_PAN_3D_EXTENT_MODE_TYPE
    {
      AUTO,
      USER,
      OFF
    }

    FMOD.DSP_PAN_3D_EXTENT_MODE_AUTO
    FMOD.DSP_PAN_3D_EXTENT_MODE_USER
    FMOD.DSP_PAN_3D_EXTENT_MODE_OFF

FMOD_DSP_PAN_3D_EXTENT_MODE_AUTO
FMOD_DSP_PAN_3D_EXTENT_MODE_USER
FMOD_DSP_PAN_3D_EXTENT_MODE_OFF

See Also: FMOD_DSP_PAN_3D_EXTENT_MODE, FMOD_DSP_TYPE_PAN, FMOD_DSP_PAN

## FMOD_DSP_PAN_3D_ROLLOFF_TYPE

3D roll-off values for Pan DSP.

C
C++
C#
JS

    typedef enum FMOD_DSP_PAN_3D_ROLLOFF_TYPE {
      FMOD_DSP_PAN_3D_ROLLOFF_LINEARSQUARED,
      FMOD_DSP_PAN_3D_ROLLOFF_LINEAR,
      FMOD_DSP_PAN_3D_ROLLOFF_INVERSE,
      FMOD_DSP_PAN_3D_ROLLOFF_INVERSETAPERED,
      FMOD_DSP_PAN_3D_ROLLOFF_CUSTOM
    } FMOD_DSP_PAN_3D_ROLLOFF_TYPE;

    enum DSP_PAN_3D_ROLLOFF_TYPE
    {
      LINEARSQUARED,
      LINEAR,
      INVERSE,
      INVERSETAPERED,
      CUSTOM
    }

    FMOD.DSP_PAN_3D_ROLLOFF_LINEARSQUARED
    FMOD.DSP_PAN_3D_ROLLOFF_LINEAR
    FMOD.DSP_PAN_3D_ROLLOFF_INVERSE
    FMOD.DSP_PAN_3D_ROLLOFF_INVERSETAPERED
    FMOD.DSP_PAN_3D_ROLLOFF_CUSTOM

FMOD_DSP_PAN_3D_ROLLOFF_LINEARSQUARED
  This is a linear-square roll-off model. Below `mindistance`, the volume is unattenuated; as `distance` increases from `mindistance` to `maxdistance`, the volume attenuates to silence according to a linear squared gradient. For this roll-off mode, `distance` values greater than `mindistance` are scaled according to the rolloffscale. This roll-off mode provides steeper volume ramping close to the `mindistance`, and more gradual ramping close to the `maxdistance`, than linear roll-off mode.
FMOD_DSP_PAN_3D_ROLLOFF_LINEAR
  This is a linear roll-off model. Below `mindistance`, the volume is unattenuated; as `distance` increases from `mindistance` to `maxdistance`, the volume attenuates to silence using a linear gradient. For this roll-off mode, distance values greater than `mindistance` are scaled according to the rolloffscale. While this roll-off mode is not as realistic as inverse roll-off mode, it is easier to comprehend.
FMOD_DSP_PAN_3D_ROLLOFF_INVERSE
  This is an inverse roll-off model. Below `mindistance`, the volume is unattenuated; as `distance` increases above `mindistance`, the volume attenuates using `mindistance/distance` as the gradient until it reaches `maxdistance`, where it stops attenuating. For this roll-off mode, distance values greater than `mindistance` are scaled according to the rolloffscale. This roll-off mode accurately models the way sounds attenuate over distance in the real world. (DEFAULT)
FMOD_DSP_PAN_3D_ROLLOFF_INVERSETAPERED
  This is a combination of the inverse and linear-square roll-off models. At short distances where inverse roll-off would provide greater attenuation, it functions as inverse roll-off mode; then at greater distances where linear-square roll-off mode would provide greater attenuation, it uses that roll-off mode instead. For this roll-off mode, distance values greater than `mindistance` are scaled according to the rolloffscale. Inverse tapered roll-off mode approximates realistic behavior while still guaranteeing the sound attenuates to silence at `maxdistance`.
FMOD_DSP_PAN_3D_ROLLOFF_CUSTOM
  Custom roll-off can be defined by the programmer setting volume manually. Attenuation in the Pan DSP is turned off in this mode.

Minimum and Maximum distance settings are controlled with FMOD_DSP_PAN_3D_MIN_DISTANCE and FMOD_DSP_PAN_3D_MAX_DISTANCE.

See Also: FMOD_DSP_PAN_3D_ROLLOFF, FMOD_DSP_TYPE_PAN, FMOD_DSP_PAN

## FMOD_DSP_PAN_MODE_TYPE

Pan Mode values for Pan DSP.

C
C++
C#
JS

    typedef enum FMOD_DSP_PAN_MODE_TYPE {
      FMOD_DSP_PAN_MODE_MONO,
      FMOD_DSP_PAN_MODE_STEREO,
      FMOD_DSP_PAN_MODE_SURROUND
    } FMOD_DSP_PAN_MODE_TYPE;

    enum DSP_PAN_MODE_TYPE
    {
      MONO,
      STEREO,
      SURROUND
    }

    FMOD.DSP_PAN_MODE_MONO
    FMOD.DSP_PAN_MODE_STEREO
    FMOD.DSP_PAN_MODE_SURROUND

FMOD_DSP_PAN_MODE_MONO
  Single channel output.
FMOD_DSP_PAN_MODE_STEREO
  Two channel output
FMOD_DSP_PAN_MODE_SURROUND
  Three or more channel output. Includes common modes like quad, 5.1 or 7.1.

See Also: FMOD_DSP_PAN_MODE, FMOD_DSP_TYPE_PAN, FMOD_DSP_PAN

## FMOD_DSP_PARAMEQ

Parametric EQ DSP parameter types.

C
C++
C#
JS

    typedef enum FMOD_DSP_PARAMEQ {
      FMOD_DSP_PARAMEQ_CENTER,
      FMOD_DSP_PARAMEQ_BANDWIDTH,
      FMOD_DSP_PARAMEQ_GAIN
    } FMOD_DSP_PARAMEQ;

    enum DSP_PARAMEQ
    {
      CENTER,
      BANDWIDTH,
      GAIN
    }

    FMOD.DSP_PARAMEQ_CENTER
    FMOD.DSP_PARAMEQ_BANDWIDTH
    FMOD.DSP_PARAMEQ_GAIN

FMOD_DSP_PARAMEQ_CENTER

  Frequency center.

  - Type: float
  - Units: Hertz
  - Range: [20, 22000]
  - Default: 8000
FMOD_DSP_PARAMEQ_BANDWIDTH

  Octave range around the center frequency to filter.

  - Type: float
  - Range: [0.2, 5]
  - Default: 1
FMOD_DSP_PARAMEQ_GAIN

  Frequency Gain in dB.

  - Type: float
  - Units: Decibels
  - Range: [-30, 30]
  - Default: 0

Deprecated and will be removed in a future release, to emulate with FMOD_DSP_TYPE_MULTIBAND_EQ:

    // Configure a single band (band A) as a peaking EQ (all other bands default to off).
    // Center frequency can be used as with the old effect.
    // Bandwidth can be applied by setting the 'Q' value of the new effect.
    // Gain at the center frequency can be used the same as with the old effect.
    FMOD_DSP_SetParameterInt(multiband, FMOD_DSP_MULTIBAND_EQ_A_FILTER, FMOD_DSP_MULTIBAND_EQ_FILTER_PEAKING);
    FMOD_DSP_SetParameterFloat(multiband, FMOD_DSP_MULTIBAND_EQ_A_FREQUENCY, center);
    FMOD_DSP_SetParameterFloat(multiband, FMOD_DSP_MULTIBAND_EQ_A_Q, bandwidth);
    FMOD_DSP_SetParameterFloat(multiband, FMOD_DSP_MULTIBAND_EQ_A_GAIN, gain);

Parametric EQ is a single band peaking EQ filter that attenuates or amplifies a selected frequency and its neighboring frequencies.

When the gain is set to zero decibels the sound will be unaffected and represents the original signal exactly.

See Also: FMOD_DSP_TYPE_PARAMEQ, DSP::setParameterFloat, DSP::getParameterFloat, FMOD_DSP_TYPE

## FMOD_DSP_PITCHSHIFT

Pitch shift DSP parameter types.

C
C++
C#
JS

    typedef enum FMOD_DSP_PITCHSHIFT {
      FMOD_DSP_PITCHSHIFT_PITCH,
      FMOD_DSP_PITCHSHIFT_FFTSIZE,
      FMOD_DSP_PITCHSHIFT_OVERLAP,
      FMOD_DSP_PITCHSHIFT_MAXCHANNELS
    } FMOD_DSP_PITCHSHIFT;

    enum DSP_PITCHSHIFT
    {
      PITCH,
      FFTSIZE,
      OVERLAP,
      MAXCHANNELS
    }

    FMOD.DSP_PITCHSHIFT_PITCH
    FMOD.DSP_PITCHSHIFT_FFTSIZE
    FMOD.DSP_PITCHSHIFT_OVERLAP
    FMOD.DSP_PITCHSHIFT_MAXCHANNELS

FMOD_DSP_PITCHSHIFT_PITCH

  Pitch value. 0.5 = one octave down, 2.0 = one octave up. 1.0 does not change the pitch.

  - Type: float
  - Range: [0.5, 2]
  - Default: 1
FMOD_DSP_PITCHSHIFT_FFTSIZE

  FFT window size - 256, 512, 1024, 2048, 4096. Increase this to reduce 'smearing'. This effect is a warbling sound similar to when an mp3 is encoded at very low bitrates.

  - Type: float
  - Default: 1024
FMOD_DSP_PITCHSHIFT_OVERLAP
  Removed. Do not use. FMOD now uses 4 overlaps and cannot be changed.
FMOD_DSP_PITCHSHIFT_MAXCHANNELS

  Maximum channels supported. 0 = same as FMOD's default output polyphony, 1 = mono, 2 = stereo etc. See remarks for more. It is recommended to leave it at 0.

  - Type: float
  - Range: [0, 16]

`FMOD_DSP_PITCHSHIFT_MAXCHANNELS` dictates the amount of memory allocated. By default, the maxchannels value is 0. If FMOD is set to stereo, the pitch shift unit will allocate enough memory for 2 channels. If it is 5.1, it will allocate enough memory for a 6 channel pitch shift, etc.

If the pitch shift effect is only ever applied to the global mix (i.e. with ChannelControl::addDSP on a ChannelGroup object), then 0 is the value to set as it will be enough to handle all speaker modes.

When the pitch shift is added to a Channel (i.e. with ChannelControl::addDSP on a Channel object) then the signal channel count that comes in could be anything from 1 to 8 possibly. It is only in this case where you might want to increase the channel count above the output's channel count.

If a Channel pitch shift is set to a lower number than the signal's channel count that is coming in, it will not pitch shift the sound.

See Also: FMOD_DSP_TYPE_PITCHSHIFT, DSP::setParameterFloat

## FMOD_DSP_RETURN

Return DSP parameter types.

C
C++
C#
JS

    typedef enum FMOD_DSP_RETURN {
      FMOD_DSP_RETURN_ID,
      FMOD_DSP_RETURN_INPUT_SPEAKER_MODE
    } FMOD_DSP_RETURN;

    enum DSP_RETURN
    {
      ID,
      INPUT_SPEAKER_MODE
    }

    FMOD.DSP_RETURN_ID
    FMOD.DSP_RETURN_INPUT_SPEAKER_MODE

FMOD_DSP_RETURN_ID R/O

  ID of this Return DSP.

  - Type: int
  - Default: -1
FMOD_DSP_RETURN_INPUT_SPEAKER_MODE

  Input speaker mode of this return.

  - Type: int (FMOD_SPEAKERMODE)
  - Default: FMOD_SPEAKERMODE_DEFAULT

See Also: FMOD_DSP_TYPE_RETURN, DSP::setParameterInt

## FMOD_DSP_SEND

Send DSP parameter types.

C
C++
C#
JS

    typedef enum FMOD_DSP_SEND {
      FMOD_DSP_SEND_RETURNID,
      FMOD_DSP_SEND_LEVEL
    } FMOD_DSP_SEND;

    enum DSP_SEND
    {
      RETURNID,
      LEVEL,
    }

    FMOD.DSP_SEND_RETURNID
    FMOD.DSP_SEND_LEVEL

FMOD_DSP_SEND_RETURNID

  ID of the Return DSP this send is connected to where -1 indicates no connected return DSP.

  - Type: int
  - Default = -1
FMOD_DSP_SEND_LEVEL

  Send level.

  - Type: float
  - Units: Linear
  - Range: [0, 1]
  - Default: 1

See Also: FMOD_DSP_TYPE_SEND, DSP::setParameterInt, DSP::setParameterFloat

## FMOD_DSP_SFXREVERB

SFX Reverb DSP parameter types.

C
C++
C#
JS

    typedef enum FMOD_DSP_SFXREVERB {
      FMOD_DSP_SFXREVERB_DECAYTIME,
      FMOD_DSP_SFXREVERB_EARLYDELAY,
      FMOD_DSP_SFXREVERB_LATEDELAY,
      FMOD_DSP_SFXREVERB_HFREFERENCE,
      FMOD_DSP_SFXREVERB_HFDECAYRATIO,
      FMOD_DSP_SFXREVERB_DIFFUSION,
      FMOD_DSP_SFXREVERB_DENSITY,
      FMOD_DSP_SFXREVERB_LOWSHELFFREQUENCY,
      FMOD_DSP_SFXREVERB_LOWSHELFGAIN,
      FMOD_DSP_SFXREVERB_HIGHCUT,
      FMOD_DSP_SFXREVERB_EARLYLATEMIX,
      FMOD_DSP_SFXREVERB_WETLEVEL,
      FMOD_DSP_SFXREVERB_DRYLEVEL
    } FMOD_DSP_SFXREVERB;

    enum DSP_SFXREVERB
    {
      DECAYTIME,
      EARLYDELAY,
      LATEDELAY,
      HFREFERENCE,
      HFDECAYRATIO,
      DIFFUSION,
      DENSITY,
      LOWSHELFFREQUENCY,
      LOWSHELFGAIN,
      HIGHCUT,
      EARLYLATEMIX,
      WETLEVEL,
      DRYLEVEL
    }

    FMOD.DSP_SFXREVERB_DECAYTIME
    FMOD.DSP_SFXREVERB_EARLYDELAY
    FMOD.DSP_SFXREVERB_LATEDELAY
    FMOD.DSP_SFXREVERB_HFREFERENCE
    FMOD.DSP_SFXREVERB_HFDECAYRATIO
    FMOD.DSP_SFXREVERB_DIFFUSION
    FMOD.DSP_SFXREVERB_DENSITY
    FMOD.DSP_SFXREVERB_LOWSHELFFREQUENCY
    FMOD.DSP_SFXREVERB_LOWSHELFGAIN
    FMOD.DSP_SFXREVERB_HIGHCUT
    FMOD.DSP_SFXREVERB_EARLYLATEMIX
    FMOD.DSP_SFXREVERB_WETLEVEL
    FMOD.DSP_SFXREVERB_DRYLEVEL

FMOD_DSP_SFXREVERB_DECAYTIME

  Reverberation decay time at low-frequencies.

  - Type: float
  - Units: Milliseconds
  - Range: [100, 20000]
  - Default: 1500
FMOD_DSP_SFXREVERB_EARLYDELAY

  Delay time of first reflection.

  - Type: float
  - Units: Milliseconds
  - Range: [0, 300]
  - Default: 20
FMOD_DSP_SFXREVERB_LATEDELAY

  Late reverberation delay time relative to first reflection in milliseconds.

  - Type: float
  - Units: Milliseconds
  - Range: [0, 100]
  - Default: 40
FMOD_DSP_SFXREVERB_HFREFERENCE

  Reference frequency for high-frequency decay.

  - Type: float
  - Units: Hertz
  - Range: [20, 20000]
  - Default: 5000
FMOD_DSP_SFXREVERB_HFDECAYRATIO

  High-frequency decay time relative to decay time.

  - Type: float
  - Units: Percent
  - Range: [10, 100]
  - Default: 50
FMOD_DSP_SFXREVERB_DIFFUSION

  Reverberation diffusion (echo density).

  - Type: float
  - Units: Percent
  - Range: [10, 100]
  - Default: 50
FMOD_DSP_SFXREVERB_DENSITY

  Reverberation density (modal density).

  - Type: float
  - Units: Percent
  - Range: [10, 100]
  - Default: 50
FMOD_DSP_SFXREVERB_LOWSHELFFREQUENCY

  Transition frequency of low-shelf filter.

  - Type: float
  - Units: Hertz
  - Range: [20, 1000]
  - Default: 250
FMOD_DSP_SFXREVERB_LOWSHELFGAIN

  Gain of low-shelf filter.

  - Type: float
  - Units: Decibels
  - Range: [-36, 12]
  - Default: 0
FMOD_DSP_SFXREVERB_HIGHCUT

  Cutoff frequency of low-pass filter.

  - Type: float
  - Units: Hertz
  - Range: [20, 20000]
  - Default: 20000
FMOD_DSP_SFXREVERB_EARLYLATEMIX

  Blend ratio of late reverb to early reflections.

  - Type: float
  - Units: Percent
  - Range: [0, 100]
  - Default: 50
FMOD_DSP_SFXREVERB_WETLEVEL

  Reverb signal level.

  - Type: float
  - Units: Decibels
  - Range: [-80, 20]
  - Default: -6
FMOD_DSP_SFXREVERB_DRYLEVEL

  Dry signal level.

  - Type: float
  - Units: Decibels
  - Range: [-80, 20]
  - Default: 0

This is a high quality I3DL2 based reverb. On top of the I3DL2 property set, "Dry Level" is also included to allow the dry mix to be changed. These properties can be set with presets in FMOD_REVERB_PRESETS.

See Also: FMOD_DSP_TYPE_SFXREVERB, DSP::setParameterFloat, FMOD_REVERB_PRESETS

## FMOD_DSP_THREE_EQ

Three EQ DSP parameter types.

C
C++
C#
JS

    typedef enum FMOD_DSP_THREE_EQ {
      FMOD_DSP_THREE_EQ_LOWGAIN,
      FMOD_DSP_THREE_EQ_MIDGAIN,
      FMOD_DSP_THREE_EQ_HIGHGAIN,
      FMOD_DSP_THREE_EQ_LOWCROSSOVER,
      FMOD_DSP_THREE_EQ_HIGHCROSSOVER,
      FMOD_DSP_THREE_EQ_CROSSOVERSLOPE
    } FMOD_DSP_THREE_EQ;

    enum DSP_THREE_EQ
    {
      LOWGAIN,
      MIDGAIN,
      HIGHGAIN,
      LOWCROSSOVER,
      HIGHCROSSOVER,
      CROSSOVERSLOPE
    }

    FMOD.DSP_THREE_EQ_LOWGAIN
    FMOD.DSP_THREE_EQ_MIDGAIN
    FMOD.DSP_THREE_EQ_HIGHGAIN
    FMOD.DSP_THREE_EQ_LOWCROSSOVER
    FMOD.DSP_THREE_EQ_HIGHCROSSOVER
    FMOD.DSP_THREE_EQ_CROSSOVERSLOPE

FMOD_DSP_THREE_EQ_LOWGAIN

  Low frequency gain.

  - Type: float
  - Units: Decibels
  - Range: [-80, 10]
  - Default: 0
FMOD_DSP_THREE_EQ_MIDGAIN

  Mid frequency gain.

  - Type: float
  - Units: Decibels
  - Range: [-80, 10]
  - Default: 0
FMOD_DSP_THREE_EQ_HIGHGAIN

  High frequency gain.

  - Type: float
  - Units: Decibels
  - Range: [-80, 10]
  - Default: 0
FMOD_DSP_THREE_EQ_LOWCROSSOVER

  Low-to-mid crossover frequency.

  - Type: float
  - Units: Hertz
  - Range: [10, 22000]
  - Default: 400
FMOD_DSP_THREE_EQ_HIGHCROSSOVER

  Mid-to-high crossover frequency.

  - Type: float
  - Units: Hertz
  - Range: [10, 22000]
  - Default: 4000
FMOD_DSP_THREE_EQ_CROSSOVERSLOPE

  Crossover Slope type.

  - Type: int FMOD_DSP_THREE_EQ_CROSSOVERSLOPE_TYPE
  - Default: FMOD_DSP_THREE_EQ_CROSSOVERSLOPE_24DB

See Also: FMOD_DSP_TYPE_THREE_EQ, DSP::setParameterFloat, DSP::setParameterInt

## FMOD_DSP_THREE_EQ_CROSSOVERSLOPE_TYPE

Crossover values for Three EQ DSP.

C
C++
C#
JS

    typedef enum FMOD_DSP_THREE_EQ_CROSSOVERSLOPE_TYPE {
      FMOD_DSP_THREE_EQ_CROSSOVERSLOPE_12DB,
      FMOD_DSP_THREE_EQ_CROSSOVERSLOPE_24DB,
      FMOD_DSP_THREE_EQ_CROSSOVERSLOPE_48DB
    } FMOD_DSP_THREE_EQ_CROSSOVERSLOPE_TYPE;

    enum DSP_THREE_EQ_CROSSOVERSLOPE_TYPE
    {
      _12DB,
      _24DB,
      _48DB
    }

    FMOD.DSP_THREE_EQ_CROSSOVERSLOPE_12DB
    FMOD.DSP_THREE_EQ_CROSSOVERSLOPE_24DB
    FMOD.DSP_THREE_EQ_CROSSOVERSLOPE_48DB

FMOD_DSP_THREE_EQ_CROSSOVERSLOPE_12DB
  12dB/Octave crossover slope.
FMOD_DSP_THREE_EQ_CROSSOVERSLOPE_24DB
  24dB/Octave crossover slope.
FMOD_DSP_THREE_EQ_CROSSOVERSLOPE_48DB
  48dB/Octave crossover slope.

See Also: FMOD_DSP_THREE_EQ_CROSSOVERSLOPE, FMOD_DSP_TYPE_THREE_EQ, FMOD_DSP_THREE_EQ

## FMOD_DSP_TRANSCEIVER

Transceiver DSP parameter types.

C
C++
C#
JS

    typedef enum FMOD_DSP_TRANSCEIVER {
      FMOD_DSP_TRANSCEIVER_TRANSMIT,
      FMOD_DSP_TRANSCEIVER_GAIN,
      FMOD_DSP_TRANSCEIVER_CHANNEL,
      FMOD_DSP_TRANSCEIVER_TRANSMITSPEAKERMODE
    } FMOD_DSP_TRANSCEIVER;

    enum DSP_TRANSCEIVER
    {
      TRANSMIT,
      GAIN,
      CHANNEL,
      TRANSMITSPEAKERMODE
    }

    FMOD.DSP_TRANSCEIVER_TRANSMIT
    FMOD.DSP_TRANSCEIVER_GAIN
    FMOD.DSP_TRANSCEIVER_CHANNEL
    FMOD.DSP_TRANSCEIVER_TRANSMITSPEAKERMODE

FMOD_DSP_TRANSCEIVER_TRANSMIT

  FALSE = Transceiver is a 'receiver' (like a return) and accepts data from a channel. TRUE = Transceiver is a 'transmitter' (like a send).

  - Type: bool
  - Default: false
FMOD_DSP_TRANSCEIVER_GAIN

  Gain to receive or transmit.

  - Type: float
  - Units: Decibels
  - Range: [-80, 10]
  - Default: 0
FMOD_DSP_TRANSCEIVER_CHANNEL

  Global slot that can be transmitted to or received from.

  - Type: int
  - Range: [0, 31]
  - Default: 0
FMOD_DSP_TRANSCEIVER_TRANSMITSPEAKERMODE

  Speaker mode (transmitter mode only). (FMOD_DSP_TRANSCEIVER_SPEAKERMODE)

  - Default: FMOD_DSP_TRANSCEIVER_SPEAKERMODE_AUTO

The transceiver only transmits and receives to a global array of 32 channels. The transceiver can be set to receiver mode (like a return) and can receive the signal at a variable gain. The transceiver can also be set to transmit to a channel (like a send) and can transmit the signal with a variable gain.

The FMOD_DSP_TRANSCEIVER_TRANSMITSPEAKERMODE is only applicable to the transmission format, not the receive format. This means this parameter is ignored in 'receive mode'. This allows receivers to receive at the speaker mode of the user's choice. Receiving from a mono channel, is cheaper than receiving from a surround channel for example. The 3 speaker modes FMOD_DSP_TRANSCEIVER_SPEAKERMODE_MONO, FMOD_DSP_TRANSCEIVER_SPEAKERMODE_STEREO, FMOD_DSP_TRANSCEIVER_SPEAKERMODE_SURROUND are stored as separate buffers in memory for a transmitter channel. To save memory, use 1 common speaker mode for a transmitter.

The transceiver is double buffered to avoid desyncing of transmitters and receivers. This means there will be a 1 block delay on a receiver, compared to the data sent from a transmitter. Multiple transmitters sending to the same channel will be mixed together.

See Also: FMOD_DSP_TYPE_TRANSCEIVER, FMOD_DSP_TRANSCEIVER_GAIN, DSP::setParameterFloat, DSP::setParameterInt, DSP::setParameterBool

## FMOD_DSP_TRANSCEIVER_SPEAKERMODE

Speaker mode values for Transceiver DSP.

C
C++
C#
JS

    typedef enum FMOD_DSP_TRANSCEIVER_SPEAKERMODE {
      FMOD_DSP_TRANSCEIVER_SPEAKERMODE_AUTO = -1,
      FMOD_DSP_TRANSCEIVER_SPEAKERMODE_MONO = 0,
      FMOD_DSP_TRANSCEIVER_SPEAKERMODE_STEREO,
      FMOD_DSP_TRANSCEIVER_SPEAKERMODE_SURROUND
    } FMOD_DSP_TRANSCEIVER_SPEAKERMODE;

    enum DSP_TRANSCEIVER_SPEAKERMODE
    {
      AUTO = -1,
      MONO = 0,
      STEREO,
      SURROUND,
    }

    FMOD.DSP_TRANSCEIVER_SPEAKERMODE_AUTO = -1
    FMOD.DSP_TRANSCEIVER_SPEAKERMODE_MONO = 0
    FMOD.DSP_TRANSCEIVER_SPEAKERMODE_STEREO
    FMOD.DSP_TRANSCEIVER_SPEAKERMODE_SURROUND

FMOD_DSP_TRANSCEIVER_SPEAKERMODE_AUTO
  A transmitter will use whatever signal channel count coming in to the transmitter, to determine which speaker mode is allocated for the transceiver channel.
FMOD_DSP_TRANSCEIVER_SPEAKERMODE_MONO
  A transmitter will always downmix to a mono channel buffer.
FMOD_DSP_TRANSCEIVER_SPEAKERMODE_STEREO
  A transmitter will always upmix or downmix to a stereo channel buffer.
FMOD_DSP_TRANSCEIVER_SPEAKERMODE_SURROUND
  A transmitter will always upmix or downmix to a surround channel buffer. Surround is the speaker mode of the system above stereo, so could be quad/surround/5.1/7.1.

The speaker mode of a transceiver buffer (of which there are up to 32 of) is determined automatically depending on the signal flowing through the transceiver effect, or it can be forced. Use a smaller fixed speaker mode buffer to save memory. Only relevant for transmitter dsps, as they control the format of the transceiver channel's buffer.

If multiple transceivers transmit to a single buffer in different speaker modes, it will allocate memory for each speaker mode. This uses more memory than a single speaker mode. If there are multiple receivers reading from a channel with multiple speaker modes, it will read them all and mix them together.

If the system's speaker mode is stereo or mono, it will not create a 3rd buffer, it will just use the mono/stereo speaker mode buffer.

See Also: FMOD_DSP_TYPE_TRANSCEIVER, FMOD_DSP_TRANSCEIVER_SPEAKERMODE, DSP::setParameterInt

## FMOD_DSP_TREMOLO

Tremolo DSP parameter types.

C
C++
C#
JS

    typedef enum FMOD_DSP_TREMOLO {
      FMOD_DSP_TREMOLO_FREQUENCY,
      FMOD_DSP_TREMOLO_DEPTH,
      FMOD_DSP_TREMOLO_SHAPE,
      FMOD_DSP_TREMOLO_SKEW,
      FMOD_DSP_TREMOLO_DUTY,
      FMOD_DSP_TREMOLO_SQUARE,
      FMOD_DSP_TREMOLO_PHASE,
      FMOD_DSP_TREMOLO_SPREAD
    } FMOD_DSP_TREMOLO;

    enum DSP_TREMOLO
    {
      FREQUENCY,
      DEPTH,
      SHAPE,
      SKEW,
      DUTY,
      SQUARE,
      PHASE,
      SPREAD
    }

    FMOD.DSP_TREMOLO_FREQUENCY
    FMOD.DSP_TREMOLO_DEPTH
    FMOD.DSP_TREMOLO_SHAPE
    FMOD.DSP_TREMOLO_SKEW
    FMOD.DSP_TREMOLO_DUTY
    FMOD.DSP_TREMOLO_SQUARE
    FMOD.DSP_TREMOLO_PHASE
    FMOD.DSP_TREMOLO_SPREAD

FMOD_DSP_TREMOLO_FREQUENCY

  LFO frequency.

  - Type: float
  - Units: Hertz
  - Range: [0.1, 20]
  - Default: 5
FMOD_DSP_TREMOLO_DEPTH

  Tremolo depth.

  - Type: float
  - Units: Linear
  - Range: [0, 1]
  - Default: 1
FMOD_DSP_TREMOLO_SHAPE

  LFO shape morph between triangle and sine.

  - Type: float
  - Units: Linear
  - Range: [0, 1]
  - Default: 1
FMOD_DSP_TREMOLO_SKEW

  Time-skewing of LFO cycle.

  - Type: float
  - Units: Linear
  - Range: [-1, 1]
  - Default: 0
FMOD_DSP_TREMOLO_DUTY

  LFO on-time.

  - Type: float
  - Units: Linear
  - Range: [0, 1]
  - Default: 0.5
FMOD_DSP_TREMOLO_SQUARE

  Flatness of the LFO shape.

  - Type: float
  - Units: Linear
  - Range: [0, 1]
  - Default: 1
FMOD_DSP_TREMOLO_PHASE

  Instantaneous LFO phase.

  - Type: float
  - Units: Linear
  - Range: [0, 1]
  - Default: 0
FMOD_DSP_TREMOLO_SPREAD

  Rotation / auto-pan effect.

  - Type: float
  - Units: Linear
  - Range: [-1, 1]
  - Default: 0

The tremolo effect varies the amplitude of a sound. Depending on the settings, this unit can produce a tremolo, chopper or auto-pan effect.

The shape of the LFO (low freq. oscillator) can morphed between sine, triangle and sawtooth waves using the FMOD_DSP_TREMOLO_SHAPE and FMOD_DSP_TREMOLO_SKEW parameters.

FMOD_DSP_TREMOLO_DUTY and FMOD_DSP_TREMOLO_SQUARE are useful for a chopper-type effect where the first controls the on-time duration and second controls the flatness of the envelope.

FMOD_DSP_TREMOLO_SPREAD varies the LFO phase between channels to get an auto-pan effect. This works best with a sine shape LFO.

The LFO can be synchronized using the FMOD_DSP_TREMOLO_PHASE parameter which sets its instantaneous phase.

See Also: FMOD_DSP_TYPE_TREMOLO, DSP::setParameterFloat

## FMOD_DSP_TYPE

DSP types.

C
C++
C#
JS

    typedef enum FMOD_DSP_TYPE {
      FMOD_DSP_TYPE_UNKNOWN,
      FMOD_DSP_TYPE_MIXER,
      FMOD_DSP_TYPE_OSCILLATOR,
      FMOD_DSP_TYPE_LOWPASS,
      FMOD_DSP_TYPE_ITLOWPASS,
      FMOD_DSP_TYPE_HIGHPASS,
      FMOD_DSP_TYPE_ECHO,
      FMOD_DSP_TYPE_FADER,
      FMOD_DSP_TYPE_FLANGE,
      FMOD_DSP_TYPE_DISTORTION,
      FMOD_DSP_TYPE_NORMALIZE,
      FMOD_DSP_TYPE_LIMITER,
      FMOD_DSP_TYPE_PARAMEQ,
      FMOD_DSP_TYPE_PITCHSHIFT,
      FMOD_DSP_TYPE_CHORUS,
      FMOD_DSP_TYPE_VSTPLUGIN,
      FMOD_DSP_TYPE_WINAMPPLUGIN,
      FMOD_DSP_TYPE_ITECHO,
      FMOD_DSP_TYPE_COMPRESSOR,
      FMOD_DSP_TYPE_SFXREVERB,
      FMOD_DSP_TYPE_LOWPASS_SIMPLE,
      FMOD_DSP_TYPE_DELAY,
      FMOD_DSP_TYPE_TREMOLO,
      FMOD_DSP_TYPE_LADSPAPLUGIN,
      FMOD_DSP_TYPE_SEND,
      FMOD_DSP_TYPE_RETURN,
      FMOD_DSP_TYPE_HIGHPASS_SIMPLE,
      FMOD_DSP_TYPE_PAN,
      FMOD_DSP_TYPE_THREE_EQ,
      FMOD_DSP_TYPE_FFT,
      FMOD_DSP_TYPE_LOUDNESS_METER,
      FMOD_DSP_TYPE_ENVELOPEFOLLOWER,
      FMOD_DSP_TYPE_CONVOLUTIONREVERB,
      FMOD_DSP_TYPE_CHANNELMIX,
      FMOD_DSP_TYPE_TRANSCEIVER,
      FMOD_DSP_TYPE_OBJECTPAN,
      FMOD_DSP_TYPE_MULTIBAND_EQ,
      FMOD_DSP_TYPE_MAX
    } FMOD_DSP_TYPE;

    enum DSP_TYPE : int
    {
      UNKNOWN,
      MIXER,
      OSCILLATOR,
      LOWPASS,
      ITLOWPASS,
      HIGHPASS,
      ECHO,
      FADER,
      FLANGE,
      DISTORTION,
      NORMALIZE,
      LIMITER,
      PARAMEQ,
      PITCHSHIFT,
      CHORUS,
      VSTPLUGIN,
      WINAMPPLUGIN,
      ITECHO,
      COMPRESSOR,
      SFXREVERB,
      LOWPASS_SIMPLE,
      DELAY,
      TREMOLO,
      LADSPAPLUGIN,
      SEND,
      RETURN,
      HIGHPASS_SIMPLE,
      PAN,
      THREE_EQ,
      FFT,
      LOUDNESS_METER,
      ENVELOPEFOLLOWER,
      CONVOLUTIONREVERB,
      CHANNELMIX,
      TRANSCEIVER,
      OBJECTPAN,
      MULTIBAND_EQ,
      MAX
    }

    FMOD.DSP_TYPE_UNKNOWN
    FMOD.DSP_TYPE_MIXER
    FMOD.DSP_TYPE_OSCILLATOR
    FMOD.DSP_TYPE_LOWPASS
    FMOD.DSP_TYPE_ITLOWPASS
    FMOD.DSP_TYPE_HIGHPASS
    FMOD.DSP_TYPE_ECHO
    FMOD.DSP_TYPE_FADER
    FMOD.DSP_TYPE_FLANGE
    FMOD.DSP_TYPE_DISTORTION
    FMOD.DSP_TYPE_NORMALIZE
    FMOD.DSP_TYPE_LIMITER
    FMOD.DSP_TYPE_PARAMEQ
    FMOD.DSP_TYPE_PITCHSHIFT
    FMOD.DSP_TYPE_CHORUS
    FMOD.DSP_TYPE_VSTPLUGIN
    FMOD.DSP_TYPE_WINAMPPLUGIN
    FMOD.DSP_TYPE_ITECHO
    FMOD.DSP_TYPE_COMPRESSOR
    FMOD.DSP_TYPE_SFXREVERB
    FMOD.DSP_TYPE_LOWPASS_SIMPLE
    FMOD.DSP_TYPE_DELAY
    FMOD.DSP_TYPE_TREMOLO
    FMOD.DSP_TYPE_LADSPAPLUGIN
    FMOD.DSP_TYPE_SEND
    FMOD.DSP_TYPE_RETURN
    FMOD.DSP_TYPE_HIGHPASS_SIMPLE
    FMOD.DSP_TYPE_PAN
    FMOD.DSP_TYPE_THREE_EQ
    FMOD.DSP_TYPE_FFT
    FMOD.DSP_TYPE_LOUDNESS_METER
    FMOD.DSP_TYPE_ENVELOPEFOLLOWER
    FMOD.DSP_TYPE_CONVOLUTIONREVERB
    FMOD.DSP_TYPE_CHANNELMIX
    FMOD.DSP_TYPE_TRANSCEIVER
    FMOD.DSP_TYPE_OBJECTPAN
    FMOD.DSP_TYPE_MULTIBAND_EQ
    FMOD.DSP_TYPE_MAX

FMOD_DSP_TYPE_UNKNOWN
  Was created via a non-FMOD plugin and has an unknown purpose.
FMOD_DSP_TYPE_MIXER
  Does not process the signal, acts as a unit purely for mixing inputs.
FMOD_DSP_TYPE_OSCILLATOR
  Generates sine/square/saw/triangle or noise tones. See FMOD_DSP_OSCILLATOR for parameter information, Effect reference - Oscillator for overview.
FMOD_DSP_TYPE_LOWPASS
  Filters sound using a high quality, resonant lowpass filter algorithm but consumes more CPU time. Deprecated and will be removed in a future release. See FMOD_DSP_LOWPASS remarks for parameter information, Effect reference - Low Pass for overview.
FMOD_DSP_TYPE_ITLOWPASS
  Filters sound using a resonant lowpass filter algorithm that is used in Impulse Tracker, but with limited cutoff range (0 to 8060hz). See FMOD_DSP_ITLOWPASS for parameter information, Effect reference - IT Low Pass for overview.
FMOD_DSP_TYPE_HIGHPASS
  Filters sound using a resonant highpass filter algorithm. Deprecated and will be removed in a future release. See FMOD_DSP_HIGHPASS remarks for parameter information, Effect reference - High Pass for overview.
FMOD_DSP_TYPE_ECHO
  Produces an echo on the sound and fades out at the desired rate. See FMOD_DSP_ECHO for parameter information, Effect reference - Echo for overview.
FMOD_DSP_TYPE_FADER
  Pans and scales the volume of a unit. See FMOD_DSP_FADER for parameter information, Effect reference - Fader for overview.
FMOD_DSP_TYPE_FLANGE
  Produces a flange effect on the sound. See FMOD_DSP_FLANGE for parameter information, Effect reference - Flange for overview.
FMOD_DSP_TYPE_DISTORTION
  Distorts the sound. See FMOD_DSP_DISTORTION for parameter information, Effect reference - Distortion for overview.
FMOD_DSP_TYPE_NORMALIZE
  Normalizes or amplifies the sound to a certain level. See FMOD_DSP_NORMALIZE for parameter information, Effect reference - Normalize for overview.
FMOD_DSP_TYPE_LIMITER
  Limits the sound to a certain level. See FMOD_DSP_LIMITER for parameter information, Effect reference - Limiter for overview.
FMOD_DSP_TYPE_PARAMEQ
  Attenuates or amplifies a selected frequency range. Deprecated and will be removed in a future release. See FMOD_DSP_PARAMEQ for parameter information, Effect reference - Parametric EQ for overview.
FMOD_DSP_TYPE_PITCHSHIFT
  Bends the pitch of a sound without changing the speed of playback. See FMOD_DSP_PITCHSHIFT for parameter information, Effect reference - Pitch Shifter for overview.
FMOD_DSP_TYPE_CHORUS
  Produces a chorus effect on the sound. See FMOD_DSP_CHORUS for parameter information, Effect reference - Chorus for overview.
FMOD_DSP_TYPE_VSTPLUGIN
  Allows the use of Steinberg VST plugins.
FMOD_DSP_TYPE_WINAMPPLUGIN
  Allows the use of Nullsoft Winamp plugins.
FMOD_DSP_TYPE_ITECHO
  Produces an echo on the sound and fades out at the desired rate as is used in Impulse Tracker. See FMOD_DSP_ITECHO for parameter information, Effect reference - IT Echo for overview.
FMOD_DSP_TYPE_COMPRESSOR
  Dynamic compression (linked/unlinked multi-channel, wideband). See FMOD_DSP_COMPRESSOR for parameter information, Effect reference - Compressor for overview.
FMOD_DSP_TYPE_SFXREVERB
  I3DL2 reverb effect. See FMOD_DSP_SFXREVERB for parameter information, Effect reference - SFX Reverb for overview.
FMOD_DSP_TYPE_LOWPASS_SIMPLE
  Filters sound using a simple lowpass with no resonance, but has flexible cutoff and is fast. Deprecated and will be removed in a future release. See FMOD_DSP_LOWPASS_SIMPLE remarks for parameter information, Effect reference - Low Pass Simple for overview.
FMOD_DSP_TYPE_DELAY
  Produces different delays on individual channels of the sound. See FMOD_DSP_DELAY for parameter information, Effect reference - Delay for overview.
FMOD_DSP_TYPE_TREMOLO
  Produces a tremolo / chopper effect on the sound. See FMOD_DSP_TREMOLO for parameter information, Effect reference - Tremolo for overview.
FMOD_DSP_TYPE_LADSPAPLUGIN
  Unsupported / Deprecated.
FMOD_DSP_TYPE_SEND
  Sends a copy of the signal to a return DSP anywhere in the DSP tree. See FMOD_DSP_SEND for parameter information, Effect reference - Send for overview.
FMOD_DSP_TYPE_RETURN
  Receives signals from a number of send DSPs. See FMOD_DSP_RETURN for parameter information, Effect reference - Return for overview.
FMOD_DSP_TYPE_HIGHPASS_SIMPLE
  Filters sound using a simple highpass with no resonance, but has flexible cutoff and is fast. Deprecated and will be removed in a future release. See FMOD_DSP_HIGHPASS_SIMPLE remarks for parameter information, Effect reference - High Pass Simple for overview.
FMOD_DSP_TYPE_PAN
  Pans the signal in 2D or 3D, possibly upmixing or downmixing as well. See FMOD_DSP_PAN for parameter information, Effect reference - Pan for overview.
FMOD_DSP_TYPE_THREE_EQ
  Three-band equalizer. See FMOD_DSP_THREE_EQ for parameter information, Effect reference - Three EQ for overview.
FMOD_DSP_TYPE_FFT
  Analyzes the signal and provides spectrum information back through getParameter. See FMOD_DSP_FFT for parameter information, Effect reference - FFT for overview.
FMOD_DSP_TYPE_LOUDNESS_METER
  Analyzes the loudness and true peak of the signal.
FMOD_DSP_TYPE_ENVELOPEFOLLOWER
  Tracks the envelope of the input/sidechain signal. Deprecated and will be removed in a future release. See FMOD_DSP_ENVELOPEFOLLOWER for parameter information, Effect reference - Envelope Follower for overview.
FMOD_DSP_TYPE_CONVOLUTIONREVERB
  Convolution reverb. See FMOD_DSP_CONVOLUTION_REVERB for parameter information, Effect reference - Convolution Reverb for overview.
FMOD_DSP_TYPE_CHANNELMIX
  Provides per channel gain, channel grouping of the input signal which also sets the speaker format for the output signal, and customizable input to output channel routing. See FMOD_DSP_CHANNELMIX for parameter information, Effect reference - Channel Mix for overview.
FMOD_DSP_TYPE_TRANSCEIVER
  'sends' and 'receives' from a selection of up to 32 different slots. It is like a send/return but it uses global slots rather than returns as the destination. It also has other features. Multiple transceivers can receive from a single channel, or multiple transceivers can send to a single channel, or a combination of both. See FMOD_DSP_TRANSCEIVER for parameter information, Effect reference - Transceiver for overview.
FMOD_DSP_TYPE_OBJECTPAN
  Spatializes input signal by passing it to an external object mixer. See FMOD_DSP_OBJECTPAN for parameter information, Effect reference - Object Panner for overview.
FMOD_DSP_TYPE_MULTIBAND_EQ
  Five band parametric equalizer. See FMOD_DSP_MULTIBAND_EQ for parameter information, Effect reference - Multiband Equalizer for overview.
FMOD_DSP_TYPE_MAX
  Maximum number of pre-defined DSP types.

See Also: System::createDSPByType