共用方式為


前端掛接和特製化監視器的EDID擴充功能

此頁面提供顯示製造商的指引,說明如何在 HMD 中實作 EDID CTA (消費者技術關聯) 延伸模組, (前端掛接顯示器) 或特殊顯示韌體,讓 Windows 辨識為特殊顯示器,進而讓 Windows OS 中的每一層正確處理它們。 顯示和監視詞彙是同義字。

如果沒有此 EDID 擴充功能,HMD 和特製化顯示器就會發生下列問題:

  • Windows 桌面將會延伸至顯示器、應用程式可以啟動到顯示器上,而滑鼠游標可以漫遊到顯示器上。 如果使用者不預期這種情況,從這個狀態復原可能會令人困惑。
  • 第三方撰寫器必須使用 HWND 型或 CoreWindow 型簡報 API,這不允許獨佔存取顯示器。 Windows 桌面撰寫器負責將視窗化簡報 API 路由傳送至顯示器,這在某些情況下可能會產生額外的不具決定性延遲。

本檔中的規格需要兩個部分,才能解決上述問題:

  1. 包含 EDID 之顯示器中的韌體將會修改為包含 廠商特定數據區塊 ,以識別顯示器的Windows特定使用案例。
  2. Windows 顯示器子系統會正確辨識本檔中概述的廠商特定數據區塊,並適當地處理顯示。 請注意,不同的 Windows OS 版本可能會有不同的行為,如下所述。

1 的組合。 和 2 上述結果會在顯示器第一次插入時產生正確的 Windows 行為。 特別是,HMD 和特定特製化顯示器不會包含在一般 Windows 桌面環境中,而且使用 Windows.Devices.Display.Core API 存取顯示器將會可供第三方撰寫器使用。

Video Electronics Standard Association (VESA) 已在 DisplayId v2.0 中定義標準化字段,可存取與此文件中定義的 VSDB 類似的資訊。 DisplayID v2.0 或更新版本是針對 HMD 傳遞此數據的慣用機制,不過,如果裝置必須基於其他原因使用 EDID,則應使用此 VSDB。

VSDB (廠商特定的數據區塊)

負責撰寫包含EDID之韌體程式代碼的合作對象必須包含CTA擴充功能區塊,並在該區塊中放置 Microsoft 定義的廠商特定數據區塊 (VSDB) 。 EDID 的結構描述於「VESA 增強型擴充顯示識別數據標準」 (E-EDID) ,請參閱 1.4 版、版本 A、第 2 版,以及描述擴充區塊的第 2.2 節。 CTA 擴充功能區塊定義於 CTA 的 861 系列檔中「適用於未壓縮 High-Speed 數位介面的 DTV 配置檔」。 VSDB 會在 ANSI/CTA-861-G 中描述,包括相對於其他數據區塊的 VSDB 順序。

VSDB 結構必須具有下表概述的格式和值。

顯示特殊顯示之 VSDB 結構和值的數據表。

廠商特定的標籤代碼[3 位]

這個欄位必須設定為 0x3

長度 [5 位]

數據區塊的總長度,不包括這個位元組。 這個欄位必須設定為 0x15

IEEE OUI [3 個字節]

IEEE 組織唯一標識碼 (OUI) 指派給 Microsoft,以循序位元組順序識別顯示: 0x5C0x120xCA

版本 [1 位元組]

與 Microsoft Display Vendor-Specific Data Block 內容相關聯的版本號碼。

建議 Use-Case 版本 支援的 Windows 版本
HMD (VR/AR) 顯示 Windows Mixed Reality 體驗將使用的裝置 0x1 Windows 10 Creator 的 Update 和更新版本支援
HMD (VR/AR) 顯示裝置,這些裝置將由第三方撰寫器使用, (Windows Mixed Reality 體驗以外的) 0x2 Windows 10 2018 年 10 月更新和更新版本支援
非 HMD 的特殊顯示裝置 0x3 下一個 Windows vNext 和更新版本支援

桌面使用旗標[1 位]

在這個 VSDB 的版本和更新版本 0x3 上,這個位會指出顯示器是否應該是桌面的一部分。

  • 如果顯示器應該是桌面的一部分,這應該設定為 0x1
  • 如果顯示器不應該是桌面的一部分,這應該設定為 0x0

在這裡 VSDB 版本 0x10x2 版本中,此值應該一律設定為 0x0

第三方使用旗標 [1 位]

在這個 VSDB 的版本和更新版本 0x3 上,這個位表示顯示器是否應該可供第三方撰寫器使用,還是只能使用 Microsoft 提供的 Windows Compositor。

  • 如果非 Windows 軟體撰寫器應該可以使用顯示器,這應該設定為 0x1
  • 如果只應該由 Windows 撰寫器使用顯示器,這應該設定為 0x0

在這裡 VSDB 版本 0x10x2 版本中,此值應該一律設定為 0x0

顯示產品主要使用案例[5 位]

顯示裝置的主要使用案例:

  • 測試裝置 - 0x1
  • 一般顯示 - 0x2
  • 電視顯示器 - 0x3
  • 桌面生產力顯示 - 0x4
  • 桌面遊戲顯示 - 0x5
  • 簡報顯示 - 0x6
  • 虛擬實境頭戴裝置 - 0x7
  • 擴增實境 - 0x8
  • 視訊牆顯示器 - 0x10
  • 醫療影像顯示 - 0x11
  • 專用遊戲顯示 - 0x12
  • 專用視訊監視器顯示 - 0x13
  • 配件顯示 - 0x14

容器識別碼 [16 個字節]

每個裝置唯一的16位元組通用唯一標識碼。 這是在工廠樓層上所擷取的標識碼。

備註

請注意,為了維持與舊版操作系統的最大相容性,建議 HMD 繼續使用此 EDID 延伸模組的版本 0x10x2 。 請參閱上一節,以瞭解要用於 HMD 的值版本。