헤드 탑재 및 특수 모니터용 EDID 확장
이 페이지에서는 디스플레이 제조업체가 HMD(헤드 탑재 디스플레이)에서 EDID CTA(소비자 기술 연결) 확장을 구현하는 방법 또는 Windows가 디스플레이를 특수 디스플레이로 인식하여 Windows OS의 각 계층이 올바르게 처리할 수 있도록 하는 특수 디스플레이 펌웨어를 구현하는 방법에 대한 지침을 제공합니다. 표시 및 모니터라는 용어는 동의어입니다.
이 EDID 확장이 없으면 HMD 및 특수 디스플레이에 다음과 같은 문제가 발생합니다.
- Windows 데스크톱이 디스플레이로 확장되고, 앱이 디스플레이로 실행될 수 있으며, 마우스 커서가 디스플레이로 로밍될 수 있습니다. 사용자가 이를 기대하지 않는 경우 이 상태에서 복구하는 것이 혼란스러울 수 있습니다.
- 타사 작성자는 디스플레이에 대한 단독 액세스를 허용하지 않는 HWND 기반 또는 CoreWindow 기반 프레젠테이션 API를 사용해야 합니다. Windows 데스크톱 작성기는 창이 있는 프레젠테이션 API를 디스플레이로 라우팅하여 일부 시나리오에서 비결정적 대기 시간이 추가로 발생할 수 있습니다.
위의 문제를 해결하려면 이 문서의 사양에 두 부분이 필요합니다.
- EDID가 포함된 디스플레이의 펌웨어는 공급업체별 데이터 블록을 포함하도록 수정되어 디스플레이의 Windows 관련 사용 사례를 식별합니다.
- Windows 디스플레이 하위 시스템은 이 문서에 설명된 공급업체별 데이터 블록을 올바르게 인식하고 디스플레이를 적절하게 처리합니다. Windows OS의 다른 버전에는 아래에서 호출되는 다른 동작이 있을 수 있습니다.
1의 조합입니다. 2 단계를 반복합니다. 위의 경우 디스플레이가 처음 연결되는 순간부터 올바른 Windows 동작이 발생합니다. 특히 HMD 및 특정 특수 디스플레이는 일반 Windows 데스크톱 환경에 포함되지 않으며 , Windows.Devices.Display.Core API를 사용하여 디스플레이에 대한 액세스는 타사 작성자가 사용할 수 있게 됩니다.
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는 다른 데이터 블록에 상대적인 VSDB 순서를 포함하여 ANSI/CTA-861-G 에 설명되어 있습니다.
VSDB 구조체에는 다음 표에 설명된 형식과 값이 있어야 합니다.
공급업체별 태그 코드 [3비트]
이 필드는 로 0x3
설정해야 합니다.
길이 [5비트]
이 바이트를 포함하지 않는 데이터 블록의 총 길이입니다. 이 필드는 로 0x15
설정해야 합니다.
IEEE OUI [3바이트]
표시를 식별하기 위해 Microsoft에 할당된 IEEE OUI(조직 고유 식별자)는 0x5C
순차적 바이트 순서로 , 0x12
, 0xCA
입니다.
버전 [1 바이트]
Microsoft Display Vendor 관련 데이터 블록의 콘텐츠와 연결된 버전 번호입니다.
권장 Use-Case | 버전 | 지원되는 Windows 릴리스 |
---|---|---|
Windows Mixed Reality 환경에서 사용할 HMD(VR/AR) 디스플레이 디바이스 | 0x1 |
Windows 10 크리에이터 업데이트 이상에서 지원됨 |
타사 작성기에서 사용할 HMD(VR/AR) 디스플레이 디바이스(Windows Mixed Reality 환경 제외) | 0x2 |
Windows 10 2018년 10월 업데이트 이상에서 지원됨 |
HMD가 아닌 특수 디스플레이 디바이스 | 0x3 |
다음 Windows vNext 이상에서 지원됨 |
데스크톱 사용 플래그 [1비트]
이 VSDB의 버전 0x3
이상에서 이 비트는 디스플레이가 데스크톱의 일부여야 하는지 여부를 나타냅니다.
- 디스플레이가 바탕 화면의 일부여야 하는 경우 로 설정
0x1
해야 합니다. - 디스플레이가 바탕 화면의 일부가 아니어야 하는 경우 로 설정
0x0
해야 합니다.
이 VSDB 버전 및 0x2
버전 0x1
에서 이 값은 항상 로 0x0
설정되어야 합니다.
타사 사용 플래그 [1비트]
이 VSDB의 버전 0x3
이상에서 이 비트는 타사 작성자가 디스플레이를 사용할 수 있는지 또는 Microsoft에서 제공한 Windows 작성자만 사용할 수 있는지 여부를 나타냅니다.
- Windows가 아닌 소프트웨어 작성기에서 디스플레이를 사용할 수 있어야 하는 경우 로 설정
0x1
해야 합니다. - Windows 작성기에서만 디스플레이를 사용해야 하는 경우 로 설정
0x0
해야 합니다.
이 VSDB 버전 및 0x2
버전 0x1
에서 이 값은 항상 로 0x0
설정되어야 합니다.
제품 기본 사용 사례 표시 [5비트]
디스플레이 디바이스의 기본 사용 사례:
- 테스트 장비 -
0x1
- 제네릭 디스플레이 -
0x2
- 텔레비전 디스플레이 -
0x3
- 데스크톱 생산성 디스플레이 -
0x4
- 데스크톱 게임 디스플레이 -
0x5
- 프레젠테이션 표시 -
0x6
- 가상 현실 헤드셋 -
0x7
- 증강 현실 -
0x8
- 비디오 월 디스플레이 -
0x10
- 의료 이미징 디스플레이 -
0x11
- 전용 게임 디스플레이 -
0x12
- 전용 비디오 모니터 디스플레이 -
0x13
- 액세서리 디스플레이 -
0x14
컨테이너 ID [16바이트]
각 디바이스에 고유한 16 바이트 범용 고유 식별자입니다. 이는 공장 바닥에 불이 붙은 식별자입니다.
설명
이전 운영 체제와의 최대 호환성을 유지하려면 HMD에서 이 EDID 확장의 버전 0x1
과 0x2
를 계속 사용하는 것이 좋습니다. HMD에 사용할 값은 버전에서 위의 섹션을 참조하세요.