Extended Display Identification Data
Extended Display Identification Data is a metadata format for display devices to describe their capabilities to a video source. The data format is defined by a standard published by the Video Electronics Standards Association.
The EDID data structure includes manufacturer name and serial number, product type, phosphor or filter type, timings supported by the display, display size, luminance data and pixel mapping data.
DisplayID is a VESA standard targeted to replace EDID and E-EDID extensions with a uniform format suited for both PC monitor and consumer electronics devices.
All CTA standards are free to everyone since May 2018.
Background
EDID structure versions range from v1.0 to v1.4; all these define upwards-compatible 128-byte structures. Version 2.0 defined a new 256-byte structure but it has been deprecated and replaced by v1.3 which supports multiple extension blocks. HDMI versions 1.0–1.3c use EDID structure v1.3.Before Display Data Channel and EDID were defined, there was no standard way for a graphics card to know what kind of display device it was connected to. Some VGA connectors in personal computers provided a basic form of identification by connecting one, two or three pins to ground, but this coding was not standardized.
The channel for transmitting the EDID from the display to the graphics card is usually the I²C-bus, defined in DDC2B.
The EDID is often stored in the monitor in a memory device called a serial PROM or EEPROM and is accessible via the I²C-bus at address. The EDID PROM can often be read by the host PC even if the display itself is turned off.
Many software packages can read and display the EDID information, such as read-edid for Linux and DOS, PowerStrip for Microsoft Windows and XFree86 for Linux and BSD unix. Mac OS X natively reads EDID information and programs such as SwitchResX or DisplayConfigX can display the information as well as use it to define custom resolutions.
Enhanced EDID was introduced at the same time as E-DDC; it introduced EDID structure version 1.3 which supports multiple extensions blocks and deprecated EDID version 2.0 structure. Data fields for preferred timing, range limits, and monitor name are required in E-EDID. E-EDID also supports dual GTF timings and aspect ratio change.
With the use of extensions, E-EDID string can be lengthened up to 32 KBytes.
EDID Extensions assigned by VESA
- Timing Extension
- Additional Timing Data Block
- Video Timing Block Extension
- EDID 2.0 Extension
- Display Information Extension
- Localized String Extension
- Microdisplay Interface Extension
- Display ID Extension
- Display Transfer Characteristics Data Block
- Block Map
- Display Device Data Block
- Extension defined by monitor manufacturer : According to LS-EXT, actual contents varies from manufacturer. However, the value is later used by DDDB.
Revision history
- August 1994, DDC standard version 1 – EDID v1.0 structure.
- April 1996, EDID standard version 2 – EDID v1.1 structure.
- 1997, EDID standard version 3 – EDID structures v1.2 and v2.0
- February 2000, E-EDID Standard Release A, v1.0 – EDID structure v1.3, EDID structure v2.0 deprecated
- September 2006 – E-EDID Standard Release A, v2.0 – EDID structure v1.4
Limitations
Many Wide XGA panels do not advertise their native resolution in the standard timing descriptors, instead offering only a resolution of 1280×768. Some panels advertise a resolution only slightly smaller than the native, such as 1360×765. For these panels to be able to show a pixel perfect image, the EDID data must be ignored by the display driver or the driver must correctly interpret the DTD and be able to resolve resolutions whose size is not divisible by 8. Special programs are available to override the standard timing descriptors from EDID data. Even this is not always possible, as some vendors' graphics drivers require specific registry hacks to implement custom resolutions, which can make it very difficult to use the screen's native resolution.
EDID 1.4 data format
Structure, version 1.4
Detailed Timing Descriptor
When used for another descriptor, the pixel clock and some other bytes are set to 0:Display Descriptors
Bytes | Description |
0–1 | = Display Descriptor. |
2 | = reserved |
3 | Descriptor type. FA –FF currently defined. 00 –0F reserved for vendors. |
4 | = reserved, except for Display Range Limits Descriptor. |
5–17 | Defined by descriptor type. If text, code page 437 text, terminated with LF and padded with SP. |
Currently defined descriptor types are:
- : Display serial number
- : Unspecified text
- : Display range limits. 6- or 13-byte binary descriptor.
- : Display name.
- : Additional white point data. 2× 5-byte descriptors, padded with
0A 20 20
. - : Additional standard timing identifiers. 6× 2-byte descriptors, padded with
0A
. - : Display Color Management.
- : CVT 3-Byte Timing Codes.
- : Additional standard timing 3.
- : Dummy identifier.
- : Manufacturer reserved descriptors.
Display Range Limits
Descriptor
With GTF secondary curve
With CVT support
Additional white point descriptor
Color management data descriptor
Bytes | Description |
0–4 | |
5 | Version: 03 |
6 | Red a3 lsb |
7 | Red a3 msb |
8 | Red a2 lsb |
9 | Red a2 msb |
10 | Green a3 lsb |
11 | Green a3 msb |
12 | Green a2 lsb |
13 | Green a2 msb |
14 | Blue a3 lsb |
15 | Blue a3 msb |
16 | Blue a2 lsb |
17 | Blue a2 msb |
CVT 3-byte timing codes descriptor
Additional standard timings
EIA/CEA-861 extension block
The CEA EDID Timing Extension was first introduced in EIA/CEA-861, and has since been updated several times, most notably with the −861B revision, −861D, −861E, and −861F which was published on June 4, 2013. According to Brian Markwalter, senior vice president, research and standards, CEA, −861F "includes a number of noteworthy enhancements, including support for several new Ultra HD and widescreen video formats and additional colorimetry schemes.”The most recent version, CTA-861-G, originally published in November 2016, was made available for free in November 2017 after some necessary changes due to a trademark complaint.
Version 1 allowed the specification of video timings only through the use of 18-byte Detailed Timing Descriptors . In all cases, the "preferred" timing should be the first DTD listed in a CEA EDID Timing Extension.
Version 2 added the capability to designate a number of DTDs as "native" and also included some "basic discovery" functionality for whether the display device contains support for "basic audio", YCbCr pixel formats, and underscan.
Version 3 allows two different ways to specify the timings of available digital TV formats: As in Version 1 & 2 by the use of 18-byte DTDs, or by the use of the Short Video Descriptor . HDMI 1.0–1.3c uses this version.
Version 3 also includes four new optional types of data blocks: Video Data Blocks containing the aforementioned Short Video Descriptor, Audio Data Blocks containing Short Audio Descriptors, Speaker Allocation Data Blocks containing information about the speaker configuration of the display device, and Vendor Specific Data Blocks which can contain information specific to a given vendor's use.
CEA EDID Timing Extension data format - Version 3
The Data Block Collection contains one or more data blocks detailing video, audio, and speaker placement information about the display. The blocks can be placed in any order, and the initial byte of each block defines both its type and its length:Once one data block has ended, the next byte is assumed to be the beginning of the next data block. This is the case until the byte where the DTDs are known to begin.
Audio Data Blocks contain one or more 3-byte Short Audio Descriptors. Each SAD details audio format, channel number, and bitrate/resolution capabilities of the display as follows:
Video Data Blocks will contain one or more 1-byte Short Video Descriptors.
Notes: Parentheses indicate instances where pixels are repeated to meet the minimum speed requirements of the interface. For example, in the 720x240p case, the pixels on each line are double-clocked. In the x480i case, the number of pixels on each line, and thus the number of times that they are repeated, is variable, and is sent to the DTV monitor by the source device.
Increased Hactive expressions include “2x” and “4x” indicate two and four times the reference resolution, respectively.
Video modes with vertical refresh frequency being a multiple of 6Hz are considered to be the same timing as equivalent NTSC modes where vertical refresh is adjusted by a factor of 1000/1001. As VESA DMT specifies 0.5% pixel clock tolerance, which 5 times more than the required change, pixel clocks can be adjusted to maintain NTSC compatibility; typically, 240p, 480p, and 480i modes are adjusted, while 576p, 576i and HDTV formats are not.
- The EIA/CEA-861 and 861-A standards included only numbers 1–7 and numbers 17–22 above and are considered primary video format timings.
- The EIA/CEA-861-B standard has the first 34 short video descriptors above. It is used by HDMI 1.0–1.2a.
- The EIA/CEA-861-C and -D standards have the first 59 short video descriptors above. EIA/CEA-861-D is used by HDMI 1.3–1.3c.
- The EIA/CEA-861-E standard has the first 64 short video descriptors above. It is used by HDMI 1.4–1.4b.
- The CTA-861-F standard has the first 107 short video descriptors above. It is used by HDMI 2.0–2.0b.
- The CTA-861-G standard has the full list of 154 short video descriptors above. It is used by HDMI 2.1.
If a Speaker Allocation Data Block is present, it will consist of three bytes. The second and third are reserved, but the first contains information about which speakers are present in the display device: