本申請(qǐng)是2014年5月22日提交的、國(guó)際申請(qǐng)日為2013年4月23日的、申請(qǐng)?zhí)枮?01380003980.4(pct/kr2013/003456)的,發(fā)明名稱為“視頻編碼方法、視頻解碼方法以及實(shí)現(xiàn)該方法的裝置”專利申請(qǐng)的分案申請(qǐng)。
本發(fā)明涉及一種視頻壓縮技術(shù),并且更具體地,涉及一種解析被壓縮的視頻信息以處理視頻的方法和使用該方法的裝置。
背景技術(shù):
最近,高分辨率和高品質(zhì)圖像的需要在各種領(lǐng)域的應(yīng)用中已經(jīng)增加。因?yàn)閳D像具有更高分辨率和更高質(zhì)量,所以關(guān)于圖像的信息量也增加。
隨著信息量的增長(zhǎng),引進(jìn)了具有各種環(huán)境的多動(dòng)能設(shè)備和網(wǎng)絡(luò)。因此,通過(guò)不同級(jí)別的質(zhì)量利用同一內(nèi)容。
具體地,因?yàn)榻K端能夠支持不同質(zhì)量的視頻并且各種網(wǎng)絡(luò)環(huán)境被建立,所以具有一般質(zhì)量的視頻能夠在一個(gè)環(huán)境中啟用,同時(shí)更高質(zhì)量視頻在另一環(huán)境中可用。
例如,用戶在家中可以享受通過(guò)具有更高分辨率的大屏幕顯示器上的便攜終端購(gòu)買的視頻內(nèi)容。
近些年,隨著高清晰(hd)廣播服務(wù)可用,大量的用戶習(xí)慣于高分辨率和高質(zhì)量視頻,并且服務(wù)提供商和服務(wù)用戶也關(guān)注具有比hdtv高四倍分辨率的超高清(uhd)服務(wù)。
因此,需要提供視頻質(zhì)量,例如,基于關(guān)于高容量視頻的高效編碼和解碼方法的視頻的圖像質(zhì)量、分辨率、大小和幀率的可擴(kuò)展性,以便在用于用戶需求的不同環(huán)境中提供各種質(zhì)量的視頻服務(wù)。
技術(shù)實(shí)現(xiàn)要素:
技術(shù)問(wèn)題
本發(fā)明的一個(gè)方面是提供一種處理不具有參考圖片的前導(dǎo)圖片的方法和使用該方法的裝置。
本發(fā)明的另一方面是提供一種防止在解碼裝置中的錯(cuò)誤并且處理視頻的方法和使用該方法的裝置。
本發(fā)明的又一方面是提供一種支持隨機(jī)接入視頻并且在比特流中首先解碼凈隨機(jī)接入(cleanrandomaccess,cra)圖片和即時(shí)解碼刷新(idr)圖片的方法和使用該方法的裝置。
本發(fā)明的另一方面是提供一種處理在視頻處理中產(chǎn)生的錯(cuò)誤的方法和使用該方法的裝置。
技術(shù)方案
本發(fā)明的實(shí)施例提供一種視頻處理方法,其包括接收含有多個(gè)圖片的比特流,并且當(dāng)用于按照輸出順序在隨機(jī)接入點(diǎn)圖片之前并且按照解碼順序在隨機(jī)接入點(diǎn)圖片之后的前導(dǎo)圖片的至少一個(gè)參考圖片不可以用時(shí),不輸出前導(dǎo)圖片。
不輸出前導(dǎo)圖片可以包括移除和丟棄來(lái)自比特流的前導(dǎo)圖片,并且視頻處理方法可以進(jìn)一步包括解碼在移除前導(dǎo)圖片之后的圖片。
可以從解碼處理和輸出處理排除前導(dǎo)圖片。
在預(yù)定延遲時(shí)間之后可以解碼被移除的前導(dǎo)圖片之后的圖片。
前導(dǎo)圖片可以包括不可解碼的第一前導(dǎo)圖片和可解碼的第二前導(dǎo)圖片,并且移除和丟棄來(lái)自比特流的前導(dǎo)圖片可以排除來(lái)自解碼處理和輸出處理的第一前導(dǎo)圖片。
前導(dǎo)圖片可以包括不可解碼的第一前導(dǎo)圖片和可解碼的第二前導(dǎo)圖片,并且移除和丟棄來(lái)自比特流的前導(dǎo)圖片可以移除和丟棄來(lái)自該比特流的第一前導(dǎo)圖片和第二前導(dǎo)圖片。
前導(dǎo)圖片可以包括不可解碼的第一前導(dǎo)圖片,并且移除和丟棄來(lái)自比特流的前導(dǎo)圖片可以移除和丟棄來(lái)自比特流的第一前導(dǎo)圖片。
前導(dǎo)圖片可以包括不可解碼的第一前導(dǎo)圖片和可解碼的第二前導(dǎo)圖片,并且視頻處理方法可以進(jìn)一步包括生成第一前導(dǎo)圖片的不可用參考圖片和生成防止不可用的參考圖片的輸出的標(biāo)志信號(hào)。
視頻處理方法可以進(jìn)一步包括解碼第二前導(dǎo)圖片。
前導(dǎo)圖片可以包括作為參考圖片在比特流中不存在的圖片。
隨機(jī)接入點(diǎn)圖片可以是凈隨機(jī)接入(cra)圖片。
視頻處理方法可以進(jìn)一步包括接收指示用于前導(dǎo)圖片的至少一個(gè)參考圖片是不可用的標(biāo)志信息。
視頻處理方法可以進(jìn)一步包括,當(dāng)通過(guò)標(biāo)志信息確定用于前導(dǎo)圖片的至少一個(gè)參考圖片是不可用時(shí),輸出比特流的錯(cuò)誤信息和解碼在前導(dǎo)圖片之后的圖片。
當(dāng)用于前導(dǎo)圖片的至少一個(gè)參考圖片是不可用時(shí),可以將比特流確定為不滿足預(yù)定一致性。
視頻處理方法可以進(jìn)一步包括輸出比特流的錯(cuò)誤信息和解碼在前導(dǎo)圖片之后的圖片。
有益效果
本發(fā)明的實(shí)施例提供一種處理不具有參考圖片的前導(dǎo)圖片的方法和使用該方法的裝置。
本發(fā)明的另一實(shí)施例提供一種防止在解碼裝置中的錯(cuò)誤和處理視頻的方法和使用該方法的裝置。
本發(fā)明的又一方面提供一種支持隨機(jī)接入視頻和在比特流中首先解碼凈隨機(jī)接入(cra)圖片和即時(shí)解碼刷新(idr)圖片的方法和使用該方法的裝置。
本發(fā)明的又一實(shí)施例提供一種處置在視頻處理中出現(xiàn)的錯(cuò)誤的方法和使用該方法的裝置。
附圖說(shuō)明
圖1是示意地示出根據(jù)本發(fā)明的示例性實(shí)施例的視頻編碼裝置的框圖。
圖2是示意地示出根據(jù)本發(fā)明的示例性實(shí)施例的視頻解碼裝置的框圖。
圖3示出通過(guò)解碼裝置處理的編譯視頻的分層結(jié)構(gòu)。
圖4示出隨機(jī)可接入的圖片。
圖5示出即時(shí)解碼刷新(idr)圖片。
圖6示出凈隨機(jī)接入(cra)圖片。
圖7示出其中前導(dǎo)圖片之前的圖片是不可用的情形。
圖8是示出根據(jù)本發(fā)明的示例性實(shí)施例的視頻處理裝置的框圖。
圖9是示出根據(jù)本發(fā)明的示例性實(shí)施例的視頻處理方法的流程圖。
圖10示出去除根據(jù)本發(fā)明的示例性實(shí)施例的前導(dǎo)圖片。
圖11示出去除根據(jù)本發(fā)明的另一示例性實(shí)施例的前導(dǎo)圖片。
圖12示出去除根據(jù)本發(fā)明的又一示例性實(shí)施例的前導(dǎo)圖片。
圖13是示出根據(jù)本發(fā)明的另一示例性實(shí)施例的視頻處理方法的流程圖。
具體實(shí)施方式
本發(fā)明可以進(jìn)行各種更改和修正并且參考不同的示例性實(shí)施例被示出,其中的一些將被更加詳細(xì)地描述并且在附圖中示出。然而,實(shí)施例并不旨在限制本發(fā)明。在本文中使用的術(shù)語(yǔ)僅為了描述特定實(shí)施例,并不旨在限制本發(fā)明的技術(shù)理念。如本文中所使用的,單數(shù)形式“a”、“an”和“the”旨在也包括復(fù)數(shù)形式,除非上下文以其它方式清楚地指示。將進(jìn)一步理解成,術(shù)語(yǔ)“包括”和/或“具有”在該說(shuō)明書中使用時(shí),指定所述特征、整數(shù)、步驟、操作、要素、組件、和/或其組合的存在,但是并不排除一個(gè)或多個(gè)其它特征、整數(shù)、步驟、操作、要素、組件和/或其組合的存在或添加。
雖然為了視頻編碼裝置/解碼裝置中的不同特色功能的描述簡(jiǎn)便獨(dú)立地示出了附圖中示出的要素,但是這種配置不是指示每個(gè)要素通過(guò)單獨(dú)硬件組件或軟件組件來(lái)構(gòu)造。即,至少兩個(gè)要素可以被組合成單一要素,或者單一要素可以被劃分成多個(gè)要素以執(zhí)行這些功能。應(yīng)該注意的是,其中一些要素被集成到一個(gè)被組合的要素和/或一個(gè)要素被劃分成多個(gè)單獨(dú)要素的實(shí)施例被包括在本發(fā)明的范圍內(nèi),而不脫離本發(fā)明的本質(zhì)。
在下文,將參考附圖詳細(xì)描述本發(fā)明的示例性實(shí)施例。附圖中相同附圖標(biāo)記表示相同要素,但是相同要素的多余描述將在此省略。
圖1是示意地示出根據(jù)本發(fā)明的示例性實(shí)施例的視頻編碼裝置的框圖。參考圖1,視頻編碼裝置100包括圖片分割模塊105、預(yù)測(cè)模塊110、變換模塊115、量化模塊120、重新排列模塊125、熵編碼模塊130、去量化模塊135、逆變換模塊140、濾波器模塊145和存儲(chǔ)器150。
圖片分割模塊105可以將輸入圖片分割成至少一個(gè)塊作為處理單元。在此,作為處理單元的塊可以是預(yù)測(cè)單元(pu)、變換單元(tu)或編譯單元(cu)。
通過(guò)圖片分割模塊105所分割的處理單元塊可以具有四叉樹結(jié)構(gòu)。
預(yù)測(cè)模塊110可以包括執(zhí)行幀間預(yù)測(cè)的幀間預(yù)測(cè)模塊和執(zhí)行幀內(nèi)預(yù)測(cè)的幀內(nèi)預(yù)測(cè)模塊,其將被進(jìn)行描述。預(yù)測(cè)模塊110通過(guò)對(duì)來(lái)自分割模塊105的圖片的處理單元執(zhí)行預(yù)測(cè),生成預(yù)測(cè)塊。預(yù)測(cè)模塊110中的圖片的處理單元可以是cu、tu或pu。此外,預(yù)測(cè)模塊110可以確定對(duì)處理單元執(zhí)行的預(yù)測(cè)是否是幀間預(yù)測(cè)或幀內(nèi)預(yù)測(cè),并且確定每種預(yù)測(cè)方法的細(xì)節(jié)(例如,預(yù)測(cè)模式)。在此,在其上執(zhí)行預(yù)測(cè)的處理單元不同于預(yù)測(cè)方法和關(guān)于該預(yù)測(cè)方法的細(xì)節(jié)被確定用于的處理單元。例如,針對(duì)每個(gè)pu可以確定預(yù)測(cè)方法和預(yù)測(cè)模式,而針對(duì)每個(gè)tu可以執(zhí)行預(yù)測(cè)。
在幀間預(yù)測(cè)中,基于關(guān)于當(dāng)前圖片的先前和/或隨后圖片的至少一個(gè)的信息,通過(guò)執(zhí)行預(yù)測(cè)可以生成預(yù)測(cè)塊。在幀內(nèi)預(yù)測(cè)中,基于關(guān)于當(dāng)前圖片內(nèi)的像素的信息,通過(guò)執(zhí)行預(yù)測(cè)可以生成預(yù)測(cè)塊。
跳過(guò)模式、合并模式和運(yùn)動(dòng)矢量預(yù)測(cè)(mvp)可以被用作幀間預(yù)測(cè)方法。在幀間預(yù)測(cè)中,用于pu的參考圖片可以被選擇,并且與pu相對(duì)應(yīng)的參考?jí)K可以被選擇??梢詫⒖?jí)K選擇作為幀間像素的單元。隨后,具有關(guān)于當(dāng)前pu的最小殘留信號(hào)和具有最小大小運(yùn)動(dòng)矢量的預(yù)測(cè)塊被生成。
預(yù)測(cè)塊可以被生成作為整數(shù)采樣單元或作為小于整數(shù)像素,諸如1/2像素單元和1/4像素單元的像素單元。在此,以比整數(shù)像素更小的單元表示運(yùn)動(dòng)矢量。
包括在幀間預(yù)測(cè)中所選擇的參考像素的索引、運(yùn)動(dòng)矢量(例如,運(yùn)動(dòng)矢量預(yù)測(cè))和殘留信號(hào)的信息,被熵編碼和傳輸?shù)浇獯a裝置。在跳過(guò)模式中,因?yàn)轭A(yù)測(cè)塊可以是重建塊而非殘留,所以該殘留可以不被生成、變換、量化和傳輸。
在幀內(nèi)預(yù)測(cè)中,預(yù)測(cè)模式由pu確定,并且預(yù)測(cè)可以由pu確定??商孢x地,可以由pu確定預(yù)測(cè)模式,并且在tu中可以執(zhí)行幀內(nèi)預(yù)測(cè)。
幀內(nèi)預(yù)測(cè)可以包括33個(gè)方向預(yù)測(cè)模式和兩個(gè)或更多個(gè)非方向模式。非方向模式可以包括dc預(yù)測(cè)模式和平面模式。
在幀內(nèi)預(yù)測(cè)中,在將濾波器應(yīng)用到參考采樣之后,可以生成預(yù)測(cè)塊。在此,根據(jù)幀內(nèi)預(yù)測(cè)模式和/或當(dāng)前塊的大小,可以確定是否將該濾波器應(yīng)用到參考采樣。
pu可以具有不同大小和形式。例如,在幀間預(yù)測(cè)中,pu可以是2n×2n、2n×n、n×2n或n×n塊(n是整數(shù))。在幀內(nèi)預(yù)測(cè)中,pu可以是2n×2n或n×n塊(n是整數(shù))。在此,具有n×n大小的pu可以僅被應(yīng)用到特殊情形。例如,n×npu可以僅用于具有最小大小的cu或僅用于幀內(nèi)預(yù)測(cè)。除了具有前述大小的pu之外,pu可以包括n×mn、mn×n、2n×mn和mn×2n塊(m<1)。
在被生成的預(yù)測(cè)塊和原始?jí)K之間的殘留值(殘留塊或殘留信號(hào))被輸入到變換模塊115。同時(shí),關(guān)于用于預(yù)測(cè)的預(yù)測(cè)模式和運(yùn)動(dòng)矢量的信息通過(guò)熵編碼模塊130與殘留值一起被編碼,并且被傳送到解碼裝置。
變換模塊115通過(guò)tu變換殘留塊,并且生成變換系數(shù)。
變換塊是相同變換被應(yīng)用到的采樣的矩形塊。變換塊可以是tu并且具有四叉樹結(jié)構(gòu)。
基于應(yīng)用到殘留塊的預(yù)測(cè)模式和塊的大小,變換模塊115可以執(zhí)行變換。
例如,當(dāng)將幀內(nèi)預(yù)測(cè)應(yīng)用到殘留塊并且該塊具有4x4殘留陣列時(shí),變換模塊115可以使用離散余弦變換(dct)變換殘留塊。否則,變換模塊115可以使用離散正弦變換(dst)變換殘留塊。
變換模塊115通過(guò)變換可以生成變換系數(shù)的變換塊。
量化模塊120可以量化通過(guò)變換模塊115變換的殘留值,即,變換系數(shù),以生成被量化的變換系數(shù)。通過(guò)量化模塊120生成的系數(shù)被提供到去量化模塊135和重新排列模塊125。
重新排列模塊125重新排列由量化模塊120提供的被量化的變換系數(shù)。重新排列被量化的變換系數(shù)可以增強(qiáng)熵編碼模塊130中的編碼效率。
重新排列模塊125使用系數(shù)掃描可以將被量化的變換系數(shù)的二維(2d)塊重新排列成一維(1d)矢量。
熵編碼模塊130可以熵編碼由重新排列模塊125重新排列的被量化的變換系數(shù)。諸如指數(shù)golomb、上下文自適應(yīng)可變長(zhǎng)度編碼(cavlc)和上下文自適應(yīng)二進(jìn)制算法編碼(cabac)的各種編碼方法可以用于熵編碼。熵編碼模塊130可以編碼從重新排列模塊125和預(yù)測(cè)模塊110接收到的各種類型的信息,諸如關(guān)于被量化的變換系數(shù)和cu的塊類型的信息、預(yù)測(cè)模式信息、分割單元信息、pu信息、傳送單元信息、運(yùn)動(dòng)矢量信息、參考圖片信息、塊插值信息和濾波信息。
此外,熵編碼模塊130在必要時(shí)可以將更改應(yīng)用到被接收的參數(shù)集或語(yǔ)法。
去量化模塊135去量化由量化模塊120量化的值,即,被量化的變換系數(shù),并且逆變換模塊140逆變換由去量化模塊135去量化的值。
通過(guò)去量化模塊135和逆變換模塊生成的殘留值與由預(yù)測(cè)模塊110預(yù)測(cè)的預(yù)測(cè)模塊合并,從而生成重建塊。
圖1示出通過(guò)加法器將殘留塊和預(yù)測(cè)塊合并生成的重建塊。在此,可以將加法器視為用于生成重建塊的單獨(dú)模塊(重建塊生成模塊)。
濾波器模塊145可以將解塊濾波器、自適應(yīng)環(huán)路濾波器(alf)和采樣自適應(yīng)偏移(sao)應(yīng)用到重建圖片。
解塊濾波器可以移除在重建圖片中的塊之間的邊界上生成的塊失真?;谕ㄟ^(guò)將使用解塊濾波器由濾波塊所獲得的重建圖片和原始圖片進(jìn)行比較所獲得的值,alf可以執(zhí)行濾波。僅為高效率可以采用alf。sao通過(guò)像素單元,重建解塊濾波器已被應(yīng)用到的殘留快和原始圖片之間的偏移差,其中頻帶偏移或邊緣偏移被使用。
同時(shí),濾波器模塊145可以不將濾波應(yīng)用到幀間預(yù)測(cè)中使用的重建塊。
存儲(chǔ)器150可以存儲(chǔ)經(jīng)由濾波器模塊145所獲得的圖片或重建塊??梢詫⒋鎯?chǔ)在存儲(chǔ)器150中的重建塊或圖片提供到執(zhí)行幀間預(yù)測(cè)的預(yù)測(cè)模塊110。
圖2是示意地示出根據(jù)本發(fā)明的示例性實(shí)施例的視頻解碼裝置的框圖。參考圖2,視頻解碼裝置200可以包括熵解碼模塊210、重新排列模塊215、去量化模塊220、逆變換模塊225、預(yù)測(cè)模塊230、濾波器模塊235和存儲(chǔ)器240。
當(dāng)從視頻編碼裝置輸入視頻比特流時(shí),根據(jù)通過(guò)其視頻編碼裝置處理視頻信息的逆處理可以解碼輸入比特流。
例如,當(dāng)視頻編碼裝置使用諸如cavlc的可變長(zhǎng)度編碼(vlc)以執(zhí)行熵編碼時(shí),熵解碼模塊210使用與編碼裝置中所使用的相同的vlc表,可以執(zhí)行熵解碼。此外,如果視頻編碼裝置使用cabac以執(zhí)行熵編碼,則熵解碼模塊210使用cabac也可以執(zhí)行熵解碼。
在由熵解碼模塊210解碼的信息片中,用于生成預(yù)測(cè)塊的信息可以被提供到預(yù)測(cè)模塊230,并且殘留值,即,被量化的變換系數(shù),可以被輸入到重新排列模塊215。
基于在編碼裝置中所使用的重新排列方法,重新排列模塊215可以重新排列關(guān)于由熵解碼模塊210熵解碼的比特流的信息,即,被量化的變換系數(shù)。
重新排列模塊215可以將系數(shù)的1d矢量重建和重新排列成系數(shù)的2d塊?;诋?dāng)前塊(變換塊)的預(yù)測(cè)模式和該變換塊的大小,重新排列模塊215可以掃描系數(shù),以生成系數(shù)(被量化的變換系數(shù))的2d塊。
基于從編碼裝置提供的量化參數(shù)和該塊的被重新排列的系數(shù),去量化模塊220可以執(zhí)行去量化。
響應(yīng)于由編碼裝置的變換模塊執(zhí)行的dct和dst,逆變換模塊225可以對(duì)由視頻編碼裝置執(zhí)行的量化的結(jié)果,執(zhí)行逆dct和/或逆dst。
在由視頻編碼裝置確定的圖片的傳輸單元或分割單元的基礎(chǔ)上,可以執(zhí)行逆變換。根據(jù)多個(gè)信息元素,諸如預(yù)測(cè)方法、當(dāng)前塊的大小和預(yù)測(cè)方向,視頻編碼裝置的變換模塊可以選擇地執(zhí)行dct和/或dst,并且在關(guān)于由視頻編碼裝置的變化模塊所執(zhí)行的變換的信息的基礎(chǔ)上,視頻解碼裝置的逆變換模塊225可以執(zhí)行逆變換。
基于關(guān)于從熵解碼模塊210提供的預(yù)測(cè)塊的生成的信息和關(guān)于由存儲(chǔ)器240提供的先前解碼的塊和/或圖片的信息,預(yù)測(cè)模塊230可以生成預(yù)測(cè)塊。
如果用于當(dāng)前pu的預(yù)測(cè)模式是幀內(nèi)預(yù)測(cè)模式,則基于關(guān)于當(dāng)前圖片的像素的信息可以執(zhí)行幀內(nèi)預(yù)測(cè),以生成預(yù)測(cè)塊。
如果用于當(dāng)前pu的預(yù)測(cè)模式是幀間預(yù)測(cè)模式,則基于關(guān)于當(dāng)前圖片的先前和隨后圖片中的至少一個(gè)的信息,可以執(zhí)行用于當(dāng)前pu的幀間預(yù)測(cè)。在此,由視頻編碼裝置提供的當(dāng)前pu的幀間預(yù)測(cè)所需要的運(yùn)動(dòng)信息,例如關(guān)于運(yùn)動(dòng)矢量和參考圖片索引的信息,可以通過(guò)檢查從編碼裝置接收的跳躍標(biāo)志和合并標(biāo)志推導(dǎo)出。
使用由預(yù)測(cè)模塊230生成的預(yù)測(cè)塊和由逆變換模塊225提供的殘留塊,可以生成重建塊。圖2示出由加法器將預(yù)測(cè)塊和殘留快合并而生成的重建塊。在此,可以將加法器視為用于生成重建塊的單獨(dú)模塊(重建塊生成模塊)。
當(dāng)跳過(guò)模式被使用時(shí),在沒有傳輸殘留塊的情形下,預(yù)測(cè)塊可以是重建塊。
重建塊和/或圖片可以被提供到濾波器模塊235。濾波器模塊235可以將解塊濾波、sao和/或afl應(yīng)用到重建塊和/或圖片。
存儲(chǔ)器240可以存儲(chǔ)重建圖片或塊以被用作參考圖片或參考?jí)K,并且將重建圖片供應(yīng)到輸出單元。
圖3示出通過(guò)解碼裝置處理的被編譯的視頻的分層結(jié)構(gòu)。
可以將編譯視頻信號(hào)劃分成與解碼視頻和與處理該視頻本身相關(guān)的視頻編碼層(vcl)和位于vcl和低層系統(tǒng)之間的網(wǎng)絡(luò)抽象層(nal),該低層系統(tǒng)可以傳輸和存儲(chǔ)編碼信息。
作為nal的基本單元的nal單元用作將編譯視頻映射到低層系統(tǒng)位串,諸如根據(jù)預(yù)定標(biāo)準(zhǔn)、實(shí)時(shí)傳送協(xié)議(rtp)和傳送流(ts)的文件格式。
同時(shí),與視頻解碼額外所需要的序列的報(bào)頭和圖片和輔助增強(qiáng)信息(sei)消息相對(duì)應(yīng)的參數(shù)集(圖片參數(shù)集、序列參數(shù)集和視頻參數(shù)集),與關(guān)于視頻(片數(shù)據(jù))的信息分離。
如圖3中所示,nal單元包括nal報(bào)頭和在vcl中生成的原始字節(jié)序列負(fù)荷(rbsp,來(lái)自視頻壓縮的結(jié)果數(shù)據(jù))的兩個(gè)部分。nal報(bào)頭包括關(guān)于相對(duì)應(yīng)nal單元的類型的信息。
根據(jù)在vcl中生成的rbsp,可以將nal單元分類成vclnal單元和非vclnal單元。vclnal單元是包括關(guān)于視頻的信息的nal,并且非vclnal單元是包括解碼該視頻所需要的信息(參數(shù)集或sei消息)的nal單元。
根據(jù)包括在nal單元中的圖片的屬性和類型,vclnal單元可以被劃分成不同的類型。
圖4示出隨機(jī)可接入的圖片。
隨機(jī)可接入的圖片,即,作為隨機(jī)接入點(diǎn)的幀內(nèi)隨機(jī)接入點(diǎn)(irap)圖片是按照隨機(jī)接入的解碼順序的比特流的第一圖片,并且僅包括i片。
圖4示出了圖片的輸出順序或顯示順序和解碼順序。如圖4中所示,圖片的輸出順序可以與圖片的解碼順序不同。為了描述簡(jiǎn)便,可以將圖片劃分成組。
第一組(i)中的圖片按照輸出順序和解碼順序都在irap圖片之前,而第二組(ii)中的圖片按照輸出順序在irap之前,但是按照解碼順序在irap圖片之后。第三組(iii)中的圖片按照輸出順序和解碼順序跟隨irap圖片。
可以將第一組(i)中的圖片解碼和輸出,無(wú)論irap圖片如何。
在irap圖片之前輸出的第二組(ii)中的圖片稱為前導(dǎo)圖片,其在將irap圖片用作隨機(jī)接入點(diǎn)時(shí)在解碼處理中可能導(dǎo)致問(wèn)題,將對(duì)其進(jìn)行詳細(xì)描述。
依照輸出和解碼順序跟隨irap圖片的第三組(iii)中的圖片被稱為正常圖片。正常圖片未被用作前導(dǎo)圖片的參考圖片。
在發(fā)生隨機(jī)接入所在的比特流中的隨機(jī)接入點(diǎn)是irap圖片,并且當(dāng)?shù)诙M(ii)中的第一圖片被輸出時(shí)隨機(jī)接入開始。
同時(shí),irap圖片可以是即時(shí)解碼刷新(idr)圖片和凈隨機(jī)接入(cra)圖片中的任何一個(gè)。
圖5示出idr圖片。
當(dāng)圖片組(gop)具有封閉結(jié)構(gòu)時(shí),idr圖片是隨機(jī)接入點(diǎn)。idr圖片是irap圖片并且因此僅包括i片。ird圖片在解碼過(guò)程中可以是第一圖片,或者可以出現(xiàn)在比特流的中間。當(dāng)idr圖片被解碼時(shí),存儲(chǔ)在解碼圖片緩沖器(dpb)中的所有參考圖片被指示為“未用于參考”。
在圖5中,條形表示圖片,并且箭頭指示關(guān)于一個(gè)圖片是否可以使用另一圖片作為參考圖片的參考關(guān)系。在箭頭上的x標(biāo)記指示圖片(多個(gè)圖片)不是指由箭頭所表示的圖片。
如圖5中所示,idr圖片的poc是32,并且具有范圍從25至31的poc和在idr圖片之間被輸出的圖片是前導(dǎo)圖片510。具有大于33的poc的圖片是正常圖片520。
在idr圖片之間的前導(dǎo)圖片510可以使用idr圖片,但是作為參考圖片的其它前導(dǎo)圖片不使用前導(dǎo)圖片510之前的先前圖片530。
跟隨idr圖片的正常圖片520可以通過(guò)參考idr圖片、前導(dǎo)圖片和其它正常圖片被解碼。
圖6示出cra圖片。
當(dāng)圖片組(gop)具有開放結(jié)構(gòu)時(shí),cra圖片是隨機(jī)接入點(diǎn)。cra圖片也是irap圖片并且因此僅包括i片。在解碼過(guò)程中ird圖片是比特流中的第一圖片,或者出現(xiàn)在正常播放的比特流中間。
當(dāng)被編譯的圖片被拼接或者將比特流在中間切斷時(shí),該cra圖片作為隨機(jī)接入點(diǎn)可以在比特流的中間存在。
在圖6中,條形表示圖片,并且箭頭指示關(guān)于一個(gè)圖片是否可以使用另一圖片作為參考圖片的參考關(guān)系。箭頭上的x標(biāo)記指示圖片(多個(gè)圖片)不是指由箭頭所指示的圖片。
在cra圖片之前的前導(dǎo)圖片610可以使用所有cra圖片、其它前導(dǎo)圖片以及在作為參考圖片的前導(dǎo)圖片710之前的先前圖片630。
然而,跟隨cra圖片的正常圖片620可以通過(guò)參考cra圖片和其它正常圖片來(lái)解碼,但是不能使用前導(dǎo)圖片610作為參考圖片。
圖7示出其中在前導(dǎo)圖片之前的圖片不可用的情形。
前導(dǎo)圖片710按照輸出順序在cra圖片之前,并且因此在cra圖片之前被輸出,但是在cra圖片之后被解碼。前導(dǎo)圖片710可以是指先前圖片730中的至少一個(gè)。
如圖7中所示,當(dāng)比特流在中間被切斷或者丟失時(shí),或者伴隨圖片被拼接cra圖片意外地發(fā)生隨機(jī)接入時(shí),按照解碼順序在cra圖片之前的先前圖片730是不可用的。因?yàn)樽鳛榍皩?dǎo)圖片710的可能參考圖片的先前圖片730是不可用的,所以表示不可用圖片的前導(dǎo)圖片不能被適當(dāng)解碼。
其中前導(dǎo)圖片的參考圖片是不可用的情形可以包括以下情形,其中前導(dǎo)圖片包括作為參考圖片在比特流中不存在的圖片,或者前導(dǎo)圖片的參考圖片在解碼圖片緩沖器(dpb)中不存在。
為了解決上述問(wèn)題,根據(jù)本發(fā)明的示例性實(shí)施例的視頻處理裝置不輸出稱為不可用的參考圖片的前導(dǎo)圖片。
圖8是示出根據(jù)本發(fā)明的示例性實(shí)施例的視頻處理裝置的框圖。如圖8中所示,視頻處理裝置800包括比特流接收器810和視頻處理器820。
視頻處理裝置800可以包括含有視頻處理器820的模塊或設(shè)備,以執(zhí)行解碼處理。視頻處理裝置800可以被提供作為電視、視頻播放器和能夠解碼和輸出視頻的各種終端。
比特流接收器810接收包括多個(gè)圖片的比特流。
由比特流接收器810接收的比特流通過(guò)視頻處理器820經(jīng)由解碼處理被輸出為視頻。
比特流接收器810可以包括解析模塊,以解析輸入比特流,以獲得解碼圖片所需要的信息。
視頻處理器820可以包括含有圖2中所描述的組件的解碼裝置或者執(zhí)行解碼的解碼模塊?;趨⒖紙D片的可用性本實(shí)施例的視頻處理器820確定是否輸出前導(dǎo)圖片。
圖9是示出根據(jù)本發(fā)明的示例性實(shí)施例的視頻處理裝置800的視頻處理方法的流程圖。
視頻處理裝置800接收包括多個(gè)圖片的比特流(s901)。
圖片可以包括作為隨機(jī)接入點(diǎn)的idr圖片或cra圖片。此外,圖片可以包括按照輸出順序在隨機(jī)接入點(diǎn)圖片之前但是按照解碼順序在隨機(jī)接入點(diǎn)圖片之后的前導(dǎo)圖片。
當(dāng)前導(dǎo)圖片的至少一個(gè)參考圖片是不可用時(shí),視頻處理器820不輸出前導(dǎo)圖片(s902)。
不輸出前導(dǎo)圖片的操作可以包括移除和丟棄來(lái)自比特流的前導(dǎo)圖片。從解碼處理和輸出處理排除被丟棄的前導(dǎo)圖片。
當(dāng)表示不可用的參考圖片的前導(dǎo)圖片存在時(shí),視頻處理器820確定比特流滿足預(yù)定比特流一致性并且執(zhí)行將前導(dǎo)圖片從輸出視頻排除的默認(rèn)行為。
通過(guò)不可解碼的前導(dǎo)圖片執(zhí)行默認(rèn)行為,從而防止在視頻處理裝置800中可能發(fā)生的故障和錯(cuò)誤。此外,視頻處理裝置800可以適當(dāng)?shù)靥幚砥渲幸馔獾碾S機(jī)接入發(fā)生的比特流。
在從解碼處理和輸出處理排除前導(dǎo)圖片之后,視頻處理器820解碼被排除的前導(dǎo)圖片之后的圖片(s903)。
被排除的前導(dǎo)圖片之后的圖片是指可正常解碼的圖片,無(wú)論在該比特流中的丟失的參考圖片或不存在的參考圖片如何。
在此,視頻處理器820延遲解碼隨后圖片預(yù)定延遲時(shí)間,以便保持輸入比特流的圖片比特串,即,防止存儲(chǔ)圖片的緩沖器的溢出或下溢。視頻處理器820可以包括存儲(chǔ)編譯圖片的編譯圖片緩沖器(cpb)和存儲(chǔ)解碼圖片的解碼圖片緩沖器(dpb)。
圖10示出移除根據(jù)本發(fā)明的示例性實(shí)施例的前導(dǎo)圖片。
如圖10中所示,前導(dǎo)圖片可以包括第一前導(dǎo)圖片1010和第二前導(dǎo)圖片1020。
包括在第一組i中的圖片包括前導(dǎo)圖片不能涉及的圖片。第一組i可以包括目前被解碼的圖片,即,cra圖片和與前導(dǎo)圖片1010和1020無(wú)關(guān)的圖片。
第一前導(dǎo)圖片1010是指不能正常解碼的圖片,例如,指不可用的參考圖片的圖片,并且第二前導(dǎo)圖片1020是無(wú)論第一前導(dǎo)圖片1010如何將要正常解碼的圖片。
在前導(dǎo)圖片1010和1020中,b0、b1和b2是第一前導(dǎo)圖片1010,并且b3至b6是第二前導(dǎo)圖片1020。
根據(jù)本發(fā)明,不可解碼的第一前導(dǎo)圖片101從解碼處理和輸出處理排除??梢詫⒌谝磺皩?dǎo)圖片1010從比特流移除和丟棄。
視頻處理器820解碼和輸出第二前導(dǎo)圖片1020,從解碼處理和輸出處理排除第一前導(dǎo)圖片1010。當(dāng)?shù)诙皩?dǎo)圖片1020被輸出時(shí),隨機(jī)接入開始。
在此,考慮關(guān)于被移除的前導(dǎo)圖片1010的比特流定時(shí),視頻處理器820可以延遲解碼第二前導(dǎo)圖片1020。
圖11示出根據(jù)本發(fā)明的另一示例性實(shí)施例移除前導(dǎo)圖片。
如圖11中所示,前導(dǎo)圖片可以包括第一前導(dǎo)圖片1110和第二前導(dǎo)圖片1120。
如上文所述,第一前導(dǎo)圖片1110是指不被正常解碼的圖片,例如是指不可用的參考圖片的圖片,并且第二前導(dǎo)圖片1120是無(wú)論第一前導(dǎo)圖片1110如何也被正常解碼的圖片。
在前導(dǎo)圖片1110和1120中,b0、b1和b2是第一前導(dǎo)圖片1110,并且b3至b6是第二前導(dǎo)圖片1120。
根據(jù)本實(shí)施例,視頻處理器820從解碼處理和輸出處理,不僅排除不可解碼的第一前導(dǎo)圖片1110也可以排除可正常解碼的第二前導(dǎo)圖片1120。視頻處理器820可以移除和丟棄來(lái)自該比特流的第一前導(dǎo)圖片1110和第二前導(dǎo)圖片1120。
視頻處理器820解碼和輸出在從解碼處理和輸出處理排除的第一前導(dǎo)圖片1110和第二前導(dǎo)圖片1120之后的圖片,即,在第三組iii中的圖片。
在此,視頻處理器820可以延遲解碼隨后圖片預(yù)定延遲時(shí)間,以便防止被移除的前導(dǎo)圖片1110和1120的緩沖器的溢出或下溢。
在自從作為隨機(jī)接入點(diǎn)的cra圖片被解碼預(yù)定延遲時(shí)間之后,第三組iii中的圖片被解碼,并且隨后顯示被解碼的car圖片和在第三組iii中的圖片。
圖12示出根據(jù)本發(fā)明的又一示例性實(shí)施例移除前導(dǎo)圖片。
如圖12中所示,前導(dǎo)圖片可以包括僅指不可用參考圖片的第一前導(dǎo)圖片1210。即,在cra圖片之后的第二組ii中的圖片b0至b6是表示不可用參考圖片的第一前導(dǎo)圖片1210。
視頻處理器820可以從解碼處理和輸出處理排除不可解碼的所有第一前導(dǎo)圖片1210??梢砸瞥蛠G棄來(lái)自比特流的第一前導(dǎo)圖片1210。
視頻處理器820解碼和輸出在從解碼處理和輸出處理排除的第一前導(dǎo)圖片1210之后的第三組iii中的圖片。
在自從作為隨機(jī)接入點(diǎn)的cra圖片被解碼預(yù)定延遲時(shí)間之后,視頻處理器820解碼第三組iii中的圖片,并且隨后輸出被解碼的cra圖片和在第三組中的圖片。
圖13是示出根據(jù)本發(fā)明的另一示例性實(shí)施例的視頻處理方法的流程圖。
接收包括多個(gè)圖片的比特流(s1301)。
圖片可以包括隨機(jī)接入點(diǎn)圖片、按照輸出順序在隨機(jī)接入點(diǎn)圖片之前和按照解碼順序在隨機(jī)接入點(diǎn)圖片之后的前導(dǎo)圖片,和按照輸出順序和解碼順序兩者在隨機(jī)接入點(diǎn)圖片之后的正常圖片。前導(dǎo)圖片可以包括不可解碼的第一前導(dǎo)圖片和可解碼的第二前導(dǎo)圖片中的至少一個(gè)。第一前導(dǎo)圖片可以指在比特流中不存在的圖片或不可用圖片。
當(dāng)?shù)谝磺皩?dǎo)圖片在比特流中存在時(shí),視頻處理器生成第一前導(dǎo)圖片的不可用參考圖片(s1302)。
雖然第一前導(dǎo)圖片不被輸出并且不能影響另一圖片的解碼處理,但是如果第一前導(dǎo)圖片被解碼,則通過(guò)生成用于第一前導(dǎo)圖片的不可用參考圖片,即,虛擬參考圖片,視頻處理器進(jìn)行操作。
不可用參考圖片的采樣值可以被生成為圖片具有的可能采樣值的中間值。
視頻處理器設(shè)置指示不可用參考圖片的輸出是否為0的標(biāo)志信號(hào)以便不輸出該圖片,并且處理將不被輸出的第一前導(dǎo)圖片(s1303)。
在處理不可解碼的第一前導(dǎo)圖片之后,視頻處理器解碼可正常解碼的第二前導(dǎo)圖片。
根據(jù)本發(fā)明,視頻處理裝置可以接收關(guān)于前導(dǎo)圖片的標(biāo)志信息,并且基于被接收的標(biāo)志信息處理前導(dǎo)圖片。表1示出包括關(guān)于前導(dǎo)圖片的標(biāo)志信息的語(yǔ)法。
表1
在表1中,當(dāng)broken_link_leading_pics_enable_flag是1時(shí),用于前導(dǎo)圖片的至少一個(gè)參考圖片是不可用的。當(dāng)broken_link_leading_pics_enable_flag是0時(shí),前導(dǎo)圖片不包括可用參考圖片。例如,當(dāng)參考圖片被丟失時(shí),broken_link_leading_pics_enable_flag是1。
當(dāng)broken_link_leading_pics_enable_flag是1時(shí),視頻處理器可以移除來(lái)自解碼處理和輸出處理的包括不可用參考圖片的前導(dǎo)圖片。
前導(dǎo)圖片可以包括不能正常解碼的第一前導(dǎo)圖片和可以正常解碼的第二前導(dǎo)圖片。
視頻處理器僅移除來(lái)自解碼和輸出處理的第一前導(dǎo)圖片,或者無(wú)論第一和第二前導(dǎo)圖片如何可以移除來(lái)自解碼和輸出處理的所有前導(dǎo)圖片。
可替選地,視頻處理器可以生成用于包括不可用參考圖片的第一前導(dǎo)圖片的不可用參考圖片。在該情形下,被生成的不可用參考圖片和第一前導(dǎo)圖片被輸出。
總之,視頻處理器可以接收指示用于前導(dǎo)圖片的至少一個(gè)參考圖片是不可用的標(biāo)志信息,并且基于該標(biāo)志信息執(zhí)行圖10至圖13中示出的操作之一。
同時(shí),視頻處理裝置不僅可以接收標(biāo)志信息broken_link_leading_pics_enable_flag,而且也可以分析包括在比特流的圖片的屬性,以設(shè)置broken_link_leading_pics_enable_flag。
基于上層系統(tǒng)級(jí)設(shè)置的標(biāo)志信息,視頻處理器可以移除來(lái)自解碼和輸出處理的前導(dǎo)圖片。
根據(jù)本發(fā)明的另一示例性實(shí)施例,當(dāng)表1的標(biāo)志信息被接收時(shí),視頻處理器可以確定該比特流不滿足預(yù)定的比特流一致性,并且執(zhí)行相對(duì)應(yīng)的隨后操作。
例如,視頻處理器可以停止解碼視頻并且輸出在解碼處理中導(dǎo)致的錯(cuò)誤??梢詫㈠e(cuò)誤信息報(bào)告給視頻處理器的上層系統(tǒng)級(jí),例如應(yīng)用或視頻播放器級(jí)。視頻處理器可以從上層系統(tǒng)級(jí)接收關(guān)于針對(duì)該錯(cuò)誤的隨后操作的指令,或者執(zhí)行默認(rèn)操作。
視頻處理器可以輸出該錯(cuò)誤并且隨后解碼前導(dǎo)圖片之后的可解碼圖片。
可替選地,視頻處理器可以確定當(dāng)用于前導(dǎo)圖片的至少一個(gè)參考圖片不可用時(shí)該比特流不可滿足預(yù)定比特流一致性。
即,當(dāng)發(fā)現(xiàn)不能正常解碼的圖片時(shí),視頻處理器可以確定該比特流不滿足預(yù)定比特流一致性,并且即使關(guān)于前導(dǎo)圖片的標(biāo)志信息未被接收也執(zhí)行相對(duì)應(yīng)的隨后操作。
視頻處理器可以停止解碼處理和輸出在該解碼處理中導(dǎo)致的錯(cuò)誤??梢詫㈠e(cuò)誤信息報(bào)告給視頻處理器的上層系統(tǒng)級(jí),例如,應(yīng)用或視頻播放器級(jí)。視頻處理器可以從上層系統(tǒng)級(jí)接收關(guān)于針對(duì)該錯(cuò)誤的隨后操作的指令,或者執(zhí)行默認(rèn)操作。
視頻處理器可以輸出該錯(cuò)誤并且隨后解碼在前導(dǎo)圖片之后的可解碼圖片。
雖然利用基于流程圖的一系列階段或塊已經(jīng)描述的說(shuō)明系統(tǒng)的方法,但是本發(fā)明不限于階段的上述順序。以與上述不同的順序或同時(shí)執(zhí)行一些階段。此外,應(yīng)該注意的是,因?yàn)樯鲜鰧?shí)施例可以包括示例的各種方面,所以實(shí)施例的組合可以被理解為本發(fā)明的示例性實(shí)施例。因此,本領(lǐng)域的技術(shù)人員將明白,在不脫離本發(fā)明的原理和精神、在隨附權(quán)利要求和它們等同物中所定義的范圍的情形下,可以對(duì)這些示例性實(shí)施方式進(jìn)行更改、修正和替換。