структура D3D12_FEATURE_DATA_VIDEO_ENCODER_SUPPORT (d3d12video.h)
Предоставляет данные для вызовов ID3D12VideoDevice::CheckFeatureSupport , когда указанная функция D3D12_FEATURE_VIDEO_ENCODER_SUPPORT. Извлекает значения, указывающие поддержку указанных функций кодирования видео и значений конфигурации.
Синтаксис
typedef struct D3D12_FEATURE_DATA_VIDEO_ENCODER_SUPPORT {
UINT NodeIndex;
D3D12_VIDEO_ENCODER_CODEC Codec;
DXGI_FORMAT InputFormat;
D3D12_VIDEO_ENCODER_CODEC_CONFIGURATION CodecConfiguration;
D3D12_VIDEO_ENCODER_SEQUENCE_GOP_STRUCTURE CodecGopSequence;
D3D12_VIDEO_ENCODER_RATE_CONTROL RateControl;
D3D12_VIDEO_ENCODER_INTRA_REFRESH_MODE IntraRefresh;
D3D12_VIDEO_ENCODER_FRAME_SUBREGION_LAYOUT_MODE SubregionFrameEncoding;
UINT ResolutionsListCount;
const D3D12_VIDEO_ENCODER_PICTURE_RESOLUTION_DESC *pResolutionList;
UINT MaxReferenceFramesInDPB;
D3D12_VIDEO_ENCODER_VALIDATION_FLAGS ValidationFlags;
D3D12_VIDEO_ENCODER_SUPPORT_FLAGS SupportFlags;
D3D12_VIDEO_ENCODER_PROFILE_DESC SuggestedProfile;
D3D12_VIDEO_ENCODER_LEVEL_SETTING SuggestedLevel;
D3D12_FEATURE_DATA_VIDEO_ENCODER_RESOLUTION_SUPPORT_LIMITS *pResolutionDependentSupport;
} D3D12_FEATURE_DATA_VIDEO_ENCODER_SUPPORT;
Члены
NodeIndex
В операции с несколькими адаптерами это указывает, к какому физическому адаптеру устройства применяется эта операция.
Codec
Член перечисления D3D12_VIDEO_ENCODER_CODEC , указывающий кодек, для которого запрашивается поддержка.
InputFormat
Структура D3D12_VIDEO_ENCODER_PROFILE_DESC , указывающая профиль, для которого запрашивается поддержка.
CodecConfiguration
Структура D3D12_VIDEO_ENCODER_CODEC_CONFIGURATION , представляющая конфигурацию кодека, для которой запрашивается поддержка.
CodecGopSequence
Структура D3D12_VIDEO_ENCODER_SEQUENCE_GOP_STRUCTURE , представляющая структуру GOP, для которой запрашивается поддержка.
RateControl
D3D12_VIDEO_ENCODER_RATE_CONTROL, представляющий параметры управления скоростью, для которых запрашивается поддержка.
IntraRefresh
Член перечисления D3D12_VIDEO_ENCODER_INTRA_REFRESH_MODE , указывающий режим внутри системы обновления, для которого запрашивается поддержка.
SubregionFrameEncoding
Член перечисления D3D12_VIDEO_ENCODER_FRAME_SUBREGION_LAYOUT_MODE , задающий режим макета подобласти, для которого запрашивается поддержка.
ResolutionsListCount
Объект UINT, указывающий количество разрешений, указанных в поле pResolutionList .
pResolutionList
Указатель на массив D3D12_VIDEO_ENCODER_PICTURE_RESOLUTION_DESC , указывающий разрешения изображений, для которых запрашивается поддержка.
MaxReferenceFramesInDPB
Объект UINT, указывающий максимальное количество предыдущих ссылочных кадров, используемых при вызове EncodeFrame для межкадровых кадров. Это значение используется для вычисления предлагаемого уровня, возвращаемого в поле SuggestedLevel .
ValidationFlags
Получает побитовое или сочетание флагов из перечисления D3D12_VIDEO_ENCODER_VALIDATION_FLAGS , которые предоставляют дополнительные сведения, если флаг D3D12_VIDEO_ENCODER_SUPPORT_FLAG_GENERAL_SUPPORT_OK не задан в поле SupportFlags . Дополнительные сведения см. в примечаниях.
SupportFlags
Получает побитовое или сочетание флагов из перечисления D3D12_VIDEO_ENCODER_SUPPORT_FLAGS , указывающее сведения о поддержке для указанных функций кодировщика и значений конфигурации.
SuggestedProfile
Получает D3D12_VIDEO_ENCODER_PROFILE_DESC с указанием рекомендуемого профиля для указанных функций кодировщика и значений конфигурации.
SuggestedLevel
Получает D3D12_VIDEO_ENCODER_LEVEL_SETTING с указанием рекомендуемого профиля для указанных функций кодировщика и значений конфигурации. Рекомендуемый уровень предполагает максимальное разрешение из списка, предоставленного в pResolutionList.
pResolutionDependentSupport
Получает указатель на массив D3D12_FEATURE_DATA_VIDEO_ENCODER_RESOLUTION_SUPPORT_LIMITS структур, определяющих ограничения поддержки, зависящие от разрешения, соответствующие разрешениям, предоставленным в pResolutionList.
Комментарии
Поддержка, предоставленная или отклоненная этим запросом, указывает на одновременную поддержку всех функций, выбранных для использования в одном сеансе кодирования. Могут быть функции, которые поддерживаются по отдельности при запросе с помощью отдельных вызовов запросов, но не поддерживаются одновременно.
Например, при проверке D3D12_FEATURE_VIDEO_ENCODER_INTRA_REFRESH_MODE может поддерживаться внутреннее обновление, а при проверке D3D12_VIDEO_ENCODER_CODEC_PICTURE_CONTROL_SUPPORT_H264 — кадры B . MaxL1ReferencesForB> 0. Но это может быть так, что внутренние кадры обновления и B не поддерживаются одновременно. В этом случае при запросе D3D12_FEATURE_DATA_VIDEO_ENCODER_SUPPORT с помощью CodecGopSequence, содержащего кадры B, и режима на основе строк внутри обновления флаг D3D12_VIDEO_ENCODER_SUPPORT_FLAG_GENERAL_SUPPORT_OK будет установлен.
Требования
Требование | Значение |
---|---|
Минимальная версия клиента | Сборка Windows 22000 |
Минимальная версия сервера | Сборка Windows 22000 |
Верхняя часть | d3d12video.h |