Partager via


BTHHFP_DESCRIPTOR structure (bthhfpddi.h)

La structure de données BTHHFP_DESCRIPTOR stocke des informations décrivant un appareil de profil mains libres (HFP) couplé.

Le pilote HFP retourne cette structure de données dans la mémoire tampon de sortie pour la requête IOCTL_BTHHFP_DEVICE_GET_DESCRIPTOR .

Syntaxe

typedef struct _BTHHFP_DESCRIPTOR {
  GUID           InputPinCategory;
  GUID           OutputPinCategory;
  GUID           ContainerId;
  BOOL           SupportsVolume;
  ULONG          VolumePropertyValuesSize;
  UNICODE_STRING FriendlyName;
} BTHHFP_DESCRIPTOR, *PBTHHFP_DESCRIPTOR;

Membres

InputPinCategory

Catégorie de broche KS pour la fonction d’entrée de l’appareil HFP appairé.

OutputPinCategory

Catégorie de broche KS pour la fonction de sortie de l’appareil HFP appairé.

ContainerId

ID de conteneur PnP pour l’appareil HFP jumelé.

SupportsVolume

Indique si l’appareil HFP couplé prend en charge le contrôle de volume à distance.

VolumePropertyValuesSize

Si le contrôle de volume à distance est pris en charge, ce membre contient la taille des données retournées par la demande de IOCTL_BTHHFP_DEVICE_GET_VOLUMEPROPERTYVALUES .

FriendlyName

Chaîne indirecte identifiant le nom convivial lisible par l’utilisateur de l’appareil HFP appairé.

Remarques

Le pilote HFP calcule les GUID InputPinCategory et OutputPinCategory en fonction des données « Bluetooth Class of Device » contenues dans les informations SDP de l’appareil appairé. Le pilote audio définit le KSPIN_DESCRIPTOR. Membres de catégorie pour les broches de pont d’entrée et de sortie vers les GUID calculés.

Remarque  

Dans certains cas, les catégories de broches d’entrée et de sortie peuvent être identiques.

Le pilote audio ne doit pas faire d’hypothèses particulières sur les valeurs GUID de catégorie retournées dans les membres InputPinCategory et OutputPinCategory . Le système audio utilise ces informations pour déterminer le type d’appareil (par exemple, casque et haut-parleurs) et s’il faut utiliser l’appareil à des fins différentes, telles que l’appareil de communication par défaut.

 
Le pilote audio stocke le ContainerId dans les données de contexte appropriées et retourne cette valeur dans son implémentation de la propriété KS KSPROPERTY_JACK_CONTAINERID .

Si SupportsVolume a la valeur true, le pilote audio inclut la prise en charge du volume dans sa topologie KS.

Le pilote audio utilise la chaîne retournée dans FriendlyName pour définir la propriété DEVPKEY_DeviceInterface_FriendlyName sur l’interface de périphérique KSCATEGORY_AUDIO du filtre KS. Pour ce faire, le pilote audio appelle IoSetDeviceInterfacePropertyData et définit le type de propriété sur DEVPROP_TYPE_STRING_INDIRECT. Un exemple de chaîne est « @System32\drivers\bthhfenum.sys,#2 ;%1 Mains libres%0.. ; (SomeDeviceName) ». Notez qu’il s’agit d’une chaîne indirecte et donc pas nécessairement de la chaîne lisible par l’homme qui est directement affichée dans une interface utilisateur. Le système audio utilise cette chaîne pour générer des chaînes localisées utilisées pour l’affichage à l’utilisateur, par exemple dans le panneau de configuration Sons.

Pour plus d’informations sur les IOCTL qui fonctionnent avec cette structure, consultez IocTL DDI Bluetooth HFP.

Configuration requise

Condition requise Valeur
Client minimal pris en charge Windows 8
Serveur minimal pris en charge Windows Server 2012
En-tête bthhfpddi.h

Voir aussi

IOCTL DDI Bluetooth HFP

Bluetooth HFP DDI Structures

IOCTL_BTHHFP_DEVICE_GET_DESCRIPTOR

IOCTL_BTHHFP_DEVICE_GET_VOLUMEPROPERTYVALUES

KSPIN_DESCRIPTOR. Catégorie

KSPROPERTY_JACK_CONTAINERID