Partager via


structure BTHHFP_DESCRIPTOR (bthhfpddi.h)

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

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 jumelé.

OutputPinCategory

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

ContainerId

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

SupportsVolume

Indique si l’appareil HFP jumelé prend en charge le contrôle de volume distant.

VolumePropertyValuesSize

Si le contrôle de volume distant 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 de l’appareil HFP associé.

Remarques

Le pilote HFP calcule le InputPinCategory et OutputPinCategory GUID en fonction des données « Classe Bluetooth de périphérique » contenues dans les informations SDP de l’appareil jumelé. Le pilote audio définit la KSPIN_DESCRIPTOR. Catégorie membres pour les broches de pont d’entrée et de sortie aux GUID calculés.

note   

Dans certains cas, les catégories d’entrée et de broche 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 InputPinCategory et Membres OutputPinCategory. Le système audio utilise ces informations pour déterminer le type d’appareil (par exemple, casque et haut-parleurs) et déterminer 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 contextuelles appropriées et retourne cette valeur dans son implémentation de la propriété KSPROPERTY_JACK_CONTAINERID KS.

Si SupportsVolume est vrai, 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%0mains libres .. ; (SomeDeviceName)". Notez qu’il s’agit d’une chaîne indirecte et, par conséquent, pas nécessairement 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, comme dans le panneau de configuration Sons.

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

Exigences

Exigence Valeur
client minimum pris en charge Windows 8
serveur minimum pris en charge Windows Server 2012
d’en-tête bthhfpddi.h

Voir aussi

bluetooth HFP DDI IOCTLs

structures DDI Bluetooth HFP

IOCTL_BTHHFP_DEVICE_GET_DESCRIPTOR

IOCTL_BTHHFP_DEVICE_GET_VOLUMEPROPERTYVALUES

KSPIN_DESCRIPTOR. Catégorie

KSPROPERTY_JACK_CONTAINERID