KSPROPERTY_CAMERACONTROL_EXTENDED_WHITEBALANCEMODE
Die Eigenschaft White Balance Mode legt fest, ob die automatische Verarbeitung für den Weißabgleich erfolgt oder ob stattdessen ein manueller Temperaturwert verwendet wird.
Übersichtstabelle zur Verwendung
Abrufen | Festlegen | Ziel | Typ des Eigenschaftsdeskriptors | Typ des Eigenschaftswertes |
---|---|---|---|---|
Ja | Ja | Filter | KSPROPERTY | KSCAMERA_EXTENDEDPROP_HEADER |
Der Eigenschaftswert (Vorgangsdaten) enthält eine KSCAMERA_EXTENDEDPROP_HEADER-Struktur und eine KSCAMERA_EXTENDEDPROP_VIDEOPROCSETTING-Struktur.
Die Gesamtgröße der Eigenschaftsdaten ist sizeof(KSCAMERA_EXTENDEDPROP_HEADER) + sizeof(KSCAMERA_EXTENDEDPROP_VIDEOPROCSETTING). Das Element Size von KSCAMERA_EXTENDEDPROP_HEADER wird auf diese Gesamtgröße der Eigenschaftsdaten festgelegt.
Der Capability-Element von KSCAMERA_EXTENDEDPROP_HEADER enthält eine bitweise OR-Verknüpfung von einer oder mehreren der folgenden Videoverarbeitungsoptionen.
Verarbeitungsmodus | Beschreibung |
---|---|
KSCAMERA_EXTENDEDPROP_VIDEOPROCFLAG_AUTO | Der Kameratreiber verwendet seine eigene Verarbeitungslogik für Video. |
KSCAMERA_EXTENDEDPROP_VIDEOPROCFLAG_MANUAL | Der Kameratreiber verwendet eine voreingestellte Verarbeitungsmethode oder eine temperaturbasierte Methode. |
KSCAMERA_EXTENDEDPROP_VIDEOPROCFLAG_LOCK | Die aktuelle Videoverarbeitungsmethode ist gesperrt. |
Das Flags-Mitglied von KSCAMERA_EXTENDEDPROP_HEADER enthält das Flag für die Videoverarbeitung, das derzeit für die Kamera festgelegt ist. Die Einstellung KSCAMERA_EXTENDEDPROP_VIDEOPROCFLAG_AUTO kann mit KSCAMERA_EXTENDEDPROP_VIDEOPROCFLAG_LOCK kombiniert werden.
Das Steuerelement für diese Eigenschaft ist asynchron und kann nicht abgebrochen werden.
Hinweise
Verarbeitungsmodi
KSCAMERA_EXTENDEDPROP_VIDEOPROCFLAG_AUTO
Dies zeigt an, dass die automatische Verarbeitung unterstützt wird. Der Treiber wird seine interne Logik verwenden, um die Videoverarbeitung zu optimieren. Bei einer KSPROPERTY_TYPE_GET-Anfrage muss das VideoProc-Mitglied von KSCAMERA_EXTENDEDPROP_VIDEOPROCSETTING den aktuellen vom Treiber festgelegten Wert für die Videoverarbeitung enthalten. Im Falle des Weißabgleichs muss er die aktuelle Temperatur in Kelvin enthalten. Das Modus-Element wird für den automatischen Vorgang ignoriert.
Dieses Flag kann mit KSCAMERA_EXTENDEDPROP_VIDEOPROCFLAG_LOCK als bitweiser OR-Wert kombiniert werden. Wenn es gesperrt ist, besteht das erwartete Verhalten des Kameratreibers darin, den Weißabgleich zu konvergieren und den Weißabgleichswert auf dem konvergierten Wert zu fixieren und nicht erneut zu versuchen, einen automatischen Weißabgleich durchzuführen, bis ein neuer Weißabgleichsbefehl empfangen wird.
Sperren, ohne Kombination mit dem Automodus, ein bereits gesperrtes Steuerelement sollte vom Kameratreiber als no-op behandelt werden. Sperren, in Kombination mit dem Automodus, sollte ein bereits gesperrtes Steuerelement eine neue Konvergenz auslösen.
KSCAMERA_EXTENDEDPROP_VIDEOPROCFLAG_MANUAL
Manual zeigt an, dass für diese Videoverarbeitung die spezifischen Werte bereitgestellt werden. Wenn im Fall des Weißabgleichs das Mode-Element von KSCAMERA_EXTENDEDPROP_VIDEOPROCSETTING auf KSCAMERA_EXTENDEDPROP_WHITEBALANCE_TEMPERATURE verweist, enthält der VideoProc.Value.ul den Temperaturwert in Grad Kelvin.
KSCAMERA_EXTENDEDPROP_VIDEOPROCFLAG_LOCK Das Flag für die Option lock zeigt an, dass die aktuelle Videoverarbeitung auf den aktuell programmierten Wert festgelegt ist. Eine Anwendung kann zum Beispiel den Automatikmodus anfordern, bis ein bestimmter Weißabgleich festgelegt ist. Zu diesem Zeitpunkt wird die Anwendung entscheiden, eine Sequenz von Fotos mit derselben Weißabgleichseinstellung aufzunehmen. In einem solchen Fall kann die Anwendung das Flag KSCAMERA_EXTENDEDPROP_VIDEOPROCFLAG_LOCK angeben. Der Kameratreiber sorgt dann dafür, dass sich die Informationen zum Weißabgleich in den verschiedenen Fotos nicht ändern.
Abrufen der Eigenschaft
Bei der Reaktion auf eine KSPROPERTY_TYPE_GET-Anfrage legt der Treiber die Mitglieder des KSCAMERA_EXTENDEDPROP_HEADER wie folgt fest.
Member | Wert |
---|---|
Version | 1 |
PinId | KSCAMERA_EXTENDEDPROP_FILTERSCOPE (0xFFFFFFFF) |
Size | sizeof(KSCAMERA_EXTENDEDPROP_HEADER) + sizeof(KSCAMERA_EXTENDEDPROP_VIDEOPROCSETTING) |
Ergebnis | 0 |
Funktion | KSCAMERA_EXTENDEDPROP_CAPS_ASYNCCONTROL als OR mit (Videoverarbeitungsmodus wird unterstützt) |
Flags | Der aktuelle Videoverarbeitungsmodus |
Wenn zuvor kein Weißabgleichsmodus festgelegt wurde, setzt der Treiber Flags auf KSCAMERA_EXTENDEDPROP_VIDEOPROCFLAG_AUTO (Standard). Die Mitglieder der Struktur KSCAMERA_EXTENDEDPROP_VIDEOPROCSETTING, die auf KSCAMERA_EXTENDEDPROP_HEADER folgt, werden entsprechend den Anforderungen des Verarbeitungsmodus festgelegt.
Festlegen der Eigenschaft
Wenn die Eigenschaft gesetzt wird, eine KSPROPERTY_TYPE_SET-Anfrage, enthält das Flags-Mitglied von KSCAMERA_EXTENDEDPROP_HEADER den festzulegenden Weißabgleichsmodus. Der VideoProc.Value-Element von KSCAMERA_EXTENDEDPROP_VIDEOPROCSETTING muss ignoriert werden, wenn Flags das Modus-Flag KSCAMERA_EXTENDEDPROP_VIDEOPROCFLAG_AUTO enthält.
Anforderungen
Version: Verfügbar ab Windows 8.1
Header: ksmedia.h (include Ksmedia.h)