Compartilhar via


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

Consulta sinalizadores de propriedade no dispositivo de captura.

Sintaxe

ULONGLONG GetFlags();

Retornar valor

Um mapeamento ULONGLONG para sinalizadores de propriedade. As propriedades e sinalizadores com suporte são definidos no arquivo de cabeçalho definido em ksmedia.h como constantes com a convenção de nomenclatura KSCAMERA_EXTENDEDPROP_. Para obter mais informações, consulte KSPROPERTYSETID_ExtendedCameraControl.

Comentários

Defina os sinalizadores de propriedade no dispositivo de captura chamando IMFExtendedCameraControl::SetFlags. Antes de definir um sinalizador de propriedade, você pode marcar para recursos com suporte chamando IMFExtendedCameraControl::GetCapabilities. O exemplo a seguir demonstra o suporte à consulta para a funcionalidade de 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());
    }
}

Requisitos

Requisito Valor
Cliente mínimo com suporte Windows 10 Build 20348
Servidor mínimo com suporte Windows 10 Build 20348
Cabeçalho mfidl.h