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

# XApuConnectOutputParameters

> XApuConnectOutputParameters

# XApuConnectOutputParameters

Parameters returned by [XApuConnect](/reference/audio/xapu/functions/xapuconnect).

## Syntax

```cpp theme={null}
typedef struct XApuConnectOutputParameters {  
    void* baseData;  
    HANDLE resultReadyEvent;  
} XApuConnectOutputParameters  
```

### Members

*baseData*\
Type: void\*

Base virtual address of allocated system memory that can be mapped to the device space if [XApuConnect](/reference/audio/xapu/functions/xapuconnect) succeeded, otherwise a nullptr. The caller should use this memory to pass input data and retrieve output data. Also, the caller must use this memory to set the processing buffer.

This buffer is 16-byte aligned and it is up to the caller how to break this memory into input, output, and processing buffers.

*resultReadyEvent*\
Type: HANDLE

A valid Win32 event handle if the [XApuConnectOptions::EnableResultReadyEvent](/reference/audio/xapu/enums/xapuconnectoptions) flag is set and [XApuConnect](/reference/audio/xapu/functions/xapuconnect) succeeded, otherwise a nullptr. This Win32 Event handle will be signaled when the results are ready for the commands that have the [XApuCommandOptions::SignalOnCompletion](/reference/audio/xapu/enums/xapucommandoptions) flag set. This signal is running on a timer that fires every three milliseconds. It will signal once if one or more XApuResult are ready. That is, the event will be signaled once when multiple results are ready within the three milliseconds period and all those results have the XApuCommandOptions::SignalOnCompletion flag set.

[XApuGetResultCount](/reference/audio/xapu/functions/xapugetresultcount) should be called after the event being signaled to find out how many XApuResult(s) are ready. It is not recommended to set [XApuCommandOptions::SignalOnCompletion](/reference/audio/xapu/enums/xapucommandoptions) when multiple streams are activated on the XAPU client as it might degrade the overall performance, instead the caller should set the SignalOnCompletion flag once for a group of commands. For example, set SignalOnCompletion for all commands for a specific stream only and don't set it for the other activated streams.

## Remarks

Used by `XApuConnectOutputParameter` to pass parameters returned by `XApuConnect`. `XApuConnect` allocates the necessary resources for an Audio Processing Unit (XAPU). For more information about disconnecting from the processing engine and releasing all resource allocated during `XApuConnect`, see [XApuDisconnect](/reference/audio/xapu/functions/xapudisconnect).  For more information about the command options, see [XApuCommandOptions](/reference/audio/xapu/enums/xapucommandoptions).

## Requirements

**Header:** xapu.h

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

## See also

[XApuDecodeConvertCommand](/reference/audio/xapu/structs/xapudecodeconvertcommand)\
[XAPU](/reference/audio/xapu/xapu_members)


## Related topics

- [XApuConnect](/reference/audio/xapu/functions/xapuconnect.md)
- [XApuCommandOptions](/reference/audio/xapu/enums/xapucommandoptions.md)
- [XApuDisconnect](/reference/audio/xapu/functions/xapudisconnect.md)
- [XApuConnectOptions](/reference/audio/xapu/enums/xapuconnectoptions.md)
- [Single-stream Opus audio decoding with the XAPU API](/build/console-features/audio/overviews/xapu-overview-single-stream-audio-decode.md)
