Headset

Esta página descreve os conceitos básicos de programação para headsets usando Windows.Gaming.Input.Headset e as respectivas APIs para a Plataforma Universal do Windows (UWP).

Ao ler esta página, você aprenderá:

  • Como acessar um headset que está conectado a um dispositivo de inserção ou navegação
  • Como detectar se um headset foi conectado ou desconectado

Visão geral do headset

Headsets são dispositivos de captura de áudio e reprodução mais comumente usados para se comunicar com outros jogadores em jogos online, mas também podem ser usados em jogos multimídia ou em outras atividades criativas. Os headsets têm suporte nos aplicativos Windows 10 ou Windows 11 e em aplicativos UWP do Xbox, por meio do namespace Windows.Gaming.Input.

Detectar e rastrear headsets

Os headsets são gerenciados pelo sistema e, portanto, você não precisa criá-los nem inicializá-los. O sistema fornece acesso ao headset por meio do dispositivo de inserção ao qual ele está conectado e eventos para você ser notificado quando o headset está conectado ou desconectado.

IGameController.Headset

Todos os dispositivos de inserção no namespace Windows.Gaming.Input implementam a interface IGameController, que define a propriedade Headset para ser o headset conectado ao dispositivo no momento.

Como conectar e desconectar headsets.

Quando um headset está conectado ou desconectado, os eventos HeadsetConnected e HeadsetDisconnected são acionados. Você pode registrar manipuladores para esses eventos para monitorar se um dispositivo de inserção tem um headset conectado a ele atualmente.

O exemplo a seguir mostra como registrar um manipulador para o evento 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
}

O exemplo a seguir mostra como registrar um manipulador para o evento 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
}

Como usar o headset

A classe Headset é composta por duas cadeias de caracteres que representam IDs de ponto de extremidade do XAudio: uma para captura de áudio (gravação pelo microfone do headset) e outra para renderização de áudio (reprodução por meio do headset).

Os detalhes de como trabalhar com o XAudio não são discutidos aqui. Para obter mais informações, confira o Guia de programação do XAudio2 e Referência da API do XAudio2.