Função IddCxSwapChainReleaseAndAcquireBuffer2 (iddcx.h)
Um driver de exibição indireto chama IddCxSwapChainReleaseAndAcquireBuffer2 para liberar o buffer atual na cadeia de troca e adquirir um novo. Um driver que dá suporte a adaptadores HDR deve usar IddCxSwapChainReleaseAndAcquireBuffer2 em vez de IddCxSwapChainReleaseAndAcquireBuffer e IddCxSwapChainReleaseAndAcquireSystemBuffer.
Sintaxe
HRESULT IddCxSwapChainReleaseAndAcquireBuffer2(
IDDCX_SWAPCHAIN SwapChainObject,
IDARG_IN_RELEASEANDACQUIREBUFFER2 *pInArgs,
IDARG_OUT_RELEASEANDACQUIREBUFFER2 *pOutArgs
);
Parâmetros
SwapChainObject
[in] O objeto de cadeia de troca passado anteriormente pelo sistema operacional para o driver em uma chamada EVT_IDD_CX_MONITOR_ASSIGN_SWAPCHAIN .
pInArgs
[in] Ponteiro para uma estrutura IDARG_IN_RELEASEANDACQUIREBUFFER2 que contém os argumentos de entrada para a função.
pOutArgs
[out] Ponteiro para uma estrutura IDARG_OUT_RELEASEANDACQUIREBUFFER2 na qual os argumentos de saída da função são retornados.
Retornar valor
IddCxSwapChainReleaseAndAcquireBuffer2 retorna S_OK com êxito; caso contrário, retornará um código de erro apropriado.
Comentários
O espaço de cor da superfície passada no struct IDDCX_METADATA2 também é passado para o driver. Isso ocorre porque ele pode mudar por quadro e não corresponder ao espaço de cor especificado quando um modo foi confirmado.
Da mesma forma, o formato de pixel da superfície fornecida pode ser alterado em uma base quadro a quadro. Por exemplo, se um modo HDR for confirmado em um caminho, isso não garante que cada superfície será uma superfície FP16.
O nível de branco para conteúdo SDR também está incluído para ser aplicado aos cursores do mouse.
Se IDDCX_METADATA2_VALID_FLAGS_HDR10METADATA estiver definida em IDDCX_METADATA2::ValidFlags, IDDCX_METADATA2::Hdr10FrameMetaData conterá dados válidos. Esses metadados podem ser um dos três tipos:
- Novos dados que o driver deve usar.
- Uma indicação de que os metadados padrão enviados anteriormente ao driver em uma chamada para EVT_IDD_CX_MONITOR_SET_DEFAULT_HDR_METADATA devem ser usados.
- Uma indicação de que os metadados enviados anteriormente devem ser usados novamente. Quando o tipo é padrão ou inalterado, os valores em IDDCX_HDR10_FRAME_METADATA::NewMetaData são inválidos.
IddCxSwapChainReleaseAndAcquireBuffer2 também substitui IddCxSwapChainReleaseAndAcquireSystemBuffer. Um driver que teria chamado IddCxSwapChainReleaseAndAcquireSystemBuffer pode definir IDARG_IN_RELEASEANDACQUIREBUFFER2::AcquireSystemMemoryBuffer para indicar que precisa de IDDCX_METADATA2::SystemBufferInfo preenchido.
Os drivers da versão 1.10 que não relatam suporte a FP16 ainda poderão chamar essa função se ela estiver disponível no sistema operacional.
Para obter mais informações sobre o suporte ao HDR, consulte Atualizações do IddCx versão 1.10.
Metadados hdr remotos
O sistema operacional não passará metadados hdr para drivers remotos porque os metadados hdr no sistema cliente devem ser usados, não qualquer gerado pelo servidor. Para drivers remotos IDDCX_METADATA2_VALID_FLAGS_HDR10METADATA nunca será definido.
Requisitos
Requisito | Valor |
---|---|
Cliente mínimo com suporte | Windows 11, versão 22H2 Atualização de setembro (IddCx versão 1.10) |
Cabeçalho | iddcx.h |
Confira também
IDARG_IN_RELEASEANDACQUIREBUFFER2