Share via


IMFExtendedCameraControl::SetFlags-Methode (mfidl.h)

Legt die Flags für eine Eigenschaft auf dem Aufnahmegerät fest.

Syntax

HRESULT SetFlags(
  ULONGLONG ulFlags
);

Parameter

ulFlags

Eine ULONGLONG-Zuordnung zu Eigenschaftsflags. Unterstützte Eigenschaften und Flags werden in der in ksmedia.h definierten Headerdatei als Konstanten mit der Namenskonvention KSCAMERA_EXTENDEDPROP_ definiert. Weitere Informationen finden Sie unter KSPROPERTYSETID_ExtendedCameraControl.

Rückgabewert

Gibt bei Erfolg S_OK zurück.

Hinweise

Bevor Sie ein Eigenschaftenflag festlegen, können Sie nach unterstützten Funktionen suchen, indem Sie IMFExtendedCameraControl::GetCapabilities aufrufen. Im folgenden Beispiel wird die Abfrageunterstützung für die KSCAMERA_EXTENDEDPROP_VIDEOTORCH_ON-Funktion veranschaulicht.

if (FAILED(m_cameraController->GetExtendedCameraControl(MF_CAPTURE_ENGINE_MEDIASOURCE,
    KSPROPERTY_CAMERACONTROL_EXTENDED_TORCHMODE,
    cameraControl.put())))
{
    // Return false to indicate that the Torch Mode control is not available.
    return false;
}

ULONGLONG capabilities = cameraControl->GetCapabilities();

// Check if the torch can be turned on.
if (capabilities & KSCAMERA_EXTENDEDPROP_VIDEOTORCH_ON)
{
    // Check if the torch is off.
    if ((cameraControl->GetFlags() & KSCAMERA_EXTENDEDPROP_VIDEOTORCH_ON) == 0)
    {
        // Torch is off. Tell the camera to turn it on.
        check_hresult(cameraControl->SetFlags(KSCAMERA_EXTENDEDPROP_VIDEOTORCH_ON));
        // Write the changed settings to the driver.
        check_hresult(cameraControl->CommitSettings());
    }
}

Anforderungen

   
Unterstützte Mindestversion (Client) Windows 10 Build 20348
Unterstützte Mindestversion (Server) Windows 10 Build 20348
Kopfzeile mfidl.h