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