структура DXVA_ProcAmpControlCaps (dxva.h)
Структура DXVA_ProcAmpControlCaps определяет операции ProcAmp, поддерживаемые оборудованием.
Синтаксис
typedef struct _DXVA_ProcAmpControlCaps {
DWORD Size;
DWORD InputPool;
D3DFORMAT d3dOutputFormat;
DWORD ProcAmpControlProps;
DWORD VideoProcessingCaps;
} DXVA_ProcAmpControlCaps, *LPDXVA_ProcAmpControlCaps;
Члены
Size
Задает размер этой структуры в байтах.
InputPool
Указывает пул памяти, из которого должны быть выделены исходные поверхности элемента управления ProcAmp. Дополнительные сведения см. в перечислении D3DPOOL документации по пакету SDK Microsoft Window.
d3dOutputFormat
Указывает формат поверхности Direct3D выходных кадров. Обычно устройство ProcAmp выводит кадры в формате поверхности, который соответствует формату входной поверхности. Этот элемент гарантирует, что vmR или другой отрисовщик видео может предоставить правильный формат для поверхностей выходного кадра аппаратному оборудованию элемента управления ProcAmp. Если флаг DXVA_VideoProcess_YUV2RGB возвращается в структуре DXVA_VideoProcessCaps, vmR предполагает, что допустимые форматы выходных данных задаются этим элементом, а также форматом RGB32.
ProcAmpControlProps
Определяет операции ProcAmp, поддерживаемые оборудованием. Драйвер должен вернуть логическую комбинацию следующих операций ProcAmp.
Ценность | Описание |
---|---|
DXVA_ProcAmp_None | Операции не разрешены. |
DXVA_ProcAmp_Brightness | Разрешены корректировки яркости изображения видео. |
DXVA_ProcAmp_Contrast | Допустимы корректировки контрастности изображения видео. |
DXVA_ProcAmp_Hue | Разрешены корректировки параметров изображения видео. |
DXVA_ProcAmp_Saturation | Разрешены корректировки насыщенности изображения видео. |
VideoProcessingCaps
Определяет операции, которые могут выполняться оборудованием элемента управления ProcAmp одновременно с запрошенной корректировкой ProcAmp. Драйвер должен вернуть логическое сочетание одной из следующих операций ProcAmp.
Ценность | Описание |
---|---|
DXVA_VideoProcess_None | Операции не разрешены. |
DXVA_VideoProcess_YUV2RGB | Допускается преобразование видео из цветового пространства YUV в цветовое пространство RGB. Формат RGB, используемый, будет иметь по крайней мере 8 бит точности для каждого компонента цвета. Если это возможно, можно избежать копирования буфера в vmR. Обратите внимание, что нет необходимости преобразовывать из цветового пространства RGB в цветовое пространство YUV. |
DXVA_VideoProcess_StretchX | Исправление пропорций может выполняться одновременно, так как видео настраивается ProcAmp, если оборудование может растянуть или уменьшить по горизонтали. |
DXVA_VideoProcess_StretchY | Корректировка пропорций объединяется с общей операцией изменения размера рисунка для масштабирования изображения видео в пространстве композиции, определяемом приложением. Это редко и не является важной функцией. Лучше всего использовать масштабирование, необходимое для изменения размера видео в окне приложения, одновременно с масштабированием, необходимым для корректировки ProcAmp. Это позволяет избежать накопительных артефактов. |
DXVA_VideoProcess_AlphaBlend | Указывает, что VMR не будет выполнять копию буфера при изменении альфа-значения. Редко приложения изменяют константное альфа-значение, связанное с видеопотоком, поэтому это низкоприоритетная функция. |
Требования
Требование | Ценность |
---|---|
минимальные поддерживаемые клиентские | Только версии DirectX 9.0 и более поздних версий. |
заголовка | dxva.h (include Dxva.h) |