KSPROPERTY_CAMERACONTROL_EXTENDED_EYEGAZECORRECTION

KSPROPERTY_CAMERACONTROL_EXTENDED_EYEGAZECORRECTION ist eine Eigenschaftskennung, die zur Steuerung der Augen-Blickkorrektur beim Treiber verwendet wird.

Diese Eigenschafts-ID steuert eine In-Stream-Korrektur, die ein Treiber durchführen kann, um eine qualitativ hochwertige Bildkorrektur für die Verwendung mit Vorschaubildern und aufgezeichneten Bildern zu ermöglichen. Die In-Stream-Korrektur muss im Treiber auf einheitliche Weise aktiviert und deaktiviert werden, sodass die Funktionen entweder von Windows oder einer Anwendung gesteuert werden.

Beispiele für die Einstellung von KSPROPERTY-Steuerelementen finden Sie im AVStream Camera Sample Driver auf GitHub.

Aktualisierung des Steuerelements KSPROPERTY_CAMERACONTROL_EXTENDED_EYEGAZECORRECTION

Ab Windows 11, Version 22H2, wird der Stare-Modus als optionale Funktion in die bestehende Blickkorrektursteuerung aufgenommen.

KSCAMERA_EXTENDEDPROP_EYEGAZECORRECTION_STARE ist ein neues Flag, das dem KSPROPERTY_CAMERACONTROL_EXTENDED_EYEGAZECORRECTION-Steuerelement hinzugefügt wurde und zur Steuerung des Stare-Modus im Treiber verwendet wird.

Während die Eye-Gaze-Korrektur (auch bekannt als Blickkontakt) das geometrische Problem des Versatzes zwischen Kamera und Display löst, erfordern viele Videoszenarien, dass der Benutzer längere Zeit auf den Bildschirm schaut, während er gleichzeitig spricht – stellen Sie sich vor, Sie lesen eine Präsentation/ein Dokument während eines Telefonats.

Der Modus „Stare“ ist eine aggressivere Form des Blickkontakts, bei der die Pixel der Augen ständig verschoben werden, um den Eindruck zu erwecken, dass Sie mit Ihrem Publikum sprechen, auch wenn Sie vielleicht ein Skript ablesen und den Augapfel schnell bewegen.

Übersichtstabelle zur Verwendung

Umfang Control type
Version 1 Filter Synchron

Die folgenden Flags können in das Feld KSCAMERA_EXTENDEDPROP_HEADER.Flags eingetragen werden, um den Stare-Modus zu steuern. Die Standardeinstellung sollte Aus sein.

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

Wenn der Treiber diese Steuerung unterstützt, muss er EYEGAZECORRECTION_OFF und eines oder mehrere der anderen Flags unterstützen.

Wenn der Treiber die Augen-Blick-Korrektur nicht unterstützt, sollte er diese Steuerung nicht implementieren.

Der SET-Aufruf dieses Steuerelements wird auch dann wirksam, wenn sich der Video- oder Fotopin im Zustand KSSTATE_RUN befindet. Bei einem GET-Aufruf sollte der Treiber die aktuellen Einstellungen im Feld „Flags“ zurückgeben.

In der folgenden Tabelle werden die Funktionen der Flags beschrieben.

Flag Beschreibung
KSCAMERA_EXTENDEDPROP_EYEGAZECORRECTION_OFF Dies ist eine obligatorische Fähigkeit. Wenn dies angegeben ist, wird die Blickkorrektur im Treiber deaktiviert.
KSCAMERA_EXTENDEDPROP_EYEGAZECORRECTION_ON Dies ist eine obligatorische Fähigkeit. Wenn dies angegeben ist, wird die Blickkorrektur im Treiber aktiviert.
KSCAMERA_EXTENDEDPROP_EYEGAZECORRECTION_STARE Dies ist eine optionale Funktion. Wenn sie zusammen mit KSCAMERA_EXTENDEDPROP_EYEGAZECORRECTION_ON angegeben wird, ist der Stare-Modus im Treiber aktiviert.

Hinweis

Aus der SET-Perspektive wird der Stare-Modus nur aktiviert, wenn sowohl KSCAMERA_EXTENDEDPROP_EYEGAZECORRECTION_STARE als auch KSCAMERA_EXTENDEDPROP_EYEGAZECORRECTION_ON gleichzeitig eingestellt sind. KSCAMERA_EXTENDEDPROP_EYEGAZECORRECTION_OFF muss exklusiv für die beiden anderen Bits sein.

Die folgende Tabelle enthält die Beschreibungen und Anforderungen für die Strukturfelder KSCAMERA_EXTENDEDPROP_HEADER bei Verwendung des Controls.

Member Beschreibung
Version Diese Angabe muss 1 sein.
PinId Dies muss KSCAMERA_EXTENDEDPROP_FILTERSCOPE (0xFFFFFFFF) sein.
Größe Dies muss sizeof(KSCAMERA_EXTENDEDPROP_HEADER) + sizeof(KSCAMERA_EXTENDEDPROP_VALUE) sein.
Ergebnis Unbenutzt, muss 0 sein.
Funktion Muss ein bitweises ODER der oben definierten unterstützten KSCAMERA_EXTENDEDPROP_EYEGAZECORRECTION_* Flags sein.
Flags Dies ist ein Lese-/Schreibfeld. Dies kann jedes der oben definierten KSCAMERA_EXTENDEDPROP_EYEGAZECORRECTION_*-Flags sein, mit Ausnahme von KSCAMERA_EXTENDEDPROP_EYEGAZECORRECTION_STARE (das zusammen mit ON gesetzt werden muss, um wirksam zu werden), oder gültige Kombinationen der Bits. Aus der SET-Perspektive ist der Stare-Modus nur aktiviert, wenn KSCAMERA_EXTENDEDPROP_EYEGAZECORRECTION_STARE und KSCAMERA_EXTENDEDPROP_EYEGAZECORRECTION_ON gleichzeitig eingestellt sind. KSCAMERA_EXTENDEDPROP_EYEGAZECORRECTION_OFF muss exklusiv für die anderen 2 Bits sein.

Anforderungen

Mindestens unterstützter Client: Windows 11, Version 22H2

Header: ksmedia.h (include Ksmedia.h)

Siehe auch

Hintergrundsegmentierung im Porträtmodus und im Modus „Eye Gaze Stare“ Treiberbeispiel

KSPROPERTY_CAMERACONTROL_EXTENDED_BACKGROUNDSEGMENTATION

KSCAMERA_EXTENDEDPROP_HEADER