свойство MFPKEY_PMP_Creation_Callback

Задает обратный вызов, который создает сеанс мультимедиа PMP во время разрешения источника.

Тип данных

Тип PROPVARIANT (vt)

Член PROPVARIANT

Iunknown*

VT_UNKNOWN

punkVal

Комментарии

Для некоторых защищенных содержимого может потребоваться использование этого свойства. Если это так, процесс разрешения исходного кода завершается сбоем с кодом ошибки MF_E_RESOLUTION_REQUIRES_PMP_CREATION_CALLBACK.

Чтобы использовать это свойство, выполните следующие действия.

  1. Вызовите PSCreateMemoryPropertyStore , чтобы создать хранилище свойств.
  2. Реализуйте интерфейс обратного вызова IMFAsyncCallback .
  3. Задайте свойство MFPKEY_PMP_Creation_Callback в хранилище свойств. Значение является указателем на реализацию IMFAsyncCallback .
  4. Вызовите imfSourceResolver::BeginCreateObjectFromURL. Передайте указатель на хранилище свойств в параметре pProps .

В методе IMFAsyncCallback::Invoke интерфейса обратного вызова выполните следующие действия.

  1. Вызовите MFCreatePMPMediaSession , чтобы создать сеанс мультимедиа PMP.
  2. Вызовите IMFGetService::GetService в сеансе мультимедиа PMP для указателя на интерфейс IMFPMPHost .
  3. Вызовите IMFAsyncResult::GetState для объекта результата, передаваемого в параметре pAsyncResultсвойства IMFAsyncCallback::Invoke. Запросите возвращенный указатель IUnknown для интерфейса IMFAsyncCallback .
  4. Вызовите MFPutWorkItem со следующими параметрами:
    • dwQueue: MFASYNC_CALLBACK_QUEUE_STANDARD
    • pCallback: указатель IMFAsyncCallback , полученный на шаге 3.
    • pState: указатель IMFPMPHost, полученный на шаге 2.

Требования

Требование Значение
Минимальная версия клиента
Windows 8 [классические приложения | Приложения UWP]
Минимальная версия сервера
Windows Server 2012 [классические приложения | Приложения UWP]
Заголовок
Mfidl.h

См. также раздел

Свойства Media Foundation

Сеанс мультимедиа PMP

Путь к защищенному носителю

Сопоставитель источника