Los datos de identificación de pantalla extendidos ( EDID ) y los EDID mejorados ( E-EDID ) son formatos de metadatos para que los dispositivos de visualización describan sus capacidades a una fuente de video (por ejemplo, una tarjeta gráfica o un decodificador ). El formato de datos está definido por un estándar publicado por la Video Electronics Standards Association (VESA).
La estructura de datos EDID incluye el nombre del fabricante y el número de serie, tipo de producto, fósforo o tipo de filtro (como datos de cromaticidad ), tiempos admitidos por la pantalla, tamaño de la pantalla, datos de luminancia y (solo para pantallas digitales) datos de mapeo de píxeles .
DisplayID es un estándar VESA destinado a reemplazar las extensiones EDID y E-EDID con un formato uniforme adecuado tanto para monitores de PC como para dispositivos electrónicos de consumo.
Las versiones de la estructura EDID (bloque base) van desde v1.0 a v1.4; todos estos definen estructuras de 128 bytes compatibles con versiones superiores . La versión 2.0 definió una nueva estructura de 256 bytes, pero quedó obsoleta y reemplazada por E-EDID, que admite múltiples bloques de extensión. [ cita necesaria ] Las versiones HDMI 1.0–1.3c utilizan E-EDID v1.3. [1]
Antes de que se definieran Display Data Channel (DDC) y EDID, no existía una forma estándar para que una tarjeta gráfica supiera a qué tipo de dispositivo de visualización estaba conectada. Algunos conectores VGA de ordenadores personales proporcionaban una forma básica de identificación conectando uno, dos o tres pines a tierra, pero esta codificación no estaba estandarizada.
Este problema se resuelve con EDID y DDC, ya que permite que la pantalla envíe información a la tarjeta gráfica a la que está conectada. La transmisión de información EDID generalmente utiliza el protocolo Display Data Channel , específicamente DDC2B, que se basa en el bus I²C (DDC1 usó un formato de serie diferente que nunca ganó popularidad). Los datos se transmiten a través del cable que conecta la pantalla y la tarjeta gráfica; Se admiten VGA , DVI , DisplayPort y HDMI . [ cita necesaria ]
El EDID a menudo se almacena en el monitor en el chip de firmware llamado EEPROM serial (memoria de solo lectura programable y borrable eléctricamente) y se puede acceder a él a través del bus I²C en la dirección 0x50
. La PC host a menudo puede leer la EDID PROM incluso si la pantalla está apagada.
Muchos paquetes de software pueden leer y mostrar la información EDID, como read-edid [2] para Linux y DOS, PowerStrip [3] para Microsoft Windows y X.Org Server para Linux y BSD Unix . Mac OS X lee de forma nativa información EDID y programas como SwitchResX [4] o DisplayConfigX [5] pueden mostrar la información y utilizarla para definir resoluciones personalizadas.
E-EDID se introdujo al mismo tiempo que E-DDC , que admite múltiples bloques de extensiones y una estructura EDID versión 2.0 obsoleta (se puede incorporar en E-EDID como un bloque de extensión opcional). Los campos de datos para el tiempo preferido, los límites de rango y el nombre del monitor son obligatorios en E-EDID. E-EDID también agrega soporte para el concepto de curva Dual GTF y cambió parcialmente la codificación de la relación de aspecto dentro de los tiempos estándar.
Con el uso de extensiones, la estructura E-EDID se puede ampliar hasta 32 KiB, porque el E-DDC agregó la capacidad de direccionar múltiples (hasta 128) segmentos de 256 bytes.
00
)02
)10
)20
)40
)50
)60
)70
)A7
, AF
, BF
)F0
)FF
): contiene información como el diseño de subpíxeles [6]FF
): Según LS-EXT, el contenido real varía según el fabricante. Sin embargo, DDDB utiliza posteriormente el valor.Históricamente, algunos controladores de tarjetas gráficas se han adaptado mal al EDID, utilizando sólo sus descriptores de tiempo estándar en lugar de sus descriptores de tiempo detallados (DTD). Incluso en los casos en los que se leyeron los DTD, los controladores a menudo estaban limitados por la limitación del descriptor de tiempo estándar de que las resoluciones horizontales/verticales deben ser divisibles uniformemente por 8. Esto significa que muchas tarjetas gráficas no pueden expresar las resoluciones nativas de la mayoría de las veces. pantallas planas de pantalla ancha comunes y televisores con pantalla de cristal líquido . El número de píxeles verticales se calcula a partir de la resolución horizontal y la relación de aspecto seleccionada . Para que sea totalmente expresable, el tamaño de la pantalla panorámica debe ser un múltiplo de 16×9 píxeles. Para paneles XGA de 1366 × 768 píxeles de ancho, la resolución más cercana expresable en la sintaxis del descriptor de temporización estándar EDID es 1360 × 765 píxeles, lo que normalmente genera barras negras delgadas de 3 píxeles. Especificar 1368 píxeles como ancho de pantalla produciría una altura de pantalla antinatural de 769,5 píxeles.
Muchos paneles Wide XGA no anuncian su resolución nativa en los descriptores de tiempo estándar, sino que ofrecen solo una resolución de 1280×768. Algunos paneles anuncian una resolución ligeramente menor que la nativa, como 1360×765. Para que estos paneles puedan mostrar una imagen perfecta en píxeles , el controlador de pantalla debe ignorar los datos EDID o el controlador debe interpretar correctamente el DTD y poder resolver resoluciones cuyo tamaño no sea divisible por 8. Hay programas especiales disponibles para anular los descriptores de tiempo estándar de los datos EDID. Incluso esto no siempre es posible, ya que los controladores de gráficos de algunos proveedores (en particular los de Intel ) requieren hacks de registro específicos para implementar resoluciones personalizadas, lo que puede dificultar mucho el uso de la resolución nativa de la pantalla. [7]
Cuando se usa para otro descriptor, el reloj de píxeles y algunos otros bytes se establecen en 0:
Los tipos de descriptores definidos actualmente son:
FF
: Número de serie del monitor (texto ASCII)FE
: Texto no especificado (texto ASCII)FD
: Supervise los límites del rango. Descriptor binario de 6 o 13 bytes (con temporización adicional).FC
: Nombre del monitor (texto ASCII), por ejemplo "PHL 223V5".FB
: Datos adicionales del punto blanco. 2 descriptores de 5 bytes, rellenados con 0A 20 20
.FA
: Identificadores de sincronización estándar adicionales. 6 descriptores de 2 bytes, rellenados con 0A
.F9
: Gestión del color de pantalla (DCM).F8
: Códigos de temporización CVT de 3 bytes.F7
: Temporización estándar adicional 3.10
: Identificador ficticio.00–0F
: Descriptores reservados por el fabricante.La extensión CTA EDID se introdujo por primera vez en EIA / CEA -861.
El estándar industrial ANSI/CTA-861, que según CTA es ahora su "estándar más popular", [10] desde entonces se ha actualizado varias veces, sobre todo con la revisión 861-B (publicada en mayo de 2002, que agregó la versión 3 de la extensión, agregando descriptores de video cortos e información avanzada de configuración/capacidad de audio), 861-D (publicado en julio de 2006 y que contiene actualizaciones de los segmentos de audio), 861-E en marzo de 2008, [11] 861-F, que fue publicado el 4 de junio de 2013, [12] 861-H en diciembre de 2020, [13] y, más recientemente, 861-I, que fue publicado en febrero de 2023. [14] Coincidiendo con la publicación de CEA-861-F en En 2013, Brian Markwalter, vicepresidente senior de investigación y estándares, declaró: "La nueva edición incluye una serie de mejoras notables, incluida la compatibilidad con varios formatos nuevos de vídeo Ultra HD y de pantalla ancha y esquemas de colorimetría adicionales". [15]
La versión CTA-861-G, [16] publicada originalmente en noviembre de 2016, estuvo disponible de forma gratuita en noviembre de 2017, junto con las versiones actualizadas -E y -F, después de algunos cambios necesarios debido a una queja de marca registrada. Todos los estándares de CTA son gratuitos para todos desde mayo de 2018. [17] [18]
La versión más reciente es CTA-861-I, [19] publicada en febrero de 2023, disponible de forma gratuita tras el registro. Combina la versión anterior, CTA-861-H, [20] de enero de 2021 con una enmienda, CTA-861.6, [21] publicada en febrero de 2022 e incluye una nueva fórmula para calcular los formatos de temporización de vídeo, OVT. [22] Otros cambios incluyen un nuevo anexo para detallar el sistema de configuración de la sala de altavoces de audio que se introdujo con la enmienda 861.2, y algunas aclaraciones generales y limpieza de formato.
La versión 1 del bloque de extensión (como se define en CEA-861) permitía la especificación de tiempos de video solo mediante el uso de descriptores de tiempo detallados (DTD) de 18 bytes (como se detalla en el formato de datos EDID 1.3 anterior). Los tiempos DTD se enumeran en orden de preferencia en la extensión de tiempos EDID CEA.
La versión 2 (como se define en 861-A) agregó la capacidad de designar una cantidad de DTD como "nativos" (es decir, que coinciden con la resolución de la pantalla) y también incluyó alguna funcionalidad de "descubrimiento básico" para saber si el dispositivo de visualización contiene soporte para "audio básico", formatos de píxeles YC B C R y subexploración.
La versión 3 (desde la especificación 861-B en adelante) permite dos formas diferentes de especificar formatos de temporización de vídeo digital: como en las versiones 1 y 2 mediante el uso de DTD de 18 bytes o mediante el uso del descriptor de vídeo corto (SVD) ( vea abajo). HDMI 1.0–1.3c usa este [ ¿cuál? ] versión.
La versión 3 también define un formato para una colección de bloques de datos, que a su vez puede contener varios descriptores individuales. Esta colección de bloques de datos (DBC) inicialmente tenía cuatro tipos de bloques de datos (DB): bloques de datos de video que contienen el descriptor de video corto (SVD) antes mencionado, bloques de datos de audio que contienen descriptores de audio cortos (SAD), bloques de datos de asignación de altavoces que contienen información sobre el configuración de los altavoces del dispositivo de visualización y bloques de datos específicos del proveedor que pueden contener información específica para el uso de un proveedor determinado. Las versiones posteriores de CTA-861 definieron bloques de datos adicionales.
La colección de bloques de datos contiene uno o más bloques de datos que detallan información de video, audio y ubicación de los altavoces sobre la pantalla. Los bloques se pueden colocar en cualquier orden y el byte inicial de cada bloque define tanto su tipo como su longitud:
Si el código de etiqueta es 7, un código de etiqueta extendido está presente en el primer byte de carga útil del bloque de datos, y el segundo byte de carga útil representa el primer byte de carga útil del bloque de datos extendido.
Una vez finalizado un bloque de datos, se supone que el siguiente byte es el comienzo del siguiente bloque de datos. Este es el caso hasta el byte (designado en el byte 2, arriba) donde se sabe que comienzan las DTD.
Los bloques de datos de audio contienen uno o más descriptores de audio cortos (SAD) de 3 bytes. Cada SAD detalla el formato de audio, el número de canal y las capacidades de velocidad de bits/resolución de la pantalla de la siguiente manera:
Los bloques de datos de vídeo contendrán uno o más descriptores de vídeo cortos (SVD) de 1 byte.
Notas: Los paréntesis indican casos en los que los píxeles se repiten para cumplir con los requisitos mínimos de velocidad de la interfaz. Por ejemplo, en el caso de 720x240p, los píxeles de cada línea tienen doble frecuencia. En el caso (2880)x480i, el número de píxeles de cada línea y, por tanto, el número de veces que se repiten, es variable y el dispositivo fuente lo envía al monitor DTV.
Las expresiones Hactive aumentadas incluyen "2x" y "4x", que indican dos y cuatro veces la resolución de referencia, respectivamente.
Se considera que los modos de vídeo con una frecuencia de actualización vertical múltiplo de 6 Hz (es decir, 24, 30, 60, 120 y 240 Hz) tienen el mismo tiempo que los modos NTSC equivalentes en los que la actualización vertical se ajusta en un factor de 1000/1001. Como VESA DMT especifica una tolerancia del 0,5% del reloj de píxeles, que es 5 veces más que el cambio requerido, los relojes de píxeles se pueden ajustar para mantener la compatibilidad NTSC; normalmente, se ajustan los modos 240p, 480p y 480i, mientras que los formatos 576p, 576i y HDTV no.
Un bloque de datos específico del proveedor (si lo hay) contiene como sus primeros tres bytes el número de registro IEEE de 24 bits del proveedor , [23] el byte menos significativo primero. El resto del bloque de datos específico del proveedor es la "carga útil de datos", que puede ser cualquier cosa que el proveedor considere digna de incluirse en este bloque de extensión EDID. Por ejemplo, el número de registro IEEE 00 0C 03
significa que se trata de un bloque de datos específico de "HDMI Licensing, LLC" (contiene información de HDMI 1.4), C4-5D-D8
significa que se trata de un bloque de datos específico de "HDMI Forum" (contiene información de HDMI 2.0), 00 D0 46
significa que es "DOLBY LABORATORIES , Cª." (contiene información de Dolby Vision) y 90 84 8b
es "HDR10+ Technologies, LLC" (contiene información de HDR10+ como parte del estándar HDMI 2.1 Enmienda A1 [24] ). Comienza con una dirección física de origen de dos bytes, el byte menos significativo primero. La dirección física de origen proporciona la dirección física de CEC para los dispositivos CEC ascendentes. HDMI 1.3a especifica algunos requisitos para la carga útil de datos.
Si hay un bloque de datos de asignación de oradores, constará de tres bytes. El primer y segundo byte contienen información sobre qué altavoces (o pares de altavoces) están presentes en el dispositivo de visualización:
El bloque de datos de configuración de la habitación y los bloques de datos de ubicación de los altavoces describen la configuración de los altavoces utilizando las coordenadas de la habitación. Si las fuentes pueden decodificar estos bloques, deben ignorar los datos del bloque de datos de asignación de oradores anterior.