Condividi tramite


VideoDeviceController.CameraOcclusionInfo Proprietà

Definizione

Ottiene un oggetto CameraOcclusionInfo che può essere utilizzato per ottenere lo stato di occlusione corrente di una fotocamera e ricevere notifiche quando cambia lo stato di occlusione.

public:
 property CameraOcclusionInfo ^ CameraOcclusionInfo { CameraOcclusionInfo ^ get(); };
CameraOcclusionInfo CameraOcclusionInfo();
public CameraOcclusionInfo CameraOcclusionInfo { get; }
var cameraOcclusionInfo = videoDeviceController.cameraOcclusionInfo;
Public ReadOnly Property CameraOcclusionInfo As CameraOcclusionInfo

Valore della proprietà

CameraOcclusionInfo per il dispositivo di acquisizione.

Requisiti Windows

Famiglia di dispositivi
Windows 11 (è stato introdotto in 10.0.22000.0)
API contract
Windows.Foundation.UniversalApiContract (è stato introdotto in v14.0)

Esempio

Il codice di esempio seguente illustra l'uso della classe CameraOcclusionInfo per monitorare lo stato di occlusione della fotocamera.

protected override async void OnNavigatedTo(NavigationEventArgs e)
{
    await mediaCapture.InitializeAsync();

    var occlusionInfo = mediaCapture.VideoDeviceController.CameraOcclusionInfo;
    occlusionInfo.StateChanged += CameraOcclusionInfo_StateChanged;

}

private void CameraOcclusionInfo_StateChanged(CameraOcclusionInfo sender, CameraOcclusionStateChangedEventArgs args)
{
    if (args.State.IsOccluded)
    {
        String occlusionString = "";
        if (args.State.IsOcclusionKind(CameraOcclusionKind.Lid))
        {
            occlusionString = "Lid";
        }
        else if (args.State.IsOcclusionKind(CameraOcclusionKind.CameraHardware))
        {
            occlusionString = "Camera Hardware";
        }
        else
        {
            occlusionString = "Unknown";
        }
        Debug.WriteLine(String.Format("The camera view is blocked by {0}", occlusionString);
    }
    else
    {
        Debug.WriteLine("Camera is not occluded");
    }
}

Commenti

È consigliabile usare solo i dati dello stato dell'otturatore ottenuti tramite questa proprietà mentre la fotocamera è in streaming attivo. Le app devono rispondere in modo logico quando rilevano che l'otturatore è chiuso. Deve includere un messaggio in-app per aprire l'otturatore. Le applicazioni non devono eseguire automaticamente un'azione (ad esempio, disattivare la fotocamera) o impedire all'utente di eseguire un'azione (ad esempio, attivare la fotocamera) in base allo stato dell'otturatore, perché non tutte le fotocamere segnalano in modo affidabile lo stato dell'otturatore quando non lo streaming. Le applicazioni non devono considerare lo stato dell'otturatore segnalato come un indicatore di privacy assoluto: è solo una notifica che la fotocamera ritiene che l'otturatore sia chiuso.

Si applica a