IMFContentProtectionManager interface

Enables playback of protected content by providing the application with a pointer to a content enabler object.

Applications that play protected content should implement this interface.

Members

The IMFContentProtectionManager interface inherits from the IUnknown interface. IMFContentProtectionManager also has these types of members:

Methods

The IMFContentProtectionManager interface has these methods.

MethodDescription
BeginEnableContent

Begins an asynchronous request to perform a content enabling action.

EndEnableContent

Ends an asynchronous request to perform a content enabling action.

RemoteBeginEnableContent

Remotable version of BeginEnableContent. (Not used by applications.)

RemoteEndEnableContent

Remotable version of EndEnableContent. (Not used by applications.)

 

Remarks

A content enabler is an object that performs some action that is required to play a piece of protected content. For example, the action might be obtaining a DRM license. Content enablers expose the IMFContentEnabler interface, which defines a generic mechanism for content enabler. Content enablers are created inside the protected media path (PMP) process. However, they must be invoked from the application process. Therefore, the IMFContentProtectionManager interface provides a way for the PMP Media Session to notify the application.

To use this interface, do the following:

  1. Implement the interface in your application.

  2. Create an attribute store by calling MFCreateAttributes.

  3. Set the MF_SESSION_CONTENT_PROTECTION_MANAGER attribute on the attribute store. The attribute value is a pointer to your IMFContentProtectionManager implementation.

  4. Call MFCreatePMPMediaSession and pass the attribute store in the pConfiguration parameter.

If the content requires a content enabler, the application's BeginEnableContent method is called. Usually this method called during the IMFMediaSession::SetTopology operation, before the Media Session raises the MESessionTopologySet event. The application might receive multiple BeginEnableContent calls for a single piece of content. The MESessionTopologySet event signals that the content-enabling process is complete for the current topology. The BeginEnableContent method can also be called outside of the SetTopology operation, but less commonly.

Many content enablers send machine-specific data to the network, which can have privacy implications. One of the purposes of the IMFContentProtectionManager interface is to give applications an opportunity to display information to the user and enable to user to opt in or out of the process.

Requirements

Minimum supported client

Windows Vista [desktop apps | Windows Store apps]

Minimum supported server

Windows Server 2008 [desktop apps | Windows Store apps]

Header

Mfidl.h

Library

Mfuuid.lib

See also

Media Foundation Interfaces

 

 

Community Additions

ADD
Show:
© 2014 Microsoft