Bagikan melalui


Status Pelaporan Output yang Dilindungi

Peristiwa eksternal dapat mengubah sifat perlindungan yang diterapkan ke konektor atau bahkan memodifikasi jenis konektor. Driver miniport tampilan harus melaporkan peristiwa ini ke aplikasi OPM setiap kali driver menerima panggilan ke fungsi DxgkDdiOPMGetInformation atau DxgkDdiOPMGetCOPPCompatibleInformation . Driver miniport tampilan harus melaporkan peristiwa eksternal berikut dengan mengembalikan bendera status yang ditentukan dari enumerasi DXGKMDT_OPM_STATUS hanya pada panggilan berikutnya ke DxgkDdiOPMGetInformation atau DxgkDdiOPMGetCOPPCompatibleInformation setelah peristiwa terjadi:

Koneksi berfungsi dengan baik
Jika koneksi antara komputer dan perangkat tampilan berfungsi dengan baik, driver miniport tampilan harus mengatur bendera status DXGKMDT_OPM_STATUS_NORMAL di anggota ulStatusFlags dari struktur DXGKMDT_OPM_STANDARD_INFORMATION, DXGKMDT_OPM_ACTUAL_OUTPUT_FORMAT, DXGKMDT_OPM_ACP_AND_CGMSA_SIGNALING, atau DXGKMDT_OPM_CONNECTED_HDCP_DEVICE_INFORMATION .

Integritas koneksi
Jika komputer dan perangkat tampilan terputus, driver miniport tampilan harus mengatur bendera status DXGKMDT_OPM_STATUS_LINK_LOST di anggota ulStatusFlags dari struktur DXGKMDT_OPM_STANDARD_INFORMATION, DXGKMDT_OPM_ACTUAL_OUTPUT_FORMAT, DXGKMDT_OPM_ACP_AND_CGMSA_SIGNALING, atau DXGKMDT_OPM_CONNECTED_HDCP_DEVICE_INFORMATION.

Konfigurasi ulang konektor
Jika pengguna akhir menyebabkan konfigurasi konektor fisik berubah, driver miniport tampilan harus mengatur bendera status DXGKMDT_OPM_STATUS_RENEGOTIATION_REQUIRED di anggota ulStatusFlags dari struktur DXGKMDT_OPM_STANDARD_INFORMATION, DXGKMDT_OPM_ACTUAL_OUTPUT_FORMAT, DXGKMDT_OPM_ACP_AND_CGMSA_SIGNALING, atau DXGKMDT_OPM_CONNECTED_HDCP_DEVICE_INFORMATION.

Gangguan
Jika terjadi perusakan adaptor grafis atau driver miniport tampilan adaptor, driver miniport tampilan harus mengatur bendera status DXGKMDT_OPM_STATUS_TAMPERING_DETECTED di anggota ulStatusFlags dari struktur DXGKMDT_OPM_STANDARD_INFORMATION, DXGKMDT_OPM_ACTUAL_OUTPUT_FORMAT, DXGKMDT_OPM_ACP_AND_CGMSA_SIGNALING, atau DXGKMDT_OPM_CONNECTED_HDCP_DEVICE_INFORMATION.

Perangkat HDCP yang dicabut
Jika perangkat Perlindungan Konten Digital Bandwidth Tinggi (HDCP) yang dicabut secara langsung atau tidak langsung dilampirkan ke konektor dan jika HDCP diaktifkan, driver miniport tampilan harus mengatur bendera status DXGKMDT_OPM_STATUS_REVOKED_HDCP_DEVICE_ATTACHED di anggota ulStatusFlags dari struktur DXGKMDT_OPM_STANDARD_INFORMATION atau DXGKMDT_OPM_ACTUAL_OUTPUT_FORMAT. Jika HDCP tidak diaktifkan, driver tidak diperlukan untuk mengatur bendera status ini. Driver menetapkan nilai status ini hanya dari panggilan ke fungsi DxgkDdiOPMGetInformation untuk menentukan apakah HDCP diaktifkan.

Driver miniport tampilan mengembalikan penunjuk ke struktur DXGKMDT_OPM_STANDARD_INFORMATION, DXGKMDT_OPM_ACTUAL_OUTPUT_FORMAT, DXGKMDT_OPM_ACP_AND_CGMSA_SIGNALING, atau DXGKMDT_OPM_CONNECTED_HDCP_DEVICE_INFORMATION dalam anggota abRequestedInformation dari struktur DXGKMDT_OPM_REQUESTED_INFORMATION . Pointer ke DXGKMDT_OPM_REQUESTED_INFORMATION dikembalikan melalui parameter RequestedInformation dari DxgkDdiOPMGetInformation atau DxgkDdiOPMGetCOPPCompatibleInformation.

Misalnya, pertimbangkan dua aplikasi pemutaran media, A dan B. Setiap kontrol aplikasi, melalui OPM, tingkat perlindungan HDCP konektor yang melampirkan komputer ke monitor tampilan. Setiap aplikasi mengontrol output terlindungi uniknya sendiri. Jika konektor menjadi dicabut, lain kali salah satu aplikasi memulai permintaan DxgkDdiOPMGetInformation atau DxgkDdiOPMGetCOPPCompatibleInformation ke output yang dilindungi, driver miniport tampilan harus mengembalikan bendera status DXGKMDT_OPM_STATUS_LINK_LOST.

Asumsikan aplikasi A adalah yang pertama memulai panggilan ke DxgkDdiOPMGetInformation atau DxgkDdiOPMGetCOPPCompatibleInformation pada output yang dilindungi. Aplikasi A kemudian menerima bendera DXGKMDT_OPM_STATUS_LINK_LOST dan bertindak sesuai. Jika aplikasi A memulai panggilan DxgkDdiOPMGetInformation atau DxgkDdiOPMGetCOPPCompatibleInformation berikutnya, itu tidak boleh menerima bendera DXGKMDT_OPM_STATUS_LINK_LOST, kecuali konektor dicabut lagi. Ketika aplikasi B memulai panggilan ke DxgkDdiOPMGetInformation atau DxgkDdiOPMGetCOPPCompatibleInformation pada output yang dilindungi, aplikasi menerima bendera DXGKMDT_OPM_STATUS_LINK_LOST dan bertindak sesuai. Sekali lagi, aplikasi B tidak boleh menerima bendera DXGKMDT_OPM_STATUS_LINK_LOST lagi sampai konektor dilepas lagi.