Compartilhar via


Função IddCxAdapterDisplayConfigUpdate2 (iddcx.h)

Um driver remoto pode chamar IddCxAdapterDisplayConfigUpdate2 para permitir que um cliente informe ao servidor como atualizar a configuração do monitor.

Sintaxe

HRESULT IddCxAdapterDisplayConfigUpdate2(
  IDDCX_ADAPTER                              AdapterObject,
  const IDARG_IN_ADAPTERDISPLAYCONFIGUPDATE2 *pInArgs
);

Parâmetros

AdapterObject

[in] O objeto IDDCX_ADAPTER do adaptador remoto para o qual a configuração de exibição é especificada.

pInArgs

[in] Ponteiro para uma estrutura IDARG_IN_ADAPTERDISPLAYCONFIGUPDATE2 que contém argumentos de entrada para a função.

Retornar valor

IddCxAdapterDisplayConfigUpdate2 retorna STATUS_SUCCESS após o sucesso; caso contrário, ele retorna um código de erro apropriado.

Comentários

Um driver de exibição indireto remoto pode chamar IddCxAdapterDisplayConfigUpdate2 para definir o modo, a colorimetria e outros valores que o sistema operacional deve usar para um monitor específico. Somente drivers remotos são capazes de chamar essa função.

Para obter mais informações sobre o suporte ao HDR, consulte Atualizações do IddCx versão 1.10.

A estrutura IDDCX_DISPLAYCONFIGPATH2 é definida de forma que nem todas as informações precisam ser fornecidas em todas as chamadas. Por exemplo, alguns caminhos podem não fornecer dados de colorimetria se o modo de cor não for HDR ou WCG ou IddCxAdapterDisplayConfigUpdate2 puder ser chamado apenas para atualizar o nível de branco SDR se nenhuma alteração de layout for necessária.

Controlar modos (definir o sinalizador IDDCX_DISPLAYCONFIGPATH2_FLAGS_MODE_VALID para um caminho) tem algumas regras e esclarecimentos adicionais:

  • Se algum caminho tiver IDDCX_DISPLAYCONFIGPATH2_FLAGS_MODE_VALID definido, todos os caminhos fornecidos deverão defini-lo
  • Quando IDDCX_DISPLAYCONFIGPATH2_FLAGS_MODE_VALID for fornecido em todos os caminhos, todos os caminhos ativos no momento que não estiverem na lista de caminhos ficarão inativos
  • Se apenas sinalizadores não IDDCX_DISPLAYCONFIGPATH2_FLAGS_MODE_VALID forem definidos, somente os caminhos a serem atualizados precisarão estar presentes
  • Dependendo do modo de cor especificado, dados adicionais podem ser necessários para um caminho. A tabela a seguir indica quais sinalizadores adicionais devem ser definidos:
Modo de cor IDDCX_DISPLAYCONFIGPATH2_FLAGS_MONITOR_COLORIMETRY_VALID IDDCX_DISPLAYCONFIGPATH2_FLAGS_MONITOR_SDRWHITELEVEL_VALID
SDR No No
SDRWCG Yes No
HDR Yes Yes

Primeira versus chamadas subsequentes para IddCxAdapterDisplayConfigUpdate2

A primeira vez que um caminho é incluído em uma chamada IddCxAdapterDisplayConfigUpdate2 tem requisitos diferentes dos tempos subsequentes. A tabela a seguir descreve os requisitos.

Campo Caminho Necessário na chamada inicial para o caminho Pode ser atualizado após a chamada inicial Como o cliente Windows obteria as informações
Mode Yes Yes QueryDisplayConfig fornecerá a configuração de exibição do cliente e WM_DISPLAYCHANGE será enviado quando a configuração de exibição for alterada; AdvancedColorInfo.CurrentAdvancedColorKind dará um modo de cor
Fator de escala Yes Yes Os drivers podem usar o método usado para IddCxAdapterDisplayConfigUpdate
Tamanho físico Sim se nenhum EDID foi aprovado No Não é necessário se EDID foi aprovado
Colorimetria Sim para o modo de cor não SDR Yes A maioria dos campos de campos AdvancedColorInfo correspondentes
Nível de branco SDR Sim para o modo de cor HDR, o padrão é 80 nits Yes AdvancedColorInfo.SdrWhiteLevelInNits, consulte DirectX with Advanced Color on HDR/SDR displays for more information

Diferenças de comportamento ao executar no Windows 11, versão 22H2 Atualização de setembro

Devido à funcionalidade subjacente do sistema operacional, o suporte para drivers que solicitam modos de cor HDR e WCG ao executar em Windows 11, a atualização de setembro versão 22H2 difere ligeiramente de quando é executada na versão da plataforma Windows em 2024. Um driver pode usar a função IddCxGetVersion para determinar em qual sistema operacional eles estão executando. A tabela a seguir descreve quais modos de cor um driver pode solicitar dependendo do descritor de monitor fornecido anteriormente ao sistema operacional:

Tipo edid 22H2 Atualização de setembro possíveis modos de cor Versão da plataforma em modos de cores possíveis de 2024
Nenhum SDR, HDR SDR, SDRWCG, HDR
SDR SDR, SDRWCG SDR, SDRWCG
HDR SDR, HDR SDR, SDRWCG, HDR

Exemplos

Alguns exemplos de quais caminhos incluir nas chamadas IddCxAdapterDisplayConfigUpdate2 subsequentes seguem. No início de cada cenário, uma sessão remota tem os seguintes caminhos configurados:

Monitor Resolução Posição da área de trabalho Modo de cor
1 1920x1080 @ 30Hz 0,0 SDR
2 1024x768 @ 30Hz 1024,0 SDRWCG
3 3840x2160 @ 30Hz 0,1848 HDR

Cenário 1 – Alterar a posição da área de trabalho do Monitor 3 para ficar à esquerda do Monitor 1

Monitor Flags Detalhes
1 IDDCX_DISPLAYCONFIGPATH2_FLAGS_MODE_VALID Nenhuma alteração nos dados do modo atual
2 IDDCX_DISPLAYCONFIGPATH2_FLAGS_MODE_VALID Nenhuma alteração nos dados do modo atual
3 IDDCX_DISPLAYCONFIGPATH2_FLAGS_MODE_VALID Alterar a posição da área de trabalho para -3840,0

Cenário 2 – Alterar o monitor 2 de SDRWCG para SDR

Monitor Flags Detalhes
1 IDDCX_DISPLAYCONFIGPATH2_FLAGS_MODE_VALID Nenhuma alteração nos dados do modo atual
2 IDDCX_DISPLAYCONFIGPATH2_FLAGS_MODE_VALID Definir novo modo de cor
3 IDDCX_DISPLAYCONFIGPATH2_FLAGS_MODE_VALID Nenhuma alteração nos dados do modo atual

Cenário 3 – Alterar o monitor 1 de SDR para HDR

Monitor Flags Detalhes
1 IDDCX_DISPLAYCONFIGPATH2_FLAGS_MODE_VALID, IDDCX_DISPLAYCONFIGPATH2_FLAGS_MONITOR_COLORIMETRY_VALID, IDDCX_DISPLAYCONFIGPATH2_FLAGS_MONITOR_SDRWHITELEVEL_VALID Definir novo modo de cor, colorimetria e nível branco de SDR
2 IDDCX_DISPLAYCONFIGPATH2_FLAGS_MODE_VALID Nenhuma alteração nos dados do modo atual
3 IDDCX_DISPLAYCONFIGPATH2_FLAGS_MODE_VALID Nenhuma alteração nos dados do modo atual

Cenário 4 – Fator de escala de alteração do Monitor 2

Monitor Flags Detalhes
2 IDDCX_DISPLAYCONFIGPATH2_FLAGS_MONITOR_SCALE_FACTOR_VALID Definir novo fator de escala

Cenário 5 – Alterar o fator de escala do Monitor 2 e a posição da área de trabalho do Monitor 3 a ser deixada do Monitor 1

Monitor Flags Detalhes
1 IDDCX_DISPLAYCONFIGPATH2_FLAGS_MODE_VALID Nenhuma alteração nos dados do modo atual
2 IDDCX_DISPLAYCONFIGPATH2_FLAGS_MODE_VALID, IDDCX_DISPLAYCONFIGPATH2_FLAGS_MONITOR_SCALE_FACTOR_VALID Nenhuma alteração nos dados do modo atual, defina o novo fator de escala
3 IDDCX_DISPLAYCONFIGPATH2_FLAGS_MODE_VALID Alterar a posição da área de trabalho para -3840,0

Cenário 6 – Remover o Monitor 2 da configuração atual

Monitor Flags Detalhes
1 IDDCX_DISPLAYCONFIGPATH2_FLAGS_MODE_VALID Nenhuma alteração nos dados do modo atual
3 IDDCX_DISPLAYCONFIGPATH2_FLAGS_MODE_VALID Nenhuma alteração nos dados do modo atual

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_ADAPTERDISPLAYCONFIGUPDATE2