Condividi tramite


Estensione EDID per monitor montati e specializzati

Questa pagina fornisce indicazioni per i produttori di display su come implementare un'estensione CTA EDID (Consumer Technology Association) in HMD (Head Mounted Display) o un firmware di visualizzazione specializzato che consentirà a Windows di riconoscere la visualizzazione come speciale e quindi abilitare ogni livello nel sistema operativo Windows per gestirli correttamente. I termini visualizzati e monitor sono sinonimi.

Senza questa estensione EDID, gli HMD e le visualizzazioni specializzate presentano i problemi seguenti:

  • Il desktop di Windows verrà esteso alla visualizzazione, le app possono essere avviate e il cursore del mouse può spostarsi sullo schermo. Se gli utenti non si aspettano questo problema, può generare confusione per il ripristino da questo stato.
  • I compositori di terze parti devono usare API di presentazione basate su HWND o CoreWindow, che non consentono l'accesso esclusivo alla visualizzazione. Il programma di composizione desktop di Windows è responsabile del routing delle API di presentazione con finestra per la visualizzazione, che può comportare una latenza aggiuntiva non deterministica in alcuni scenari.

Per risolvere i problemi precedenti, sono necessarie due parti per la specifica in questo documento:

  1. Il firmware nella visualizzazione che contiene l'EDID verrà modificato in modo da contenere un blocco di dati specifico del fornitore per identificare il caso d'uso specifico di Windows dello schermo.
  2. Il sottosistema di visualizzazione di Windows riconosce correttamente il blocco di dati specifico del fornitore descritto in questo documento e tratta le visualizzazioni in modo appropriato. Si noti che versioni diverse del sistema operativo Windows possono avere comportamenti diversi, indicati di seguito.

Combinazione di 1. e 2. in precedenza verrà restituito il comportamento corretto di Windows dal momento in cui lo schermo è collegato per la prima volta. In particolare, gli HMD e alcuni display specializzati non saranno inclusi nell'ambiente desktop Di Windows normale e l'accesso alla visualizzazione con le API Windows.Devices.Display.Core diventerà disponibile per i compositori di terze parti.

Video Electronics Standards Association (VESA) ha definito campi standardizzati in DisplayId v2.0 che fornisce l'accesso a informazioni simili come il VSDB definito in questo documento. DisplayID v2.0 o versione successiva è il meccanismo preferito per recapitare questi dati per gli HMD, tuttavia se un dispositivo deve usare un EDID per altri motivi, questo VSDB deve essere usato.

Blocco di dati specifico del fornitore (VSDB)

L'entità responsabile della scrittura del codice firmware che contiene l'EDID deve includere un blocco di estensione CTA e all'interno di tale blocco inserire un blocco di dati specifico del fornitore (VSDB) definito da Microsoft. La struttura degli EDID è descritta in "VESA Enhanced Extended Display Identification Data Standard" (E-EDID), vedere la versione 1.4, versione A, revisione 2 con la sezione 2.2 che descrive i blocchi di estensione. Il blocco di estensione CTA è definito nei documenti della serie CTA 861 "A DTV Profile for Uncompressed High-Speed Digital Interfaces". I VSDB sono descritti in ANSI/CTA-861-G , incluso l'ordine di VSDB rispetto ad altri blocchi di dati.

La struttura VSDB deve avere il formato e i valori descritti nella tabella seguente.

Tabella che mostra la struttura e i valori di VSDB per le visualizzazioni specializzate.

Codice tag specifico del fornitore [3 bit]

Questo campo deve essere impostato su 0x3.

Lunghezza [5 bit]

Lunghezza totale del blocco di dati, non incluso questo byte. Questo campo deve essere impostato su 0x15.

IEEE OUI [3 byte]

Ieee Organizationally Unique Identifier (OUI) assegnato a Microsoft per identificare le visualizzazioni: 0x5C, 0x12, 0xCA, , in ordine di byte sequenziale.

Versione [1 byte]

Numero di versione associato al contenuto del blocco di dati specifico del fornitore di Microsoft Display.

Use-Case consigliate Versione Versione di Windows supportata
Dispositivi di visualizzazione HMD (VR/AR) che verranno usati dall'esperienza di Windows Mixed Reality 0x1 Supportato nell'aggiornamento di Windows 10 Creator e versioni successive
Dispositivi di visualizzazione HMD (VR/AR) che verranno usati da compositori di terze parti (oltre all'esperienza di Windows Mixed Reality) 0x2 Supportato in Aggiornamento di Windows 10 (ottobre 2018) e versioni successive
Dispositivi di visualizzazione specializzati che non sono HMD 0x3 Supportato nella versione successiva di Windows vNext e versioni successive

Flag di utilizzo del desktop [1 bit]

Nella versione 0x3 e versioni successive di questo VSDB, questo bit indica se la visualizzazione deve far parte del desktop.

  • Se la visualizzazione deve far parte del desktop, deve essere impostata su 0x1.
  • Se lo schermo non deve far parte del desktop, deve essere impostato su 0x0.

Nella versione 0x1 e 0x2 in questo VSDB questo valore deve essere sempre impostato su 0x0.

Flag di utilizzo di terze parti [1 bit]

Nella versione 0x3 e versioni successive di questo VSDB, questo bit indica se la visualizzazione deve essere utilizzabile da compositori di terze parti o solo dal programma di composizione di Windows fornito da Microsoft.

  • Se lo schermo deve essere utilizzabile da compositori software non Windows, deve essere impostato su 0x1.
  • Se la visualizzazione deve essere utilizzata solo dal programma di composizione di Windows, deve essere impostata su 0x0.

Nella versione 0x1 e 0x2 in questo VSDB questo valore deve essere sempre impostato su 0x0.

Visualizzare il caso d'uso principale del prodotto [5 bit]

Il caso d'uso principale del dispositivo di visualizzazione:

  • Apparecchiature di test - 0x1
  • Visualizzazione generica - 0x2
  • Display televisivo - 0x3
  • Visualizzazione della produttività del desktop - 0x4
  • Visualizzazione di giochi desktop - 0x5
  • Visualizzazione presentazione - 0x6
  • Visori VR di realtà virtuale - 0x7
  • Realtà aumentata - 0x8
  • Display video wall - 0x10
  • Visualizzazione dell'immagine medica - 0x11
  • Display di gioco dedicato - 0x12
  • Visualizzazione del monitor video dedicato - 0x13
  • Visualizzazione accessori - 0x14

ID contenitore [16 byte]

Identificatore univoco universale a 16 byte univoco per ogni dispositivo. Questo è l'identificatore che viene bruciato nel pavimento della fabbrica.

Commenti

Si noti che per mantenere la massima compatibilità con i sistemi operativi precedenti, è consigliabile che gli HMD continuino a usare la versione 0x1 e 0x2 di questa estensione EDID. Vedere la sezione precedente in Version per i valori da usare per gli HMD.