如何获取显示器的EDID信息

全面掌握获取显示器EDID信息技巧 在现代显示技术领域,EDID(Extended Display Identification Data)是显示器和视频源之间交流的关键信息。EDID数据存储在显示器内部的EEPROM(Electrically Erasable Programmable Read-Only Memory)芯片中,包含了制造商信息、产品类型、显示参数(如分辨率、刷新率、显示接口类型等)以及特定功能的支持情况等。理解EDID数据不仅有助于用户更好地配置显示设备,还对专业人员在故障诊断和多显示器管理中至关重要。 阅读详情

来源:http://wenku.baidu.com/view/8f82728471fe910ef12df8f4.html

Q1: 为什么要写这篇文章?

A1:在最近的工作中遇到了不少问题,其中很多都是和EDID相关的。可以说,作为一家以“显示”为生的企业,我们时时刻刻在与EDID打交道。EDID这东西很简单,但是如果不了解其基本原理和概念的话,会给我们的工作带来不少麻烦。因此,我决定将我对EDID的理解和调试EDID的一些经验写成一篇文章,供大家学习和参考,希望能对大家的工作有所帮助。为了方便阅读和理解,文章写成问答的形式。由于本人接触EDID的时间不长,文章中难免有错误和疏漏之处,希望大家给予指正。好,闲话少说,咱们书归正传。

Q2:EDID是什么?

A2:EDID的全称是Extended Display Identification Data(扩展显示标识数据),共有128字节。其中包含有关显示器及其性能的参数,包括供应商信息、最大图像大小、颜色设置、厂商预设置、频率范围的限制以及显示器名和序列号的字符串等等。形象地说,EDID就是显示器的身份证、户口本、技能证书等证件的集合,目的就是告诉别人我是谁,我从哪来,我能干什么。

Q3:为什么要使用EDID?

A3:为了能让PC或其他的图像输出设备更好的识别显示器属性

EDID并非古而有之,在古老的CRT时期是没有EDID这个概念的,那为什么后来会有呢?因为随着显示设备的发展,显示器的种类越来越多,模拟的、数字的、普屏的、宽屏的、17寸、19寸、22寸……这让PC傻了眼,分辨率和时序的种类太多了,而每种显示器又不可能支持所有的分辨率,那怎么知道该给显示器一个什么样的分辨率啊?显示出的效果是最佳效果吗?不仅如此,随便输出一个分辨率还有损坏显示器硬件的可能,这可太危险了。于是,EDID临危受命,担当起显示器和PC之前的传话筒。“PC你好,我是A显示器,我能显示N种分辨率,最佳分辨率是XXX”。“显示器你好,收到你的信息,现在就按最佳分辨率给你输出”。这下大家明白了吧,EDID就是为了能让PC或其他的图像输出设备更好的识别显示器属性而出现的。

Q4:经常听到有同志一会说“EDID信息”,一会说“DDC信息”。那么哪种说法更准确?EDID和DDC的关系又是什么?

A4: DDC的全称是Display Data Channel(显示数据通道),顾名思义,它是一个通道。我们可以说DDC是用来传送EDID信息的,也可以说EDID信息是通过DDC传送的,所以,“DDC信息”的说法并不准确。至于DDC究竟是怎么传送EDID的,我们后面再说。

Q5:每个显示器只有一个EDID吗?

A5:不一定。

现在的显示器功能很强大,通常都提供多种视频接口,常见的有DVI、VGA、HDMI、Display Port等,由于每种接口的特性和带宽不同,使得不同接口的EDID也不同。使用哪个接口,PC读到的就是哪个接口的EDID。我们的设备主要使用DVI、VGA、VIDEO几种接口。由于VIDEO接口的几种制式如PAL、NTSC等,其分辨率场频都是固定的,没有使用EDID的必要,故不在讨论之列。本文下面的问题都围绕DVI、VGA两种接口展开

Q6:说了半天,EDID对我们到底有什么用?

A6:要回答这个问题,首先要弄清我们设备的应用场景,请看下图

                 

这是一个典型的应用场景,PC将视频信号发送到我们的设备上,经过一系列的传输或切换,设备将视频信号发送到显示器或投影机上,也就是说,我们的设备位于PC和显示器之间。首先,在输入端,设备需要让PC知道自己是能够输入视频信号的,换句话说,设备要“欺骗”PC,让PC认为自己是一台显示器。如果不这样的话,PC可能会拒绝输出任何视频信号的(仅限于DVI接口,VGA接口不需要EDID也能输出),这叫“不见兔子不撒鹰”。除此之外,设备还要告诉PC自己支持的显示时序。而在输出端,当设备需要自建输出时序(如大屏控制器的输出卡)而不是简单的复制输入时序(如各种矩阵设备)的时候,就需要知道显示器支持的显示时序,从而让自己输出的信号能在显示器上正常显示。在这些地方,EDID就发挥作用了。在输入端PC通过读取设备上的EDID来获悉设备支持的显示时序,而同样,在输出端设备需要读取显示器的EDID来确定自己的输出时序。

Q7:上面说过PC上的VGA接口不需要EDID信息也能输出,而且公司的VGA输入设备里绝大多数也没有EDID,那么VGA接口有EDID吗?它是必需的吗?

A7: VGA接口也有EDID,但不是必需的。

液晶显示器、型号较新的CRT显示器和投影机在VGA接口都是有EDID的,而型号较老的CRT显示器和投影机则没有。当PC连接一个没有EDID的VGA设备时,会将其识别成一个“默认监示器”。这时,PC只能输出一些内置的默认分辨率和时序,如果需要的分辨率不在默认的分辨率当中,那PC是没办法输出的。这时候,就需要在VGA设备中添加EDID,来使PC支持需要的分辨率。

Q8:如何获取显示器的EDID?

A8:使用“SoftMCCS”软件。安装软件后打开,可以看到软件界面如下:

操作步骤如下:

1、打开SoftMCCS软件

2、如果接了多台显示器,则在左上角的栏中选择需要读取EDID的显示器型号,如“DELL E198WFP”

3、点击左上角“File -> Save EDID as”,将EDID信息保存在自己想要的位置,文件名可以自己指定,文件类型要选择“Raylar EDID file (*.dat)”

用文本编辑工具(如写字板)打开刚刚保存的EDID文件,如下图

 

可以看到右下方有128个16进制数,这就是刚刚保存的EDID信息了

Q9:EDID里都包含什么信息?哪些是我们关心的?

A9:刚才我们已经通过“SoftMCCS”软件获取了EDID数据文件,下面要介绍另一个软件来分析这个数据,“Phoenix EDID Designer”。软件只有一个exe文件,不需要安装。点击打开按钮,然后找到并打开我们刚刚保存的EDID文件,打开后如下图

打开之后默认是只读的,数据都是灰色,为了看起来更清楚,点击 取消只读属性,如下图所示

 

图中红线圈出的部分中可以看到5个选项卡,EDID中的信息基本都包含在其中,我们逐个看一下。

打开EDID文件后默认显示的是“General”选项卡,里面介绍了显示器中一些基本的信息,一般与我们无关,也不用修改。

点击“Basic Display Parameter”选项卡,如下图所示

这里面对我们有用的信息只有“Video Input Definition”(视频输入描述)。在Q7中曾经提到,VGA接口也是有EDID的。而VGA的EDID和其他数字接口EDID的最大区别就是视频输入描述。VGA接口的输入是Analog,而如图中DVI接口的EDID,选则Digital输入。

“Color/Established Timings” 

“Established Timings”(内建时序)表示显示器是否支持一些通用时序。若支持,则在相应的分辨率时序前打钩。例如,由上图中可知显示器不支持720*400@88Hz和1024*768@87Hz这两种时序。

“Standard Timings”(标准时序)

标准时序是对内建时序的扩充,最多可描述8个时序,图中我们看到的是1-4个时序,点击红色方框中的“5-8”可看到后4个时序。以时序1(Timing ID #1)为例,“Enable”前打钩表示显示器支持此时序;“H Active”表示一行中的有效像素;“Refresh”表示刷新率,也叫场频率,单位Hz,注意这里的刷新率值必须大于等于60Hz;“Aspect Ratio”表示图像的宽高比,等于一行中的有效像素和图像的有效行数之比。例如时序1中行有效像素是1440,宽高比是16:10,我们就可以知道图像的有效行数是1440/16*10=900。

“Detailed Timings”(详细时序)

 

详细时序这个区域可以说是整个EDID中和我们关系最密切,也是我们需要了解最多和改动最频繁的区域。它分为4个块(Block),可通过左上角的按钮在各个块之间切换(软件的显示有问题,4个按钮分别为Block 1、2、3、4)。每个块既可以是一个时序说明(Timing)也可以是一个显示器描述符(Monitor Descriptor)。需要注意的是:Block 1必须是时序说明,它描述的是显示器的最佳时序。

上图中的显示的就是Block 1,注意右上角的Timing / Monitor Descriptor切换的部分是灰色的,这证实了我们刚才的说法:Block 1只能表示时序。

左下角的Timing部分描述了时序的主要参数,含义见下表(软件显示有问题,参数名称显示不完整,表格中的参数也仅对应其在软件中的位置)。H Image、H Border、V Image、V Border几个参数一般用不到,表格中没有列出

参数

含义

参数

含义

Pixel

像素时钟频率

Interlaced

前面打钩表示是隔行显示

H   Active

一行中有效的像素

V   Active

一场中有效的行数

H   Blank

一行中的消隐期长度,单位是像素

V   Blank

一场中的消隐期长度,单位是行

H   sync

行同步前沿宽度,即从行有效像素结束到行同步开始的像素数

V   sync

场同步前沿宽度,即从一场中有效行结束到场同步开始的行数

H   sync

行同步信号宽度,单位是像素

V   sync

场同步信号宽度,单位是行

 

表中各参数的位置关系如下图所示

 

由图中可知,消隐期=前沿+同步+后沿,这4个参数已知其中3个就可以推算出另一个。

软件右下角的Sync Scheme描述了同步信号的信息。左边是同步方式,一般选择“Digital Separate”(数字分离);右边是同步信号的极性,选择表示极性为正,即高有效。

Q:如何修改EDID文件?

大多数情况下,我们需要的EDID文件可由已知的EDID文件修改得到,步骤如下:

1、打开Phoenix EDID Designer软件

2、用软件打开需要修改的EDID文件

3、去掉只读属性

4、修改相应的EDID信息。一般需要修改的地方有:

(1)视频输入描述。VGA接口要选Analog,DVI接口要选Digital

(2)详细时序。将Block 1中的时序修改成需要的时序,将其他Block中的“显示器名称”修改成需要的名称

5、点击File->Save EDID as保存修改后的EDID文件

Q:修改EDID文件的时候需要注意什么?

A:修改EDID的时候要特别注意以下几方面:

1、视频输入描述不要选错,VGA接口选Analog,DVI接口选Digital,否则可能造成显卡无输出。如果需要一个VGA的EDID,最好修改前的EDID就是VGA的,而不是用一个DVI的EDID改成VGA的

2、同一种分辨率可能有多种刷新率,如60Hz、75Hz;多种时序,如Normal,Reduced Blanking等。修改EDID的时候要注意设备或显示器支持哪一种,不要改错。具体的时序说明参见VESA的标准文档

Q:如何在设备上加入EDID?

A:Q4中提到,DDC是传送EDID的通道,PC和设备之间的DDC连接如下图所示 

图中视频接口包括VGA、DVI等等。DDC实际上是一个I­­2C总线,PC通过它连接到一个I­2C Flash存储器上(一般是24LC21A),里面存储的就是EDID的128字节信息。在设备上加入EDID,就是将Flash接到DDC上,接法见下表。

接口

SDA

SCL

VGA

12

15

DVI

7

6

表中是DDC通道在VGA和DVI接口中对应的线序

然后就是将EDID信息写入Flash中。对于大屏控制器和融合器,目前的软件已经支持在PC端更新设备EDID,使用方法参见黄工的文档。而对于其他一些设备,可以使用专用的编程器来烧写Flash。针对生产部常用的EasyPRO 100B编程器,烧写步骤如下:

1、打开Phoenix EDID Designer软件

2、用软件打开需要烧写的EDID文件(dat格式)

3、点击File Export,将EDID文件保存为hex格式

4、用编程器软件调用hex文件进行烧写,具体过程不再赘述

注册表解析EDID获取显示器信息 本文介绍如何通过Windows注册表读取并解析EDID数据,获取显示器的制造商、型号、序列号和物理尺寸等硬件信息。该方法无需管理员权限和第三方库,兼容性强,适用于多显示器管理、资产追踪和远程诊断等场景。 阅读详情

相关推荐

EDIDManager.zip

EDID_ManagerV1x0.exe

EDID使用说明

来源:http://wenku.baidu.com/view/8f82728471fe910ef12df8f4.html

ganshuyu的专栏 4万+

EDID Designer4.6.7.0.

EDID Designer Version: 4.6.7.0,最新版本,可以查看,编辑E,配置EDID,非常方便快捷。

【亲测免费】 EDID编辑工具:轻松获取、编辑及解析显示器EDID信息

EDID编辑工具:轻松获取、编辑及解析显示器EDID信息 【下载地址】EDID编辑工具 EDID编辑工具是一款专为显示器配置优化的实用工具,支持获取、编辑和解析EDID信息。EDID(扩展显示识别数据)是显示器与电脑通信的核心数据,包含分辨率、刷新率等关键参数。通过本工具,用户可以轻松提取显示器EDID,并根据需求进行个...

gitblog_06731的博客 1463

Analog EEditZ (最好用的EDID编辑工具)

Analog Devices公司的显示器EDID编辑工具,是所有厂商当中最好用的EDID编辑工具。

phoenix-edid-designer-1.3

phoenix-edid-designer-1.3,能够获取本机EDID,读取编辑或生成EDID,操作简单

如何获取电视或显示器的EDID信息

如何获取电视或显示器的EDID信息对于EDID的基本知识,请参考DDC EDID 介绍或Whats EDID?。本篇文章主要介绍如何使用一个适当的工具来获取相关设备的EDID信息。对PC而言,如果连接外部显示器或电视, 显卡驱动会读取它们的EDID信息,然后解析出它所支持的所有模式。PC显卡驱动一般会有一个类似于“隐藏显示器不支持的模式”的选项。若选择它,将仅仅显示显示器或电视所支持的分辨

燕青专栏 1万+

phoenix EDID Designer

phoenix EDID Designer , 只要有显示器接到笔记本上成功显示, 并且信息被成功保存在系统注册表中, 就能用这个软件读出来进行分析, 方便计算 fb_videomode 结构体的参数....

通过EDID信息,获取电脑显示器序列号

某天突发奇想,能不能通过软件把电脑主机和显示器绑定,于是研究了下,发现需要获取显示器的DDC信息,通过驱动层面获取难度比较大,网上查询了下,linux的driver里video中有相关代码段,通过一直可以搞定,不过没有尝试,最后通过注册表发现了一个键值也能达到目的, HKEY_LOCAL_MACHINE->SYSTEM->ControlSet001->Enum->Display 中的第一项就是

mimi00x的专栏 6068

ifix5.8连接ab plc的点-通过rslinx

以ifix连接ab plc的点为例 1.先在rslinx上把plc的点导出为opc server 2.使用opc power tool 作为opc client 去连接 3.保存到项目的PDB文件夹下面,并且以节点名命名。 也可以不以节点名命名,系统自动会生成一个以节点名命名的这种文件,就显得很乱。 同时,项目的PDB目录下面必须还得拷过来一个de...

中国智造2025 4110

解锁Cherry Studio高阶玩法:用MCP实现自动化测试与数据爬取

本文深入探讨了如何利用MCP协议与Cherry Studio结合,实现自动化测试与数据爬取的高阶应用。通过Playwright等工具的MCP集成方案,详细解析了自动化测试流水线构建和智能爬虫系统开发的关键技术,显著提升工程效率和系统适应性。

defi6farmer的博客 274

edid 获取显示器详细信息

EDID  EDID: Extended Display Identification Data(扩展显示标识数据)是一种VESA 标准数据格式,其中包含有关监视器及其性能的参数,包括供应商信息、最大图像大小、颜色设置、厂商预设置、频率范围的限制以及显示器名和序列号的字符串。 这些信息保存在 display 节中,用来通过一个 DDC(Display Data Channel)与系统进行通

徐新华的专栏 1万+

openEuler服务器离线安装实战:从Docker到Samba的完整避坑指南

本文提供了一份详尽的openEuler服务器离线部署实战指南,重点解决了在无网络环境下安装Docker、Samba等软件的依赖难题。文章深入对比了`dnf install`、`rpm`直接安装及禁用仓库安装三种核心方法,并分享了构建本地DNF仓库的进阶策略,旨在帮助运维人员构建高效可靠的离线部署工作流。

weixin_29210759的博客 71

softMCCSEDID读取软件V2.5.0.1070免费安装版:轻松获取EDID信息,提升显示器性能

softMCCSEDID读取软件V2.5.0.1070免费安装版:轻松获取EDID信息,提升显示器性能 【下载地址】softMCCSEDID读取软件V2.5.0.1070免费安装版 softMCCS是一款专注于EDID信息获取与管理的实用工具,专为显示设备开发者与调试人员设计。它能够快速读取连接设备的EDID信息,支持固...

gitblog_06777的博客 1029

ctftools-all-in-one使用说明

OAEP (Optimal Asymmetric Encryption Padding) 是一种用于RSA加密的填充方案,目的是提高RSA加密的安全性。在CTF比赛中,如果模数N的两个因子比较接近,使用"费马分解(N)"可能会更快地得到结果;OAEP 是 RSA 的一种标准填充方式(在 PKCS#1 v2.0+ 中定义),因此这类题目本质上仍是 RSA 题,但。,导致你不能直接用常规的 RSA 解密公式 �=�� mod �m=cdmodN 得到有意义的明文。如果你在 CTF 中遇到 RSA 题,

2501_91682449的博客 1713

LabVIEW多设备采集实战:1个程序同时控制3个RS485 Modbus仪表

本文详细介绍了如何使用LabVIEW实现多设备RS485 Modbus同步采集,涵盖硬件架构设计、多线程通信框架搭建、数据帧解析技巧及性能优化策略。通过实际项目案例,展示如何解决端口冲突、数据解析错误等工业自动化常见问题,提升采集系统实时性与可靠性。

qsc901234的博客 298

ubuntu下获取显示器edid信息的方法

~ $ gtf 1920 1080 60 也可以得到modeline 或者 read-edid也是一个途径,用法是 ~ $ sudo get-edid | parse-edid 或者  xrandr -q 查询, xrandr -s 1920 1080

qq160816的专栏 1万+

泄露测试仪CTS的Sentinel I28使用

本文介绍:泄露测试仪CTS的Sentinel I28使用

qq_34047402的博客 2199

Lunar显示器信息获取技术:EDID解析和显示器属性读取原理

Lunar是一款智能自适应亮度调节软件,能够为外部显示器提供精确的亮度控制。本文将深入解析Lunar如何通过EDID数据获取显示器信息,以及显示器属性读取的核心技术原理。🎯 ## 🌟 什么是EDID数据? EDID(Extended Display Identification Data)是显示器与计算机之间通信的标准数据格式,包含了显示器的关键信息。Lunar通过解析EDID数据来识别不

gitblog_00040的博客 829

华为od 面试八股文_前端_02_含答案

华为od 面试八股文_前端_02_含答案

MISAYAONE的博客 1998

AgentScope 实战训练营-7 种多智能体协作模式详解

本教程基于阿里巴巴开源的AgentScope Java框架,系统讲解多智能体系统的开发方法。涵盖7种核心协作模式:Pipeline流水线、Routing路由、Handoffs智能体交接、Supervisor监督器、Subagent子智能体、Skills技能系统及Workflow工作流。详细阐述ReActAgent、AgentScopeAgent、StateGraph等核心概念,提供完整的配置示例与代码实现,帮助开发者快速掌握基于Spring AI Alibaba的多智能体应用开发。

program哲学 163
上一篇: 自动生成Makefile的全过程详解!automake/autoconf入门
下一篇: 使用dialog写图形自动化shell脚本
常用技术
博客等级 码龄17年 91粉丝 100原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值