IddCxAdapterDisplayConfigUpdate2-Funktion (iddcx.h)
Ein Remotetreiber kann IddCxAdapterDisplayConfigUpdate2 aufrufen, damit ein Client dem Server mitteilen kann, wie die Monitorkonfiguration aktualisiert wird.
Syntax
HRESULT IddCxAdapterDisplayConfigUpdate2(
IDDCX_ADAPTER AdapterObject,
const IDARG_IN_ADAPTERDISPLAYCONFIGUPDATE2 *pInArgs
);
Parameter
AdapterObject
[in] Das IDDCX_ADAPTER Objekt des Remoteadapters, für den die Anzeigekonfiguration angegeben ist.
pInArgs
[in] Zeiger auf eine IDARG_IN_ADAPTERDISPLAYCONFIGUPDATE2 Struktur, die Eingabeargumente für die Funktion enthält.
Rückgabewert
IddCxAdapterDisplayConfigUpdate2 gibt bei Erfolg STATUS_SUCCESS zurück. Andernfalls wird ein entsprechender Fehlercode zurückgegeben.
Hinweise
Ein indirekter Remoteanzeigetreiber kann IddCxAdapterDisplayConfigUpdate2 aufrufen, um den Modus, die Farbmetrik und andere Werte festzulegen, die das Betriebssystem für einen bestimmten Monitor verwenden sollte. Nur Remotetreiber können diese Funktion aufrufen.
Weitere Informationen zur HDR-Unterstützung finden Sie unter Updates für IddCx Version 1.10.
Die IDDCX_DISPLAYCONFIGPATH2 Struktur ist so definiert, dass nicht alle Informationen bei jedem Aufruf bereitgestellt werden müssen. Beispielsweise können einige Pfade keine Farbmetrikdaten bereitstellen, wenn der Farbmodus nicht HDR oder WCG ist, oder IddCxAdapterDisplayConfigUpdate2 kann aufgerufen werden, um die SDR-Weißebene nur zu aktualisieren, wenn keine Layoutänderungen erforderlich sind.
Die Steuerungsmodi (Festlegen des IDDCX_DISPLAYCONFIGPATH2_FLAGS_MODE_VALID-Flags für einen Pfad) umfasst einige zusätzliche Regeln und Klarstellungen:
- Wenn ein Pfad IDDCX_DISPLAYCONFIGPATH2_FLAGS_MODE_VALID festgelegt ist, muss er für alle bereitgestellten Pfade festgelegt sein.
- Wenn IDDCX_DISPLAYCONFIGPATH2_FLAGS_MODE_VALID für alle Pfade bereitgestellt wird, werden alle derzeit aktiven Pfade, die nicht in der Pfadliste enthalten sind, inaktiv.
- Wenn nur nicht IDDCX_DISPLAYCONFIGPATH2_FLAGS_MODE_VALID Flags festgelegt sind, müssen nur die zu aktualisierenden Pfade vorhanden sein.
- Abhängig vom angegebenen Farbmodus sind möglicherweise zusätzliche Daten für einen Pfad erforderlich. In der folgenden Tabelle ist angegeben, welche zusätzlichen Flags festgelegt werden müssen:
Farbmodus | IDDCX_DISPLAYCONFIGPATH2_FLAGS_MONITOR_COLORIMETRY_VALID | IDDCX_DISPLAYCONFIGPATH2_FLAGS_MONITOR_SDRWHITELEVEL_VALID |
---|---|---|
SDR | No | No |
SDRWCG | Ja | Nein |
HDR | Yes | Yes |
Erster im Vergleich zu nachfolgenden Aufrufen von IddCxAdapterDisplayConfigUpdate2
Wenn ein Pfad zum ersten Mal in einen IddCxAdapterDisplayConfigUpdate2-Aufruf aufgenommen wird, gelten andere Anforderungen als die nachfolgenden Zeiten. In der folgenden Tabelle werden die Anforderungen beschrieben.
Pfadfeld | Erforderlich beim anfänglichen Aufruf für pfad | Kann nach dem ersten Aufruf aktualisiert werden | Wie würde der Windows-Client die Informationen erhalten? |
---|---|---|---|
Mode | Yes | Yes | QueryDisplayConfig stellt die Clientanzeigekonfiguration bereit, und WM_DISPLAYCHANGE wird gesendet, wenn sich die Anzeigekonfiguration ändert. AdvancedColorInfo.CurrentAdvancedColorKind gibt einen Farbmodus |
Skalierungsfaktor | Yes | Yes | Treiber können die methode verwenden, die für IddCxAdapterDisplayConfigUpdate verwendet wird. |
Physische Größe | Ja, wenn keine EDID bestanden wurde | No | Nicht erforderlich, wenn EDID bestanden wurde |
Farbmetrik | Ja für den Nicht-SDR-Farbmodus | Yes | Die meisten Felder aus entsprechenden AdvancedColorInfo-Feldern |
SDR-Weißebene | Ja für den HDR-Farbmodus, standardwert: 80 nits | Yes | AdvancedColorInfo.SdrWhiteLevelInNits, weitere Informationen finden Sie unter DirectX mit erweiterter Farbe auf HDR/SDR-Displays . |
Verhaltensunterschiede bei der Ausführung unter Windows 11, Version 22H2 September Update
Aufgrund der zugrunde liegenden Betriebssystemfunktionalität unterscheidet sich die Unterstützung für Treiber, die HDR- und WCG-Farbmodi anfordern, wenn sie unter Windows 11, Version 22H2 September Update, geringfügig von der Version 22H2 im September 2024 ausgeführt werden. Ein Treiber kann die IddCxGetVersion-Funktion verwenden, um zu bestimmen, unter welchem Betriebssystem er ausgeführt wird. In der folgenden Tabelle wird beschrieben, welche Farbmodi ein Treiber abhängig vom zuvor für das Betriebssystem bereitgestellten Monitordeskriptor anfordern kann:
Edid-Typ | 22H2 September Update mögliche Farbmodi | Plattformrelease in 2024 möglichen Farbmodi |
---|---|---|
Keine | SDR, HDR | SDR, SDRWCG, HDR |
SDR | SDR, SDRWCG | SDR, SDRWCG |
HDR | SDR, HDR | SDR, SDRWCG, HDR |
Beispiele
Es folgen einige Beispiele dafür, welche Pfade in nachfolgende IddCxAdapterDisplayConfigUpdate2-Aufrufe eingeschlossen werden sollen. Zu Beginn jedes Szenarios werden für eine Remotesitzung die folgenden Pfade konfiguriert:
Monitor | Lösung | Desktopposition | Farbmodus |
---|---|---|---|
1 | 1920 x 1080 bei 30 Hz | 0,0 | SDR |
2 | 1024x768 bei 30 Hz | 1024,0 | SDRWCG |
3 | 3840x2160 @ 30Hz | 0,1848 | HDR |
Szenario 1: Ändern der Desktopposition von Monitor 3 auf links von Monitor 1
Monitor | Flags | Details |
---|---|---|
1 | IDDCX_DISPLAYCONFIGPATH2_FLAGS_MODE_VALID | Keine Änderung an aktuellen Modusdaten |
2 | IDDCX_DISPLAYCONFIGPATH2_FLAGS_MODE_VALID | Keine Änderung an aktuellen Modusdaten |
3 | IDDCX_DISPLAYCONFIGPATH2_FLAGS_MODE_VALID | Ändern Der Desktopposition in -3840,0 |
Szenario 2: Ändern von Monitor 2 von SDRWCG zu SDR
Monitor | Flags | Details |
---|---|---|
1 | IDDCX_DISPLAYCONFIGPATH2_FLAGS_MODE_VALID | Keine Änderung an aktuellen Modusdaten |
2 | IDDCX_DISPLAYCONFIGPATH2_FLAGS_MODE_VALID | Festlegen eines neuen Farbmodus |
3 | IDDCX_DISPLAYCONFIGPATH2_FLAGS_MODE_VALID | Keine Änderung an aktuellen Modusdaten |
Szenario 3: Ändern von Monitor 1 von SDR zu HDR
Monitor | Flags | Details |
---|---|---|
1 | IDDCX_DISPLAYCONFIGPATH2_FLAGS_MODE_VALID, IDDCX_DISPLAYCONFIGPATH2_FLAGS_MONITOR_COLORIMETRY_VALID, IDDCX_DISPLAYCONFIGPATH2_FLAGS_MONITOR_SDRWHITELEVEL_VALID | Festlegen des neuen Farbmodus, der Farbmetrik und des SDR-Weißpegels |
2 | IDDCX_DISPLAYCONFIGPATH2_FLAGS_MODE_VALID | Keine Änderung an aktuellen Modusdaten |
3 | IDDCX_DISPLAYCONFIGPATH2_FLAGS_MODE_VALID | Keine Änderung an aktuellen Modusdaten |
Szenario 4: Ändern des Skalierungsfaktors von Monitor 2
Monitor | Flags | Details |
---|---|---|
2 | IDDCX_DISPLAYCONFIGPATH2_FLAGS_MONITOR_SCALE_FACTOR_VALID | Festlegen eines neuen Skalierungsfaktors |
Szenario 5: Ändern des Skalierungsfaktors von Monitor 2 und der Desktopposition von Monitor 3, um von Monitor 1 zu bleiben
Monitor | Flags | Details |
---|---|---|
1 | IDDCX_DISPLAYCONFIGPATH2_FLAGS_MODE_VALID | Keine Änderung an aktuellen Modusdaten |
2 | IDDCX_DISPLAYCONFIGPATH2_FLAGS_MODE_VALID, IDDCX_DISPLAYCONFIGPATH2_FLAGS_MONITOR_SCALE_FACTOR_VALID | Keine Änderung der aktuellen Modusdaten, Festlegen eines neuen Skalierungsfaktors |
3 | IDDCX_DISPLAYCONFIGPATH2_FLAGS_MODE_VALID | Ändern Der Desktopposition in -3840,0 |
Szenario 6: Entfernen von Monitor 2 aus der aktuellen Konfiguration
Monitor | Flags | Details |
---|---|---|
1 | IDDCX_DISPLAYCONFIGPATH2_FLAGS_MODE_VALID | Keine Änderung an aktuellen Modusdaten |
3 | IDDCX_DISPLAYCONFIGPATH2_FLAGS_MODE_VALID | Keine Änderung an aktuellen Modusdaten |
Anforderungen
Anforderung | Wert |
---|---|
Unterstützte Mindestversion (Client) | Windows 11, Version 22H2 September Update (IddCx Version 1.10) |
Kopfzeile | iddcx.h |