KSPROPERTY_CAMERACONTROL_EXTENDED_VIDEOSTABILIZATION
Dieses erweiterte Eigenschaftensteuerelement wird verwendet, um die digitale Videostabilisierung in driver\MFT0 zu steuern.
Tabelle "Nutzungszusammenfassung"
`Scope` | Control | type |
---|---|---|
Version 1 |
Pin |
Synchron |
Die folgenden Flags, die im KSCAMERA_EXTENDEDPROP_HEADER platziert werden können. Kennzeichnet Feldflags, um die digitale Videostabilisierung in driver\MFT0 zu steuern. Standardmäßig sollte die Videostabilisierung für den Treiber deaktiviert sein.
#define KSCAMERA_EXTENDEDPROP_VIDEOSTABILIZATION_OFF 0x0000000000000000
#define KSCAMERA_EXTENDEDPROP_VIDEOSTABILIZATION_ON 0x0000000000000001
#define KSCAMERA_EXTENDEDPROP_VIDEOSTABILIZATION_AUTO 0x0000000000000002
Wenn der Treiber keine digitale Videostabilisierung unterstützt, sollte der Treiber dieses Steuerelement nicht implementieren.
Wenn der Treiber dieses Steuerelement unterstützt, muss er VIDEOSTABILIZATION_ON\OFF unterstützen.
Der SET-Aufruf dieses Steuerelements hat keine Auswirkung, wenn sich der Videonadel in einem zustand befindet, der höher als der KSSTATE_STOP Zustand ist. Der Treiber muss den empfangenen SET-Anruf ablehnen, wenn sich der Videopin nicht im Stoppzustand befindet, und gibt STATUS_INVALID_DEVICE_STATE zurück. Bei einem GET-Aufruf sollte der Treiber die aktuellen Einstellungen im Feld Flags zurückgeben.
Wenn dieses Steuerelement im Kontext eines Profils verwendet wird, muss das Profil dem Fahrer als Hinweis für den Qualitätsmodus dienen. Der Treiber kann basierend auf dem ausgewählten Profil bestimmen, ob er für geringe Latenz oder hohe Qualität optimiert werden soll, wenn die Videostabilisierung aktiviert wird, z. B. videokonferenz oder qualitativ hochwertige Videoaufzeichnung.
Hinweis
PROPSETID_VIDCAP_CAMERACONTROL_VIDEO_STABILIZATION ist für Windows 10 veraltet.
In der folgenden Tabelle werden die Flagfunktionen beschrieben.
Flag | Beschreibung |
---|---|
KSCAMERA_EXTENDEDPROP_VIDEOSTABILIZATION_OFF |
Dies ist eine obligatorische Funktion. Wenn angegeben, ist die digitale Videostabilisierung in driver\MFT0 deaktiviert. |
KSCAMERA_EXTENDEDPROP_VIDEOSTABILIZATION_ON |
Dies ist eine obligatorische Funktion. Wenn dies angegeben ist, wird die digitale Videostabilisierung in driver\MFT0 aktiviert, und die Standardeinstellung für das Überscan-Auffüllen liegt beim Treiber. Dieses Flag schließt sich mit den Flags AUTO und OFF gegenseitig aus. |
KSCAMERA_EXTENDEDPROP_VIDEOSTABILIZATION_AUTO |
Diese Funktion ist optional. Bei Angabe bestimmt der Treiber, der diese Funktion unterstützt, basierend auf der Szenenanalyse und dem Aufnahmeszenario, ob die Videostabilisierung durchgeführt werden soll und wie viel Stabilisierung angewendet werden soll. Dieses Flag schließt sich mit den Flags ON und OFF gegenseitig aus. |
Hinweis
Je nach Implementierung kann der überscannte Puffer entweder vom Treiber intern oder von der Pipeline zugeordnet werden.
Wenn der überscannte Puffer vom Treiber zugeordnet werden soll, sollte der Treiber sowohl den regulären Medientyp als auch den überscannten Medientyp ankündigen. Der MFT0 sollte den regulären Medientyp ankündigen. Beim Festlegen des regulären Medientyps auf dem Ausgabemedientyp von MFT0 sollte der MFT0 den entsprechenden überscannten Medientyp aus den vom Treiber angekündigten Medientypen als Eingabemedientyp auswählen, wenn die Videostabilisierung aktiviert ist. Wenn die Videostabilisierung deaktiviert ist, sollte MFT0 den regulären Medientyp als Eingabemedientyp auswählen. Der MFT0 sollte MF_E_INVALIDMEDIATYPE zurückgeben, wenn der überscannte Medientyp als Ausgabemedientyp festgelegt ist, wenn die Videostabilisierung aktiviert ist.
Wenn der Treiber einen überscannten Puffer zugeordnet, sollten sowohl der Treiber als auch MFT0 die regulären Medientypen ankündigen. MFT0 sollte den regulären Medientyp sowohl für den Eingabemedientyp als auch für den Ausgabemedientyp festlegen.
Um effektbasierte Videostabilisierung zu unterstützen (d. h. die Videostabilisierung erfolgt weder im Treiber noch in MFT0), müssen treiber und MFT0 zusätzlich den überscannten Medientyp ankündigen. In diesem Fall werden sowohl reguläre als auch überscannte Medientypen vom Treiber und MFT0 verfügbar gemacht. Die folgenden Regeln gelten, um sicherzustellen, dass sowohl effektbasierte als auch treiberbasierte Videostabilisierung ordnungsgemäß funktionieren.
Wenn ein überscannter Medientyp als MFT0-Ausgabemedientyp festgelegt ist, während die auf Treiber\MFT0 basierende Videostabilisierung aktiviert ist, sollte MFT0 MF_E_INVALIDMEDIATYPE zurückgeben.
Wenn ein regulärer Medientyp auf den Ausgabemedientyp MFT0 festgelegt ist, sollte die App beim Versuch, die effektbasierte Videostabilisierung zu aktivieren, einen Fehler zurückgeben, wenn die effektbasierte Videostabilisierung nur den überscannten Medientyp annehmen kann.
Die folgende Tabelle enthält die Beschreibungen und Anforderungen für die KSCAMERA_EXTENDEDPROP_HEADER Strukturfelder bei Verwendung des Videostabilisierungssteuerelements.
Member | BESCHREIBUNG |
---|---|
Version |
Dies muss 1 sein. |
PinId |
Muss die Pin-ID sein, die der Video-Pin zugeordnet ist. |
Size |
Dies muss sizeof(KSCAMERA_EXTENDEDPROP_HEADER) + sizeof(KSCAMERA_EXTENDEDPROP_VALUE) sein. |
Ergebnis |
Gibt die Fehlerergebnisse des letzten SET-Vorgangs an. Wenn kein SET-Vorgang stattgefunden hat, muss dieser 0 sein. |
Funktion |
Dies muss ein bitweises OR der unterstützten KSCAMERA_EXTENDEDPROP_VIDEOSTABILIZATION_XXX Flags sein, wie oben definiert. |
Flags |
Dies ist ein Lese-/Schreibfeld. Dies kann eines der oben definierten KSCAMERA_EXTENDEDPROP_VIDEOSTABILIZATION_XXX Flags sein. |
Anforderungen
Header |
Ksmedia.h |