專利名稱:提供用于串流傳輸視頻數據的序列數據集的制作方法
技術領域:
本發(fā)明涉及經編碼的視頻數據的輸送。
背景技術:
可將數字視頻能力并入到廣泛范圍的裝置中,所述裝置包括數字電視、數字直播系統(tǒng)、無線廣播系統(tǒng)、個人數字助理(PDA)、膝上型計算機或桌上型計算機、攝像機、數字記錄裝置、數字媒體播放器、視頻游戲裝置、視頻游戲控制臺、蜂窩式電話或衛(wèi)星無線電電話、 視頻電話會議裝置及其類似者。數字視頻裝置實施視頻壓縮技術(例如,在由MPEG-2、 MPEG-4、ITU-T H. 263 或 ITU-T H. 264/MPEG-4 第 10 部分(高級視頻譯碼(AVC))定義的標準及這些標準的擴展中所描述的視頻壓縮技術)以更有效率地發(fā)射及接收數字視頻信息。
視頻壓縮技術執(zhí)行空間預測及/或時間預測以減少或移除視頻序列中所固有的冗余。對于基于塊的視頻譯碼來說,可將視頻幀或切片分割成宏塊??蛇M一步分割每一宏塊。使用相對于相鄰宏塊的空間預測來編碼經幀內譯碼(I)的幀或切片中的宏塊。在經幀間譯碼(P或B)的幀或切片中的宏塊可使用相對于在同一幀或切片中的相鄰宏塊的空間預測或相對于其它參考幀的時間預測。
在已編碼視頻數據之后,可將視頻數據包化以用于傳輸或存儲??勺裾崭鞣N標準中的任一者(例如,國際標準組織(ISO)基礎媒體文件格式及其擴展(例如AVC))將視頻數據組裝成一視頻文件。
一直在努力開發(fā)基于H. 264/AVC的新視頻譯碼標準。一個此種標準為可縮放視頻譯碼(SVC)標準,其為H.264/AVC的可縮放擴展。另一標準為多視圖視頻譯碼(MVC), 其已變成H. 264/AVC的多視圖擴展。AVC標準的一版本描述于JVT-AD007的“ ITU-T推薦 H. 264|IS0/IEC 14496-10高級視頻譯碼的編者草案修正——準備用于ITU-T SG 16 AAP 批準(整合形式)(Editors' draft revision to ITU-T Rec. Η. 264 | IS0/IEC 14496-10 Advanced Video Coding-1n preparation for ITU-T SG 16 AAP Consent(in integrated form)) ”中(2009年2月瑞士日內瓦的第30屆JVT會議),可在http://wftp3.1tu.1nt/ av-arch/jvt-site/2009_01_Geneva/JVT-AD007. zip 處獲得。此文獻將 SVC 和 MVC 整合于 AVC規(guī)范中。發(fā)明內容
大體上,本發(fā)明描述用于提供描述視頻文件的經譯碼視頻圖片(例如)以支持根據HTTP串流傳輸的視頻文件的串流傳輸的序列數據集的技術。序列數據集可包含例如序列參數集、圖片參數集和一些補充增強信息(SEI)消息,例如序列層級SEI消息。這些技術可包含將序列數`據集與由序列數據集描述的經譯碼視頻圖片解耦。也就是說,并非與由序列層級SEI消息描述的經譯碼視頻圖片一起包含序列層級SEI消息,本發(fā)明的技術可包含將序列層級SEI消息與經譯碼視頻圖片解耦。因此,序列層級SEI消息可與經譯碼視頻圖片分離地從源裝置傳送到目的地裝置。在一些實例中,包含序列層級SEI消息的序列數據集可在序列數據集所屬的經譯碼視頻圖片的傳送之前從源裝置傳送到目的地裝置。
在一個實例中,一種輸出經封裝視頻數據的方法包含產生與經譯碼視頻圖片分離的一個或一個以上補充增強信息(SEI)消息,其中所述SEI消息描述所述經譯碼視頻圖片序列中的相應者且包含所述經譯碼視頻圖片中的一者以上所共同的元素;以及與所述經譯碼視頻圖片序列分離地輸出所述SEI消息。
在另一實例中,一種用于輸出經封裝視頻數據的設備包含控制單元,其經配置以產生與經譯碼視頻圖片分離的一個或一個以上補充增強信息(SEI)消息,其中所述SEI消息描述所述經譯碼視頻圖片序列中的相應者且包含所述經譯碼視頻圖片中的一者以上所共同的元素;以及輸出接口,其經配置以與所述經譯碼視頻圖片序列分離地輸出所述SEI 消息。
在另一實例中,一種用于輸出經封裝視頻數據的設備包含用于產生與經譯碼視頻圖片分離的一個或一個以上補充增強信息(SEI)消息的裝置,其中所述SEI消息描述所述經譯碼視頻圖片序列中的相應者且包含所述經譯碼視頻圖片中的一者以上所共同的元素;以及用于與所述經譯碼視頻圖片序列分離地輸出所述SEI消息的裝置。
在另一實例中,一種包含計算機可讀存儲媒體的計算機程序產品包括指令,所述指令在執(zhí)行時致使用于輸出經封裝視頻數據的源裝置的處理器進行以下操作產生與經譯碼視頻圖片分離的一個或一個以上補充增強信息(SEI)消息,其中所述SEI消息描述經譯碼視頻圖片序列中的相應者且包含所述經譯碼視頻圖片中的一者以上所共同的元素;以及與所述經譯碼視頻圖片序列分離地輸出所述SEI消息。
在另一實例中,一種接收經編碼視頻數據的方法包含接收描述視頻文件的經譯碼視頻圖片序列的補充增強信息(SEI)消息,其中所述SEI消息描述所述經譯碼視頻圖片序列中的相應者且包含所述經譯碼視頻圖片中的一者以上所共同的元素;與所述SEI消息分離地接收所述視頻文件的所述經譯碼視頻圖片序列;以及在所述經譯碼視頻圖片序列已經解碼之后基于所述SEI消息而再現所述經譯碼視頻圖片序列。
在另一實例中,一種用于接收經編碼視頻數據的設備包含控制單元,其經配置以接收描述視頻文件的經譯碼視頻圖片序列的補充增強信息(SEI)消息,其中所述SEI消息描述所述經譯碼視頻圖片序列中的相應者且包含所述經譯碼視頻圖片中的一者以上所共同的元素,且與所述SEI消息分離地接收所述視頻文件的所述經譯碼視頻圖片序列;以及視頻輸出,其經配置以在所述經譯碼視頻圖片序列已經解碼之后再現所述經譯碼視頻圖片序列。
在另一實例中,一種用于接收經編碼視頻數據的設備包含用于接收描述視頻文件的經譯碼視頻圖片序列的補充增強信息(SEI)消息的裝置,其中所述SEI消息描述所述經譯碼視頻圖片序列中的相應者且包含所述經譯碼視頻圖片中的一者以上所共同的元素; 用于與所述SEI消息分離地接收所述視頻文件的所述經譯碼視頻圖片序列的裝置;以及用于在所述經譯碼視頻圖片序列已經解碼之后基于所述SEI消息而再現所述經譯碼視頻圖片序列的裝置。
在另一實例中,一種包含計算機可讀存儲媒體的計算機程序產品包括指令,所述指令在執(zhí)行時致使用于接收經編碼視頻數據的目的地裝置的處理器進行以下操作接收描述視頻文件的經譯碼視頻圖片序列的補充增強信息(SEI)消息,其中所述SEI消息描述所述經譯碼視頻圖片序列中的相應者且包含所述經譯碼視頻圖片中的一者以上所共同的元素;與所述SEI消息分離地接收所述視頻文件的所述經譯碼視頻圖片序列;以及在所述經譯碼視頻圖片序列已經解碼之后基于所述SEI消息而再現所述經譯碼視頻圖片序列。
一個或一個以上 實例的細節(jié)陳述于隨附圖式及以下描述中。其它特征、目標及優(yōu)勢將從所述描述及所述圖式以及從權利要求書顯而易見。
圖1為說明其中音頻/視頻(A/V)源裝置將音頻及視頻數據傳送到A/V目的地裝置的實例系統(tǒng)的框圖。
圖2為說明實例封裝單元的組件的框圖。
圖3為說明可在各種位置中包含序列層級SEI消息的實例視頻文件的元素的框圖。
圖4是說明另一實例視頻文件的元素的框圖,所述另一實例視頻文件包含含有序列層級SEI消息的參數集軌道。
圖5是說明包含第三代合作伙伴計劃(3GPP)文件的簡報的實例集合的框圖,所述 3GPP文件包含相應簡報的相應序列數據集。
圖6是說明用于在視頻文件內封裝序列數據集且將視頻文件從源裝置提供到目的地裝置的實例方法的流程圖。
圖7是說明包含多個序列數據集的視頻文件的另一實例的框圖。
具體實施方式
大體上,本發(fā)明描述用于支持使用例如超文本傳送協議(HTTP)串流傳輸等串流傳輸網絡協議遞送視頻數據的技術。特定來說,本發(fā)明的技術是針對當例如以視頻文件的形式發(fā)射視頻數據時使某些補充增強信息(SEI)消息(例如序列層級SEI消息)與特定視頻樣本解耦。另外,所述技術可包含在目的地裝置處解譯序列層級SEI消息以支持經編碼視頻圖片的解碼和再現。
本發(fā)明還描述將SEI消息與編解碼器層級中的視頻樣本解耦,其中SEI消息不一定需要與特定經譯碼圖片相關聯,例如當SEI消息與存取單元相關聯時。在SEI消息與經譯碼圖片去耦的情況下,指定SEI消息適用于哪一持續(xù)時間的時序信息可作為SEI消息的部分而用信號表不。
SEI消息可含有用以幫助解碼器和/或再現器解碼和/或顯示某些經編碼視頻圖片的信息。SEI消息還可用以提供錯誤恢復。一些SEI消息是序列層級(例如,與經譯碼圖片群組(GOP)或經譯碼視頻圖片的其它序列相關),而其它SEI消息可與特定經譯碼圖片相關。SEI消息通常與特定經譯碼圖片一起發(fā)射。也就是說,為了檢索SEI消息,解碼器通常需要檢索包含SEI消息的經譯碼圖片。在解碼器不需要經譯碼圖片的數據的情況下,這大體上導致浪費帶寬。而且,在一些情況下,用于不同經譯碼圖片或兩個GOP的兩個SEI消息可能含有基本上相同的信息,使得重復地發(fā)射SEI消息同樣可造成帶寬的浪費。
本發(fā)明的技術包含單獨于(例如,獨立于)經譯碼視頻數據來發(fā)射SEI消息,例如在SEI消息描述經譯碼視頻圖片序列的序列數據的情況下。序列數據可對應于經譯碼視頻圖片序列所共同的數據。在涉及H.264/AVC(高級視頻譯碼)的一些實例中,當SEI消息包含與平移掃描矩形相關的信息和立體視頻信息時,SEI消息可連同參數集基本串流一起發(fā)射。參數集基本串流可包含序列參數集(SPS)和/或圖片參數集(PPS)消息。也就是說,根據這些技術,參數集基本串流除了一個或一個以上SEI消息外還可包含PPS和/或SPS消息。H. 264/AVC中的此SEI消息的一個實例是幀包化布置SEI,其指定關于如何將一圖像對的兩個視圖交錯在一起成為一個幀的信息。作為另一實例,相對于可縮放視頻譯碼(SVC), 當SEI消息提供可縮放性信息時SEI消息可在參數集基本串流中發(fā)送。作為又一實例,在多視圖視頻譯碼(MVC)中,當SEI消息包含視圖可縮放性信息、多視圖獲取信息和/或多視圖場景信息時SEI消息可包含在參數集基本串流中。
常規(guī)序列層級SEI消息已與某些存取單元相關聯,例如包括瞬時解碼器刷新 (IDR)圖片的存取單元。然而,本發(fā)明的技術是針對將序列層級SEI消息與存取單元分離。 因此,本發(fā)明的技術可使得客戶端裝置能夠與由序列層級SEI消息描述的經譯碼視頻圖片分離地檢索序列層級SEI消息,而不是檢索包含序列層級SEI消息的存取單元。因此,如果客戶端裝置經配置以解碼和顯示經譯碼視頻圖片序列的僅一部分,那么客戶端裝置可檢索所述序列的僅所述部分,而無需檢索其它圖片,例如SEI消息原本將與 之一起包含的IDR圖片。根據本發(fā)明的技術,客戶端裝置可與經譯碼視頻圖片的所要部分分離地檢索SEI消息。
在一些實例中,并不是將序列層級SEI消息(和/或其它序列數據)包含在參數集軌道中,而是序列層級SEI消息可連續(xù)地包含在文件中,使得客戶端可使用HTTP-Get操作來檢索可用以在任一點解碼和顯示視頻文件的信息。也就是說,用戶可尋覓視頻文件中的任一點,且解碼器可檢索SEI消息而無需檢索額外的不必要的經譯碼視頻數據,例如在視頻文件內對應于尋覓請求的時間位置之前且將不會用來對在所述尋覓請求的時間位置處及之外的視頻數據進行解碼的經譯碼視頻數據。
視頻或音頻表示可包含一個或一個以上區(qū)段。每一表示可含有一初始化區(qū)段,或所述表示中的每一媒體區(qū)段可為自初始化的。初始化區(qū)段可含有用于存取對應表示(例如,由初始化區(qū)段描述的媒體區(qū)段)的數據的初始化信息。初始化區(qū)段大體上不含任何媒體數據,而是可僅包含初始化數據。每一表示可包含一個或一個以上媒體分量,其中每一媒體分量可為例如音頻、視頻或經計時文本等個別媒體類型的經編碼版本。媒體分量在一個表示內的連續(xù)媒體區(qū)段的邊界上可為時間連續(xù)的。
作為又一實例,本發(fā)明的技術可包含發(fā)送序列數據(例如,PPS、SPS和序列層級 SEI消息)以及(特定來說)不含有經譯碼視頻數據(即,視頻樣本)的文件區(qū)段。源裝置和目的地裝置可以包含序列數據的視頻樣本的位置來配置,和/或以用于確定這些視頻樣本的位置的方法來配置。在一些實例中,序列數據可在經編碼視頻數據發(fā)送之前從服務器發(fā)送到客戶端。也就是說,源裝置可在發(fā)送由序列數據參考的經編碼視頻數據之前將例如 PPS、SPS和序列層級SEI消息等序列數據提供到客戶端裝置。在基于文件區(qū)段的HTTP串流傳輸中,SEI消息(例如,序列層級SEI消息)連同參數集(例如序列參數集和圖片參數集)可放置于初始化區(qū)段中,所述初始化區(qū)段不含有任何經譯碼音頻或視頻樣本。
本發(fā)明的技術可應用于遵照以下各項中的任一者的視頻文件IS0基礎媒體文件格式、可縮放視頻譯碼(SVC)文件格式、高級視頻譯碼(AVC)文件格式、第三代合作伙伴計劃(3GPP)文件格式,和/或多視圖視頻譯碼(MVC)文件格式。ISO基礎媒體文件格式經設計以含有供以靈活、可擴展的格式呈現的定時媒體信息,所述靈活、可擴展的格式促進媒體的互換、管理、編輯及呈現。ISO基礎媒體文件格式(IS0/IEC14496-12:2004)在MPEG-4第 12部分中指定,MPEG-4第12部分界定基于時間的媒體文件的一般結構。ISO基礎媒體文件格式用作所述家族中的例如以下其它文件格式的基礎經定義以支持H. 264/MPEG-4 AVC 視頻壓縮的AVC文件格式(IS0/IEC 14496-15)、3GPP文件格式、SVC文件格式,及MVC文件格式。3GPP文件格式及MVC文件格式為AVC文件格式的擴展。ISO基礎媒體文件格式含有用于媒體數據的定時序列(例如,視聽呈現)的時序、結構及媒體信息。所述文件結構是面向對象的??蓸O其簡單地將文件分解成基本對象,且對象的結構由其類型隱含。
遵照ISO基礎媒體文件格式(及其擴展)的文件可形成為一系列對象,稱作“盒 (box)”。呈ISO基礎媒體文件格式的數據可含于盒中,且在盒外無其它數據需要含于文件內。這包含特定文件格式所需要的任何初始簽名。“盒”可為通過唯一類型識別符及長度定義的面向對象的建置塊。通常,一簡報(presentation)含于一個文件中,且媒體簡報為自含式的。電影容器(電影盒)含有媒體的元數據,且視頻及音頻幀含于媒體數據容器中且可在其它文件中。
一簡報(運動序列)可含于若干文件中。時序及成幀(位置及大小)信息通常在 ISO基礎媒體文件中,且輔助文件可基本上使用任何格式。此簡報可在含有所述簡報的系統(tǒng)的“本地”,或可經由網絡或其它串流遞送機制來提供。
文件可具有邏輯結構、時間結構及物理結構,且這些結構不需要耦合。文件的邏輯結構可為電影或視頻剪輯(潛在地包含視頻和音頻數據兩者)的邏輯結構,其又含有一組時間并行的軌道。文件的時間結構可為軌道含有在時間上的樣本序列,且那些序列通過任選的編輯列表而映射到整個電影的時間線。文件的物理結構可將邏輯、時間及結構分解所需的數據與媒體數據樣本自身分離。此結構信息可集中于一電影盒中,可能在時間上由電影片段盒擴展。所述電影盒可記載樣本的邏輯及時序關系,且也可含有到其所處位置的指針。那些指針可指向同一文件中或另一文件中(例如,由URL參考)。
每一媒體串流可含于專門用于所述媒體類型(音頻、視頻等)的軌道中,且可進一步通過樣本條目來參數化。所述樣本條目可含有確切媒體類型(解碼串流所需要的解碼器的類型)的“名稱”及所述所需解碼器的任何參數化。所述名稱也可采取四字符碼(例如, “moov”或“trak”)的形式。存在不僅用于MPEG-4媒體而且也用于使用此文件格式家族的其它組織所使用的媒體類型的經定義的樣本條目格式。
對元數據的支持通常采取兩種形式。首先,可將定時元數據存儲于適當軌道中,且在需要時與其所描述的媒體數據同步。其次,可存在對附加到電影或個別軌道的非定時元數據的一般支持。結構支持為一般性的,且以類似于媒體數據(即,經譯碼視頻圖片)的存儲的方式允許元數據資源存儲于文件中的別處或存儲于另一文件中。另外,這些資源可加以命名且可受保護。
在ISO基礎媒體文件格式中,樣本分組為將軌道中的樣本中的每一者指派為一個樣本群組中的成員。樣本群組中的樣本不需要為連續(xù)的。舉例來說,在呈現呈AVC文件格式的H. 264/AVC時,處于一個時間層級中的視頻樣本可被取樣于一個樣本群組中。可通過兩個數據結構來表不樣本群組SampIeToGroup盒(sbdp)及SampleGroupDescription 盒。SampleToGroup盒表示將樣本指派給`樣本群組。對于每一樣本群組條目來說,可存在SampleGroupDescription盒的一個實例以描述對應群組的性質。任選的元數據軌道可用以用其所具有的“有趣特性”來標記每一軌道,對于所述軌道來說,其值可不同于群組的其它成員(例如,其位速率、屏幕大小或語言)。軌道內的一些樣本可具有特殊特性或可個別地識別。特性的一個實例為同步點(常為視頻I幀)??稍诿恳卉壍乐型ㄟ^特殊表來識別這些點。更一般來說,也可使用元數據來記載軌道樣本之間的相依性質。元數據可經結構化為文件格式樣本的序列,正如視頻軌道一樣。此軌道可稱作元數據軌道。每一元數據樣本可經結構化為元數據語句。存在各種種類的語句,其對應于關于對應文件格式樣本或其組成樣本而可能被詢問的各種問題。在經由串流傳輸協議遞送媒體時,可能需要從其表示于文件中的方式變換媒體。此情形的一個實例發(fā)生于經由實時傳輸協議(RTP)傳輸媒體時。舉例來說,在文件中,將視頻的每一幀連續(xù)地存儲為文件格式樣本。在RTP中,必須遵守專門針對所使用的編解碼器的包化規(guī)則以將這些幀置于RTP包中。串流傳輸服務器可經配置以在運行時間計算此包化。然而,存在對串流傳輸服務器的輔助的支持??蓪⒈环Q為提示軌道的特殊軌道置于文件中。
提示軌道含有用于串流傳輸服務器的關于如何針對特定協議從媒體軌道形成包串流的一般指令。因為這些指令的形式獨立于媒體,所以在引入新編解碼器時可能不需要修訂服務器。另外,編碼及編輯軟件可不知曉串流傳輸服務器。一旦對文件完成編輯,則被稱為提示程序(hinter)的一段軟件可用以在將文件置于串流傳輸服務器上之前將提示軌道添加到文件。作為實例,在MPEG-4文件格式規(guī)范中存在針對RTP串流定義的提示軌道格式。術語“漸進下載”用以描述通常使用HTTP協議的數字媒體文件從服務器到客戶端的傳送。當從計算機起始時,所述計算機可在下載完成之前開始媒體的重放。串流傳輸媒體與漸進下載之間的一個差別在于正存取數字媒體的最終用戶裝置如何接收并存儲數字媒體數據。能夠進行漸進下載重放的媒體播放器依賴于位于文件標頭中的完整的元數據且在從網絡服務器下載數字媒體文件時依賴于數字媒體文件的本地緩沖器。在指定量的經緩沖數據變得可用于本地重放裝置時,所述裝置可開始播放媒體。此指定量的經緩沖數據可通過編碼器設置中的內容的產生者而嵌入于文件中,且可通過客戶端計算機的媒體播放器所外加的額外緩沖器設置來加強。AVC及3GPP為ISO基礎媒體文件格式的擴展,而SVC及MVC為AVC文件格式的擴展。因此,本發(fā)明的技術可應用于遵照以下各者的視頻文件IS0基礎媒體文件格式、AVC文件格式及其擴展(例如,SVC及MVC),及/或第三代合作伙伴計劃(3GPP)文件格式。所述技術可進一步應用于這些格式的這些及其它擴展,且可進一步應用以擴展其它文件格式從而與SEI消息描述的視頻數據分離地提供SEI消息。因此,雖然為了實例目的而大體相對于AVC來描述,但應了解本發(fā)明的技術可大體上應用于任何其它文件格式。動畫專家組(MPEG)已開發(fā)AVC文件格式作為ISO基本媒體文件格式的擴展。在AVC文件格式中,參數集(包含序列參數集和圖片參數集)可與處于視頻軌道中的視頻基本串流相關聯。還可能在稱為參數集軌道的另一軌道中具有參數集,所述軌道包含含有作為SPS或PPS網絡抽象層(NAL)單元的樣本的參數集基本串流。然而,SEI消息NAL單元的位置不限于在AVC文件格式中,只要任一 SEI消息是在解碼時間處于使用此SEI消息的任一圖片之前的樣本中呈現即可。AVC文件格式具有SVC和MVC擴展以分別支持SVC和MVC的存儲。在SVC和MVC中,多個層/視圖可含于一個視頻軌道或多個視頻軌道中。在SVC和MVC規(guī)范中存在經定義以當在各種組織中呈現層/視圖時構建操作點的工具。SVC的一些功能性是從H. 264/AVC繼承。與先前的可縮放標準相比,SVC標準可提供各種優(yōu)點,例如階層式時間可縮放性、層間預測、單循環(huán)解碼和靈活的輸送接口。H. 264/AVC提供靈活的階層式B圖片譯碼結構,其實現高級時間可縮放性。通過從H. 264/AVC繼承的此特征,SVC支持具有不同分辨率的層的時間可縮放性。在SVC中,圖片群組(GOP)包含所謂的關鍵圖片及在輸出/顯示次序上位于此關鍵圖片與先前關鍵圖片之間的所有圖片。關鍵圖片可以規(guī)則或不規(guī)則間隔來譯碼,且可使用先前關鍵圖片作為運動補償預測的參考而經幀內譯碼或幀間譯碼。可從具有較低時間層級的圖片以階層式方式預測非關鍵圖片,且關鍵圖片可具有最低時間層級。圖片的時間層級可由NAL單元標頭SVC擴展中的語法元素 temporal_id 指不。SVC基于紋理、殘余和運動而針對空間和信噪比(SNR)可縮放性引入層間預測。SVC中的空間可縮放性可經一般化到兩個層之間的任一分辨率比率。SNR可縮放性可通過粗粒度可縮放性(CGS)、中等粒度可縮放性(MGS)或細粒度可縮放性(FGS)來實現。在SVC中,兩個空間或CGS層可屬于不同的相依性層(如NAL單元標頭中的dependency_id可指示),而兩個MGS層可在同一相依性層中。一個相依性層可包含具有從0到較高值的`quality_id的質量層,所述值對應于質量增強層。SVC提供可用以減少層間冗余的層間預測方法。所述方法經概括為層間紋理預測、層間殘余預測和層間運動預測。SVC還提供靈活的系統(tǒng)和輸送接口設計,其可實現編解碼器到可縮放的多媒體應用系統(tǒng)的無縫集成。除了壓縮和可縮放性提供之外,系統(tǒng)和輸送接口集中于編解碼器功能性,例如大體上對于視頻編解碼器來說是互操作性和一致性、可擴展性、隨機存取、時序、緩沖管理以及錯誤恢復,且特定地對于可縮放譯碼來說是向后兼容性、可縮放性信息提供和可縮放性調適。SVC進一步提供單循環(huán)解碼方案。在單循環(huán)解碼方案中,僅目標層需要運動補償和完全解碼。因此,與其中通常針對每個空間或SNR可縮放層執(zhí)行運動補償和完全解碼的其它多循環(huán)解碼方案相比,SVC的單循環(huán)解碼方案可大大降低解碼復雜性以及DPB大小。SVC和MVC具有類似的高層級語法設計,例如在NAL單元標頭、序列參數集和SEI消息方面。在SVC和MVC兩者中,對于帶寬或裝置能力的調適,在某一程度上支持整個位流的提取。在一些實例中,本發(fā)明的技術可應用于H. 264/AVC編解碼器或基于AVC的編解碼器,例如SVC、MVC或H. 264/AVC的其它擴展。此類編解碼器可經配置以當SEI消息在一個經譯碼圖片(例如,存取單元)內相關聯時辨識SEI消息,其中SEI消息可以ISO基礎媒體文件格式或MPEG-2系統(tǒng)位流封裝在所述存取單元內。所述技術還安排未來的譯碼標準(例如,H. 265/HEVC)以允許與由SEI消息描述的任何存取單元分離地傳遞SEI消息。關于作為另一實例的3GPP,支持3GP文件的HTTP/TCP/IP輸送以進行下載及漸進下載。此外,使用HTTP進行視頻串流傳輸可提供一些優(yōu)點,且基于HTTP的視頻串流傳輸服務正變得流行。HTTP串流傳輸可提供某些優(yōu)點,包括可使用現有因特網組件及協議,使得不需要作新的努力來開發(fā)用于經由網絡輸送視頻數據的新技術。其它傳輸協議(例如,RTP有效負載格式)需要中間網絡裝置(例如,中間盒)知曉媒體格式及信令上下文。且,HTTP串流傳輸可為客戶端驅動的,此可避免控制問題。舉例來說,為了利用特征來獲得最佳性能,服務器可追蹤尚未得到確認的包的大小及內容。服務器也可分析文件結構并重建構客戶端緩沖器的狀態(tài)以作出RD最佳切換/精簡決策。另外,可滿足對位流變化的約束以便保持服從所協商的簡檔。HTTP在已實施HTTP1.1的網絡服務器處不必需要新的硬件或軟件實施。HTTP串流傳輸還提供TCP易用性及防火墻穿越。在HTTP串流傳輸中,頻繁使用的操作包含GET及部分GET。GET操作檢索與給定統(tǒng)一資源定位符(URL)或統(tǒng)一資源名稱(URN)相關聯的整個文件。部分GET操作接收一字節(jié)范圍作為輸入參數且檢索對應于所接收到的字節(jié)范圍的文件的連續(xù)數目個字節(jié)。因此,可提供電影片段以進行HTTP串流傳輸,這是因為部分GET操作可取得一個或一個以上個別電影片段。請注意,在一電影片段中,可存在不同軌道的若干軌道片段。在HTTP串流傳輸中,媒體簡報可為客戶端可存取的數據的結構化集合。所述客戶端可請求并下載媒體數據信息以向用戶呈現串流傳輸服務。 圖1為說明其中音頻/視頻(A/V)源裝置20將音頻及視頻數據輸送到A/V目的地裝置40的實例系統(tǒng)10的框圖。圖1的系統(tǒng)10可對應于視頻電話會議系統(tǒng)、服務器/客戶端系統(tǒng)、廣播臺/接收器系統(tǒng),或其中將視頻數據從源裝置(例如,A/V源裝置20)發(fā)送到目的地裝置(例如,A/V目的地裝置40)的任何其它系統(tǒng)。在一些實例中,A/V源裝置20及A/V目的地裝置40可執(zhí)行雙向信息交換。即,A/V源裝置20及A/V目的地裝置40可能夠編碼及解碼(以及發(fā)射及接收)音頻及視頻數據。在一些實例中,音頻編碼器26可包括語音編碼器(也稱作聲碼器)。在圖1的實例中,A/V源裝置20包括音頻源22及視頻源24。舉例來說,音頻源22可包括麥克風,所述麥克風產生表示將由音頻編碼器26編碼的所俘獲音頻數據的電信號?;蛘?,音頻源22可包括存儲先前記錄的音頻數據的存儲媒體、例如計算機化合成器的音頻數據產生器,或任何其它音頻數據源。視頻源24可包括產生將由視頻編碼器28編碼的視頻數據的攝像機、編碼有先前記錄的視頻數據的存儲媒體、視頻數據產生單元,或任何其它視頻數據源。原始音頻及視頻數據可包括模擬或數字數據。在通過音頻編碼器26及/或視頻編碼器28編碼之前,模擬數據可經數字化。在講話參與者正在講話時,音頻源22可獲得來自講話參與者的音頻數據,且視頻源24可同時獲得所述講話參與者的視頻數據。在其它實例中,音頻源22可包括包含所存儲的音頻數據的計算機可讀存儲媒體,且視頻源24可包括包含所存儲的視頻數據的計算機可讀存儲媒體。以此方式,本發(fā)明中所描述的技術可應用于實況、串流傳輸的實時音頻及視頻數據或應用于經歸檔、預先記錄的音頻及視頻數據。對應于視頻幀的音頻幀一般為含有與在視頻幀內所含有的由視頻源24所俘獲的視頻數據同時由音頻源22俘獲的音頻數據的音頻幀。舉例來說,當講話參與者一般通過講話而產生音頻數據時,音頻源22俘獲音頻數據,且視頻源24同時(即,在音頻源22正俘獲音頻數據的同時)俘獲講話參與者的視頻數據。因此,音頻幀可在時間上對應于一個或一個以上特定視頻幀。因此,對應于視頻幀的音頻幀一般對應于其中同時俘獲到音頻數據及視頻數據且音頻幀及視頻幀分別包括音頻數據及同時俘獲的視頻數據的情形。在一些實例中,音頻編碼器26可將表示記錄每一經編碼的音頻幀的音頻數據的時間的時戳編碼于所述經編碼的音頻幀中,且類似地,視頻編碼器28可將表示記錄每一經編碼的視頻幀的視頻數據的時間的時戳編碼于所述經編碼的視頻幀中。在這些實例中,對應于視頻幀的音頻幀可包括包含時戳的音頻幀及包含同一時戳的視頻幀。A/V源裝置20可包含內部時鐘,音頻編碼器26及/或視頻編碼器28可從所述內部時鐘產生時戳,或音頻源22及視頻源24可使用所述內部時鐘來使音頻及視頻數據分別與一時戳相關聯。在一些實例中,音頻源22可將 對應于記錄音頻數據的時間的數據發(fā)送到音頻編碼器26,且視頻源24可將對應于記錄視頻數據的時間的數據發(fā)送到視頻編碼器28。在一些實例中,音頻編碼器26可將一序列識別符編碼于經編碼音頻數據中以指示經編碼音頻數據的相對時間排序而不必指示記錄音頻數據的絕對時間,且類似地,視頻編碼器28也可使用序列識別符來指示經編碼視頻數據的相對時間排序。類似地,在一些實例中,序列識別符可經映射或以其它方式與一時戳相關。本發(fā)明的技術大體上是針對經編碼多媒體(例如,音頻及視頻)數據的輸送,以及經輸送的多媒體數據的接收及后續(xù)的解譯及解碼。如圖1的實例中所展示,視頻源24可將一場景的多個視圖提供到視頻編碼器28。A/V源裝置20可將“服務”提供到A/V目的地裝置40。服務大體上對應于MVC數據的可用視圖的子集。舉例來說,MVC數據可能可用于排序成零到七的八個視圖。一個服務可對應于具有兩個視圖的立體視頻,而另一服務可對應于四個視圖,且又一服務可對應于所有八個視圖。大體來說,服務對應于可用視圖的任何組合(即,任何子集)。服務也可對應于可用視圖的組合以及音頻數據。操作點可對應于服務,使得A/V源裝置20可對于由A/V源裝置20提供的每一服務進一步提供操作點描述符。數據(無論是音頻還是視頻)的每一個別串流被稱作基本串流?;敬鳛橐还?jié)目的單一、經數字譯碼(可能經壓縮)的分量。舉例來說,所述節(jié)目的經譯碼視頻或音頻部分可為基本串流?;敬骺稍诜庋b于視頻文件內之如轉換成包化基本串流(PES)。在同一節(jié)目內,使用串流ID來區(qū)分屬于一個基本串流的PES包與屬于另一基本串流的PES包。基本串流的數據的基本單元為包化基本串流(PES)包。因此,MVC視頻數據的每一視圖對應于相應基本串流。類似地,音頻數據對應于一個或一個以上相應基本串流。根據本發(fā)明的技術,序列數據集(可包含例如序列參數集、圖片參數集和序列層級SEI消息)可包含在參數集軌道或參數集基本串流中。本發(fā)明的技術可應用于符合MPEG-2系統(tǒng)的視頻文件或視頻串流,包含經包化基本串流(PES)、節(jié)目串流(PS)和輸送串流(TS),及其AVC、SVC和MVC擴展。可將MVC經譯碼視頻序列分離成若干子位流,所述子位流中的每一者為基本串流??墒褂肕VC view_id子集來識別每一子位流?;诿恳?MVC view_id子集的概念,定義MVC視頻子位流。MVC視頻子位流含有列于MVC view_id子集中的視圖的NAL單元。節(jié)目串流通常僅含有來自基本串流的那些視圖的NAL單元。還設計任何兩個基本串流不可含有相同視圖。在圖1的實例中,封裝單元30接收包括來自視頻編碼器28的視頻數據的基本串流及包括來自音頻編碼器26的音頻數據的基本串流。在一些實例中,視頻編碼器28及音頻編碼器26可各自包含用于從經編碼數據形成PES包的包化器。在其它實例中,視頻編碼器28及音頻編碼器26可各自與用于從經編碼數據形成PES包的相應包化器介接。在再其它實例中,封裝單元30可包含用于從經編碼音頻及視頻數據形成PES包的包化器。如本發(fā)明中所使用的“節(jié)目”可包括音頻數據與視頻數據(例如,由A/V源裝置20的服務遞送的音頻基本串流及可用視圖的子集)的組合。每一 PES包包含識別PES包所屬于的基本串流的stream_id。封裝單元30負責將基本串流組裝成視頻文件。封裝單元30從音頻編碼器26及視頻編碼器28接收一節(jié)目的基本串流的PES包,且從所述PES包形成對應網絡抽象層(NAL)單元。在H.264/AVC (高級視頻譯碼)的實例中,將經譯碼視頻區(qū)段組織成NAL單元,此提供“網絡友好”視頻表示尋址應用,例如視頻電話、存儲、廣播或串流傳輸。NAL單元可分類為視頻譯碼層(VCL)NAL單元及非VCL NAL單元。VCL單元可含有核心壓縮引擎,且可包含塊、宏塊及/或切片層級數據。其它NAL單元可為非VCL NAL單元。在一些實例中,一個時間實例(time instance)中的經譯碼圖片(通常呈現為主要經譯碼圖片)可含于一存取單元中,所述存取單元可包含一個或一個以上NAL單元。非VCL NAL單元可包含參數集NAL單元及SEI NAL單元,及其它單元。參數集可含有序列層級標頭信息(在序列參數集(SPS)中)及很少改變的圖片層級標頭信息(在圖片參數集(PPS)中)。就參數集(例如,PPS及SPS)而論,無需對于每一序列或圖片來重復很少改變的信息,因此可改善譯碼效率。此外,參數集的使用可實現重要標頭信息的頻帶外傳輸,從而避免為了錯誤恢復而進行冗余傳輸的需要。在頻帶外傳輸實例中,參數集NAL單元可在與其它NAL單元(例如,SEI NAL單元)不同的信道上傳輸。補充增強信息(SEI)可含有對于從VCL NAL單元解碼經譯碼圖片樣本來說并非必要但是可有助于與解碼、顯示、錯誤恢復和其它目的有關的過程的信息。SEI消息可含于非VCL NAL單元中。SEI消息是一些標準規(guī)范的標準化部分,且因此對于符合標準的解碼器實施方案并非總是強制的。SEI消息可為序列層級SEI消息或圖片層級SEI消息。一些序列層級信息可含于SEI消息中,例如在SVC實例中的可縮放性信息SEI消息和在MVC中的視圖可縮放性信息SEI消息。這些實例SEI消息可傳遞關于例如操作點的提取和操作點的特性的信息。 根據本發(fā)明的技術,封裝單元30可布置視頻文件的數據以使得序列層級SEI消息與由序列層級SEI消息描述的經譯碼視頻圖片解耦。以此方式,封裝單元30可將序列層級SEI消息與含有經譯碼視頻數據的特定存取單元解耦。舉例來說,封裝單元30可在參數集基本串流中包含序列層級SEI消息,以及SPS和PPS數據,例如用于根據AVC或其擴展(例如MVC和SVC)編碼的視頻數據。另外,對于其中視頻數據是根據MVC和/或SVC編碼的實例,封裝單元30可在參數集基本串流中包含子集SPS。在一些實例中,封裝單元30可經配置以將僅某些SEI消息放置于參數集基本串流中。舉例來說,對于H. 264/AVC,封裝單元30可在參數集基本串流中包含描述平移掃描矩形和立體視頻信息的SEI消息。作為另一實例,對于SVC,封裝單元30可在參數集基本串流中包含描述可縮放性信息的SEI消息。作為又一實例,對于MVC,封裝單元30可包含描述視圖可縮放性彳目息、多視圖獲取彳目息和多視圖場景彳目息的SEI消息。大體上,SPS和PPS (和子集SPS,例如對于MVC和SVC)以及序列層級SEI消息可統(tǒng)稱為“序列數據集”。如上文論述,序列數據集可包含在例如參數集基本串流等單獨軌道中。在一些實例中,并非將序列數據集放置于單獨參數軌道中,而是封裝單元30可在文件中連續(xù)地呈現一序列的序列數據集,使得目的地裝置40可使用HTTP部分GET請求來檢索整個序列數據集。舉例來說,序列數據集可含于專門的視頻樣本中,所述視頻樣本不含經譯碼視頻數據,例如經譯碼視頻圖片的部分或全體。通過將序列數據集與由序列數據集描述的視頻數據分離,目的地裝置40可與由序列數據集描述的視頻數據分離地檢索序列數據集。以此方式,源裝置20可在將由序列數據集描述的視頻數據發(fā)射到目的地裝置40之前將序列數據集發(fā)射到目的地裝置40。因此,源裝置20可在將含有經譯碼視頻圖片的電影片段發(fā)送到目的地裝置40之前將序列數據集發(fā)送到目的地裝置40。在一些實例中,例如關于3GPP視頻文件的使用,序列參數集可包含在單獨的3GPP文件中,所述3GPP文件可在目的地裝置40存取媒體簡報描述符之后發(fā)送到目的地裝置40。也就是說,目的地裝置40可檢索視頻數據序列的媒體簡報描述符,隨后檢索包含所述視頻數據序列的序列數據集的3GPP文件,且隨后檢索所述視頻數據序列自身。在一些實例中,序列數據集可形成媒體簡報描述符自身的部分。在一些實例中,序列數據集可包含在不含經譯碼視頻數據的電影盒的部分中。在一些實例中,序列數據集可形成放置于電影盒之后的電影片段。 封裝單元30可形成包括識別NAL所屬于的節(jié)目的標頭以及有效負載(例如,音頻數據、視頻數據或描述NAL單元所對應的輸送串流或節(jié)目串流的數據)的NAL單元。舉例來說,在H. 264/AVC中,NAL單元包含I字節(jié)的標頭及變化大小的有效負載。在一個實例中,NAL 單兀標頭包括 priority_id 兀素、temporal_id 兀素、anchor_pic_flag 兀素、view_id元素、non_idr_flag元素,及inter_view_f lag元素。在常規(guī)MVC中,除了包含4字節(jié)的MVC NAL單元標頭及NAL單元有效負載的前綴NAL單元及MVC經譯碼切片NAL單元外,保留
H.264所定義的NAL單元。NAL標頭的priority_id元素可用于簡單的單路徑位流調適過程。temporal_id元素可用于指定對應NAL單元的時間層級,其中不同時間層級對應于不同幀速率。anchor_pic_flag元素可指示圖片為錨定圖片還是非錨定圖片。錨定圖片及輸出次序(即,顯示次序)在錨定圖片后的所有圖片可正確地加以解碼而無需對解碼次序(即,位流次序)在前的圖片進行解碼,且因此,可用作隨機存取點。錨定圖片及非錨定圖片可具有不同相依性,兩者均在序列參數集中用信號表示。其它旗標將被論述并用于此章的以下部分中。此錨定圖片也可稱為開放GOP(圖片群組)存取點,而在non_idr_flag元素等于零時也支持封閉GOP存取點。non_idr_flag元素指示圖片為瞬時解碼器刷新(IDR)還是視圖1DR(V-1DR)圖片。通常,可正確地解碼IDR圖片及輸出次序或位流次序在其后的所有圖片而無需對解碼次序或顯示次序在前的圖片進行解碼。view_id元素可包括可用以識別視圖的語法信息,其可用于MVC解碼器內的數據互動功能(例如,用于視圖間預測)且可用于解碼器外的數據互動功能(例如,用于再現)。inter_view_flag元素可指定是否由其它視圖使用對應NAL單元以用于視圖間預測。為了傳達可符合AVC的用于基礎視圖的4字節(jié)NAL單元標頭信息,在MVC中定義前綴NAL單元。在MVC的上下文中,基礎視圖存取單元包含視圖的當前時間實例的VCL NAL單元以及其僅含有NAL單元標頭的前綴NAL單元。H. 264/AVC解碼器可忽略前綴NAL單元。在有效負載中包含視頻數據的NAL單元可包括各種粒度層級的視頻數據。舉例來說,NAL單元可包括一視頻數據塊、一宏塊、多個宏塊、一視頻數據切片,或視頻數據的整個幀。封裝單元30可從視頻編碼器28接收呈基本串流的PES包的形式的經編碼視頻數據。封裝單元30可使每一基本串流與對應節(jié)目相關聯。封裝單元30也可從多個NAL單元組裝存取單元。通常,一存取單元可包括用于表示一視頻數據幀以及對應于所述幀的音頻數據(當此音頻數據可用時)的一個或一個以上NAL單元。一存取單元通常包含一個輸出時間實例的所有NAL單元,例如,一個時間實例的所有音頻及視頻數據。舉例來說,如果每一視圖具有20個幀/秒(fps)的幀速率,則每一時間實例可對應于0. 05秒的時間間隔。在此時間間隔期間,可同時再現同一存取單元(同一時間實例)的所有視圖的特定幀。在對應于H. 264/AVC的實例中,一存取單元可包括一個時間實例中的一經譯碼圖片,所述經譯碼圖片可呈現為主要經譯碼圖片。因此,一存取單元可包括一共同時間實例的所有音頻及視頻幀,例如對應于時間X的所有視圖。本發(fā)明還將一特定視圖的經編碼圖片稱作“視圖分量”。即,一視圖分量可包括在特定時間的一特定視圖的經編碼圖片(或幀)。因此,存取單元可定義為包括一共同時間實例的所有視圖分量。存取單元的解碼次序不必必須與輸出或顯示次序相同。如同大多數視頻譯碼標準,H. 264/AVC定義無錯誤位流的語法、語意及解碼過程,所述各者中的任一者均遵照某一簡檔或層級。H. 264/AVC不指定編碼器,但編碼器的任務是保證所產生的位流對于解碼器來說符合標準。在視頻譯碼標準的上下文中,“簡檔”對應于算法、特征或工具及施加于其的約束的一子集。如由H. 264標準所定義,例如,“簡檔”為由
H.264標準指定的整個位流語法的一子集?!皩蛹墶睂诮獯a器資源消耗(例如,解碼器存儲器及計算)的限制,所述限制與圖片的分辨率、位速率及宏塊(MB)處理速率有關。可以pr0file_idC (簡檔指示符)值用信號表`示一簡檔,而可以Ievelidc (層級指示符)值用信號表不一層級。舉例來說,H. 264標準認識到,在給定簡檔的語法外加的邊界內,仍有可能需要編碼器及解碼器的性能的大變化,這取決于位流中的語法元素所采取的值(例如,經解碼圖片的指定大小)。札264標準進一步認識到,在許多應用中,實施能夠應對一特定簡檔內的語法的所有假設使用的解碼器既不實際也不經濟。因此,H. 264標準將“層級”定義為外加于位流中的語法元素的值的約束的一指定集合。這些約束可為對值的簡單限制?;蛘?,這些約束可采取對值的算術組合(例如,圖片寬度乘以圖片高度乘以每秒解碼的圖片的數目)的約束的形式。H. 264標準進一步使得個別實施方案可對于每一受支持簡檔支持一不同層級。遵照一簡檔的解碼器通常支持所述簡檔中定義的所有特征。舉例來說,作為一譯碼特征,B圖片譯碼在H. 264/AVC的基線簡檔中不受支持,但在H. 264/AVC的其它簡檔中受到支持。遵照一層級的解碼器應能夠解碼不需要超出所述層級中定義的限制的資源的任何位流。簡檔及層級的定義可有助于可解譯性。舉例來說,在視頻傳輸期間,一對簡檔及層級定義可對于整個傳輸會話來加以協商并達成一致。更特定來說,在a 264/AVC中,層級可定義(例如)對以下各者的限制需要處理的宏塊的數目、經解碼圖片緩沖器(DPB)大小、經譯碼圖片緩沖器(CPB)大小、垂直運動向量范圍、每兩個連續(xù)MB的運動向量的最大數目,及B塊是否可具有小于8X8像素的子宏塊分割區(qū)。以此方式,一解碼器可確定所述解碼器是否能夠適當地解碼所述位流。參數集通常含有序列層標頭信息(在序列參數集(SPS)中)及很少改變的圖片層標頭信息(在圖片參數集(PPS)中)。就參數集而論,無需對于每一序列或圖片來重復此很少改變的信息,因此可改善譯碼效率。此外,參數集的使用可實現標頭信息的頻帶外傳輸,從而避免為了錯誤恢復而進行冗余傳輸的需要。在頻帶外傳輸中,參數集NAL單元是在與其它NAL單元不同的信道上傳輸。SVC和MVC的實例提供用于可縮放視頻或多視圖視頻的序列參數集(SPS)擴展。SPS擴展信息可含于子SPS NAL單元中,所述單元可具有與其它NAL單元不同的NAL單元類型。受支持操作點的簡檔和層級信息可包含于包含SPS擴展信息的NAL單元中。媒體簡報可包含媒體簡報描述符(MPD),其可含有不同的替代表示(例如,具有不同質量的視頻服務)的描述且所述描述可包含例如編解碼器信息、簡檔值和層級值。目的地裝置40可檢索媒體簡報 盒)中。視頻壓縮標準(例如,ITU-TH. 261、H. 262、H. 263、MPEG-1, MPEG-2 及 H. 264/MPEG-4第10部分)利用運動補償時間預測來減少時間冗余。編碼器使用從一些先前經編碼圖片(本文中也被稱作幀)的運動補償預測以根據運動向量來預測當前經譯碼圖片。在典型視頻譯碼中,存在三種主要圖片類型。所述三種主要圖片類型為經幀內譯碼圖片(“I圖片”或“I幀”)、預測圖片(“P圖片”或“P幀”)及雙向預測圖片(“B圖片”或“B幀”)。P圖片僅使用時間次序在當前圖片之前的參考圖片。在B圖片中,可從一個或兩個參考圖片來預測所述B圖片的每一塊。這些參考圖片的時間次序可位于當前圖片之前或之后。根據H. 264譯碼標準,作為一實例,B圖片使用先前經譯碼參考圖片的兩個列表,列表0及列表I。這兩個列表可各自含有時間次序上為過去及/或未來的經譯碼圖片??梢砸韵氯舾煞绞街械囊徽哳A測B圖片中的塊根據列表0參考圖片的運動補償預測、根據列表I參考圖片的運動補償預測,或根據列表0參考圖片與列表I參考圖片兩者的組合的運動補償預測。為了得到列表0參考圖片與列表I參考圖片兩者的組合,分別從列表0與列表I參考圖片獲得兩個運動補償參考區(qū)域。所述兩個運動補償參考區(qū)域的組合將用以預測當前塊。ITU-T H. 264標準支持各種塊大小的幀內預測(例如,對于明度分量的16乘16、8乘8或4乘4,以及對于色度分量的8X8)以及各種塊大小的幀間預測(例如,對于明度分量的16X16、16X8、8X16、8X8、8X4、4X8及4X4,以及對于色度分量的對應經縮放大小)。在本發(fā)明中,“ X ”與“乘”可互換使用以指代按照垂直及水平尺寸的塊的像素尺寸,例如,16X16像素或16乘16像素。一般來說,16X16塊將在垂直方向上具有16個像素(y=16),且在水平方向上具有16個像素(x=16)。同樣,NXN塊一般在垂直方向上具有N個像素,且在水平方向上具有N個像素,其中N表示非負整數值??蓪K中的像素排列成行及列。小于16乘16的塊大小可稱作16乘16宏塊的分割區(qū)。視頻塊可包括像素域中的像素數據的塊,或變換域中的變換系數的塊,例如,以下變換應用,例如離散余弦變換(DCT)、整數變換、小波變換,或與殘余視頻塊數據在概念上類似的變換,所述殘余視頻塊數據表示經譯碼視頻塊與預測性視頻塊之間的像素差。在一些狀況下,視頻塊可包括變換域中的經量化變換系數的塊。較小視頻塊可提供較好分辨率,且可用于包含高細節(jié)水平的視頻幀的位置。一般來說,可將宏塊及各種分割區(qū)(有時稱作子塊)視為視頻塊。另外,可將一切片視為多個視頻塊,例如宏塊及/或子塊。每一切片可為一視頻幀的可獨立解碼單元。或者,幀自身可為可解碼單元,或幀的其它部分可被定義為可解碼單元。術語“經譯碼單元”或“譯碼單元”可指代一視頻幀的任何可獨立解碼單元,例如整個幀、幀的一切片、也稱作序列的圖片群組(GOP),或根據適用的譯碼技術定義的另一可獨立解碼單元。術語宏塊指用于根據包括16X 16像素的二維像素陣列編碼圖片及/或視頻數據的數據結構。每一像素包括一色度分量及一亮度分量。因此,宏塊可界定四個亮度塊(各自包括8X8像素的二維陣列)、兩個色度塊(各自包括16X16像素的二維陣列)及一標頭,所述標頭包括語法信息,例如經譯碼塊模式(CBP)、編碼模式(例如,幀內(I)或幀間(P或B)編碼模式)、經幀內編碼塊的分割區(qū)的分割區(qū)大小(例如,16 X 16、16 X 8、8 X 16、8 X 8、8X4、4X8或4X4),或經幀間編碼宏塊的一個或一個以上運動向量。視頻編碼器28、視頻解碼器48、音頻編碼器26、音頻解碼器46、封裝單元30及解封裝單元38在適當時各自可實施為各種合適處理電路中的任一者,例如一個或一個以上微處理器、數字信號處理器(DSP)、專用集成電路(ASIC)、現場可編程門陣列(FPGA)、離散邏輯電路、軟件、硬件、固件,或其任何組合。視頻編碼器28及視頻解碼器48中的每一者可包含于一個或一個以上編碼器或解碼器中,其任一者可集成為組合式視頻編碼器/解碼器(CODEC)的部分。同樣,音頻編碼器26及音頻解碼器46中的每一者可包含于一個或一個以上編碼器或解碼器中,其任一者可集 成為組合式CODEC的部分。包含視頻編碼器28、視頻解碼器48、音頻編碼器音頻編碼器26、音頻解碼器46、封裝單元30及/或解封裝單元38的設備可包括集成電路、微處理器及/或無線通信裝置,例如蜂窩式電話。在封裝單元30已基于接收到的數據將NAL單元及/或存取單元組裝成一視頻文件之后,封裝單元30將所述視頻文件傳遞到輸出接口 32以供輸出。在一些實例中,封裝單元30可在本地存儲所述視頻文件或經由輸出接口 32將所述視頻文件發(fā)送到遠程服務器,而非直接將所述視頻文件發(fā)送到目的地裝置40。舉例來說,輸出接口 32可包括發(fā)射器、收發(fā)器、用于將數據寫入到計算機可讀媒體的裝置,例如光驅、磁性媒體驅動器(例如,軟驅動器)、通用串行總線(USB)端口、網絡接口或其它輸出接口。輸出接口 32將所述視頻文件輸出到計算機可讀媒體34,例如傳輸信號、磁性媒體、光學媒體、存儲器、快閃驅動器或其它計算機可讀媒體。最終,輸入接口 36從計算機可讀媒體34檢索數據。舉例來說,輸入接口 36可包括光驅、磁性媒體驅動器、USB端口、接收器、收發(fā)器或其它計算機可讀媒體接口。輸入接口36可將NAL單元或存取單元提供到解封裝單元38。解封裝單元38可將一視頻文件的元素解封裝成組成的PES串流、將所述PES串流解包化以檢索經編碼數據,及將所述經編碼數據發(fā)送到音頻解碼器46或視頻解碼器48,這取決于所述經編碼數據是音頻串流的部分還是視頻串流的部分,例如由所述串流的PES包標頭所指示。音頻解碼器46解碼經編碼音頻數據且將所述經解碼音頻數據發(fā)送到音頻輸出42,而視頻解碼器48解碼經編碼視頻數據,且將所述經解碼視頻數據(其可包含一串流的多個視圖)發(fā)送到視頻輸出44。
另外,解封裝單元38可將經解碼序列數據集(可包含PPS數據、SPS數據和/或序列層級SEI消息)發(fā)送到視頻輸出44。視頻輸出44可包括使用一場景的單個視圖或一場景的多個視圖的顯示,例如同時或快速交替連續(xù)地呈現一場景的每一視圖的立體或自由立體顯示。視頻輸出44可使用序列數據集來顯示經解碼視頻圖片。序列層級SEI消息也可用以輔助解碼過程,但適當解碼視頻序列的樣本并不需要SEI消息。因此,視頻解碼器48也可在解碼視頻文件的視頻樣本時使用序列層級SEI消息。如上所述,SEI消息可用于多種目的。舉例來說,序列層級SEI消息可描述平移掃描信息,所述信息用于調整視頻數據以適應顯示時的各種屏幕大小。因此,視頻輸出44(或其控制單元)可使用序列層級SEI消息來調整視頻數據以由視頻輸出44顯示。作為另一實例,序列層級SEI消息可描述立體視頻信息。也就是說,序列層級SEI消息可描述哪些圖片是用于三維視頻應用的“左”或“右”圖像。因此,視頻輸出44可使用序列層級SEI消息來確定如何呈現三維視頻數據。舉例來說,視頻輸出44可使用光的不同極化或以不同的濾色器(例如,紅和綠)來顯示左圖像和右圖像,或可在左圖像與右圖像之間快速地交替,使得與視頻輸出44相關聯的作用中眼鏡可在允許光通過的透鏡之間交替。作為又一實例,序列層級SEI消息可提供可縮放性信息,例如對于其中根據SVC或MVC來構建視頻文件的實例。因此,視頻解碼器48可使用序列層級SEI消息來確定增強層信息是否已被接收,且因此確定是否使用接收到的增強層數據或內插值以對基本層視頻數據進行上取樣。作為另一實例,序列層級SEI消息可提供多視圖獲取信息或多視圖場景信息,例如對于其中根據MVC來構建視頻文件的實例。大體上,多視圖獲取信息SEI消息指定獲取環(huán)境的參數,例如固有和非固有相機參數、視圖數目、焦距、主點、偏斜因數、旋轉參數和/或平移參數。多視圖場景信息SEI消息可在俘獲視圖時指定多個視圖之間的最大相異性。此信息可在解碼和/或再現三維視頻數據時,例如當從現存圖像構建額外圖像時由視頻解碼器48和/或視頻輸出44使用。多視圖場景信息還可描述在圖像獲取期間一個或一個以上相機或條件的特性,例如因(例如)高達1024個視圖的相機設定引起的最大相異性是什么。多視圖場景信息還可提供與相機校準和糾正相關的細節(jié)。圖2為說明實例封裝單元30的組件的框圖。在圖2的實例中,封裝單元30包含視頻輸入接口 80、音頻輸入接口 82、視頻文件創(chuàng)建單元60及視頻文件輸出接口 84。在此實例中,視頻文件創(chuàng)建單元60包含網絡抽象層(NAL)單元建構器62、SEI消息提取單元64和序列數據集創(chuàng)建單元66。
`
視頻輸入接口 80及音頻輸入接口 82分別接收經編碼視頻及音頻數據。當數據經編碼時,視頻輸入接口 80及音頻輸入接口 82可接收經編碼視頻及音頻數據,或可從計算機可讀媒體檢索經編碼視頻及音頻數據。在接收到經編碼視頻及音頻數據后,視頻輸入接口80及音頻輸入接口 82即刻將經編碼視頻及音頻數據傳遞到視頻文件創(chuàng)建單元60以組裝成一視頻文件。視頻文件創(chuàng)建單元60可對應于一控制單元,所述控制單元包含經配置以執(zhí)行歸其所有的功能及程序的硬件、軟件及/或固件。所述控制單元可進一步執(zhí)行大體上歸封裝單元30所有的功能。對于其中視頻文件創(chuàng)建單元60以軟件和/或固件體現的實例,封裝單元30可包含包括用于視頻文件創(chuàng)建單元60的指令的計算機可讀媒體,和用以執(zhí)行所述指令的處理單元。視頻文件創(chuàng)建單元60的子單元(在此實例中,為NAL單元建構器62、SEI消息提取單元64和序列數據集創(chuàng)建單元66)中的每一者可實施為個別硬件單元及/或軟件模塊,及/或可在功能上集成或進一步分離成額外子單元。視頻文件創(chuàng)建單元60可對應于任何合適處理單元或處理電路,例如一個或一個以上微處理器、專用集成電路(ASIC)、現場可編程門陣列(FPGA)、數字信號處理器(DSP),或其任何組合。視頻文件創(chuàng)建單元60可進一步包含存儲用于NAL單元建構器62、SEI消息提取單元64和序列數據集創(chuàng)建單元66中的任一者或全部的指令的非暫時性計算機可讀媒體,以及用于執(zhí)行所述指令的處理器。通常,視頻文件創(chuàng)建單元60可創(chuàng)建包含接收到的音頻及視頻數據的視頻文件。NAL單元建構器62可形成包含經編碼視頻及音頻樣本的NAL單元。視頻文件創(chuàng)建單元60可進一步經配置以組裝包含特定時間實例的所有NAL單元的存取單元。此外,視頻文件創(chuàng)建單元60可經配置以使序列層級SEI消息與由序列層級SEI消息描述的經編碼視頻圖片解耦,且與由序列層級SEI消息描述的經編碼視頻圖片分離地將序列層級SEI消息存儲在創(chuàng)建的視頻文件中。視頻編碼器28 (圖1)可與視頻數據樣本一起包含SEI消息。在一些情況下,針對若干個別樣本從視頻編碼器28接收的SEI消息對于樣本中的每一者來說可為相同的。因此,并非針對樣本中的每一者發(fā)射相同SEI消息,在確定個別樣本的SEI消息對于所述樣本中的每一者來說相同(或非常類似)后,SEI消息提取單元64可將SEI消息與由SEI消息描述的樣本分離。可與一個以上經編碼視頻圖片相關的此類SEI消息可稱為序列層級SEI消息。另外或替代地,視頻文件創(chuàng)建單元60可經配置以產生經譯碼視頻圖片序列的序列層級SEI消息。以此方式,視頻文 件創(chuàng)建單元60可產生序列層級SEI消息或將現存SEI消息與視頻樣本分離以形成描述視頻樣本中的一者或一者以上的序列層級SEI消息。序列數據集創(chuàng)建單元66可創(chuàng)建由視頻文件創(chuàng)建單元60產生的視頻文件的序列數據集。序列數據集創(chuàng)建單元66可以序列參數集和/或圖片參數集數據來分組序列層級SEI消息。舉例來說,序列數據集創(chuàng)建單元66可在參數集基本串流中包含序列層級SEI消息,所述參數集基本串流包含SPS和PPS,且在一些實例(例如,關于SVC和MVC)中包含子集SPS0作為另一實例,序列數據集創(chuàng)建單元66可包含經創(chuàng)建視頻文件的一連續(xù)部分中的經譯碼視頻圖片序列的序列層級SEI消息。也就是說,序列數據集創(chuàng)建單元66可確保特定經譯碼視頻圖片序列的序列層級SEI消息的數據在連續(xù)的一串一個或一個以上字節(jié)中分組在一起。舉例來說,序列數據集創(chuàng)建單元66可將序列數據集的序列層級SEI消息和其它數據組裝成特定視頻樣本,所述特定視頻樣本不含經譯碼視頻圖片的任一部分。作為另一實例,例如關于3GPP,序列數據集創(chuàng)建單元66可將經譯碼視頻圖片序列的序列數據集組裝成相對小的3GPP文件,所述3GPP文件位于包含由序列數據集描述的經譯碼視頻圖片序列的一個或一個以上3GPP文件之前。替代地,序列數據集創(chuàng)建單元66可針對包含一個或一個以上3GPP文件的一個或一個以上相關簡報在媒體簡報描述(MPD)文件中包含序列數據集。作為又一實例,序列數據集創(chuàng)建單元66可在視頻文件的電影盒(moov盒)不包含經譯碼視頻圖片時在所述電影盒內包含序列數據集。作為另一實例,序列數據集創(chuàng)建單元66可在發(fā)生于視頻文件的電影盒(moov盒)之后但在包含經譯碼視頻圖片的任何電影片段盒之前的電影片段盒(moof盒)內包含序列數據集。通過將SPS、PPS、序列層級SEI消息和/或子集SPS分組為序列數據集,序列數據集創(chuàng)建單元66可簡化將序列數據提供到客戶端裝置(例如目的地裝置40)的任務。以此方式,序列層級SEI消息可在由序列層級SEI消息描述的經譯碼視頻圖片發(fā)射到目的地裝置40之前發(fā)射到目的地裝置40。大體上,序列數據集的SPS、PPS和序列層級SEI消息預期針對由序列數據集描述的視頻樣本序列保持恒定。然而,在一些情況下,SPS、PPS和/或序列層級SEI消息的某些部分可針對個別經譯碼視頻圖片或針對經譯碼視頻圖片的集合或子序列稍微有所不同。舉例來說,在封裝有若干經譯碼視頻圖片的視頻文件中,可存在不一定共享SPS、PPS或序列層級SEI消息的相同信息的一個或一個以上序列。當此情況發(fā)生時,序列數據集創(chuàng)建單元66可創(chuàng)建多個參數集軌道,其中每一軌道可包含一組SPS、PPS和/或SEI消息,以及指示軌道的序列數據集何時適用的時序信息的指示。舉例來說,所述時序信息可指示視頻序列的開始時間,其指示軌道開始應用于視頻序列的時間和/或包含時序信息的軌道不再適用的視頻序列結束時間。替代地,每一軌道的時序信息可僅指示結束時間,使得在到達特定參數集軌道的結束時間后,客戶端裝置可跳到下一參數集軌道。此時序信息可 對應于協調世界時間(UTC)或參數集軌道在用于呈文件封裝格式的整個視頻的時間標度中適用于的最后一視頻樣本(對于結束時間來說)的持續(xù)時間。多個參數集軌道中的一者可適用于視頻文件的所有樣本。序列數據集創(chuàng)建單元66可通過將參數集軌道的時序信息設定為比任一電影樣本或電影片段晚的UTC時間,來指示適用于視頻文件的所有樣本的參數集軌道。替代地,序列數據集創(chuàng)建單元66可針對適用于視頻文件的所有樣本的參數集軌道的時序信息指示零持續(xù)時間。對于其中序列數據集創(chuàng)建單元66創(chuàng)建多個參數集軌道的實例,序列數據集創(chuàng)建單元66可對參數集軌道中的每一者指派相應的唯一識別符。當例如目的地裝置40等客戶端裝置例如通過本地重放或在HTTP串流傳輸期間請求尋覓特定時間位置時,目的地裝置40可確定若干參數集軌道中的哪一者適用于所尋覓的時間位置??蛻舳搜b置可請求具有指示相應參數集軌道適用于比所尋覓時間位置晚的視頻樣本的時序信息的參數集軌道的識別符。服務器(例如,源裝置20)可維持用以標記此類相關參數集軌道的數據結構以確保相關參數集軌道遞送到客戶端,例如在HTTP串流傳輸的上下文中。在本地重放期間,客戶端可維持類似的數據結構以確保相關參數集軌道由客戶端裝置剖析。而且,并非包含若干參數集軌道,序列數據集創(chuàng)建單元66可在視頻文件中包含若干序列數據集,其中每一者可連續(xù)地存儲在文件內。也就是說,序列數據集中的每一者可連續(xù)地存儲以使得所述序列數據集中的特定一者的所有數據是連續(xù)的,但所述序列數據集不需要彼此連續(xù)地存儲。舉例來說,序列數據集創(chuàng)建單元66可在一序列數據集相關的一系列片段之前的視頻片段中存儲所述序列數據集,且隨后在所述系列片段之后存儲一新序列數據集。所述新序列數據集可與在存儲所述新序列數據集的片段之后的其它視頻片段相關。當在文件中存儲多個序列數據集時,序列數據集創(chuàng)建單元66可提供所述序列數據集中的每一者的時序信息,以及所述序列數據集中的每一者的唯一識別符。在視頻文件創(chuàng)建單元60產生包含與由序列層級SEI消息描述的經譯碼視頻圖片分離的序列層級SEI消息的視頻文件之后,視頻文件創(chuàng)建單元60可將視頻文件傳遞到視頻文件輸出接口 84。視頻文件輸出接口 84可將視頻文件輸出(例如)到源裝置20的輸出接口 32。在一些實例中,視頻文件輸出接口 84可將視頻文件輸出到源裝置20的存儲媒體(未圖示)。視頻文件可在本地存儲于源裝置20內、可存儲到便攜式存儲媒體(例如,DVD、藍光光盤、快閃驅動器、軟磁盤或其它便攜式存儲媒體)、可經由網絡輸出(例如,根據例如HTTP串流傳輸等串流傳輸協議)或以其它方式輸出,使得可由客戶端裝置(例如,目的地裝置40)來接收視頻文件。以此方式,視頻數據(例如,序列層級SEI消息和由序列層級SEI消息描述的經譯碼視頻圖片)的輸出可包含視頻數據的存儲、傳送、發(fā)射和廣播。圖3為說明 可在各種位置中包含序列層級SEI消息的實例視頻文件100的元素的框圖。如上文所描述,根據ISO基礎媒體文件格式及其擴展,視頻文件將數據存儲于被稱為“盒”的一系列對象中。在圖3的實例中,視頻文件100包含文件類型(FTYP)盒102、電影(MOOV)盒104、電影片段(MOOF)盒112及電影片段隨機存取(MFRA)盒114。文件類型盒102大體上描述視頻文件100的文件類型。文件類型盒102可包含識別描述視頻文件100的最佳用途的規(guī)范的數據。文件類型盒102可置于MOOV盒104、電影片段盒112及MFRA盒114之前。在圖3的實例中,MOOV盒104包含電影標頭(MVHD)盒106、軌道(TRAK)盒108及一個或一個以上電影擴展(MVEX)盒110。大體來說,MVHD盒106可描述視頻文件100的一般特性。舉例來說,MVHD盒106可包含描述在何時起初創(chuàng)建視頻文件100、在何時最后修改視頻文件100、視頻文件100的時間標度、視頻文件100的重放持續(xù)時間的數據,或大體上描述視頻文件100的其它數據。TRAK盒108可包含視頻文件100的軌道的數據。TRAK盒108可包含描述對應于TRAK盒108的軌道的特性的軌道標頭(TKHD)盒。在一些實例中,TRAK盒108可包含經譯碼視頻圖片,而在其它實例中,軌道的經譯碼視頻圖片可包含于可由TRAK盒108的數據參考的電影片段112中。在一些實例中,視頻文件100可包含一個以上軌道。因此,MOOV盒104可包含等于視頻文件100中的軌道的數目的數個TRAK盒。TRAK盒108可描述視頻文件100的對應軌道的特性。舉例來說,TRAK盒108可描述對應軌道的時間及/或空間信息。在封裝單元30(圖1)在視頻文件(例如,視頻文件100)中包含參數集軌道時,類似于MOOV盒104的TRAK盒108的TRAK盒可描述參數集軌道的特性。封裝單元30可用信號表示描述參數集軌道的TRAK盒內的參數集軌道中的序列層級SEI消息的存在。MVEX盒110可描述對應電影片段112的特性,例如用信號表示視頻文件100除包含于MOOV盒104內的視頻數據(如果存在)外還包含電影片段112。在串流傳輸視頻數據的上下文中,經譯碼視頻圖片可包含于電影片段112中而非包含于MOOV盒104中。因此,所有經譯碼視頻圖片可包含于電影片段112中而非包括于MOOV盒104中。MOOV盒104可包含等于視頻文件100中的電影片段112的數目的數個MVEX盒110。MVEX盒110中的每一者可描述電影片段112中的對應一者的特性。舉例來說,每一MVEX盒可包含電影擴展標頭盒(MEHD)盒,其描述電影片段112中的對應一者的持續(xù)時間。如上所述,封裝單元30可在不包含實際經譯碼視頻數據的視頻樣本中存儲序列數據集。視頻樣本可大體上對應于存取單元,所述存取單元為在特定時間實例處經譯碼圖片的表示。在AVC的上下文中,經譯碼圖片包含一個或一個以上VCL NAL單元,其含有用以構建存取單元和其它相關聯非VCL NAL單元的所有像素的信息,例如SEI消息。因此,封裝單元30可在電影片段112中的一者中包含序列數據集,其可包含序列層級SEI消息。封裝單元30可進一步將序列數據集和/或序列層級SEI消息的存在用信號表示為存在于電影片段112中的一者中位于MVEX盒110中對應于電影片段112中的所述一者的一者內。電影片段112可包含一個或一個以上經譯碼視頻圖片。在一些實例中,電影片段112可包含一個或一個以上圖片群組(GOP),所述圖片群組中的每一者可包含若干經譯碼視頻圖片,例如幀或圖片。另外,如上文所描述,在一些實例中,電影片段112可包含序列數據集。電影片段112中的每一者可包含電影片段標頭盒(MFHD)。MVHD盒可描述對應電影片段的特性,例如電影片段的序號。電影片段112可按序號次序包含于視頻文件100中。MFRA盒114可描述視頻文件100的電影片段112內的隨機存取點。這可輔助執(zhí)行在視頻文件100內尋覓特定時間位置。對于一些實例,MFRA盒114通常為任選的,且不需要包含于視頻文件中。同樣,例如目的地裝置40的客戶端裝置不一定需要參考MFRA盒114來正確地解碼并顯示 視頻文件100的視頻數據。MFRA盒114可包含等于視頻文件100的軌道的數目或(在一些實例中)等于視頻文件100的媒體軌道(例如,非提示軌道)的數目的數個軌道片段隨機存取(TFRA)盒。圖4是說明另一實例視頻文件140的元素的框圖,所述另一實例視頻文件140包含含有序列層級SEI消息156的參數集軌道146。特定來說,視頻文件140包含MOOV盒142和MDAT盒150。視頻文件140可進一步包含其它盒,例如文件類型盒和/或MFRA盒等等。在圖4的實例中,MOOV盒142包含視頻數據軌道144和參數集軌道146。參數集軌道146對應于圖片參數集(PPS) 152、序列參數集(SPS) 154和序列層級補充增強信息(SLSEI)消息156。視頻數據軌道144對應于視頻片段160A到160N(視頻片段160)。大體上,視頻片段160可各自包含一個或一個以上經譯碼視頻圖片。在圖4的實例中,PPS152、SPS154、序列層級SEI消息156以及視頻片段160的數據存儲在MDAT盒150中。PPS152、SPS154和序列層級SEI消息156可統(tǒng)稱為序列參數集。在一些實例中,參數集軌道146可包含一個以上圖片參數集。PPS152、SPS154和序列層級SEI消息156大體上描述視頻片段160的特性。這些特性可幫助例如目的地裝置40等客戶端裝置選擇、解碼和/或再現視頻片段160。作為一實例,當視頻文件140對應于AVC文件格式時,序列層級SEI消息156可包含平移掃描矩形SEI消息、立體視頻信息SEI消息和/或幀封裝布置SEI消息中的一者或一者以上。作為另一實例,當視頻文件140對應于SVC文件格式時,序列層級SEI消息156可包含可縮放性信息SEI消息。作為另一實例,當視頻文件140對應于MVC文件格式時,序列層級SEI消息156可包含視圖可縮放性信息SEI消息、多視圖獲取信息SEI消息和/或多視圖場景信息SEI消息中的一者或一者以上。視頻文件可包含類似于視頻數據軌道144的若干媒體軌道。視頻數據軌道中的每一者可具有不同特性,所述特性可對應于各種解碼和/或再現要求。目的地裝置40可尤其基于由序列數據集用信號表示的媒體軌道的視頻片段的特性來選擇媒體軌道中的一者。舉例來說,目的地裝置40可分別基于視頻解碼器48和視頻輸出44的解碼和/或再現能力來選擇軌道中的一者。目的地裝置40可基于包含PPS 152,SPS 154和序列層級SEI消息156的參數集軌道146來確定視頻片段160的特性。目的地裝置40可經配置以檢索序列參數集,例如MOOV盒104、電影片段112中包含序列參數集的一者、包含序列參數集但不包含經譯碼視頻數據的視頻樣本,或在由序列參數集描述的任何經譯碼樣本之前的視頻文件100的其它元素。另外或替代地,源裝置20可經配置以在將由序列參數集描述的任何經譯碼視頻圖片提供到目的地裝置40之前將序列參數集提供到目的地裝置40。而且,源裝置20可經配置以在目的地裝置40尚未首先請求電影片段112中被請求的一者的序列數據集的數據時拒絕來自目的地裝置40的對電影片段112中的所述一者的請求。圖5是說明包含3GPP文件186、194的簡報182、190的實例集合198的框圖,所述3GPP文件186、194包含相應簡報的相應序列數據集。也就是說,集合198可包含額外的簡報,但圖5為了實例目的而描繪兩個簡報182、190。媒體簡報描述(MPD) 180包含描述集合198的簡報(例如,簡報182、190)的數據。MPD 180可描述例如簡報的統(tǒng)一資源定位符(URL)和/或統(tǒng)一資源名稱(URN)。MPD 180可進一步描述集合198中的簡報中的每一者的特性。舉例來說,MPD 180可包含簡報中的每一者的序列數據集。MPD 180還可描述存儲在簡報中的每一者中的若干3GPP視頻文件。在圖5的實例中,簡報182包含標頭數據184、具有序列數據集的3GPP文件186和3GPP文件188A到188N(3GPP文件188)。類似地,在此實例中,簡報190包含標頭數據192、具有序列數據集的3GPP文件194和3GPP文件196A到196N(3GPP文件196)。雖然使用字母“N”來指定3GPP文件188和3GPP文件196的基數,但N對于簡報182和190來說不一定相同。也就是說,在簡報182和簡報190以及集合198的簡報中的任一者中可存在不同數目的3GPP文件。 標頭數據184可描述簡報182的某些特性,例如簡報182中的3GPP文件的數目、對應于3GPP文件188中的每一者的開始的存儲器地址、3GPP文件188的長度(例如,以字節(jié)為單位)、3GPP文件188的持續(xù)時間(例如,以秒、分鐘等為單位)、客戶端裝置適當解碼和再現3GPP文件188的預期解碼和/或再現能力,或其它數據。簡報182可包含例如由ISO基本媒體文件格式標準和/或其擴展(例如3GPP標準)描述的額外數據。3GPP文件188可包含經譯碼視頻圖片。具有序列數據集的3GPP文件186包含描述經譯碼視頻圖片序列的經譯碼視頻圖片(例如,包含在3GPP文件188中的一者或一者以上中)的序列數據集。在圖5的實例中,集合198的簡報可對應于同一視頻數據序列的各種簡報。也就是說,簡報中的每一者在重放期間(例如當解碼和再現時)可為類似的。然而,視頻數據在集合198的不同簡報內可不同地譯碼或呈現。舉例來說,簡報190的視頻樣本可具有較高或較低的分辨率,以較高或較低的位速率編碼,預期特定解碼器緩沖器大小,具有特定幀速率,預期特定宏塊解碼速率,或基于其它特性而彼此不同。例如封裝單元30(圖1)的封裝單元可將序列數據集放置于簡報內的3GPP文件中,例如簡報182的3GPP文件186和簡報190的3GPP文件194。另外或替代地,封裝單元30可將集合198的一個或一個以上簡報的序列數據存儲在MPD 180中。圖6是說明用于在視頻文件內封裝序列數據集且將視頻文件從源裝置提供到目的地裝置的實例方法的流程圖。雖然為了實例和闡釋目的關于源裝置20和目的地裝置40(圖1)的組件來描述,但應了解,任何合適裝置可實施圖6的技術。
最初,封裝單元30可接收經編碼視頻圖片序列(210)。例如視頻編碼器28等編碼器可能已隨經譯碼樣本一起包含序列層級SEI消息。另外或替代地,封裝單元30可與視頻編碼器28分離地創(chuàng)建序列層級SEI消息。在任一情況下,封裝單元30可將序列層級SEI消息與由序列層級SEI消息描述的經譯碼視頻圖片解耦(212)。也就是說,封裝單元30可創(chuàng)建包含序列層級SEI消息和由序列層級SEI消息描述的經譯碼視頻圖片的視頻文件(214)。然而在如此做法時,封裝單元30可與由序列層級SEI消息描述的經譯碼視頻圖片分離地存儲序列層級SEI消息。以此方式,SEI消息可與經譯碼視頻圖片分離地發(fā)射和處理。舉例來說,根據本發(fā)明的技術,封裝單元30可將序列層級SEI消息存儲在經創(chuàng)建視頻文件的參數集軌道中。作為另一實例,封裝單元30可將序列層級SEI消息存儲在不包含經譯碼視頻圖片的軌道片段中、不包含經譯碼視頻圖片的單獨3GPP文件中、類似于經譯碼視頻圖片但實際上不包含經譯碼視頻數據的數據結構中、描述視頻文件的媒體簡報描述中,或以另外方式將序列層級SEI消息與由序列層級SEI消息描述的經譯碼視頻圖片分離。
封裝單元30可隨后輸出視頻文件(216)。舉例來說,封裝單元30可致使源裝置20將視頻文件寫入到存儲媒體,例如光盤、軟磁盤、快閃驅動器、硬驅動器、固態(tài)驅動器或其它存儲媒體。此存儲媒體可物理上輸送到目的地裝置40。替代地,源裝置20可例如經由廣播、網絡發(fā)射或其它發(fā)射技術將視頻文件發(fā)射到目的地裝置40。在任一情況下,目的地裝置40可最終接收視頻文件(218)。在一些實例中,源裝置20可例如響應于由目的地裝置40發(fā)出到源裝置20的一個或一個以上HTTP-Get或部分Get請求而將視頻文件的相異部分提供到目的地裝置40。目的地裝置40可將第一 HTTP-Get或部分Get請求發(fā)出到源裝置20以檢索序列數據集,例如包含序列層級SEI消息的參數集軌道的全部或一部分,且發(fā)出第二(或更多)HTTP-Get或部分Get請求以檢索由序列數據集描述的經譯碼視頻圖片。在接收到視頻文件之后,目的地裝置40可基于序列層級SEI消息來解碼視頻文件
(220)。也就是說,視頻解碼器48可使用序列層級SEI消息的數據來幫助解碼過程。同樣,視頻顯示器44可使用序列層級SEI消息來幫助再現經解碼視頻數據,以便顯示經解碼視頻數據(222)。舉例來說,視頻解碼器48和/或視頻顯示器44 (或其再現單元或再現引擎)可使用序列層級SEI消息來確定如何使視頻數據適于視頻顯示器44的原生分辨率,確定圖像是左圖像還是右圖像(例如,對于立體視頻數據來說),確定如何封裝幀,確定視頻數據的可縮放性信息,確定多視圖獲取信息,和/或確定多視圖場景信息。圖7是說明視頻文件240的另一實例的框圖。在圖7的實例中,視頻文件240包含電影(MOOV)盒242和電影數據(MDAT)盒250。MOOV盒242包含視頻數據軌道和若干參數集軌道246A到246C。雖然在圖7的實例中說明三個參數集軌道,但應了解,視頻文件可大體上包含任一數目的參數集軌道。視頻數據軌道244對應于若干各種視頻片段254A到254C,其中每一者可存儲在MDAT盒250中。在此實例中,視頻片段254A、254B和254C的每一集合可具有不同的序列層級信息。舉例來說,序列層級信息可在視頻片段254A、254B和254C之間改變。因此,視頻片段254A、254B和254C中的每一者可具有相應的序列數據集。在此實例中,序列數據集252A與視頻片段254A相關,序列數據集252B與視頻片段254B相關,且序列數據集252C與視頻片段254C相關。視頻片段的給定集合的序列數據集可應用于序列中的視頻片段中的每一者。舉例來說,序列數據集252A可應用于視頻片段254A中的每一者。然而,視頻片段254B的一個或一個以上特性可不同于視頻片段254A。因此,序列數據集252B可描述視頻片段254B的特性。每一序列數據集可對應于相應的參數集軌道。在圖7的實例中,參數集軌道246A對應于序列數據集252A,參數集軌道246B對應于序列數據集252B,且參數集軌道246C對應于序列數據集252C。每一參數集軌道可包含描述一時間的數據,在所述時間期間,對應序列數據集應用于視頻數據軌道244的視頻片段。舉例來說,參數集軌道246A可包含指示在對應于視頻片段254A中的最后一者的時間之后序列數據集252A不再適用的數據。此時序信息可為UTC時間或對應于重放持續(xù)時間。在一些實例中,視頻文件可包含對應于所有視頻片段254A到254C的額外參數集軌道。在此類實例中,目的地裝置可利用來自適用于所有視頻片段的參數集軌道的數據和來自特定適用于給定視頻片段的參數集軌道的數據。雖然為了實例目的而說明為包含在MOOV盒242中,但應了解,序列數據集252可包含在本發(fā)明中描述的其它位置中的任一者中。舉例來說,序列數據集可包含在特定視頻片段中、特定3GPP文件中、媒體簡報描述內,或者視頻文件內或與視頻文件相關聯的另外一或多個位置中。在一個或一個以上實例中,所描述的功能可以硬件、軟件、固件或其任何組合來實施。如果以軟件來實施,則功能可作為一個或一個以上指令或代碼而存儲于計算機可讀媒體上或經由計算機可讀媒體來傳輸,且可由基于硬件的處理單元執(zhí)行。計算機可讀媒體可包含對應于例如數據存儲媒體的有形媒體的計算機可讀存儲媒體,或包含促進計算機程序(例如)根據一通信協議從一處傳送到另一處的任何媒體的通信媒體。以此方式,計算機可讀媒體大體上可對應于(I)非暫時性有形計算機可讀存儲媒體或(2)例如信號或載波的通信媒體。數據存儲媒體可為可由一個或一個以上計算機或一個或一個以上處理器存取以檢索用于實施本發(fā)明中所描述的技術的指令、代碼及/或數據結構的任何可用媒體。計算機程序產品可包含計算機可讀媒體。作為實例而非限制,此計算機可讀存儲媒體可包含RAM、ROM、EEPROM、CD-ROM或其它光盤存儲裝置、磁盤存儲裝置或其它磁性存儲裝置、快閃存儲器,或可用于存儲呈指令或數據結構的形式的所要代碼且可由計算機存取的任何其它媒體。且,任何連接均適當地稱作計算機可讀媒體。舉例來說,如果使用同軸電纜、光纜、雙絞線、數字訂戶線(DSL),或例如紅外線、無線電及微波的無線技術而從網站、服務器或其它遠程源傳輸指令,則同軸電纜、光纜、雙絞線、DSL,或例如紅外線、無線電及微波的無線技術包含于媒體的定義中。然而,應理解,計算機可讀存儲媒體及數據存儲媒體不包含連接、載波、信號或其它瞬時媒體,而是針對非瞬時、有形的存儲媒體。如本文中所使用,磁盤及光盤包含壓縮光盤(⑶)、激光光盤、光學光盤、數字多功能光盤(DVD)、軟磁盤及藍光光盤,其中磁盤通常以磁性方式再現數據,而光盤通過激光以光學方式再現數據。以上各物的組合也應包含于計算機可讀媒體的范圍內。 可由例如一個或一個以上數字信號處理器(DSP)、通用微處理器、專用集成電路(ASIC)、現場可編程邏輯陣列(FPGA)或其它等效集成電路或離散邏輯電路的一個或一個以上處理器來執(zhí)行指令。因此,如本文中所使用,術語“處理器”可指代前述結構或適于實施本文中所描述的技術的任何其它結構中的任一者。另外,在一些方面中,本文所描述的功能性可提供于經配置以用于編碼及解碼的專用硬件及/或軟件模塊內,或并入于組合式編解碼器中。且,所述技術可完全實施于一個或一個以上電路或邏輯元件中。本發(fā)明的技術可實施于廣泛多種裝置或設備中,包括無線手持機、集成電路(IC)或IC的集合(例如,芯片組)。本發(fā)明中描述各種組件、模塊或單元以強調經配置以執(zhí)行所揭示的技術的裝置的功能方面,但未必需要通過不同硬件單元來實現。實情為,如上文所描述,各種單元可組合于一編解碼器硬件單元中或由互操作的硬件單元的集合(包含如上文所描述的一個或一個以上處理器)結合合適的軟件及/或固件來提供。
已描述各種實例。這些及其它實例屬于所附權利要求書的范圍內。
權利要求
1.一種輸出經封裝視頻數據的方法,所述經封裝視頻數據包括經譯碼視頻圖片序列, 所述方法包括產生與所述經譯碼視頻圖片分離的一個或一個以上補充增強信息SEI消息,其中所述 SEI消息描述所述經譯碼視頻圖片序列中的相應者且包含所述經譯碼視頻圖片中的一者以上所共同的元素;以及與所述經譯碼視頻圖片序列分離地輸出所述SEI消息。
2.根據權利要求1所述的方法,其中所述SEI消息包括適用于兩個或兩個以上存取單元的序列層級SEI消息,其中所述兩個或兩個以上存取單元包括所述經譯碼視頻圖片序列,且其中產生所述一個或一個以上SEI消息包括將所述序列層級SEI消息與所述存取單元分離。
3.根據權利要求1所述的方法,其中所述SEI消息經界定為H.264/高級視頻譯碼AVC、 H. 264的可縮放視頻譯碼SVC擴展和H. 264的多視圖視頻譯碼MVC擴展的SEI消息類型中的至少一者。
4.根據權利要求1所述的方法,其中輸出包括以視頻文件的形式封裝所述SEI消息和所述經譯碼視頻圖片,且其中輸出進一步包括將所述SEI消息包含在與含有所述經譯碼視頻圖片序列的文件單元分離的文件單元中。
5.根據權利要求4所述的方法,其中含有所述SEI消息的所述單獨文件單元包括所述視頻文件的參數集軌道,其中所述參數集軌道進一步包括所述經譯碼視頻圖片序列的序列參數集數據和圖片參數集數據中的至少一者。
6.根據權利要求4所述的方法,其中媒體表示的初始化區(qū)段包括所述單獨文件單元。
7.根據權利要求1所述的方法,其中產生所述SEI消息包括產生所述SEI消息中的至少一者內的信令信息,所述信令信息用信號表示對應于所述SEI消息的所述經譯碼視頻圖片序列的持續(xù)時間。
8.根據權利要求1所述的方法,其中所述經譯碼視頻圖片序列包括第一經譯碼視頻圖片序列,且其中所述SEI消息包括第一組SEI消息,所述方法進一步包括產生與第二經譯碼視頻圖片序列分離的第二組一個或一個以上SEI消息,其中所述第二組SEI消息描述所述第二經譯碼視頻圖片序列中的相應者且包含所述第二經譯碼視頻圖片序列中的一者以上所共同的元素;以及與所述第二經譯碼視頻圖片序列分離地輸出所述第二組SEI消息。
9.根據權利要求1所述的方法,其中輸出包括對包括所述SEI消息和所述經譯碼視頻圖片序列的視頻數據進行編碼;以及經由網絡串流傳輸所述經編碼視頻數據。
10.根據權利要求9所述的方法,其中串流傳輸所述視頻數據包括經由至少一個傳輸控制協議TCP連接來串流傳輸所述視頻數據。
11.根據權利要求10所述的方法,其中所述至少一個TCP連接包括超文本傳送協議 HTTP連接。
12.根據權利要求1所述的方法,其中產生包括通過編解碼器層級處的視頻編碼器來與所述經譯碼視頻圖片序列分離地編碼所述SEI消息。
13.一種用于輸出經封裝視頻數據的設備,所述經封裝視頻數據包括經譯碼視頻圖片序列,所述設備包括控制單元,其經配置以產生與所述經譯碼視頻圖片分離的一個或一個以上補充增強信息SEI消息,其中所述SEI消息描述所述經譯碼視頻圖片序列中的相應者且包含所述經譯碼視頻圖片中的一者以上所共同的元素;以及輸出接口,其經配置以與所述經譯碼視頻圖片序列分離地輸出所述SEI消息。
14.根據權利要求13所述的設備,其中所述SEI消息包括適用于兩個或兩個以上存取單元的序列層級SEI消息,其中所述兩個或兩個以上存取單元包括所述經譯碼視頻圖片序列,且其中所述控制單元經配置以將所述序列層級SEI消息與所述存取單元分離。
15.根據權利要求13所述的設備,其中所述控制單元經配置以以視頻文件的形式封裝所述SEI消息和所述經譯碼視頻圖片,且其中所述控制單元經配置以將所述SEI消息包含在與含有所述經譯碼視頻圖片序列的文件單元分離的文件單元中。
16.根據權利要求15所述的設備,其中含有所述SEI消息的所述單獨文件單元包括所述視頻文件的參數集軌道,其中所述參數集軌道進一步包括所述經譯碼視頻圖片序列的序列參數集數據和圖片參數集數據中的至少一者。
17.根據權利要求15所述的設備,其中媒體表示的初始化區(qū)段包括所述單獨文件單元
18.根據權利要求13所述的設備,其中所述控制單元經配置以產生所述SEI消息中的至少一者內的信令信息,所述信令信息用信號表示對應于所述SEI消息的所述經譯碼視頻圖片序列的持續(xù)時間。
19.根據權利要求13所述的設備,其中所述經譯碼視頻圖片序列包括第一經譯碼視頻圖片序列,其中所述SEI消息包括第一組SEI消息,其中所述控制單元經配置以產生與第二經譯碼視頻圖片序列分離的第二組一個或一個以上SEI消息,其中所述第二組SEI消息描述所述第二經譯碼視頻圖片序列中的相應者且包含所述第二經譯碼視頻圖片序列中的一者以上所共同的元素,且其中所述輸出接口經配置以與所述第二經譯碼視頻圖片序列分離地輸出所述第二組SEI消息。
20.根據權利要求13所述的設備,其中所述設備包括以下各項中的至少一者集成電路;微處理器;以及無線通信裝置,其包含所述控制單元。
21.一種用于輸出經封裝視頻數據的設備,所述經封裝視頻數據包括經譯碼視頻圖片序列,所述設備包括用于產生與所述經譯碼視頻圖片分離的一個或一個以上補充增強信息SEI消息的裝置,其中所述SEI消息描述所述經譯碼視頻圖片序列中的相應者且包含所述經譯碼視頻圖片中的一者以上所共同的元素;以及用于與所述經譯碼視頻圖片序列分離地輸出所述SEI消息的裝置。
22.根據權利要求21所述的設備,其中所述SEI消息包括適用于兩個或兩個以上存取單元的序列層級SEI消息,其中所述兩個或兩個以上存取單元包括所述經譯碼視頻圖片序列,且其中所述用于產生所述一個或一個以上SEI消息的裝置包括用于將所述序列層級SEI消息與所述存取單元分離的裝置。
23.根據權利要求21所述的設備,其中所述用于輸出的裝置包括用于以視頻文件的形式封裝所述SEI消息和所述經譯碼視頻圖片的裝置,且其中所述用于輸出的裝置進一步包括用于將所述SEI消息包含在與含有所述經譯碼視頻圖片序列的文件單元分離的文件單元中的裝置。
24.根據權利要求23所述的設備,其中含有所述SEI消息的所述單獨文件單元包括所述視頻文件的參數集軌道,其中所述參數集軌道進一步包括所述經譯碼視頻圖片序列的序列參數集數據和圖片參數集數據中的至少一者。
25.根據權利要求23所述的設備,其中媒體表示的初始化區(qū)段包括所述單獨文件單J Li ο
26.根據權利要求21所述的設備,其中所述用于產生所述SEI消息的裝置包括用于產生所述SEI消息中的至少一者內的信令信息的裝置,所述信令信息用信號表示對應于所述 SEI消息的所述經譯碼視頻圖片序列的持續(xù)時間。
27.根據權利要求21所述的設備,其中所述經譯碼視頻圖片序列包括第一經譯碼視頻圖片序列,且其中所述SEI消息包括第一組SEI消息,所述設備進一步包括用于產生與第二經譯碼視頻圖片序列分離的第二組一個或一個以上SEI消息的裝置, 其中所述第二組SEI消息描述所述第二經譯碼視頻圖片序列中的相應者且包含所述第二經譯碼視頻圖片序列中的一者以上所共同的元素;以及用于與所述第二經譯碼視頻圖片序列分離地輸出所述第二組SEI消息的裝置。
28.根據權利要求21所述的設備,其中所述用于輸出的裝置包括用于對包括所述SEI消息和所述經譯碼視頻圖片序列的視頻數據進行編碼的裝置;以及用于經由網絡串流傳輸所述經編碼視頻數據的裝置。
29.—種包括計算機可讀存儲媒體的計算機程序產品,所述計算機可讀存儲媒體上存儲有指令,所述指令在執(zhí)行時致使用于輸出經編碼視頻數據的設備的處理器進行以下操作產生與經譯碼視頻圖片分離的一個或一個以上補充增強信息SEI消息,其中所述SEI 消息描述經譯碼視頻圖片序列中的相應者且包含所述經譯碼視頻圖片中的一者以上所共同的元素;以及與所述經譯碼視頻圖片序列分離地輸出所述SEI消息。
30.根據權利要求29所述的計算機程序產品,其中所述用以輸出的指令包括用以以視頻文件的形式封裝所述SEI消息和所述經譯碼視頻圖片的指令,且其中所述用以輸出的指令進一步包括用以將所述SEI消息包含在與含有所述經譯碼視頻圖片序列的文件單元分離的文件單元中的指令。
31.根據權利要求30所述的計算機程序產品,其中含有所述SEI消息的所述單獨文件單元包括所述視頻文件的參數集軌道,其中所述參數集軌道進一步包括所述經譯碼視頻圖片序列的序列參數集數據和圖片參數集數據中的至少一者。
32.根據權利要求30所述的計算機程序產品,其中媒體表示的初始化區(qū)段包括所述單獨文件單元。
33.根據權利要求29所述的計算機程序產品,其中所述用以產生所述SEI消息的指令包括用以產生所述SEI消息中的至少一者內的信令信息的指令,所述信令信息用信號表示對應于所述SEI消息的所述經譯碼視頻圖片序列的持續(xù)時間。
34.根據權利要求29所述的計算機程序產品,其中所述經譯碼視頻圖片序列包括第一經譯碼視頻圖片序列,且其中所述SEI消息包括第一組SEI消息,所述計算機程序產品進一步包括用以進行以下操作的指令產生與第二經譯碼視頻圖片序列分離的第二組一個或一個以上SEI消息,其中所述第二組SEI消息描述所述第二經譯碼視頻圖片序列中的相應者且包含所述第二經譯碼視頻圖片序列中的一者以上所共同的元素;以及與所述第二經譯碼視頻圖片序列分離地輸出所述第二組SEI消息。
35.一種接收經編碼視頻數據的方法,所述方法包括接收描述視頻文件的經譯碼視頻圖片序列的補充增強信息SEI消息,其中所述SEI消息描述所述經譯碼視頻圖片序列中的相應者且包含所述經譯碼視頻圖片中的一者以上所共同的元素;與所述SEI消息分離地接收所述視頻文件的所述經譯碼視頻圖片序列;以及在所述經譯碼視頻圖片序列已經解碼之后基于所述SEI消息而再現所述經譯碼視頻圖片序列。
36.根據權利要求35所述的方法,其進一步包括提交對所述SEI消息的第一請求,其中接收所述SEI消息包括響應于所述第一請求而接收所述SEI消息;以及僅在接收到所述SEI消息之后提交對所述經譯碼視頻圖片序列的第二請求,其中接收所述經譯碼視頻圖片序列包括響應于所述第二請求而接收所述經譯碼視頻圖片序列。
37.根據權利要求36所述的方法,其中所述SEI消息包括第一組SEI消息,且其中所述經譯碼視頻圖片序列包括第一經譯碼視頻圖片序列,所述方法進一步包括在接收到所述第一經譯碼視頻圖片序列之后提交對第二組SEI消息的第三請求;響應于所述第三請求而接收所述第二組SEI消息;提交對由所述第二組SEI消息描述的第二經譯碼視頻圖片序列的第四請求;在接收到所述第二組SEI消息之后接收所述第二經譯碼視頻圖片序列;以及在所述第二經譯碼視頻圖片序列已經解碼之后基于所述第二組SEI消息而再現所述第二經譯碼視頻圖片序列。
38.根據權利要求35所述的方法,其進一步包括從參數集軌道、不包含經譯碼視頻圖片的軌道片段和不包含經譯碼視頻數據的第三代合作伙伴計劃3GPP格式文件中的至少一者提取所述SEI消息。
39.根據權利要求35所述的方法,其進一步包括剖析和解碼所述SEI消息,其中所述 SEI消息是與包括所述經譯碼視頻圖片序列的存取單元分離地譯碼。
40.一種用于接收經編碼視頻數據的設備,所述設備包括控制單元,其經配置以接收描述視頻文件的經譯碼視頻圖片序列的補充增強信息SEI 消息,其中所述SEI消息描述所述經譯碼視頻圖片序列中的相應者且包含所述經譯碼視頻圖片中的一者以上所共同的元素,且與所述SEI消息分離地接收所述視頻文件的所述經譯碼視頻圖片序列;以及視頻輸出,其經配置以在所述經譯碼視頻圖片序列已經解碼之后再現所述經譯碼視頻圖片序列。
41.根據權利要求40所述的設備,其中所述控制單元經配置以提交對所述SEI消息的第一請求,響應于所述第一請求而接收所述SEI消息,僅在接收到所述SEI消息之后提交對所述經譯碼視頻圖片序列的第二請求,且響應于所述第二請求而接收所述經譯碼視頻圖片序列。
42.根據權利要求41所述的設備,其中所述SEI消息包括第一組SEI消息,且其中所述經譯碼視頻圖片序列包括第一經譯碼視頻圖片序列,其中所述控制單元經配置在接收到所述第一經譯碼視頻圖片序列之后提交對第二組SEI消息的第三請求,響應于所述第三請求而接收所述第二組SEI消息,提交對由所述第二組SEI消息描述的第二經譯碼視頻圖片序列的第四請求,以及在接收到所述第二組SEI消息之后接收所述第二經譯碼視頻圖片序列,且其中所述視頻輸出經配置以在所述第二經譯碼視頻圖片序列已經解碼之后基于所述第二組SEI消息而再現所述第二經譯碼視頻圖片序列。
43.根據權利要求40所述的設備,其中所述控制單元經配置以從參數集軌道、不包含經譯碼視頻圖片的軌道片段和不包含經譯碼視頻數據的第三代合作伙伴計劃3GPP文件中的至少一者提取所述SEI消息。
44.根據權利要求40所述的設備,其中所述設備包括以下各項中的至少一者集成電路;微處理器;以及無線通信裝置,其包含所述控制單元。
45.一種用于接收經編碼視頻數據的設備,所述設備包括用于接收描述視頻文件的經譯碼視頻圖片序列的補充增強信息SEI消息的裝置,其中所述SEI消息描述所述經譯碼視頻圖片序列中的相應者且包含所述經譯碼視頻圖片中的一者以上所共同的元素;用于與所述SEI消息分離地接收所述視頻文件的所述經譯碼視頻圖片序列的裝置;以及用于在所述經譯碼視頻圖片序列已經解碼之后基于所述SEI消息而再現所述經譯碼視頻圖片序列的裝置。
46.根據權利要求45所述的設備,其進一步包括用于提交對所述SEI消息的第一請求的裝置,其中所述用于接收所述SEI消息的裝置包括用于響應于所述第一請求而接收所述SEI消息的裝置;以及用于僅在接收到所述SEI消息之后提交對所述經譯碼視頻圖片序列的第二請求的裝置,其中所述用于接收所述經譯碼視頻圖片序列的裝置包括用于響應于所述第二請求而接收所述經譯碼視頻圖片序列的裝置。
47.根據權利要求46所述的設備,其中所述SEI消息包括第一組SEI消息,且其中所述經譯碼視頻圖片序列包括第一經譯碼視頻圖片序列,所述設備進一步包括用于在接收到所述第一經譯碼視頻圖片序列之后提交對第二組SEI消息的第三請求的裝置;用于響應于所述第三請求而接收所述第二組SEI消息的裝置;用于提交對由所述第二組SEI消息描述的第二經譯碼視頻圖片序列的第四請求的裝置;用于在接收到所述第二組SEI消息之后接收所述第二經譯碼視頻圖片序列的裝置;以及用于在所述第二經譯碼視頻圖片序列已經解碼之后基于所述第二組SEI消息而再現所述第二經譯碼視頻圖片序列的裝置。
48.根據權利要求45所述的設備,其進一步包括用于從參數集軌道、不包含經譯碼視頻圖片的軌道片段和不包含經譯碼視頻數據的第三代合作伙伴計劃3GPP文件中的至少一者提取所述SEI消息的裝置。
49.一種包括計算機可讀媒體的計算機程序產品,所述計算機可讀媒體上存儲有指令, 所述指令在執(zhí)行時致使用于接收經編碼視頻數據的設備的處理器進行以下操作接收描述視頻文件的經譯碼視頻圖片序列的補充增強信息SEI消息,其中所述SEI消息描述所述經譯碼視頻圖片序列中的相應者且包含所述經譯碼視頻圖片中的一者以上所共同的元素;與所述SEI消息分離地接收所述視頻文件的所述經譯碼視頻圖片序列;以及在所述經譯碼視頻圖片序列已經解碼之后基于所述SEI消息而再現所述經譯碼視頻圖片序列。
50.根據權利要求49所述的計算機程序產品,其進一步包括用以進行以下操作的指令提交對所述SEI消息的第一請求,其中所述用以接收所述SEI消息的指令包括用以響應于所述第一請求而接收所述SEI消息的指令;以及僅在接收到所述SEI消息之后提交對所述經譯碼視頻圖片序列的第二請求,其中所述用以接收所述經譯碼視頻圖片序列的指令包括用以響應于所述第二請求而接收所述經譯碼視頻圖片序列的指令。
51.根據權利要求50所述的計算機程序產品,其中所述SEI消息包括第一組SEI消息, 且其中所述經譯碼視頻圖片序列包括第一經譯碼視頻圖片序列,所述計算機程序產品進一步包括用以進行以下操作的指令在接收到所述第一經譯碼視頻圖片序列之后提交對第二組SEI消息的第三請求;響應于所述第三請求而接收所述第二組SEI消息;提交對由所述第二組SEI消息描述的第二經譯碼視頻圖片序列的第四請求;在接收到所述第二組SEI消息之后接收所述第二經譯碼視頻圖片序列;以及在所述第二經譯碼視頻圖片序列已經解碼之后基于所述第二組SEI消息而再現所述第二經譯碼視頻圖片序列。
52.根據權利要求49所述的計算機程序產品,其進一步包括用以從參數集軌道、不包含經譯碼視頻圖片的軌道片段和不包含經譯碼視頻數據的第三代合作伙伴計劃3GPP格式文件中的至少一者提取所述SEI消息的指令。
全文摘要
一種裝置可封裝視頻數據以使得補充增強信息SEI消息與由所述SEI消息描述的經譯碼視頻圖片序列分離地存儲。實例裝置包含控制單元,其經配置以產生與所述經譯碼視頻圖片分離的一個或一個以上SEI消息,其中所述SEI消息描述所述經譯碼視頻圖片序列中的相應者且包含所述經譯碼視頻圖片中的一者以上所共同的元素;以及輸出接口,其經配置以與所述經譯碼視頻圖片序列分離地輸出所述SEI消息。實例目的地裝置可與所述經譯碼視頻圖片分離地接收所述SEI消息且使用所述SEI消息來再現所述經譯碼視頻圖片。
文檔編號H04N21/854GK103069828SQ201180040329
公開日2013年4月24日 申請日期2011年7月20日 優(yōu)先權日2010年7月20日
發(fā)明者陳盈, 馬爾塔·卡切維奇 申請人:高通股份有限公司