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


структура DXVADDI_VIDEOPROCESSORCAPS (d3dumddi.h)

Структура DXVADDI_VIDEOPROCESSORCAPS описывает возможности обработки видео определенного режима deinterlace.

Синтаксис

typedef struct _DXVADDI_VIDEOPROCESSORCAPS {
  [out] D3DDDI_POOL  InputPool;
  [out] UINT         NumForwardRefSamples;
  [out] UINT         NumBackwardRefSamples;
  [out] D3DDDIFORMAT OutputFormat;
  [out] UINT         DeinterlaceTechnology;
  [out] UINT         ProcAmpControlCaps;
  [out] UINT         VideoProcessorOperations;
  [out] UINT         NoiseFilterTechnology;
  [out] UINT         DetailFilterTechnology;
} DXVADDI_VIDEOPROCESSORCAPS;

Члены

[out] InputPool

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

[out] NumForwardRefSamples

Необходимое количество примеров ссылок на пересылку для определенного режима деинтерлакации. Примеры находятся в последующих полях. Это значение равно нулю для смешивания строк и может быть другими значениями (например, 1, 2 или 3) для адаптивного деинтерлакирования и преобразования частоты кадров.

[out] NumBackwardRefSamples

Обязательные примеры обратной ссылки для определенного режима deinterlace. Примеры находятся в бывших полях. Это значение равно нулю для боба, 1 для смешивания строк и может быть другими значениями (например, 1, 2 или 3) для адаптивного деинтерлакирования и преобразования частоты кадров.

[out] OutputFormat

Значение D3DDDIFORMATтипа, указывающее формат пикселей несжатых выходных кадров. Как правило, алгоритм deinterlace выводит кадры в формате пикселей, который соответствует входному формату образца. Этот элемент гарантирует, что средство отрисовки видео смешения видео (VMR) или другой отрисовщик видео может предоставить правильные выходные кадры в оборудование деинтерлакирования.

Обратите внимание, что если значение DXVADDI_VIDEOPROCESS_YUV2RGB возвращается в элементе VideoProcessorOperations, vmR определяет, что допустимые выходные форматы указаны этим элементом, а также формат D3DFMT_X8R8G8B8.

[out] DeinterlaceTechnology

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

значение значение
DXVADDI_DEINTERLACETECH_UNKNOWN Технология деинтерлакации неизвестна.
DXVADDI_DEINTERLACETECH_BOBLINEREPLICATE Алгоритм деинтерлакирования создает отсутствующие строки, повторяя строку выше или ниже отсутствующих строк. Этот метод выглядит жалким и не рекомендуется.
DXVADDI_DEINTERLACETECH_BOBVERTICALSTRETCH Алгоритм deinterlace, который создает отсутствующие линии путем вертикального растяжения каждого поля видео на коэффициент двух путем усреднения двух строк. Небольшие вертикальные корректировки выполняются, чтобы гарантировать, что полученное изображение не перемещается вверх и вниз.
DXVADDI_DEINTERLACETECH_BOBVERTICALSTRETCH4TAP Алгоритм deinterlace, который создает отсутствующие строки путем вертикального растяжения каждого поля видео на коэффициент двух с помощью фильтра [-1, 9, 9, -1] / 16 по четырем строкам. Небольшие вертикальные корректировки выполняются, чтобы гарантировать, что полученное изображение не перемещается вверх и вниз.
DXVADDI_DEINTERLACETECH_MEDIANFILTERING Пиксели в отсутствуюющей строке повторно создаются операцией фильтрации медианы.
DXVADDI_DEINTERLACETECH_EDGEFILTERING Пиксели в отсутствуюющей строке повторно создаются пограничным фильтром. В этом процессе пространственные фильтры направления применяются для определения ориентации ребер в содержимом рисунка, а отсутствующие пиксели создаются путем фильтрации вдоль (а не между) обнаруженными краями.
DXVADDI_DEINTERLACETECH_FIELDADAPTIVE Пиксели в отсутствуюющей строке повторно создаются путем переключения между пространственной или темпоральной интерполяцией в зависимости от объема движения.
DXVADDI_DEINTERLACETECH_PIXELADAPTIVE Пиксели в отсутствуюющей строке повторно создаются путем переключения между пространственной или темпоральной интерполяцией в зависимости от объема движения.
DXVADDI_DEINTERLACETECH_MOTIONVECTORSTEERED Объекты в последовательности полей видео. Отсутствующие пиксели повторно создаются после первого выравнивания оси перемещения отдельных объектов в сцене, чтобы сделать их параллельными с осью времени.
DXVADDI_DEINTERLACETECH_INVERSETELECINE Алгоритм deinterlace, который может отменить процесс вытягивания 3:2, используемый для отображения содержимого 24Гц на 60Гц-дисплеях, 25Гц-содержимое на 50Гц или т. д.

[out] ProcAmpControlCaps

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

значение значение
DXVADDI_PROCAMP_NONE Оборудование не поддерживает какие-либо операции ProcAmp.
DXVADDI_PROCAMP_BRIGHTNESS Разрешены корректировки яркости изображения видео.
DXVADDI_PROCAMP_CONTRAST Допустимы корректировки контрастности изображения видео.
DXVADDI_PROCAMP_HUE Разрешены корректировки параметров изображения видео.
DXVADDI_PROCAMP_SATURATION Разрешены корректировки насыщенности изображения видео.

[out] VideoProcessorOperations

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

значение значение
DXVADDI_VIDEOPROCESS_NONE Оборудование не может выполнять больше операций обработки видео.
DXVADDI_VIDEOPROCESS_YUV2RGB Допускается преобразование видео из цветового пространства YUV в цветовое пространство RGB. Формат RGB, используемый, имеет по крайней мере 8 бит точности для каждого компонента цвета. Если это возможно, можно избежать копирования буфера в vmR. Обратите внимание, что преобразование из цветового пространства RGB в цветовое пространство YUV не требуется.
DXVADDI_VIDEOPROCESS_STRETCHX Исправление пропорций может выполняться одновременно, так как видео настроено ProcAmp, если оборудование может растянуть или уменьшить горизонтально.
DXVADDI_VIDEOPROCESS_STRETCHY Корректировка пропорций объединяется с общей операцией изменения размера рисунка для масштабирования изображения видео в пространстве композиции, определяемом приложением. Эта операция является редкой и не важной функцией. Лучше всего, если масштабирование, необходимое для изменения размера видео в окне приложения, можно сделать одновременно с масштабированием, необходимым для корректировки ProcAmp. Этот тип операции позволяет избежать накопительных артефактов.
DXVADDI_VIDEOPROCESS_ALPHABLEND VmR не выполняет копию буфера при изменении альфа-значения. Приложения редко изменяют постоянное альфа-значение, связанное с видеопотоком, поэтому эта операция является низкоприоритетной функцией.
DXVADDI_VIDEOPROCESS_SUBRECTS Устройство обработки видео может работать с подсекданной областью изображения видео. Эта операция полезна, если изображение видео должно быть обрезано, прежде чем обрабатываться дальше по мере уменьшения размера выходного кадра.
DXVADDI_VIDEOPROCESS_SUBSTREAMS Устройство обработки видео может объединять подпотоки видео с видеопотоком.
DXVADDI_VIDEOPROCESS_SUBSTREAMSEXTENDED Необходимые корректировки цвета можно внести в исходные видеопотоки и подпотоки. Эти корректировки указываются в расширенных цветовых данных, так как видео деинтерлакировано, составное с вложенными потоками и записываемое на целевую поверхность.
DXVADDI_VIDEOPROCESS_YUV2RGBEXTENDED Операция преобразования цветового пространства может выполняться как деинтерлакированные и составные пиксели записываются на целевую поверхность с помощью расширенных цветовых данных, указанных для исходных и целевых поверхностей.
DXVADDI_VIDEOPROCESS_ALPHABLENDEXTENDED Операция альфа-смешивания может выполняться с целевой поверхностью, когда деинтерлакированные и составные пиксели записываются в целевую поверхность. Драйвер должен обрабатывать цвет фона на основе альфа-значения альфа-члена структуры D3DDDIARG_VIDEOPROCESSBLT. Если альфа-значение равно 1.0, цвет фона рисуется непрозрачным (без прозрачности). Если альфа-значение равно 0,0, фон не должен быть нарисован (прозрачный).
DXVADDI_VIDEOPROCESS_CONSTRICTION Устройство обработки видео может временно уменьшить выходной кадр до размера, указанного элементом ConstrictionSize структуры D3DDDIARG_VIDEOPROCESSBLT.
DXVADDI_VIDEOPROCESS_NOISEFILTER Устройство обработки видео может выполнять операции фильтрации шума в видеопотоке.
DXVADDI_VIDEOPROCESS_DETAILFILTER Устройство обработки видео может выполнять операции фильтрации подробных данных в видеопотоке.
DXVADDI_VIDEOPROCESS_PLANARALPHA Устройство обработки видео может применять константную альфа-смесь ко всему видеопотоку (плоскости) во время объединения видеопотока и подпотока. Альфа-член D3DDDIARG_VIDEOPROCESSBLT задает альфа-значение.
DXVADDI_VIDEOPROCESS_LINEARSCALING Устройство обработки видео может линейно масштабировать видеопоток.
DXVADDI_VIDEOPROCESS_GAMMACOMPENSATED Устройство обработки видео может выполнять гамма-преобразование в видеопотоке.
DXVADDI_VIDEOPROCESS_MAINTAINSORIGINALFIELDDATA Устройство обработки видео может поддерживать исходные данные поля.

[out] NoiseFilterTechnology

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

значение значение
DXVADDI_NOISEFILTERTECH_UNSUPPORTED Технология фильтрации шума не поддерживается.
DXVADDI_NOISEFILTERTECH_UNKNOWN Технология фильтрации шума неизвестна.
DXVADDI_NOISEFILTERTECH_MEDIAN Устройство обработки видео использует фильтрацию шума медиана.
DXVADDI_NOISEFILTERTECH_TEMPORAL Устройство обработки видео использует темпоральную фильтрацию шума.
DXVADDI_NOISEFILTERTECH_BLOCKNOISE Устройство обработки видео использует блокировку фильтрации шума.
DXVADDI_NOISEFILTERTECH_MOSQUITONOISE Устройство обработки видео использует фильтрацию шума комаров.

[out] DetailFilterTechnology

Побитовое ЗНАЧЕНИЕ ИЛИ следующих значений, указывающее базовую технологию, которая используется для реализации фильтрации сведений. Значения можно объединить в соответствии с наиболее тесной реализацией фильтра сведений.

значение значение
DXVADDI_DETAILFILTERTECH_UNSUPPORTED Технология фильтрации сведений не поддерживается.
DXVADDI_DETAILFILTERTECH_UNKNOWN Технология фильтрации сведений неизвестна.
DXVADDI_DETAILFILTERTECH_EDGE Устройство обработки видео использует фильтрацию пограничных сведений.
DXVADDI_DETAILFILTERTECH_SHARPENING Устройство обработки видео использует фильтрацию подробных сведений.

Требования

Требование Ценность
минимальные поддерживаемые клиентские Доступно в Windows Vista и более поздних версиях операционных систем Windows.
заголовка d3dumddi.h (include D3dumddi.h)

См. также

D3DDDIARG_GETCAPS

D3DDDIARG_VIDEOPROCESSBLT

D3DDDICAPS_TYPE

D3DDDIFORMAT

D3DDDI_POOL

DXVADDI_VIDEOPROCESSORINPUT

GetCaps