視頻是由一幀幀的圖像組成的
常用關(guān)鍵字解釋
- RGB 三原色鼎俘,表示紅綠藍款青;
- BGR 顛倒的三原色,有的圖像格式使用的是BGR表示的脚猾,如BMP葱峡;
- PPI 表示每英寸的像素的個數(shù),像素點越多龙助,顯示越細膩砰奕,當PPI > 300的時候就達到了視網(wǎng)膜級別,人眼就分辨不出像素點了提鸟;
- DPI 表示每英寸的點數(shù)個數(shù)军援,每個點又包含了多個像素;
1. 圖像
- 圖像是由很多個像素組成的称勋;
- 每個像素由RGB表示的胸哥;
- 圖像的分辨率是指,該圖像是由多少個像素點組成的赡鲜;
- 像素的位深通常是RGB每個顏色占8位空厌,也就是24位表示一個像素。也有RGBA32位表示银酬,最后的A是透明度嘲更;
2. 屏幕顯示器
- 屏幕是顯示設(shè)備,將圖像數(shù)據(jù)通過驅(qū)動程序讓屏幕顯示圖像
3. 碼流
- 分辨率
用水平軸上的像素個數(shù) 乘以 垂直軸上的像素個數(shù)表示
常見的寬高比是16:9揩瞪,以前的老電視機都是4:3赋朦;
常見的分辨率有:360p/720p/1k/2k 如:720p = 1280pixels * 720pixels;
分辨率越高,顯示的就越清楚 - 幀率
每秒鐘采集或播放的圖像個數(shù)
動畫的幀率是25幀,常用的幀率有15 30 60北发,分辨率越高播放看起來就會越絲滑纹因; - 1秒鐘的碼流大小 = 分辨率(寬 * 高) * RGB(3字節(jié)) * 幀率;
4. YUV
- 它也是圖像的一種格式琳拨,手機常用的是RGB格式瞭恰,電視的圖像是YUV格式;
- 為了兼容以前的格式狱庇,在采集和編碼的時候還是使用YUV惊畏,而且YUV存儲的數(shù)據(jù)要比RGB小一半。在顯示到屏幕上的時候再轉(zhuǎn)成RGB格式密任;
- 是電視系統(tǒng)發(fā)展而來颜启,Y表示明亮度,在黑白電視上就可以進行播放浪讳,UV是描述影像的色彩和飽和度缰盏,
- U分量也叫Cb分量,藍色部分偏多淹遵;
- V分量Cr分量口猜,紅色部分偏多;
- RGB轉(zhuǎn)YUV的公式:
Y = 0.299 * R + 0.587 * G + 0.114 * B;
U = (-0.147) * R - 0.289 * G + 0.436 * B;
V = 0.615 * R - 0.515 * G - 0.100 * B; - YUV轉(zhuǎn)RGB的公式:
R = Y + 1.140 * V
G = Y - 0.394 * U - 0.581 * V
B = Y + 2.032 * U -
主要的采樣格式有:YUV4:2:0透揣、YUV4:2:2 济炎、YUV4:4:4。最常用的是第一個辐真;
YUV4:4:4的分布如下须尚,每一張圖像的YUV大小 = 分辨率的寬 * 分辨率的高 * 3B,每一行的YUV所占用的比例就是4:4:4侍咱;
4:4:4
YUV4:2:2的分布如下耐床,每一張圖像的YUV大小 = 分辨率的寬 * 分辨率的高 * 2B,每一行YUV的比例就是4:2:2放坏;
4:2:2
YUV4:2:0的分布如下咙咽,每一張圖像的YUV大小 = 分辨率的寬 * 分辨率的高 * 1.5B,每一行YUV的比例就是4:2:0淤年,它是每膈一行,UV分量交替缺失蜡豹,如第一行YUV的比例是4:2:0麸粮,下一行就是4:0:2,再下一行就是4:2:0镜廉,依此往復(fù)弄诲;
4:2:0
YUV更多參考資料
5. YUV4:2:0的存儲格式
-
格式1:分層存儲,最常用格式,將Y層和UV層分開齐遵,方便兼容黑白電視寂玲。下圖的對應(yīng)關(guān)系就是:Y1Y2U1、Y3Y4U2梗摇、Y5Y6U3拓哟、Y7Y8V1、Y9Y10V2伶授、Y11Y12V3断序;
存儲格式 - 格式2:plannar平面存儲
I420 : YYYYYYYY UU VV => YUV420p
YU12: YYYYYYYY VV UU => YUV420p,iOS平臺使用此方式存儲 - 格式3:打包存儲
NV12:YYYYYYYY UVUV => YUV420sp
NV21:YYYYYYYY VUVU => YUV420sp糜烹,安卓平臺常用