MacのEDID情報をデコードしてモニタの詳細情報を表示する方法

通常Macでは下記のターミナルコマンドでEDID情報(Extended Display Identification Data - モニタの識別情報)を取得できるが、そのままでは人間が理解できるようには出来ていないのでedid-decodeを利用してMacのモニタのEDID情報をデコードしてモニタの詳細情報を表示する方法を紹介。

ioreg -l | grep IODisplayEDID
ioregコマンドでEDID情報を取得しても人間が理解できる情報としては出力されない

MacのEDID情報デコード方法

1. edid-decodeをダウンロード

まずターミナルで下記コマンドを実行してedid-docodeをダウンロード。

git clone git://linuxtv.org/edid-decode.git
cd edid-decode
make

GitHubでは「make」のあとに「make install」を実行してインストールするように説明されているが、コンパイルするだけでいいので「make install」は実行しない。

上記コマンドを実行するとホームディレクトリ内に「edid-decode」というフォルダが作成される。

2. EDID情報を取得

続けて下記コマンドを実行してEDID情報を取得。

ioreg -l | grep IODisplayEDID

本記事では不要だがEDIDに加えてGPUに関しての情報も表示させたい場合は下記コマンドでも取得可能。

ioreg -lw0 | grep EDID

3. EDID情報からテキストファイルを作成

前述のコマンドで上記画像のような文字列のEDID情報が出力されるのでそれらの文字列(<>内)をCommand+Cキーでクリップボードにコピー(複数のディスプレイを接続している場合はどれか一つのEDID情報をコピー)。

続けて上記文字列からテキストファイルを作成するために下記コマンドを実行。

cat > edid.txt

コマンド実行後、先ほどコピーしたEDIDの文字列をペーストしてエンターキー。

文字列をペーストしてエンターキーを押すとホームディレクトリの「edid-decode」フォルダ内に「edid.txt」というテキストファイルが作成される。

上記画像のようにテキストファイルが作成されているのを確認したらターミナルでControl+Cキーを押してテキストファイルの作成を終了。

4. テキストファイルをバイナリファイルにコンバート

続いて下記コマンドを実行してテキストファイルをバイナリファイルにコンバートする(binという拡張子を付ける必要はない)。

xxd -r -p edid.txt edid

上記コマンドを実行すると「edid-decode」フォルダ内にバイナリファイルが作成される。

上記画像のように「edid」というバイナリファイルが作成されていたら正常にコンバートされている。

5. edid-decodeを実行してバイナリファイルをデコード

バイナリファイルが作成されているのを確認したら下記コマンドを実行してバイナリファイルをデコード。

./edid-decode edid

コマンド実行後、正常にデコードが完了すればモニタについての膨大な詳細情報が表示される。

上記画像のようにモニタについての詳細情報が無事に表示されたら完了。

6. 出力された情報からテキストファイルを作成(オプション)

デコードして出力されたモニタの詳細情報はそのままメモ帳やテキストエディターにコピーしてもいいし、先ほどの手順(catコマンド)でターミナル内からそのままテキストファイルに出力してもOK。

デコードされたEDID情報の内容

デコードされたEDIDにはオーディオ情報などありとあらゆるモニタの情報が記されている

本記事の手順でデコードしたEDID情報にはモニタのメーカー、製品名、サポートする解像度やHDRの情報、リフレッシュレート、最大輝度、サポートするオーディオ情報、シリアルナンバー、更には製造週など通常のmacOSのシステムレポートやサードパーティアプリでは読み取れない膨大な情報を確認可能なので重宝するはずだ。