七罢低、圖像的Slice結構

H264H265視頻編解碼算法文章匯總
怎樣解析一幀圖像的Slice結構滑沧,目前測試的碼流都是幀編碼全部是I幀俩滥,一個圖像序列(尤其是I幀和IDR幀)的Slice結構是怎樣的?

1.Slice的概念

  • H.264的碼流結構可以分為兩層:

    • 網(wǎng)絡抽象層NAL:用于傳輸?shù)亩M制碼流包

    • 視頻編碼層VCL:保存原始視頻的圖像數(shù)據(jù)

  • H.264的條帶:Slice

    • 表示視頻圖像數(shù)據(jù)的NAL Unit包含的語法元素

    • IDR Slice NAL type: 5

    • non-IDR Slice NAL type: 1

一個Slice包含了一幀圖像的全部或部分數(shù)據(jù)荚醒,換言之芋类,一幀的視頻圖像可以編碼為1個或多個Slice,每個Slice至少要包含一個宏塊最多能包含整幀圖像的數(shù)據(jù)界阁,在不同的編碼實現(xiàn)中侯繁,同一幀圖像所組成的Slice數(shù)目不一定相同,一幀圖像本來編碼為1個Slice泡躯,修改編碼配置可能分為多個Slice進行編碼

  • 一個Slice:

    • 包含某一幀的全部或部分數(shù)據(jù)
  • 定義Slice的意義:

    • 防止誤碼的擴散

    • 不同的slice之間贮竟,其解碼操作獨立丽焊;

    • 某一個slice的解碼過程所參考的數(shù)據(jù)(例如預測編碼)不能越過slice的邊界

如果一個Slice中產(chǎn)生誤碼,此誤碼只產(chǎn)生在Slice之內坝锰,不會影響相應的Slice的解碼正常進行

2.Slice的類型

  • 根據(jù)碼流中不同的數(shù)據(jù)類型粹懒,H.264標準中共定義了5總Slice類型:

    • I slice: 幀內編碼的條帶重付;I slice可以不依賴其他數(shù)據(jù)進行解碼顷级,因此不能包含P slice(宏塊)或B slice(宏塊)

    • P slice: 單向幀間編碼的條帶;也可包含I slice(宏塊)确垫,并不在少數(shù)弓颈,若采用I Slice使用最少的代價,就會使用I Slice(宏塊)

    • B slice: 雙向幀間編碼的條帶删掀;也可包含I slice(宏塊)翔冀,并不在少數(shù),若采用I Slice使用最少的代價,就會使用I Slice(宏塊)

    • SI slice: 切換I條帶披泪,用于擴展檔次中碼流切換使用纤子;

    • SP slice: 切換P條帶,用于擴展檔次中碼流切換使用款票;

S表示Switch切換的意思

3.Slice的組成

image.png
  • Slice Header: 保存Slice的總體信息

  • Slice Body: 一組連續(xù)的宏塊結構(或者宏塊跳過信息)

  • image.png

first_mb_in_slice:大多數(shù)情況下一幀圖像被編碼成一個Slice,這一幀的Slice的第一個宏塊自然就是這一幀的左上角的數(shù)據(jù)了這個值為0

slice_type:slice的類型控硼,在Nal Unit中只區(qū)分了type為5或1,IDR幀或非IDR幀艾少,非IDR幀可能會有好多種slice卡乾,可通過以下表格判斷,slice_type specifies the coding type of the slice according to Table 7-6.,前面0缚够,1幔妨,2,3谍椅,4五個數(shù)值即可區(qū)分

image.png

pic_parameter_set_id:依賴于哪一個pps的值

colour_plane_id:當前處理的是哪一個顏色分量误堡,只有在YUV三個分量分開處理的時候才有效,為0雏吭,1锁施,2的時候分別表示Y,U,V三個分量

frame_num:和pic_order_cnt_lsb都是表示度量當前幀順序的序號,只不過兩者表示的含義不一樣思恐,差距主要體現(xiàn)在幀間編碼上沾谜,攜帶了P幀或B幀的時候,研究幀間編碼的時候詳細解答

field_pic_flag:在frame_mbs_only_flag為假的時候才存在胀莹,也就是非幀編碼的時候才存在基跑,表示當前Slice是幀編碼還是場編碼,標志位也稱為場編碼標志位描焰,為1媳否,當前Slice按照場編碼來處理栅螟,為0,按幀編碼處理

bottom_field_flag:底場標志位篱竭,為1表示處理的是頂場和底場中的底場力图,為0,表示頂場

idr_pic_id:如果為IDR slice掺逼,需要idr_pic_id,如果IDR被編碼為了多個Slice吃媒,每個Slice的idr_pic_id必須一樣,取值范圍為0~65535之間

pic_order_cnt_lsb:度量圖像順序的標號

下面暫時忽略

image.png

進行幀間編碼時會用到

image.png

slice_qp_delta:計算當前Slice的初始量化參數(shù)值吕喘,pps中的參數(shù)pic_init_qp_minus26表示一個pps管理的一個gop的整體初始量化參數(shù),加上26表示每一個pic_init_qp的值赘那,到了每一個Slice之中,可以通過slice_qp_delta進行調整氯质,slice_qp_delta有更強的靈活性

后面的對示例中I幀的視頻解析是不需要的募舟,保留字段

image.png

代碼中還需要定義dec_ref_pic_marking( ),目前例子中解析的是IDR幀闻察,只包含兩個語法元素就可以了

no_output_of_prior_pics_flag

long_term_reference_flag

若解析非IDR幀拱礁,還需要以下元素

image.png

當sps中的separate_colour_plane_flag = = 1時存在元素colour_plane_id

frame_num的長度取決于sps中l(wèi)og2_max_frame_num_minus4

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市辕漂,隨后出現(xiàn)的幾起案子呢灶,更是在濱河造成了極大的恐慌,老刑警劉巖钮热,帶你破解...
    沈念sama閱讀 219,039評論 6 508
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件填抬,死亡現(xiàn)場離奇詭異,居然都是意外死亡隧期,警方通過查閱死者的電腦和手機飒责,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,426評論 3 395
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來仆潮,“玉大人宏蛉,你說我怎么就攤上這事⌒灾茫” “怎么了拾并?”我有些...
    開封第一講書人閱讀 165,417評論 0 356
  • 文/不壞的土叔 我叫張陵,是天一觀的道長鹏浅。 經(jīng)常有香客問我嗅义,道長,這世上最難降的妖魔是什么隐砸? 我笑而不...
    開封第一講書人閱讀 58,868評論 1 295
  • 正文 為了忘掉前任之碗,我火速辦了婚禮,結果婚禮上季希,老公的妹妹穿的比我還像新娘褪那。我一直安慰自己幽纷,他們只是感情好,可當我...
    茶點故事閱讀 67,892評論 6 392
  • 文/花漫 我一把揭開白布博敬。 她就那樣靜靜地躺著友浸,像睡著了一般。 火紅的嫁衣襯著肌膚如雪偏窝。 梳的紋絲不亂的頭發(fā)上收恢,一...
    開封第一講書人閱讀 51,692評論 1 305
  • 那天,我揣著相機與錄音囚枪,去河邊找鬼派诬。 笑死劳淆,一個胖子當著我的面吹牛链沼,可吹牛的內容都是我干的。 我是一名探鬼主播沛鸵,決...
    沈念sama閱讀 40,416評論 3 419
  • 文/蒼蘭香墨 我猛地睜開眼括勺,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了曲掰?” 一聲冷哼從身側響起疾捍,我...
    開封第一講書人閱讀 39,326評論 0 276
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎栏妖,沒想到半個月后乱豆,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,782評論 1 316
  • 正文 獨居荒郊野嶺守林人離奇死亡吊趾,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 37,957評論 3 337
  • 正文 我和宋清朗相戀三年宛裕,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片论泛。...
    茶點故事閱讀 40,102評論 1 350
  • 序言:一個原本活蹦亂跳的男人離奇死亡揩尸,死狀恐怖,靈堂內的尸體忽然破棺而出屁奏,到底是詐尸還是另有隱情岩榆,我是刑警寧澤,帶...
    沈念sama閱讀 35,790評論 5 346
  • 正文 年R本政府宣布坟瓢,位于F島的核電站勇边,受9級特大地震影響,放射性物質發(fā)生泄漏折联。R本人自食惡果不足惜粒褒,卻給世界環(huán)境...
    茶點故事閱讀 41,442評論 3 331
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望崭庸。 院中可真熱鬧怀浆,春花似錦谊囚、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,996評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至沙合,卻和暖如春奠伪,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背首懈。 一陣腳步聲響...
    開封第一講書人閱讀 33,113評論 1 272
  • 我被黑心中介騙來泰國打工绊率, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人究履。 一個月前我還...
    沈念sama閱讀 48,332評論 3 373
  • 正文 我出身青樓滤否,卻偏偏與公主長得像,于是被迫代替她去往敵國和親最仑。 傳聞我的和親對象是個殘疾皇子藐俺,可洞房花燭夜當晚...
    茶點故事閱讀 45,044評論 2 355

推薦閱讀更多精彩內容