> ## 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.

# XAPU

> XAPU

# XAPU

XAPU APIs

## Functions

| Function                                                                 | Description                                                                                                                                 |
| ------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------- |
| [XApuConnect](/reference/audio/xapu/functions/xapuconnect)               | Establishes a connection and allocate the necessary resources for an Audio Processing Unit (XAPU).                                          |
| [XApuDequeueResult](/reference/audio/xapu/functions/xapudequeueresult)   | Retrieves an [XApuResult](/reference/audio/xapu/structs/xapuresult) from the results queue, if available.                                   |
| [XApuDisconnect](/reference/audio/xapu/functions/xapudisconnect)         | Disconnects from the hardware server and release all resources allocated during [XApuConnect](/reference/audio/xapu/functions/xapuconnect). |
| [XApuEnqueueCommand](/reference/audio/xapu/functions/xapuenqueuecommand) | Submits a single command to the XAPU command queue.                                                                                         |
| [XApuGetResultCount](/reference/audio/xapu/functions/xapugetresultcount) | Returns the number of [XApuResult](/reference/audio/xapu/structs/xapuresult) in the results queue.                                          |
| [XApuGetUtilization](/reference/audio/xapu/functions/xapugetutilization) | Gets the current utilization values of the hardware server for the specified process type and number of channels.                           |

## Structures

| Structure                                                                                          | Description                                                                                                            |
| -------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------- |
| [XApuCommandId](/reference/audio/xapu/structs/xapucommandid)                                       | Defines the base command parameters to be sent and received from XAPU. All other commands are expanded from this type. |
| [XApuConnectInputParameters](/reference/audio/xapu/structs/xapuconnectinputparameters)             | Parameters passed to [XApuConnect](/reference/audio/xapu/functions/xapuconnect) to allocated resources.                |
| [XApuConnectOutputParameters](/reference/audio/xapu/structs/xapuconnectoutputparameters)           | Parameters returned by [XApuConnect](/reference/audio/xapu/functions/xapuconnect).                                     |
| [XApuDecodeConvertActivateCommand](/reference/audio/xapu/structs/xapudecodeconvertactivatecommand) | Defines decode or decode-convert activation parameters                                                                 |
| [XApuDecodeConvertCommand](/reference/audio/xapu/structs/xapudecodeconvertcommand)                 | Defines decode or decode-convert processing parameters                                                                 |
| [XApuResult](/reference/audio/xapu/structs/xapuresult)                                             | Defines a result returned by the XAPU.                                                                                 |
| [XApuUtilization](/reference/audio/xapu/structs/xapuutilization)                                   | Defines utilization parameters.                                                                                        |

## Enumerations

| Enumeration                                                          | Description                                                               |
| -------------------------------------------------------------------- | ------------------------------------------------------------------------- |
| [XApuCommandOptions](/reference/audio/xapu/enums/xapucommandoptions) | Define options for different command types.                               |
| [XApuCommandType](/reference/audio/xapu/enums/xapucommandtype)       | Defines the command types that will be performed on a single stream.      |
| [XApuConnectOptions](/reference/audio/xapu/enums/xapuconnectoptions) | Define options for different command types.                               |
| [XApuProcessType](/reference/audio/xapu/enums/xapuprocesstype)       | Defines the processing types that will be performed by XAPU client(s).    |
| [XApuStateOptions](/reference/audio/xapu/enums/xapustateoptions)     | Defines the current state of the processing engine.                       |
| [XAPU Errors](/reference/audio/xapu/enums/xapuerrors)                | This topic lists the errors that can be returned by any of the XAPU APIs. |


## Related topics

- [Error codes](/reference/errorcodes.md)
- [XAPU Errors](/reference/audio/xapu/enums/xapuerrors.md)
- [XAPU overview](/build/console-features/audio/overviews/xapu-overview.md)
- [Single-stream Opus audio decoding with the XAPU API](/build/console-features/audio/overviews/xapu-overview-single-stream-audio-decode.md)
- [XApuConnect](/reference/audio/xapu/functions/xapuconnect.md)
