數(shù)據(jù)且將經(jīng)編碼視頻數(shù)據(jù)發(fā)射到目的地裝 置14的任何類型的服務器。實例文件服務器包含網(wǎng)絡服務器(例如,用于網(wǎng)站)、FTP服 務器、網(wǎng)絡附接存儲(NAS)裝置或本地磁盤驅(qū)動器。目的地裝置14可以通過任何標準數(shù)據(jù) 連接(包含因特網(wǎng)連接)來存取經(jīng)編碼的視頻數(shù)據(jù)。此可包含無線信道(例如,Wi-Fi連 接)、有線連接(例如,DSL、電纜調(diào)制解調(diào)器等),或適合于存取存儲在文件服務器上的經(jīng)編 碼視頻數(shù)據(jù)的兩者的組合。經(jīng)編碼視頻數(shù)據(jù)從存儲裝置36的發(fā)射可為流式傳輸發(fā)射、下載 發(fā)射或兩者的組合。
[0034] 本發(fā)明的技術不一定限于無線應用或設定。所述技術可應用于視頻譯碼以支持多 種多媒體應用,例如,空中電視廣播、有線電視傳輸、衛(wèi)星電視傳輸、流式視頻傳輸(例如, 經(jīng)由因特網(wǎng))、編碼數(shù)字視頻以用于存儲于數(shù)據(jù)存儲媒體上、解碼存儲于數(shù)據(jù)存儲媒體上的 數(shù)字視頻或其它應用。在一些實例中,系統(tǒng)10可經(jīng)配置以支持單向或雙向視頻發(fā)射,以支 持例如視頻串流、視頻重放、視頻廣播和/或視頻電話的應用。
[0035] 在圖1的實例中,源裝置12包含視頻源18、視頻編碼器20及輸出接口 22。在一 些情況下,輸出接口 22可包含調(diào)制器/解調(diào)制器(調(diào)制解調(diào)器)及/或發(fā)射器。在源裝置 12中,視頻源18可包含例如視頻俘獲裝置(例如攝像機)、包含先前俘獲的視頻的視頻存 檔、用于從視頻內(nèi)容提供者接收視頻的視頻饋入接口及/或用于產(chǎn)生計算機圖形數(shù)據(jù)作為 源視頻的計算機圖形系統(tǒng),或此類源的組合等源。作為一個實例,如果視頻源18是攝像機, 那么源裝置12和目的地裝置14可以形成所謂的攝像機電話或視頻電話。然而,本發(fā)明中 所描述的技術可大體上適用于視頻譯碼,且可應用于無線及/或有線應用。
[0036] 可由視頻編碼器20編碼所俘獲視頻、預俘獲的視頻或計算機產(chǎn)生的視頻??山?jīng)由 源裝置12的輸出接口 22將經(jīng)編碼視頻數(shù)據(jù)直接發(fā)射到目的地裝置14。經(jīng)編碼視頻數(shù)據(jù)還 可(或替代地)存儲到存儲裝置36上以供稍后由目的地裝置14或其它裝置存取以用于解 碼及/或回放。
[0037] 目的地裝置14包含輸入接口 28、視頻解碼器30及顯示裝置32。在一些情況下, 輸入接口 28可包含接收器及/或調(diào)制解調(diào)器。目的地裝置14的輸入接口 28可經(jīng)由鏈路 16接收經(jīng)編碼視頻數(shù)據(jù)。經(jīng)由鏈路16傳送或在存儲裝置36上提供的經(jīng)編碼視頻數(shù)據(jù)可包 含由視頻編碼器20所產(chǎn)生的多種語法元素以供由例如視頻解碼器30的視頻解碼器用于解 碼視頻數(shù)據(jù)。此類語法元素可與在通信媒體上發(fā)射、存儲在存儲媒體上或存儲文件服務器 的經(jīng)編碼視頻數(shù)據(jù)包含在一起。
[0038] 顯示裝置32可與目的地裝置14集成或在目的地裝置14外部。在一些實例中, 目的地裝置14可包含集成顯示裝置,且還經(jīng)配置以與外部顯示裝置介接。在其它實例中, 目的地裝置14可為顯示裝置。一般來說,顯示裝置32將經(jīng)解碼視頻數(shù)據(jù)顯示給用戶,且 可包括多種顯示裝置中的任一者,例如液晶顯示器(LCD)、等離子顯示器、有機發(fā)光二極管 (OLED)顯示器或另一類型的顯示裝置。
[0039] 視頻編碼器20和視頻解碼器30可根據(jù)視頻壓縮標準(例如,目前正在開發(fā)的高 效率視頻譯碼(HEVC)標準)來操作,且可符合HEVC測試模型(HM)。替代地,視頻編碼器20 及視頻解碼器30可以根據(jù)其它專有或業(yè)界標準來操作,所述標準例如ITU-T H. 264標準, 替代地被稱作MPEG-4第10部分高級視頻譯碼(AVC),或此類標準的擴展。然而,本發(fā)明的 技術不限于任何特定譯碼標準。視頻壓縮標準的其它實例包含MPEG-2和ITU-T H. 263。
[0040] 盡管圖1中未展示,但在一些方面中,視頻編碼器20及視頻解碼器30可各自與音 頻編碼器及解碼器集成,且可包含適當?shù)亩嗦窂陀闷?多路分用器(MUX-DEMUX)單元或其 它硬件及軟件,以處理對共同數(shù)據(jù)流或單獨數(shù)據(jù)流中的音頻與視頻兩者的編碼。在一些實 例中,如果適用,那么多路復用器一多路分用器單元可符合ITU H. 223多路復用器協(xié)議,或 例如用戶數(shù)據(jù)報協(xié)議(UDP)的其它協(xié)議。
[0041] 視頻編碼器20及視頻解碼器30各自可實施為多種合適的編碼器電路中的任一 者,例如一或多個微處理器、數(shù)字信號處理器(DSP)、專用集成電路(ASIC)、現(xiàn)場可編程門 陣列(FPGA)、離散邏輯、軟件、硬件、固件或其任何組合。當部分地用軟件實施所述技術時, 裝置可將用于軟件的指令存儲在合適的非暫時性計算機可讀媒體中且使用一或多個處理 器用硬件執(zhí)行所述指令以執(zhí)行本發(fā)明的技術。視頻編碼器20和視頻解碼器30中的每一者 可以包含在一或多個編碼器或解碼器中,所述編碼器或解碼器中的任一者可以集成為相應 裝置中的組合編碼器/解碼器(編解碼器)的部分。
[0042] 本發(fā)明通常可指視頻編碼器20將某些信息"用信號表示"到另一裝置(例如視頻 解碼器30)。術語"用信號表示"可以大體上是指對用以對經(jīng)壓縮的視頻數(shù)據(jù)進行解碼的語 法元素和/或其它數(shù)據(jù)的通信。此通信可實時或接近實時地發(fā)生。替代性地,可歷時時間 跨度而發(fā)生此通信,例如當在編碼時,以經(jīng)編碼位流將語法元素存儲到計算機可讀存儲媒 體時,可發(fā)生此通信,接著,在存儲到此媒體之后可由解碼裝置在任何時間檢索所述語法元 素。
[0043] 在HEVC及其它視頻譯碼標準中,視頻序列通常包含一系列圖片。圖片也可被稱作 "幀"。根據(jù)三色激勵YCbCr顏色空間,圖片可包含三個樣本陣列,表示為SpSjP S&是 明度樣本的二維陣列(即,塊)。Seb是Cb色度樣本的二維陣列。S &是Cr色度樣本的二維 陣列。Cb色度樣本在本文中可以被稱為"U樣本"。Cr色度樣本在本文中可以被稱為"V樣 本"。色度樣本在本文中還可以被稱為"色度"樣本。在其它情況下,圖片可為單色的且可 僅包含明度樣本陣列。
[0044] 視頻編碼器20可使用4:2:0取樣來反映人視覺系統(tǒng)相對于色度對明度的靈敏度。 在此實例或其它實例中,視頻編碼器20可相對于明度陣列對圖片的色度陣列(即,S cb和 S&)進行向下取樣。然而,在再其它情況中,可避免向下取樣以確保最高質(zhì)量視頻。例如, 視頻編碼器20可以使用YUV 4:2:0視頻格式、YUV 4:2:2視頻格式或4:4:4視頻格式。在 YUV 4:2:0視頻格式中,視頻編碼器20可以對色度陣列進行向下取樣,使得色度陣列高度 是明度陣列高度的1/2并且寬度是明度陣列寬度的1/2。在YUV 4:2:2視頻格式中,視頻編 碼器20可以對色度陣列進行向下取樣,使得色度陣列寬度是明度陣列寬度的1/2并且高度 與明度陣列高度相同。在YUV 4:4:4視頻格式中,視頻編碼器20并不對色度陣列進行向下 取樣??墒褂美?位或10位精度表示Y、Cr和Cr組件中的每一者的樣本。
[0045] 為了產(chǎn)生圖片的經(jīng)編碼的表示,視頻編碼器20可以產(chǎn)生譯碼樹單元(CTU)的集 合。CTU中的每一者可包括明度樣本的譯碼樹塊、色度樣本的兩個對應的譯碼樹塊,以及用 以對譯碼樹塊的樣本進行譯碼的語法結(jié)構(gòu)。在單色圖片或具有三個單獨顏色平面的圖片 中,CTU可包括單個譯碼樹塊及用于對所述譯碼樹塊的樣本進行譯碼的語法結(jié)構(gòu)。譯碼樹 塊可以是樣本的NxN塊。CTU也可以被稱為樹塊或最大譯碼單元(LCU)。HEVC的CTU可以 廣泛地類似于例如H. 264/AVC等其它視頻譯碼標準的宏塊。然而,CTU未必限于特定大小, 并且可以包含一或多個譯碼單元(CU)。切片可包含在光柵掃描中連續(xù)排序的整數(shù)數(shù)目的 CTU0
[0046] 本發(fā)明可使用術語"視頻單元"或"視頻塊"來指代一或多個樣本塊及用于譯碼所 述一或多個樣本塊的樣本的語法結(jié)構(gòu)。實例類型的視頻單元可包含CTU、⑶、PU、變換單元 (TU)、宏塊、宏塊分區(qū)等。
[0047] 為了產(chǎn)生經(jīng)譯碼的CTU,視頻編碼器20可以對CTU的譯碼樹塊遞歸地執(zhí)行四叉樹 分割,以將譯碼樹塊劃分為譯碼塊,因此命名為"譯碼樹單元"。譯碼塊可以是樣本的NxN 塊。CU可包括具有明度樣本陣列、Cb樣本陣列和Cr樣本陣列的圖片的明度樣本的譯碼塊, 以及色度樣本的兩個對應的譯碼塊,以及用以對譯碼塊的樣本進行譯碼的語法結(jié)構(gòu)。在單 色圖片或具有三個單獨顏色平面的圖片中,CU可包括單個譯碼塊及用于對所述譯碼塊的樣 本進行譯碼的語法結(jié)構(gòu)。
[0048] 視頻編碼器20可以將CU的譯碼塊分割成一或多個預測塊。預測塊可以是應用相 同預測的樣本的矩形(即,正方形或非正方形)塊。CU的預測單元(PU)可包括圖片的明度 樣本的預測塊(PB)、圖片的色度樣本的兩個對應的預測塊(PB),以及用以對PB樣本進行預 測的語法結(jié)構(gòu)。在單色圖像或具有三個單獨彩色平面的圖片中,PU可包括單個預測塊,及 用以對預測塊樣本進行預測的語法結(jié)構(gòu)。視頻編碼器20可以產(chǎn)生CU的每一 PU的明度預 測塊、Cb預測塊以及Cr預測塊的預測性明度塊、Cb塊以及Cr塊。
[0049] 視頻編碼器20以及視頻解碼器30可以支持具有各種大小的PU。如上文所指示, CU的大小可指CU的明度譯碼塊的大小并且PU的大小可指PU的明度預測塊的大小。假定 特定CU的大小是2NX2N,則視頻編碼器20以及視頻解碼器30可以支持用于幀內(nèi)預測的 2Nx2N或NxN的PU大小,以及用于幀間預測的2Nx2N、2NxN、Nx2N、NxN或類似大小的對稱PU 大小。視頻編碼器20以及視頻解碼器30還可以支持用于幀間預測的2NxnU、2NxnD、nLx2N 以及nRx2N的PU大小的非對稱分割。
[0050] 視頻編碼器20可以使用幀內(nèi)預測或幀間預測來產(chǎn)生用于PU的預測性塊。如果視 頻編碼器20使用幀內(nèi)預測產(chǎn)生PU的預測性塊,則視頻編碼器20可以基于與PU相關聯(lián)的 圖片的經(jīng)解碼樣本來產(chǎn)生PU的PB。PB大小可針對所有塊大?。ɡ纾瑢τ谒蠳)設定為 與CB大小相同,位流中可允許的最小譯碼塊大小除外。在此例外情況中,CB可分裂成四個 預測塊象限,每一象限具有單獨的圖片內(nèi)預測模式。
[0051] 如果視頻編碼器20使用幀間預測以產(chǎn)生PU的PB,那么明度和色度CB可分裂成一 個、兩個或四個PB。如上文相對于分裂為HJ的CU所提到,CU的CB可分裂成用于PB的對 稱或不對稱運動分區(qū)。視頻編碼器20為每一經(jīng)幀間預測預測塊指派一個或兩個運動向量 (MV)和到參考圖片列表的索引(下文進一步詳細描述)。HEVC指定,由于原本將由于參考 圖片存儲器加載而發(fā)生的存儲器帶寬瓶頸,具有大小4x4的明度PB不可經(jīng)幀間預測,且4x8 大小和8x4大小的明度不可使用雙向預測來幀間預測(即,這些尺寸的明度受限于單向預 測)。
[0052] 此外,如果視頻編碼器20使用幀間預測以產(chǎn)生PU的預測性塊,那么視頻編碼 器20可基于除與PU相關聯(lián)的圖片外的一或多個圖片的經(jīng)解碼樣本而產(chǎn)生PU的預測性 塊。幀間預測可以是單向幀間預測(即,單向預測)或雙向幀間預測(即,雙向預測)。為 了執(zhí)行單向預測或雙向預測,視頻編碼器20可以產(chǎn)生用于當前切片的第一參考圖片列表 (RefPicListO)以及第二參考圖片列表(RefPicListl)。參考圖片列表中的每一者可以 包含一或多個參考圖片。當使用單向預測時,視頻編碼器20可以搜索RefPicListO以及 RefPicListl中的任一者或兩者中的參考圖片,以確定參考圖片內(nèi)的參考位置。此外,當使 用單向預測時,視頻編碼器20可以至少部分基于對應于參考位置的樣本產(chǎn)生PU的預測性 樣本塊。此外,在使用單向預測時,視頻編碼器20可產(chǎn)生指示PU的預測塊與參考位置之間 的空間位移的單一運動向量。為了指示PU的預測塊與參考位置之間的空間位移,運動向量 可以包含指定PU的預測塊與參考位置之間的水平位移的水平分量并且可以包含指定HJ的 預測塊與參考位置之間的垂直位移的垂直分量。
[0053] 在使用雙向預測來編碼HJ時,視頻編碼器20可確定RefPicListO中的參考圖片 中的第一參考位置及RefPicListl中的參考圖片中的第二參考位置。視頻編碼器20接著 可至少部分基于對應于第一及第二參考位置的樣本產(chǎn)生PU的預測性塊。此外,當使用雙向 預測對PU進行編碼時,視頻編碼器20可以產(chǎn)生指示PU的樣本塊與第一參考位置之間的空 間位移的第一 MV,以及指示PU的預測塊與第二參考位置之間的空間位移的第二MV。雖然 本文中描述為可用于"雙向"幀間預測,但不同參考圖片列表RefPicListO和RefPicListl 中的參考圖片在時間意義上不一定分別在先前/之前以及隨后/之后。而是,所述兩個參 考圖片列表在某些情況下可均包含來自一或多個先前幀的數(shù)據(jù),或可均包含來自一或多個 后續(xù)幀的數(shù)據(jù)。所述兩個參考圖片列表中的數(shù)據(jù)在一些情形中也可為相同的。
[0054] 視頻編碼器20可使用子樣本精度用于MV。對于根據(jù)例如HEVC獲得的明度PB,視 頻編碼器20可使用具有用于內(nèi)插分數(shù)樣本位置的7分接頭(用于四分之一樣本位置)或 8分接頭濾波器(用于二分之一樣本位置)的四分之一樣本精度,即,明度樣本之間的距離 的四分之一。
[0055] 色度樣本MV分數(shù)準確性可根據(jù)色度取樣格式變化。舉例來說,在存在多達水平和 垂直尺寸中的每一者的色度樣本的二分之一的條件下,4:2:0格式導致色度樣本之間的距 離的1/8的單元。然而,用于色度PB的分數(shù)樣本內(nèi)插類似于明度PB的分數(shù)樣本內(nèi)插。然 而,視頻編碼器20可使用4分接頭濾波器用于色度分量的內(nèi)插,其對于4:2:0格式再次導 致1/8分數(shù)準確性。對于4:2:2格式,4分接頭濾波器的水平分數(shù)準確性是1/8,且垂直分 數(shù)準確性是1/4。對于4:4:4格式,色度樣本MV分數(shù)準確性等同于明度塊的分數(shù)準確性。
[0056] 因此,為了導出明度PB,視頻編碼器20使用8分接頭濾波器執(zhí)行分數(shù)樣本內(nèi)插。 圖11是說明用于分量內(nèi)插的實例整數(shù)和分數(shù)樣本位置矩陣400的框圖當前HEVC標準如表 1中示出界定用于二分之一樣本(hfilter)和四分之一樣本(qfilter)內(nèi)插位置的這些8 分接頭濾波器。
[0057]
[0058]