H 265的各種幀

2021-10-07 09:46:48 字數 1609 閱讀 3833

這篇部落格h.265的各種幀(詳解):接入影象對所有的vcl nal進行了詳細解說。

下圖所有h.265的nalu

trailing pictures包括tsa、stsa和trail。

在trailing pictures中,除了tsa和stsa之外,其他的都定義為trail幀。

這兩種是h265中引入的新結構。

temporal sub-layer access picture隨機接入點後按解碼和輸出順序的影象。

tsa(temporal sublayer access)

stsa(stepwise temporal sublayer access)

1.3 關於radl和rasl

leading picture 包括rasl和radl。

radl(random access decodable leading):在隨機接入點後,可以按順序解碼的影象。不依賴irap前碼流資訊的前置影象。即irap介入,其radl影象可以正確解碼。

rasl(random access skipped leading) 因為包含幀間資訊而不能解碼的影象–會被丟棄。依賴irap前碼流資訊的前置影象。即irap介入,其radl影象不能正確解碼

這是兩種gop間的影象型別。如果解碼器從某個cra隨機接入,則按照顯示順序的後面幾幀資料由於缺少參考幀而不能解碼,這些影象將被解碼器拋棄,即skip leading。而對於沒有從當前cra接入的資料,這些影象可以被正常解碼顯示,因此稱為decodable leading。由於這些資料是有可能捨棄的,因此其他影象(trailing pictures)不能參考這些資料,否則萬一這些影象被捨棄,將會有更多的影象受其影響而不能正常解碼。

以下是一些國外研究者在論壇中對這個問題的一些討論,可以拿來做一下參考:

forum.doom9.org/archive/index.php/t-105129.html

idr:instantaneous decoding refresh

是在h.264中定義的結構。在h.264中,idr幀一定是i幀,而且一定是gop的開始,也是h.264 gop的關鍵幀。但是反過來卻不成立,i幀不一定是idr幀。gop的長度不是定死不變的,在h.264的編碼器中,如果判定場景發生變化,那麼即使不到原定gop的末尾,也會在這個位置加入乙個idr,作為新乙個gop的開始。此時這個gop的長度就被縮小了。

gop:group of pictures

cra:clean random access

irap的分類:bla影象,idr影象,和cra影象。

video parameter sets

sequence parameter sets

picture parameter sets

access unit delimiter

end of sequence

end of bitstream

filler data

supplemental enhancement information

sei_prefix

sei_suffix

有另一位博主的部落格寫的很專業,以供參考:

H265的參考幀理解

1.為什麼要分短時參考幀short term reference和長時參考幀long term reference 參考中所述,因為short term參考幀以frame num做為索引,而frame num是有最大值的,達到最大值後會進行取模,所以短期參考幀不能長期存在於參考列表中,因為一旦fra...

h265裸流分析

型別判斷方式為分隔符之後的第乙個位元組右移一位的值 第一幀 0x40 1 得到0x20,十進位制32,為nal vps 第二幀 0x42 1 得到0x21,十進位制33,為nal sps 第三幀 0x44 1 得到0x22,十進位制34,為nal pps 第四幀 0x26 1 得到0x13,十進位制...

H265碼流分析

h265相比較於h264,除了包含sps pps外,還多包含乙個vps 在nalu header上,h.264的nalu header是乙個位元組,而h.265則是兩個位元組。以0x4001為例,頭資訊可以被解析成4個部分,其中 對比h.264的頭資訊,h.265移除了nal ref idc,此資訊...