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

# XDspActivationParameters

> XDspActivationParameters

# XDspActivationParameters

XDSP 激活参数。

## 语法

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

### 成员

*type*\
类型：[XDspProcessType](https://docs.xbox.com/zh-CN/reference/audio/xdspaudio/enums/xdspprocesstype.md)

每次激活仅有一种有效的处理类型。例如，如果需要正向和逆向 FFT，则必须激活两个 XDSP 流，每种类型各一个。

*options*\
类型：[XDspActivationOptions](https://docs.xbox.com/zh-CN/reference/audio/xdspaudio/enums/xdspactivationoptions.md)

激活选项。

*blockFrameCount*\
类型：uint32\_t

通过 [XDspSubmitCommand](https://docs.xbox.com/zh-CN/reference/audio/xdspaudio/functions/xdspsubmitcommand.md) 传递给 XDSP 的每个输入和输出数据块的帧数。此值必须为 2 的幂。对于 [XDspProcessType::Convolution](https://docs.xbox.com/zh-CN/reference/audio/xdspaudio/enums/xdspprocesstype.md)，支持的值为 512 和 1024。对于 [XDspProcessType::ForwardFourierTransform](https://docs.xbox.com/zh-CN/reference/audio/xdspaudio/enums/xdspprocesstype.md) 和 [XDspProcessType::InverseFourierTransform](https://docs.xbox.com/zh-CN/reference/audio/xdspaudio/enums/xdspprocesstype.md)，支持的值为 512、1024 和 2048。

*channelCount*\
类型：uint32\_t

对于 [XDspProcessType::Convolution](https://docs.xbox.com/zh-CN/reference/audio/xdspaudio/enums/xdspprocesstype.md)，单声道输入流为 1，立体声输入流为 2。对于 [XDspProcessType::ForwardFourierTransform](https://docs.xbox.com/zh-CN/reference/audio/xdspaudio/enums/xdspprocesstype.md) 和 [XDspProcessType::InverseFourierTransform](https://docs.xbox.com/zh-CN/reference/audio/xdspaudio/enums/xdspprocesstype.md)，此值应始终设置为 1。

*impulseResponseLengthInFloats*\
类型：uint32\_t

在 [XDspProcessType::Convolution](https://docs.xbox.com/zh-CN/reference/audio/xdspaudio/enums/xdspprocesstype.md) 处理期间要使用的脉冲响应长度（以 float 为单位）。例如，如果脉冲响应包含 `N` 个复数 float 值对采样，则此值应设置为 `N * 2`，因为每个复数 float 值对使用两个 float 表示。对于 [XDspProcessType::ForwardFourierTransform](https://docs.xbox.com/zh-CN/reference/audio/xdspaudio/enums/xdspprocesstype.md) 和 [XDspProcessType::InverseFourierTransform](https://docs.xbox.com/zh-CN/reference/audio/xdspaudio/enums/xdspprocesstype.md)，此参数必须为零。

*impulseResponse*\
类型：float\*

长度为 (`impulseResponseLengthInFloats * sizeof(float)`) 字节的缓冲区，将脉冲响应保存为一系列复数 float 值（实部和虚部值对）。也就是说，缓冲区将包含 (`impulseResponseLengthInFloats / 2`) 个复数 float 值对。如果设置了 [XDspActivationOptions::StereoImpulseResponse](https://docs.xbox.com/zh-CN/reference/audio/xdspaudio/enums/xdspactivationoptions.md) 且 [XDspActivationParameters::channelCount](https://docs.xbox.com/zh-CN/reference/audio/xdspaudio/structs/xdspactivationparameters.md) 等于 2，则缓冲区长度必须为 (`impulseResponseLengthInFloats * sizeof(float) * channelCount`) 字节。对于 [XDspProcessType::ForwardFourierTransform](https://docs.xbox.com/zh-CN/reference/audio/xdspaudio/enums/xdspprocesstype.md) 和 [XDspProcessType::InverseFourierTransform](https://docs.xbox.com/zh-CN/reference/audio/xdspaudio/enums/xdspprocesstype.md)，此参数必须设置为 nullptr。此缓冲区不必来自 [XDspConnect](https://docs.xbox.com/zh-CN/reference/audio/xdspaudio/functions/xdspconnect.md) 注册的 *baseBuffer*。

## 要求

**头文件：** XDspAudio.h

**支持的平台：** XBOX Series X|S

## 概念文档

* [XDSP 脉冲响应缩减概述](https://docs.xbox.com/zh-CN/build/console-features/audio/overviews/xdsp-overview-ir-reduction.md)
* [使用 XDSP API 进行带包络的单流卷积概述](https://docs.xbox.com/zh-CN/build/console-features/audio/overviews/xdsp-overview-single-stream-convolution-with-envelope.md)
* [使用 XDSP API 进行单流卷积概述](https://docs.xbox.com/zh-CN/build/console-features/audio/overviews/xdsp-overview-single-stream-convolution.md)

## 另请参阅

[XDSP](https://docs.xbox.com/zh-CN/reference/audio/xdspaudio/xdspaudio_members.md)\
[XDspProcessType](https://docs.xbox.com/zh-CN/reference/audio/xdspaudio/enums/xdspprocesstype.md)\
[XDspActivationOptions](https://docs.xbox.com/zh-CN/reference/audio/xdspaudio/enums/xdspactivationoptions.md)\
[XDspSubmitCommand](https://docs.xbox.com/zh-CN/reference/audio/xdspaudio/functions/xdspsubmitcommand.md)\
[XDspActivationParameters](https://docs.xbox.com/zh-CN/reference/audio/xdspaudio/structs/xdspactivationparameters.md)\
[XDspConnect](https://docs.xbox.com/zh-CN/reference/audio/xdspaudio/functions/xdspconnect.md)\
[使用 XDSP API 进行单流卷积概述](https://docs.xbox.com/zh-CN/build/console-features/audio/overviews/xdsp-overview-single-stream-convolution.md)\
[使用 XDSP API 进行单流 FFT/IFFT 概述](https://docs.xbox.com/zh-CN/build/console-features/audio/overviews/xdsp-overview-single-stream-fft-ifft.md)


## Related topics

- [XDspActivationOptions](https://docs.xbox.com/zh-CN/reference/audio/xdspaudio/enums/xdspactivationoptions.md)
- [XDspActivate](https://docs.xbox.com/zh-CN/reference/audio/xdspaudio/functions/xdspactivate.md)
- [XDspProcessType](https://docs.xbox.com/zh-CN/reference/audio/xdspaudio/enums/xdspprocesstype.md)
- [XDspCommand](https://docs.xbox.com/zh-CN/reference/audio/xdspaudio/structs/xdspcommand.md)
- [XDSP 脉冲响应压缩概述](https://docs.xbox.com/zh-CN/build/console-features/audio/overviews/xdsp-overview-ir-reduction.md)
