MFPKEY_PMP_Creation_Callback 属性
设置在源解析期间创建 PMP 媒体会话 的回调。
数据类型
PROPVARIANT 类型 (vt)
PROPVARIANT 成员
IUnknown*
VT_UNKNOWN
punkVal
备注
某些受保护的内容可能需要使用此属性。 如果是这样,则源解析过程将失败, 错误代码MF_E_RESOLUTION_REQUIRES_PMP_CREATION_CALLBACK。
若要使用此属性,请执行以下操作。
- 调用 PSCreateMemoryPropertyStore 以创建属性存储。
- 实现 IMFAsyncCallback 回调接口。
- 在属性存储中设置MFPKEY_PMP_Creation_Callback属性。 值是指向 IMFAsyncCallback 实现的指针。
- 调用 IMFSourceResolver::BeginCreateObjectFromURL。 在 pProps 参数中传入指向属性存储的指针。
在回调接口的 IMFAsyncCallback::Invoke 方法中,执行以下操作。
- 调用 MFCreatePMPMediaSession 以创建 PMP 媒体会话。
- 在 PMP 媒体会话上调用 IMFGetService::GetService ,以指向 IMFPMPHost 接口的指针。
- 对在 IMFAsyncCallback::Invoke 的 pAsyncResult 参数中传递的结果对象调用 IMFAsyncResult::GetState。 查询 IMFAsyncCallback 接口返回的 IUnknown 指针。
- 使用以下参数调用 MFPutWorkItem :
- dwQueue: MFASYNC_CALLBACK_QUEUE_STANDARD
- pCallback:在步骤 3 中获取的 IMFAsyncCallback 指针。
- pState:在步骤 2 中获取的 IMFPMPHost 指针。
要求
要求 | 值 |
---|---|
最低受支持的客户端 |
Windows 8 [桌面应用 |UWP 应用] |
最低受支持的服务器 |
Windows Server 2012 [桌面应用 |UWP 应用] |
标头 |
|
另请参阅