Setting the Protection Level

This section applies only to Windows Server 2003 SP1 and later, and Windows XP SP2 and later.

The COPP command can set the protection level of a protection type on the physical connector associated with the DirectX VA COPP device. To set the protection level, the video miniport driver's COPPCommand function receives a pointer to a DXVA_COPPCommand structure with the guidCommandID member set to the DXVA_COPPSetProtectionLevel GUID and the CommandData member set to a pointer to a DXVA_COPPSetProtectionLevelCmdData structure that specifies the type of protection to set and the level at which to set the protection. If a protection level is not available for the protection type, the COPP command sets the protection level to COPP_NoProtectionLevelAvailable (-1). The COPP command might also specify some extended information in the ExtendedInfoChangeMask and ExtendedInfoData members of DXVA_COPPSetProtectionLevelCmdData for the video miniport driver to set for the protection type.

The following protection levels can be set for the indicated protection types:

  • For COPP_ProtectionType_ACP, set one of the following values from the COPP_ACP_Protection_Level enumerated type:
    • COPP_ACP_Level0 or COPP_ACP_LevelMin (0)
    • COPP_ACP_Level1 (1)
    • COPP_ACP_Level2 (2)
    • COPP_ACP_Level3 or COPP_ACP_LevelMax (3)
  • For COPP_ProtectionType_CGMSA, set one of the following values from the COPP_CGMSA_Protection_Level enumerated type:
    • COPP_CGMSA_Disabled or COPP_CGMSA_LevelMin (0)
    • COPP_CGMSA_CopyFreely (1)
    • COPP_CGMSA_CopyNoMore (2)
    • COPP_CGMSA_CopyOneGeneration (3)
    • COPP_CGMSA_CopyNever (4)
    • COPP_CGMSA_RedistributionControlRequired (0x08)
    • (COPP_CGMSA_RedistributionControlRequired + COPP_CGMSA_CopyNever) or COPP_CGMSA_LevelMax
  • For COPP_ProtectionType_HDCP, set one of the following values from the COPP_HDCP_Protection_Level enumerated type:
    • COPP_HDCP_Level0 or COPP_HDCP_LevelMin (0)
    • COPP_HDCP_Level1 or COPP_HDCP_LevelMax (1)