EDID结构

news2025/5/14 1:54:15

EDID

DDC通讯中传输显示设备数据

VGA , DVI 的EDID由128字节组成,hdmi的EDID增加扩展块128字节。扩展快的内容主要是和音频属性相关的,DVI和vga没有音频,hdmi自带音频,扩展快数据规范按照cea-861x标准。

Edid为了让pc或其他的图像输出设备更好的识别显示器属性而出现的。

Ddc 显示数据通道,用来传送edid信息的

设备告诉pc自己支持的显示时序,而在输出端,当设备需要自检输出时序,而不是简单的复制输入时序额时候,就需要知道显示器支持的显示时序,从而让自己输出的信号能够在显示器上正常显示,在输入端pc通过读取设备上的edid去得到设备支持的显示时序。输出端需要读取显示器的edid来确定自己的输出时序。

Edid主块结构:

Edid开始标志,固定

0x00 0xff 0xff 0xff 0xff 0xff 0xff

产品ID和制造商信息

制造商名称:3个字母组成,基于压缩ascll码。

Ascll码对应关系 A = 0001 , Z = 11010

首位保留,其他由三个字符占据

产品序列号:直接转成16进制或以ascll格式转换,序列号也可以用于字符型,子啊后面的dtd部分定义

生产周,当年的生产周,范围 1-52,0为无效值

生产年份,规定1990开始计算,1990--是0年,然后递增计算

EDID structure version/revision

第12h地址的一个字节,代表版本号

第13h地址的一个字节,代表修改号

Basic dispalay paramenters/features

地址14H:视频信号定义,是模拟信号还是数字信号,并进行相应的配置
第七位,代表模拟/数字信号,0是模拟,1是数字

模拟信号时

数字信号时

如果设置为1,则接口与VESA DFP 1.x TMDS CRGB信号兼容,1像素/时钟,最高8位/色MSB对齐,DE有效高

第18h特性

Color characteristic

发送红绿蓝白场的显示坐标

Established timings

提供固定的vesa appple mac ibm vga 等输出的timing

Standard timing identification

16个字节提供最多8种分辨率的识别,每种分辨率都是由2个字节的模式格式和刷新率得到的,这些分辨率都没有包含established timing种;这两个字节的识别码都是vesa标准分辨率来定义的,都是vesa分辨率中的一部分,未使用的字节应该设为01h

其他字节的设置方式 同上。

DTD -detailed timing description

共有72个字节分为四个详细时序描述块,dtd每个部分18个字节。

Dtd还可以描述显示器的其他特性,

Extension flag

主块128字节外,如果由扩展快则该字节置1,vga和dvi的值为0 hdmi的为1。

Checksum

校验和:使前127字节加上此字节等于0

EDID扩展快详细:

CEA-861D HDMI结构

从80H开始

Tag:

固定数值02h

Revision

Cea扩展块版本号

数字信号特性:

字节各位定义:

Bit7:是否支持过扫描

Bit6:是否支持basic audio

Bit5:是否支持YCbCr 4:4:4

Bit4:是否支持YCbCr4:2:2

低4bit:native DTD个数

Data Blocks 功能块参数设置

Data Block 的 tag code值定义

  1. video data block

根据data block结构,首字节的bit7-5为 video data block = 2,bit4-0为video data block 长度,后面跟的字节为多个cea short video descriptor

Video identification code 见 cea-861d标准定义,如下

Audio data block

根据data block 结构,首字节 bit7-5为audio data block =1 ,bit4-0为video data block 长度,后面字节为1个或多个cea short audio descriptor,每个cea short audio descripto 由三个字节组级,分为lpcm,ac3,mpeg2等各种audio format code , audio format code 及 cea short duio descriptor结构如下

Speaker allocation data block

根据data block 结构,首字节的bit7-5为speaker allocation data block = 4,bit4-0 为speaker allocation data block长度固定为3,结构如下

F为前置,L为左置,r为右置,c代表中置,FXX=0代表预留位

  1. vendor specific data block vsdb

厂商定义块,根据data block结构,首字节的bit7-5 vendor specific data block =3 , bit4-0为vendor specific data block长度。后面的按照hdmi标准中的vsdb规范,下面是hdmi1.4a的结构

6,Detailed timing ddescription

DTD 每块18字节。

  1. padding 保留字节
  2. Checksum : 校验和,使前127字节加上此字节等于0

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2338309.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

文件包含(详解)

文件包含漏洞是一种常见的Web安全漏洞,其核心在于应用程序未对用户控制的文件路径或文件名进行严格过滤,导致攻击者能够包含并执行任意文件(包括本地或远程恶意文件)。 1. 文件包含原理 动态文件包含机制 开发者使用动态包含函数…

《SpringBoot中@Scheduled和Quartz的区别是什么?分布式定时任务框架选型实战》​

🌟 ​大家好,我是摘星!​ 🌟 今天为大家带来的是Scheduled和Quartz对比分析: 新手常见困惑: 刚学SpringBoot时,我发现用Scheduled写定时任务特别简单。但当我看到同事在项目里用Quartz时&…

安装fvm可以让电脑同时管理多个版本的flutter、flutter常用命令、vscode连接模拟器

打开 PowerShellfvm安装 dart pub global activate fvm安装完成后,如果显示FVM无法识别,那么需要去添加环境变量path添加这个:C:\Users\Administrator\AppData\Local\Pub\Cache\bin 常用命令 fvm releases 查看用户可以装的flutter版本fvm l…

Kafka系列之:计算kafka集群topic占的存储大小

Kafka系列之:计算kafka集群topic占的存储大小 topic存储数据格式统计topic存储大小定时统计topic存储大小topic存储数据格式 单位是字节大小 size_bytes{directory="/data/datum/kafka/optics-all" } 782336计算topic存储大小脚本逻辑是: 计算指定目录或文件的大小…

智谱AI大模型免费开放:开启AI创作新时代

文章摘要:近日,国内领先的人工智能公司智谱AI宣布旗下多款大模型服务免费开放,这一举措标志着大模型技术正式迈入普惠阶段。本文将详细介绍智谱AI此次开放的GLM-4 等大模型,涵盖其主要功能、技术特点、使用步骤以及应用场景&#…

T1结构像+RS-fMRI影像处理过程记录(数据下载+Matlab工具箱+数据处理)

最近需要仿真研究T1结构像RS-fMRI影像融合处理输出目标坐标的路线可行性。就此机会记录下来。 为了完成验证目标处理,首先需要有数据,然后需要准备对应的处理平台和工具箱,进行一系列。那么开始记录~ 前言: 为了基于种子点的功能连…

【前端基础】--- HTML

个人主页  :  9ilk    专栏  :  前端基础 文章目录 🏠 初识HTML🏠 HTML结构认识HTML标签HTML文件基本结构标签层次结构快速生成代码框架 🏠 HTML常见标签注释标签标题标签 h1-h6段落标签 p换行标签 br格式化标签图片标签 img超链接标签…

黑马V11版 最新Java高级软件工程师课程-JavaEE精英进阶课

课程大小:60.2G 课程下载:https://download.csdn.net/download/m0_66047725/90615581 更多资源下载:关注我 阶段一 中台战略与组件化开发专题课程 阶段二 【物流行业】品达物流TMS 阶段三 智牛股 阶段四 千亿级电商秒杀解决方案专题 …

C#插件与可扩展性

外接程序为主机应用程序提供了扩展功能或服务。.net framework提供了一个编程模型,开发人员可以使用该模型来开发加载项并在其主机应用程序中激活它们。该模型通过在主机和外接程序之间构建通信管道来实现此目的。该模型是使用: System.AddIn, System.AddIn.Hosting, System.…

CVPR‘25 | 高文字渲染精度的商品图文海报生成

本文分享阿里妈妈智能创作与AI应用团队在图文广告创意方向上提出的商品图文海报生成模型,通过构建字符级视觉表征作为控制信号,可以实现精准的图上中文逐像素生成。基于该项工作总结的论文已被 CVPR 2025录用,并在阿里妈妈业务场景落地&#…

Golang|抽奖相关

文章目录 抽奖核心算法生成抽奖大转盘抽奖接口实现 抽奖核心算法 我们可以根据 单商品库存量/总商品库存量 得到每个商品被抽中的概率,可以想象这样一条 0-1 的数轴,数轴上的每一段相当于一种商品,概率之和为1。 抽奖时,我们会生…

idea maven 命令后控制台乱码

首先在idea中查看maven的编码方式 执行mvn -v命令 查看编码语言是GBK C:\Users\13488>mvn -v Apache Maven 3.6.3 (cecedd343002696d0abb50b32b541b8a6ba2883f) Maven home: D:\maven\apache-maven-3.6.3\bin\.. Java version: 1.8.0_202, vendor: Oracle Corporation, runt…

C# dll 打包进exe

Framework4.x推荐使用 Costura.Fody 1. 安装 NuGet 包 Install-Package Costura.Fody工程自动生成packages文件夹,300M左右。生成FodyWeavers.xml、FodyWeavers.xsd文件。 2. 自动嵌入 编译后,所有依赖的 DLL 会被自动嵌入到 EXE 中。 运行时自动解压…

【数据融合实战手册·实战篇】二维赋能三维的5种高阶玩法:手把手教你用Mapmost打造智慧城市标杆案例

在当今数字化时代,二三维数据融合技术的重要性不言而喻。二三维数据融合通过整合二维数据的结构化优势与三维数据的直观性,打破了传统数据在表达和分析上的局限,为各行业提供了更全面、精准的数据分析手段。从智慧城市建设到工业智能制造&…

ValueError: model.embed_tokens.weight doesn‘t have any device set

ValueError: model.embed_tokens.weight doesn’t have any device set model.embed_tokens.weight 通常在深度学习框架(如 PyTorch)中使用,一般是在处理自然语言处理(NLP)任务时,用于指代模型中词嵌入层(Embedding layer)的权重参数。下面详细解释: 词嵌入层的作用 …

解决:QTcpSocket: No such file or directory

项目场景: 使用QTcpSocket进行网络编程: 调用connectToHost连接服务器,调用waitForConnected判断是否连接成功,连接信号readyRead槽函数,异步读取数据,调用waitForReadyRead,阻塞读取数据。 问题描述 找不…

支付宝商家转账到账户余额,支持多商户管理

大家好,我是小悟 转账到支付宝账户是一种通过 API 完成单笔转账的功能,支付宝商家可以向其他支付宝账户进行单笔转账。 商家只需输入另一个正确的支付宝账号,即可将资金从本企业支付宝账户转账至另一个支付宝账户。 该产品适用行业较广&am…

3.Chromium指纹浏览器开发教程之chromium119版本源码拉取

获取Chromium最新版源码 Git是一个分布式版本控制系统,用于管理代码的版本和协作开发,它是目前最流行和广泛使用的版本控制系统之一。在Chromium项目中,通常使用gclient来获取Chromium的源代码,并使用Git来对代码进行版本控制和管…

【计算机视觉】OpenCV项目实战- Artificial-Eyeliner 人脸眼线检测

Artificial-Eyeliner 人脸眼线检测 项目介绍运行方式运行步骤常见问题及解决方法1. dlib 安装失败其他注意事项 2. 缺少 make / gcc3. **依赖库安装问题**:4. *人脸关键点检测失败:5. 眼线效果不理想:6. 实时处理延迟:7. 保存文件…

工作总结(十二)——迁移svn单项目到gitlab上,保留历史提交记录

文章目录 前言一、目的二、操作步骤1.创建项目库2.复制历史提交者账号3.复制待迁移项目以及历史记录4.push到gitlab远程仓库 总结 前言 本系列文章主要记录工作中一些需要记录的内容 一、目的 因为一些原因,我需要将svn库上的某个项目迁移到公司的gitlab库管理平台…