Casque

Cette page décrit les principes de base de la programmation pour les casques à l’aide de Windows.Gaming.Input.Headset et des API associées pour la plateforme Windows universelle (UWP).

Voici ce que vous allez apprendre à la lecture de cet article :

  • Comment accéder à un casque connecté à un appareil d’entrée ou de navigation
  • Comment détecter qu’un casque a été connecté ou déconnecté

Vue d’ensemble du casque

Les casques sont des appareils de capture et de lecture audio les plus souvent utilisés pour communiquer avec d’autres joueurs dans des jeux en ligne, mais peuvent également être utilisés dans le jeu ou pour d’autres utilisations créatives. Les casques sont pris en charge dans les applications Windows 10 ou Windows 11 et Xbox UWP via l’espace de noms Windows.Gaming.Input.

Détecter et suivre les casques

Les casques sont gérés par le système. Par conséquent, vous n’avez pas besoin de les créer ou de les initialiser. Le système fournit l’accès à un casque par le biais de l’appareil d’entrée auquel il est connecté et des événements pour vous avertir lorsqu’un casque est connecté ou déconnecté.

IGameController.Headset

Tous les appareils d’entrée de l’espace de noms Windows.Gaming.Input implémentent l’interface IGameController qui définit la propriété Headset comme étant le casque actuellement connecté à l’appareil.

Connecter et déconnecter des casques.

Lorsqu’un casque est connecté ou déconnecté, les événements HeadsetConnected et HeadsetDisconnected sont déclenchés. Vous pouvez inscrire des gestionnaires pour ces événements afin de suivre si un appareil d’entrée est actuellement connecté à un casque.

L’exemple suivant montre comment inscrire un gestionnaire pour l’événement 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
}

L’exemple suivant montre comment inscrire un gestionnaire pour l’événement 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
}

Utilisation du casque

La classe Headset est constituée de deux chaînes qui représentent les ID de point de terminaison XAudio : un pour la capture audio (enregistrement à partir du microphone du casque) et un pour le rendu audio (lecture via l’écouteur du casque).

Les détails de l’utilisation de XAudio ne sont pas abordés ici. Pour plus d’informations, consultez le guide de programmation XAudio2 et les informations de référence sur l’API XAudio2.