Extended Display Identification Data

From Wikipedia, the free encyclopedia
  (Redirected from EDID)
Jump to navigation Jump to search

Extended Display Identification Data (EDID) is a metadata format for display devices to describe their capabilities to a video source (e.g. graphics card or set-top box). The data format is defined by a standard published by the Video Electronics Standards Association (VESA).

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 (for digital displays only) 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.

Background[edit]

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.[citation needed] HDMI versions 1.0–1.3c use EDID structure v1.3.[1]

Before Display Data Channel (DDC) 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 (DDC1 used a different serial format which never gained popularity).

The EDID is often stored in the monitor in a memory device called a serial PROM (programmable read-only memory) or EEPROM (electrically erasable PROM) and is accessible via the I²C-bus at address 0xA0. 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[2] for Linux and DOS, PowerStrip[3] for Microsoft Windows and XFree86 for Linux and BSD unix. Mac OS X natively reads EDID information and programs such as SwitchResX[4] or DisplayConfigX[5] 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 (although it can be supported as an extension). 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.[clarification needed]

With the use of extensions, E-EDID string can be lengthened up to 32 KBytes.

EDID Extensions assigned by VESA[edit]

  • Timing Extension (00h)
  • Additional Timing Data Block (CEA EDID Timing Extension) (02h)
  • Video Timing Block Extension (VTB-EXT) (10h)
  • EDID 2.0 Extension (20h)
  • Display Information Extension (DI-EXT) (40h)
  • Localized String Extension (LS-EXT) (50h)
  • Microdisplay Interface Extension (MI-EXT) (60h)
  • Display ID Extension (70h)
  • Display Transfer Characteristics Data Block (DTCDB) (A7h, AFh, BFh)
  • Block Map (F0h)
  • Display Device Data Block (DDDB) (FFh)
  • Extension defined by monitor manufacturer (FFh): According to LS-EXT, actual contents varies from manufacturer. However, the value is later used by DDDB.

Revision history[edit]

  • 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[edit]

Some graphics card drivers have historically coped poorly with the EDID, using only its standard timing descriptors rather than its Detailed Timing Descriptors (DTDs). Even in cases where the DTDs were read, the drivers are/were still often limited by the standard timing descriptor limitation that the horizontal/vertical resolutions must be evenly divisible by 8. This means that many graphics cards cannot express the native resolutions of the most common wide screen flat panel displays and liquid crystal display televisions. The number of vertical pixels is calculated from the horizontal resolution and the selected aspect ratio. To be fully expressible, the size of wide screen display must thus be a multiple of 16×9 pixels. For 1366×768 pixel Wide XGA panels the nearest resolution expressible in the EDID standard timing descriptor syntax is 1360×765 pixels, typically leading to 3 pixel thin black bars. Specifying 1368 pixels as the screen width would yield an unnatural screen height of 769.5 pixels.

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 (notably those of Intel) require specific registry hacks to implement custom resolutions, which can make it very difficult to use the screen's native resolution.[6]

EDID 1.4 data format[edit]

EDID structure, version 1.4[7][8]
Bytes Description
0–19 Header information
0–7 Fixed header pattern: 00 FF FF FF FF FF FF 00
8–9 Manufacturer ID. This is a legacy Plug and Play ID assigned by Microsoft, which is a big-endian 16-bit value made up of three 5-bit letters: 00001=A, 00010=B, ... 11010=Z. E.g. 24 4d = 0 01001 00010 01101 = "IBM".
Bit 15 (Reserved, always 0)
Bits 14–10 First letter of manufacturer ID (byte 8, bits 6–2)
Bits 9–5 Second letter of manufacturer ID (byte 8, bit 1 through byte 9 bit 5)
Bits 4–0 Third letter of manufacturer ID (byte 9 bits 4–0)
10–11 Manufacturer product code. 16-bit number, little-endian.
12–15 Serial number. 32 bits, little endian.
16 Week of manufacture, or model year flag. Week numbering is not consistent between manufacturers.
17 Year of manufacture, less 1990 (1990–2245). If week=255, it is the model year instead.
18 EDID version, usually 1 (for 1.3)
19 EDID revision, usually 3 (for 1.3)
20–24 Basic display parameters.
20 Video input parameters bitmap
Bit 7=1 Digital input. If set, the following bit definitions apply:
Bits 6–4 Bit depth: 000=undefined, 001=6, 010=8, 011=10, 100=12, 101=14, 110=16 bits per color, 111=reserved
Bits 3–0 Video interface: 0000=undefined, 0001=HDMIa, 0010=HDMIb, 0100=MDDI, 0101=DisplayPort
Bit 7=0 Analog input. If clear, the following bit definitions apply:
Bits 6–5 Video white and sync levels, relative to blank: 00=+0.7/−0.3 V; 01=+0.714/−0.286 V; 10=+1.0/−0.4 V; 11=+0.7/0 V
Bit 4 Blank-to-black setup (pedestal) expected
Bit 3 Separate sync supported
Bit 2 Composite sync (on HSync) supported
Bit 1 Sync on green supported
Bit 0 VSync pulse must be serrated when composite or sync-on-green is used.
21 Horizontal screen size, in centimetres (range 1-255). If vsize=0, landscape aspect ratio (range 1.00-3.54), datavalue = (AR×100)-99 (example: 16:9 = 79, 4:3 = 34)
22 Vertical screen size, in centimetres. If hsize=0, portrait aspect ratio (range 0.28-0.99), datavalue = (100/AR)-99 (example: 9:16 = 79, 3:4 = 34). If either byte is 0, screen size and aspect ration are undefined (e.g. projector)
23 Display gamma, factory default (range 1.00–3.54), datavalue = (gamma×100)-100 = (gamma−1)×100. If 225, gamma is defined by DI-EXT block.
24 Supported features bitmap
Bit 7 DPMS standby supported
Bit 6 DPMS suspend supported
Bit 5 DPMS active-off supported
Bits 4–3 Display type (digital): 00 = RGB 4:4:4; 01 = RGB 4:4:4 + YCrCb 4:4:4; 10 = RGB 4:4:4 + YCrCb 4:2:2; 11 = RGB 4:4:4 + YCrCb 4:4:4 + YCrCb 4:2:2
Bits 4–3 Display type (analog): 00 = Monochrome or Grayscale; 01 = RGB color; 10 = Non-RGB color; 11 = Undefined
Bit 2 Standard sRGB colour space. Bytes 25–34 must contain sRGB standard values.
Bit 1 Preferred timing mode specified in descriptor block 1. For EDID 1.3+ the preferred timing mode is always in the first Detailed Timing Descriptor. In that case, this bit specifies whether the preferred timing mode includes native pixel format and refresh rate.
Bit 0 Continuous timings with GTF or CVT
25–34 Chromaticity coordinates.
10-bit CIE 1931 xy coordinates for red, green, blue, and white point
25 Red and green least-significant bits (2−9, 2−10)
Bits 7–6 Red x value least-significant 2 bits
Bits 5–4 Red y value least-significant 2 bits
Bits 3–2 Green x value least-significant 2 bits
Bits 1–0 Green y value least-significant 2 bits
26 Blue and white least-significant 2 bits
27 Red x value most significant 8 bits (2−1,...,2−8). 0–255 encodes fractional 0–0.996 (255/256); 0–0.999 (1023/1024) with lsbits
28 Red y value most significant 8 bits
29–30 Green x and y value most significant 8 bits
31–32 Blue x and y value most significant 8 bits
33–34 Default white point x and y value most significant 8 bits
35–37 Established timing bitmap. Supported bitmap for (formerly) very common timing modes.
35 Bit 7 720×400 @ 70 Hz (VGA)
Bit 6 720×400 @ 88 Hz (XGA)
Bit 5 640×480 @ 60 Hz (VGA)
Bit 4 640×480 @ 67 Hz (Apple Macintosh II)
Bit 3 640×480 @ 72 Hz
Bit 2 640×480 @ 75 Hz
Bit 1 800×600 @ 56 Hz
Bit 0 800×600 @ 60 Hz
36 Bit 7 800×600 @ 72 Hz
Bit 6 800×600 @ 75 Hz
Bit 5 832×624 @ 75 Hz (Apple Macintosh II)
Bit 4 1024×768 @ 87 Hz, interlaced (1024×768i)
Bit 3 1024×768 @ 60 Hz
Bit 2 1024×768 @ 72 Hz
Bit 1 1024×768 @ 75 Hz
Bit 0 1280×1024 @ 75 Hz
37 Bit 7 1152x870 @ 75 Hz (Apple Macintosh II)
Bits 6–0 Other manufacturer-specific display modes
38–53 Standard timing information. Up to 8 2-byte fields describing standard display modes.
Unused fields are filled with 01 01
Byte 0 X resolution, divided by 8, less 31 (256–2288 pixels, value 00 is reserved and should not be used)
Byte 1 bits 7–6 Image aspect ratio: 00=16:10; 01=4:3; 10=5:4; 11=16:9.
(Versions prior to 1.3 defined 00 as 1:1.)
Byte 1 bits 5–0 Vertical frequency, less 60 (60–123 Hz)
54–71 Descriptor 1 Descriptor blocks. Detailed timing descriptors, in decreasing preference order. After all detailed timing descriptors, additional descriptors are permitted:
  • Monitor range limits (required)
  • ASCII text (monitor name (required), monitor serial number or unstructured text)
  • 6 Additional standard timing information blocks
  • Colour point data
72–89 Descriptor 2
90–107 Descriptor 3
108–125 Descriptor 4
126 Number of extensions to follow. 0 if no extensions.
127 Checksum. Sum of all 128 bytes should equal 0 (mod 256).
EDID Detailed Timing Descriptor[7]
Bytes Description
0–1 Pixel clock in 10 kHz units. (0.01–655.35 MHz, little-endian)
2 Horizontal active pixels 8 lsbits (0–4095)
3 Horizontal blanking pixels 8 lsbits (0–4095) End of active to start of next active.
4 Bits 7–4 Horizontal active pixels 4 msbits
Bits 3–0 Horizontal blanking pixels 4 msbits
5 Vertical active lines 8 lsbits (0–4095)
6 Vertical blanking lines 8 lsbits (0–4095)
7 Bits 7–4 Vertical active lines 4 msbits
Bits 3–0 Vertical blanking lines 4 msbits
8 Horizontal front porch (sync offset) pixels 8 lsbits (0–1023) From blanking start
9 Horizontal sync pulse width pixels 8 lsbits (0–1023)
10 Bits 7–4 Vertical front porch (sync offset) lines 4 lsbits (0–63)
Bits 3–0 Vertical sync pulse width lines 4 lsbits (0–63)
11 Bits 7–6 Horizontal front porch (sync offset) pixels 2 msbits
Bits 5–4 Horizontal sync pulse width pixels 2 msbits
Bits 3–2 Vertical front porch (sync offset) lines 2 msbits
Bits 1–0 Vertical sync pulse width lines 2 msbits
12 Horizontal image size, mm, 8 lsbits (0–4095 mm, 161 in)
13 Vertical image size, mm, 8 lsbits (0–4095 mm, 161 in)
14 Bits 7–4 Horizontal image size, mm, 4 msbits
Bits 3–0 Vertical image size, mm, 4 msbits
15 Horizontal border pixels (one side; total is twice this)
16 Vertical border lines (one side; total is twice this)
17 Features bitmap
Bit 7 Interlaced
Bits 6–5 Stereo mode: 00=No stereo; other values depend on bit 0:
Bit 0=0: 01=Field sequential, sync=1 during right; 10=similar, sync=1 during left; 11=4-way interleaved stereo
Bit 0=1: 01=Right image on even lines; 10=Left image on even lines; 11=side-by-side
Bit 4=0 Analog sync.
If set, the following bit definitions apply:
Bit 3 Sync type: 0=Analog composite; 1=Bipolar analog composite
Bit 2 VSync serration (HSync during VSync)
Bit 1 Sync on all 3 RGB lines (else green only)
Bits 4-3=10 Digital composite (on HSync).
If set, the following bit definitions apply:
Bit 2 Vertical sync polarity (0=negative, 1=positive)
Bit 1 reserved
Bits 4-3=11 Digital separate sync.
If set, the following bit definitions apply:
Bit 2 VSync serration (HSync during VSync)
Bit 1 Horizontal Sync polarity (0=negative, 1=positive)
Bit 0 2-way line-interleaved or side-by-side interleaved stereo, if bits 6–5 are not 00.

When used for another descriptor, the pixel clock and some other bytes are set to 0:

EDID Other Monitor Descriptors[7]
Bytes Description
0–1 Zero, indicates not a detailed timing descriptor
2 Zero
3 Descriptor type. FAFF currently defined. 000F reserved for vendors.
4 Zero
5–17 Defined by descriptor type. If text, code page 437 text, terminated (if less than 13 bytes) with LF and padded with SP.

Currently defined descriptor types are:

  • 0xFF: Display serial number (ASCII text)
  • 0xFE: Unspecified text (ASCII text)
  • 0xFD: Display range limits. 6- or 13-byte (with additional timing) binary descriptor.
  • 0xFC: Display name (ASCII text).
  • 0xFB: Additional white point data. 2× 5-byte descriptors, padded with 0A 20 20.
  • 0xFA: Additional standard timing identifiers. 6× 2-byte descriptors, padded with 0A.
  • 0xF9 Display Color Management (DCM).
  • 0xF8 CVT 3-Byte Timing Codes.
  • 0xF7 Additional standard timing 3.
  • 0x10 Dummy identifier.
  • 00-0x0Fh Manufacturer reserved descriptors.
EDID Display Range Limits Descriptor[7]
Bytes Description
0–3 Standard header, byte 3 = 0xFD.
4 Offsets for display range limits
Bits 7–4 Unused, must be 0.
Bits 3–2 Horizontal rate offsets: 00=None, 10=+255 kHz for Max rate, 11=+255 kHz for Max and Min rates
Bits 1–0 Vertical rate offsets: 00=None, 10=+255 Hz for Max rate, 11=+255 Hz for Max and Min rates
5 Minimum vertical field rate (1–255 Hz) (256–512 Hz if offset)
6 Maximum vertical field rate (1–255 Hz) (256–512 Hz if offset)
7 Minimum horizontal line rate (1–255 kHz) (256–512 kHz if offset)
8 Maximum horizontal line rate (1–255 kHz) (256–512 kHz if offset)
9 Maximum pixel clock rate, rounded up to 10 MHz multiple (10–2550 MHz)
10 Extended timing information type:

00: Default GTF (when Basic display parameters byte 24 bit 0 is set.
01: No timing information.
02: Secondary GTF supported, parameters as follows.
04: CVT (when Basic display parameters byte 24 bit 0 is set), parameters as follows.

11-17 Video timing parameters (if byte 10 is 00 or 01, padded with 0A 20 20 20 20 20 20).
EDID Display Range Limits with GTF Secondary curve[7]
Bytes Description
10 02
11 Reserved, must be 0.
12 Start frequency for secondary curve, divided by 2 kHz (0–510 kHz)
13 GTF C value, multiplied by 2 (0–127.5)
14–15 GTF M value (0–65535, little-endian)
16 GTF K value (0–255)
17 GTF J value, multiplied by 2 (0–127.5)
EDID Display Range Limits with CVT support[7]
Bytes Description
10 04
11 Bits 7–4 CVT major version (1-15)
Bits 3–0 CVT minor version (0-15)
12 Bits 7–2 Additional clock precision in 0.25 MHz increments
(to be subtracted from byte 9 Maximum pixel clock rate)
Bits 1–0 Maximum active pixels per line, 2-bit msb
13 Maximum active pixels per line, 8-bit lsb (no limit if 0)
14 Aspect ratio bitmap
Bit 7 4:3
Bit 6 16:9
Bit 5 16:10
Bit 4 5:4
Bit 3 15:9
Bits 2–0 Reserved, must be 0.
15 Bits 7–5 Aspect ratio preference: 000=4:3, 001=16:9, 010=16:10, 011=5:4, 100=15:9
Bit 4 CVT-RB reduced blanking (preferred)
Bit 3 CVT standard blanking
Bits 2–0 Reserved, must be 0.
16 Scaling support bitmap
Bit 7 Horizontal shrink
Bit 6 Horizontal stretch
Bit 5 Vertical shrink
Bit 4 Vertical stretch
Bits 3–0 Reserved, must be 0.
17 Preferred vertical refresh rate (1–255)
EDID additional white point descriptor[7]
Bytes Description
0–4 Standard header, byte 3 = 0xFB.
5 White point index number (1–255) Usually 1; 0 indicates descriptor not used.
6 White point CIE xy coordinates least-significant bits (like EDID byte 26)
Bits 7–4 Unused, must be 0.
Bits 3–2 White point x value least-significant 2 bits
Bits 1–0 White point y value least-significant 2 bits
7 White point x value most significant 8 bits (like EDID byte 27)
8 White point y value most significant 8 bits (like EDID byte 28)
9 datavalue = (gamma−1)×100 (1.0–3.54, like EDID byte 23)
10–14 Second descriptor, like above. Index number usually 2.
15–17 Unused, padded with 0A 20 20.
EDID color management data descriptor[7]
Bytes Description
0–4 Standard header, byte 3 = 0xF9.
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
EDID CVT 3-byte timing codes descriptor[7]
Bytes Description
0–4 Standard header, byte 3 = 0xF8.
5 Version: 03
6-8 CVT timing descriptor #1
6 Addressable lines 8-bit lsb
7 Bits 7–4 Addressable lines 4-bit msb
Bits 3–2 Preferred vertical rate: 00=50 Hz, 01=60 Hz, 10=75 Hz, 11=85 Hz
Bits 1–0 Unused, must be 0.
8 Bit 7 Unused, must be 0.
Bits 6–5 Aspect ratio: 00=16:10; 01=4:3; 10=5:4; 11=16:9
Vertical rate bitmap
Bit 4 50 Hz CVT
Bit 3 60 Hz CVT
Bit 2 75 Hz CVT
Bit 1 85 Hz CVT
Bit 0 60 Hz CVT reduced blanking
9-11 CVT timing descriptor #2
12-14 CVT timing descriptor #3
15-17 CVT timing descriptor #4
EDID Additional standard timings 3[7]
Bytes Description
0–4 Standard header, byte 3 = 0xF7.
5 Version: 10
6 Bit 7 640×350 @ 85 Hz
Bit 6 640×400 @ 85 Hz
Bit 5 720×400 @ 85 Hz
Bit 4 640×480 @ 85 Hz
Bit 3 848×480 @ 60 Hz
Bit 2 800×600 @ 85 Hz
Bit 1 1024×768 @ 85 Hz,
Bit 0 1152×864 @ 85 Hz
7 Bit 7 1280×768 @ 60 Hz (CVT-RB)
Bit 6 1280×768 @ 60 Hz
Bit 5 1280×768 @ 75 Hz
Bit 4 1280×768 @ 85 Hz
Bit 3 1280×960 @ 60 Hz
Bit 2 1280×960 @ 85 Hz
Bit 1 1280×1024 @ 60 Hz
Bit 0 1280×1024 @ 85 Hz
8 Bit 7 1360×768 @ 60 Hz (CVT-RB)
Bit 6 1280×768 @ 60 Hz
Bit 5 1440×900 @ 60 Hz (CVT-RB)
Bit 4 1440×900 @ 75 Hz
Bit 3 1440×900 @ 85 Hz
Bit 2 1440×1050 @ 60 Hz (CVT-RB)
Bit 1 1440×1050 @ 60 Hz
Bit 0 1440×1050 @ 75 Hz
9 Bit 7 1440×1050 @ 85 Hz
Bit 6 1680×1050 @ 60 Hz (CVT-RB)
Bit 5 1680×1050 @ 60 Hz
Bit 4 1680×1050 @ 75 Hz
Bit 3 1680×1050 @ 85 Hz
Bit 2 1600×1200 @ 60 Hz
Bit 1 1600×1200 @ 65 Hz
Bit 0 1600×1200 @ 70 Hz
10 Bit 7 1600×1200 @ 75 Hz
Bit 6 1600×1200 @ 85 Hz
Bit 5 1792×1344 @ 60 Hz
Bit 4 1792×1344 @ 75 Hz
Bit 3 1856×1392 @ 60 Hz
Bit 2 1856×1392 @ 75 Hz
Bit 1 1920×1200 @ 60 Hz (CVT-RB)
Bit 0 1920×1200 @ 60 Hz
11 Bit 7 1920×1200 @ 75 Hz
Bit 6 1920×1200 @ 75 Hz
Bit 5 1920×1440 @ 60 Hz
Bit 5 1920×1440 @ 75 Hz
Bits 3–0 Unused, must be 0.
12-17 Unused, must be 0.

EIA/CEA-861 extension block[edit]

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 (which was version 3 of the extension, adding Short Video Descriptors and advanced audio capability/configuration information), −861D (published in July 2006 and containing updates to the audio segments), −861E, and −861F which was published on June 4, 2013.[9] 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.”[10]

The most recent version, CTA-861-G,[11] originally published in November 2016, was made available for free in November 2017 after some necessary changes due to a trademark complaint.

Version 1 (as defined in −861) allowed the specification of video timings only through the use of 18-byte Detailed Timing Descriptors (DTD) (as detailed in EDID 1.3 data format above). In all cases, the "preferred" timing should be the first DTD listed in a CEA EDID Timing Extension.

Version 2 (as defined in −861A) 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 (from the −861B spec) allows two different ways to specify the timings of available digital TV[clarification needed] formats: As in Version 1 & 2 by the use of 18-byte DTDs, or by the use of the Short Video Descriptor (SVD) (see below). HDMI 1.0 -1.3c uses this[which?] version.

Version 3 also includes four new optional types of data blocks: Video Data Blocks containing the aforementioned Short Video Descriptor (SVD), Audio Data Blocks containing Short Audio Descriptors (SAD), 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[edit]

Byte sequence
00: Extension tag (which kind of extension block this is); 02h for CEA EDID
01: Revision number (Version number); 03h for Version 3
02: Byte number (decimal) within this block where the 18-byte DTDs begin. If no non-DTD data is present 
    in this extension block, the value should be set to 04h (the byte after next). If set to 00h,
    there are no DTDs present in this block and no non-DTD data.
03: Number of Native DTDs present, other Version 2+ information
     bit 7: 1 if display supports underscan, 0 if not
     bit 6: 1 if display supports basic audio, 0 if not
     bit 5: 1 if display supports YCbCr 4:4:4, 0 if not
     bit 4: 1 if display supports YCbCr 4:2:2, 0 if not
     bit 3..0: total number of native formats in the DTDs included in this block
04: Start of Data Block Collection.  If byte 02 is set to 04h, this is where the DTD collection
    begins.  If byte 02 is set to another value, byte 04 is where the Data Block Collection begins,
    and the DTD collection follows immediately thereafter.

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:
     bit 7..5: Block Type Tag (1 is audio, 2 is video, 3 is vendor specific, 4 is speaker
               allocation, all other values Reserved) 
     bit 4..0: Total number of bytes in this block following this byte
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 (designated in Byte 02, above) where the DTDs are known 
to begin.

    '''Audio Data Blocks''' contain one or more 3-byte Short Audio Descriptors (SADs).  Each SAD
    details audio format, channel number, and bitrate/resolution capabilities of the display as
    follows:
    SAD Byte 1 (format and number of channels):
       bit 7: Reserved (0)
       bit 6..3: Audio format code
         1 = Linear Pulse Code Modulation (LPCM)
         2 = AC-3
         3 = MPEG1 (Layers 1 and 2)
         4 = MP3
         5 = MPEG2
         6 = AAC
         7 = DTS
         8 = ATRAC
         0, 15: Reserved 
         9 = One-bit audio aka SACD
        10 = DD+
        11 = DTS-HD
        12 = MLP/Dolby TrueHD
        13 = DST Audio
        14 = Microsoft WMA Pro
       bit 2..0: number of channels minus 1  (i.e. 000 = 1 channel; 001 = 2 channels; 111 =
                 8 channels)

    SAD Byte 2 (sampling frequencies supported):
       bit 7: Reserved (0)
       bit 6: 192kHz
       bit 5: 176kHz
       bit 4: 96kHz
       bit 3: 88kHz
       bit 2: 48kHz
       bit 1: 44kHz
       bit 0: 32kHz

    SAD Byte 3 (bitrate):
      For LPCM, bits 7:3 are reserved and the remaining bits define bit depth
       bit 2: 24 bit
       bit 1: 20 bit
       bit 0: 16 bit
    For all other sound formats, bits 7..0 designate the maximum supported bitrate divided by 
    8 kbit/s.

    '''Video Data Blocks''' will contain one or more 1-byte Short Video Descriptors (SVDs).  They are 
    decoded as follows:
       bit 7: 1 to designate that this should be considered a "native" resolution, 0 for non-native
       bit 6..0: index value to a table of standard resolutions/timings from CEA/EIA-861:
Detailed timing information
VIC Short Name Display Pixel Pixel Hactive Htotal Field
Aspect Aspect Clock, rate
Ratio Ratio MHz @ H V Vactive Vtotal
1 DMT0659 4:3 1:1 25.175 @ 59.94 Hz 31.469 kHz 640 480 800 525 60 Hz
2 480p 4:3 8:9 27.0 @ 59.94 Hz 31.469 kHz 720 480 858 525 60 Hz
3 480pH 16:9 32:37 27.0 @ 59.94 Hz 31.469 kHz 720 480 858 525 60 Hz
4 720p 16:9 1:1 74.25 @ 60 Hz 45.0 kHz 1280 720 1650 750 60 Hz
5 1080i 16:9 1:1 74.25 @ 60 Hz 33.75 kHz 1920 540 2200 562.5 60 Hz
6 480i 4:3 8:9 27.0 @ 59.94 Hz 15.734 kHz 1440 240 1716 262.5 60 Hz
7 480iH 16:9 32:37 27.0 @ 59.94 Hz 15.734 kHz 1440 240 1716 262.5 60 Hz
8 240p 4:3 4:9 27.0 @ 59.826 Hz 15.734 kHz 1440 240 1716 262.5 60 Hz
9 240pH 16:9 16:27 27.0 @ 59.826 Hz 15.734 kHz 1440 240 1716 262.5 60 Hz
10 480i4x 4:3 2:9-20:9 54.0 @ 59.94 Hz 15.734 kHz 2880 240 3432 262.5 60 Hz
11 480i4xH 16:9 8:27-80:27 54.0 @ 59.94 Hz 15.734 kHz 2880 240 3432 262.5 60 Hz
12 240p4x 4:3 1:9-10:9 54.0 @ 60 Hz 15.734 kHz 2880 240 3432 262.5 60 Hz
13 240p4xH 16:9 4:27-40:37 54.0 @ 60 Hz 15.734 kHz 2880 240 3432 262.5 60 Hz
14 480p2x 4:3 4:9 or 8:9 54.0 @ 59.94 Hz 31.469 kHz 1440 480 1716 525 60 Hz
15 480p2xH 16:9 16:27 or 32:37 54.0 @ 59.94 Hz 31.469 kHz 1440 480 1716 525 60 Hz
16 1080p 16:9 1:1 148.5 @ 60 Hz 67.5 kHz 1920 1080 2200 1125 60 Hz
17 576p 4:3 16:15 27.0 @ 50 Hz 31.25 kHz 720 576 864 625 50 Hz
18 576pH 16:9 64:45 27.0 @ 50 Hz 31.25 kHz 720 576 864 625 50 Hz
19 720p50 16:9 1:1 74.25 @ 50 Hz 37.5 kHz 1280 720 1980 750 50 Hz
20 1080i25 16:9 1:1 74.25 @ 50 Hz 28.125 kHz 1920 540 2640 562.5 50 Hz
21 576i 4:3 16:15 27.0 @ 50 Hz 15.625 kHz 1440 288 1728 312.5 50 Hz
22 576iH 16:9 64:45 27.0 @ 50 Hz 15.625 kHz 1440 288 1728 312.5 50 Hz
23 288p 4:3 8:15 27.0 @ 50 Hz 15.625 kHz 1440 288 1728 313 50 Hz
24 288pH 16:9 32:45 27.0 @ 50 Hz 15.625 kHz 1440 288 1728 313 50 Hz
25 576i4x 4:3 2:15-20:15 54.0 @ 50 Hz 15.625 kHz 2880 288 3456 312.5 50 Hz
26 576i4xH 16:9 16:45-160:45 54.0 @ 50 Hz 15.625 kHz 2880 288 3456 312.5 50 Hz
27 288p4x 4:3 1:15-10:15 54.0 @ 50 Hz 15.625 kHz 2880 288 3456 313 50 Hz
28 288p4xH 16:9 8:45-80:45 54.0 @ 50 Hz 15.625 kHz 2880 288 3456 313 50 Hz
29 576p2x 4:3 8:15 or 16:15 54.0 @ 50 Hz 31.25 kHz 1440 576 1728 625 50 Hz
30 576p2xH 16:9 32:45 or 64:45 54.0 @ 50 Hz 31.25 kHz 1440 576 1728 625 50 Hz
31 1080p50 16:9 1:1 148.5 @ 50 Hz 56.25 kHz 1920 1080 2640 1125 50 Hz
32 1080p24 16:9 1:1 74.25 @ 23.98/24 Hz 27.0 kHz 1920 1080 2750 1125 Low
33 1080p25 16:9 1:1 74.25 @ 25 Hz 28.125 kHz 1920 1080 2640 1125 Low
34 1080p30 16:9 1:1 74.25 @ 29.97/30 Hz 33.75 kHz 1920 1080 2500 1125 Low
35 480p4x 4:3 2:9, 4:9 or 8:9 108.0 @ 59.94 Hz 31.469 kHz 2880 240 3432 262.5 60 Hz
36 480p4xH 16:9 8:27, 16:27 or 32:27 108.0 @ 59.94 Hz 31.469 kHz 2880 240 3432 262.5 60 Hz
37 576p4x 4:3 4:15, 8:15, or 16:15 108.0 @ 50 Hz 31.25 kHz 2880 576 3456 625 50 Hz
38 576p4xH 16:9 16:45, 32:45 or 64:45 108.0 @ 50 Hz 31.25 kHz 2880 576 3456 625 50 Hz
39 1080i25 16:9 1:1 72.0 @ 50 Hz 31.25 kHz 1920 540 2304 625 50 Hz
40 1080i50 16:9 1:1 148.5 @ 100 Hz 56.25 kHz 1920 540 2640 562.5 100 Hz
41 720p100 16:9 1:1 148.5 @ 100 Hz 45.0 kHz 1280 720 1980 750 100 Hz
42 576p100 4:3 16:15 54.0 @ 100 Hz 62.5 kHz 720 576 864 625 100 Hz
43 576p100H 16:9 64:45 54.0 @ 100 Hz 62.5 kHz 720 576 864 625 100 Hz
44 576i50 4:3 16:15 54.0 @ 100 Hz 31.25 kHz 1440 576 1728 625 100 Hz
45 576i50H 16:9 64:45 54.0 @ 100 Hz 31.25 kHz 1440 576 1728 625 100 Hz
46 1080i60 16:9 1:1 148.5 @ 119.88/120 Hz 67.5 kHz 1920 540 2200 562.5 120 Hz
47 720p120 16:9 1:1 148.5 @ 119.88/120 Hz 90.0 kHz 1280 720 1650 750 120 Hz
48 480p119 4:3 8:9 54.0 @ 119.88/120 Hz 62.937 kHz 720 576 858 525 120 Hz
49 480p119H 16:9 32:37 54.0 @ 119.88/120 Hz 62.937 kHz 720 576 858 525 120 Hz
50 480i59 4:3 16:15 54.0 @ 119.88/120 Hz 31.469 kHz 1440 576 1716 525 120 Hz
51 480i59H 16:9 64:45 54.0 @ 119.88/120 Hz 31.469 kHz 1440 576 1716 525 120 Hz
52 576p200 4:3 16:15 108.0 @ 200 Hz 125.0 kHz 720 576 864 625 200 Hz
53 576p200H 16:9 64:45 108.0 @ 200 Hz 125.0 kHz 720 576 864 625 200 Hz
54 576i100 4:3 16:15 108.0 @ 200 Hz 62.5 kHz 1440 288 1728 312.5 200 Hz
55 576i100H 16:9 64:45 108.0 @ 200 Hz 62.5 kHz 1440 288 1728 312.5 200 Hz
56 480p239 4:3 8:9 108.0 @ 239.76 Hz 125.874 kHz 720 480 858 525 240 Hz
57 480p239H 16:9 32:37 108.0 @ 239.76 Hz 125.874 kHz 720 480 858 525 240 Hz
58 480i119 4:3 8:9 108.0 @ 239.76 Hz 62.937 kHz 1440 240 1716 262.5 240 Hz
59 480i119H 16:9 32:37 108.0 @ 239.76 Hz 62.937 kHz 1440 240 1716 262.5 240 Hz
60 720p24 16:9 1:1 59.4 @ 23.98/24 Hz 18.0 kHz 1280 720 3300 750 Low
61 720p25 16:9 1:1 74.25 @ 25 Hz 18.75 kHz 1280 720 3960 750 Low
62 720p30 16:9 1:1 74.25 @ 29.97/30 Hz 22.5 kHz 1280 720 3300 750 Low
63 1080p120 16:9 1:1 297.0 @ 119.88/120 Hz 135.0 kHz 1920 1080 2200 1125 120 Hz
64 1080p100 16:9 1:1 297.0 @ 100 Hz 112.5 kHz 1920 1080 2640 1125 100 Hz
65 720p24 64:27 4:3 59.4 @ 23.98/24 Hz 18.0 kHz 1280 720 3300 750 Low
66 720p25 64:27 4:3 74.25 @ 25 Hz 18.75 kHz 1280 720 3960 750 Low
67 720p30 64:27 4:3 74.25 @ 29.97/30 Hz 22.5 kHz 1280 720 3300 750 Low
68 720p50 64:27 4:3 74.25 @ 50 Hz 37.5 kHz 1280 720 1980 750 50 Hz
69 720p 64:27 4:3 74.25 @ 60 Hz 45.0 kHz 1650 750 1650 750 60 Hz
70 720p100 64:27 4:3 148.5 @ 100 Hz 75.0 kHz 1280 720 1980 750 100 Hz
71 720p120 64:27 4:3 148.5 @ 119.88/120 Hz 90.0 kHz 1280 720 1650 750 120 Hz
72 1080p24 64:27 4:3 74.25 @ 23.98/24 Hz 27.0 kHz 1920 1080 2750 1125 Low
73 1080p25 64:27 4:3 74.25 @ 25 Hz 28.125 kHz 1920 1080 2640 1125 Low
74 1080p30 64:27 4:3 74.25 @ 29.97/30 Hz 33.75 kHz 1920 1080 2500 1125 Low
75 1080p50 64:27 4:3 148.5 @ 50 Hz 56.25 kHz 1920 1080 2640 1125 50 Hz
76 1080p 64:27 4:3 148.5 @ 60 Hz 67.5 kHz 1920 1080 2200 1125 60 Hz
77 1080p100 64:27 4:3 297.0 @ 100 Hz 112.5 kHz 1920 1080 2640 1125 100 Hz
78 1080p120 64:27 4:3 297.0 @ 119.88/120 Hz 135.0 kHz 1920 1080 2200 1125 120 Hz
79 720p2x24 64:27 64:63 59.4 @ 23.98/24 Hz 18.0 kHz 1680 720 3300 750 Low
80 720p2x25 64:27 64:63 59.4 @ 25 Hz 18.75 kHz 1680 720 3168 750 Low
81 720p2x30 64:27 64:63 59.4 @ 29.97/30 Hz 22.5 kHz 1680 720 2640 750 Low
82 720p2x50 64:27 64:63 82.5 @ 50 Hz 37.5 kHz 1680 720 2200 750 50 Hz
83 720p2x 64:27 64:63 99.0 @ 60 Hz 45.0 kHz 1680 720 2200 750 60 Hz
84 720p2x100 64:27 64:63 165.0 @ 100 Hz 82.5 kHz 1680 720 2000 825 100 Hz
85 720p2x120 64:27 64:63 198.0 @ 119.88/120 Hz 99.0 kHz 1680 720 2000 825 120 Hz
86 1080p2x24 64:27 1:1 99.0 @ 23.98/24 Hz 26.4 kHz 2560 1080 3750 1100 Low
87 1080p2x25 64:27 1:1 90.0 @ 25 Hz 28.125 kHz 2560 1080 3200 1125 Low
88 1080p2x30 64:27 1:1 118.8 @ 29.97/30 Hz 33.75 kHz 2560 1080 3520 1125 Low
89 1080p2x50 64:27 1:1 185.625 @ 50 Hz 56.25 kHz 2560 1080 3000 1125 50 Hz
90 1080p2x 64:27 1:1 198.0 @ 60 Hz 66.0 kHz 2560 1080 3000 1100 60 Hz
91 1080p2x100 64:27 1:1 371.25 @ 100 Hz 125.0 kHz 2560 1080 2970 1250 100 Hz
92 1080p2x120 64:27 1:1 495.0 @ 119.88/120 Hz 150.0 kHz 2560 1080 3300 1250 120 Hz
93 2160p24 16:9 1:1 297.0 @ 23.98/24 Hz 54.0 kHz 3840 2160 5500 2250 Low
94 2160p25 16:9 1:1 297.0 @ 25 Hz 56.25 kHz 3840 2160 5280 2250 Low
95 2160p30 16:9 1:1 297.0 @ 29.97/30 Hz 67.5 kHz 3840 2160 4400 2250 Low
96 2160p50 16:9 1:1 594.0 @ 50 Hz 112.5 kHz 3840 2160 5280 2250 50 Hz
97 2160p 16:9 1:1 594.0 @ 60 Hz 135.0 kHz 3840 2160 4400 2250 60 Hz
98 2160p24 256:135 1:1 297.0 @ 23.98/24 Hz 67.5 kHz 4096 2160 5500 2250 Low
99 2160p25 256:135 1:1 297.0 @ 25 Hz 112.5 kHz 4096 2160 5280 2250 Low
100 2160p30 256:135 1:1 297.0 @ 29.97/30 Hz 135.0 kHz 4096 2160 4400 2250 Low
101 2160p50 256:135 1:1 594.0 @ 50 Hz 112.5 kHz 4096 2160 5280 2250 50 Hz
102 2160p 256:135 1:1 594.0 @ 60 Hz 135.0 kHz 4096 2160 4400 2250 60 Hz
103 2160p24 64:27 4:3 297.0 @ 23.98/24 Hz 67.5 kHz 3840 2160 5500 2250 Low
104 2160p25 64:27 4:3 297.0 @ 25 Hz 112.5 kHz 3840 2160 5280 2250 Low
105 2160p30 64:27 4:3 297.0 @ 29.97/30 Hz 135.0 kHz 3840 2160 4400 2250 Low
106 2160p50 64:27 4:3 594.0 @ 50 Hz 112.5 kHz 3840 2160 5280 2250 50 Hz
107 2160p 64:27 4:3 594.0 @ 60 Hz 135.0 kHz 3840 2160 4400 2250 60 Hz
108 720p48 16:9 1:1 90.0 @ 47.96/48 Hz 36.0 kHz 1280 720 2500 750 Low
109 720p48 64:27 4:3 90.0 @ 47.96/48 Hz 36.0 kHz 1280 720 2500 750 Low
110 720p2x48 64:27 64:63 99.0 @ 47.96/48 Hz 36.0 kHz 1680 720 2750 825 Low
111 1080p48 16:9 1:1 148.5 @ 47.96/48 Hz 54.0 kHz 1920 1080 2750 1125 Low
112 1080p48 64:27 4:3 148.5 @ 47.96/48 Hz 54.0 kHz 1920 1080 2750 1125 Low
113 1080p2x48 64:27 1:1 198.0 @ 47.96/48 Hz 52.8 kHz 2560 1080 3750 1100 Low
114 2160p48 16:9 1:1 594.0 @ 47.96/48 Hz 108.0 kHz 3840 2160 5500 2250 Low
115 2160p48 256:135 1:1 594.0 @ 47.96/48 Hz 108.0 kHz 4096 2160 5500 2250 Low
116 2160p48 64:27 4:3 594.0 @ 47.96/48 Hz 108.0 kHz 3840 2160 5500 2250 Low
117 2160p100 16:9 1:1 1188.0 @ 100 Hz 225.0 kHz 3840 2160 5280 2250 100 Hz
118 2160p120 16:9 1:1 1188.0 @ 119.88/120 Hz 270.0 kHz 3840 2160 4400 2250 120 Hz
119 2160p100 64:27 4:3 1188.0 @ 100 Hz 225.0 kHz 3840 2160 5280 2250 100 Hz
120 2160p120 64:27 4:3 1188.0 @ 119.88/120 Hz 270.0 kHz 3840 2160 4400 2250 120 Hz
121 2160p2x24 64:27 1:1 396.0 @ 23.98/24 Hz 52.8 kHz 5120 2160 7500 2200 Low
122 2160p2x25 64:27 1:1 396.0 @ 25 Hz 55.0 kHz 5120 2160 7200 2200 Low
123 2160p2x30 64:27 1:1 396.0 @ 29.97/30 Hz 66.0 kHz 5120 2160 6000 2200 Low
124 2160p2x48 64:27 1:1 742.5 @ 47.96/48 Hz 118.8 kHz 5120 2160 6250 2450 Low
125 2160p2x50 64:27 1:1 742.5 @ 50 Hz 112.5 kHz 5120 2160 6600 2250 50 Hz
126 2160p2x 64:27 1:1 742.5 @ 60 Hz 135.0 kHz 5120 2160 5500 2250 60 Hz
127 2160p2x100 64:27 1:1 1485.0 @ 100 Hz 225.0 kHz 5120 2160 6600 2250 100 Hz
128—192 reserved, value range is used in SVD to indicate native timing for numbers 1—64.
193 2160p2x120 64:27 1:1 1485.0 @ 119.88/120 Hz 270.0 kHz 5120 2160 5500 2250 120 Hz
194 4320p24 16:9 1:1 1188.0 @ 23.98/24 Hz 108.0 kHz 7680 4320 11000 4500 Low
195 4320p25 16:9 1:1 1188.0 @ 25 Hz 110.0 kHz 7680 4320 10800 4400 Low
196 4320p30 16:9 1:1 1188.0 @ 29.97/30 Hz 132.0 kHz 7680 4320 9000 4400 Low
197 4320p48 16:9 1:1 2376.0 @ 47.96/48 Hz 216.0 kHz 7680 4320 11000 4500 Low
198 4320p50 16:9 1:1 2376.0 @ 50 Hz 220.0 kHz 7680 4320 10800 4400 50 Hz
199 4320p 16:9 1:1 2376.0 @ 60 Hz 264.0 kHz 7680 4320 9000 4400 60 Hz
200 4320p100 16:9 1:1 4752.0 @ 100 Hz 450.0 kHz 7680 4320 10560 4500 100 Hz
201 4320p120 16:9 1:1 4752.0 @ 119.88/120 Hz 540.0 kHz 7680 4320 8800 4500 120 Hz
202 4320p24 64:27 4:3 1188.0 @ 23.98/24 Hz 108.0 kHz 7680 4320 11000 4500 Low
203 4320p25 64:27 4:3 1188.0 @ 25 Hz 110.0 kHz 7680 4320 10800 4400 Low
204 4320p30 64:27 4:3 1188.0 @ 29.97/30 Hz 132.0 kHz 7680 4320 9000 4400 Low
205 4320p48 64:27 4:3 2376.0 @ 47.96/48 Hz 216.0 kHz 7680 4320 11000 4500 Low
206 4320p50 64:27 4:3 2376.0 @ 50 Hz 220.0 kHz 7680 4320 10800 4400 50 Hz
207 4320p 64:27 4:3 2376.0 @ 60 Hz 264.0 kHz 7680 4320 9000 4400 60 Hz
208 4320p100 64:27 4:3 4752.0 @ 100 Hz 450.0 kHz 7680 4320 10560 4500 100 Hz
209 4320p120 64:27 4:3 4752.0 @ 119.88/120 Hz 540.0 kHz 7680 4320 8800 4500 120 Hz
210 4320p2x24 64:27 1:1 1485.0 @ 23.98/24 Hz 118.8 kHz 10240 4320 12500 4950 Low
211 4320p2x25 64:27 1:1 1485.0 @ 25 Hz 110.0 kHz 10240 4320 13500 4400 Low
212 4320p2x30 64:27 1:1 1485.0 @ 29.97/30 Hz 135.0 kHz 10240 4320 11000 4500 Low
213 4320p2x48 64:27 1:1 2970.0 @ 47.96/48 Hz 237.6 kHz 10240 4320 12500 4950 Low
214 4320p2x50 64:27 1:1 2970.0 @ 50 Hz 220.0 kHz 10240 4320 13500 4400 50 Hz
215 4320p2x 64:27 1:1 2970.0 @ 60 Hz 270.0 kHz 10240 4320 11000 4400 60 Hz
216 4320p2x100 64:27 1:1 5940.0 @ 100 Hz 450.0 kHz 10240 4320 13200 4500 100 Hz
217 4320p2x120 64:27 1:1 5940.0 @ 119.88/120 Hz 540.0 kHz 10240 4320 11000 4500 120 Hz
218 2160p100 256:135 1:1 1188.0 @ 100 Hz 225.0 kHz 4096 2160 5280 2250 100 Hz
219 2160p120 256:135 1:1 1188.0 @ 119.88/120 Hz 270.0 kHz 4096 2160 4400 2250 120 Hz
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 (2880)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 6 Hz (i.e. 24, 30, 60, 120, and 240 Hz) 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 CEA/EIA-861 and 861-A standards included only numbers 1-7 and numbers 17-22 (only in -A) above (but not as short
video descriptors which were introduced in CEA/EIA-861-B) and are considered primary video format 
timings.
The CEA/EIA-861-B standard has the first 34 short video descriptors above. It is used by HDMI 1.0–1.2a.
The CEA/EIA-861-C and -D standards have the first 59 short video descriptors above. CEA/EIA-861-D is used by HDMI 1.3–1.3c.
The CEA/EIA-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 92 short video descriptors above. It is used by HDMI 2.0–2.0b.
The CTA-861-G standard has the full list of 154 (1–127, 193–219) short video descriptors above. It is used by HDMI 2.1.

A '''Vendor Specific Data Block''' (if any) contains as its first three bytes the vendor's IEEE 
24-bit registration number, LSB first. For HDMI, it is always 00-0C-03 for HDMI Licensing, LLC.
It is followed by a two byte source physical address, LSB first. The source physical address
provides the CEC physical address for upstream CEC devices. 
The remainder of the Vendor Specific Data Block is the "data payload",which can be anything the
vendor considers worthy of inclusion in this EDID extension block. HDMI 1.3a specifies some
requirements for the data payload.  See that spec for detailed info on these bytes:
    VSD Byte 1-3 IEEE Registration Identifier (LSB First)
    VSD Byte 4-5 Components of Source Physical Address (See section 8.7 of HDMI 1.3a)
    VSD Byte 6 (optional) (bits are set if sink supports...):
         bit 7: Supports_AI (...a function that needs info from ACP or ISRC packets)
         bit 6: DC_48bit (...16-bit-per-channel deep color)
         bit 5: DC_36bit (...12-bit-per-channel deep color)
         bit 4: DC_30bit (...10-bit-per-channel deep color)
         bit 3: DC_Y444  (...4:4:4 in deep color modes)
         bit 2: Reserved (0)
         bit 1: Reserved (0)
         bit 0: DVI_Dual (...DVI Dual Link Operation)
    VSD Byte 7 (optional) If non-zero (Max_TMDS_Frequency / 5mhz)
    VSD Byte 8 (optional) (latency fields indicators):
         bit 7: latency_fields (set if latency fields are present)
         bit 6: i_latency_fields (set if interlaced latency fields are present; if set
                four latency fields will be present, 0 if bit 7 is 0)
         bits 5-0: Reserved (0)
    VSD Byte  9 (optional) Video Latency (if indicated, value=1+ms/2 with a max of 251 meaning 500ms)
    VSD Byte 10 (optional) Audio Latency (video delay for progressive sources, same units as above)
    VSD Byte 11 (optional) Interlaced Video Latency (if indicated, same units as above)
    VSD Byte 12 (optional) Interlaced Audio Latency (video delay for interlaced sources, same units as above)
Additional bytes may be present, but the HDMI spec says they shall be zero.

If a Speaker Allocation Data Block is present, it will consist of three bytes.  The second and 
third are Reserved (all 0), but the first contains information about which speakers are present in 
the display device:
         bit 7: Reserved (0)
         bit 6: Rear Left Center / Rear Right Center present for 1, absent for 0
         bit 5: Front Left Center / Front Right Center present for 1, absent for 0
         bit 4: Rear Center present for 1, absent for 0
         bit 3: Rear Left / Rear Right present for 1, absent for 0
         bit 2: Front Center present for 1, absent for 0
         bit 1: LFE present for 1, absent for 0
         bit 0: Front Left / Front Right present for 1, absent for 0

    Note that for speakers with right and left polarity, it is assumed that both 
    left and right are present.

"d": byte (designated in byte 02) where DTDs begin.  18-byte DTD strings continue for an unspecified 
length (modulo 18) until a "00 00" is as the first bytes of a prospective DTD.  At this point,
the DTDs are known to be complete, and the start address of the "00 00" can be considered to be "XX"
(see below) 
"XX"-126: Post-DTD padding.  Should be populated with 00h
127: Checksum - This byte must be programmed such that the sum of all 128 bytes equals 00h.

References[edit]

  1. ^ "High-Definition Multimedia Interface Specification Version 1.3a" (PDF). 10 November 2006. Archived (PDF) from the original on 2016-05-16. Retrieved 2017-04-01.
  2. ^ "read-edid". Polypux.org. Retrieved 2017-04-01.
  3. ^ "Utilities | PowerStrip". EnTech Taiwan. 2012-03-25. Retrieved 2017-04-01.
  4. ^ "SwitchResX - The Most Versatile Tool For Controlling Screen Resolutions On Your Mac". Madrau.com. Retrieved 2017-04-01.
  5. ^ Harald Schweder (2003-02-11). "DisplayConfigX". 3dexpress.de. Retrieved 2017-04-01.
  6. ^ Brezenski (2009-08-07). "Custom Resolutions on Intel Graphics". Software.intel.com. Retrieved 2009-11-04.
  7. ^ a b c d e f g h i j VESA E-EDID Standard, Release A, Revision 2. September 25, 2006
  8. ^ VESA Enhanced EDID Standard (PDF), Video Electronics Standards Association, 2000-02-09, p. 32, retrieved 2011-11-19
  9. ^ "A DTV Profile for Uncompressed High Speed Digital Interfaces". 4 June 2013. CEA-861-F. Archived from the original on 2013-08-21. Retrieved 2013-08-15.
  10. ^ Paul Ploumis (2013-07-16). "CEA publishes new high-speed CEA-861-F DTV Interface Standard". Scrapmonster.com. Retrieved 2017-04-01.
  11. ^ "A DTV Profile for Uncompressed High Speed Digital Interfaces" (PDF). 29 November 2017. CTA-861-G. Archived from the original (PDF) on 2017-11-30. Retrieved 2017-11-30.

External links[edit]