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

# XApuConnect

> XApuConnect

# XApuConnect

Audio Processing Unit(XAPU)에 대한 연결을 설정하고 필요한 리소스를 할당합니다.

## Syntax

```cpp theme={null}
HRESULT XApuConnect(  
         XApuConnectInputParameters* params,  
         XApuConnectOutputParameters* data,  
         XApuHandle* handle  
)  
```

### Parameters

*params*   \_In\_\
Type: [XApuConnectInputParameters\*](/reference/audio/xapu/structs/xapuconnectinputparameters)

리소스를 할당하기 위해 XApuConnect에 전달되는 매개 변수입니다.

*data*   \_Out\_\
Type: [XApuConnectOutputParameters\*](/reference/audio/xapu/structs/xapuconnectoutputparameters)

XApuConnect에서 반환되는 매개 변수입니다.

*handle*   \_Outptr\_\
Type: XApuHandle\*

반환된 XAPU 핸들에 대한 포인터입니다. 이 핸들은 다른 XAPU API를 호출할 때 조작할 XAPU 인스턴스를 나타내는 데 사용됩니다.

### Return value

Type: HRESULT

성공 시 S\_OK를 반환하고, 그렇지 않으면 오류 코드를 반환합니다.

## Remarks

호출자는 XAPU 클라이언트가 수행할 [XApuProcessType](/reference/audio/xapu/enums/xapuprocesstype)을 지정해야 합니다. XAPU 인스턴스는 수명 동안 한 가지 유형의 프로세스로 작동할 수 있습니다. 두 개 이상의 서로 다른 프로세스를 수행하려면 두 개 이상의 XAPU 인스턴스를 인스턴스화해야 합니다.

[XApuConnectInputParameters](/reference/audio/xapu/structs/xapuconnectinputparameters) 내에서 호출자는 다음을 지정해야 합니다.

* XAPU가 동시에 처리할 것으로 예상되는 최대 스트림 수.
* 각 스트림에 대한 최대 큐 명령 수.
* 모든 명령 및 스트림에 대해 필요한 총 메모리 할당. 여기에는 최대 스트림 수 곱하기 스트림당 큐 명령 수에 걸친 입력, 출력 및 처리 데이터에 대한 총 할당이 포함됩니다.

호출이 성공한 경우 [XApuConnectOutputParameters::baseData](/reference/audio/xapu/structs/xapuconnectoutputparameters) 매개 변수는 호출자가 스트림의 입력 데이터를 전달하고 출력 데이터를 검색하는 데 사용해야 하는 메모리 청크를 가리킵니다. 이 메모리 청크를 분할하고 재사용하는 것은 호출자의 몫입니다. 할당은 [XApuDisconnect](/reference/audio/xapu/functions/xapudisconnect) 호출 시 해제됩니다.

[XApuConnectOptions::EnableResultReadyEvent](/reference/audio/xapu/enums/xapuconnectoptions)가 설정된 경우 [XApuConnectOutputParameters::resultReadyEvent](/reference/audio/xapu/structs/xapuconnectoutputparameters)는 Win32 이벤트 핸들을 포함합니다. 이 핸들은 [XApuDisconnect](/reference/audio/xapu/functions/xapudisconnect) 호출 시 닫힙니다.

이 핸들은 [XApuDisconnect](/reference/audio/xapu/functions/xapudisconnect) 호출 시 닫힙니다.

스트림을 시작하고 중지하기 위해 [XapuConnect](/reference/audio/xapu/functions/xapuconnect) 및 [XApuDisconnect](/reference/audio/xapu/functions/xapudisconnect)를 자주 호출하는 것은 권장되지 않습니다. 이러한 호출은 시간이 많이 걸리고 메모리 단편화로 인한 리소스 손실을 초래할 수도 있기 때문입니다. 대신 스트리밍 세션 초기화 시 [XapuConnect](/reference/audio/xapu/functions/xapuconnect)를 한 번 호출한 다음, 스트리밍 중에 스트림을 시작하고 중지하기 위해 [XApuCommandType::Activate](/reference/audio/xapu/enums/xapucommandtype) 및 [XApuCommandType::Deactivate](/reference/audio/xapu/enums/xapucommandtype)를 사용해야 합니다. 스트리밍 세션이 끝나면 [XApuDisconnect](/reference/audio/xapu/functions/xapudisconnect)를 호출해야 합니다. 이는 모든 XAPU 클라이언트에 적용됩니다.

## Requirements

**Header:** xapu.h

**Library:** xapu.lib

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

## Conceptual documentation

* [XAPU 개요](/build/console-features/audio/overviews/xapu-overview)

## See also

[XAPU](/reference/audio/xapu/xapu_members)\
[XApuDecodeConvertCommand](/reference/audio/xapu/structs/xapudecodeconvertcommand)\
[XApuDequeueResult](/reference/audio/xapu/functions/xapudequeueresult)\
[XApuEnqueueCommand](/reference/audio/xapu/functions/xapuenqueuecommand)\
[XApuGetResultCount](/reference/audio/xapu/functions/xapugetresultcount)


## Related topics

- [XApuConnectOptions](/ko/reference/audio/xapu/enums/xapuconnectoptions.md)
- [XApuConnectOutputParameters](/ko/reference/audio/xapu/structs/xapuconnectoutputparameters.md)
- [XApuConnectInputParameters](/ko/reference/audio/xapu/structs/xapuconnectinputparameters.md)
- [XApuDisconnect](/ko/reference/audio/xapu/functions/xapudisconnect.md)
- [XApuDequeueResult](/ko/reference/audio/xapu/functions/xapudequeueresult.md)
