发布时间:2023-05-30 19:00
常见的SDI视频格式主要包括SD-SDI
、HD-SDI
、3G-SDI
三种,其比特率依次增加,也对应着不同分辨率和刷新率的视频。
频率的计算公式为:
频 率 = 行 周 期 数 × 场 周 期 数 × 刷 新 率 频率 = 行周期数 \times 场周期数 \times 刷新率 频率=行周期数×场周期数×刷新率
速率的计算公式为:
速 率 = 频 率 × 位 宽 速率 = 频率\times位宽 速率=频率×位宽
以常见的1080P、30fps的视频的时序图为例,主要由三个信号组成H
、V
、DE
。其有效像素的分辨率为1920x1080
,算上消隐期,其像素分辨率为2200x1125
,为HD-SDI
格式,其频率和速率的计算公式为:
频 率 = 2200 × 1125 × 30 = 74.25 M H z 频率 = 2200 \times 1125 \times 30 = 74.25MHz 频率=2200×1125×30=74.25MHz
速 率 = 74.25 × 20 = 1.485 G b i t / s 速率 = 74.25\times20 = 1.485Gbit/s 速率=74.25×20=1.485Gbit/s
常用视频格式对应的速率如下:
SDI影像标准 | 名称 | 速率 | 格式 |
---|---|---|---|
SMPTE 259M | SD-SDI | 270 Mbit/s, 360 Mbit/s,143 Mbit/s, 177 Mbit/s | 480i, 576 |
SMPTE 292M | HD-SDI | 1.485 Gbit/s, and 1.485/1.001 Gbit/s | 720p, 1080i |
SMPTE 424M | 3G-SDI | 2.970 Gbit/s, and 2.970/1.001 Gbit/s | 1080p60 |
所以也就对应着一般HD-SDI
格式的时钟频率,若此时视频帧率为60fps,对应的波特率就是148.5Mhz。
一般常用的视频流格式为20-bits SDR Mode
,数据格式为YUV
格式(YUV格式参考),其示意图如下:
从图中可以看出,数据流的位宽为20bits
,10-19位为Y分量,0-9位为UV分量,UV交替传输,每个时钟周期传输20bits数据,包括一个Y
和一个U/V
,又因为一般操作、显示位数为8bit
,也就是0~255
,所以分别取Y、U/V分量的高8
位。
又根据SDI的编码格式,在有效像素前4个像素和后4个像素要传输固定格式的数据,3FF000000XYZ,其中XYZ在有效期和消隐期,有效像素前和有效像素后都是不同的。其中SAV和EAV是在有效像素前/后的XYZ代表,即Start和End。
使用示波器抓取到的EAV部分视频数据。
XYZ关键字在SAV和EAV以及不同行数的固定格式如下图所示,经过实际操作发现,消隐期的SAV为2AC即可,有效期的SAV为200即可,同理消隐期的EAV为2DB即可,有效期的EAV为274即可。
综上所述可以得到视频流数据的示意图为:
其中绿色部分是消隐期内的XYZ,洋红色为有效像素期内的XYZ,中间为视频流的有效像素,其余部分为无效信息。
若将消隐期内以及有效像素内每行像素取出来,放大可以得到如下图所示的示意图:
对照以上示意图即可对SDI信号进行编解码。
HashMap设计原理与实现(下篇)200行带你写自己的HashMap!!!
麒麟操作系统 (kylinos) 从入门到精通 - 系统设置 - 第二十二篇 关闭系统自动更新解决关机或重启被阻止的问题
Spring AOP面向切面编程之自定义日志注解@OperateLog
第十二届 2021年1月 蓝桥杯青少年组省赛C++组 第1题--第3题(scratch实现)
typescript在node.js下使用别名(paths)无效的问题详解
湘潭大学 计算机学院程诗婕,传播校园之声,讲好湘大故事 ——2019年度湘潭大学“十佳学生记者”和“优秀学生记者”颁奖典礼圆满落幕...