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


функция обратного вызова PFND3D11_1DDI_VIDEOPROCESSORBLT (d3d10umddi.h)

Выполняет операцию обработки видео на одном или нескольких входных примерах и записывает результат на поверхность Direct3D.

Синтаксис

PFND3D11_1DDI_VIDEOPROCESSORBLT Pfnd3d111DdiVideoprocessorblt;

HRESULT Pfnd3d111DdiVideoprocessorblt(
  D3D10DDI_HDEVICE unnamedParam1,
  D3D11_1DDI_HVIDEOPROCESSOR unnamedParam2,
  D3D11_1DDI_HVIDEOPROCESSOROUTPUTVIEW unnamedParam3,
  UINT unnamedParam4,
  UINT unnamedParam5,
  const D3D11_1DDI_VIDEO_PROCESSOR_STREAM *unnamedParam6
)
{...}

Параметры

unnamedParam1

hDevice [in]

Дескриптор устройства отображения (графический контекст).

unnamedParam2

hVideoProcessor [in]

Дескриптор объекта обработчика видео, созданного с помощью вызова функции CreateVideoProcessor.

unnamedParam3

hOutputView [in]

Дескриптор ресурса для выходного представления обработчика видео. Этот дескриптор был создан с помощью вызова функции CreateVideoProcessorOutputView.

unnamedParam4

выходного кадра [in]

Отсчитываемый от нуля индекс выходного видеокадры.

unnamedParam5

StreamCount [in]

Количество входных потоков для обработки в массиве, на который ссылается параметр pStream.

Примечание Максимальное значение этого параметра определяется элементом MaxStreamStates структуры D3D11_1DDI_VIDEO_PROCESSOR_CAPS. Максимальное количество потоков, которые можно включить одновременно, задается в элементе MaxInputStreams этой структуры.
 

unnamedParam6

pStream [in]

Указатель на массив D3D11_1DDI_VIDEO_PROCESSOR_STREAM структур, содержащих сведения о входных потоках.

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

VideoProcessorBlt возвращает одно из следующих значений:

Возвращаемый код Описание
S_OK Операция обработки видео успешно завершена.
E_OUTOFMEMORY Память недоступна для завершения операции.

Замечания

VideoProcessorBlt выполняет всю обработку видео на основе состояний потока и состояний передачи (bitblt), которые были установлены ранее.

Среда выполнения Microsoft Direct3D выполняет следующую проверку данных перед вызовом функции драйвера VideoProcessorBlt:

  • Входные и выходные СТРУКТУРЫ RECT могут быть скорректированы, если прямоугольники не выровнены должным образом в соответствии с требованиями формата.
  • Если видеопроцессор был включен для создания стерео примеров, выходное представление должно содержать массив текстур двух элементов. Кроме того, необходимо указать по крайней мере один стереопоток.

    Если видеопроцессор был отключен от создания стерео примеров, представление выходных данных должно содержать один элемент. Кроме того, стереоформат нельзя настроить как D3D11_VIDEO_PROCESSOR_STEREO_FORMAT_MONO.

    Примечание Видеопроцессор включен или отключен для производства стерео примеров с помощью вызова VideoProcessorSetOutputStereoMode.
     
  • Каждый входной поток указывается через структуру D3D11_1DDI_VIDEO_PROCESSOR_STREAM. Если стереоформат входного потока настроен на D3D11_1DDI_VIDEO_PROCESSOR_STEREO_FORMAT_SEPARATE, элемент pInputSurfaceRight не должен иметь значение NULL. В противном случае pInputSurfaceRight должно иметь значение NULL.
    Примечание Стереоформат для входного потока настраивается с помощью вызова VideoProcessorSetStreamStereoFormat.
     
Если включено несколько входных потоков, и видеопроцессор включен для создания стереоданных, возможно, один из входных потоков может быть моно примером.
Примечание Эта функция не учитывает предикат D3D11, который может быть задан.
 

Требования

Требование Ценность
минимальные поддерживаемые клиентские Windows 8
минимальный поддерживаемый сервер Windows Server 2012
целевая платформа Настольный
заголовка d3d10umddi.h (include D3d10umddi.h)

См. также

CreateVideoProcessor

CreateVideoProcessorOutputView

D3D11_1DDI_VIDEO_PROCESSOR_CAPS

D3D11_1DDI_VIDEO_PROCESSOR_STREAM

RECT

VideoProcessorSetOutputStereoMode

VideoProcessorSetStreamStereoFormat