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


Метод ID3D11VideoDevice::CreateVideoProcessorOutputView (d3d11.h)

Создает представление ресурсов для видеопроцессоров, описывая выходной пример для операции обработки видео.

Синтаксис

HRESULT CreateVideoProcessorOutputView(
  [in]  ID3D11Resource                               *pResource,
  [in]  ID3D11VideoProcessorEnumerator               *pEnum,
  [in]  const D3D11_VIDEO_PROCESSOR_OUTPUT_VIEW_DESC *pDesc,
  [out] ID3D11VideoProcessorOutputView               **ppVPOView
);

Параметры

[in] pResource

Указатель на интерфейс ID3D11Resource выходной поверхности. Ресурс должен быть создан с флагом D3D11_BIND_RENDER_TARGET . См . D3D11_BIND_FLAG.

[in] pEnum

Указатель на интерфейс ID3D11VideoProcessorEnumerator , указывающий видеопроцессор. Чтобы получить этот указатель, вызовите ID3D11VideoDevice::CreateVideoProcessorEnumerator.

[in] pDesc

Указатель на структуру D3D11_VIDEO_PROCESSOR_OUTPUT_VIEW_DESC , описывающую представление.

[out] ppVPOView

Получает указатель на интерфейс ID3D11VideoProcessorOutputView . Вызывающий объект должен освободить ресурс. Если этот параметр имеет значение NULL, метод проверяет, поддерживается ли представление, но не создает представление.

Возвращаемое значение

Если этот метод завершается успешно, он возвращает S_OK. В противном случае возвращается код ошибки HRESULT .

Комментарии

Присвойте параметру ppVPOViewзначение NULL , чтобы проверить, поддерживается ли представление.

Ресурсы, используемые для выходных представлений видеопроцессоров, должны использовать следующие сочетания D3D11_BIND_FLAG :

  • D3D11_BIND_RENDER_TARGET указывает, что его можно использовать для представления вывода видеопроцессоров. С помощью D3D11_BIND_RENDER_TARGET можно задать следующие флаги привязки:
  • Будут применяться другие ограничения, такие как:
    • Многопользовательская выборка не допускается.
    • Texture2D должен быть создан с помощью D3D11_USAGE_DEFAULT.
  • Некоторые форматы YUV могут поддерживаться в качестве выходного представления видеопроцессоров, но могут не поддерживаться в качестве целевого объекта трехмерной отрисовки. D3D11 разрешает флаг D3D11_BIND_RENDER_TARGET для этих форматов, но CreateRenderTargetView не будет разрешен для этих форматов.
Если включен стереовыход, представление выходных данных должно содержать 2 элемента массива. В противном случае он должен иметь только один элемент массива.

Требования

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

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

ID3D11VideoDevice