Windows 显示器EDID笔记

显示器中的EDID:

EDID\HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Enum\DISPLAY\NEC3396\4&13b58229&0&UID16433\Device Parameters 下的EDID,存储的硬件显示器中的EDID。

CRU 或用户覆盖 EDID,优先使用覆盖 EDID:

\HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Enum\DISPLAY\NEC3396\4&13b58229&0&UID16433\Device Parameters\EDID_OVERRIDE

  • 写入 EDID_OVERRIDE 后,系统就只认覆盖的分辨率列表。
  • 如果没有覆盖,系统默认使用 EDID。

数据流(原生 vs 覆盖)

显示器 EEPROM → 驱动读取 → 注册表 EDID

↓

若存在 EDID_OVERRIDE → 使用覆盖 EDID

↓

驱动枚举分辨率 → Windows 显示设置

CRU 修改 EDID 时:

  • 生成新的 EDID buffer
  • 写入 EDID_OVERRIDE
  • 重启驱动后系统使用覆盖数据,而原始 EDID 保留不变。

EDID_OVERRIDE 下的属性详解

名称 类型 说明
(默认) REG_SZ 没有设置,通常不使用
0 REG_BINARY EDID 基础块(Block 0) ,128 字节。包含 EDID header、厂商 ID、产品代码、序列号、版本号、首选分辨率等。 一般由CRU 的Detailed resolutions 设置
1 REG_BINARY EDID 扩展块(Block 1) ,128 字节。通常是 CTA-861 扩展块或 VESA 扩展块,包含额外分辨率、音频、颜色信息等。 一般由Extensions resolutions 是用来配置 EDID 扩展块(Extension Block)。
CRU_Extensions REG_BINARY 表示 CRU 新增的扩展块类型和数量,CRU 用来标记哪些扩展块是用户添加的。
CRU_Name REG_BINARY 用户自定义显示器名称,CRU 保存的标识信息(通常是 ASCII 编码)。
CRU_Range_Limits REG_BINARY 用户自定义的分辨率范围限制(Range Limits Block),如最大像素时钟、水平/垂直频率范围。
CRU_Serial_Number REG_BINARY 用户自定义显示器序列号,覆盖原 EDID 序列号字段(ASCII 编码,例如 00 34 37 33 30 38 30 31 37 4e 43 → "47308017NC")。
  • Block 0 是基础块,后面才是扩展块
相关推荐
zhangrelay6 小时前
ROS项目设计案例智能大模型正经乱答案例
linux·笔记·学习·ubuntu·机器人
probex_7 小时前
学习笔记:知识图谱是什么,在测试里能干什么
笔记·学习·知识图谱
以为你知道啊7 小时前
90年代复古博客
笔记
weixin199701080167 小时前
《1688物流API接口边界:logistics.trace.get 与 freight.template.list 的隐藏约束》(附Python源码)
windows·python·list
波力海苔夹心脆6758 小时前
C# 值类型与引用类型详解:存储位置、赋值机制、参数传递、相等比较、装箱拆箱与常见陷阱
开发语言·jvm·经验分享·笔记·c#·.net
AOI小白新手上路10 小时前
从 Keil 调试视角看 51 指针,到 Cortex-M 内存映射访问寄存器 · 学习笔记
笔记·学习
坤坤子吖12 小时前
ELF加载、动态链接、GOT与PLT
linux·笔记·学习
hgfsjk13 小时前
野莓采集图片修改指南:从单张处理到批量优化
大数据·经验分享·笔记·其他
咖啡忍者13 小时前
【SAP BASIS】Section 11: SAP System Landscape
笔记
嵌入式DZC13 小时前
嵌入式开发笔记随记
笔记