структура DXVAHDDDI_VPCAPS (d3dumddi.h)
Структура DXVAHDDDI_VPCAPS описывает видеопроцессор и его возможности.
Синтаксис
typedef struct _DXVAHDDDI_VPCAPS {
[out] GUID VPGuid;
[out] UINT PastFrames;
[out] UINT FutureFrames;
[out] UINT ProcessorCaps;
[out] UINT ITelecineCaps;
[out] UINT CustomRateCount;
} DXVAHDDDI_VPCAPS;
Члены
[out] VPGuid
Идентификатор GUID, определяющий видеопроцессор.
[out] PastFrames
Количество прошлых опорных кадров, необходимых для оптимальной обработки видео.
[out] FutureFrames
Количество будущих опорных кадров, необходимых для оптимальной обработки видео.
[out] ProcessorCaps
Побитовое ИЛИ следующих значений из перечисления DXVAHDDDI_PROCESSOR_CAPS, чтобы указать возможности, связанные с видеопроцессором.
Значение | Значение |
---|---|
DXVAHDDDI_PROCESSOR_CAPS_DEINTERLACE_BLEND (0x1) | Драйвер может выполнять деинтерлейсинг смешения, когда смешиваются два поля в чередуемой рамке. Драйвер использует этот тип деинтерлейсинга, когда он деинтерлейсирует на половину скорости. Дополнительные сведения о половинной ставке см. в разделе DXVAHDDDI_OUTPUT_RATE. |
DXVAHDDDI_PROCESSOR_CAPS_DEINTERLACE_BOB (0x2) | Драйвер может выполнить деинтерлейсинг Боба, когда отсутствующие строки сканирования создаются из строк выше и ниже отсутствующих строк. Фильтр 4tap ([–1,9;9;–1]/16) дает несколько лучшие результаты. Драйвер использует этот тип деинтерлейсинга, если недостаточно опорных кадров для адаптивного деинтерлейсинга. |
DXVAHDDDI_PROCESSOR_CAPS_DEINTERLACE_ADAPTIVE (0x4) | Драйвер может выполнять адаптивное деинтерлейсирование, когда отсутствующие линии сканирования создаются из пространственной или темпоральной интерполяции путем переключения между двумя типами интерполяции в зависимости от движения пикселя или поля. |
DXVAHDDDI_PROCESSOR_CAPS_DEINTERLACE_MOTION_COMPENSATION (0x8) | Драйвер может выполнять деинтерлейсинг с компенсацией движения, когда отсутствующие линии сканирования создаются с помощью векторов движения. Этот тип деинтерлейсинга является самым передовым деинтерлейсингом, который реализуется с помощью собственного алгоритма. |
DXVAHDDDI_PROCESSOR_CAPS_INVERSE_TELECINE (0x10) | Драйвер может преобразовать из чередующихся кадров в исходные прогрессивные кадры путем изменения телесины. Дополнительные сведения о возврате телесины см. в разделе Член ITelecineCaps. |
DXVAHDDDI_PROCESSOR_CAPS_FRAME_RATE_CONVERSION (0x20) | Драйвер может преобразовать частоту кадров путем интерполяции кадров. |
Драйвер не должен требовать каких-либо опорных кадров, если он использует типы деинтерлейсинга, связанные с DXVAHDDDI_PROCESSOR_CAPS_DEINTERLACE_BLEND и DXVAHDDDI_PROCESSOR_CAPS_DEINTERLACE_BOB.
Когда драйвер использует обратную телесину с нормальной скоростью декрессирования, так как телесинированные чередующиеся кадры становятся меньше прогрессивных кадров, драйвер поддерживает частоту кадров, повторяя кадры. Если один и тот же видеопроцессор поддерживает преобразование частоты кадров, драйвер может интерполировать кадры, а не повторяться при возврате телесины. DXVAHDDDI_STREAM_STATE_OUTPUT_RATE_DATA может управлять этой интерполяцией.
Дополнительные сведения о смешениях и де-чередование Боба см. в разделе DXVAHDDDI_STREAM_DATA.
[out] ITelecineCaps
Побитовое ИЛИ следующих значений из перечисления DXVAHDDDI_ITELECINE_CAPS для указания обратных возможностей телесины.
Значение | Значение |
---|---|
DXVAHDDDI_ITELECINE_CAPS_32 (0x1) | Драйвер может выполнять обратную телесину 3:2, NTSC(60i) -> Film(24p). |
DXVAHDDDI_ITELECINE_CAPS_22 (0x2) | Драйвер может выполнять обратную телесину 2:2, PAL(50i) -> Film(25p:4% быстрее) и NTSC(60i) -> CG(30p). |
DXVAHDDDI_ITELECINE_CAPS_2224 (0x4) | Драйвер может выполнять обратный 2:2:2:4 telecine, NTSC(60i) —> DVCAM(24p). |
DXVAHDDDI_ITELECINE_CAPS_2332 (0x8) | Драйвер может выполнять обратную передачу телесины 2:3:3:2, NTSC(60i) —> DVCAM(24p). |
DXVAHDDDI_ITELECINE_CAPS_32322 (0x10) | Драйвер может выполнять обратную телесину 3:2:3:2:2, NTSC(60i) -> Film(25p:4 % быстрее). |
DXVAHDDDI_ITELECINE_CAPS_55 (0x20) | Драйвер может выполнять обратную телесину 5:5, NTSC(60i) -> Animation(12p). |
DXVAHDDDI_ITELECINE_CAPS_64 (0x40) | Драйвер может выполнять обратную телесину 6:4, NTSC(60i) -> Animation(12p). |
DXVAHDDDI_ITELECINE_CAPS_87 (0x80) | Драйвер может выполнять обратную телесину 8:7, NTSC(60i) —> Anime(8p). |
DXVAHDDDI_ITELECINE_CAPS_222222222223 (0x100) | Драйвер может выполнять обратный 2:2:2:2:2:2:2:2:2:2:3 telecine, PAL(50i) —> Film(24p). |
DXVAHDDDI_ITELECINE_CAPS_OTHER (0x80000000) | Драйвер может выполнять обратную нестандартную телесину. |
[out] CustomRateCount
Количество поддерживаемых пользовательских скоростей вывода. Драйвер возвращает массив DXVAHDDDI_CUSTOM_RATE_DATA структур для пользовательских скоростей вывода, поддерживаемых видеопроцессором при вызове функции GetCaps драйвера с набором D3DDDICAPS_DXVAHD_GETVPCUSTOMRATES значений.
Комментарии
Драйвер отображения пользовательского режима возвращает указатель на заполненную структуру DXVAHDDDI_VPCAPS в элементе pDataструктуры D3DDDIARG_GETCAPS при вызове функции GetCaps со значением D3DDDICAPS_DXVAHD_GETVPCAPS, заданным в элементе Type D3DDDIARG_GETCAPS.
Требования
Требование | Значение |
---|---|
Минимальная версия клиента | DXVAHDDDI_VPCAPS поддерживается начиная с операционной системы Windows 7. |
Верхняя часть | d3dumddi.h (включая D3dumddi.h) |