структура D3D12DDI_VIDEO_ENCODER_PICTURE_CONTROL_CODEC_DATA_HEVC_0082_0 (d3d12umddi.h)
Структура D3D12DDI_VIDEO_ENCODER_PICTURE_CONTROL_CODEC_DATA_HEVC_0082_0 описывает элементы управления на уровне рисунка для связанной команды EncodeFrame для кодирования HEVC.
Синтаксис
typedef struct D3D12DDI_VIDEO_ENCODER_PICTURE_CONTROL_CODEC_DATA_HEVC_0082_0 {
D3D12DDI_VIDEO_ENCODER_PICTURE_CONTROL_CODEC_DATA_HEVC_FLAGS_0082_0 Flags;
D3D12DDI_VIDEO_ENCODER_FRAME_TYPE_HEVC_0080 FrameType;
UINT slice_pic_parameter_set_id;
UINT PictureOrderCountNumber;
UINT TemporalLayerIndex;
UINT List0ReferenceFramesCount;
UINT *pList0ReferenceFrames;
UINT List1ReferenceFramesCount;
UINT *pList1ReferenceFrames;
UINT ReferenceFramesReconPictureDescriptorsCount;
D3D12DDI_VIDEO_ENCODER_REFERENCE_PICTURE_DESCRIPTOR_HEVC_0082_0 *pReferenceFramesReconPictureDescriptors;
UINT List0RefPicModificationsCount;
UINT *pList0RefPicModifications;
UINT List1RefPicModificationsCount;
UINT *pList1RefPicModifications;
UINT QPMapValuesCount;
INT8 *pRateControlQPMap;
} D3D12DDI_VIDEO_ENCODER_PICTURE_CONTROL_CODEC_DATA_HEVC_0082_0;
Члены
Flags
Значение D3D12DDI_VIDEO_ENCODER_PICTURE_CONTROL_CODEC_DATA_HEVC_FLAGS_0082_0 , указывающее флаги конфигурации для закодированного кадра. Флаги можно объединять.
FrameType
Значение D3D12DDI_VIDEO_ENCODER_FRAME_TYPE_HEVC_0080 , которое задает тип рисунка. Прежде чем выбирать значение, убедитесь, что флаги кодека поддерживают тип.
Примечание
FrameType должен быть синхронизирован с конфигурацией структуры группы изображений (GOP), заданной узлом. GOP определяется в порядке отображения. Выбор типа рисунка должен соответствовать GOP, но в порядке кодирования.
slice_pic_parameter_set_id
Значение, используемое в заголовках среза текущего кадра для ссылки на набор параметров рисунка (PPS).
PictureOrderCountNumber
Порядок отображения текущего кадра.
TemporalLayerIndex
Номер слоя рисунка в темпоральной иерархии. Проверьте D3D12DDI_VIDEO_ENCODER_CODEC_CONFIGURATION_SUPPORT_HEVC_0083_0 максимальное количество слоев.
List0ReferenceFramesCount
Количество прошлых ссылок на кадр, используемых для этого кадра. Это значение должно быть согласовано с тем, что было предоставлено в D3D12DDI_VIDEO_ENCODER_CODEC_CONFIGURATION_SUPPORT_HEVC_0083_0.
pList0ReferenceFrames
Указатель на список прошлых опорных кадров, используемых для этого кадра. Каждое целочисленное значение в этом массиве индексируется в pReferenceFramesReconPictureDescriptors для ссылки на изображения, хранящиеся в декодированном буфере рисунков (DPB).
List1ReferenceFramesCount
Количество будущих ссылок на кадры, которые будут использоваться для этого кадра. Это значение должно быть согласовано с тем, что было предоставлено в D3D12DDI_VIDEO_ENCODER_CODEC_CONFIGURATION_SUPPORT_HEVC_0083_0.
pList1ReferenceFrames
Указатель на список будущих опорных кадров фрейма, которые будут использоваться для этого кадра. Каждое целочисленное значение в этом массиве индексирует в pReferenceFramesReconPictureDescriptors для ссылки на изображения, хранящиеся в DPB.
ReferenceFramesReconPictureDescriptorsCount
Количество записей в pReferenceFramesReconPictureDescriptors.
pReferenceFramesReconPictureDescriptors
Указатель на структуру D3D12DDI_VIDEO_ENCODER_REFERENCE_PICTURE_DESCRIPTOR_HEVC_0082_0 , описывающую текущее состояние буфера DPB, хранящееся в D3D12DDI_VIDEO_ENCODER_PICTURE_CONTROL_DESC_0082_0.ReferenceFrames. Индексы списков L0/L1 сопоставляют с прошлыми и будущими ссылками в массив дескрипторов.
В свою очередь, этот массив дескрипторов сопоставляет эталонный рисунок для этого кадра с индексом ресурсов в массиве восстановленных изображений D3D12DDI_VIDEO_ENCODER_PICTURE_CONTROL_DESC_0082_0.ReferenceFrames . Кроме того, для каждого эталонного рисунка он указывает порядковый номер кодирования и отображения, а также указывает, является ли он долгосрочной ссылкой.
Размер этого массива соответствует D3D12DDI_VIDEO_ENCODER_PICTURE_CONTROL_DESC_0082_0.ReferenceFrames.NumTextures для связанной команды EncodeFrame .
List0RefPicModificationsCount
Количество изменений списка для списка L0.
pList0RefPicModifications
Указатель на список, содержащий команды List0RefPicModificationsCount для списка L0.
List1RefPicModificationsCount
Количество изменений списка для списка L1.
pList1RefPicModifications
Указатель на список, содержащий команды List1RefPicModificationsCount для списка L1.
QPMapValuesCount
Количество элементов, присутствующих в массиве, на который указывает pRateControlQPMap . Это значение должно соответствовать количеству блоков кодирования в кадре, округляя разрешение кадра до ближайших выровненных значений.
pRateControlQPMap
Указатель на массив, содержащий в порядке сканирования строки или столбца значения параметров квантования (QP) для использования в каждой квадратной области для этого кадра. Измерения карты QP можно вычислить с помощью текущего разрешения и D3D12DDI_VIDEO_ENCODER_RESOLUTION_SUPPORT_LIMITS_0080_2.QPMapRegionPixelsSize , передавая размеры квадратной области.
Комментарии
Общие сведения см. в разделе Кодировка видео D3D12 .
Требования
Требование | Значение |
---|---|
Минимальная версия клиента | Windows 11 (WDDM 3.0) |
Верхняя часть | d3d12umddi.h |
См. также раздел
Обратная связь
https://aka.ms/ContentUserFeedback.
Ожидается в ближайшее время: в течение 2024 года мы постепенно откажемся от GitHub Issues как механизма обратной связи для контента и заменим его новой системой обратной связи. Дополнительные сведения см. в разделеОтправить и просмотреть отзыв по