凡是作模拟信号采集的,不多不涉及BT.656标准的,由于常见的模拟视频信号采集芯片都支持输出BT.656的数字信号,那么,BT.656究竟是何种格式呢?
本文将主要介绍标准的 8bit BT656(4:2:2)YCbCr SDTV(标清) 数字视频信号格式,主要针对刚刚入门模拟视频采集的初学者入门之用。微信
1.帧的概念(Frame)
一个视频序列是由N个帧组成的,采集图像的时候通常有2种扫描方式,一种是逐行扫描(progressive scanning),一种是隔行扫描(interlaced scanning)。对于隔行扫描,每一帧通常有2个场(field),一个叫顶场(top field),一个叫底场(bottom field)。假设一帧图像是720行,那么,顶场就包含其中全部的偶数行,而底场则包含其中全部的奇数行。ide
2.场的概念(field)
注意,上面提到顶场和底场,用的是“包含”二字,而不是说彻底由后者组成,由于在BT.656标准中,一个场是由三个部分组成的:url
场 = 垂直消隐顶场(FirstVertical Blanking) + 有效数据行(ActiveVideo) + 垂直消隐底场(Second Vertical Blanking)spa
对于顶场,有效数据行就是一帧图像的全部偶数行,而底场,有效数据行就是一帧图像的全部奇数行。顶场和底场的空白行的个数也有所不一样,那么,对于一个标准的 8bit BT656(4:2:2)SDTV(标清)的视频而言,对于一帧图像,其格式定义以下:.net
对于PAL制式,每一帧有625行,其中,顶场有效数据288行,底场有效数据也是288行,其他行即为垂直消隐信号。为何是288行?由于PAL制式的SDTV或者D1的分辨率为 720*576,即一帧有576行,故一场为288行。顶场有效数据的起始行为第23行,底场有效数据的起始行为第335行。3d
3。行的概念(Lines)
下面说明每一行的组成,一行是由4个部分组成:orm
行 = 结束码(EAV) + 水平消隐(Horizontal Vertical Blanking) + 起始码(SAV) + 有效数据(Active Video)视频
典型的一行数据组成如图1所示:blog
图1 SD-SDI行数据格式
ip
起始码(SAV)和结束码(EAV),它是标志着一行的开始结束的重要标记,也包含了其余的一些重要的信息,后面将会讲到。
为何一行中的有效数据是 1440 字节?由于PAL制式的SDTV或者D1的分辨率为 720*576,即一行有720个有效点,因为采集的是彩色图像,那么一行就是由亮度信息(Y)和色差信息(CbCr)组成的,因为是 YCbCr422格式,故一行中有720列Y,720列CbCr,这样,一行的有效字节数就天然为 720 × 2 = 1440 字节了。SDI-SD的数据都是422格式的,如图2所示。
图2 ITU-R BT656 422数字视频流
其数据流如图3所示,有两个定时基准信号,一个在每一个视频数据块的开始(Start ofActiveVideo,SAV),另外一个在每一个视频数据块的结束(End of Active Video,EAV);每一个定时基准信号由4个字的序列组成,格式以下:FF 00 00 XY(16进制)头三个是固定前缀,第4个字包含定义第二场标识、场消隐状态和行消隐状态的信息。
图3 SD-SDI数据流格式
图4 SD-SDI时序图
每一个字节数据的含义如图5所示,请注意,视频数据有一个由三个字节构成的前导码(8bit视频是0xFF,0x00,0x00,而10bit视频则是0x3FF, 0x000, 0x000),后面跟随着XY状态字,这个字除了包含F (场), V (垂直消隐)和 H (水平消隐)位以外,还包含了4个保护位,以实现单位错误的检测和纠正。请注意,F和V只能做为EAV序列的一部分来变化(即,从H = 0切换到H = 1)。此外,请注意,对于10bit视频来讲,增长的两位其实是最低位,而不是最高位。
图5 SD-SDI数据字节含义
Bit7 |
Bit6 |
Bit5 |
Bit4 |
Bit3-0(P3P2P1P0) |
Hex |
Description |
1 |
0 |
0 |
0 |
0000 |
0x80 |
Even,Active,SAV |
1 |
0 |
0 |
1 |
1101 |
0x9d |
Even, Active,EAV |
1 |
0 |
1 |
0 |
1011 |
0xab |
Even,Blank, SAV |
1 |
0 |
1 |
1 |
0110 |
0xb6 |
Even, Blank, EAV |
1 |
1 |
0 |
0 |
0111 |
0xc7 |
Odd, Active, SAV |
1 |
1 |
0 |
1 |
1010 |
0xda |
Odd, Active, EAV |
1 |
1 |
1 |
0 |
1100 |
0xec |
Odd, Blank, SAV |
1 |
1 |
1 |
1 |
0001 |
0xf1 |
Odd, Blank, EAV |
4.视频时序
4.1 720×576p @50Hz时序图如图6所示。
4.2 720×480p@59.94/60Hz
720×480p @59.94、60Hz时序图如图7所示。4.3 720×576i@50Hz
720×576i @50Hz时序图如图8所示。
4.4 720×480i@59.94/60Hz
720×480i @59.94/60Hz时序图如图9所示。
本文分享自微信公众号 - 瓜大三哥(xiguazai_tortoise)。
若有侵权,请联系 support@oschina.cn 删除。
本文参与“OSC源创计划”,欢迎正在阅读的你也加入,一块儿分享。