Supporting Output Protection Manager
The Output Protection Manager (OPM) device driver interface (DDI) enables the copy protection of video signals that are output by various connectors of the graphics adapter. To learn more about how Windows Vista protects the content that graphics adapters output, download the Output Content Protection document at the Output Content Protection and Windows Vista website.
OPM is the successor to the Certified Output Protection Protocol (COPP) that the Windows 2000 display driver model provides. OPM supports all of COPP's features. For information about COPP's features, see Introduction to COPP. OPM also supports new features.
OPM Interface
The OPM DDI is semantically similar to the COPP DDI because OPM is essentially COPP 1.1 for the Windows Vista display driver model. However, the OPM DDI is much simpler than the COPP DDI because the OPM DDI consists of a set of functions while the COPP DDI is mapped through the DirectDraw and DirectX Video Acceleration (VA) DDI.
If a display miniport driver supports the passing of protected commands, information, and status between applications and the driver, the Microsoft DirectX graphics kernel subsystem (Dxgkrnl.sys) can successfully open the driver's OPM DDI.
A kernel-mode component that must use the OPM interface initiates a call to the display miniport driver's DxgkDdiQueryInterface function to retrieve the interface. Pointers to the OPM interface functions are returned in a DXGK_OPM_INTERFACE structure that the Interface member of the QUERY_INTERFACE structure points to. This QUERY_INTERFACE is pointed to by the QueryInterface parameter in the DxgkDdiQueryInterface call.
The following Output Protection Manager (OPM) interface functions are implemented by some display miniport drivers:
- DXGKDDI_OPM_GET_CERTIFICATE_SIZE
- DXGKDDI_OPM_GET_CERTIFICATE
- DXGKDDI_OPM_CREATE_PROTECTED_OUTPUT
- DXGKDDI_OPM_GET_RANDOM_NUMBER
- DXGKDDI_OPM_SET_SIGNING_KEY_AND_SEQUENCE_NUMBERS
- DXGKDDI_OPM_GET_INFORMATION
- DXGKDDI_OPM_GET_COPP_COMPATIBLE_INFORMATION
- DXGKDDI_OPM_CONFIGURE_PROTECTED_OUTPUT
- DXGKDDI_OPM_DESTROY_PROTECTED_OUTPUT
The following topics describe the new features of OPM and how to support and use the OPM DDI:
Performing a Hardware Functionality Scan
Handling Protection Levels with OPM
Handling the Loss of a Display Device
Retrieving Information About a Protected Output
Retrieving COPP-Compatible Information about a Protected Output
Configuring a Protected Output