Метод IMFExtendedCameraControl::SetFlags (mfidl.h)
Задает флаги для свойства на устройстве захвата.
Синтаксис
HRESULT SetFlags(
ULONGLONG ulFlags
);
Параметры
ulFlags
Сопоставление ULONGLONG с флагами свойств. Поддерживаемые свойства и флаги определяются в файле заголовка, определенном в ksmedia.h, как константы с соглашением об именовании KSCAMERA_EXTENDEDPROP_. Дополнительные сведения см. в разделе KSPROPERTYSETID_ExtendedCameraControl.
Возвращаемое значение
Возвращает S_OK при успешном выполнении.
Комментарии
Перед установкой флага свойства можно проверка поддерживаемые возможности, вызвав МЕТОД IMFExtendedCameraControl::GetCapabilities. В следующем примере показана поддержка запросов для возможности 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());
}
}
Требования
Минимальная версия клиента | Windows 10 сборки 20348 |
Минимальная версия сервера | Windows 10 сборки 20348 |
Верхняя часть | mfidl.h |