VideoDeviceController.CameraOcclusionInfo Properti
Definisi
Penting
Beberapa informasi terkait produk prarilis yang dapat diubah secara signifikan sebelum dirilis. Microsoft tidak memberikan jaminan, tersirat maupun tersurat, sehubungan dengan informasi yang diberikan di sini.
Mendapatkan objek CameraOcclusionInfo yang dapat digunakan untuk mendapatkan status oklusi kamera saat ini dan menerima pemberitahuan saat status oklusi berubah.
public:
property CameraOcclusionInfo ^ CameraOcclusionInfo { CameraOcclusionInfo ^ get(); };
CameraOcclusionInfo CameraOcclusionInfo();
public CameraOcclusionInfo CameraOcclusionInfo { get; }
var cameraOcclusionInfo = videoDeviceController.cameraOcclusionInfo;
Public ReadOnly Property CameraOcclusionInfo As CameraOcclusionInfo
Nilai Properti
CameraOcclusionInfo untuk perangkat pengambilan.
Persyaratan Windows
Rangkaian perangkat |
Windows 11 (diperkenalkan dalam 10.0.22000.0)
|
API contract |
Windows.Foundation.UniversalApiContract (diperkenalkan dalam v14.0)
|
Contoh
Contoh kode berikut mengilustrasikan penggunaan kelas CameraOcclusionInfo untuk memantau status oklusi kamera.
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");
}
}
Keterangan
Anda hanya boleh menggunakan data status rana yang diperoleh melalui properti ini saat kamera sedang aktif melakukan streaming. Aplikasi harus merespons secara logis saat mendeteksi bahwa rana ditutup. Ini harus mencakup pesan dalam aplikasi untuk membuka rana. Aplikasi tidak boleh secara otomatis mengambil tindakan (misalnya, mematikan kamera) atau memblokir pengguna untuk melakukan tindakan (misalnya, menyalakan kamera) berdasarkan status rana, karena tidak setiap kamera akan dengan andal melaporkan status rana saat tidak melakukan streaming. Aplikasi tidak boleh memperlakukan status rana yang dilaporkan sebagai indikator privasi absolut - hanya pemberitahuan bahwa kamera percaya rana ditutup.