Partager via


KSPROPERTY_CAMERACONTROL_EXTENDED_EYEGAZECORRECTION

KSPROPERTY_CAMERACONTROL_EXTENDED_EYEGAZECORRECTION est un identifiant de propriété utilisé pour contrôler la correction du regard sur le pilote.

Cet ID de propriété contrôle une correction en flux qu'un pilote peut effectuer pour permettre une correction d'image de haute qualité à utiliser avec les images de prévisualisation et les images enregistrées. La correction en flux doit être activée et désactivée dans le pilote de manière uniforme, afin que les fonctionnalités soient contrôlées par Windows ou par une application.

Voici des exemples de paramétrage des contrôles KSPROPERTY que l'on peut trouver dans le pilote d'exemple de la caméra AVStream sur GitHub.

Mettre à jour vers le contrôle KSPROPERTY_CAMERACONTROL_EXTENDED_EYEGAZECORRECTION

À partir de Windows 11, version 22H2, le mode « Regard fixe » est ajouté à la commande de correction du regard existante en tant que fonction facultative.

KSCAMERA_EXTENDEDPROP_EYEGAZECORRECTION_STARE est un nouvel indicateur ajouté au contrôle KSPROPERTY_CAMERACONTROL_EXTENDED_EYEGAZECORRECTION qui est utilisé pour contrôler le mode Regard fixe sur le pilote.

Si la correction du regard (également appelée contact visuel) résout le problème géométrique du décalage entre la caméra et l'écran, de nombreux scénarios vidéo exigent que l'utilisateur regarde l'écran pendant de longues périodes tout en parlant, comme la lecture d'une présentation ou d'un document lors d'un appel.

Le mode Regard fixe est une forme plus dynamique de contact visuel qui déplace continuellement les pixels des yeux pour donner l'impression que vous parlez à votre public, même si vous êtes en train de lire un texte et de bouger rapidement les yeux.

Tableau récapitulatif de l'utilisation

Étendue Control Type
Version 1 Filtrer Synchrone

Les indicateurs suivants peuvent être placés dans le champ KSCAMERA_EXTENDEDPROP_HEADER.Flags pour contrôler le mode Regard fixe. La valeur par défaut est Désactivé.

#define KSCAMERA_EXTENDEDPROP_EYEGAZECORRECTION_OFF   0x0000000000000000
#define KSCAMERA_EXTENDEDPROP_EYEGAZECORRECTION_ON    0x0000000000000001
#define KSCAMERA_EXTENDEDPROP_EYEGAZECORRECTION_STARE 0x0000000000000002

Si le pilote prend en charge cette commande, il doit prendre en charge EYEGAZECORRECTION_OFF et un ou plusieurs des autres indicateurs.

Si le pilote ne prend pas en charge la fonction de correction du regard, il ne doit pas implémenter cette commande.

L'appel SET de cette commande prend effet, même lorsque la broche vidéo ou photo est dans l'état KSSTATE_RUN. Lors d'un appel GET, le pilote doit renvoyer les paramètres actuels dans le champ Indicateurs.

Le tableau suivant décrit les capacités des indicateurs.

Indicateur Description
KSCAMERA_EXTENDEDPROP_EYEGAZECORRECTION_OFF Il s'agit d'une capacité obligatoire. Lorsqu'elle est spécifiée, la correction du regard est désactivée dans le pilote.
KSCAMERA_EXTENDEDPROP_EYEGAZECORRECTION_ON Il s'agit d'une capacité obligatoire. Lorsqu'elle est spécifiée, la correction du regard est activée dans le pilote.
KSCAMERA_EXTENDEDPROP_EYEGAZECORRECTION_STARE Il s'agit d'une capacité facultative. Lorsqu'elle est spécifiée avec KSCAMERA_EXTENDEDPROP_EYEGAZECORRECTION_ON, le mode Regard fixe est activé dans le pilote.

Remarque

Du point de vue de SET, le mode Regard fixe ne sera activé que si KSCAMERA_EXTENDEDPROP_EYEGAZECORRECTION_STARE et KSCAMERA_EXTENDEDPROP_EYEGAZECORRECTION_ON sont définis en même temps. KSCAMERA_EXTENDEDPROP_EYEGAZECORRECTION_OFF doit être exclusif aux deux autres bits.

Le tableau ci-dessous contient les descriptions et les exigences relatives aux champs de la structure KSCAMERA_EXTENDEDPROP_HEADER lors de l'utilisation de la commande.

Membre Description
Version Doit être 1.
PinId Il doit s'agir de KSCAMERA_EXTENDEDPROP_FILTERSCOPE (0xFFFFFF).
Taille Doit être sizeof(KSCAMERA_EXTENDEDPROP_HEADER) + sizeof(KSCAMERA_EXTENDEDPROP_VALUE).
Result Non utilisé, doit être égal à 0.
Fonctionnalité Doit être un OU bit à bit des indicateurs KSCAMERA_EXTENDEDPROP_EYEGAZECORRECTION_* pris en charge définis ci-dessus.
Indicateurs Il s'agit d'un champ en lecture/écriture. Il peut s'agir de n'importe lequel des indicateurs KSCAMERA_EXTENDEDPROP_EYEGAZECORRECTION_* définis ci-dessus, à l'exception de KSCAMERA_EXTENDEDPROP_EYEGAZECORRECTION_STARE (qui doit être défini en même temps que ON pour prendre effet), ou de combinaisons valides de bits. D'un point de vue SET, le mode Stare n'est activé que lorsque KSCAMERA_EXTENDEDPROP_EYEGAZECORRECTION_STARE et KSCAMERA_EXTENDEDPROP_EYEGAZECORRECTION_ON sont tous deux activés en même temps. KSCAMERA_EXTENDEDPROP_EYEGAZECORRECTION_OFF doit être exclusif des 2 autres bits.

Spécifications

Client minimum supporté : Windows 11, version 22H2

En-tête : ksmedia.h (include Ksmedia.h)

Voir aussi

Exemple de pilote pour la segmentation de l'arrière-plan en mode portrait et en mode regard fixe

KSPROPERTY_CAMERACONTROL_EXTENDED_BACKGROUNDSEGMENTATION

KSCAMERA_EXTENDEDPROP_HEADER