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 是基础块,后面才是扩展块
相关推荐
三品吉他手会点灯13 小时前
C语言学习笔记 - 20.C编程预备计算机专业知识 - 变量为什么必须的初始化【重点】
c语言·笔记·学习
kobesdu13 小时前
【ROS2实战笔记-12】rosshow:终端里的盲文可视化与无头机器人的现场调试
笔记·机器人·ros·移动机器人
sakiko_13 小时前
UIKit学习笔记1-创建项目(使用UIKit)、使用组件
笔记·学习
x***r15113 小时前
node-v0.12.2-x86安装步骤详解(附Node.js历史版本与32位配置教程)
windows
小小小米粒14 小时前
Collection单列集合、Map(Key - Value)双列集合,多继承实现。
java·开发语言·windows
蜡台14 小时前
Python包管理工具pip完全指南-----2
linux·windows·python
weixin_4022784514 小时前
解决打开vscode编辑器ctrl+鼠标左键不能跳转定义问题 环境C++
vscode·编辑器·计算机外设
智者知已应修善业14 小时前
【51单片机中的打飞机设计】2023-8-25
c++·经验分享·笔记·算法·51单片机
智者知已应修善业16 小时前
【51单片机按键调节占空比3位数码管显示】2023-8-24
c++·经验分享·笔记·算法·51单片机
JasmineX-117 小时前
数据结构(笔记)——双向链表
c语言·数据结构·笔记·链表