編碼和解碼方法本申請是申請日為2008年4月7日、申請號為200880012349.X、發明名稱為“編碼系統”的發明專利申請的分案申請。相關申請的交叉引用本申請要求下列每一項的優先權,并且因此為所有目的將其以全文引用的方式并入本文中:(1)2007年4月18日提交(代理人案號PU070101)的美國臨時申請序號No.60/923,993,題為“SupplementalSequenceParameterSetforScalableVideoCodingorMulti-viewVideoCoding”以及(2)2007年6月28日提交(代理人案號PA070032)的美國專利申請序號No.11/824,006,題為“SupplementalSequenceParameterSetforScalableVideoCodingorMulti-viewVideoCoding”。技術領域至少一個實現方式涉及以可縮放方式對視頻數據進行編碼和解碼。
背景技術:當數據所針對的終端具有不同的能力并且因此不對全部數據流進行解碼而僅對全部數據流的一部分進行解碼時,根據多個層對視頻數據進行編碼可以是有用的。當以可縮放方式根據多個層對視頻數據進行編碼時,接收終端可以根據終端的簡檔從接收到的比特流中提取一部分數據。完整的數據流還可以傳輸用于每一個所支持的層的開銷信息,以便于在終端處對每一層進行解碼。
技術實現要素:根據一個總的方面,訪問來自序列參數集(“SPS”)網絡抽象層(“NAL”)單元的信息。所述信息描述在對圖像序列的第一層編碼進行解碼中使用的參數。還訪問來自補充SPSNAL單元的信息,補充SPSNAL單元具有與SPSNAL單元不同的結構。來自補充SPSNAL單元的信息描述在對圖像序列的第二層編碼進行解碼中使用的參數。基于第一層編碼、第二層編碼、所訪問的來自SPSNAL單元的信息、以及所訪問的來自補充SPSNAL單元的信息,來生成圖像序列的解碼。根據另一個總的方面,使用了一種語法結構,所述語法結構提供對圖像序列進行多層解碼。所述語法結構包括用于SPSNAL單元的語法,SPSNAL單元包括描述在對圖像序列的第一層編碼進行解碼中使用的參數的信息。所述語法結構還包括用于補充SPSNAL單元的語法,補充SPSNAL單元具有與SPSNAL單元不同的結構。補充SPSNAL單元包括描述在對圖像序列的第二層編碼進行解碼中使用的參數的信息。基于第一層編碼、第二層編碼、來自SPSNAL單元的信息、以及來自補充SPSNAL單元的信息,可以生成圖像序列的解碼。根據另一個總的方面,一種信號被格式化為包括來自SPSNAL單元的信息。所述信息描述在對圖像序列的第一層編碼進行解碼中使用的參數。所述信號還被格式化為包括來自補充SPSNAL單元的信息,補充SPSNAL單元具有與SPSNAL單元不同的結構。來自補充SPSNAL單元的信息描述在對圖像序列的第二層編碼進行解碼中使用的參數。根據另一個總的方面,生成SPSNAL單元,所述SPSNAL單元包括描述在對圖像序列的第一層編碼進行解碼中使用的參數的信息。生成補充SPSNAL單元,補充SPSNAL單元具有與SPSNAL單元不同的結構。補充SPSNAL單元包括描述在對圖像序列的第二層編碼進行解碼中使用的參數的信息。提供包括圖像序列的第一層編碼、圖像序列的第二層編碼、SPSNAL單元、以及補充SPSNAL單元在內的數據集合。根據另一個總的方面,使用了一種語法結構,所述語法結構提供對圖像序列進行多層編碼。所述語法結構包括用于SPSNAL單元的語法。SPSNAL單元包括描述在對圖像序列的第一層編碼進行解碼中使用的參數的信息。所述語法結構包括用于補充SPSNAL單元的語法。補充SPSNAL單元具有與SPSNAL單元不同的結構。補充SPSNAL單元包括描述在對圖像序列的第二層編碼進行解碼中使用的參數的信息。提供包括圖像序列的第一層編碼、圖像序列的第二層編碼、SPSNAL單元、以及補充SPSNAL單元在內的數據集合。根據另一個總的方面,訪問第一規范參數集合中的依賴于第一層的信息。所訪問的依賴于第一層的信息在對圖像序列的第一層編碼進行解碼中使用。訪問第二規范參數集合中的依賴于第二層的信息。所述第二規范參數集合具有與第一規范參數集合不同的結構。所訪問的依賴于第二層的信息在對圖像序列的第二層編碼進行解碼中使用。基于所訪問的依賴于第一層的信息或者所訪問的依賴于第二層的信息中的一個或者更多,來對圖像序列進行解碼。根據另一個總的方面,生成包括依賴于第一層的信息在內的第一規范參數集合。所述依賴于第一層的信息在對圖像序列的第一層編碼進行解碼中使用。生成具有與第一規范參數集合不同結構的第二規范參數集合。所述第二規范參數集合包括依賴于第二層的信息,所述依賴于第二層的信息在對圖像序列的第二層編碼進行解碼中使用。提供包括第一規范參數集合和第二規范參數集合在內的數據集合。根據另一個總的方面,一種用于多視點視頻編碼“MVC”的解碼方法,所述方法包括:訪問來自序列參數集網絡抽象層單元“SPSNAL單元”的信息,所述信息描述至少在對圖像序列中的第一MVC層編碼進行解碼中使用的參數;訪問來自補充SPSNAL單元的補充信息,補充SPSNAL單元具有與SPSNAL單元不同的NAL單元類型代碼,并且具有與SPSNAL單元不同的語法結構,并且來自補充SPSNAL單元的補充信息描述在對圖像序列中的第二MVC層編碼進行解碼中使用的參數;以及基于來自SPSNAL單元的訪問的信息對第一MVC層的編碼進行解碼,以及基于來自補充SPSNAL單元的訪問的補充信息對第二MVC層的編碼進行解碼。根據另一個總的方面,一種用于多視點視屏編碼“MVC”處理的方法,所述方法包括:訪問來自序列參數集網絡抽象層單元“SPSNAL單元”的信息,所述信息描述至少在對圖像序列中的第一MVC層編碼進行解碼中使用的參數;訪問來自補充SPSNAL單元的補充信息,補充SPSNAL單元具有與SPSNAL單元不同的NAL單元類型代碼,并且具有與SPSNAL單元不同的語法結構,并且來自補充SPSNAL單元的補充信息描述MVC視頻可用性信息“VUI”參數,該參數在對圖像序列中的第二MVC層編碼進行解碼中使用,其中,在包括時間指示符的補充信息中反映不同的結構,所述時間指示符指示MVCVUI參數應用于第二MVC層的編碼;以及基于來自SPSNAL單元的訪問的信息對第一MVC層的編碼進行解碼,以及基于來自補充SPSNAL單元的訪問的補充信息對第二MVC層的編碼進行解碼。根據另一個總的方面,一種用于多視點視頻編碼“MVC”處理的編碼方法,所述方法包括:生成序列參數集網絡抽象層單元“SPSNAL單元”的信息,所述信息描述至少在對圖像序列中的第一MVC層編碼進行解碼中使用的參數;生成補充SPSNAL單元的補充信息,補充SPSNAL單元具有與SPSNAL單元不同的NAL單元類型代碼,并且具有與SPSNAL單元不同的語法結構,并且補充SPSNAL單元的補充信息描述在對圖像序列中的第二MVC層編碼進行解碼中使用的參數;基于生成的SPSNAL單元的信息來編碼以便生成第一MVC層的編碼;以及基于生成的補充SPSNAL單元的補充信息來編碼以便生成第二MVC層的編碼。根據另一個總的方面,一種用于多視點視頻編碼“MVC”處理的方法,所述方法包括:訪問來自序列參數集網絡抽象層單元“SPSNAL單元”的信息,所述信息描述至少在對圖像序列中的第一MVC層編碼進行解碼中使用的參數;訪問來自補充SPSNAL單元的補充信息,補充SPSNAL單元具有與SPSNAL單元不同的NAL單元類型代碼,并且具有與SPSNAL單元不同的語法結構,并且來自補充SPSNAL單元的補充信息描述MVC視頻可用性信息“VUI”參數,該參數在對圖像序列中的第二MVC層的編碼進行解碼中使用,以及基于來自SPSNAL單元的訪問的信息對第一MVC層的編碼進行解碼,以及基于來自補充SPSNAL單元的訪問的補充信息對第二MVC層的編碼進行解碼。根據另一個總的方面,一種用于多視點視頻編碼“MVC”處理的編碼方法,所述方法包括:生成序列參數集網絡抽象層單元“SPSNAL單元”的信息,所述信息描述至少在對圖像序列中的第一MVC層編碼進行解碼中使用的參數;生成補充SPSNAL單元的補充信息,補充SPSNAL單元具有與SPSNAL單元不同的NAL單元類型代碼,并且具有與SPSNAL單元不同的語法結構,并且補充SPSNAL單元的補充信息描述MVC視頻可用性信息“VUI”參數,該參數在對圖像序列中的第二MVC層編碼進行解碼中使用,其中,在包括時間指示符的補充信息中反映不同的結構,所述時間指示符指示MVCVUI參數應用于第二MVC層的編碼;基于生成的SPSNAL單元的信息來編碼以便生成第一MVC層的編碼;以及基于生成的補充SPSNAL單元的補充信息來編碼以便生成第二MVC層的編碼。根據另一個總的方面,一種方法,包括:訪問來自序列參數集“SPS”網絡抽象層“NAL”單元的信息,所述信息描述在對圖像序列中的圖像的第一層編碼進行解碼中使用的參數;訪問來自補充SPSNAL單元的補充信息,補充SPSNAL單元具有與SPSNAL單元不同的NAL單元類型代碼,并且具有與SPSNAL單元不同的語法結構,并且來自補充SPSNAL單元的補充信息描述在對圖像序列中的圖像的第二層編碼進行解碼中使用的參數;以及分別基于來自SPSNAL單元的訪問的信息,和來自補充SPSNAL單元的訪問的補充信息,對第一層編碼和第二層編碼進行解碼。在下面的附圖和描述中闡述了一個或者更多實現方式的細節。即使以一個特定方式來描述,也應當清楚,可以以各種方式來配置或者實施實現方式。例如,可以將實現方式作為方法執行,或者實施為設備,例如配置為執行操作集合的設備或者存儲用于執行操作集合的指令的設備,或者在信號中實施。通過結合附圖和權利要求來考慮的以下詳細描述,其它方面和特征將變得顯而易見。附圖說明圖1示出了編碼器的實現方式的框圖。圖1a示出了編碼器的另一個實現方式的框圖。圖2示出了解碼器的實現方式的框圖。圖2a示出了解碼器的另一個實現方式的框圖。圖3示出了單層序列參數集(“SPS”)網絡抽象層(“NAL”)單元的實現方式的結構。圖4示出了部分數據流的示例的方框視圖,示意了SPSNAL單元的使用。圖5示出了補充SPS(“SUPSPS”)NAL單元的實現方式的結構。圖6示出了SPS單元和多個SUPSPS單元之間的組織分級的實現方式。圖7示出了SUPSPSNAL單元的另一個實現方式的結構。圖8示出了生成SUPSPS單元的可縮放視頻編碼器的實現方式的功能視圖。圖9示出了生成包含SUPSPS單元的數據流的實現方式的分級視圖。圖10示出了由圖9的實施生成的數據流的示例的方框視圖。圖11示出了編碼器的實現方式的框圖。圖12示出了編碼器的另一個實現方式的框圖。圖13示出了由圖11或者12的編碼器所使用的編碼過程的實現方式的流程圖。圖14示出了由圖13的過程生成的數據流的示例的方框視圖。圖15示出了解碼器的實現方式的框圖。圖16示出了解碼器的另一個實現方式的框圖。圖17示出了由圖15或者16的解碼器所使用的解碼過程的實現方式的流程圖。具體實施方式今天存在多種可以根據不同層和/或簡檔來對視頻數據進行編碼的視頻編碼標準。其中,可以引用H.264/MPEG-4AVC(“AVC標準”),也稱作國際標準化組織/國際電子技術委員會(ISO/IEC)運動圖像專家組-4(MPEG-4)第10部分高級視頻編碼(AVC)標準/國際電信聯盟電信分部(ITU-T)H.264建議。此外,存在對于AVC標準的擴展。第一個這種擴展是可縮放視頻編碼(“SVC”)擴展(附錄G),稱作H.264/MPEG-4AVC,可縮放視頻編碼擴展(“SVC擴展”)。第二個這種擴展是多視點視頻編碼(“MVC”)擴展(附錄H),稱作H.264/MPEG-4AVC,MVC擴展(“MVC擴展”)。本公開中描述的至少一個實現方式可以與AVC標準以及SVC和MVC擴展一起使用。該實現方式提供具有與SPSNAL單元不同的NAL單元類型的補充(“SUP”)序列參數集(“SPS”)網絡抽象層(“NAL”)單元。SPS單元典型地包括(但不是必須包括)用于至少單個層的信息。此外,SUPSPSNAL單元包括用于至少一個附加層的依賴于層的信息。因此,通過訪問SPS和SUPSPS單元,解碼器具有對比特流進行解碼所需的可用特定(典型地為全部)依賴于層的信息。在AVC系統中使用該實現方式,不需要傳輸SUPSPSNAL單元,并且可以傳輸單層SPSNAL單元(如下所述)。在SVC(或者MVC)系統中使用該實現方式,除了SPSNAL單元之外,可以傳輸用于所需附加層(或者視點)的SUPSPSNAL單元。在包括AVC兼容解碼器和SVC兼容(或者MVC兼容)解碼器的系統中使用該實現方式,AVC兼容解碼器可以通過檢測NAL單元類型來忽略SUPSPSNAL單元。在每一種情況中,可以實現高效率和兼容性。上述實現方式還對施加下述要求的系統(標準或其它)提供益處:要求特定層共享首部信息(例如,SPS或者在SPS中典型攜帶的特定信息)。例如,如果基礎層及其合成時間層需要共享SPS,則不能用共享的SPS來傳輸依賴于層的信息。然而,SUPSPS提供了一種用于傳輸依賴于層的信息的機制。各種實現方式的SUPSPS還提供了高效的優點:SUPSPS不需要包括并且因此不需要重復SPS中的所有參數。SUPSPS將典型地專注于依賴于層的參數。然而,各種實現方式包括SUPSPS結構,該結構包括不依賴于層的參數,或者甚至重復全部SPS結構。各種實現方式涉及SVC擴展。SVC擴展提出根據多個空間等級、時間等級以及質量等級的視頻數據的傳輸。對于一個空間等級,可以根據多個時間等級來進行編碼,對于每一個時間等級,可以根據多個質量等級來進行編碼。因此,當定義有m個空間等級、n個時間等級、以及O個質量等級時,可以根據m*n*O個不同組合來對視頻數據進行編碼。將這些組合稱作層,或者互操作性點(“IOP”)。根據解碼器(也稱作接收機或者客戶端)的能力,可以傳輸不同層,多至與最大客戶端能力相對應的特定層。如本文所使用的,“依賴于層”的信息是指具體與單一層相關的信息。即,顧名思義,該信息依賴于特定層。這種信息不一定隨層與層而不同,但是典型地對于每一層單獨提供這種信息。如本文所使用的,“高等級語法”是指在比特流中出現的、在分級中位于宏塊層之上的語法。例如,如本文所使用的,高等級語法可以指(但不限于):片首部等級、補充增強信息(SEI)等級、畫面參數集(PPS)等級、序列參數集(SPS)等級、以及網絡抽象層(NAL)單元首部等級的語法。參見圖1,由參考數字100來總體指示示例SVC編碼器。SVC編碼器100還可以用于AVC編碼,即用于單層(例如基礎層)。此外,如本領域普通技術人員將理解的,SVC編碼器100可以用于MVC編碼。例如,SVC編碼器100的各種組件,或者這些組件的變型,可以在對多視點進行編碼中使用。時間分解模塊142的第一輸出以信號通信方式與幀內塊的幀內預測模塊146的第一輸入連接。時間分解模塊142的第二輸出以信號通信方式與運動編碼模塊144的第一輸入連接。幀內塊的幀內預測模塊146的輸出以信號通信方式與變換/熵編碼器(信噪比(SNR)可縮放)149的輸入連接。變換/熵編碼器149的第一輸出以信號通信方式與復用器170的第一輸入連接。時間分解模塊132的第一輸出以信號通信方式與幀內塊的幀內預測模塊136的第一輸入連接。時間分解模塊132的第二輸出以信號通信方式與運動編碼模塊134的第一輸入連接。幀內塊的幀內預測模塊136的輸出以信號通信方式與變換/熵編碼器(信噪比(SNR)可縮放)139的輸入連接。變換/熵編碼器139的第一輸出以信號通信方式與復用器170的第一輸入連接。變換/熵編碼器149的第二輸出以信號通信方式與2D空間插值模塊138的輸入連接。2D空間插值模塊138的輸出以信號通信方式與幀內塊的幀內預測模塊136的第二輸入連接。運動編碼模塊144的第二輸出以信號通信方式與運動編碼模塊134的輸入連接。時間分解模塊122的第一輸出以信號通信方式與幀內預測器126的第一輸入連接。時間分解模塊122的第二輸出以信號通信方式與運動編碼模塊124的第一輸入連接。幀內預測器126的輸出以信號通信方式與變換/熵編碼器(信噪比(SNR)可縮放)129的輸入連接。變換/熵編碼器129的第一輸出以信號通信方式與復用器170的第一輸入連接。變換/熵編碼器139的第二輸出以信號通信方式與2D空間插值模塊128的輸入連接。2D空間插值模塊128的輸出以信號通信方式與幀內預測器126的第二輸入連接。運動編碼模塊134的第二輸出以信號通信方式與運動編碼模塊124的輸入連接。運動編碼模塊124的第一輸出、運動編碼模塊134的第一輸出、以及運動編碼模塊144的第一輸出均以信號通信方式與復用器170的第二輸入連接。2D空間抽取模塊104的第一輸出以信號通信方式與時間分解模塊132的輸入連接。2D空間抽取模塊104的第二輸出以信號通信方式與時間分解模塊142的輸入連接。時間分解模塊122的輸入以及2D空間抽取模塊104的輸入可用作編碼器100的輸入,用于接收輸入視頻102。復用器170的輸出可用作編碼器100的輸出,用于提供比特流180。在編碼器100的核心編碼器部分187中包括:時間分解模塊122、時間分解模塊132、時間分解模塊142、運動編碼模塊124、運動編碼模塊134、運動編碼模塊144、幀內預測器126、幀內預測器136、幀內預測器146、變換/熵編碼器129、變換/熵編碼器139、變換/熵編碼器149、2D空間插值模塊128、以及2D空間插值模塊138。圖1包括三個核心編碼器187。在圖中所示的實現方式中,最底部的核心編碼器187可以對基礎層進行編碼,中間和上部的核心編碼器187對較高層進行編碼。轉到圖2,由參考數字200總體指示示例SVC解碼器。SVC解碼器200還可以用于AVC解碼,即用于單一視點。此外,本領域普通技術人員將理解,SVC解碼器200可以用于MVC解碼。例如,SVC解碼器200的各種組件,或者這些組件的不同變型可以在對多個視點的解碼中使用。注意,可以將編碼器100和解碼器200,以及本公開中討論的其它編碼器和解碼器,配置為執行貫穿本公開示出的各種方法。除了執行編碼操作之外,為了對解碼器的預期行動進行鏡像,本公開中描述的編碼器可以執行重構過程期間的各種解碼操作。例如,為了產生編碼視頻數據的重構以預測附加視頻數據,編碼器可以對SUPSPS單元進行解碼以對編碼的視頻數據進行解碼。因此,編碼器可以執行由解碼器執行的實質上所有操作。解復用器202的輸入可用作對可縮放視頻解碼器200的輸入,用于接收可縮放比特流。解復用器202的第一輸出以信號通信方式與空間反變換SNR可縮放熵解碼器204的輸入連接。空間反變換SNR可縮放熵解碼器204的第一輸出以信號通信方式與預測模塊206的第一輸入連接。預測模塊206的輸出以信號通信方式與組合器230的第一輸入連接。空間反變換SNR可縮放熵解碼器204的第二輸出以信號通信方式與運動向量(MV)解碼器210的第一輸入連接。MV解碼器210的輸出以信號通信方式與運動補償器232的輸入連接。運動補償器232的輸出以信號通信方式與組合器230的第二輸入連接。解復用器202的第二輸出以信號通信方式與空間反變換SNR可縮放熵解碼器212的輸入連接。空間反變換SNR可縮放熵解碼器212的第一輸出以信號通信方式與預測模塊214的第一輸入連接。預測模塊214的第一輸出以信號通信方式與插值模塊216的輸入連接。插值模塊216的輸出以信號通信方式與預測模塊206的第二輸入連接。預測模塊214的第二輸出以信號通信方式與組合器240的第一輸入連接。空間反變換SNR可縮放熵解碼器212的第二輸出以信號通信方式與MV解碼器220的第一輸入連接。MV解碼器220的第一輸出以信號通信方式與MV解碼器210的第二輸入連接。MV解碼器220的第二輸出以信號通信方式與運動補償器242的輸入連接。運動補償器242的輸出以信號通信方式與組合器240的第二輸入連接。解復用器202的第三輸出以信號通信方式與空間反變換SNR可縮放熵解碼器222的輸入連接。空間反變換SNR可縮放熵解碼器222的第一輸出以信號通信方式與預測模塊224的輸入連接。預測模塊224的第一輸出以信號通信方式與插值模塊226的輸入連接。插值模塊226的輸出以信號通信方式與預測模塊214的第二輸入連接。預測模塊224的第二輸出以信號通信方式與組合器250的第一輸入連接。空間反變換SNR可縮放熵解碼器222的第二輸出以信號通信方式與MV解碼器230的輸入連接。MV解碼器230的第一輸出以信號通信方式與MV解碼器220的第二輸入連接。MV解碼器230的第二輸出以信號通信方式與運動補償器252的輸入連接。運動補償器252的輸出以信號通信方式與組合器250的第二輸入連接。組合器250的輸出可用作解碼器200的輸出,用于輸出層0信號。組合器240的輸出可用作解碼器200的輸出,用于輸出層1信號。組合器230的輸出可用作解碼器200的輸出,用于輸出層2信號。參見圖1a,由參考數字2100來總體指示示例AVC編碼器。AVC編碼器2100可以用于例如對單一層(例如,基礎層)進行編碼。視頻編碼器2100包括幀排序緩沖器2110,緩沖器2110具有與組合器2185的非反相輸入進行信號通信的輸出。組合器2185的輸出以信號通信方式與變換器和量化器2125的第一輸入連接。變換器和量化器2125的輸出以信號通信方式與熵編碼器2145的第一輸入以及反變換器和反量化器2150的第一輸入連接。熵編碼器2145的輸出以信號通信方式與組合器2190的第一非反相輸入連接。組合器2190的輸出以信號通信方式與輸出緩沖器2135的第一輸入連接。編碼器控制器2105的第一輸出以信號通信方式與幀排序緩沖器2110的第二輸入、反變換器和反量化器2150的第二輸入、畫面類型判定模塊2115的輸入、宏塊類型(MB類型)判定模塊2120的輸入、幀內預測模塊2160的第二輸入、解塊濾波器2165的第二輸入、運動補償器2170的第一輸入、運動估計器2175的第一輸入、以及參考畫面緩沖器2180的第二輸入相連接。編碼器控制器2105的第二輸出以信號通信方式與補充增強信息(“SEI”)插入器2130的第一輸入、變換器和量化器2125的第二輸入、熵編碼器2145的第二輸入、輸出緩沖器2135的第二輸入、序列參數集(SPS)和畫面參數集(PPS)插入器2140的輸入相連接。圖像類型判定模塊2115的第一輸出以信號通信方式與幀排序緩沖器2110的第三輸入連接。圖像類型判定模塊2115的第二輸出以信號通信方式與宏塊類型判定模塊2120的第二輸入連接。序列參數集(“SPS”)和畫面參數集(“PPS”)插入器2140的輸出以信號通信方式與組合器2190的第三非反相輸入連接。SEI插入器2130的輸出以信號通信方式與組合器2190的第二非反相輸入連接。反量化器和反變換器2150的輸出以信號通信方式與組合器2127的第一非反相輸入連接。組合器2127的輸出以信號通信方式與幀內預測模塊2160的第一輸入以及解塊濾波器2165的第一輸入連接。解塊濾波器2165的輸出以信號通信方式與參考畫面緩沖器2180的第一輸入連接。參考圖像緩沖器2180的輸出以信號通信方式與運動估計器2175的第二輸入以及運動補償器2170的第一輸入連接。運動估計器2175的第一輸出以信號通信方式與運動補償器2170的第二輸入連接。運動估計器2175的第二輸出以信號通信方式與熵編碼器2145的第三輸入連接。運動補償器2170的輸出以信號通信方式與開關2197的第一輸入連接。幀內預測模塊2160的輸出以信號通信方式與開關2197的第二輸入連接。宏塊類型判定模塊2120的輸出以信號通信方式與開關2197的第三輸入連接,以向開關2197提供控制輸入。開關2197的輸出以信號通信方式與組合器2127的第二非反相輸入以及組合器2185的反相輸入連接。幀排序緩沖器2110以及編碼器控制器2105的輸入可用作編碼器2100的輸入,用于接收輸入畫面2101。此外,SEI插入器2130的輸入可用作編碼器2100的輸入,用于接收元數據。輸出緩沖器2135的輸出可用作編碼器2100的輸出,用于輸出比特流。參見圖2a,由參考數字2200來總體指示能夠根據MPEG-4AVC標準來執行視頻解碼的視頻解碼器。視頻解碼器2200包括輸入緩沖器2210,緩沖器2210具有與熵解碼器2245的第一輸入以信號通信方式連接的輸出。熵解碼器2245的第一輸出以信號通信方式與反變換器和反量化器2250的第一輸入連接。反變換器和反量化器2250的輸出以信號通信方式與組合器2225的第二非反相輸入連接。組合器2225的輸出以信號通信方式與解塊濾波器2265的第二輸入和幀內預測模塊2260的第一輸入連接。解塊濾波器2265的第二輸出以信號通信方式與參考畫面緩沖器2280的第一輸入連接。參考畫面緩沖器2280的輸出以信號通信方式與運動補償器2270的第二輸入連接。熵解碼器2245的第二輸出以信號通信方式與運動補償器2270的第三輸入以及解塊濾波器2265的第一輸入連接。熵解碼器2245的第三輸出以信號通信方式與解碼器控制器2205的輸入連接。解碼器控制器2205的第一輸出以信號通信方式與熵解碼器2245的第二輸入連接。解碼器控制器2205的第二輸出以信號通信方式與反變換器和反量化器2250的第二輸入連接。解碼器控制器2205的第三輸出以信號通信方式與解塊濾波器2265的第三輸入連接。解碼器控制器2205的第四輸出以信號通信方式與幀內預測模塊2260的第二輸入、運動補償器2270的第一輸入以及參考畫面緩沖器2280的第二輸入相連接。運動補償器2270的輸出以信號通信方式與開關2297的第一輸入連接。幀內預測模塊2260的輸出以信號通信方式與開關2297的第二輸入連接。開關2297的輸出以信號通信方式與組合器2225的第一非反相輸入連接。輸入緩沖器2210的輸入可用作解碼器2200的輸入,用于接收輸入比特流。解塊濾波器2265的第一輸出可用作解碼器2200的輸出,用于輸出輸出畫面。參見圖3,示出了單層SPS300的結構。SPS是一般而言包含語法元素的語法結構,所述語法元素應用于零個或者更多整個編碼的視頻序列。在SVC擴展中,SPS中傳遞的一些語法元素的值是依賴于層的。這些依賴于層的語法元素包括但不限于:定時信息、HRD(代表“假定參考解碼器”)參數、以及比特流限制信息。HRD參數可以包括例如:緩沖器大小、最大比特率以及初始延遲的指示符。HRD參數可以例如允許接收系統驗證接收比特流的完整性和/或確定接收系統(例如,解碼器)是否能夠對比特流進行解碼。因此,系統可以針對每一層提供前述語法元素的傳輸。單層SPS300包括提供SPS的標識符的SPS-ID310。單層SPS300還包括用于單一層的VUI(代表視頻可用性信息)參數320。VUI參數包括用于單一層(例如,基礎層)的HRD參數330。單層SPS300還可以包括附加參數340,盡管實現方式不需要包括任何附加參數340。參見圖4,數據流400的方框視圖示出了單層SPS300的典型使用。在AVC標準中,例如,典型的數據流可以包括SPS單元、提供用于特定畫面的參數的多個PPS(畫面參數序列)單元,以及用于編碼畫面數據的多個單元,以及其它成分。在圖4中示出了這種總體框架,其包括SPS300、PPS-1410、包括編碼畫面1數據的一個或者更多單元420、PPS-2430、以及包括編碼畫面2數據的一個或者更多單元440。PPS-1410包括用于編碼畫面1數據420的參數,PPS-2430包括用于編碼畫面2數據440的參數。編碼畫面1數據420以及編碼畫面2數據440均與特定SPS(在圖4的實現方式中為SPS300)相關聯。如現在解釋的,這是通過使用指針來實現的。編碼圖像1數據420包括PPS-ID(圖中未示出),該PPS-ID標識PPS-1410,如箭頭450所示。可以在例如片首部中存儲該PPS-ID。編碼圖像2數據440包括PPS-ID(圖中未示出),該PPS-ID標識PPS-2430,如箭頭460所示。PPS-1410和PPS-2430均包括SPS-ID(圖中未示出),該SPS-ID標識SPS300,如箭頭470和480分別所示。參見圖5,示出了SUPSPS500的結構。SUPSPS500包括SPSID510、包括HRD參數530(該參數用于稱為“(D2,T2,Q2)”的單一附加層)在內的VUI520、以及可選的附加參數540。“D2,T2,Q2”是指具有空間(D)等級2、時間(T)等級2、以及質量(Q)等級2的第二層。注意,可以使用各種編號方案來指代層。在一個編號方案中,基礎層具有值為0,x,0的D,T,Q,意味著空間等級為零、任何時間等級、以及質量等級為零。在該編號方案中,增強層具有D,T,Q,其中D或者Q大于零。SUPSPS500的使用允許例如系統使用僅包括用于單一層的參數在內的SPS結構,或者允許系統使用不包括任何依賴于層的信息在內的SPS結構。這樣的系統可以為基礎層之上的每一個附加層創建單獨的SUPSPS。附加層可以標識其通過使用SPSID510來關聯的SPS。顯然,多個層可以通過在其相應的SUPSPS單元中使用共同的SPSID來共享單一SPS。參見圖6,示出了SPS單元605和多個SUPSPS單元610和620之間的組織分級600。將SUPSPS單元610和620示為單層SUPSPS單元,但是其它實現方式可以在使用單層SUPSPS單元之外或者作為替代,使用一個或者更多的多層SUPSPS單元。在典型場景中,分級600示出了多個SUPSPS單元可以與單一SPS單元相關聯。當然,實現方式可以包括多個SPS單元,并且每一個SPS單元可以具有相關聯的SUPSPS單元。參見圖7,示出了另一個SUPSPS700的結構。SUPSPS700包括多個層的參數,而SUPSPS500包括單一層的參數。SUPSPS700包括SPSID710、VUI720、以及可選附加參數740。VUI720包括用于第一附加層(D2,T2,Q2)的HRD參數730以及用于多至層(Dn,Tn,Qn)的其它附加層的HRD參數。再次參照圖6,可以修改分級600以使用多層SUPSPS。例如,如果SUPSPS610和620都包括相同的SPSID,則可以用SUPSPS700來替代SUPSPS610和620的組合。此外,SUPSPS700可以與例如包括用于單一層的參數的SPS、或者包括用于多個層的參數的SPS、或者不包括用于任何層的依賴于層的參數的SPS一起使用。SUPSPS700允許系統在較少開銷的情況下提供用于多個層的參數。其它實現方式可以基于例如包括用于所有可能層的所有所需參數的SPS。即,不管是否傳輸所有層,這種實現方式的SPS包括可用于傳輸的所有相應的空間(Di)、時間(Ti)以及質量(Qi)等級。然而,即使對于這樣的系統,可以使用SUPSPS以提供在不再次傳輸整個SPS的情況下改變用于一個或者更多層的參數的能力。參見表1,為單層SUPSPS的特定實現方式提供了語法。該語法包括用于標識相關聯SPS的sequence_parameter_set_id、以及用于標識可縮放層的標識符temporal_level、dependency_id以及quality_level。通過svc_vui_parameters()的使用來包括VUI參數(參見表2),svc_vui_parameters()通過hrd_parameters()的使用來包括HRD參數。下面的語法允許每一層指定其自己的依賴于層的參數,例如HRD參數。表1sup_seq_parameter_set_svc()語法的語義如下所述。-sequence_parameter_set_id標識:針對當前層,當前SUPSPS所映射至的序列參數集,;-temporal_level、dependency_id和quality_level指定當前層的時間等級、依賴關系標識符以及質量等級。dependency_id一般指示空間等級。然而,dependency_id還用于指示粗粒度可縮放性(“CGS”)分級,該分級包括空間和SNR可縮放性,其中SNR可縮放性是傳統的質量可縮放性。相應地,quality_level和dependency_id均可以用于區分質量等級。-vui_parameters_present_svc_flag等于1指示如下定義的svc_vui_parameters()語法結構存在。vui_parameters_present_svc_flag等于0指示svc_vui_parameters()語法結構不存在。表2給出了svc_vui_parameters()的語法。因此,VUI參數對于每一層是分離的,并被放入單獨的SUPSPS單元中。然而,其它實現方式將用于多個層的VUI參數組合為單一SUPSPS。表2在2007年4月的JVT_U201附錄EE.1下存在的SVC擴展的版本中定義了表2的svc_vui_parameters()語法的字段。具體地,定義用于AVC標準的hrd_parameters()。還注意到,svc_vui_parameters()包括各種依賴于層的信...