Expand Minimize

DRMRIGHTS structure

The DRMRIGHTS structure specifies the DRM content rights assigned to a KS audio pin or to a port-class driver's stream object.

Syntax


typedef struct tagDRMRIGHTS {
  BOOL  CopyProtect;
  ULONG Reserved;
  BOOL  DigitalOutputDisable;
} DRMRIGHTS, *PDRMRIGHTS;

Members

CopyProtect

Specifies one of the following copy-protection values:

TRUE

Enables copy protection. An audio application must not do the following:

  • Store the content in any form in any nonvolatile storage.

  • Pass the content by reference or by value to any other component within the host system that is not authenticated by the DRM system.

FALSE

Disables copy protection. Content can be copied without restrictions.

For more information about CopyProtect, see the Remarks section.

Reserved

Reserved for future use. Initialize to zero.

DigitalOutputDisable

Specifies one of the following digital output protection values:

TRUE

Disable digital outputs. A software component must not transfer the content out of the host system through any type of digital interface. Note that digital output protection does not affect USB devices because the host system includes USB devices.

FALSE

Enables digital outputs. Content can be transferred from the host system to an external component without restrictions.

For more information about DigitalOutputDisable, see the Remarks section.

Remarks

The Windows Certification Program places specific requirements on the way an audio driver handles the CopyProtect and DigitalOutputDisable values. These requirements are applicable when the CopyProtect and DigitalOutputDisable values are applied to an audio stream and to the output from which the audio stream is accessed. New requirements for Windows 7 include the correct way to program the serial copy management system (SCMS) for S/PDIF endpoints, and high-bandwidth digital content protection (HDCP) for HDMI endpoints.

The following table summarizes the content protection state that the driver must establish for different values of CopyProtect and DigitalOutputDisable.

DRMRIGHTS Boolean members

Resulting content protection

DigitalOutputDisable

CopyProtect

HDMI and Display port

S/PDIF

False

False

Enabled with no HDCP

Enabled with no SCMS

False

True

Enabled with HDCP

Enabled with SCMS

True

Don't care

Enabled with HDCP

Disabled

 

Note   If the driver is unable to apply HDCP or SCMS correctly, the driver must disable output to the endpoint.

When an audio driver applies SCMS copy protection to a S/PDIF endpoint, the audio driver uses a combination of the L, Cp, and Category Code bits to select an SCMS state of "Copy Never." For more information about copy protection for digital content, see IEC 60958 on the IEC website.

If the driver supports DRMRIGHTS and also implements a proprietary copy protection mechanism, the driver must aggregate the result of the proprietary implementation with the values of CopyProtect and DigitalOutputDisable to determine the final copy protection state. The final copy protection state must be the most restrictive of all outstanding copy protection requests.

Be aware that the DEFINE_DRMRIGHTS_DEFAULT macro can be used to initialize a new DRMRIGHTS structure with default values.

Requirements

Header

Drmk.h (include Drmk.h)

See also

DrmCreateContentMixed
DrmDestroyContent
DrmForwardContentToFileObject
DrmForwardContentToInterface
DrmGetContentRights
IEC 60958

 

 

Send comments about this topic to Microsoft

Show:
© 2014 Microsoft