转自:http://blog.csdn.net/wowo1109/article/details/8805045

现在的显示设备比如显示器,电视等都HDMI接口,那通常每个HDMI接口都保留有一份EDID数据,这个数据可以存在程序里面由系统启动过程中来初始

化,更常见的做法是每个HDMI口会有一个EEPROM来保存这份数据,这个EEPROM也只是有256bytes大小。外接设备如DVD播放器在

HDMI热插拔的时候就会通过HDMI的DDC通道来读取EDID数据。EDID里面主要是定义了这显示设备所支持的图像分辨率,支持的声音格式,声音通

道,及3D等等,其目的是告诉外接设备我所支持的特性,让外接设备输出一个我所支持的timing,否则外接设备输出的timing并不支持的话那就没有

图像,声音的显示了。

EDID包含两个部分,基本的EDID只有128个字节,还有128字节的扩展EDID,扩展部分不是必须有的。那通常电视都有扩展EDID。那EDID的详细定义在规范里面都可以找到,主要有以下几部分:

(00H-07H)这8个字节是固定的,其必须等于0x00FFFFFFFFFFFFFF00;

(08H-08H)生产商的ID或者名字;

(0AH-0BH)产品ID;

(0CH-0FH)序列号;

(10H-11H)生产时间;

(12H-13H)版本号,比如1.3那就是01,03;

(14H)视频输入信号类型,数字还是模拟

(15H)横向图像的最大宽度

(16H)竖向图像的最大宽度

(17H)显示Gamma的版本,比如2.20

(18H)DPMS和支持的属性,比如显示类型是RGB

(19H-22H)色度信息

(23H)支持的基本timing表1,比如640x480@60HZ(IBM,VGA), 800x600@60HZ(VESA)

(24H)支持的基本timing表2,比如1024x768@60HZ(VESA)

(25H)生产商保留的timing信息

(26H-35H)支持的标准timing表

(36H-47H)timing的详细信息描述1,这个段是一个timing的更详细的描述,比如横向,竖向图像大小,刷新模式是隔行还是逐行等

(48H-59H)timing的详细信息描述2

(5AH-6BH)timing的详细信息描述3

(6CH-7DH)timing的详细信息描述4,这四个段用来描述不同timing的详细信息,描述1必须有,其它的可以为空

(7EH)扩展EDID的标志位,如果为0则不存在扩展EDID,如果为1则后面还存在扩展EDID段

(7FH)CheckSum

扩展EDID主要包含几个部分:

1.图像和声音模式,如模拟还是数字,

2.颜色模式,如YCbCr(4:4:4),YCbCr(4:2:2)

3.简短的timing描述,这里指定了一些在段1里面没有描述的timing信息。比如640x480p@60HZ 4:3等

4.声音的简短描述,比如PCM(2通道,32KHZ,44.1HZ,48HZ,16bit,20bit,24bit)

AC-3,Dolby Digital+(6通道,32KHZ,44.1KHZ,48KHZ,最大比特率640kbps)

喇叭(左右声道)

5.VSDB:生产商特别信息,比如包含了CEC物理地址,3D信息,deep color信息等

6.CheckSum

二。CheckSum计算方法

Checksum的计算原则是前127个字节的和为0,所以比如第一块的checksum=256-(byte0+byte1+...+byt127)%256

三。VSDB详解

VSDB是EDID里面一个比较难懂的块,通常的EDID编辑工具都没有提供编辑这个块的选项,但现在通常电视的EDID里面都有这个信息。

下图是这个VSDB的基本结构

(00H)这个字节的后5位表示这个VSDB的长度,但不包括本身。这个长度必须大于或者等于5

(01H-03H)24位的标志符,必须等于0x000C03

(04H-05H)这两个字节标志这个HDMI口的CEC物理地址,比如1口是0x1000,2口是0x2000

(06H)bit7 SUPPORT_AI标志位,如果为1表示这个设备支持ACP,ISRC1,ISRC2,不支持则应当置为0

bit3~bit6标志是否支持deep color模式,支持哪些模式。比如DC_36bit表示输出的每个像素由36位表示,颜色的精度更高。如果DC_YCBCR444置为1,那么其它3项也必须为1

bit0标志是否支持DVI dual link模式。

(07H):MAX_TMDS_CLOCK,表示支持的最大TMDS率,等于MAX_TMDS_CLOCK*5MHZ。如果支持的比率大于165M,或者支持deep color,或者支持DVI DUAL LINK那么这个字节不能为0

(08H)bit6,bit7图像和声音的延时标志,如果为1,那么(09H~12H)分别标志逐行,隔行的图像,声音延时信息。如果为0,那就不存在这个信息

bit5:附加HDMI图像格式,也就是除了之前定义的timing外,其它支持的格式。

包含了4个部分

1个字节3D_PRESENT表示是否支持3D信息

1个字节表示附加图像格式信息和3D格式信息的长度

第三部分详细说明了支持那些附加的HDMI格式,第四部分支持哪些3D格式

阅读(2472) | 评论(0) | 转发(2) |

linux查看edid信息,EDID 信息相关推荐

  1. linux查看显卡核心数,linux查看硬件信息,linux查看硬盘信息,linux查看CPU信息,linux查看显卡,硬件型号信息 | 帮助信息-动天数据...

    linux查看硬件信息,linux查看硬盘信息,linux查看CPU信息,linux查看显卡,硬件型号信息 作者:dthost | 时间:2015-09-30 | 8,325 次阅读 linux服务器 ...

  2. 多个cpu+linux,linux查看多个cpu信息

    CPU作为电脑的核心组成部份,它的好坏直接影响到电脑的性能.下面是学习啦小编带来的关于linux查看多个cpu信息的内容,欢迎阅读! linux查看多个cpu信息: cat /proc/cpuinfo ...

  3. netstat命令---Linux查看网络和socket信息

    netstat命令---Linux查看网络和socket信息 usage: netstat [-pWrxwutneal] Display networking information. -r  Dis ...

  4. Linux查看某个用户账号过期信息

    Linux查看某个用户账号过期信息 设置新用户缺省密码的过期时间 设置某个用户的密码有效期 查看某个用户的密码状态 `Password expires`和`Password inactive`区别 设 ...

  5. Linux查看当前操作系统版本信息

    # cat /proc/version (Linux查看当前操作系统版本信息)

  6. linux查看输出的信息,linux查看java的输出信息

    linux查看java的输出信息 [2021-02-04 22:41:35]  简介: php去除nbsp的方法:首先创建一个PHP代码示例文件:然后通过"preg_replace(&quo ...

  7. linux查看镜像的详细信息,docker inspect命令查看镜像详细信息

    # docker inspect ubuntu:18.04 // 查看镜像的详细信息[ {"Id": "sha256:d131e0fa2585a7efbfb187f70d ...

  8. linux检查系统硬件信息命令,Linux查看系统信息(硬件信息, 系统设置信息等) 命令 | Soo Smart!...

    Linux 查看系统信息命令是linux初学者必备的基础知识, 这些命令也非常有用, 因为进入linux第一件事就可能是首先查看系统信息, 因此必要的系统的学习一下这些linux系统信息命令还是非常有 ...

  9. linux显示系统信息软件下载,linux查看系统信息软件安装信息命令学习笔记

    查看LINUX安装版本 [root@localhost etc]# uname Linux [root@localhost etc]# uname -a Linux localhost.localdo ...

  10. Linux查看CPU和内存信息

    CPU: 1.总核数 = 物理CPU个数 X 每颗物理CPU的核数 2.总逻辑CPU数 = 物理CPU个数 X 每颗物理CPU的核数 X 超线程数 # 查看物理CPU个数 cat /proc/cpui ...

最新文章

  1. 为什么你的工作经验不值钱
  2. Scala类型系统——高级类类型(higher-kinded types)
  3. Boost:基于Boost的HTTP客户端的程序
  4. restTemplate的介绍和使用
  5. ​知乎700万人围观:如何快速成为数据分析师?
  6. c#数据库訪问返回值类型为SqlDataReader时使用using时注意的问题
  7. 关闭mysql服务的方法有哪些_MySQL--启动和关闭MySQL服务
  8. mysql 手动执行event_MYSQL 定时自动执行EVENT
  9. oracle 手动添加分区,如何在oracle中创建子分区?
  10. 想成长为一名年薪50万+的实战型架构师?必掌握这7大实战技能经验
  11. windows 域名+虚拟目录 (php)
  12. directx9又更新了。
  13. 合作的进化 6-10
  14. 打印机驱动是什么,打印机驱动有什么用,一定要安装打印机驱动吗
  15. OI国家集训队论文集1999~2018
  16. 我的盖洛普“优势识别器”测试报告
  17. Lipschitz连续
  18. 怎样提高计算机内存,电脑物理内存不足怎么提高 电脑物理内存占用过高的解决方法...
  19. 趣图:说一说你不知道的世界
  20. 华为认证: 高级redhat例题及答案

热门文章

  1. 时间序列 工具库学习(18)adtk模块-异常类型
  2. 开关计算机怎么操作方法,笔记本电脑操作入门小技巧
  3. MD改变字体大小,颜色,字体背景
  4. Linux下基于XScale的USB摄像头图像采集
  5. Unity 之 Application类简析
  6. RBF网络的matlab实现
  7. springboot服务使用策略模式
  8. 【正点原子STM32连载】第二十三章 OLED显示实验 摘自【正点原子】MiniPro STM32H750 开发指南_V1.1
  9. ClassCastException发生的原因以及解决方案
  10. Unity强化学习工具MLAgents