用于解碼增強型視頻流的方法和裝置的制造方法
【專利說明】用于解碼增強型視頻流的方法和裝置
[0001]本申請是分案申請,原案的國家申請號為200980107819.5,申請日為2009年3月4日,發明名稱為“用于解碼增強型視頻流的方法和裝置”。
[0002]相關申請的交叉引用
[0003]本申請基于35 USC 120要求2008年3月6日提交的美國臨時申請N0.61/034,370的權益,其全部公開內容通過引用并入這里用于所有的目的。
技術領域
[0004]本發明涉及用于解碼增強型視頻流的方法和裝置。
【背景技術】
[0005]參考附圖中的圖1,視頻編碼器10從諸如照相機的源接收通常為SMPTE 292M中定義的HD-SDI格式的原始視頻數據。視頻編碼器利用HD-SDI數據來生成視頻基礎流,并且將該視頻基礎流提供給視頻分組器(packetize1H,該視頻分組器14產生由可變長度的分組組成的視頻分組化基礎流(PES)。通常,視頻PES的每個分組包含一個或多個視頻幀。類似地,音頻編碼器(未示出)從例如麥克風接收原始音頻數據,并且將音頻基礎流提供給音頻分組器,該音頻分組器產生由可變長度的分組組成的音頻PES。
[0006]視頻分組器和音頻分組器將視頻PES和音頻PES提供到傳輸流復用器18,該傳輸流復用器18將不同的相應節目標識符(PID)指配給視頻PES和音頻PES,并且將視頻PES和音頻PES的可變長度的分組組織為固定長度的MPEG-2傳輸流(TS)分組,每個分組都具有包括PES的PID的報頭以及包含PES視頻(或音頻)數據的有效負載。
[0007]可以將由傳輸流復用器輸出的單節目傳輸流(SPTS)提供到節目復用器22,該節目復用器22將SPTS與傳送其它節目的其它傳輸流進行組合,以產生多節目傳輸流(MPTS)。通過信道將該MPTS發射到接收機,在接收機處,節目解復用器26從MPTS中分離選定的SPTS,并且將該選定的SPTS提供給傳輸流解復用器30。本領域技術人員將意識到,可以將由傳輸流復用器輸出的SPTS直接發射到傳輸流解復用器,而無需首先與其它傳輸流進行組合來創建MPTS,但是在任何一種情況下,傳輸流解復用器接收選定的SPTS的傳輸流分組,并且基于PID對它們進行分離,對傳輸流分組進行解分組以重建PES分組,并且將視頻PES指向所謂的視頻系統目標解碼器(T-STD) 34,并且將音頻PES指向音頻T-STD 38。本申請的主題涉及解碼視頻比特流,并且因此我們將不進一步討論音頻解碼器。
[0008]視頻T-STD 34包括系統目標解碼器緩沖器40和視頻解碼器42。STD緩沖器40在功能上等同于傳輸緩沖器Tb、復用緩沖器Mb和基礎流緩沖器Eb。傳輸緩沖器Tb以可變比特速率接收視頻PES,并且以恒定比特速率向復用緩沖器Mb輸出數據,該復用緩沖器Mb對視頻PES進行解分組,并且以恒定比特速率向基礎流緩沖器Eb提供編碼比特流。有時被稱作解碼器緩沖器或被稱作編碼圖像緩沖器(CPB)的基礎流緩沖器接收CBR比特流,并且保存用于解碼圖像的比特,直至它們在圖像解碼時立即由視頻解碼器全部移除。
[0009]對于解碼器的適當操作重要的是,解碼器緩沖器不應當溢出而使得丟失比特并且無法解碼圖像,也不應當下溢而使得解碼器缺少比特并且無法在適當時解碼圖像。將比特提供到解碼器緩沖器由壓縮數據緩沖器(⑶B)46來控制,該壓縮數據緩沖器(CBD)46從視頻編碼器10接收比特流。視頻編碼器以取決于⑶B充滿程度(fullness)的速率來向⑶B提供比特。⑶B以恒定速率向視頻分組器14提供比特,并且復用緩沖器以相同的速率向解碼器緩沖器提供比特,并且因此CDB的充滿程度反映了解碼器緩沖器的充滿程度。通過調整對⑶B的比特的提供來防止⑶B的溢出/下溢,避免了解碼器緩沖器的下溢/溢出。
[0010]管理編碼器的操作的視頻壓縮標準可以指定CDB應當不大于假定基準解碼器(hypothetical reference decoder)的解碼器緩沖器。
[0011]MPEG-2傳輸流被廣泛用于通過差錯信道進行的編碼視頻的遞送。MPEG-2系統層還支持在無差錯環境中的節目流(PS)中的編碼視頻的傳輸。圖1圖示了將視頻PES作為節目流發射到視頻P-STD 50,作為對作為傳輸流遞送到視頻T-STD 34的替代。
[0012]視頻編碼器10所產生的比特流可以遵循在通常被稱作H.264/AVC的IS0/IEC14496-10 (MPEG-4部分10)高級視頻編碼(AVC)中所指定的視頻壓縮標準。H.264/AVC使用圖像作為幀或場的統稱。H.264/AVC將訪問單元定義為網絡抽象層(NAL)單元的集合,并且指定訪問單元的解碼通常產生解碼圖像。AVC編碼器所產生的訪問單元的NAL單元可以是包含圖像信息的視頻編碼層(VCL)單元,或者是包含諸如隱蔽字幕(closed capt1ning)和定時的其它信息的非VCL單元。
[0013]H.264/AVC的附錄G規定了被稱作可分級視頻編碼或SVC的H.264/AVC的擴展。SVC將可分級的增強提供給AVC基本層,并且可分級性包括空間可分級性、時間可分級性、SNR可分級性以及比特深度可分級性。期望SVC編碼器產生符合H.264/AVC的基本層,并且在一個或多個增強層中對該基本層增加增強。在SVC的特定實施方式中所采用的每個類型的可分級性可以利用其自己的增強層。例如,如果原始視頻數據是由1920X1088像素的幀組成的稱為1080 HD的格式,則可以通過由能夠被解碼為704X480像素的圖像的訪問單元組成的子比特流來傳送基本層,而可以通過由使得適當的解碼器能夠通過將基本層訪問單元與增強層訪問單元進行組合來呈現1920X 1088像素的圖像的訪問單元組成的子比特流來傳送增強層。
[0014]能夠對基本層以及一個或多個增強層進行解碼的解碼器在這里被稱為SVC解碼器,而無法識別增強層并且僅能夠對基本層訪問單元進行解碼并且因此不具有SVC能力的解碼器在這里被稱作AVC解碼器。
[0015]由SVC編碼器產生的訪問單元不僅包括以上提到的通常稱為AVC NAL單元的基本層NAL單元,而且還包括SVC VCL NAL單元和SVC非VCL NAL單元。圖2示出了如SVC標準所規定的SVC訪問單元中的AVC NAL單元和SVC NAL單元的序列。例如,在編碼器產生兩個增強層的情況下,兩個增強層的非VCL NAL單元處于圖2中所示的序列的相鄰塊中,在包含AVC非VCL NAL單元和AVC VCL NAL單元的塊之間,并且兩個增強層的SVC VCL NAL單元處于在包含AVC VCL NAL單元的塊之后的序列的相鄰塊中。
[0016]從訪問單元提取基本層NAL單元的SVC解碼器僅選擇AVC非VCL NAL單元和AVCVCL NAL 單元。
[0017]H.264/AVC 指定了 5 比特的參數 nal_unit_type 或 NUT。基于 H.264/AVC,AVC NAL單元都具有1-13范圍內的NUT值。SVC添加了 NUT值14、20和15。然而,緊接在具有等于5或I的NUT的NAL單元之前的具有等于14的NUT的NAL單元用信號發送基本層條帶,使得作為非VCL NAL單元的這些NAL單元與AVC相兼容,并且能夠由AVC解碼器來進行解碼。
[0018]參考圖3,SVC解碼器10’生成傳送基本層以及例如兩個增強層ENHl和ENH2的單一比特流。根據其功能,解碼器可能期望僅接收和解碼基本層,或者接收和解碼基本層和增強層ENHl,或者接收和解碼基本層以及兩個增強層ENHl和增強層ENH2。基于MPEG-2系統標準和SVC的使用情況,編碼器可能不提供分別傳送僅基本層、基本層和增強層ENH1、以及基本層以及兩個增強層ENHl和增強層ENH2的三個比特流,而允許解碼器選擇它能夠解碼的任何一個比特流。編碼器必須在分離的比特流中提供基本層訪問單元以及每個增強層的一部分。原則上將能夠通過使用NAL分離器48基于NAL單元的NUT值來將單一比特流分成三個子比特流以符合MPEG-2系統標準。一個子比特流可以傳送基本層NAL單元,而其它兩個子比特流可以分別傳送兩個增強層的NAL單元。三個子比特流可以傳遞到相應的視頻分組器(通常由14來指示),該視頻分組器14創建相應的視頻PES。將三個視頻PES提供到包括與包括在SVC T-STD中的緩沖器等同的T-STD緩沖器的傳輸流復用器18,用于將三個分組器的輸出復用在一起。復用器18將向三個PES指配不同的PID,并且輸出傳送三個層的傳輸流。
[0019]因為沒有提供重組基本層單元和增強層訪問