IMFInputTrustAuthority::GetDecrypter method

Retrieves a decrypter transform.

Syntax

HRESULT GetDecrypter(
  REFIID riid,
  void   **ppv
);

Parameters

riid

Interface identifier (IID) of the interface being requested. Currently this value must be IID_IMFTransform, which requests the IMFTransform interface.

ppv

Receives a pointer to the interface. The caller must release the interface.

Return Value

The method returns an HRESULT. Possible values include, but are not limited to, those in the following table.

Return code Description
S_OK
The method succeeded.
E_NOINTERFACE
The decrypter does not support the requested interface.
MF_E_NOT_PROTECTED
This input trust authority (ITA) does not provide a decrypter.

Remarks

The decrypter should be created in a disabled state, where any calls to IMFTransform::ProcessOutput automatically fail. After the input trust authority (ITA) has verified that it is running inside the protected media path (PMP), the ITA should enable the decrypter.

An ITA is not required to provide a decrypter. If the source content is not encrypted, the method should return MF_E_NOT_PROTECTED. The PMP will then proceed without using a decrypter for that stream.

The ITA must create a new instance of its decrypter for each call to GetDecrypter. Do not return multiple references to the same decrypter. They must be separate instances because the Media Session might place them in two different branches of the topology.

Requirements

   
Minimum supported client Windows Vista [desktop apps | UWP apps]
Minimum supported server Windows Server 2008 [desktop apps | UWP apps]
Target Platform Windows
Header mfidl.h
Library Mfuuid.lib

See Also

IMFInputTrustAuthority