H.264学习(一)——帧和场的概念
一、何謂場(chǎng)?
每個(gè)電視幀都是通過掃描屏幕兩次而產(chǎn)生的,第二個(gè)掃描的線條剛好填滿第一次掃描所留下的縫隙。每個(gè)掃描即稱為一個(gè)場(chǎng)。因此 25 幀/秒的電視畫面實(shí)際上為 50 場(chǎng)/秒 (若為 NTSC 則分別為 30 & 60 - 因?yàn)槲沂侵袊?guó)人,因此我采用 PAL 的數(shù)值)。
若要取得包含最大細(xì)節(jié)的幀,您需要合并兩個(gè)場(chǎng)內(nèi)的信息。截至目前為止,這些觀念都很簡(jiǎn)單,不過若考慮到動(dòng)態(tài)畫面,就不是那么容易了。因?yàn)閿z像機(jī)將依次地掃描這兩個(gè)場(chǎng),影像內(nèi)的所有文件到了第二個(gè)場(chǎng)中將移到不同于第一個(gè)場(chǎng)的位置。這將有助于電視畫面的動(dòng)作更為順暢,不過這也是場(chǎng)在編輯時(shí)所會(huì)造成的困擾。
二、計(jì)算機(jī)與電視
當(dāng)計(jì)算機(jī)在顯示器上播放視頻時(shí),它只會(huì)顯示一系列完整的幀,而不使用交錯(cuò)場(chǎng)的電視技巧。因此針對(duì)計(jì)算機(jī)顯示器所設(shè)計(jì)的視頻格式和 MPEG-1 都不使用場(chǎng)。專為這些格式設(shè)計(jì)的視頻編輯軟件就無法正確地處理場(chǎng),因此不適合產(chǎn)生用于電視的視頻。若您的影片將通過電視來播放,務(wù)必使用可處理場(chǎng)的編輯程序。
三、概述
原始視頻幀(最原始的視頻數(shù)據(jù))根據(jù)編碼的需要,以不同的方式進(jìn)行掃描產(chǎn)生兩種視頻幀:連續(xù)或隔行視頻幀,隔行視頻幀包括頂場(chǎng)和底場(chǎng),連續(xù)(遂行)掃描的視頻幀與隔行掃描視頻幀有著不同的特性和編碼特征,產(chǎn)生了所謂的幀編碼和場(chǎng)編碼。一般情況下,遂行幀進(jìn)行幀編碼,隔行幀可在幀編碼和場(chǎng)編碼間選取。
在幀編碼中,參考為幀圖像,采用幀運(yùn)動(dòng)補(bǔ)償,兩個(gè)場(chǎng)是聯(lián)合編碼,;在場(chǎng)編碼中,參考為場(chǎng)圖像,兩個(gè)場(chǎng)是分別編碼,采用場(chǎng)運(yùn)動(dòng)補(bǔ)償。
二、視頻序列幀、場(chǎng)編碼方式
1.固定幀編碼(全幀)----視頻序列的全部幀始終采用幀編碼方式。
2.固定場(chǎng)編碼(全場(chǎng))
??視頻序列中幀被分成兩個(gè)場(chǎng)獨(dú)立編碼。編碼規(guī)則:
??1.?I幀可編碼成兩個(gè)I場(chǎng)或一個(gè)I場(chǎng)和一個(gè)P場(chǎng),即II、IP.
? 2. P幀可編碼成兩個(gè)P場(chǎng)或一個(gè)P場(chǎng)和一個(gè)B場(chǎng),即PP、PB.
? 3. B幀可編碼成兩個(gè)B場(chǎng),即BB.
3.圖像級(jí)幀、場(chǎng)自適應(yīng)編碼 (PAFF)
?? 視頻序列能被編碼成一個(gè)幀或兩個(gè)場(chǎng),自適應(yīng)選擇原則是根據(jù)采用該種編碼方式的每一幀的RD
?? 值。
4.宏塊級(jí)幀、場(chǎng)自適應(yīng)(MBAFF)
?????? 為了進(jìn)一步提高編碼效率,采用了宏塊級(jí)幀場(chǎng)自適應(yīng).,宏塊級(jí)采用了宏塊對(duì)(MBP)為基本編碼單元(如圖2所示)
?
?
?????? H.264采用的MBAFF方案:
?
在圖像中運(yùn)動(dòng)比較大的地方采用場(chǎng)編碼,運(yùn)動(dòng)比較小的地方采用幀編碼,編碼順序例子如下:
視頻編碼中的PAFF和MBAFF的區(qū)別 收藏
?隔行掃描圖像的每幀包括兩個(gè)場(chǎng),所以對(duì)于隔行掃描圖像有三種編碼方式:
?1、將兩場(chǎng)合并為一幀進(jìn)行編碼
?2、將兩場(chǎng)分別編碼
?3、將兩場(chǎng)合并為一幀,但是在宏塊級(jí)別上,將一個(gè)幀宏塊劃分為兩個(gè)場(chǎng)宏塊進(jìn)行編碼。
?以上前兩種編碼方式稱為圖像自適應(yīng)幀/場(chǎng)編碼(PAFF),第三種稱為宏塊自適應(yīng)幀/場(chǎng)編碼(MBAFF)。
?對(duì)于一個(gè)運(yùn)動(dòng)圖像,由于場(chǎng)之間存在著較大的掃描間隔,所以幀中相鄰兩行之間的空間相關(guān)性相對(duì)于逐行掃描圖像較小,因此對(duì)來兩個(gè)場(chǎng)分別編碼會(huì)更節(jié)省碼流。對(duì)于一個(gè)非運(yùn)動(dòng)圖像,相鄰兩行之間存在較大的空間相關(guān)性,將兩場(chǎng)合并為一幀編碼更有效。所以PAFF編碼方式可以針對(duì)整個(gè)圖像的編碼方式做自適應(yīng)調(diào)整,選擇幀編碼或場(chǎng)編碼。
?當(dāng)圖像同時(shí)存在運(yùn)動(dòng)區(qū)域和非運(yùn)動(dòng)區(qū)域時(shí),PAFF的劣勢(shì)便顯現(xiàn)出來,PAFF的自適應(yīng)粒度太粗,無法實(shí)現(xiàn)滿足更加精細(xì)的編碼要求,于是MBAFF應(yīng)運(yùn)而生。MBAFF對(duì)幀編碼或場(chǎng)編碼的選擇是基于宏塊的,MBAFF將兩場(chǎng)合并為一幀進(jìn)行編碼,但將每一個(gè)幀宏塊(16x16)劃分為場(chǎng)宏塊對(duì)(8*16),針對(duì)每一個(gè)幀宏塊,比較幀編碼和場(chǎng)編碼產(chǎn)生的碼流大小,使用最節(jié)省碼流的方式。
創(chuàng)作挑戰(zhàn)賽新人創(chuàng)作獎(jiǎng)勵(lì)來咯,堅(jiān)持創(chuàng)作打卡瓜分現(xiàn)金大獎(jiǎng)總結(jié)
以上是生活随笔為你收集整理的H.264学习(一)——帧和场的概念的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 小米范工具系列之二:小米范 web目录扫
- 下一篇: loadrunner controlle