拡張ディスプレイ識別データ(EDID)および拡張EDID(E-EDID)は、ディスプレイデバイスがビデオソース(グラフィックカードやセットトップボックスなど)に対してその機能を記述するためのメタデータ形式です。このデータ形式は、ビデオエレクトロニクス規格協会(VESA)が発行する規格によって定義されています。
EDIDデータ構造には、製造元名とシリアル番号、製品タイプ、蛍光体またはフィルタータイプ(色度データとして)、ディスプレイがサポートするタイミング、ディスプレイサイズ、輝度データ、および(デジタルディスプレイのみ)ピクセルマッピングデータが含まれます。
DisplayIDは、PCモニターと民生用電子機器の両方に適した統一フォーマットでEDIDおよびE-EDID拡張機能を置き換えることを目的としたVESA規格です。
EDID構造(ベースブロック)のバージョンはv1.0からv1.4まであり、これらはすべて上位互換性のある128バイト構造を定義しています。バージョン2.0では新しい256バイト構造が定義されましたが、これは非推奨となり、複数の拡張ブロックをサポートするE-EDIDに置き換えられました。HDMIバージョン1.0~1.3cはE-EDID v1.3を使用しています。[ 1 ]
ディスプレイデータチャネル(DDC)とEDIDが定義される以前は、グラフィックカードが接続されているディスプレイデバイスの種類を認識するための標準的な方法は存在しませんでした。パーソナルコンピュータの一部のVGAコネクタでは、1本、2本、または3本のピンをグランドに接続することで基本的な識別を行っていましたが、このコーディングは標準化されていませんでした。
この問題は、EDIDとDDCによって解決されます。EDIDとDDCは、ディスプレイが接続されているグラフィックカードに情報を送信できるようにするものです。EDID情報の送信には通常、ディスプレイデータチャネルプロトコル、具体的にはI²CバスをベースとしたDDC2Bが使用されます(DDC1は異なるシリアルフォーマットを使用していましたが、普及しませんでした)。データは、ディスプレイとグラフィックカードを接続するケーブルを介して送信されます。VGA 、DVI、DisplayPort、HDMIがサポートされています。
EDIDは、多くの場合、シリアルEEPROM(電気的に消去可能なプログラマブル読み出し専用メモリ)と呼ばれるファームウェアチップにモニターに保存されており、I²Cバスを介してアドレスからアクセスできます0x50。EDID PROMは、ディスプレイ自体がオフの状態でも、ホストPCから読み取ることができる場合が多くあります。
多くのソフトウェアパッケージは、LinuxおよびDOS用のread-edid [ 2 ] 、 Microsoft Windows用のPowerStrip [ 3 ]、LinuxおよびBSD unix用のX.Org Serverなど、EDID情報を読み取って表示できます。Mac OS XはEDID情報をネイティブに読み取り、SwitchResX [ 4 ]やDisplayConfigX [ 5 ]などのプログラムは、その情報を表示したり、それを使用してカスタム解像度を定義したりすることができます。
E-EDIDは、複数の拡張ブロックと非推奨のEDIDバージョン2.0構造をサポートするE-DDCと同時に導入されました(EDIDバージョン2.0は、オプションの拡張ブロックとしてE-EDIDに組み込むことができます)。E-EDIDでは、優先タイミング、範囲制限、およびモニタ名のデータフィールドが必要です。E-EDIDは、デュアルGTFカーブの概念もサポートし、標準タイミング内でのアスペクト比のエンコーディングを部分的に変更しました。
拡張機能を使用することで、E-EDID構造は最大32 KiBまで拡張できます。これは、E-DDCが複数の(最大128個の)256バイトセグメントをアドレス指定する機能を追加したためです。
00)02)10)20)40)50)60)70)A7、AF、BF)F0)FF):サブピクセルレイアウトなどの情報が含まれています[ 6 ]FF):LS-EXTによると、実際の内容はメーカーによって異なります。ただし、その値は後でDDDBで使用されます。グラフィック カード ドライバの中には、従来 EDID の処理が不十分で、詳細タイミング記述子 (DTD) ではなく標準タイミング記述子のみを使用していたものがありました。DTD が読み込まれた場合でも、ドライバは水平/垂直解像度が 8 で割り切れる必要があるという標準タイミング記述子の制限に制約されることがよくありました。つまり、多くのグラフィック カードは、最も一般的なワイド スクリーンフラット パネル ディスプレイや液晶ディスプレイ テレビのネイティブ解像度を表現できません。垂直ピクセル数は、水平解像度と選択されたアスペクト比から計算されます。完全に表現するには、ワイド スクリーンディスプレイのサイズは16×9 ピクセルの倍数である必要があります。1366×768 ピクセルのワイド XGAパネルの場合、EDID 標準タイミング記述子構文で表現できる最も近い解像度は 1360×765 ピクセルで、通常は 3 ピクセルの細い黒帯が表示されます。画面幅として 1368 ピクセルを指定すると、画面の高さは 769.5 ピクセルという不自然な値になります。
多くのワイドXGAパネルは、標準タイミング記述子でネイティブ解像度を宣伝せず、代わりに1280×768の解像度のみを提供します。一部のパネルは、1360×765のように、ネイティブ解像度よりわずかに小さい解像度を宣伝します。これらのパネルでピクセルパーフェクトな画像を表示できるようにするには、ディスプレイドライバがEDIDデータを無視するか、ドライバがDTDを正しく解釈して、サイズが8で割り切れない解像度を解決できる必要があります。EDIDデータから標準タイミング記述子をオーバーライドするための特別なプログラムが利用可能です。しかし、一部のベンダーのグラフィックドライバ(特にIntelのもの)はカスタム解像度を実装するために特定のレジストリハックを必要とするため、画面のネイティブ解像度を使用することが非常に困難になる場合があり、これも常に可能とは限りません。[ 7 ]
別の記述子に使用される場合、ピクセルクロックとその他のいくつかのバイトは0に設定されます。
現在定義されている記述子タイプは以下のとおりです。
FFモニターのシリアル番号(ASCIIテキスト)FE: 未指定のテキスト(ASCIIテキスト)FD: 範囲制限を監視します。6バイトまたは13バイト(追加タイミングを含む)のバイナリ記述子。FCモニター名(ASCIIテキスト)。例:「PHL 223V5」。FB: 追加のホワイトポイントデータ。2×5バイトの記述子、パディングは0A 20 20。FA: 追加の標準タイミング識別子。6×2バイトの記述子、パディングは0A。F9ディスプレイカラーマネジメント(DCM)。F8: CVT 3バイトタイミングコード。F7: 追加の標準タイミング 3。10ダミー識別子。00–0F: メーカーが予約した記述子。CTA EDID拡張機能は、EIA / CEA -861で初めて導入されました。
CTAによると、現在では「最も人気のある標準」であるANSI/CTA-861業界標準[ 10 ] は、その後何度か更新されており、特に861-B改訂版(2002年5月に発行され、拡張機能のバージョン3が追加され、ショートビデオ記述子と高度なオーディオ機能/構成情報が追加されました)、861-D(2006年7月に発行され、オーディオセグメントの更新が含まれています)、2008年3月の861-E [ 11 ] 、 2013年6月4日に発行された861-F [ 12 ] 、 2020年12月の861-H [ 13 ]、そして最近では2023年2月に発行された861-I [ 14 ] が挙げられます。2013年のCEA-861-Fの発行と同時に、研究および標準担当上級副社長のブライアン・マークウォルターは、 「新版には、いくつかの新しいUltra HDおよびワイドスクリーンビデオフォーマットのサポートや追加の色彩スキームなど、注目すべき機能強化が多数含まれています。」[ 15 ]
2016 年 11 月に最初に公開されたバージョン CTA-861-G [ 16 ]は、商標に関する苦情により必要な変更が加えられた後、更新されたバージョン -E および -F とともに、2017 年 11 月に無料で公開されました。すべてのCTA規格は、2018 年 5 月以降、誰でも無料で利用できます。[ 17 ] [ 18 ]
最新の完全版は、2023年2月に発行されたCTA-861-I [ 19 ]で、登録後に無料で入手できます。これは、2021年1月の以前のバージョンCTA-861-H [ 20 ]と、2022年2月に発行された修正版CTA-861.6 [ 21 ]を組み合わせたもので、ビデオタイミングフォーマットOVT [ 22 ]を計算するための新しい式が含まれています。 その他の変更点としては、861.2修正版で導入されたオーディオスピーカールーム構成システムを詳しく説明する新しい付録、およびいくつかの一般的な明確化とフォーマットの整理があります。
CTA-861-I の修正版である CTA-861.7 [ 23 ]が 2024 年 6 月に公開されました。これには、CTA 3D オーディオの更新、コンテンツ タイプ表示、VTDB および VFDB の 4:2:0 サポートに関する明確化が含まれています。また、UEFI が新しい PNP ID の割り当てを段階的に廃止しているため、EDID の最初のブロックにある製造元 PNP ID を置き換える新しい製品 ID データ ブロックが導入されています。
拡張ブロックのバージョン1(CEA-861で定義)では、18バイトの詳細なタイミング記述子(DTD)(上記のEDID 1.3データフォーマットで詳述)を使用することによってのみ、ビデオタイミングを指定できました。DTDタイミングは、CEA EDIDタイミング拡張で優先順位順にリストされています。
バージョン2(861-Aで定義)では、多数のDTDを「ネイティブ」(つまり、ディスプレイの解像度に一致する)として指定する機能が追加され、ディスプレイデバイスが「基本オーディオ」、YC B C Rピクセルフォーマット、およびアンダースキャンをサポートしているかどうかの「基本検出」機能も含まれていました。
バージョン3(861-B仕様以降)では、デジタルビデオのタイミングフォーマットを指定する方法が2つあります。1つはバージョン1および2と同様に18バイトのDTDを使用する方法、もう1つはショートビデオ記述子(SVD)を使用する方法です(下記参照)。HDMI 1.0~1.3cはこのバージョンを使用しています。
バージョン 3 では、データ ブロックのコレクションのフォーマットも定義されており、データ ブロックには複数の個別の記述子を含めることができます。このデータ ブロック コレクション (DBC) には、当初、4 種類のデータ ブロック (DB) がありました。前述のショート ビデオ ディスクリプタ (SVD) を含むビデオ データ ブロック、ショート オーディオ ディスクリプタ (SAD) を含むオーディオ データ ブロック、ディスプレイ デバイスのスピーカー構成に関する情報を含むスピーカー割り当てデータ ブロック、および特定のベンダーの使用に固有の情報を含むことができるベンダー固有データ ブロックです。CTA-861 の後続バージョンでは、追加のデータ ブロックが定義されました。
データブロックコレクションには、ディスプレイに関するビデオ、オーディオ、スピーカー配置情報を詳細に記述した1つ以上のデータブロックが含まれています。ブロックは任意の順序で配置でき、各ブロックの最初のバイトによってそのタイプと長さが定義されます。
タグコードが7の場合、データブロックの最初のペイロードバイトに拡張タグコードが存在し、2番目のペイロードバイトは拡張データブロックの最初のペイロードバイトを表します。
1つのデータブロックが終了すると、次のバイトは次のデータブロックの開始とみなされます。これは、DTDの開始位置が既知のバイト(上記のバイト2で指定)に到達するまで続きます。
前述のとおり、いくつかのデータブロックは拡張子によって定義されます。
ビデオデータブロックには、1バイトのショートビデオ記述子(SVD)が1つ以上含まれます。
注:括弧は、インターフェースの最小速度要件を満たすためにピクセルが繰り返される箇所を示します。たとえば、720x240p の場合、各ラインのピクセルは 2 倍のクロックで動作します。(2880)x480i の場合、各ラインのピクセル数、つまりピクセルが繰り返される回数は可変であり、ソース機器から DTV モニターに送信されます。
Hactiveの表現で「2x」と「4x」が増加すると、それぞれ参照解像度の2倍と4倍になります。
垂直リフレッシュ周波数が 6 Hz の倍数であるビデオ モード (24、30、60、120、240 Hz) は、垂直リフレッシュが 1000/1001 倍に調整される同等の NTSC モードと同じタイミングであると考えられます。VESA DMTでは、必要な変更の 5 倍である 0.5% のピクセル クロック許容値が規定されているため、ピクセル クロックを調整して NTSC 互換性を維持できます。通常、240p、480p、480i モードは調整されますが、576p、576i、HDTV フォーマットは調整されません。
オーディオデータブロックには、1つ以上の3バイトのショートオーディオ記述子(SAD)が含まれています。各SADは、ディスプレイのオーディオフォーマット、チャンネル番号、ビットレート/解像度機能の詳細を以下のように示します。
ベンダー固有のデータ ブロック(存在する場合) の最初の 3 バイトには、ベンダーのIEEE 24 ビット登録番号(最下位バイトから) が含まれます。 [ 24 ]ベンダー固有のデータ ブロックの残りの部分は「データ ペイロード」であり、ベンダーがこの EDID 拡張ブロックに含める価値があると考えるものなら何でも構いません。たとえば、IEEE 登録番号は、00 0C 03これが「HDMI Licensing, LLC」固有のデータ ブロック (HDMI 1.4 情報を含む) であるC4 5D D8ことを意味し、これは「HDMI Forum」固有のデータ ブロック (HDMI 2.0 情報を含む) で 00 D0 46あることを意味し、これは「DOLBY LABORATORIES, INC.」 (Dolby Vision 情報を含む) であり、90 84 8b「HDR10+ Technologies, LLC」 (HDMI 2.1 Amendment A1 規格の一部として HDR10+ 情報を含む[ 25 ] ) であることを意味します。これは、2 バイトのソース物理アドレス (最下位バイトから) で始まります。ソース物理アドレスは、上流の CEC デバイスの CEC 物理アドレスを提供します。 HDMI 1.3aでは、データペイロードに関するいくつかの要件が規定されています。
スピーカー割り当てデータブロックが存在する場合、それは3バイトで構成されます。最初の2バイトには、ディスプレイデバイスに存在するスピーカー(またはスピーカーペア)に関する情報が含まれています。
SADBでは一部のスピーカーフラグが廃止されましたが、RCDBのSPMでは引き続き利用可能です。これらのスピーカーはAudio InfoFrameでCA値を指定することができず、RCDBのみに対応する「スピーカーマスクによる配信」でのみ使用できます。
部屋構成データブロックとスピーカー位置データブロックは、部屋の座標を使用してスピーカーの配置を記述します。