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


Метод IDXGIFactoryMedia::CreateSwapChainForCompositionSurfaceHandle (dxgi1_3.h)

Создает цепочку буферов YUV для существующего дескриптора поверхности DirectComposition .

Синтаксис

HRESULT CreateSwapChainForCompositionSurfaceHandle(
  [in]           IUnknown                    *pDevice,
  [in, optional] HANDLE                      hSurface,
  [in]           const DXGI_SWAP_CHAIN_DESC1 *pDesc,
  [in, optional] IDXGIOutput                 *pRestrictToOutput,
  [out]          IDXGISwapChain1             **ppSwapChain
);

Параметры

[in] pDevice

Указатель на устройство Direct3D для цепочки буферов. Этот параметр не может иметь значение NULL. Программные драйверы, такие как D3D_DRIVER_TYPE_REFERENCE, не поддерживаются для цепочек буферов композиции.

[in, optional] hSurface

Дескриптор существующей поверхности DirectComposition . Этот параметр не может иметь значение NULL.

[in] pDesc

Указатель на структуру DXGI_SWAP_CHAIN_DESC1 для описания цепочки буферов. Этот параметр не может иметь значение NULL.

[in, optional] pRestrictToOutput

Указатель на интерфейс IDXGIOutput для цепочки буферов для ограничения содержимого. Если цепочка буферов перемещается в другой выход, содержимое становится черным. При необходимости можно задать для этого параметра целевой объект вывода, который использует DXGI_PRESENT_RESTRICT_TO_OUTPUT для ограничения содержимого в этих выходных данных. Если цепочка буферов перемещается в другой выход, содержимое становится черным.

Необходимо также передать флаг DXGI_PRESENT_RESTRICT_TO_OUTPUT в вызове, чтобы содержимое было затемнено в любых других выходных данных. Если вы хотите ограничить содержимое другими выходными данными, необходимо создать новую цепочку буферов. Однако можно условно ограничить содержимое на основе флага DXGI_PRESENT_RESTRICT_TO_OUTPUT .

Задайте для этого параметра значение NULL , если вы не хотите ограничивать содержимое целевым объектом вывода.

[out] ppSwapChain

Указатель на переменную, которая получает указатель на интерфейс IDXGISwapChain1 для цепочки буферов, создаваемой этим методом.

Возвращаемое значение

CreateSwapChainForCompositionSurfaceHandle возвращает:

  • S_OK, если цепочка буферов успешно создана.
  • E_OUTOFMEMORY, если память недоступна для завершения операции.
  • DXGI_ERROR_INVALID_CALL , если вызывающее приложение предоставило недопустимые данные, например, если pDesc, pYuvDecodeBuffers или ppSwapChain имеет значение NULL.
  • Возможно, другие коды ошибок, описанные в разделе DXGI_ERROR , которые определяются типом устройства, передаваемого в pDevice.

Требования

   
Минимальная версия клиента Windows 8.1 [только классические приложения]
Минимальная версия сервера Windows Server 2012 R2 [только классические приложения]
Целевая платформа Windows
Header dxgi1_3.h
Библиотека Dxgi.lib

См. также раздел

Для достижения оптимальной производительности используйте модель пролистывания DXGI.

IDXGIFactoryMedia