Поделиться через


MFT_MESSAGE_SET_D3D_MANAGER

Задает или очищает диспетчер устройств Direct3D для аккерации видео DirectX (DXVA).

Параметр message

При запуске потоковой передачи параметр ulParam содержит указатель IUnknown . MFT запрашивает этот указатель для интерфейса IDirect3DDeviceManager9 для Direct3D 9 и интерфейса IMFDXGIDeviceManager для Direct3D 11. При остановке потоковой передачи ulParameter содержит значение NULL.

Замечания

Чтобы отправить это сообщение, вызовите МВФTransform::P rocessMessage.

Это сообщение относится только к преобразованиям видео. Клиент не должен отправлять это сообщение, если только MFT не возвращает значение TRUE для атрибута MF_SA_D3D_AWARE (MF_SA_D3D11_AWARE для Direct3D 11).

Не отправляйте это сообщение в MFT с несколькими выходными данными.

Внедрение

MFT должен поддерживать это сообщение только в том случае, если MFT использует Ускорение видео DirectX для обработки или декодирования видео.

Если MFT поддерживает это сообщение, он также должен реализовать метод IMFTransform::GetAttributes и вернуть значение TRUE для атрибута MF_SA_D3D_AWARE ((MF_SA_D3D11_AWARE для Direct3D 11). Этот атрибут сообщает клиенту, что клиент должен отправить MFT_MESSAGE_SET_D3D_MANAGER сообщение MFT перед началом потоковой передачи.

Если MFT не поддерживает это сообщение, он должен вернуть E_NOTIMPL из ProcessMessage. Это исключение из общего правила, которое MFT может возвращать S_OK из любого сообщения, которое он игнорирует.

Дополнительные сведения см. в разделе MFTs с поддержкой Direct3D.

Requirements

Требование Значение
Минимальная версия клиента
Windows Vista [только классические приложения]
Минимальная версия сервера
Windows Server 2008 [только классические приложения]
Верхний колонтитул
Mftransform.h

См. также

MFT с поддержкой Direct3D

Поддержка DXVA 2.0 в Media Foundation

Поддержка декодирования видео Direct3D 11 в Media Foundation

MFT_MESSAGE_TYPE