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


перечисление 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

D3D12DDI_VIDEO_ENCODER_SUPPORT_FLAGS_0083_0

PFND3D12DDI_VIDEO_ENCODE_FRAME_0082_0