KSPROPERTY_CAMERACONTROL_EXTENDED_FIELDOFVIEW2
KSPROPERTY_CAMERACONTROL_EXTENDED_FIELDOFVIEW2 ist eine Eigenschafts-ID, die das diagonale Sichtfeld (FoV) der Kamera in Grad angibt. Die diagonalen FoV-Werte entsprechen dem diagonalen FoV beim nativen Seitenverhältnis des Sensors. Dies führt zu nicht nativen Seitenverhältnissen, die ein leicht unterschiedliches tatsächliches diagonales FoV aufweisen.
Dieses Steuerelement bezieht sich auf KSPROPERTY_CAMERACONTROL_EXTENDED_DIGITALWINDOW, KSPROPERTY_CAMERACONTROL_ZOOM und KSPROPERTY_CAMERACONTROL_EXTENDED_ZOOM. Informationen zu den Interoperabilitätsanforderungen finden Sie weiter unten im Abschnitt „Anmerkungen“.
Übersichtstabelle zur Verwendung
Bereich | Abrufen | Festlegen | Control | type |
---|---|---|---|---|
Version 1 | Ja | Ja | Filter | Synchron |
KSCAMERA_EXTENDEDPROP_HEADER-Strukturfelder
Die folgende Tabelle enthält die Anforderungen für die KSCAMERA_EXTENDEDPROP_HEADER-Strukturfelder bei Verwendung des Steuerelements.
Member | Beschreibung |
---|---|
Version | Muss 1 sein. |
PinId | KSCAMERA_EXTENDEDPROP_FILTERSCOPE (0xFFFFFFFF) |
Size | Muss sizeof(KSCAMERA_EXTENDEDPROP_HEADER) + sizeof(KSCAMERA_EXTENDEDPROP_VALUE) sein. |
Ergebnis | Muss 0 enthalten. Dieses Feld wird nur verwendet, um die Ergebnisse des letzten asynchronen SET-Vorgangs zurückzugeben. |
Funktion | Muss den Wert 0 (null) haben. |
Flags | Muss den Wert 0 (null) haben. |
KSCAMERA_EXTENDEDPROP_VALUE-Nutzlast
Die Nutzlast verwendet die vorhandene KSCAMERA_EXTENDEDPROP_VALUE-Struktur mit einem ULONG-Typ.
Hinweise
Interoperabilität mit KSPROPERTY_CAMERACONTROL_ZOOM und KSPROPERTY_CAMERACONTROL_EXTENDED_ZOOM
Wenn ein Treiber/Gerät dieses neue FoV-Steuerelement und die alten Steuerelemente KSPROPERTY_CAMERACONTROL_ZOOM oder KSPROPERTY_CAMERACONTROL_EXTENDED_ZOOM unterstützt, muss das Zoomsteuerelement innerhalb der neuen FoV-Auswahl (Field of View) funktionieren. Dies bedeutet, dass der Zoom relativ zu FoV ist. Bei unterschiedlichen FoV-Werten führt der gleiche Zoomwert zu unterschiedlichen scheinbaren Zoomwerten. Darüber hinaus wird beim Einstellen des FoV der Zoom immer auf den Standardwert zurückgesetzt, unabhängig davon, ob sich der tatsächliche FoV-Wert geändert hat.
Beispielsweise ist der alte Zoom-Steuerungsbereich auf 10 bis 600 festgelegt und der Zoom hat den Standardwert 10. Wenn die neue FoV-Einstellung von 75 Grad auf 90 Grad festgelegt wird, liegt die alte Zoom-Steuerung noch immer auf 10 mit demselben Bereich von 10 bis 600. Wenn der alte Zoom jedoch bei 50 lag, wird er auf 10 zurückgesetzt, wenn der neue FoV-Wert festgelegt wird.
Interoperabilität mit KSPROPERTY_CAMERACONTROL_EXTENDED_DIGITALWINDOW und DIGITALWINDOW_CONFIGCAPS
Wenn ein Treiber/Gerät sowohl dieses neue FoV2-Steuerelement als auch die DW-Steuerelemente (Digital Window) unterstützt, müssen die folgenden Anforderungen erfüllt werden:
Wenn der einzige Zweck der Implementierung der Unterstützung für Digital Window darin besteht, KSCAMERA_EXTENDEDPROP_DIGITALWINDOW_AUTOFACEFRAMING zu unterstützen, ist es akzeptabel, dass das manuelle Digital Window nur eine Fenstergröße unterstützt, die das vollständige Fenster darstellt. Dieses vollständige Fenster sollte mit dem DefaultDiagonalFieldOfViewInDegrees des FIELDOFVIEW2_CONFIGCAPS übereinstimmen, obwohl das maximale FoV breiter sein kann. In diesem Fall können die unten aufgeführten Anforderungen für ein manuelles Digital Window ignoriert werden, da das manuelle Digital Window nicht vollständig unterstützt wird.
Der unterstützte Bereich „Digital Window“ muss mindestens die breiteste FoV-Einstellung abdecken. Beispielsweise können Sie mit dem Digital Window einen digitalen Zuschnitt erstellen, der mit den unterstützten FoV-Einstellungen übereinstimmt. Wenn das Standard-FoV nicht das breiteste FoV ist, sollte das Digital Window die Porch-Werte zur Darstellung breiterer Fenster verwenden.
KSPROPERTY_CAMERACONTROL_EXTENDED_DIGITALWINDOW_CONFIGCAPS muss unabhängig vom FoV-Steuerelementstatus dieselben Funktionen melden.
Das aktuelle manuelle Digital Window muss die aktuelle FoV-Einstellung widerspiegeln und umgekehrt, das letzte Steuerelement gewinnt.
Wenn ein manuelles Digital Window festgelegt ist, sollte das FoV intern in die kleinste verfügbare FoV-Einstellung geändert werden, die den ausgewählten Fensterbereich umfasst. Dies bedeutet, dass die Ursprungskoordinaten des Digital Window Änderungen im FoV verursachen können, auch wenn die Fenstergröße des Digital Window unverändert bleibt. Wenn sich beispielsweise die Ursprungskoordinaten des Digital Window in der oberen linken Ecke bei einer Fenstergröße von 0,4 befinden, gibt die FoV-Einstellung das breiteste verfügbare FoV an (in diesem Beispiel 120°), da es sonst diesen Bereich nicht umfasst. Wenn jedoch ein zweites Digital Window mit der gleichen Fenstergröße als mittlerer Ausschnitt erstellt wird, ist das reflektierte FoV wahrscheinlich etwas schmaler (in unserem Beispiel 75°).
Wenn KSCAMERA_EXTENDEDPROP_DIGITALWINDOW_AUTOFACEFRAMING unterstützt und festgelegt wird, muss der Treiber/das Gerät das FoV intern in die breiteste Einstellung ändern. Der GET-Vorgang für KSPROPERTY_CAMERACONTROL_EXTENDED_FIELDOFVIEW2 gibt beispielsweise die breiteste FoV-Einstellung zurück, wenn KSCAMERA_EXTENDEDPROP_DIGITALWINDOW_AUTOFACEFRAMING aktiviert ist. Jeder erfolgreiche SET-Vorgang für KSPROPERTY_CAMERACONTROL_EXTENDED_FIELDOFVIEW2 ändert das Digital Window jedoch zurück in den Modus KSCAMERA_EXTENDEDPROP_DIGITALWINDOW_MANUAL, da das letzte Steuerelement gewinnt.
Interoperabilität mit Steuerelementen für Zielregionen
Da dieses Steuerelement das scheinbare Ansichtsfeld (FoV) ändert, sollten Koordinaten, die über eine beliebige Zielregion (ROI) ausgewählt wurden, auf ihre Standardwerte zurückgesetzt werden, wenn ein SET für dieses Steuerelement ausgegeben wird. Die Liste der aktuellen ROI-Steuerelemente umfasst:
KSPROPERTY_CAMERACONTROL_REGION_OF_INTEREST_PROPERTY_ID
KSPROPERTY_CAMERACONTROL_EXTENDED_ROI_CONFIGCAPS / KSPROPERTY_CAMERACONTROL_EXTENDED_ROI_ISPCONTROL
Wenn wir ein zukünftiges Steuerelement definieren, das einen rechteckigen Bereich definiert, muss dieses Steuerelement auch zurückgesetzt werden.
Darüber hinaus geben Steuerelemente für Zielregionen ihre Bereiche relativ zum Ausgabefenster an, sodass die von ihnen angegebenen Koordinaten immer ein Rechteck im aktuellen Sichtfeld sind. Da dieses Steuerelement das aktuelle Ansichtsfeld ändert, muss ein Rechteck der Zielregion von der Kamera neu zugeordnet werden, damit es in das aktuelle Ansichtsfeld passt.
Anforderungen
Mindestens unterstützter Client: Windows 11, Version 24H2
Header: ksmedia.h (include Ksmedia.h)