Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Это важно
Некоторые сведения относятся к предварительному продукту, который может быть существенно изменен до его коммерческого выпуска. Корпорация Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых в отношении информации, предоставленной здесь.
IDDCX_METADATA2 предоставляет сведения о текущей предоставленной поверхности и о том, что отображается на нем.
Синтаксис
struct IDDCX_METADATA2 {
UINT Size;
IDDCX_METADATA2_VALID_FLAGS ValidFlags;
UINT PresentationFrameNumber;
UINT DirtyRectCount;
BOOL HwProtectedSurface;
UINT64 PresentDisplayQPCTime;
IDXGIResource *pSurface;
DXGI_COLOR_SPACE_TYPE SurfaceColorSpace;
UINT SdrWhiteLevel;
IDDCX_SYSTEM_BUFFER_INFO SystemBufferInfo;
IDDCX_HDR10_FRAME_METADATA Hdr10FrameMetaData;
ID3D12Resource *pD3D12Surface;
};
Члены
Size
Общий размер структуры в байтах.
ValidFlags
Побитовое ЗНАЧЕНИЕ ИЛИ значений IDDCX_METADATA2_VALID_FLAGS , указывающее, какие поля в этой структуре имеют допустимое содержимое.
PresentationFrameNumber
Номер кадра презентации этой поверхности.
DirtyRectCount
Количество грязных прямоугольник для этого кадра. Вызовите IddCxSwapChainGetDirtyRects, чтобы получить грязные прямоугольники.
Значение DirtyRectCount 1, где один грязный прямоугольник имеет все значения, равные нулю, указывает, что не было обновлений изображений из предыдущего кадра. В этой ситуации драйвер имеет возможность повторно закодировать изображение рабочего стола еще раз, чтобы повысить качество визуального элемента. После отсутствия дополнительных обновлений ОС представляет тот же кадр, что и значение IDDCX_ADAPTER_CAPS::StaticDesktopReencodeFrameCount , а затем останавливает презентацию до следующего обновления.
HwProtectedSurface
Указывает, защищена ли предоставленная поверхность оборудованием.
PresentDisplayQPCTime
Время QPC системы, когда эта поверхность должна отображаться на непрямом мониторе отображения.
pSurface
Указатель на поверхность IDXGIResource DX, содержащую изображение для кодирования и передачи. Драйвер может использовать эту поверхность DX в любое время до вызова IddCxSwapChainReleaseAndAcquire .
SurfaceColorSpace
Значение DXGI_COLOR_SPACE_TYPE, указывающее цветовое пространство предоставленной поверхности. Цветовое пространство обычно соответствует указанному в зафиксированном пути.
SdrWhiteLevel
Белый уровень в нитах для любого содержимого SDR; например, курсор мыши. Это значение всегда по умолчанию равно 80 нит для режимов, отличных от HDR.
SystemBufferInfo
Структура IDDCX_SYSTEM_BUFFER_INFO , в которой возвращаются полученные сведения из выпуска и операции получения .
Hdr10FrameMetaData
Структура IDDCX_HDR10_FRAME_METADATA , содержащая метаданные HDR10 для использования с этим кадром.
pD3D12Surface
Указатель на id3D12Resource , содержащий изображение для кодирования и передачи. Драйвер может использовать эту поверхность в любое время до вызова IddCxSwapChainReleaseAndAcquireBuffer2 .
Замечания
Дополнительные сведения о поддержке HDR см. в обновлениях IddCx версии 1.10.
Когда поверхности цепочки буферов D3D12 предоставляются драйверу, есть некоторые дополнительные данные, которые необходимо передать в ОС, чтобы обеспечить правильность синхронизации доступа к поверхности с ОС. Объект ID3D12CommandQueue , который драйвер отправляет команды, которые используют поверхность цепочки буферов в качестве входных данных, должны быть указаны в ОС, чтобы он смог правильно синхронизировать чтение драйвера с записью ОС.
В момент, когда драйвер вызывает IddCxSwapChainReleaseAndAcquireBuffer2, ОС использует этот вызов в качестве указания, что драйвер готов отправить работу, которая использует поверхность цепочки буферов. Если драйвер отправляет другие работы в ту же очередь команд, это может быть отложено без необходимости.
Требования
| Требование | Ценность |
|---|---|
| Минимальный поддерживаемый клиент | Windows 11, 26H1 (IddCx 1.11) |
| Header | iddcx.h |