перечисление DXVA_VideoProcessCaps (dxva.h)

Перечисление DXVA_VideoProcessCaps определяет операции, которые могут выполняться одновременно с запрошенным деинтерлейсом.

Синтаксис

typedef enum _DXVA_VideoProcessCaps {
  DXVA_VideoProcess_None,
  DXVA_VideoProcess_YUV2RGB,
  DXVA_VideoProcess_StretchX,
  DXVA_VideoProcess_StretchY,
  DXVA_VideoProcess_AlphaBlend,
  DXVA_VideoProcess_SubRects,
  DXVA_VideoProcess_SubStreams,
  DXVA_VideoProcess_SubStreamsExtended,
  DXVA_VideoProcess_YUV2RGBExtended,
  DXVA_VideoProcess_AlphaBlendExtended
} DXVA_VideoProcessCaps;

Константы

 
DXVA_VideoProcess_None
Указывает, что деинтерлейсное оборудование может выполнять только основные операции деинтерлейс. То есть операции деинтерлейс, которые не объединяются с другими операциями, такими как преобразование цвета, альфа-смешения, растяжение, подраздел или подпоток.
DXVA_VideoProcess_YUV2RGB
Указывает, что деинтерлейсное оборудование может преобразовывать видео из цветового пространства YUV в цветовое пространство RGB. Формат RGB будет иметь по крайней мере 8 бит точности для каждого компонента цвета. По возможности можно избежать копирования буфера в VMR. Все драйверы должны поддерживать эту операцию для режима деинтерлейс боба.


Не используется с функцией DeinterlaceBltEx .
DXVA_VideoProcess_StretchX
Указывает, что коррекция пропорций может выполняться одновременно при деинтерлейсовке видео, если деинтерлейсер может растянуться или сжаться по горизонтали. Перечислитель должен поддерживаться для режима деинтерлейс боба.

Должен использовать с функцией DeinterlaceBltEx .
DXVA_VideoProcess_StretchY
Указывает, что корректировка пропорций сочетается с общей операцией изменения размера изображения для масштабирования видеоизучения.

Должен использовать с функцией DeinterlaceBltEx .
DXVA_VideoProcess_AlphaBlend
Указывает, что VMR не будет выполнять копирование буфера при изменении альфа-значения. Приложения редко изменяют постоянное альфа-значение, связанное с видеопотоком, поэтому эта функция является низкоприоритетной. Перечислитель должен поддерживаться для режима деинтерлейс боба.


Не используется с функцией DeinterlaceBltEx .
DXVA_VideoProcess_SubRects
Указывает, что деинтерлейсное оборудование может деинтерлейсировать только часть области видеоинтерлейса в указанное место назначения. Это полезно, если перед дальнейшей обработкой необходимо обрезать видеоимоско, так как размер выходного кадра уменьшается.
DXVA_VideoProcess_SubStreams
Только Windows Server 2003 с пакетом обновления 1 (SP1) и более поздних версий, а также Windows XP с пакетом обновления 2 (SP2) и более поздних версий.


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


Должен использовать с функцией DeinterlaceBltEx .
DXVA_VideoProcess_SubStreamsExtended
Только Windows Server 2003 с пакетом обновления 1 (SP1) и более поздних версий, а также Windows XP с пакетом обновления 2 (SP2) и более поздних версий.


Указывает, что в исходные видеопотоки и вложенные потоки можно внести необходимые изменения цвета. Эти корректировки указываются в расширенных данных цвета, так как видео деинтерлейсируется, композитируется с вложенными потоками и записывается в целевую поверхность.

Должен использовать с функцией DeinterlaceBltEx .
DXVA_VideoProcess_YUV2RGBExtended
Только Windows Server 2003 с пакетом обновления 1 (SP1) и более поздних версий, а также Windows XP с пакетом обновления 2 (SP2) и более поздних версий.


Указывает, что операция преобразования цветового пространства может быть выполнена, когда деинтерлейсированные и составные пиксели записываются на целевую поверхность с помощью расширенных сведений о цвете, указанных для исходной и целевой поверхностей.


Должен использовать с функцией DeinterlaceBltEx .
DXVA_VideoProcess_AlphaBlendExtended
Только Windows Server 2003 с пакетом обновления 1 (SP1) и более поздних версий, а также Windows XP с пакетом обновления 2 (SP2) и более поздних версий.


Указывает, что операция альфа-смешения может быть выполнена с целевой поверхностью, когда деинтерлейсированные и составные пиксели записываются на целевую поверхность. Драйвер должен обрабатывать цвет фона на основе альфа-значения альфа-членаструктуры DXVA_DeinterlaceBltEx . Если альфа-значение равно 1,0f, цвет фона рисуется непрозрачным (без прозрачности). Если альфа-значение равно 0,0f, фон не должен быть нарисован (прозрачный).

Должен использовать с функцией DeinterlaceBltEx .

Комментарии

Иногда корректировка пропорций, выполняемая DXVA_VideoProcess_AlphaBlend , сочетается с общей операцией изменения размера изображения для масштабирования видеоимока в пространстве композиции, определяемом приложением, что является редкой и не важной функцией. Лучше всего, если масштабирование, необходимое для изменения размера видео в окне приложения, можно выполнить одновременно с масштабированием, необходимым для деинтерлейсинга, что позволяет избежать накопительных артефактов.

Преобразование цветового пространства, выполняемое DXVA_VideoProcess_YUV2RGB , особенно полезно в VMR, если оно сочетается с любыми (и, в идеале, всеми) из следующих перечислителей: DXVA_VideoProcess_StretchX, DXVA_VideoProcess_StretchY и DXVA_VideoProcess_AlphaBlend. Преобразование цветового пространства RGB в цветовое пространство YUV не требуется.

Требования

Требование Значение
Заголовок dxva.h (включая Dxva.h)

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

DXVA_DeinterlaceCaps

DeinterlaceBltEx