Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
La propriété KSPROPERTY_JACK_DESCRIPTION3 est implémentée en tant que propriété épinglée accessible à l’aide du handle de filtre.
Dans la version 22H2 et les systèmes d’exploitation Windows ultérieurs, la structure de KSJACK_DESCRIPTION3 associée peut être utilisée pour spécifier et modifier la configuration actuelle du jack.
tableau récapitulatif de l’utilisation de
| Obtenir | Définissez | Cible | Type de descripteur de propriété | Type de valeur de propriété |
|---|---|---|---|---|
Oui |
Non |
Fabrique de broches (via handle de filtre) |
KSMULTIPLE_ITEM suivi d’un tableau de structures KSJACK_DESCRIPTION3 |
La valeur de propriété (données d’instance) est une KSMULTIPLE_ITEM, suivie d’un tableau de structures KSJACK_DESCRIPTION3.
valeur de retour
Une requête de propriété KSPROPERTY_JACK_DESCRIPTION3 retourne une KSMULTIPLE_ITEM suivie d’un tableau de structures N KSJACK_DESCRIPTION3, où N = le nombre de jacks associés à la broche de pont spécifiée. La liste suivante montre les éléments retournés par la demande de propriété.
KSMULTIPLE_ITEM. Taille = sizeof(KSMULTIPLE_ITEM) + N * sizeof(KSJACK_DESCRIPTION3)
KSMULTIPLE_ITEM. Nombre = N
KSJACK_DESCRIPTION3[0]
...
KSJACK_DESCRIPTION3[N-1]
Remarques
Communication des modifications apportées aux appareils audio à l’aide de KSJACK_DESCRIPTION3 et de KSPROPERTY_JACK_DESCRIPTION3
Le système audio Windows met en cache les fonctionnalités d’appareil audio lors de la création du point de terminaison audio. Ces valeurs mises en cache concernent des fonctionnalités telles que la présence d’un moteur audio HW, la prise en charge du format, l’ID de conteneur, les caractéristiques de taille de mémoire tampon, etc. Ces valeurs mises en cache sont conservées pendant la durée de l’installation de Windows. Ils sont actualisés uniquement lorsque le pilote audio est mis à jour ou lors d’une mise à niveau du système d’exploitation.
Avec KSJACK_DESCRIPTION3, le système audio Windows fournit un mécanisme permettant au pilote audio de demander que toutes les valeurs mises en cache soient ignorées et actualisées. La demande peut être déclenchée par des modifications apportées aux fonctionnalités de l’appareil audio, telles que les contraintes de ressources.
Chaque fois que le pilote modifie le contenu de KSJACK_DESCRIPTION3 au moment de l’exécution, le pilote déclenche l’événement de KSEVENT_PINCAPS_JACKINFOCHANGE existant.
Le système audio Windows conserve la dernière valeur ConfigId signalée mise en cache sur le point de terminaison audio. La valeur ConfigId est récupérée en réponse à KSEVENT_PINCAPS_JACKINFOCHANGE événement et pendant le traitement normal du point de terminaison audio au démarrage du système, au redémarrage du service Générateur de points de terminaison Audio, à la mise à jour du pilote audio ou aux modifications d’état de l’interface pour le point de terminaison.
Si la valeur ConfigId récupérée diffère de la valeur précédemment stockée, le système audio Windows ignore toutes les fonctionnalités de point de terminaison précédemment mises en cache et les actualise.
L’utilisation recommandée consiste à définir plusieurs configurations de point de terminaison audio dans le pilote contrôlé par la valeur ConfigId (masque de bits ou énumération). Par exemple, ConfigId de 1 peut indiquer la présence d’un nœud de moteur audio, tandis que ConfigId 2 ne signale pas de nœud de moteur audio. Le ConfigId utilisé par le pilote est partagé avec le système audio Windows via KSPROPERTY_JACK_DESCRIPTION3 et agit pour synchroniser le point de terminaison avec les fonctionnalités mises en cache par le système audio Windows.
La valeur du ConfigId est opaque pour Windows. Le pilote audio peut utiliser un horodatage ou une valeur d’incrémentation choisie au moment de l’exécution à la place d’un masque de bits ou d’enum, comme indiqué ci-dessus. Cette stratégie n’est pas recommandée, car elle peut entraîner des actualisations inutiles des points de terminaison pendant le démarrage ou les modifications de l’interface pour synchroniser la dernière valeur ConfigId stockée avec la valeur nouvellement signalée, même lorsque les fonctionnalités de point de terminaison ne sont pas modifiées. Cette approche peut également augmenter les chances que le pilote et Windows ne soient plus synchronisés, ce qui peut entraîner des échecs de lecture audio.
Mécanisme utilisé pour actualiser les valeurs mises en cache sur le point de terminaison lorsque le ConfigId change est identique à celui utilisé pour les mises à niveau du système d’exploitation et les mises à jour des pilotes. Un nouveau point de terminaison avec un ID différent est créé, qui contiendra les valeurs mises en cache actualisées qui correspondent aux nouveaux paramètres ConfigId du point de terminaison, les paramètres utilisateur sont ensuite copiés de l’ancien point de terminaison vers le nouveau point de terminaison, et enfin l’ancien point de terminaison est supprimé. Pour plus d’informations, sur le processus de migration de point de terminaison audio dans les mises à niveau du système d’exploitation, consultez Mises à niveau du système d’exploitation.
Spécifications
Client minimum pris en charge |
Disponible dans les systèmes d’exploitation Windows version 22H2 et versions ultérieures. |
En-tête de page |
Ksmedia.h |