атрибут MF_SA_D3D11_USAGE

Указывает, как выделять поверхности Microsoft Direct3D 11 для примеров мультимедиа. Использование напрямую отражает, доступен ли пример для ЦП или GPU.

Тип данных

D3D11_USAGE , хранящиеся как UINT32

Комментарии

Значение этого атрибута является D3D11_USAGE значением.

Преобразования Microsoft Media Foundation

В этом контексте атрибут применяется только в том случае, если преобразование Microsoft Media Foundation (MFT) возвращает значение TRUE для атрибута MF_SA_D3D11_AWARE .

Если MFT поддерживает Direct3D 11, этот атрибут предоставляет указание MFT при выделении поверхностей Microsoft Direct3D для вывода. Задайте атрибут следующим образом:

  1. Вызовите IMFTransform::GetOutputStreamAttributes , чтобы получить хранилище атрибутов MFT.
  2. Вызовите IMFAttributes::SetUINT32.

Конвейер Media Foundation задает атрибут перед запуском потоковой передачи. MFT должен пытаться учитывать этот параметр при выделении поверхностей. Если это невозможно, MFT может игнорировать атрибут, а не сбой выделения.

Кроме того, если MFT требует поверхностей Direct3D для ввода, он может предоставить этот атрибут в качестве подсказки о том, как должны быть выделены входные поверхности. Запросите атрибут следующим образом:

  1. Вызовите IMFTransform::GetInputStreamAttributes , чтобы получить атрибуты входного потока.
  2. Вызовите IMFAttributes::GetUINT32.

Пример распределителя

Этот атрибут можно задать для распределителя примера видео в методе IMFVideoSampleAllocatorEx::InitializeSampleAllocatorEx .

Требования

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

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

Алфавитный список атрибутов Media Foundation