> ## Documentation Index
> Fetch the complete documentation index at: https://devdocs.xbox.com/llms.txt
> Use this file to discover all available pages before exploring further.

# XDspActivationParameters

> XDspActivationParameters

# XDspActivationParameters

XDSP activation parameters.

## Syntax

```cpp theme={null}
typedef struct XDspActivationParameters {  
    XDspProcessType type;  
    XDspActivationOptions options;  
    uint32_t blockFrameCount;  
    uint32_t channelCount;  
    uint32_t impulseResponseLengthInFloats;  
    float* impulseResponse;  
} XDspActivationParameters  
```

### Members

*type*\
Type: [XDspProcessType](/reference/audio/xdspaudio/enums/xdspprocesstype)

For each activation, there is only one valid processing type. For example, if forward and inverse FFT are required, two XDSP streams must be activated one for each type.

*options*\
Type: [XDspActivationOptions](/reference/audio/xdspaudio/enums/xdspactivationoptions)

Activation options.

*blockFrameCount*\
Type: uint32\_t

Number of frames per input and output block of data that would be passed to XDSP via [XDspSubmitCommand](/reference/audio/xdspaudio/functions/xdspsubmitcommand). This value must be a power of two. 512, 1024 are the supported values for [XDspProcessType::Convolution](/reference/audio/xdspaudio/enums/xdspprocesstype). 512, 1024, 2048 are the supported values for [XDspProcessType::ForwardFourierTransform](/reference/audio/xdspaudio/enums/xdspprocesstype) and [XDspProcessType::InverseFourierTransform](/reference/audio/xdspaudio/enums/xdspprocesstype).

*channelCount*\
Type: uint32\_t

1 for mono input stream, or 2 for stereo input stream for [XDspProcessType::Convolution](/reference/audio/xdspaudio/enums/xdspprocesstype). This should always be set to 1 for [XDspProcessType::ForwardFourierTransform](/reference/audio/xdspaudio/enums/xdspprocesstype) and [XDspProcessType::InverseFourierTransform](/reference/audio/xdspaudio/enums/xdspprocesstype).

*impulseResponseLengthInFloats*\
Type: uint32\_t

Impulse Response length that will be used during [XDspProcessType::Convolution](/reference/audio/xdspaudio/enums/xdspprocesstype) processing, in units of floats. As an example, if the impulse response contains `N` number of complex float value pair samples, then this value should be set to `N * 2`, as each complex float value pair is represented using two floats. For [XDspProcessType::ForwardFourierTransform](/reference/audio/xdspaudio/enums/xdspprocesstype) and [XDspProcessType::InverseFourierTransform](/reference/audio/xdspaudio/enums/xdspprocesstype) this parameter must be zero.

*impulseResponse*\
Type: float\*

Buffer of length (`impulseResponseLengthInFloats * sizeof(float)`) bytes that hold the impulse response as a series of complex float values (pair of real and imaginary values). This means that the buffer will have (`impulseResponseLengthInFloats / 2`) number of complex float value pairs. The buffer length must be (`impulseResponseLengthInFloats * sizeof(float) * channelCount`) bytes, if [XDspActivationOptions::StereoImpulseResponse](/reference/audio/xdspaudio/enums/xdspactivationoptions) is set and [XDspActivationParameters::channelCount](/reference/audio/xdspaudio/structs/xdspactivationparameters) is equal to 2. For [XDspProcessType::ForwardFourierTransform](/reference/audio/xdspaudio/enums/xdspprocesstype) and [XDspProcessType::InverseFourierTransform](/reference/audio/xdspaudio/enums/xdspprocesstype) this parameter must be set to nullptr. This buffer need not be from the *baseBuffer* registered by [XDspConnect](/reference/audio/xdspaudio/functions/xdspconnect).

## Requirements

**Header:** XDspAudio.h

**Supported platforms:** XBOX Series X|S

## Conceptual documentation

* [Overview of XDSP Impulse Response Reduction](/build/console-features/audio/overviews/xdsp-overview-ir-reduction)
* [Overview of a single stream Convolution with Envelope using the XDSP API](/build/console-features/audio/overviews/xdsp-overview-single-stream-convolution-with-envelope)
* [Overview of a single stream Convolution using the XDSP API](/build/console-features/audio/overviews/xdsp-overview-single-stream-convolution)

## See also

[XDSP](/reference/audio/xdspaudio/xdspaudio_members)\
[XDspProcessType](/reference/audio/xdspaudio/enums/xdspprocesstype)\
[XDspActivationOptions](/reference/audio/xdspaudio/enums/xdspactivationoptions)\
[XDspSubmitCommand](/reference/audio/xdspaudio/functions/xdspsubmitcommand)\
[XDspActivationParameters](/reference/audio/xdspaudio/structs/xdspactivationparameters)\
[XDspConnect](/reference/audio/xdspaudio/functions/xdspconnect)\
[Overview of a single stream Convolution using the XDSP API](/build/console-features/audio/overviews/xdsp-overview-single-stream-convolution)\
[Overview of a single stream FFT/IFFT using the XDSP API](/build/console-features/audio/overviews/xdsp-overview-single-stream-fft-ifft)


## Related topics

- [XDspActivationOptions](/reference/audio/xdspaudio/enums/xdspactivationoptions.md)
- [XDspActivate](/reference/audio/xdspaudio/functions/xdspactivate.md)
- [XDspCommand](/reference/audio/xdspaudio/structs/xdspcommand.md)
- [XDspProcessType](/reference/audio/xdspaudio/enums/xdspprocesstype.md)
- [XDSP audio](/reference/audio/xdspaudio/xdspaudio_members.md)
