Partager via


Méthode IMFExtendedCameraControl ::GetFlags (mfidl.h)

Requêtes pour les indicateurs de propriété sur l’appareil de capture.

Syntaxe

ULONGLONG GetFlags();

Valeur de retour

Mappage ULONGLONG aux indicateurs de propriété. Les propriétés et indicateurs pris en charge sont définis dans le fichier d’en-tête défini dans ksmedia.h en tant que constantes avec la convention de nommage KSCAMERA_EXTENDEDPROP_. Pour plus d’informations, consultez KSPROPERTYSETID_ExtendedCameraControl.

Remarques

Définissez les indicateurs de propriété sur l’appareil de capture en appelant IMFExtendedCameraControl ::SetFlags. Avant de définir un indicateur de propriété, vous pouvez case activée pour les fonctionnalités prises en charge en appelant IMFExtendedCameraControl ::GetCapabilities. L’exemple suivant illustre la prise en charge des requêtes pour la fonctionnalité KSCAMERA_EXTENDEDPROP_VIDEOTORCH_ON .

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());
    }
}

Configuration requise

Condition requise Valeur
Client minimal pris en charge Windows 10 Build 20348
Serveur minimal pris en charge Windows 10 Build 20348
En-tête mfidl.h