Bagikan melalui


Panduan memunculkan driver kamera

Topik ini membahas cara mengaktifkan autentikasi wajah untuk kamera inframerah (IR) dan dimaksudkan untuk produsen peralatan asli (OEM) dan vendor perangkat keras independen (IHV) yang ingin menyediakan fungsionalitas ini di perangkat mereka.

FrameServer

Diagram berikut menunjukkan cara kerja autentikasi wajah dengan tumpukan driver baru melalui FrameServer:

windows hello dan frameserver.

DDI autentikasi wajah

Ada dua konstruksi DDI autentikasi wajah baru yang tersedia di Windows 10, versi 1607 untuk mendukung Windows Hello:

  • KSPROPERTY_CAMERACONTROL_EXTENDED_FACEAUTH_MODE

    ID properti ini digunakan untuk mengaktifkan dan mengonfigurasi autentikasi wajah di driver menggunakan bendera berikut:

    • KSCAMERA_EXTENDEDPROP_FACEAUTH_MODE_DISABLED

    • KSCAMERA_EXTENDEDPROP_FACEAUTH_MODE_ALTERNATIVE_FRAME_ILLUMINATION

    • KSCAMERA_EXTENDEDPROP_FACEAUTH_MODE_BACKGROUND_SUBTRACTION

    Untuk informasi selengkapnya tentang kontrol ini dan cara menggunakan bendera bit untuk mengatur mode autentikasi wajah, lihat topik KSPROPERTY_CAMERACONTROL_EXTENDED_FACEAUTH_MODE.

  • MF_CAPTURE_METADATA_FRAME_ILLUMINATION

    Atribut metadata untuk kamera runtime integrasi ini menentukan bahwa bingkai menggunakan iluminasi runtime integrasi aktif. Untuk informasi selengkapnya, lihat tabel atribut metadata wajib dalam topik Atribut Metadata Statistik Pengambilan.

Dukungan kamera USB

Untuk mengaktifkan autentikasi wajah untuk kamera inframerah di perangkat, Anda harus menyediakan komponen DeviceMFT yang dikonfigurasi dengan benar dan unit ekstensi USB Video Class (UVC).

Mengonfigurasi komponen DeviceMFT

Sebagai titik awal untuk membangun komponen DeviceMFT yang mendukung autentikasi wajah di perangkat, Anda dapat menggunakan sampel sampledevicemft .

Untuk mengubah sampel driver, buat perubahan berikut pada kode sumber sampel:

  1. Menambahkan informasi Jenis sumber di komponen DeviceMFT

  2. Tandai bendera iluminasi di komponen DeviceMFT

  3. Konversikan IKSControl di komponen DeviceMFT untuk berkomunikasi dengan unit ekstensi UVC yang akan Anda bangun di bagian berikutnya:

Membangun Unit Ekstensi USB Video Class (UVC)

Untuk membangun unit ekstensi UVC untuk perangkat Anda, ikuti instruksi dalam Membangun Kontrol Sampel Unit Ekstensi. Topik ini berisi informasi tentang membuat file proyek yang diperlukan dan menyediakan tautan ke kode sampel dalam topik berikut:

Antarmuka Sampel untuk Unit Ekstensi UVC (berisi Interface.idl)

Dll Plug-in Unit Ekstensi Sampel (berisi Xuproxy.h dan Xuproxy.cpp)

Contoh Entri Registri untuk Unit Ekstensi UVC (berisi Xusample.rgs)

Aplikasi Sampel untuk Unit Ekstensi UVC (berisi TestApp.cpp)

Mendukung Peristiwa Autoupdate dengan Unit Ekstensi

Contoh Deskriptor Unit Ekstensi

Menyediakan File INF UVC

Lihat topik Arsitektur Plug-In Unit Ekstensi untuk informasi selengkapnya tentang cara modul kode sampel bekerja sama.

Entri file INF

Untuk mendaftarkan perangkat UVC di bawah KSCATEGORY_SENSOR_CAMERA, bendera promosi kamera sensor harus ditentukan:

HKR,,SensorCameraMode,0x00010001,0x00000001

Untuk menyembunyikan kamera ini dari aplikasi kamera biasa karena tidak memiliki aliran RGB, gunakan bendera enumerasi lewati sebagai berikut:

HKR,,SkipCameraEnumeration,0x00010001,0x00000001

Ini menghapus kamera dari KSCATEGORY_VIDEO, yang akan memblokirnya agar tidak dijumlahkan melalui enumerasi warisan oleh aplikasi kamera reguler.

Entri SkipCameraEnumeration dan SensorCameraMode harus ditempatkan di bagian DDInstall.HW dari file INF.

Tes HLK untuk KSCATEGORY_SENSOR_CAMERA untuk membantu pengujian driver

Pengujian Hardware Logo Kit (HLK) diperlukan untuk modul kamera IR dan RGB. Pengujian ini memverifikasi fungsionalitas dasar kamera RGB dan IR yang digunakan untuk autentikasi wajah Windows Hello. Persyaratan kamera RGB sudah ditentukan dalam rangkaian pengujian HLK.

Ini adalah pengujian yang perlu diteruskan modul kamera runtime integrasi untuk diaktifkan:

  1. Menghitung semua Kamera Kategori Sensor KS:

    • Perangkat yang mendukung aliran IR harus berada di bawah kategori SENSOR_CAMERA.

    • Perangkat yang mendukung aliran RGB berada di bawah kategori VIDEO_CAMERA.

    • Hanya untuk perangkat kamera tunggal yang mendukung aliran IR dan RGB, harus mendaftarkan perangkat di bawah kategori KSCAMERA: SENSOR_CAMERA dan VIDEO_CAMERA.

  2. Temukan aliran yang memiliki atribut MF_DEVICESTREAM_ATTRIBUTE_FACEAUTH_CAPABILITY yang ditentukan:

    • Jika tidak ada aliran yang memiliki atribut MF_DEVICESTREAM_ATTRIBUTE_FACEAUTH_CAPABILITY yang ditentukan, lewati pengujian.

    • Jika beberapa aliran memiliki atribut MF_DEVICESTREAM_ATTRIBUTE_FACEAUTH_CAPABILITY yang ditentukan, gagalkan pengujian, karena hanya satu aliran yang dapat dilakukan Windows Hello.

    • Jika MF_DEVICESTREAM_ATTRIBUTE_FRAMESOURCE_TYPES tidak diatur ke runtime integrasi untuk aliran ini, gagalkan pengujian, karena tidak boleh ada jenis media RGB pada aliran ini.

    • Pilih aliran ini dan validasi bahwa jenis media mampu Windows Hello (MJPG/L8/NV12) dan resolusinya lebih besar dari atau sama dengan 320 x 320 piksel:

      1. Jika Profil Autentikasi Wajah didukung, maka validasi aliran ini untuk jenis media profil.

      2. Jika Profil Autentikasi Wajah tidak didukung, validasi jenis media default aliran ini.

    • Periksa dukungan untuk salah satu properti dalam DDI autentikasi wajah: Penerangan/tidak disinar atau kurangi sekitar.

    • Atur properti KS ke properti yang didukung.

    • Memulai streaming

  3. Periksa properti run-time:

    • Verifikasi presisi tanda waktu (uji pratinjau untuk Autentikasi Wajah dengan Meta Data).

    • Verifikasi bahwa startup kurang dari 500 milidetik (uji pratinjau untuk Autentikasi Wajah dengan Meta Data).

    • Verifikasi streaming pada kecepatan bingkai minimum dengan parameter berikut: 15 FPS diterangi dan 15 FPS sekitar atau 15 FPS kurang, resolusi lebih besar dari atau sama dengan 320 x 320 piksel, jenis media L8/NV12, langkah positif pada sampel:

      1. Jika properti yang diterangi diaktifkan, periksa metadata pada bingkai (bingkai pasangan yang diterangi/tidak diterangi pada 15 FPS).

      2. Jika properti pengurangan sekitar diaktifkan, periksa tidak ada metadata pada bingkai (bingkai sekitar pada 15 FPS).

  4. Hentikan streaming

  5. Membatalkan pengaturan Kontrol KS

  6. Konkurensi untuk RGB + IR: diuji jika ditentukan dalam profil kamera

Jika pengujian HLK yang tercantum di atas tidak lulus, Microsoft tidak akan mengeluarkan driver yang ditandatangani ke OEM, dan Windows Hello tidak akan beroperasi.

Mengambil foto dan video dengan MediaCapture

Namespace Windows.Media.Capture