Fungsi IddCxAdapterDisplayConfigUpdate2 (iddcx.h)
Driver jarak jauh dapat memanggil IddCxAdapterDisplayConfigUpdate2 untuk memungkinkan klien memberi tahu server cara memperbarui konfigurasi monitor.
Sintaks
HRESULT IddCxAdapterDisplayConfigUpdate2(
IDDCX_ADAPTER AdapterObject,
const IDARG_IN_ADAPTERDISPLAYCONFIGUPDATE2 *pInArgs
);
Parameter
AdapterObject
[in] Objek IDDCX_ADAPTER adaptor jarak jauh yang konfigurasi tampilannya ditentukan.
pInArgs
[in] Arahkan ke struktur IDARG_IN_ADAPTERDISPLAYCONFIGUPDATE2 yang berisi argumen input ke fungsi.
Nilai kembali
IddCxAdapterDisplayConfigUpdate2 mengembalikan STATUS_SUCCESS setelah berhasil; jika tidak, kode kesalahan akan menampilkan kode kesalahan yang sesuai.
Keterangan
Driver tampilan tidak langsung jarak jauh dapat memanggil IddCxAdapterDisplayConfigUpdate2 untuk mengatur mode, colorimetry, dan nilai lain yang harus digunakan OS untuk monitor tertentu. Hanya driver jarak jauh yang dapat memanggil fungsi ini.
Untuk informasi selengkapnya tentang dukungan HDR, lihat Pembaruan IddCx versi 1.10.
Struktur IDDCX_DISPLAYCONFIGPATH2 didefinisikan singgah sehingga tidak semua informasi harus diberikan dalam setiap panggilan. Misalnya, beberapa jalur mungkin tidak menyediakan data colorimetry jika mode warna bukan HDR atau WCG, atau IddCxAdapterDisplayConfigUpdate2 dapat dipanggil untuk hanya memperbarui tingkat putih SDR jika tidak ada perubahan tata letak yang diperlukan.
Mode kontrol (mengatur bendera IDDCX_DISPLAYCONFIGPATH2_FLAGS_MODE_VALID untuk jalur) memiliki beberapa aturan dan klarifikasi tambahan:
- Jika ada jalur yang telah IDDCX_DISPLAYCONFIGPATH2_FLAGS_MODE_VALID diatur, semua jalur yang disediakan harus mengaturnya
- Ketika IDDCX_DISPLAYCONFIGPATH2_FLAGS_MODE_VALID disediakan di semua jalur, jalur aktif apa pun yang saat ini tidak ada dalam daftar jalur akan menjadi tidak aktif
- Jika hanya bendera non-IDDCX_DISPLAYCONFIGPATH2_FLAGS_MODE_VALID yang diatur maka hanya jalur yang akan diperbarui yang perlu ada
- Bergantung pada mode warna yang ditentukan, data tambahan mungkin diperlukan untuk jalur. Tabel berikut menunjukkan bendera tambahan apa yang harus diatur:
Mode warna | IDDCX_DISPLAYCONFIGPATH2_FLAGS_MONITOR_COLORIMETRY_VALID | IDDCX_DISPLAYCONFIGPATH2_FLAGS_MONITOR_SDRWHITELEVEL_VALID |
---|---|---|
SDR | Tidak | Tidak |
SDRWCG | Ya | Tidak |
HDR | Ya | Ya |
Panggilan pertama versus berikutnya ke IddCxAdapterDisplayConfigUpdate2
Pertama kali jalur disertakan dalam panggilan IddCxAdapterDisplayConfigUpdate2 memiliki persyaratan yang berbeda dari waktu berikutnya. Tabel berikut menguraikan persyaratan.
Bidang jalur | Diperlukan dalam panggilan awal untuk jalur | Dapat diperbarui setelah panggilan awal | Bagaimana klien Windows akan mendapatkan info |
---|---|---|---|
Mode | Ya | Ya | QueryDisplayConfig akan menyediakan konfigurasi tampilan klien dan WM_DISPLAYCHANGE dikirim saat konfigurasi tampilan berubah; AdvancedColorInfo.CurrentAdvancedColorKind akan memberikan mode warna |
Faktor skala | Ya | Ya | Driver dapat menggunakan metode yang digunakan untuk IddCxAdapterDisplayConfigUpdate |
Ukuran fisik | Ya jika tidak ada EDID yang lulus | Tidak | Tidak diperlukan jika EDID lulus |
Colorimetry | Ya untuk mode warna non SDR | Ya | Sebagian besar bidang dari bidang AdvancedColorInfo terkait |
Tingkat putih SDR | Ya untuk mode warna HDR, defaultnya adalah 80 nits | Ya | AdvancedColorInfo.SdrWhiteLevelInNits, lihat DirectX dengan Warna Tingkat Lanjut pada tampilan HDR/SDR untuk informasi selengkapnya |
Perbedaan perilaku saat berjalan pada pembaruan September Windows 11, versi 22H2
Karena fungsionalitas OS yang mendasar, dukungan untuk driver yang meminta mode warna HDR dan WCG saat berjalan pada Windows 11, Pembaruan September versi 22H2 sedikit berbeda dari saat berjalan pada rilis platform Windows yang datang pada tahun 2024. Driver dapat menggunakan fungsi IddCxGetVersion untuk menentukan OS mana yang mereka jalankan. Tabel berikut menjelaskan mode warna mana yang dapat diminta driver tergantung pada deskriptor monitor yang sebelumnya disediakan untuk OS:
Jenis Edid | 22H2 September Memperbarui kemungkinan mode warna | Rilis platform dalam mode warna 2024 yang mungkin |
---|---|---|
Tidak ada | SDR, HDR | SDR, SDRWCG, HDR |
SDR | SDR, SDRWCG | SDR, SDRWCG |
HDR | SDR, HDR | SDR, SDRWCG, HDR |
Contoh
Beberapa contoh jalur mana yang akan disertakan dalam panggilan IddCxAdapterDisplayConfigUpdate2 berikutnya mengikuti. Pada awal setiap skenario, sesi jarak jauh memiliki jalur berikut yang dikonfigurasi:
Monitor | Resolusi | Posisi desktop | Mode warna |
---|---|---|---|
1 | 1920x1080 @ 30Hz | 0,0 | SDR |
2 | 1024x768 @ 30Hz | 1024,0 | SDRWCG |
3 | 3840x2160 @ 30Hz | 0,1848 | HDR |
Skenario 1 - Ubah posisi desktop Monitor 3 ke kiri Monitor 1
Monitor | Bendera | Detail |
---|---|---|
1 | IDDCX_DISPLAYCONFIGPATH2_FLAGS_MODE_VALID | Tidak ada perubahan pada data mode saat ini |
2 | IDDCX_DISPLAYCONFIGPATH2_FLAGS_MODE_VALID | Tidak ada perubahan pada data mode saat ini |
3 | IDDCX_DISPLAYCONFIGPATH2_FLAGS_MODE_VALID | Ubah posisi desktop menjadi -3840,0 |
Skenario 2 – Ubah monitor 2 dari SDRWCG ke SDR
Monitor | Bendera | Detail |
---|---|---|
1 | IDDCX_DISPLAYCONFIGPATH2_FLAGS_MODE_VALID | Tidak ada perubahan pada data mode saat ini |
2 | IDDCX_DISPLAYCONFIGPATH2_FLAGS_MODE_VALID | Mengatur mode warna baru |
3 | IDDCX_DISPLAYCONFIGPATH2_FLAGS_MODE_VALID | Tidak ada perubahan pada data mode saat ini |
Skenario 3 – Ubah monitor 1 dari SDR ke HDR
Monitor | Bendera | Detail |
---|---|---|
1 | IDDCX_DISPLAYCONFIGPATH2_FLAGS_MODE_VALID, IDDCX_DISPLAYCONFIGPATH2_FLAGS_MONITOR_COLORIMETRY_VALID, IDDCX_DISPLAYCONFIGPATH2_FLAGS_MONITOR_SDRWHITELEVEL_VALID | Mengatur mode warna baru, colorimetry, dan tingkat putih SDR |
2 | IDDCX_DISPLAYCONFIGPATH2_FLAGS_MODE_VALID | Tidak ada perubahan pada data mode saat ini |
3 | IDDCX_DISPLAYCONFIGPATH2_FLAGS_MODE_VALID | Tidak ada perubahan pada data mode saat ini |
Skenario 4 – Faktor skala perubahan Monitor 2
Monitor | Bendera | Detail |
---|---|---|
2 | IDDCX_DISPLAYCONFIGPATH2_FLAGS_MONITOR_SCALE_FACTOR_VALID | Mengatur faktor skala baru |
Skenario 5 - Ubah faktor skala Monitor 2 dan posisi desktop Monitor 3 yang tersisa dari Monitor 1
Monitor | Bendera | Detail |
---|---|---|
1 | IDDCX_DISPLAYCONFIGPATH2_FLAGS_MODE_VALID | Tidak ada perubahan pada data mode saat ini |
2 | IDDCX_DISPLAYCONFIGPATH2_FLAGS_MODE_VALID, IDDCX_DISPLAYCONFIGPATH2_FLAGS_MONITOR_SCALE_FACTOR_VALID | Tidak ada perubahan pada data mode saat ini, atur faktor skala baru |
3 | IDDCX_DISPLAYCONFIGPATH2_FLAGS_MODE_VALID | Ubah posisi desktop menjadi -3840,0 |
Skenario 6 – Hapus Monitor 2 dari konfigurasi saat ini
Monitor | Bendera | Detail |
---|---|---|
1 | IDDCX_DISPLAYCONFIGPATH2_FLAGS_MODE_VALID | Tidak ada perubahan pada data mode saat ini |
3 | IDDCX_DISPLAYCONFIGPATH2_FLAGS_MODE_VALID | Tidak ada perubahan pada data mode saat ini |
Persyaratan
Persyaratan | Nilai |
---|---|
Klien minimum yang didukung | Windows 11, Pembaruan September versi 22H2 (IddCx versi 1.10) |
Header | iddcx.h |