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


перечисление D3D12DDI_VIDEO_ENCODER_AV1_POST_ENCODE_VALUES_0095_FLAGS (d3d12umddi.h)

Перечисление D3D12DDI_VIDEO_ENCODER_AV1_POST_ENCODE_VALUES_0095_FLAGS указывает, какие функции кодирования AV1 базовый кодировщик может переопределить (частично или полностью) связанные значения синтаксиса AV1 или точное входное значение конфигурации клиента API.

Синтаксис

typedef enum D3D12DDI_VIDEO_ENCODER_AV1_POST_ENCODE_VALUES_0095_FLAGS {
  D3D12DDI_VIDEO_ENCODER_AV1_POST_ENCODE_VALUES_0095_FLAG_NONE = 0,
  D3D12DDI_VIDEO_ENCODER_AV1_POST_ENCODE_VALUES_0095_FLAG_QUANTIZATION = 0x1,
  D3D12DDI_VIDEO_ENCODER_AV1_POST_ENCODE_VALUES_0095_FLAG_QUANTIZATION_DELTA = 0x2,
  D3D12DDI_VIDEO_ENCODER_AV1_POST_ENCODE_VALUES_0095_FLAG_LOOP_FILTER = 0x4,
  D3D12DDI_VIDEO_ENCODER_AV1_POST_ENCODE_VALUES_0095_FLAG_LOOP_FILTER_DELTA = 0x8,
  D3D12DDI_VIDEO_ENCODER_AV1_POST_ENCODE_VALUES_0095_FLAG_CDEF_DATA = 0x10,
  D3D12DDI_VIDEO_ENCODER_AV1_POST_ENCODE_VALUES_0095_FLAG_CONTEXT_UPDATE_TILE_ID = 0x20,
  D3D12DDI_VIDEO_ENCODER_AV1_POST_ENCODE_VALUES_0095_FLAG_COMPOUND_PREDICTION_MODE = 0x40,
  D3D12DDI_VIDEO_ENCODER_AV1_POST_ENCODE_VALUES_0095_FLAG_PRIMARY_REF_FRAME = 0x80,
  D3D12DDI_VIDEO_ENCODER_AV1_POST_ENCODE_VALUES_0095_FLAG_REFERENCE_INDICES = 0x100
} ;

Константы

 
D3D12DDI_VIDEO_ENCODER_AV1_POST_ENCODE_VALUES_0095_FLAG_NONE
Значение: 0
D3D12DDI_VIDEO_ENCODER_AV1_POST_ENCODE_VALUES_0095_FLAG_QUANTIZATION
Значение: 0x1
Связанные со значениями D3D12DDI_VIDEO_ENCODER_CODEC_AV1_QUANTIZATION_CONFIG_0095. Используется для кода quantization_params().
D3D12DDI_VIDEO_ENCODER_AV1_POST_ENCODE_VALUES_0095_FLAG_QUANTIZATION_DELTA
Значение: 0x2
Связанные со значениями D3D12DDI_VIDEO_ENCODER_CODEC_AV1_QUANTIZATION_DELTA_CONFIG_0095. Используется для кода delta_q_params().
D3D12DDI_VIDEO_ENCODER_AV1_POST_ENCODE_VALUES_0095_FLAG_LOOP_FILTER
Значение: 0x4
Связанные со значениями D3D12DDI_VIDEO_ENCODER_CODEC_AV1_LOOP_FILTER_CONFIG_0095. Используется для кода синтаксиса AV1 loop_filter_params().
D3D12DDI_VIDEO_ENCODER_AV1_POST_ENCODE_VALUES_0095_FLAG_LOOP_FILTER_DELTA
Значение: 0x8
Связанные со значениями D3D12DDI_VIDEO_ENCODER_CODEC_AV1_LOOP_FILTER_DELTA_CONFIG_0095. Используется для кода синтаксиса AV1 delta_lf_params().
D3D12DDI_VIDEO_ENCODER_AV1_POST_ENCODE_VALUES_0095_FLAG_CDEF_DATA
Значение: 0x10
Связанные со значениями D3D12DDI_VIDEO_ENCODER_AV1_CDEF_CONFIG_0095. Используется для кода синтаксиса AV1 cdef_params().
D3D12DDI_VIDEO_ENCODER_AV1_POST_ENCODE_VALUES_0095_FLAG_CONTEXT_UPDATE_TILE_ID
Значение: 0x20
Связанный с членом ContextUpdateTileId в D3D12DDI_VIDEO_ENCODER_AV1_PICTURE_CONTROL_SUBREGIONS_LAYOUT_DATA_TILES_0095. Используется для кода синтаксиса элементов AV1 context_update_tile_id в tile_info().
D3D12DDI_VIDEO_ENCODER_AV1_POST_ENCODE_VALUES_0095_FLAG_COMPOUND_PREDICTION_MODE
Значение: 0x40
Связанные со значениями D3D12DDI_VIDEO_ENCODER_AV1_COMP_PREDICTION_TYPE_0095.

Когда клиент API выбирает D3D12DDI_VIDEO_ENCODER_AV1_COMP_PREDICTION_TYPE_COMPOUND_REFERENCE и этот флаг задан, драйвер возвращает D3D12DDI_VIDEO_ENCODER_AV1_COMP_PREDICTION_TYPE в значениях после кодирования. Возвращаемое значение должно использоваться для кода reference_select = 0 (SINGLE) или reference_select = 1 (COMPOUND) синтаксиса соответственно.

Если клиент API выбирает D3D12DDI_VIDEO_ENCODER_AV1_COMP_PREDICTION_TYPE_COMPOUND_SINGLE и этот флаг задан, драйвер вернет D3D12DDI_VIDEO_ENCODER_AV1_COMP_PREDICTION_TYPE_COMPOUND_SINGLE и reference_select должен быть закодирован как 0 (SINGLE).
D3D12DDI_VIDEO_ENCODER_AV1_POST_ENCODE_VALUES_0095_FLAG_PRIMARY_REF_FRAME
Значение: 0x80
Связанный с элементом primaryRefFrame в D3D12DDI_VIDEO_ENCODER_AV1_PICTURE_CONTROL_CODEC_DATA_0095. Используется для кода синтаксиса элементов AV1 primary_ref_frame в uncompressed_header().
D3D12DDI_VIDEO_ENCODER_AV1_POST_ENCODE_VALUES_0095_FLAG_REFERENCE_INDICES
Значение: 0x100
Когда драйвер сообщает флаг, драйвер может переупорядочение или повторное сопоставление (но не изменение количества ссылок) D3D12DDI_VIDEO_ENCODER_AV1_POST_ENCODE_VALUES_0095. Выходные данные массива ReferenceIndices на основе входных данных пользователя D3D12DDI_VIDEO_ENCODER_AV1_PICTURE_CONTROL_CODEC_DATA_0095. ReferenceIndices. В противном случае драйвер должен скопировать каждую запись массива этого выходного параметра после кодирования as-is из D3D12DDI_VIDEO_ENCODER_AV1_PICTURE_CONTROL_CODEC_DATA_0095.ReferenceIndices.

Клиент API записывает заголовок рисунка ref_frame_idx синтаксис AV1 из этого выходного параметра.

Замечания

Если bitflag имеет значение SET для данной функции, драйвер получает связанные входные данные клиента API и может переопределить все или определенные параметры связанной структуры с заданным флагом, который затем будет записывать обратно в D3D12DDI_VIDEO_ENCODER_AV1_POST_ENCODE_VALUES_0095 с окончательными значениями для клиента API, чтобы перепаковать заголовки AV1 соответствующим образом. Клиент API может сравнить это с связанной входной структурой, чтобы определить изменения драйвера, если таковые есть.

Если bitflag не задан для данной функции, драйвер учитывает входные данные клиента API точно и копирует входные значения в D3D12DDI_VIDEO_ENCODER_AV1_POST_ENCODE_VALUES_0095. Таким образом, клиент всегда может скопировать значения после кодирования, чтобы упаковать заголовки напрямую.

Дополнительные сведения см. в кодировке видео D3D12 AV1.

Требования

Требование Ценность
минимальные поддерживаемые клиентские Windows 11 версии 24H2 (WDDM 3.2)
заголовка d3d12umddi.h

См. также

D3D12DDI_VIDEO_ENCODER_AV1_CODEC_CONFIGURATION_SUPPORT_0095