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

# IAcpHal::Connect

> IAcpHal::Connect

# IAcpHal::Connect

ACP에 연결합니다.

## 구문

```cpp theme={null}
HRESULT Connect(  
         UINT32 numCommands,  
         UINT32 numMessages  
)  
```

### 매개 변수

*numCommands*   \
형식: UINT32

ACP 명령 큐에 할당할 명령의 수를 지정합니다. 이 값은 0보다 커야 하며 각 2.67ms 오디오 프레임에 대해 발행된 명령 수를 처리할 수 있을 만큼 커야 합니다.

*numMessages*   \
형식: UINT32

ACP 메시지 큐에 할당할 메시지의 수를 지정합니다. 타이틀이 수신한 메시지를 처리하지 않는 경우 이 값은 0일 수 있습니다. *command completed* 메시지([ACP\_MESSAGE\_TYPE](/reference/audio/acphal/enums/acp_message_type) 참조)에 대해 등록한 경우, 명령 수만큼의 메시지가 있게 됩니다. 일반적으로 이 메시지 큐는 오디오 프레임당 한 번보다 덜 자주 처리되므로, 여러 프레임 분량의 메시지를 계획하세요.

### 반환 값

형식: HRESULT

메서드가 성공하면 `S_OK`를 반환합니다. 메서드가 실패하면 다음 코드 중 하나를 반환합니다(부분 목록):

| 반환 코드                      | 설명                                                    |
| -------------------------- | ----------------------------------------------------- |
| E\_INVALIDARG              | 하나 이상의 인수가 유효하지 않거나 매개 변수 *numCommands*가 0으로 설정되었습니다. |
| E\_OUTOFMEMORY             | 메모리 할당에 실패했습니다.                                       |
| ACP\_E\_ALREADY\_CONNECTED | 이미 ACP에 연결되어 있습니다.                                    |
| E\_UNEXPECTED              | 예기치 않은 오류가 발생했습니다.                                    |
| ACP\_E\_QUEUE\_FULL        | ACP 큐가 가득 찼습니다.                                       |
| E\_TIMEOUT                 | 시간 초과 오류가 발생했습니다.                                     |

## 설명

이 인터페이스의 다른 메서드를 호출하기 전에 이 메서드를 호출하세요. 그러나 [Disconnect](/reference/audio/acphal/interfaces/IAcpHal/methods/iacphal_disconnect)를 호출한 후에는 이 메서드를 다시 호출할 수 있습니다. [SubmitCommand](/reference/audio/acphal/interfaces/IAcpHal/methods/iacphal_submitcommand)도 참조하세요.

메서드가 `E_INVALIDARG` 또는 `ACP_E_ALREADY_CONNECTED` 이외의 오류로 실패하면, **모든** 기존 ACP 클라이언트 객체를 파괴하고 할당된 SHAPE 컨텍스트를 [AcpHalReleaseShapeContexts](/reference/audio/acphal/functions/acphalreleaseshapecontexts)를 사용하여 해제할 것을 권장합니다. 새로운 SHAPE 컨텍스트와 ACP 클라이언트 객체는 각각 [AcpHalAllocateShapeContexts](/reference/audio/acphal/functions/acphalallocateshapecontexts) 및 [AcpHalCreate](/reference/audio/acphal/functions/acphalcreate)를 사용하여 필요에 따라 다시 할당/생성해야 합니다.

## 요구 사항

**헤더:** acphal.h

**지원 플랫폼:** XBOX One 제품군 콘솔 및 XBOX Series 콘솔

## 관련 항목

[Disconnect](/reference/audio/acphal/interfaces/IAcpHal/methods/iacphal_disconnect)\
[AcpHal](/reference/audio/acphal/acphal_members)


## Related topics

- [IAcpHal](/ko/reference/audio/acphal/interfaces/IAcpHal/iacphal.md)
- [SHAPE 오디오 플로우그래프 구성 모범 사례](/ko/build/console-features/audio/overviews/best-practices-audio-flowgraph-construction.md)
- [IAcpHal::Disconnect](/ko/reference/audio/acphal/interfaces/IAcpHal/methods/iacphal_disconnect.md)
- [IAcpHal::PopMessage](/ko/reference/audio/acphal/interfaces/IAcpHal/methods/iacphal_popmessage.md)
- [IAcpHal::SubmitCommand](/ko/reference/audio/acphal/interfaces/IAcpHal/methods/iacphal_submitcommand.md)
