перечисление D3D12DDI_VIDEO_ENCODER_RATE_CONTROL_FLAGS_0080 (d3d12umddi.h)
Перечисление D3D12DDI_VIDEO_ENCODER_RATE_CONTROL_FLAGS_0080 указывает флаги для управления скоростью.
Синтаксис
typedef enum D3D12DDI_VIDEO_ENCODER_RATE_CONTROL_FLAGS_0080 {
D3D12DDI_VIDEO_ENCODER_RATE_CONTROL_FLAG_0080_NONE = 0x0,
D3D12DDI_VIDEO_ENCODER_RATE_CONTROL_FLAG_0080_ENABLE_DELTA_QP = 0x1,
D3D12DDI_VIDEO_ENCODER_RATE_CONTROL_FLAG_0080_ENABLE_FRAME_ANALYSIS = 0x2,
D3D12DDI_VIDEO_ENCODER_RATE_CONTROL_FLAG_0080_ENABLE_QP_RANGE = 0x4,
D3D12DDI_VIDEO_ENCODER_RATE_CONTROL_FLAG_0080_ENABLE_INITIAL_QP = 0x8,
D3D12DDI_VIDEO_ENCODER_RATE_CONTROL_FLAG_0080_ENABLE_MAX_FRAME_SIZE = 0x10,
D3D12DDI_VIDEO_ENCODER_RATE_CONTROL_FLAG_0080_1_ENABLE_VBV_SIZES = 0x20,
D3D12DDI_VIDEO_ENCODER_RATE_CONTROL_FLAG_0096_ENABLE_EXTENSION1_SUPPORT = 0x40,
D3D12DDI_VIDEO_ENCODER_RATE_CONTROL_FLAG_0096_ENABLE_QUALITY_VS_SPEED = 0x80
} ;
Константы
D3D12DDI_VIDEO_ENCODER_RATE_CONTROL_FLAG_0080_NONE Значение: 0x0 Флаги управления скоростью отсутствуют. |
D3D12DDI_VIDEO_ENCODER_RATE_CONTROL_FLAG_0080_ENABLE_DELTA_QP Значение: 0x1 Если режим управления выбранной скоростью D3D12DDI_VIDEO_ENCODER_RATE_CONTROL_MODE_ABSOLUTE_QP_MAP, этот флаг не действует, так как значения QP в поле pRateControlQPMap используются в качестве абсолютных значений QP. Для других режимов управления скоростью этот флаг позволяет pRateControlQPMap интерпретироваться как разностная карта QP, которая будет использоваться для текущей операции кодирования кадров . Значения, предоставленные на карте, увеличиваются и уменьшаются поверх значений QP, определяемых алгоритмом управления скоростью или базовым набором констант QP в режиме CQP. Использование разностной корректировки QP вместе с некоторыми режимами активного контроля скорости может нарушить ограничения скорости, так как он явно изменяет значения QP, выбранные алгоритмом управления скоростью. |
D3D12DDI_VIDEO_ENCODER_RATE_CONTROL_FLAG_0080_ENABLE_FRAME_ANALYSIS Значение: 0x2 Если поддержка указана в D3D12DDI_VIDEO_ENCODER_SUPPORT_FLAGS, этот флаг позволяет алгоритму управления скоростью оптимизировать использование скорости, выбрав значения QP на основе статистики, собранной путем анализа кадров при первом проходе. |
D3D12DDI_VIDEO_ENCODER_RATE_CONTROL_FLAG_0080_ENABLE_QP_RANGE Значение: 0x4 Если задано, используйте значения MinQp MinQp и MaxQp в качестве диапазона для алгоритма управления скоростью. |
D3D12DDI_VIDEO_ENCODER_RATE_CONTROL_FLAG_0080_ENABLE_INITIAL_QP Значение: 0x8 При установке используйте значения InitialQP в качестве диапазона для алгоритма управления скоростью. |
D3D12DDI_VIDEO_ENCODER_RATE_CONTROL_FLAG_0080_ENABLE_MAX_FRAME_SIZE Значение: 0x10 Если поддерживается D3D12DDI_VIDEO_ENCODER_SUPPORT_FLAG_0083_0_RATE_CONTROL_MAX_FRAME_SIZE_AVAILABLE, алгоритм управления скоростью должен ограничить максимальный размер кадра указанным параметром в конфигурации управления скоростью. |
D3D12DDI_VIDEO_ENCODER_RATE_CONTROL_FLAG_0080_1_ENABLE_VBV_SIZES Значение: 0x20 Если задано, включите использование VBVCapacity и InitialVBVFullness. |
D3D12DDI_VIDEO_ENCODER_RATE_CONTROL_FLAG_0096_ENABLE_EXTENSION1_SUPPORT Значение: 0x40 Требуется задать D3D12DDI_VIDEO_ENCODER_SUPPORT_FLAG_RATE_CONTROL_EXTENSION1_SUPPORT. См. примечания. |
D3D12DDI_VIDEO_ENCODER_RATE_CONTROL_FLAG_0096_ENABLE_QUALITY_VS_SPEED Значение: 0x80 Требуется D3D12DDI_VIDEO_ENCODER_SUPPORT_FLAG_RATE_CONTROL_EXTENSION1_SUPPORT и D3D12DDI_VIDEO_ENCODER_SUPPORT_FLAG_RATE_CONTROL_QUALITY_VS_SPEED_AVAILABLE. Если этот параметр включен, указывает использование QualityVsSpeed в структуре управления скоростью. |
Замечания
Если D3D12DDI_VIDEO_ENCODER_RATE_CONTROL_FLAG_0096_ENABLE_EXTENSION1_SUPPORT включен, это означает, что структуры управления скоростью, расширенные для кодирования AV1, будут использоваться в D3D12DDI_VIDEO_ENCODER_RATE_CONTROL_CONFIGURATION_PARAMS.pConfiguration_Xxx, как показано в следующей таблице.
Режим управления скоростью при включении флага | тип D3D12DDI_VIDEO_ENCODER_RATE_CONTROL_CONFIGURATION_PARAMS | D3D12DDI_VIDEO_ENCODER_RATE_CONTROL_CONFIGURATION_PARAMS DataSize |
---|---|---|
D3D12DDI_VIDEO_ENCODER_RATE_CONTROL_MODE_ABSOLUTE_QP_MAP | D3D12DDI_VIDEO_ENCODER_RATE_CONTROL_ABSOLUTE_QP_MAP | sizeof(D3D12DDI_VIDEO_ENCODER_RATE_CONTROL_ABSOLUTE_QP_MAP) |
D3D12DDI_VIDEO_ENCODER_RATE_CONTROL_MODE_CQP | D3D12DDI_VIDEO_ENCODER_RATE_CONTROL_CQP1 | sizeof(D3D12DDI_VIDEO_ENCODER_RATE_CONTROL_CQP1) |
D3D12DDI_VIDEO_ENCODER_RATE_CONTROL_MODE_CBR | D3D12DDI_VIDEO_ENCODER_RATE_CONTROL_CBR1 | sizeof(D3D12DDI_VIDEO_ENCODER_RATE_CONTROL_CBR1) |
D3D12DDI_VIDEO_ENCODER_RATE_CONTROL_MODE_VBR | D3D12DDI_VIDEO_ENCODER_RATE_CONTROL_VBR1 | sizeof(D3D12DDI_VIDEO_ENCODER_RATE_CONTROL_VBR1) |
D3D12DDI_VIDEO_ENCODER_RATE_CONTROL_MODE_QVBR | D3D12DDI_VIDEO_ENCODER_RATE_CONTROL_QVBR1 | sizeof(D3D12DDI_VIDEO_ENCODER_RATE_CONTROL_QVBR1) |
В противном случае устаревшие структуры будут использоваться при отключении, как показано в следующей таблице.
Режим управления скоростью при отключении флага | тип D3D12DDI_VIDEO_ENCODER_RATE_CONTROL_CONFIGURATION_PARAMS | D3D12DDI_VIDEO_ENCODER_RATE_CONTROL_CONFIGURATION_PARAMS DataSize |
---|---|---|
D3D12DDI_VIDEO_ENCODER_RATE_CONTROL_MODE_ABSOLUTE_QP_MAP | НЕДЕЙСТВИТЕЛЬНЫЙ | 0 |
D3D12DDI_VIDEO_ENCODER_RATE_CONTROL_MODE_CQP | D3D12DDI_VIDEO_ENCODER_RATE_CONTROL_CQP | sizeof(D3D12DDI_VIDEO_ENCODER_RATE_CONTROL_CQP) |
D3D12DDI_VIDEO_ENCODER_RATE_CONTROL_MODE_CBR | D3D12DDI_VIDEO_ENCODER_RATE_CONTROL_CBR | sizeof(D3D12DDI_VIDEO_ENCODER_RATE_CONTROL_CBR) |
D3D12DDI_VIDEO_ENCODER_RATE_CONTROL_MODE_VBR | D3D12DDI_VIDEO_ENCODER_RATE_CONTROL_VBR | sizeof(D3D12DDI_VIDEO_ENCODER_RATE_CONTROL_VBR) |
D3D12DDI_VIDEO_ENCODER_RATE_CONTROL_MODE_QVBR | D3D12DDI_VIDEO_ENCODER_RATE_CONTROL_QVBR | sizeof(D3D12DDI_VIDEO_ENCODER_RATE_CONTROL_QVBR) |
Общие сведения см. в кодировке видео D3D12.
Требования
Требование | Ценность |
---|---|
минимальные поддерживаемые клиентские | Windows 11 (WDDM 3.0) |
заголовка | d3d12umddi.h |
См. также
D3D12DDI_VIDEO_ENCODER_RATE_CONTROL_0080_2
D3D12DDI_VIDEO_ENCODER_RATE_CONTROL_CBR_0080
D3D12DDI_VIDEO_ENCODER_RATE_CONTROL_QVBR_0080_2
D3D12DDI_VIDEO_ENCODER_RATE_CONTROL_VBR_0080