文章目录
HDMI 是英文High Definition Multimedia Interface(高清晰多媒体接口)的缩写,通过一条线缆能高品质地传输未经压缩的高清视频和多声道音频数据,最高数据传输速度为5Gbps。同时无需在信号传送前进行数模或模数转换,可以保证最高质量的音视频信号传送
1、HDMI 具有体积小,传输速率高,传输带宽高,兼容性好,即插即用,能同时传输无压缩音视频信号等优点
2、与传统的模拟信号接口相比,HDMI 接口增加了设备间接线的便捷性
例如显示器、电视机、投影仪、音响、显卡、笔记本电脑、机顶盒、PS/Switch游戏机、HDMI延长器、HDMI分配器、HDMI转换器、HDMI音频分离器等,由发送端和接收端构成具体,采用的是标准的19Pin HDMI接口,一共有19个引脚,这19个引脚分别会接在HDMI线缆的19条线上
HDMI接口从形状上区分有HDMI标准接口、HDMI迷你接口、HDMI微型接口三类常见类型

又称为HDMI A型接口 ,这种接口宽度为13.9 毫米、厚度为 4.45毫米,共19 针。主要用在高清电视、台式电脑、笔记本电脑,投影仪等常见设备。HDMI A型接口是使用最广泛,也最常见的接口类型
又称为HDMI C型接口,这种接口宽度为10.42毫米、厚度为2.4毫米,共有19针,尺寸比标准HDMI接口小了近三分之一,应用范围很小。是缩小版的HDMI标准接口类型。主要是用在便携式装置上如平板电脑、数码相机、便携式多媒体播放机等设备上
又称为HDMI D型几口,这种接口宽度为6.4毫米,厚度为2.8毫米,也是共有19针,尺寸比HDMI迷你接口小很多,一般应用于小型的移动设备上,比如智能手机、平板电脑等设备
以常用的A型接口为例,标准HDMI接口引脚序号图(HDMI接口母座)如下图所示:

标准HDMI接口公头引脚序号与定义图解如下图所示:

| HDMI引脚编号 | 信号 |
|---|---|
| 1 | TMDS日期2+ |
| 2 | TMDS数据2屏蔽 |
| 3 | TMDS数据2- |
| 4 | TMDS数据1+ |
| 5 | TMDS数据1屏蔽 |
| 6 | TMDS 数据 1- |
| 7 | TMDS数据0+ |
| 8 | TMDS数据0屏蔽 |
| 9 | TMDS数据O- |
| 10 | TMDS时钟+ |
| 11 | TMDS时钟屏蔽 |
| 12 | TMDS时钟- |
| 13 | 中电 |
| 14 | HEC数据- |
| 15 | SCL(DDC串行时钟) |
| 16 | SDA(DDC串行数据线) |
| 17 | DDC/CEC/HEC地面 |
| 18 | +5V电源(最大50mA) |
| 19 | 热插拔检测(1.3)/HEC数据+(1.4) |
支持 Blu-ray 及全高清 1080@60,是最早的 HDMI 版本,于2002 年 12 月推出,最大特点是整合了视频和音频传输。HDMI 1.0 最高频宽达到 4.95 Gbps,当中 3.96 Gbps 用作传输视频流,可支持 1080@60解析度,音频方面支持 8 声道的 LPCM 24bit / 192kHz,使用HDMI Type-A接口
新增 DVD-Audio,于2004 年 5 月推出,可储存 16bit / 44.1kHz 至 24bi t/ 192kHz 的 PCM 音乐
支持 SACD,于2005 年 8 月推出,新增了对 1-bit audio、也就是 SACD 音频串流的支持,最多可支持 8 个声道
兼容 CEC 多器材操控,HDMI 1.2 的小改版,在同年 12 月推出
2006 年 6 月推出,频宽增至 10.2 Gbps、支持 Deep Color 及高清音效串流,可以支持 30bit、36bit 及 48bit 的 xvYCC、sRGB 或者 YCbCr 的 Deep Color 技术。此外亦支持了 Dolby TrueHD 及 DTS-HD MA 高清音效的串流。推出Type C(mini HDMI)接口
支持 4K@30、3D 及 ARC,于2009 年 5 月推出,支持 4K 解析,仅限于 4096 × 2160@24、3840 × 2160@24/25/30。HDMI 1.4 也支持了 1080@24 的 3D 影像。音频方面新增了相当实用的 ARC功能,让电视音频可以经由 HDMI 回传到功放机再输出。也新增了 100Mbps 的网络传输功能,通过 HDMI 可以分享互联网连接。推出Type D(micro HDMI)接口
新增 3D 功能的小改版
真 4K 版本、频宽增至 18 Gbps,于 2013 年 9 月推出,又被称为 HDMI UHD,兼容 Rec.2020 色深。现时比较多的都是采用这个 HDMI 版本
加入了 HDR 的支持,于2015 年 4 月推出
新增 Hybrid Log-Gamma 广播 HDR 格式
支持 8K@60Hz、4K@120Hz 视频、Dynamic HDR(动态HDR),于2017 年 1 月推出的最新 HDMI 版本,频宽大幅提升至 48Gbps,可以支持高达 7680 × 4320@60Hz的影像,或者 4K@120Hz 的更高帧率影像。HDMI 2.1 支持新的 eARC 技术,兼容所有支持HDMI 2.0 的设备,HDMI2.1版支持动态HDR以及适应性刷新率技术,采用更环保的防电磁干扰技术,支持最大10K分辨率
类classAprivatedeffooputs:fooendpublicdefbarputs:barendprivatedefzimputs:zimendprotecteddefdibputs:dibendendA的实例a=A.new测试a.foorescueputs:faila.barrescueputs:faila.zimrescueputs:faila.dibrescueputs:faila.gazrescueputs:fail测试输出failbarfailfailfail.发送测试[:foo,:bar,:zim,:dib,:gaz].each{|m|a.send(m)resc
我有一个模型:classItem项目有一个属性“商店”基于存储的值,我希望Item对象对特定方法具有不同的行为。Rails中是否有针对此的通用设计模式?如果方法中没有大的if-else语句,这是如何干净利落地完成的? 最佳答案 通常通过Single-TableInheritance. 关于ruby-on-rails-Rails-子类化模型的设计模式是什么?,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.co
我正在使用的第三方API的文档状态:"[O]urAPIonlyacceptspaddedBase64encodedstrings."什么是“填充的Base64编码字符串”以及如何在Ruby中生成它们。下面的代码是我第一次尝试创建转换为Base64的JSON格式数据。xa=Base64.encode64(a.to_json) 最佳答案 他们说的padding其实就是Base64本身的一部分。它是末尾的“=”和“==”。Base64将3个字节的数据包编码为4个编码字符。所以如果你的输入数据有长度n和n%3=1=>"=="末尾用于填充n%
我主要使用Ruby来执行此操作,但到目前为止我的攻击计划如下:使用gemsrdf、rdf-rdfa和rdf-microdata或mida来解析给定任何URI的数据。我认为最好映射到像schema.org这样的统一模式,例如使用这个yaml文件,它试图描述数据词汇表和opengraph到schema.org之间的转换:#SchemaXtoschema.orgconversion#data-vocabularyDV:name:namestreet-address:streetAddressregion:addressRegionlocality:addressLocalityphoto:i
为什么4.1%2返回0.0999999999999996?但是4.2%2==0.2。 最佳答案 参见此处:WhatEveryProgrammerShouldKnowAboutFloating-PointArithmetic实数是无限的。计算机使用的位数有限(今天是32位、64位)。因此计算机进行的浮点运算不能代表所有的实数。0.1是这些数字之一。请注意,这不是与Ruby相关的问题,而是与所有编程语言相关的问题,因为它来自计算机表示实数的方式。 关于ruby-为什么4.1%2使用Ruby返
它不等于主线程的binding,这个toplevel作用域是什么?此作用域与主线程中的binding有何不同?>ruby-e'putsTOPLEVEL_BINDING===binding'false 最佳答案 事实是,TOPLEVEL_BINDING始终引用Binding的预定义全局实例,而Kernel#binding创建的新实例>Binding每次封装当前执行上下文。在顶层,它们都包含相同的绑定(bind),但它们不是同一个对象,您无法使用==或===测试它们的绑定(bind)相等性。putsTOPLEVEL_BINDINGput
我可以得到Infinity和NaNn=9.0/0#=>Infinityn.class#=>Floatm=0/0.0#=>NaNm.class#=>Float但是当我想直接访问Infinity或NaN时:Infinity#=>uninitializedconstantInfinity(NameError)NaN#=>uninitializedconstantNaN(NameError)什么是Infinity和NaN?它们是对象、关键字还是其他东西? 最佳答案 您看到打印为Infinity和NaN的只是Float类的两个特殊实例的字符串
如果您尝试在Ruby中的nil对象上调用方法,则会出现NoMethodError异常并显示消息:"undefinedmethod‘...’fornil:NilClass"然而,有一个tryRails中的方法,如果它被发送到一个nil对象,它只返回nil:require'rubygems'require'active_support/all'nil.try(:nonexisting_method)#noNoMethodErrorexceptionanymore那么try如何在内部工作以防止该异常? 最佳答案 像Ruby中的所有其他对象
关闭。这个问题需要detailsorclarity.它目前不接受答案。想改进这个问题吗?通过editingthispost添加细节并澄清问题.关闭8年前。Improvethisquestion为什么SecureRandom.uuid创建一个唯一的字符串?SecureRandom.uuid#=>"35cb4e30-54e1-49f9-b5ce-4134799eb2c0"SecureRandom.uuid方法创建的字符串从不重复?
我刚刚被困在这个问题上一段时间了。以这个基地为例:moduleTopclassTestendmoduleFooendend稍后,我可以通过这样做在Foo中定义扩展Test的类:moduleTopmoduleFooclassSomeTest但是,如果我尝试通过使用::指定模块来最小化缩进:moduleTop::FooclassFailure这失败了:NameError:uninitializedconstantTop::Foo::Test这是一个错误,还是仅仅是Ruby解析变量名的方式的逻辑结果? 最佳答案 Isthisabug,or