다음을 통해 공유


헤드셋

이 페이지는 Windows.Gaming.Input.Headset 및 UWP(유니버설 Windows 플랫폼)에 대해 관련 API를 사용하는 헤드셋 프로그래밍의 기본 사항에 대해 설명합니다.

이 페이지를 읽으면 다음을 알게 됩니다.

  • 입력 또는 탐색 디바이스에 연결된 헤드셋에 액세스하는 방법
  • 헤드셋이 연결되었거나 연결이 끊어졌는지 감지하는 방법

헤드셋 개요

헤드셋은 오디오 캡처 및 재생 장치로, 온라인 게임에서 다른 플레이어와 통신하는 데 가장 자주 사용되지만 게임 플레이 또는 기타 창의적인 용도로도 사용할 수 있습니다. 헤드셋은 Windows 10 또는 Windows 11 및 Xbox UWP 앱에서 Windows.Gaming.Input 네임스페이스를 통해 지원됩니다.

헤드셋 검색 및 추적

헤드셋은 시스템에서 관리되므로 헤드셋을 만들거나 초기화할 필요가 없습니다. 시스템은 연결된 입력 디바이스를 통해 헤드셋에 대한 액세스 권한을 제공하고, 헤드셋이 연결되거나 연결이 끊어지면 알림을 제공하는 이벤트를 제공합니다.

IGameController.Headset

Windows.Gaming.Input 네임스페이스의 모든 입력 장치는 헤드셋 속성을 현재 디바이스에 연결되어 있는 헤드셋으로 정의하는 IGameController 인터페이스를 구현합니다.

헤드셋 연결 및 연결 끊기.

헤드셋이 연결되거나 연결이 해제되면 HeadsetConnectedHeadsetDisconnected 이벤트가 발생합니다. 이러한 이벤트에 대한 처리기를 등록하여 입력 디바이스에 현재 헤드셋이 연결되어 있는지 여부를 추적할 수 있습니다.

다음 예제에서는 HeadsetConnected 이벤트에 대한 처리기를 등록하는 방법을 보여 줍니다.

auto inputDevice = myGamepads[0]; // or arcade stick, racing wheel

inputDevice.HeadsetConnected += ref new TypedEventHandler<IGameController^, Headset^>(IGameController^ device, Headset^ headset)
{
    // enable headset capture and playback on this device
}

다음 예제에서는 HeadsetDisconnected 이벤트에 대한 처리기를 등록하는 방법을 보여 줍니다.

auto inputDevice = myGamepads[0]; // or arcade stick, racing wheel

inputDevice.HeadsetDisconnected += ref new TypedEventHandler<IGameController^, Headset^>(IGameController^ device, Headset^ headset)
{
    // disable headset capture and playback on this device
}

헤드셋 사용

헤드셋 클래스는 XAudio 엔드포인트 ID를 나타내는 두 개의 문자열로 구성됩니다. 하나는 오디오 캡처(헤드셋 마이크에서 녹음)용이고 다른 하나는 오디오 렌더링(헤드셋 이어피스를 통한 재생)입니다.

XAudio 작업에 대한 자세한 내용은 여기에서 설명하지 않습니다. 자세한 내용은 XAudio2 프로그래밍 가이드XAudio2 API 참조를 참조하세요.