<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    posts - 195, comments - 34, trackbacks - 0, articles - 1

    H.264中的NAL技術(shù)

    Posted on 2010-05-06 17:58 小強(qiáng)摩羯座 閱讀(337) 評(píng)論(0)  編輯  收藏 所屬分類: 好文章

    H.264中的NAL技術(shù)

    NAL技術(shù)

    1.NAL概述
    NAL全稱Network Abstract Layer, 即網(wǎng)絡(luò)抽象層。
    在H.264/AVC視頻編碼標(biāo)準(zhǔn)中,整個(gè)系統(tǒng)框架被分為了兩個(gè)層面:視頻編碼層面(VCL)和網(wǎng)絡(luò)抽象層面(NAL)。其中,前者負(fù)責(zé)有效表示視頻數(shù)據(jù)的內(nèi)容,而后者則負(fù)責(zé)格式化數(shù)據(jù)并提供頭信息,以保證數(shù)據(jù)適合各種信道和存儲(chǔ)介質(zhì)上的傳輸。
    現(xiàn)實(shí)中的傳輸系統(tǒng)是多樣化的,其可靠性,服務(wù)質(zhì)量,封裝方式等特征各不相同,NAL這一概念的提出提供了一個(gè)視頻編碼器和傳輸系統(tǒng)的友好接口,使得編碼后的視頻數(shù)據(jù)能夠有效地在各種不同的網(wǎng)絡(luò)環(huán)境中傳輸。

    2.NAL單元
    NAL單元是NAL的基本語(yǔ)法結(jié)構(gòu),它包含一個(gè)字節(jié)的頭信息和一系列來(lái)自VCL的稱為原始字節(jié)序列載荷(RBSP)的字節(jié)流。頭信息中包含著一個(gè)可否丟棄的指示標(biāo)記,標(biāo)識(shí)著該NAL單元的丟棄能否引起錯(cuò)誤擴(kuò)散,一般,如果NAL單元中的信息不用于構(gòu)建參考圖像,則認(rèn)為可以將其丟棄;最后包含的是NAL單元的類型信息,暗示著其內(nèi)含有效載荷的內(nèi)容。
    送到解碼器端的NAL單元必須遵守嚴(yán)格的順序,如果應(yīng)用程序接收到的NAL單元處于亂序,則必須提供一種恢復(fù)其正確順序的方法。

    3.NAL實(shí)現(xiàn)編解碼器與傳輸網(wǎng)絡(luò)的結(jié)合
    NAL提供了一個(gè)編解碼器與傳輸網(wǎng)絡(luò)的通用接口,而對(duì)于不同的網(wǎng)絡(luò)環(huán)境,具體的實(shí)現(xiàn)方案是不同的。對(duì)于基于流的傳輸系統(tǒng)如H.320、MPEG等,需要按照解碼順序組織NAL單元,并為每個(gè)NAL單元增加若干比特字節(jié)對(duì)齊的前綴以形成字節(jié)流;對(duì)于RTP/UDP/IP系統(tǒng),則可以直接將編碼器輸出的NAL單元作為RTP的有效載荷;而對(duì)于同時(shí)提供多個(gè)邏輯信道的傳輸系統(tǒng),我們甚至可以根據(jù)重要性將不同類型的NAL單元在不同服務(wù)質(zhì)量的信道中傳輸[2]。

    4.結(jié)論
    為了實(shí)現(xiàn)編解碼器良好的網(wǎng)絡(luò)適應(yīng)性,需要做兩方面的工作:第一、在Codec中將NAL這一技術(shù)完整而有效的實(shí)現(xiàn);第二、在遵循H.264/AVC NAL規(guī)范的前提下設(shè)計(jì)針對(duì)不同網(wǎng)絡(luò)的最佳傳輸方案。如果實(shí)現(xiàn)了以上兩個(gè)目標(biāo),所實(shí)現(xiàn)的就不僅僅是一種視頻編解碼技術(shù),而是一套適用范圍很廣的多媒體傳輸方案,該方案適用于如視頻會(huì)議,數(shù)據(jù)存儲(chǔ),電視廣播,流媒體,無(wú)線通信,遠(yuǎn)程監(jiān)控等多種領(lǐng)域。

    NALU類型

    標(biāo)識(shí)NAL單元中的RBSP數(shù)據(jù)類型,其中,nal_unit_type為1, 2, 3, 4, 5及12的NAL單元稱為VCL的NAL單元,其他類型的NAL單元為非VCL的NAL單元。

    0:未規(guī)定
    1:非IDR圖像中不采用數(shù)據(jù)劃分的片段
    2:非IDR圖像中A類數(shù)據(jù)劃分片段
    3:非IDR圖像中B類數(shù)據(jù)劃分片段
    4:非IDR圖像中C類數(shù)據(jù)劃分片段
    5:IDR圖像的片段
    6:補(bǔ)充增強(qiáng)信息 (SEI)
    7:序列參數(shù)集
    8:圖像參數(shù)集
    9:分割符
    10:序列結(jié)束符
    11:流結(jié)束符
    12:填充數(shù)據(jù)
    13 – 23:保留
    24 – 31:未規(guī)定

    NALU的順序要求

    H.264/AVC標(biāo)準(zhǔn)對(duì)送到解碼器的NAL單元順序是有嚴(yán)格要求的,如果NAL單元的順序是混亂的,必須將其重新依照規(guī)范組織后送入解碼器,否則解碼器不能夠正確解碼。

    1.序列參數(shù)集NAL單元必須在傳送所有以此參數(shù)集為參考的其他NAL單元之前傳送,不過(guò)允許這些NAL單元中間出現(xiàn)重復(fù)的序列參數(shù)集NAL單元。所謂重復(fù)的詳細(xì)解釋為:序列參數(shù)集NAL單元都有其專門的標(biāo)識(shí),如果兩個(gè)序列參數(shù)集NAL單元的標(biāo)識(shí)相同,就可以認(rèn)為后一個(gè)只不過(guò)是前一個(gè)的拷貝,而非新的序列參數(shù)集。
    2.圖像參數(shù)集NAL單元必須在所有以此參數(shù)集為參考的其他NAL單元之先,不過(guò)允許這些NAL單元中間出現(xiàn)重復(fù)的圖像參數(shù)集NAL單元,這一點(diǎn)與上述的序列參數(shù)集NAL單元是相同的。
    3.不同基本編碼圖像中的片段(slice)單元和數(shù)據(jù)劃分片段(data partition)單元在順序上不可以相互交叉,即不允許屬于某一基本編碼圖像的一系列片段(slice)單元和數(shù)據(jù)劃分片段(data partition)單元中忽然出現(xiàn)另一個(gè)基本編碼圖像的片段(slice)單元片段和數(shù)據(jù)劃分片段(data partition)單元。
    4.參考圖像的影響:如果一幅圖像以另一幅圖像為參考,則屬于前者的所有片段(slice)單元和數(shù)據(jù)劃分片段(data partition)單元必須在屬于后者的片段和數(shù)據(jù)劃分片段之后,無(wú)論是基本編碼圖像還是冗余編碼圖像都必須遵守這個(gè)規(guī)則
    5.基本編碼圖像的所有片段(slice)單元和數(shù)據(jù)劃分片段(data partition)單元必須在屬于相應(yīng)冗余編碼圖像的片段(slice)單元和數(shù)據(jù)劃分片段(data partition)單元之前。
    6.如果數(shù)據(jù)流中出現(xiàn)了連續(xù)的無(wú)參考基本編碼圖像,則圖像序號(hào)小的在前面。
    7.如果arbitrary_slice_order_allowed_flag置為1,一個(gè)基本編碼圖像中的片段(slice)單元和數(shù)據(jù)劃分片段(data partition)單元的順序是任意的,如果arbitrary_slice_order_allowed_flag置為零,則要按照片段中第一個(gè)宏塊的位置來(lái)確定片段的順序,若使用數(shù)據(jù)劃分,則A類數(shù)據(jù)劃分片段在B類數(shù)據(jù)劃分片段之前,B類數(shù)據(jù)劃分片段在C類數(shù)據(jù)劃分片段之前,而且對(duì)應(yīng)不同片段的數(shù)據(jù)劃分片段不能相互交叉,也不能與沒(méi)有數(shù)據(jù)劃分的片段相互交叉。
    8.如果存在SEI(補(bǔ)充增強(qiáng)信息) 單元的話,它必須在它所對(duì)應(yīng)的基本編碼圖像的片段(slice)單元和數(shù)據(jù)劃分片段(data partition)單元之前,并同時(shí)必須緊接在上一個(gè)基本編碼圖像的所有片段(slice)單元和數(shù)據(jù)劃分片段(data partition)單元后邊。假如SEI屬于多個(gè)基本編碼圖像,其順序僅以第一個(gè)基本編碼圖像為參照。
    9.如果存在圖像分割符的話,它必須在所有SEI 單元、基本編碼圖像的所有片段slice)單元和數(shù)據(jù)劃分片段(data partition)單元之前,并且緊接著上一個(gè)基本編碼圖像那些NAL單元。
    10.如果存在序列結(jié)束符,且序列結(jié)束符后還有圖像,則該圖像必須是IDR(即時(shí)解碼器刷新)圖像。序列結(jié)束符的位置應(yīng)當(dāng)在屬于這個(gè)IDR圖像的分割符、SEI 單元等數(shù)據(jù)之前,且緊接著前面那些圖像的NAL單元。如果序列結(jié)束符后沒(méi)有圖像了,那么它的就在比特流中所有圖像數(shù)據(jù)之后。
    11.流結(jié)束符在比特流中的最后。

     

    本文來(lái)自CSDN博客,轉(zhuǎn)載請(qǐng)標(biāo)明出處:file:///D:/新建文件夾/桌面/H_264中的NAL技術(shù)%20-%20Bolt%20的專欄%20-%20CSDN博客.htm



    主站蜘蛛池模板: 免费可以在线看A∨网站| 久久亚洲av无码精品浪潮| 亚洲精品免费视频| 亚洲精品成人久久| 精品无码人妻一区二区免费蜜桃| 成人免费看黄20分钟| 亚洲综合色丁香婷婷六月图片| 深夜久久AAAAA级毛片免费看| 99久久人妻精品免费一区| 亚洲av伊人久久综合密臀性色| 精品国产成人亚洲午夜福利| 男人的好看免费观看在线视频| 国内精品久久久久影院亚洲| 日韩免费高清一级毛片在线| 亚洲AV人无码综合在线观看| MM1313亚洲精品无码久久| 四虎1515hm免费国产| 亚洲日本香蕉视频观看视频| 噼里啪啦电影在线观看免费高清 | 久久国产免费一区二区三区| 免费观看男人免费桶女人视频| 亚洲精品久久无码| 国产a视频精品免费观看| 亚洲伊人久久综合影院| 精品一卡2卡三卡4卡免费视频| 亚洲永久永久永久永久永久精品| 中文字幕无码不卡免费视频| 亚洲AV无码第一区二区三区| 精品福利一区二区三区免费视频| 亚洲国产欧美一区二区三区| 亚洲午夜福利精品久久| 91麻豆国产免费观看| 亚洲AV成人无码网天堂| 国产亚洲人成网站在线观看不卡| 一级一片免费视频播放| 无码专区一va亚洲v专区在线| 在线观看肉片AV网站免费| jiz zz在亚洲| 亚洲AV无码久久精品色欲| 嫩草视频在线免费观看| 亚洲人成人网站18禁|