Bagikan melalui


METODE IMFExtendedCameraControl::GetCapabilities (mfidl.h)

Kueri untuk kemampuan properti yang didukung oleh perangkat pengambilan.

Sintaks

ULONGLONG GetCapabilities();

Mengembalikan nilai

Pemetaan ULONGLONG ke kemampuan properti. Properti dan kemampuan yang didukung didefinisikan dalam file header yang ditentukan dalam ksmedia.h sebagai konstanta dengan konvensi penamaan KSCAMERA_EXTENDEDPROP_. Untuk informasi selengkapnya, lihat KSPROPERTYSETID_ExtendedCameraControl.

Keterangan

Verifikasi keberadaan kemampuan tertentu dengan melakukan operasi AND bitwise dengan nilai pengembalian fungsi ini. Beberapa driver mungkin mengharuskan pratinjau perangkat kamera dalam keadaan berjalan sebelum dapat menentukan kontrol mana yang didukung. Jika Anda memeriksa apakah kontrol tertentu didukung sebelum aliran pratinjau berjalan, kontrol dapat digambarkan sebagai tidak didukung (dan dengan demikian tidak tersedia) meskipun didukung oleh perangkat video.

Contoh berikut menunjukkan dukungan kueri untuk kemampuan 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());
    }
}

Persyaratan

Persyaratan Nilai
Klien minimum yang didukung Windows 10 Build 20348
Server minimum yang didukung Windows 10 Build 20348
Header mfidl.h