以下是 ID3D11CryptoSession 接口的定义:
DECLARE_INTERFACE_(ID3D11CryptoSession, ID3D11DeviceChild)
{
STDMETHOD(GetCryptoType)(THIS_ GUID* pCryptoType) PURE;
STDMETHOD(DecodeFrame)(THIS_ ID3D11AuthenticatedChannel* pAuthenticatedChannel, const void* pData, UINT DataSize, ID3D11CryptoSession *pDecoderOutput, UINT *pOutputSize) PURE;
STDMETHOD(EncryptionBlt)(THIS_ ID3D11CryptoSession *pCryptoSession, ID3D11Texture2D *pSrcSurface, ID3D11Texture2D *pDstSurface, UINT IVSize, void *pIV) PURE;
};
ID3D11CryptoSession 接口派生自 ID3D11DeviceChild 接口,并提供了以下几个成员函数:
- GetCryptoType 方法:获取加密会话的类型。
- DecodeFrame 方法:解码一个帧,并将结果写入到输出缓冲区。
- EncryptionBlt 方法:加密一个纹理表面的内容。
这个接口主要用于在受到版权保护的环境中,通过硬件加速的方式进行视频解码和加密。它通常与其它 DRM 相关的接口和技术一起使用,以确保数字媒体内容的安全传输和处理。
转载请注明出处:http://www.zyzy.cn/article/detail/25782/Win32 API/D3d11.h/ID3D11CryptoSession