我们在采集HDMI口的数据时,首先肯定要计算它的速率是多少。怎么计算这个速率,本文要跟大家分享的便是这个事情。

HDMI口有三个TM-DS(Time Minimized Differential Signal 最小化传输差分信号)数据通道,我们的速率计算对象就是这三个通道。
这三个口在传输数据时是有时钟同步的,所以HDMI口还有一个时钟信号通道,在每一个时针周期内,一个>真美妙S通道传输10bit,其中8bit为视频信息,2bit为控制信号。
每一幅图像称为一帧,一帧图像是由若干个像素点组成的,每个像素点由3个8bit(24位)或3个16bit(即两个8bit,共48位)决定。
每幅图像有多少个像素点组成,由分辨率决定。
根据以上内容,我们便可计算HDMI口的传输速率了,举例计算如下。
在这里我为大家计算HDMI-1.3中的最小和最大传输速率。显然最小,最大传输速率与分辨率有关,HDMI的分辨率规格如下表所示:

例1计算HDMI口在60Hz刷新率下的最小传输速率
解:从表中我们可以看出最小分辨率是1440*480,所以每一帧图像有1440*480=691200个像素,另外,HDMI的图像还需要预留百分之20的空白像素,所以直实的一帧图像的像素是:691200*1.2=829440个像素
我们每个像素用3个8bit表示,则总共需要的bit数是829440*3*(8+2)=24883200个bit(注意每8bit要加2个控制bit),每秒刷新60次,即60Hz,那么每秒传输的位数是:24883200*60=1.4930e+009,化成以Gbps为单位,则速率为:1.4930Gbps,这是三路的总速率,所以每路的速率为1.4930/3=0.4977Gbps
所以结论为HDMI口在60Hz刷新率下时,每路TM-DS的最小速率为0.4977Gbps,总的最小总传输速率为:1.4930Gbps
例2计算HDMI口在60Hz刷新率下的最大传输速率。
解:从表中我们可以看出最大分辨率是1920*1080,所以每一帧图像有1920*1080=2073600个像素,另外,HDMI的图像还需要预留百分之20的空白像素,所以直实的一帧图像的像素是:2073600*1.2=2488320个像素
我们每个像素用3个16bit表示,则总共需要的bit数是2488320*3*(16+4)=149299200个bit(注意每8bit要加2个控制bit),每秒刷新60次,即60Hz,那么每秒传输的位数是:149299200*60=8.9580e+009,化成以Gbps为单位,则总速率为:8.958Gbps,每路的速率为:8.958/3= 2.9860Gbps

HDMI速率计算的更多相关文章

  1. 自学Aruba1.3-WLAN一些基本常识802.11n速率计算方式、802.11n及802.11AC速率表

    点击返回:自学Aruba之路 自学Aruba1.3-WLAN一些基本常识802.11n速率计算 1. 802.11n速率计算方式1.1 802.11n使用的主要技术 802.11n采用MIMO多天线技 ...

  2. 自学Aruba1.2-WLAN一些基本常识802.11n速率计算方式、802.11n及802.11AC速率表

    点击返回:自学Aruba之路 自学Aruba1.2-WLAN一些基本常识802.11n速率计算方式.802.11n及802.11AC速率表 1. 802.11n速率计算方式 以802.11g的54M最 ...

  3. 使用VelocityTracker来完成MotionEvent移动速率计算

    先看效果图 关键代码(此处记录单点): switch (event.getAction()){ case MotionEvent.ACTION_DOWN: if (veloctiy==null) { ...

  4. 80211n标准建链速率计算

    转:https://wenku.baidu.com/view/93f99dd3ad51f01dc281f1af.html 转:http://www.docin.com/p-1851128644.htm ...

  5. 计算G711语音的打包长度和RTP里timestamp(时间戳)的增长量

    转自:http://blog.csdn.net/xujianglun/article/details/48342367 如何计算G711语音等的打包长度和RTP里timestamp的增长量 一般对于不 ...

  6. (七)计算G711语音的打包长度和RTP里timestamp的增长量

    如何计算G711语音等的打包长度和RTP里timestamp的增长量 一般对于不同的语音有不同的打包周期,而不同的打包周期又对应着不同的timestamp in RTP 那么是如何计算的呢,我们通过G ...

  7. 自动调整速率的Actor设计模式

    问题背景 与数据库或者存储系统交互是所有应用软件都必不可少的功能之一,akka开发的系统也不例外.但akka特殊的地方在于,会尽可能的将所有的功能都设计成异步的,以避免Actor阻塞,然而无法避免IO ...

  8. 多层神经网络与C++实现

    BP理论部分参考:http://blog.csdn.net/itplus/article/details/11022243 参考http://www.cnblogs.com/ronny/p/ann_0 ...

  9. Android SnapHelper

    转载请注明出处:http://blog.csdn.net/crazy1235/article/details/53386286 SnapHelper 是 Android Support Library ...

随机推荐

  1. failed to allocate for range 0: no IP addresses available in range set: 172.20.xx.1-172.20.xx.254

    今天遇到一个机器上的Pod 在创建以后一直处于Init 0/1的状态,进到这个节点查看其kubelet的状态,发现果然有问题 systemctl status kubelet .go:] Contai ...

  2. 利用Python访问Mysql数据库

    首先要明确一点,我们在Python中需要通过第三方库才能访问Mysql. 有这样几种方式:Mysql-python(即MySQLdb).pymysql.mysql-connector.Mysql-py ...

  3. 背包问题--golang的入门解

    . 定义一种 表示静态属性的 关键字 / 修饰符 2. 作用共用.共享 能有此作用的原因分析: Java中,任何变量 / 代码存储时,都是 在编译时 由系统自动分配内存在静态变量编译后,所分配的内存会 ...

  4. mysql经验总结

    1. 连接mysql遇到 Can't connect to local MySQL server through socket '/tmp/mysql.sock' (2),mysql没有正常启动 $ ...

  5. Failed to apply plugin [id 'com.gradle.build-scan']

    把spring源码clone下来之后,使用gradle编译不通过,异常日志如下: FAILURE: Build failed with an exception. * Where: Build fil ...

  6. Spring Boot 学习17--改变JDK编译版本

    Spring Boot在编译的时候,是有默认JDK版本的,如果我们期望使用我们要的JDK版本的话,那么要怎么配置呢? 这个只需要修改pom.xml文件的<build> -- <plu ...

  7. CSS-滤镜 -webkit-filter

    css滤镜属性,可以在元素呈现之前,为元素的渲染提供一些效果,如模糊.颜色转移之类的.滤镜常用于调整图像.背景.边框的渲染. 语法: webkit-filter: none | blur(px) | ...

  8. vue常用指命

    1.v-text:用于更新标签包含的文本,作用和{{}}的效果一样. 2.v-html:绑定一些包含html代码的数据在视图上. 3.v-show:用来控制元素的display属性,和显示隐藏有关.v ...

  9. Java多线程中Lock的使用

    Jdk1.5以后,在java.util.concurrent.locks包下,有一组实现线程同步的接口和类,说到线程的同步,可能大家都会想到synchronized关键字, 这是java内置的关键字, ...

  10. Ext grid单元格编辑时获取获取Ext.grid.column.Column

    item2.width = 80; //item2.flex = 1; item2.align = 'center'; item2.menuDisabled = true; //禁止显示列头部右侧菜单 ...