HDMI中的视频时序分析

2023-11-19

一、前言:建立层次观念

  说到时序,我们首先想到的例子是IIC、SPI、串口等接口的例子,以我们之前的理解,时序就是传输线上电平随时间变化的顺序。但是但是但是!,在HDMI这里,我们应该建立一个新的观念:即时序不一定对应到物理层:即传输线上。这是怎么回事?且看:

  因为HDMI的协议中,对传输的信息进行了编码,即TMDS编码,目的是使传输线上电平的跳变更小,从而达到减少干扰、增强传输可靠性的目的。

  说到这我们有必要了解下HDMI的整体结构,帮助我们建立一个分层的概念。我且把他分为两个:物理层和信息层。物理层即为实体的电路连接和电平的跳动;信息层则是我们需要传输的数据,对应我们熟悉的二进制编码。HDMI的物理结构如下图

       HDMI的物理连接线我们重点关注TMDS相关的线,TMDS Channel0-2为三个数据传输通道,TMDS Clock为时钟通道,每个通道使用2根连接线进行信号传输(最小化传输差分信号,Transition Minimized Differential signal),缩写即TMDS。图中的HDMI Transmitter对视频、音频、控制信号进行编码,然后在放到传输线上进行传输。

        video和audio即是我所说的信息层,在此我们主要分析视频信号的时序,可先忽略TMDS编码的细节。TMDS编码有现成的IP可以使用,有兴趣可以之后再深入了解。

二、视频信号的时序

        首先了解到,视频是由一帧一帧的画面构成的,而每一帧画面又是由像素点构成,视频信号在输出的时候是按每个像素点进行扫面,从左上角开始,当每扫描完一行时输出一个行同步信号HSYNC(horizontal sync),然后再对下一行进行扫描,当扫描完整个画面,即完成一场时输出一个场同步信号VSYNC(vertical sync)。而每个像素由RGB三种颜色构成,每个颜色有8bit的深度,即3*8bit。

        再此或许会有一个疑问,这么多信号是怎么分配到4个TMDS通道中的?答案如下图:其中CTL0-3是控制信号

我们可以再次不用理会,只需知道我们需要发送给TMDS编码器的信号是:

1.像素信息[7:0]R、[7:0]G、[7:0]B

2.行同步信号HSYNC、场同步信号VSYNC

3.像素时钟Pixel Clock

 

视频信号的时序可以用下图表示

·横轴的行同步信号HSYNC随扫描x位置的变化而变化,当HSYNC由低变高时表示一行新行的开始(旧行的结束);

·纵轴的场同步信号VSYNC随扫描y位置变化而变化,当VSYNC由低变高时表示一场新画面的开始(旧场的结束);

·一场画面的传输中并不是所有的时间都在传输图像信号;

·图像信号的传输在Hor“Active”Video和Ver“Active”Video之间的时间进行;

·其余不传输图像的时间称为“消隐时间”,但消隐时间并不代表不传输其他信号,如控制信号、音频信号;

·行的消隐时间由Hor Sync Time + H Back Porch +H Front Porch组成,场消隐时间同理;

·说来懵逼,一般常见的分辨率下各项参数如Hor Sync Time、H Back Porch等是如何计算或规定本人并没有搞懂,在HDMI的标准手册中也没看到,不过可以通过一些资源来获得这些参数:http://tinyvga.com/vga-timing

下面是黑金的资料给出的常见视频规格对应的时序参数

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

HDMI中的视频时序分析 的相关文章

  • 谈谈form-data请求格式

    最近一直都比较忙 坚持月月更新博客的计划不得中止了 今天好不容易抽出点时间来说说最近项目中遇到的一个问题 有关request post请求格式中的multipart form data格式 引言 最近在项目过程中遇到一个问题 相信大部分人都
  • 大带宽、高速率接口对比---USB、PCIE、SATA、HDMI和以太网等接口

    一 PCIE接口 二 USB接口 三 SATA接口 SATA 编码方式 原始频宽 传输速率 有效速率 排线最长长度 SATA1 0 SATA2 0 8bit 10bit 3Gb s 300MB s 275MB s 1M SATA3 0 8b
  • 利用FFmpeg进行视频文件进行分割

    利用FFMPEG命令进行文件分割 ffmpeg ss 00 00 00 i input mp4 c copy t 60 output mp4 ss 表示视频分割的起始时间 t 表示分割时长 同时也可以用 00 01 00表示 注意 ss 要
  • 【GB28181】PJSIP库(六)使用视频:获取图像、本地预览、发送接收视频等

    目录 郭老二博文之 图像视频汇总 1 简介 PJSUA2 的媒体对象均派生自抽象基类pj Media 媒体对象是指能够生成或读取媒体的对象 类pj VideoMedia派生自pj Media 代表视频媒体 PJSUA2 支持多种类型的视频媒
  • 硬件设计31之LVDS与TMDS信号

    1 LVDS基础 原理 图文讲解 LVDS是一种低摆幅的差分信号技术 它使得信号能在差分PCB 线对或平衡电缆上以几百Mbps的速率传输 其低压幅和低电流驱动输出实现了低噪声和低功耗 IEEE 在两个标准中对LVDS 信号进行了定义 ANS
  • linux非root用户从源码编译安装ffmpeg及添加h264(AVC)和265(HEVC)支持

    目录 前言 安装步骤 yasm nasm x264 x265 ffmpeg 遇到的问题及解决办法 前言 当linux用户没有root权限时 可通过源码编译安装ffmpeg等工具 通过手动设置安装路径实现安装到用户指定目录下 然而ffmpeg
  • HDMI与TMDS接口

    目录 0 Xilinx的HDMI 1 4 2 0 Transmitter Subsystem Product Guide 1 HDMI是新一代的多媒体接口标准 2 HDMI向下兼容DVI 3 TMDS 最小化传输差分信号 4 TMDS编码算
  • Android 获取视频(本地和网络)缩略图的解决方案

    在Android 开发视频的时候 通常都需要显示视频列表 而视频列表通常都有一张视频缩略图 那么它是怎么获取的呢 关于网络视频的缩略图的实现方案主要有两种 1 后台返回视频时顺便连缩略图的路径都返回给你了 这样前端压力轻松 2 后台是返回视
  • 优酷网视频存储架构

    优酷网视频存储架构 http blog csdn net starxu85 article details 5673029 挖掘优酷网的架构是怎样的 http datacenter watchstor com infra 135196 ht
  • DP和HDMI区别

    转自 https www toutiao com i6877677362054595080 在目前市面上显示器接口中 VGA和DVI已经逐渐退出了历史舞台 Type C还算是小众 而DP DisplayPort 与HDMI则成为了主流产品的
  • OpenCV学习记录之视频中的火焰检测识别

    主要完成两个视频中火焰的检测 主要结合RGB判据和HIS判据 设定合适的阈值条件 检测出火焰对应像素的区域 将原图二值化 经过中值滤波以及数学形态学的膨胀运算等图像处理 消除一些噪声及离散点 连通一些遗漏的区域 基于OpenCV的开源库 在
  • 同义句转换在线翻译器的软件

    英文翻译器在线转换有谷歌翻译 必应翻译 百度翻译 彩云小译 欧路词典 一 谷歌翻译 谷歌翻译作为入门级别的翻译软件 基本上家喻户晓 谷歌浏览器有全网页翻译的内置引擎 翻译上不论是汉译英还是英译汉 基本能符合科研需要 同义句转换在线翻译器的软
  • HDMI接口之HPD(热拔插)

    HDMI Pin 19 DVI Pin16 的功能是热插拔检测 HPD 这个信号将作为HDMI 源端 Source 是否发起EDID读 是否开始发送TMDS信号的依据 HPD是从HDMI显示器端 Sink 生成并输出送往HDMI 源端 So
  • 刚拿到esp32-cam想测试该怎么办?看这篇文章就可以了

    无意间对esp32 cam感兴趣 就去某pdd买了一个模块玩玩 组装摄像头的时候不要硬插进去 有个活动卡槽可以扣开 如下图 接下来去arduino官网或者中文社区下载 arduino官网 https www arduino cc en so
  • 疫情期间谁干谁赚钱的三个小副业,普通人也能干,基本不用你投资

    一切生意的本质 都是低买高卖 只是有时 这个利差来自货物 有时利差来自服务而已 疫情过后 三个生意千万不要干 谁干谁倒闭 天王老子救不了你 还有三个生意 谁干谁发财 一年赚个三五十万 搞点生活费一点毛病都没有 我先说不能碰的行业啊 第一个服
  • 时间序列分析和预测(含实例及代码)

    导论 研究时间序列主要目的 进行预测 根据已有的时间序列数据预测未来的变化 时间序列预测关键 确定已有的时间序列的变化模式 并假定这种模式会延续到未来 时间序列预测法的基本特点 假设事物发展趋势会延伸到未来 预测所依据的数据具有不规则性 不
  • [从零开始学DeepFaceLab-7]: 使用-命令行八大操作步骤-第4步:从目标图片中提取所需图片

    目录 总体流程 步骤4 从源片中提取脸部图片 4 1 命令 4 data src faceset extract MANUAL bat 不推荐使用
  • 浏览器访问.m3u8文件

    浏览器播放m3u8文件
  • 「 标准 」NTSC、PAL、SECAM 三大制式简介

    NTSC National Televison System Committee 制式 NTSC 电视标准 每秒 29 97 帧 简化为 30 帧 电视扫描线为 525 线 偶场在前 奇场在后 标准的数字化 NTSC 电视标准分辨率为720
  • [从零开始学DeepFaceLab-5]: 使用-命令行八大操作步骤-第2步:从源视频中提取图片

    目录 总体流程 步骤2 从源视频中提取图片 2 0 源视频文件和大小的选择 2 1 命令 2 extract images from video data src bat 必选

随机推荐

  • 【网络是怎样连接的】—— 向 DNS 服务器查询 IP 地址

    IP 1 基本知识 互联网和公司内部的局域网都是基于 TCP IP 的思路来设计的 由一些小的子网 通过路由器连接起来组成一个大的网络 这里的子网可以理解为用集线器连接起来的几台计算机 在网络中 所有的设备都会被分配一个地址 这个地址就相当
  • 设计模式学习笔记(一)之单例模式

    单例模式 作用 保证一个类只有一个实例 并且提供访问这个实例的全局访问点 应用场景有 数据库连接池 spring中 Bean默认是单例 Servlet中 每一个Servlet是单例 配置文件的类 一般是单例 优点 单例只生成一个实例 减少系
  • UVM实战——01基本概念_2 什么是UVM?

    什么是UVM 1 什么是UVM 2 UVM的特点 3 UVM提供的资源 3 1 编程指导 3 1 1 理念 3 1 2 功能 3 2 验证组件 3 3 验证激励 3 4 通信机制 3 5 宏 1 什么是UVM UVM Universal V
  • 在iOS9上调用支付宝不回调的问题解决,以及支付宝嵌入的流程梳理

    又有一段时间没有经营自己的博客了 这一段有点忙啊 在最近的一个项目中再一次用到了第三方支付 对 就是支付宝 之前的项目其实已经实现过相应的功能 那是还是在ios8的系统下 这不在iOS9下就遇到了一个问题 不回调啊 反正要梳理支付宝的嵌入
  • 搭建树莓派Pico交叉编译环境和工具链(arm-none-eabi-gcc)时可能会遇到的错误以及解决方案

    本文是一个类似手册的文章 用来记录可能遇到的错误 你可以通过侧栏选择遇到的错误来查看详细信息 No install step for ELF2UF2Build 遇到这种错误有两种原因 安装了版本不对或者不完整的arm none eabi g
  • 继电器、并联的二极管和驱动三极管选型实战演练

    继电器选型原则 继电器的选用原则参见下表 在表中 必须确定 栏中有 号的项目被确定之后 就可选定一款继电器 如果有进一步的要求 需要进一步考虑 参考 栏中有 号的相应项目 下面对表格中的所有参数进行详细说明 触点 1触点负载 确定继电器所能
  • 一篇文章了解爬虫技术现状

    本文全面的分析了爬虫的原理 技术现状 以及目前仍面临的问题 如果你没接触过爬虫 本文很适合你 如果你是一名资深的虫师 那么文末的彩蛋你可能感兴趣 需求 万维网上有着无数的网页 包含着海量的信息 无孔不入 森罗万象 但很多时候 无论出于数据分
  • list【2】模拟实现(含迭代器实现超详解哦)

    模拟实现list 引言 实现概述 list迭代器实现 默认成员函数 operator 与 operator gt operator 与 operator operator 与 operator 迭代器实现概览 list主要接口实现 默认成员
  • pnpm修改设置下载包的存储路径

    要修改 pnpm 存储依赖的路径 可以使用 pnpm 的 store 配置选项 通过更改 store 配置 可以指定 pnpm 存储依赖的目录位置 这在希望将依赖存储在不同磁盘分区 不同的硬盘驱动器或其他自定义位置时很有用 步骤 1 打开命
  • 9.2 流程分析

    介绍了系统文件加密和文件解密的流程 那么我们本例主要涉及两个核心函数个函数Encrypt File和Decrypt File 使用Encrypt File函数完成文件加密功能 Decrypt File函数完成文件解密功能 下面介绍这两个函数
  • 跟着官网编写一个LLVMPass

    官网地址 https llvm org docs WritingAnLLVMPass html introduction what is a pass 一 创建文件 1 项目结构为 llvm project lib Transforms H
  • TscanCode C/C++静态分析开源分析工具安装与使用

    TscanCode是腾讯静态分析团队开发的一款开源免费的C C 静态分析工具 由于其比较简单实用 准确率较高 并且扫描C C 代码不需要进行编译 所以个人觉得对C C 项目开发挺有帮助的 就简单介绍一下该工具的安装与使用 1 Tscanco
  • 文件包含漏洞-日志注入

    文件目录 一 文件包含漏洞 1 文件包含概述 2 文件包含类型 二 文件包含 日志注入 1 日志注入概述 2 环境准备 3 配置环境 4 模拟网站环境 三 日志注入流程 一 文件包含漏洞 1 文件包含概述 文件包含漏洞是 Web 应用程序中
  • springboot的优化

    在SpringBoot的Web项目中 默认采用的是内置Tomcat 当然也可以配置支持内置的jetty 内置有什么好处呢 在SpringBoot的Web项目中 默认采用的是内置Tomcat 当然也可以配置支持内置的jetty 内置有什么好处
  • 互联网JAVA面试常问问题(三)

    一 volatile原理和使用场景 volatile 原理 volatile变量进行写操作时 JVM会向处理器发送一条Lock前缀的指令 将这个变量所在缓存行的数据写会到系统内存 Lock前缀指令实际上相当于一个内存屏障 也成内存栅栏 它确
  • LED用DMX512协议整个系统怎么连接?

    提问1 EIA485规范只支持 雏菊链 或每段上最多以32个 单元负载 所构成的串行网络 DMX512不是可以支持512个通道吗 那是不是说 超过32个的情况下需要使用中继 提问2 控制器 接收端1 接收端2 接收端n 电阻 GND 这样的
  • BIO、NIO、AIO理解

    一 到底什么是BIO NIO AIO 这些可以理解为是Java语言对操作系统的各种IO模型的封装 程序员在使用这些API的时候 不需要关系操作系统层面的知识 也不需要根据不同操作系统编写不同的代码 只需要使用Java的API就可以了 二 B
  • Eclipse搭建stm32+jlink开发环境全攻略(进阶篇一)

    Eclipse搭建stm32 jlink开发环境全攻略 进阶篇 一 本篇开始讲解一些比较实用的东西 在前面的两章中 我们讲解了eclipse开发stm32的大部分问题 然而 在实际使用过程中 我们仍然会遇到一些不太理想的地方 比如 ecli
  • Leetcode力扣题解 - 30.串联所有单词的子串

    地址 30 串联所有单词的子串 力扣 LeetCode 一 思路 本题关键点是 1 所有关键词长度一致 2 匹配的是所有关键词连接起来的 大体思路 那么我们就可以从字符串头开始 每次只匹配关键词总长度个字符 如果匹配成功 在返回的数组中保存
  • HDMI中的视频时序分析

    一 前言 建立层次观念 说到时序 我们首先想到的例子是IIC SPI 串口等接口的例子 以我们之前的理解 时序就是传输线上电平随时间变化的顺序 但是但是但是 在HDMI这里 我们应该建立一个新的观念 即时序不一定对应到物理层 即传输线上 这