識別視頻文件中的參數(shù)集的制作方法
【專利摘要】一種設(shè)備經(jīng)配置以將包含經(jīng)譯碼視頻圖片的若干序列的經(jīng)譯碼視頻數(shù)據(jù)存儲在電子文件中。所述設(shè)備包含至少一個處理器,其經(jīng)配置以確定與至少一個樣本相關(guān)聯(lián)的樣本描述是否包含與所述至少一個樣本相關(guān)聯(lián)的特定類型的所有參數(shù)集。所述至少一個樣本包括所述多個序列的經(jīng)譯碼視頻圖片的至少一部分。所述特定類型是參數(shù)集的多個不同特定類型中的一者。所述至少一個處理器還經(jīng)配置以基于所述確定在所述電子文件中提供指示所述樣本描述是否包含所述特定類型的所有參數(shù)集的指示。
【專利說明】識別視頻文件中的參數(shù)集
[0001] 本申請案主張2012年4月25日申請的第61/638, 393號美國臨時申請案的權(quán)益, 所述臨時申請案的全部內(nèi)容以引用的方式并入本文中。
【技術(shù)領(lǐng)域】
[0002] 本發(fā)明涉及經(jīng)編碼視頻數(shù)據(jù)的存儲和運送。
【背景技術(shù)】
[0003] 數(shù)字視頻能力可并入到廣范圍的裝置中,包含數(shù)字電視、數(shù)字直播系統(tǒng)、無線廣播 系統(tǒng)、個人數(shù)字助理(PDA)、膝上型或桌上型計算機、數(shù)碼相機、數(shù)字記錄裝置、數(shù)字媒體播 放器、視頻游戲裝置、視頻游戲控制臺、蜂窩式或衛(wèi)星無線電話、視頻電話會議裝置等。數(shù)字 視頻裝置實施例如MPEG-2、MPEG-4、ITU-TH. 263 或ITU-TH. 264/MPEG-4 第 10 部分、先進 視頻譯碼(AVC)界定的標準及此類標準的擴展中描述的視頻壓縮技術(shù),來更有效地發(fā)射和 接收數(shù)字視頻信息。
[0004] 視頻壓縮技術(shù)執(zhí)行空間預測和/或時間預測以減少或移除視頻序列中固有的冗 余。不論特定方法如何,在已編碼視頻數(shù)據(jù)之后,可將視頻數(shù)據(jù)封包化以供發(fā)射或存儲。視 頻數(shù)據(jù)可匯編為符合例如國際標準化組織(ISO)基礎(chǔ)媒體文件格式(IS0BMFF)及其擴展 (例如,AVC文件格式)等多種標準中的任一者的視頻文件。
【發(fā)明內(nèi)容】
[0005] -般來說,本發(fā)明描述用于視頻數(shù)據(jù)的存儲和運送的技術(shù)。本發(fā)明提供用于指定 特定類型的所有參數(shù)集是否獨立于其它類型的參數(shù)集存儲在包含在視頻文件中的所謂的 "樣本描述"中的技術(shù)。
[0006] -個實例包含一種將包括經(jīng)譯碼視頻圖片的多個序列的經(jīng)譯碼視頻數(shù)據(jù)存儲在 電子文件中的方法。所述方法包含確定與至少一個樣本相關(guān)聯(lián)的樣本描述是否包含與所述 至少一個樣本相關(guān)聯(lián)的特定類型的所有參數(shù)集。所述至少一個樣本包括經(jīng)譯碼視頻圖片的 所述多個序列的至少一部分。所述特定類型是參數(shù)集的多個不同特定類型的一者。所述方 法還包含基于所述確定在電子文件中提供指示樣本描述是否包含所述特定類型的所有參 數(shù)集的指示。
[0007] 在另一實例中,一種設(shè)備經(jīng)配置以將包含經(jīng)譯碼視頻圖片的若干序列的經(jīng)譯碼視 頻數(shù)據(jù)存儲在電子文件中。所述設(shè)備包含至少一個處理器,其經(jīng)配置以確定與至少一個樣 本相關(guān)聯(lián)的樣本描述是否包含與所述至少一個樣本相關(guān)聯(lián)的特定類型的所有參數(shù)集。所述 至少一個樣本包括經(jīng)譯碼視頻圖片的所述多個序列的至少一部分。所述特定類型是參數(shù)集 的多個不同特定類型的一者。所述至少一個處理器還經(jīng)配置以基于所述確定在電子文件中 提供指示樣本描述是否包含所述特定類型的所有參數(shù)集的指示。
[0008] 另一實例包含一種上面存儲有指令的計算機可讀存儲媒體,所述指令當執(zhí)行時致 使一或多個處理器執(zhí)行包含確定與至少一個樣本相關(guān)聯(lián)的樣本描述是否包含與所述至少 一個樣本相關(guān)聯(lián)的特定類型的所有參數(shù)集的操作。所述至少一個樣本包括經(jīng)譯碼視頻圖片 的所述多個序列的至少一部分。所述特定類型是參數(shù)集的多個不同特定類型的一者。所述 指令當執(zhí)行時還致使一或多個處理器執(zhí)行包含基于所述確定在電子文件中提供指示樣本 描述是否包含所述特定類型的所有參數(shù)集的指示的操作。
[0009] 另一實例包含一種用于將包括經(jīng)譯碼視頻圖片的多個序列的經(jīng)譯碼視頻數(shù)據(jù)存 儲在電子文件中的設(shè)備。所述設(shè)備包含用于確定與至少一個樣本相關(guān)聯(lián)的樣本描述是否包 含與所述至少一個樣本相關(guān)聯(lián)的特定類型的所有參數(shù)集的裝置。所述至少一個樣本包括經(jīng) 譯碼視頻圖片的所述多個序列的至少一部分。所述特定類型是參數(shù)集的多個不同特定類型 的一者。所述設(shè)備還包含用于基于所述確定在電子文件中提供指示樣本描述是否包含所述 特定類型的所有參數(shù)集的指示的裝置。
[0010] 另一實例包含一種處理存儲在電子文件中的包括經(jīng)譯碼視頻圖片的多個序列的 經(jīng)譯碼視頻數(shù)據(jù)的方法。所述方法包含接收所述文件中指示與至少一個樣本相關(guān)聯(lián)的樣本 描述是否包含與所述至少一個樣本相關(guān)聯(lián)的特定類型的所有參數(shù)集的指示。所述至少一個 樣本包括經(jīng)譯碼視頻圖片的所述多個序列的至少一部分。所述特定類型是參數(shù)集的多個不 同特定類型的一者。所述方法還包含基于所述指示確定是否所述特定類型的所有參數(shù)集存 儲在樣本描述中,以及基于是否所述特定類型的所有參數(shù)集存儲在樣本描述中的所述確定 至少部分基于所述特定類型的參數(shù)集的一或多者處理所述經(jīng)譯碼視頻數(shù)據(jù)。
[0011] 另一實例包含一種用于將包括經(jīng)譯碼視頻圖片的多個序列的經(jīng)譯碼視頻數(shù)據(jù)存 儲在電子文件中的設(shè)備。所述設(shè)備包含至少一個處理器,其經(jīng)配置以接收所述文件中指示 與至少一個樣本相關(guān)聯(lián)的樣本描述是否包含與所述至少一個樣本相關(guān)聯(lián)的特定類型的所 有參數(shù)集的指示。所述至少一個樣本包括經(jīng)譯碼視頻圖片的所述多個序列的至少一部分。 所述特定類型是參數(shù)集的多個不同特定類型的一者。所述至少一個處理器還經(jīng)配置以基于 所述指示確定是否所述特定類型的所有參數(shù)集存儲在樣本描述中,且基于是否所述特定類 型的所有參數(shù)集存儲在樣本描述中的所述確定至少部分基于所述特定類型的參數(shù)集的一 或多者處理所述經(jīng)譯碼視頻數(shù)據(jù)。
[0012] 附圖和以下描述中陳述一個或一個以上實例的細節(jié)。從描述內(nèi)容和圖式以及從權(quán) 利要求書將顯而易見其它特征、目標和優(yōu)點。
【專利附圖】
【附圖說明】
[0013] 圖1是說明其中音頻/視頻(A/V)源裝置將音頻和視頻數(shù)據(jù)傳送到A/V目的地裝 置的實例系統(tǒng)的框圖。
[0014] 圖2是說明實例囊封單元的組件的框圖。
[0015] 圖3是說明實例視頻文件的元件的概念圖。
[0016] 圖4是說明另一實例視頻文件的元件的概念圖。
[0017] 圖5是說明將經(jīng)譯碼視頻數(shù)據(jù)存儲在電子文件中的實例方法的流程圖。
[0018] 圖6是說明處理經(jīng)譯碼視頻數(shù)據(jù)的實例方法的流程圖。
【具體實施方式】
[0019] 一般來說,描述用于將視頻內(nèi)容存儲在文件中的技術(shù)。特定來說,所述技術(shù)涉及基 于國際標準化組織(ISO)基礎(chǔ)媒體文件格式(ISOBMFF)將高效視頻譯碼(HEVC)視頻內(nèi)容 存儲在文件中的各種方法。所述技術(shù)可使得能夠指定特定類型的所有參數(shù)集是否獨立于其 它類型的參數(shù)集存儲在包含在視頻文件中的所謂的"樣本描述"中。所述技術(shù)可擴展有時 稱為解碼器配置記錄的內(nèi)容(其是包含在樣本描述中的語法結(jié)構(gòu)),以包含指示是否特定 類型的所有參數(shù)集存儲在樣本描述中的一或多個旗標。所揭示的實例使得能夠區(qū)分是否特 定類型的所有參數(shù)集包含在樣本描述中,這又可允許確定何時執(zhí)行不同類型的參數(shù)集的頻 帶外運送。以此方式,所揭示的實例可使得能夠更有效存儲、處理和發(fā)射經(jīng)譯碼視頻數(shù)據(jù), 這又可改進例如視頻編碼器和解碼器等視頻譯碼裝置的性能。
[0020] 數(shù)字視頻能力可并入到廣范圍的裝置中,包含數(shù)字電視、數(shù)字直播系統(tǒng)、無線廣播 系統(tǒng)、個人數(shù)字助理(PDA)、膝上型或桌上型計算機、數(shù)碼相機、數(shù)字記錄裝置、數(shù)字媒體播 放器、視頻游戲裝置、視頻游戲控制臺、蜂窩式或衛(wèi)星無線電話、視頻電話會議裝置等。數(shù)字 視頻裝置實施例如MPEG-2、MPEG-4、ITU-TH. 263或ITU-TH. 264/MPEG-4第10部分、先進視 頻譯碼(AVC)界定的標準及此類標準的擴展中描述的視頻壓縮技術(shù),來更有效地發(fā)射和接 收數(shù)字視頻信息。
[0021] 視頻壓縮技術(shù)執(zhí)行空間預測和/或時間預測以減少或移除視頻序列中固有的冗 余。對于基于塊的視頻譯碼,視頻幀或切片可分割為塊,例如宏塊。每一宏塊還可進一步分 害IJ。經(jīng)幀內(nèi)譯碼(I)幀或切片中的塊相對于相鄰塊使用空間預測編碼。經(jīng)幀間譯碼(P或 B)幀或切片中的塊可相對于相同幀或切片中的相鄰塊使用空間預測,或相對于其它參考幀 使用時間預測。
[0022] 在已編碼視頻數(shù)據(jù)之后,視頻數(shù)據(jù)可封包化以供發(fā)射或存儲。視頻數(shù)據(jù)可匯編為 符合例如ISOBMFF等多種標準的任一者的視頻文件。額外實例標準包含可縮放視頻譯碼 (SVC)文件格式、先進視頻譯碼(AVC)文件格式、第三代合作伙伴計劃(3GPP)文件格式,和 /或多視圖視頻譯碼(MVC)文件格式,或其它類似的視頻文件格式。
[0023] 在一個實例中,文件囊封單元或其它裝置接收包括來自視頻編碼器的視頻數(shù)據(jù)的 基本流和包括來自視頻編碼器的音頻數(shù)據(jù)的基本流。AV數(shù)據(jù)連同與其相關(guān)的參數(shù)/屬性 (例如,位速率、幀速率、分辨率、編解碼器類型(針對視頻和/或音頻數(shù)據(jù))、語言等)可形 成AV"表示"。
[0024] 術(shù)語"表示"可用于指代經(jīng)編碼音頻或視頻數(shù)據(jù)的對應(yīng)于多媒體內(nèi)容的特定周期 且以特定方式編碼的區(qū)段。AV數(shù)據(jù)的每一個別流可稱為基本流?;玖魇潜硎镜膯我弧⒔?jīng) 數(shù)字譯碼(可能經(jīng)壓縮)組件。舉例來說,表示的經(jīng)譯碼視頻或音頻部分可為基本流。另 夕卜,關(guān)于與包含在視頻基本流中的視頻數(shù)據(jù)有關(guān)的參數(shù)(例如,如上文描述的序列參數(shù)集) 的信息可包含在參數(shù)集基本流中。
[0025] 在一些實例中,視頻和音頻編碼器可各自包含用于由經(jīng)編碼數(shù)據(jù)形成封包化基本 流(PES)包的打包器。在其它實例中,視頻和音頻編碼器可各自與用于由經(jīng)編碼數(shù)據(jù)形成 PES包的相應(yīng)打包器介接。在另外其它實例中,囊封單元可包含用于由經(jīng)編碼音頻和視頻數(shù) 據(jù)形成PES包的打包器。
[0026] 囊封單元可從音頻和視頻編碼器接收表示的基本流的PES包,且由PES包形成對 應(yīng)的網(wǎng)絡(luò)抽象層(NAL)單元。在H.264/AVC(先進視頻譯碼)的實例中,經(jīng)譯碼視頻片段組 織為NAL單元,其提供例如視頻電話、存儲、廣播或串流等"網(wǎng)絡(luò)友好"視頻表示尋址應(yīng)用。 NAL單元可分類為視頻譯碼層(VCL)NAL單元和非VCLNAL單元。VCL單元可含有核心壓縮 引擎且可包含塊、宏塊,和/或切片層級數(shù)據(jù)。非VCLNAL單元可包含(尤其)參數(shù)集NAL 單元。
[0027] 如果例如圖片分割為多個片段(也稱為切片)且那些片段在其自身運送單元(例 如,RTP包)中運送,那么響應(yīng)于序列標頭和圖片標頭的損失的效應(yīng)在H. 264/AVC中引入?yún)?數(shù)集。不僅攜載第一圖片片段數(shù)據(jù)而且還攜載圖片標頭的圖片的第一包的損失可能導致完 全不正確重建的圖片(且有時還有隨后圖片),即使所有其它包未丟失也如此。如果具有圖 片標頭的包丟失,那么一些解碼器實施方案甚至將不會試圖解碼圖片的所接收的包。
[0028] 參數(shù)集可為視頻位流的一部分,或可由解碼器經(jīng)由其它手段(包含使用可靠信道 的頻帶外發(fā)射、編碼器和解碼器中的硬譯碼等)接收。參數(shù)集含有識別,其從例如對應(yīng)于包 含在經(jīng)譯碼視頻序列中的圖片的切片的切片標頭直接或間接參考。參考過程稱為"激活"。 依據(jù)參數(shù)集類型,激活可每圖片發(fā)生一次或每序列發(fā)生一次。引入經(jīng)由參考激活的概念 (以及其它原因),因為借助位流中信息的定位的隱式激活(如對于視頻編解碼器的其它語 法元素常見的)在頻帶外發(fā)射的情況下不可用。
[0029]HEVC包含適用于經(jīng)譯碼視頻序列的視頻數(shù)據(jù)的不同粒度水平(例如,圖片、序列、 層)的若干不同類型的參數(shù)集。包含在HEVC中的參數(shù)集是圖片參數(shù)集(PPS)、序列參數(shù)集 (SPS)和視頻參數(shù)集(VPS)。VPS傳達適用于多個層以及子層的信息。多層視頻序列的實例 包含例如相同視頻流的多個版本,其包含在分辨率、位速率、幀速率等方面不同的表示。給 定視頻序列的每一層(不論此些層具有相同還是不同SPS)可通常指代相同VPS。VPS可傳 達包含以下各項的信息:(1)由多個層或操作點共享以避免不必要復制的共同語法元素; (2)會話協(xié)商所需的操作點的信息,包含簡檔和水平;以及(3)不屬于一個SPS的其它操作 點特定信息。不屬于一個SPS的其它操作點特定信息的實例可包含層或子層的假設(shè)參考解 碼器(HRD)參數(shù)。
[0030]SPS含有可應(yīng)用于經(jīng)譯碼視頻序列的所有切片的信息。在HEVC中,經(jīng)譯碼視頻序 列從瞬時解碼刷新(IDR)圖片、清潔隨機存?。–RA)圖片或作為位流中的第一圖片的斷開 鏈接存?。˙LA)開始,且包含并非IDR或BLA圖片的所有后續(xù)圖片。位流由一或多個經(jīng)譯碼 視頻序列組成。SPS的內(nèi)容可劃分為若干類別的信息,包含例如:(1)自參考(其自身ID); (2)解碼器操作點相關(guān)(簡檔、水平、圖片大小、子層數(shù)目等);(3)實現(xiàn)針對簡檔內(nèi)的特定 工具的旗標,以及在工具啟用的情況下相關(guān)聯(lián)的譯碼工藝參數(shù);(4)限制結(jié)構(gòu)的靈活性和 變換系數(shù)譯碼的信息;(5)時間可縮放性控制;以及(6)視覺可用性信息(VUI),其包含假 設(shè)參考解碼器(HRD)信息。
[0031]PPS含有可在經(jīng)譯碼視頻序列中在圖片間改變的信息。PPS的內(nèi)容可劃分為若干 類別的信息,包含例如:(1)自參考;(2)初始圖片控制信息,例如初始量化參數(shù)(QP)、指示 切片(序列)標頭中的特定工具或控制信息的使用或存在的若干旗標;以及(3)貼瓦信息。
[0032]ISO基礎(chǔ)媒體文件格式(IS0BMFF、IS0/IEC14496-12)經(jīng)設(shè)計以含有促進媒體 的互換、管理、編輯和呈現(xiàn)的靈活可擴展格式的媒體呈現(xiàn)的經(jīng)定時媒體信息。IS0BMFF在 MPEG-4第12部分中指定,其界定基于時間的媒體文件的一般結(jié)構(gòu)。IS0BMFF用作例如經(jīng)界 定支持H. 264/MPEG-4AVC視頻壓縮的AVC文件格式(IS0/IEC14496-15)、3GPP文件格式、 SVC文件格式和MVC文件格式等系列中的其它文件格式的基礎(chǔ)。3GPP文件格式和MVC文件 格式是AVC文件格式的擴展。ISO基礎(chǔ)媒體文件格式含有例如音頻-視覺呈現(xiàn)等媒體數(shù)據(jù) 的經(jīng)定時序列的定時、結(jié)構(gòu)和媒體信息。文件結(jié)構(gòu)為對象定向的。文件可分解為基本對象, 且對象的結(jié)構(gòu)從其類型暗示。
[0033] 在ISO基礎(chǔ)媒體文件格式中,總體呈現(xiàn)稱為電影,其邏輯上劃分為軌道。一些軌道 可表示媒體的經(jīng)定時序列(例如,視頻的幀)。另外,軌道可含有例如媒體屬性/參數(shù)等其 它數(shù)據(jù),包含例如經(jīng)譯碼視頻數(shù)據(jù)可借以由接收囊封在文件中的數(shù)據(jù)的解碼器裝置解碼的 參數(shù)集。在每一軌道內(nèi),每一經(jīng)定時單元稱為樣本,其可例如為視頻或音頻的幀。樣本以序 列隱式編號。每一軌道具有一或多個樣本描述,且軌道中的每一樣本通過參考與描述發(fā)生 聯(lián)系。描述界定樣本可如何解碼(例如,描述識別所使用的壓縮算法)。
[0034] 不同于一些其它多媒體文件格式,ISO基礎(chǔ)媒體文件格式分離有時聯(lián)系在一起的 若干概念。文件的物理結(jié)構(gòu)可不與媒體本身的物理結(jié)構(gòu)發(fā)生聯(lián)系。舉例來說,文件的物理 結(jié)構(gòu)和媒體的布局不需要與媒體的時間排序發(fā)生聯(lián)系。視頻的幀不需要以時間次序布置在 文件中(但其可以如此)。然而,文件結(jié)構(gòu)可用于描述媒體的放置和定時。此文件結(jié)構(gòu)可允 許(但不要求)時間排序的文件。
[0035] 文件內(nèi)的數(shù)據(jù)可囊封在盒中。包含界定媒體的放置和定時的元數(shù)據(jù)的元數(shù)據(jù)可包 含在結(jié)構(gòu)化盒中,且媒體數(shù)據(jù)(例如,視頻的幀)可由此元數(shù)據(jù)參考。媒體數(shù)據(jù)可在相同文 件中(包含在一或多個盒中),或可在其它文件中。舉例來說,元數(shù)據(jù)允許借助URL參考其 它文件。媒體數(shù)據(jù)在這些次級文件內(nèi)的放置完全由初級文件中的元數(shù)據(jù)描述。此類次級文 件不需要格式化為此規(guī)格,但其可以如此;有可能例如在這些次級媒體文件中不存在盒。
[0036] 軌道可具有各種種類。視頻軌道含有視覺上的樣本,且音頻軌道含有音頻媒體。文 件還可包含索引軌道,其含有針對串流服務(wù)器的關(guān)于如何由文件中的媒體軌道形成串流協(xié) 議的包的指令。當文件被讀取以供本地重放時,索引軌道可被忽略。ISO基礎(chǔ)媒體文件格式 還允許其它軌道。
[0037] ISO基礎(chǔ)媒體文件格式的擴展已針對若干不同經(jīng)譯碼視頻標準(包含HEVC)制定。 根據(jù)ISO基礎(chǔ)媒體文件格式的此類擴展,包含VPS、SPS和PPS的參數(shù)集可與視頻基本流(其 在視頻的視頻軌道中)相關(guān)聯(lián)。另外,參數(shù)集還可存儲在與樣本相關(guān)聯(lián)的樣本描述中。還 有可能具有另一軌道(稱為參數(shù)集軌道)中的參數(shù)集,所述軌道包含含有由SPS、PPS和/ 或VPS非VCL參數(shù)集NAL單元的一或多者形成的樣本的參數(shù)集基本流。
[0038] 與視頻的樣本相關(guān)聯(lián)的樣本描述指示參數(shù)集的位置。樣本描述提供借以可將樣本 屬性信息傳送到例如視頻解碼器等裝置的語法結(jié)構(gòu)。先前HEVC文件格式指定,所有類型 的所有參數(shù)集包含在樣本描述中,或所有類型的所有參數(shù)集可存儲在樣本描述和樣本中。 然而,在一些情況下,區(qū)分特定類型的參數(shù)集是否包含在樣本描述中例如以確定何時執(zhí)行 VPS、SPS和PPS的一或多者的頻帶外運送可能是有用的。
[0039] 為促進確定特定類型的所有參數(shù)集包含在樣本描述或相關(guān)聯(lián)樣本中,或在某一其 它位置(例如,參數(shù)集軌道)中,本發(fā)明的技術(shù)使得能夠在經(jīng)囊封文件中(例如,在樣本描 述中)指定指示,所述指示個別地指示每一類型的參數(shù)集包含在樣本描述中、樣本數(shù)據(jù)或 兩者中還是某一其它位置中。在一個實例中,針對每一類型的參數(shù)集的一個指示包含在解 碼器配置記錄中,其是形成樣本描述的一部分的語法結(jié)構(gòu)。
[0040] 圖1是說明其中音頻/視頻(A/V)源裝置20將音頻和視頻數(shù)據(jù)運送到A/V目的 地裝置40的實例系統(tǒng)10的框圖。圖1的系統(tǒng)10可對應(yīng)于視頻電話會議系統(tǒng)、服務(wù)器/客 戶端系統(tǒng)、廣播器/接收器系統(tǒng),或其中將視頻數(shù)據(jù)從例如A/V源裝置20等源裝置發(fā)送到 例如A/V目的地裝置40等目的地裝置的任何其它系統(tǒng)。在一些實例中,A/V源裝置20和 A/V目的地裝置40可執(zhí)行雙向信息交換。即,A/V源裝置20和A/V目的地裝置40可能夠 編碼和解碼(以及發(fā)射和接收)音頻和視頻數(shù)據(jù)兩者。在一些實例中,音頻編碼器26可包 括語音編碼器,也稱為聲碼器。
[0041] 在圖1的實例中,A/V源裝置20包含音頻源22、視頻源24、音頻編碼器26、視頻編 碼器28、囊封單元30和輸出接口 32。音頻源22可包含例如麥克風,其產(chǎn)生表示待由音頻 編碼器26編碼的所俘獲音頻數(shù)據(jù)的電信號?;蛘?,音頻源22可包括存儲先前記錄的音頻 數(shù)據(jù)的存儲媒體、例如計算機化合成器等音頻數(shù)據(jù)產(chǎn)生器,或音頻數(shù)據(jù)的任何其它源。視頻 源24可包括產(chǎn)生待由視頻編碼器28編碼的視頻數(shù)據(jù)的視頻相機、以先前記錄的視頻數(shù)據(jù) 編碼的存儲媒體、視頻數(shù)據(jù)產(chǎn)生單元,或視頻數(shù)據(jù)的任何其它源。
[0042] 原始音頻和視頻數(shù)據(jù)可包括模擬或數(shù)字數(shù)據(jù)。模擬數(shù)據(jù)可在由音頻編碼器26和 /或視頻編碼器28編碼之前數(shù)字化。音頻源22可在發(fā)言參與者正發(fā)言的同時從發(fā)言參與 者獲得音頻數(shù)據(jù),且視頻源24可同時獲得發(fā)言參與者的視頻數(shù)據(jù)。以此方式,本發(fā)明中描 述的技術(shù)可應(yīng)用于實況、串流、實時音頻和視頻數(shù)據(jù),或應(yīng)用于經(jīng)存檔、預先記錄的音頻和 視頻數(shù)據(jù)。
[0043] 視頻源24可提供場景的單一或多個同時視圖。舉例來說,視頻源24可對應(yīng)于一 個相機或相機陣列,例如兩個或兩個以上相機各自分離開一定量的距離使得陣列中的相機 的每一者指向近似共同焦點。在多相機布置中,相機的每一者可提供場景的稍許不同的視 角。
[0044] 視頻源24還可使用其它技術(shù)提供多個同時視圖。舉例來說,視頻源24可提供場 景中的對象的一個視圖和深度信息。深度信息可用于從第二虛擬相機視角產(chǎn)生第二視圖。 視頻源24可包含處理器以產(chǎn)生第二視圖,或用于視頻編碼器28的預處理單元可產(chǎn)生第二 視圖。在一些實例中,視頻源24可包括使用兩個或兩個以上相機視角產(chǎn)生計算機圖形的計 算機。
[0045] 對應(yīng)于視頻幀的音頻幀通常為同時含有被音頻源22俘獲的音頻數(shù)據(jù)以及被視頻 源24俘獲的包含在視頻幀內(nèi)的視頻數(shù)據(jù)的音頻幀。因此,音頻幀可時間上對應(yīng)于一或多個 特定視頻幀。因此,對應(yīng)于視頻幀的音頻幀通常對應(yīng)于其中音頻數(shù)據(jù)和視頻數(shù)據(jù)被同時俘 獲且針對其音頻幀和視頻幀分別包括同時被俘獲的音頻數(shù)據(jù)和視頻數(shù)據(jù)的情形。
[0046] 在一些實例中,音頻編碼器26可編碼每一經(jīng)編碼音頻幀中的時間戳(其表示經(jīng)編 碼音頻幀的音頻數(shù)據(jù)被記錄的時間),且類似地,視頻編碼器28可編碼每一經(jīng)編碼視頻幀 中的時間戳(其表示經(jīng)編碼視頻幀的視頻數(shù)據(jù)被記錄的時間)。A/V源裝置20可包含音頻 編碼器26和/或視頻編碼器28可從中產(chǎn)生時間戳的內(nèi)部時鐘,或音頻源22和視頻源24 可使用所述內(nèi)部時鐘使音頻和視頻數(shù)據(jù)分別與時間戳相關(guān)聯(lián)。
[0047] 在一些實例中,音頻源22可將對應(yīng)于音頻數(shù)據(jù)被記錄的時間的數(shù)據(jù)發(fā)送到音頻 編碼器26,且視頻源24可將對應(yīng)于視頻數(shù)據(jù)被記錄的時間的數(shù)據(jù)發(fā)送到視頻編碼器28。在 一些實例中,音頻編碼器26可編碼經(jīng)編碼音頻數(shù)據(jù)中的序列識別符以指示經(jīng)編碼音頻數(shù) 據(jù)的相對時間排序而不必指示音頻數(shù)據(jù)被記錄的絕對時間,且類似地,視頻編碼器28也可 使用序列識別符來指示經(jīng)編碼視頻數(shù)據(jù)的相對時間排序。類似地,在一些實例中,序列識別 符可經(jīng)映射或以其它方式與時間戳相關(guān)。
[0048] 為編碼從視頻源24接收的視頻數(shù)據(jù),視頻編碼器28執(zhí)行幀內(nèi)和/或幀間預測以 產(chǎn)生一或多個預測塊。視頻編碼器28從待編碼的原始視頻塊減去預測塊以產(chǎn)生殘余塊。因 此,殘余塊可表示正譯碼塊與預測塊之間的逐像素差。視頻編碼器28可對殘余塊執(zhí)行變換 以產(chǎn)生變換系數(shù)的塊。在基于幀內(nèi)和/或幀間的預測譯碼和變換技術(shù)之后,視頻編碼器28 可量化變換系數(shù)。在量化之后,可由編碼器28根據(jù)熵譯碼方法執(zhí)行熵譯碼。
[0049] 視頻編碼器28產(chǎn)生的經(jīng)譯碼視頻塊可由可用于產(chǎn)生或識別預測塊的預測信息以 及可應(yīng)用于預測塊以重新產(chǎn)生原始塊的數(shù)據(jù)的殘余塊表示。預測信息可包含用于識別數(shù)據(jù) 的預測塊的運動向量。使用運動向量,視頻解碼器48可能夠重建由視頻編碼器28使用以 對殘余塊進行譯碼的預測塊。因此,給定一組殘余塊和一組運動向量(以及可能一些額外 語法)的情況下,視頻解碼器28可重建原始經(jīng)編碼的視頻幀或數(shù)據(jù)的其它塊?;谶\動估 計和運動補償?shù)膸g譯碼可實現(xiàn)相對高的壓縮量而無過多數(shù)據(jù)損失,因為連續(xù)視頻幀或其 它類型的經(jīng)譯碼單元通常是類似的。經(jīng)編碼視頻序列可包含殘余數(shù)據(jù)的塊、運動向量(當 幀間預測編碼時)、用于幀內(nèi)預測的幀內(nèi)預測模式的指示,和語法元素。
[0050] 視頻編碼器28還可利用幀內(nèi)預測技術(shù)來相對于共同幀或切片或幀的其它子部分 的相鄰視頻塊編碼視頻塊。以此方式,視頻編碼器28空間上預測所述塊。視頻編碼器28 可配置有多種幀內(nèi)預測模式,其通常對應(yīng)于各種空間預測方向。
[0051] 視頻編碼器28可應(yīng)用變換、量化和熵譯碼過程來進一步減小與由于編碼視頻源 24提供的源視頻數(shù)據(jù)而產(chǎn)生的殘余塊的通信相關(guān)聯(lián)的位速率。變換技術(shù)可包含例如離散余 弦變換(DCT)或概念上類似的過程?;蛘?,可使用小波變換、整數(shù)變換或其它類型的變換。 視頻編碼器28還可量化變換系數(shù),其通常涉及可能減小數(shù)據(jù)量(例如,用于呈現(xiàn)系數(shù)的位) 的過程。熵譯碼可包含全體壓縮數(shù)據(jù)以供輸出到位流的過程。經(jīng)壓縮數(shù)據(jù)可包含例如譯碼 模式的序列、運動信息、經(jīng)譯碼塊圖案,和經(jīng)量化變換系數(shù)。熵譯碼的實例包含上下文自適 應(yīng)可變長度譯碼(CAVLC)和上下文自適應(yīng)二進制算術(shù)譯碼(CABAC)。
[0052] 源裝置20和目的地裝置40進行的視頻編碼和解碼可支持用于幀內(nèi)預測的若干不 同視頻譯碼塊大小,例如對于亮度分量16乘16、8乘8或4乘4,以及對于色度分量8x8。另 夕卜,源裝置20和目的地裝置40可支持用于幀間預測的若干不同視頻譯碼塊大小,例如對于 亮度分量16xl6、16x8、8xl6、8x8、8x4、4x8和4x4,以及對于色度分量對應(yīng)的按比例縮放大 小。在本發(fā)明中,"NxN"和"N乘N"可互換使用以表示依據(jù)垂直和水平尺寸的塊的像素尺寸 (例如,16x16像素或16乘16像素)。一般來說,16x16塊將具有垂直方向上16個像素(y =16)以及水平方向上16個像素(X= 16)。同樣,NxN塊通常具有垂直方向上N個像素以 及水平方向上N個像素,其中N表示非負整數(shù)值。一塊中的像素可布置成行和列。塊可具 有水平和垂直維度上的不同數(shù)目的像素。即,塊可包含NxM像素,其中N不一定等于M。
[0053] 小于16乘16的塊大小可稱為16乘16宏塊的分區(qū)。視頻塊可包括像素域中的像 素數(shù)據(jù)的塊,或變換域中的變換系數(shù)的塊,例如隨后應(yīng)用例如離散余弦變換(DCT)、整數(shù)變 換、小波變換或與表示經(jīng)譯碼視頻塊與預測視頻塊之間的像素差的殘余視頻塊數(shù)據(jù)概念上 類似的變換等變換。在一些情況下,視頻塊可包括變換域中的經(jīng)量化變換系數(shù)的塊。
[0054] 較小視頻塊可提供較好分辨率,且可用于視頻幀的包含高細節(jié)水平的位置。一般 來說,宏塊和各種分區(qū)(有時稱為子塊)可視為視頻塊。另外,切片可視為多個視頻塊,例 如宏塊和/或子塊。每一切片可為視頻幀的可獨立解碼單元?;蛘撸瑤旧砜蔀榭山獯a單 元,或幀的其它部分可界定為可解碼單元。術(shù)語"經(jīng)譯碼單元"或"譯碼單元"可指代例如 整個幀、幀的切片、也稱為序列的圖片的群組(GOP),或根據(jù)適用的譯碼技術(shù)界定的另一可 獨立解碼單元等視頻幀的任何可獨立解碼單元。
[0055] 再次參看圖1,視頻源24可將場景的一或多個視圖提供到視頻編碼器28,或可將 信息直接提供到囊封單元30。囊封單元30可從視頻編碼器28檢索包含經(jīng)編碼視頻數(shù)據(jù)的 基本流以及從音頻編碼器26檢索包含音頻數(shù)據(jù)的基本流。在一些實例中,視頻編碼器28 和音頻編碼器26可各自包含用于由經(jīng)編碼數(shù)據(jù)形成PES包的打包器。在其它實例中,視頻 編碼器28和音頻編碼器26可各自與用于由經(jīng)編碼數(shù)據(jù)形成PES包的相應(yīng)打包器介接。在 另外其它實例中,囊封單元30可包含用于由經(jīng)編碼音頻和視頻數(shù)據(jù)形成PES包的打包器。
[0056] 囊封單元30可從音頻編碼器26和視頻編碼器28接收表示的基本流的PES包,且 由PES包形成對應(yīng)的網(wǎng)絡(luò)抽象層(NAL)單元。在相同表示內(nèi),流ID可用于區(qū)分屬于一個基 本流的PES包與屬于另一基本流的PES包?;玖鞯臄?shù)據(jù)的基本單元可為PES包。因此, MVC視頻數(shù)據(jù)的每一視圖可對應(yīng)于相應(yīng)基本流。類似地,音頻數(shù)據(jù)對應(yīng)于一或多個相應(yīng)基本 流。除了媒體基本流外,囊封單元30還可接收其它類型的基本流,包含對應(yīng)于參數(shù)集的參 數(shù)集流,視頻解碼器28編碼的視頻數(shù)據(jù)可借助所述參數(shù)集由比如A/V目的地裝置40的視 頻解碼器48等解碼裝置解碼。
[0057] 本發(fā)明的教示大體針對經(jīng)編碼多媒體(例如,音頻和視頻)數(shù)據(jù)的存儲和運送,以 及經(jīng)運送多媒體數(shù)據(jù)的接收和后續(xù)解譯及解碼。舉例來說,本發(fā)明的教示使得能夠在經(jīng)囊 封視頻文件中指定指示,所述指示個別地指示例如VPS、SPS和PPS等每一類型的參數(shù)集包 含在與樣本相關(guān)聯(lián)的樣本描述中、樣本數(shù)據(jù)中、樣本描述和樣本兩者中,還是某一其它位置 中。
[0058] 在一個實例中,囊封單元30分析從視頻編碼器28接收的基本流,且確定與樣本相 關(guān)聯(lián)的特定類型的所有參數(shù)集是否存儲在與樣本相關(guān)聯(lián)的樣本描述中。囊封單元30可接 著在從基本流產(chǎn)生的文件中提供指示,所述指示指示特定類型的所有參數(shù)集是否存儲在樣 本描述中。根據(jù)本發(fā)明關(guān)于囊封單元30的此和其它功能的額外細節(jié)在下文參看圖2-5提 供。
[0059] 在一個實例中,囊封單元30從音頻編碼器26和視頻編碼器28接收表示的基本流 的PES包,且由PES包形成對應(yīng)的NAL單元。將經(jīng)譯碼視頻片段組織為NAL單元可提供數(shù) 據(jù)的"網(wǎng)絡(luò)友好"視頻表示以解決例如視頻電話、存儲、廣播或串流等應(yīng)用。NAL單元可分類 為視頻譯碼層(VCL)NAL單元和非VCLNAL單元。VCL單元可含有核心壓縮引擎且可包含 塊、宏塊,和/或切片層級數(shù)據(jù)。其它NAL單元可為非VCLNAL單元。
[0060] 非VCLNAL單元可(尤其)包含參數(shù)集NAL單元和補充增強信息(SEI)NAL單元。 參數(shù)集可含有視頻數(shù)據(jù)的不同粒度水平(例如,序列和圖片)的不同標頭信息。囊封在參 數(shù)NAL單元中的參數(shù)可包含VPS、SPS和PPS。利用參數(shù)集,不經(jīng)常改變的信息不需要針對 每一序列或圖片重復,因此譯碼和發(fā)射效率可改進。舉例來說,參數(shù)集的使用可實現(xiàn)重要標 頭信息的頻帶外發(fā)射,從而避免需要冗余信息用于錯誤復原。在頻帶外發(fā)射實例中,參數(shù)集 NAL單元可在與其它NAL單元(例如,SEINAL單元)不同的信道上發(fā)射。
[0061] SEI可含有對于解碼來自VCLNAL單元的經(jīng)譯碼圖片樣本并非必需但可輔助與解 碼、顯示、錯誤復原和其它目的相關(guān)的過程的信息。SEI消息可包含在非VCLNAL單元中。 SEI消息是一些標準規(guī)格的規(guī)范部分,且因此對于標準遵從解碼器實施方案并非始終強制 的。
[0062]SEI消息可為序列層級SEI消息或圖片層級SEI消息。一些序列層級信息可包含 在SEI消息中,例如SVC的實例中的可縮放性信息SEI消息和MVC中的視圖可縮放性信息 SEI消息。這些實例SEI消息可傳達關(guān)于例如操作點的提取和操作點的特性的信息。在有 效負載中包含視頻數(shù)據(jù)的NAL單元可包含各種粒度水平的視頻數(shù)據(jù)。舉例來說,NAL單元 可包含視頻數(shù)據(jù)的塊、一或多個宏塊、視頻數(shù)據(jù)的切片,或視頻數(shù)據(jù)的整個幀。
[0063] 在一個實例中,囊封單元30匯編來自若干NAL單元的存取單元。一般來說,存取 單元可包含用于表示視頻數(shù)據(jù)的幀的一或多個NAL單元,以及對應(yīng)于幀的音頻數(shù)據(jù)(當此 類音頻數(shù)據(jù)可用時)。存取單元通常包含針對一個輸出時間例項的所有NAL單元,例如針對 一個時間例項的所有音頻和視頻數(shù)據(jù)。舉例來說,如果每一視圖具有20幀/秒(fps)的幀 速率,那么每一時間例項可對應(yīng)于0. 05秒的時間間隔。在此時間間隔期間,相同存取單元 (相同時間例項)的所有視圖的特定幀可同時再現(xiàn)。存取單元的解碼次序不需要一定與輸 出或顯示次序相同。
[0064] 在囊封單元30已基于所接收數(shù)據(jù)將NAL單元和/或存取單元匯編為視頻文件之 后,囊封單元30將視頻文件傳遞到輸出接口 32以供輸出。在一些實例中,囊封單元30可 將視頻文件存儲在本地或經(jīng)由輸出接口 32將視頻文件發(fā)送到遠程服務(wù)器,而不將視頻文 件直接發(fā)送到目的地裝置40。在一個實例中,視頻數(shù)據(jù)可從A/V目的地裝置40的輸入接 口 36經(jīng)由鏈路34傳送。在一些實例中,源裝置20包含調(diào)制解調(diào)器,其根據(jù)例如碼分多址 (CDM)或另一通信標準等通信標準調(diào)制發(fā)射到目的地裝置40的視頻數(shù)據(jù)。調(diào)制解調(diào)器可 包含各種混頻器、濾波器、放大器或其它經(jīng)設(shè)計用于信號調(diào)制的組件。輸出接口 32可包含 經(jīng)設(shè)計用于發(fā)射數(shù)據(jù)的電路,包含放大器、濾波器和一或多個天線。在一些實例中,代替于 經(jīng)由通信信道(例如,經(jīng)由鏈路34)發(fā)射,源裝置20可將經(jīng)編碼視頻數(shù)據(jù)存儲到例如數(shù)字 影音光盤(DVD)、藍光光盤、快閃驅(qū)動器等存儲裝置上。
[0065]在圖1的實例中,A/V目的地裝置40包含音頻輸出42、視頻輸出44、音頻解碼器 46、視頻解碼器48、解封單元38和輸入接口 36。在目的地裝置40中,視頻解碼器48最終 接收并解碼經(jīng)編碼視頻數(shù)據(jù)。舉例來說,目的地裝置40的輸入接口 36經(jīng)由鏈路34或從存 儲裝置接收信息,所述信息接著由解封單元38解封。視頻解碼器48從解封單元38接收經(jīng) 解封視頻數(shù)據(jù)。在一些實例中,目的地裝置40包含解調(diào)制所述信息的調(diào)制解調(diào)器。類似于 輸出接口 32,輸入接口 36可包含經(jīng)設(shè)計用于接收數(shù)據(jù)的電路,包含放大器、濾波器和一或 多個天線。在一些例子中,輸出接口 32和/或輸入接口 36可并入在包含接收和發(fā)射電路 兩者的單一收發(fā)器組件內(nèi)。調(diào)制解調(diào)器可包含各種混頻器、濾波器、放大器或其它經(jīng)設(shè)計用 于信號解調(diào)制的組件。在一些例子中,調(diào)制解調(diào)器可包含用于執(zhí)行調(diào)制和解調(diào)制兩者的組 件。
[0066] 解封單元38可將視頻文件的元素解封為組成的PES流,將PES流拆包以檢索經(jīng)編 碼數(shù)據(jù),且依據(jù)經(jīng)編碼數(shù)據(jù)為音頻還是視頻流的一部分(例如,如流的PES包標頭所指示) 將經(jīng)編碼數(shù)據(jù)發(fā)送到音頻解碼器46或視頻解碼器48。音頻解碼器46解碼經(jīng)編碼音頻數(shù)據(jù) 且將經(jīng)解碼音頻數(shù)據(jù)發(fā)送到音頻輸出42,而視頻解碼器48解碼經(jīng)編碼視頻數(shù)據(jù)且將經(jīng)解 碼視頻數(shù)據(jù)(其可包含流的多個視圖)發(fā)送到視頻輸出44。
[0067] 在一個實例中,視頻解碼器48根據(jù)熵譯碼方法(例如,CAVLC或CABAC)解碼所接 收的經(jīng)編碼視頻數(shù)據(jù)8 (例如,經(jīng)譯碼塊)以獲得經(jīng)量化系數(shù)。視頻解碼器48應(yīng)用反向量 化(解量化)和反向變換功能來重建像素域中的殘余塊。視頻解碼器48還基于包含在經(jīng) 編碼視頻數(shù)據(jù)中的控制信息或語法信息(例如,譯碼模式、運動向量、界定濾波器系數(shù)的語 法等)產(chǎn)生預測塊。視頻解碼器48計算預測塊與經(jīng)重建殘余塊的和以產(chǎn)生經(jīng)重建的視頻 塊以供顯示。
[0068] 在一個實例中,視頻輸出44包含一或多個顯示裝置,其經(jīng)配置以向用戶顯示經(jīng)解 碼視頻數(shù)據(jù),包含例如包括基于包含在參考視圖中的深度信息合成的目的地視圖的多視圖 視頻。形成視頻輸出44的一部分或全部的顯示裝置可包含例如陰極射線管(CRT)、液晶顯 示器(LCD)、等離子體顯示器、有機發(fā)光二極管(OLED)顯示器或另一類型的顯示裝置等多 種一或多個顯示裝置的任一者。在一些實例中,視頻輸出44包含能夠進行三維重放的顯示 裝置。舉例來說,視頻輸出44可包含立體顯示,其結(jié)合檢視者佩戴的眼鏡使用。
[0069] 視頻編碼器28、視頻解碼器48、音頻編碼器26、音頻解碼器46、囊封單元30和解 封單元38各自可經(jīng)實施為例如一或多個微處理器、數(shù)字信號處理器(DSP)、專用集成電路 (ASIC)、現(xiàn)場可編程門陣列(FPGA)、離散邏輯電路、軟件、硬件、固件或其任何組合等多種合 適處理電路(適用的情況下)中的任一者。視頻編碼器28和視頻解碼器48的每一者可包 含在一或多個編碼器或解碼器中,其任一者可作為組合式視頻編碼器/解碼器(CODEC)的 一部分集成。同樣,音頻編碼器26和音頻解碼器46的每一者可包含在一或多個編碼器或解 碼器中,其任一者可作為組合式CODEC的一部分集成。包含視頻編碼器28、視頻解碼器48、 音頻編碼器26、音頻解碼器46、囊封單元30和/或解封單元38的設(shè)備可包括集成電路、微 處理器,和/或無線通信裝置(例如,蜂窩式電話)。
[0070] 圖2是說明實例囊封單元30的組件的框圖。在圖2的實例中,囊封單元30包含 視頻輸入接口 80、音頻輸入接口 82、視頻文件產(chǎn)生單元60和視頻文件輸出接口 84。在此實 例中,視頻文件產(chǎn)生單元60包含網(wǎng)絡(luò)抽象層(NAL)單元構(gòu)造器62、參數(shù)集提取單元64,和 樣本描述產(chǎn)生單兀66。
[0071] 視頻輸入接口 80和音頻輸入接口 82分別接收經(jīng)編碼視頻和音頻數(shù)據(jù)。視頻輸入 接口 80和音頻輸入接口 82可在數(shù)據(jù)經(jīng)編碼時接收經(jīng)編碼視頻和音頻數(shù)據(jù),或可從計算機 可讀媒體接收經(jīng)編碼視頻和音頻數(shù)據(jù)。在接收經(jīng)編碼視頻和音頻數(shù)據(jù)后,視頻輸入接口 80 和音頻輸入接口 82將經(jīng)編碼視頻和音頻數(shù)據(jù)傳遞到視頻文件產(chǎn)生單元60以供匯編為視頻 文件。
[0072] 視頻文件產(chǎn)生單元60可對應(yīng)于控制單元,包含經(jīng)配置以執(zhí)行歸屬于其的功能和 程序的硬件、軟件和/或固件??刂茊卧蛇M一步執(zhí)行通常歸屬于囊封單元30的功能。對 于視頻文件產(chǎn)生單元60體現(xiàn)在軟件和/或固件中的實例,囊封單元30可包含包括針對視 頻文件產(chǎn)生單元60的指令的計算機可讀媒體,以及用以執(zhí)行所述指令的處理單元。視頻文 件產(chǎn)生單元60的子單元的每一者(在此實例中,NAL單元構(gòu)造器62、參數(shù)集提取單元64, 和樣本描述產(chǎn)生單元66)可實施為個別硬件單元和/或軟件模塊,且可功能上集成或進一 步分離為額外子單元。視頻文件產(chǎn)生單元60可對應(yīng)于任何適宜的處理單元或處理電路,例 如一或多個微處理器、專用集成電路(ASIC)、現(xiàn)場可編程門陣列(FPGA)、數(shù)字信號處理器 (DSP),或其任何組合。視頻文件產(chǎn)生單元60可進一步包含非暫時性計算機可讀媒體,其存 儲針對NAL單元構(gòu)造器62、參數(shù)集提取單元64和樣本描述產(chǎn)生單元66的任一者或全部的 指令,以及用于執(zhí)行所述指令的處理器。
[0073] -般來說,視頻文件產(chǎn)生單元60可產(chǎn)生包含所接收的音頻和視頻數(shù)據(jù)的視頻文 件。NAL單元構(gòu)造器62可形成包含所接收的音頻和視頻樣本的NAL單元。視頻文件產(chǎn)生單 元60可進一步經(jīng)配置以針對特定時間例項匯編包含所有NAL單元的存取單元。此外,視頻 文件產(chǎn)生單元60可經(jīng)配置以將序列層級SEI消息與序列層級SEI消息描述的經(jīng)編碼視頻 圖片解耦,且將序列層級SEI消息與序列層級SEI消息描述的經(jīng)編碼視頻圖片分離而存儲 在視頻文件中。
[0074] 視頻編碼器28(圖1)可包含除視頻數(shù)據(jù)以及視頻數(shù)據(jù)的樣本以外的數(shù)據(jù)。囊封 單元30的視頻輸入接口 80從視頻編碼器28接收的經(jīng)編碼視頻數(shù)據(jù)可包含例如表示例如 VPS、SPS和PPS等參數(shù)集的數(shù)據(jù),以及經(jīng)編碼視頻的樣本的SEI消息。在經(jīng)囊封視頻文件 的上下文中,樣本可指代經(jīng)編碼視頻數(shù)據(jù)的樣本以及其它數(shù)據(jù)的樣本,包含包括形成參數(shù) 集的部分的數(shù)據(jù)的樣本,所述參數(shù)集可由視頻解碼器(例如,目的地裝置40的視頻解碼器 48)使用以解碼也包含在囊封單元30產(chǎn)生的經(jīng)囊封視頻文件中的經(jīng)編碼視頻數(shù)據(jù)。
[0075] 在根據(jù)本發(fā)明的實例中,囊封單元30的視頻文件產(chǎn)生單元60經(jīng)配置以將作為經(jīng) 編碼視頻數(shù)據(jù)的一部分接收的參數(shù)集數(shù)據(jù)存儲在特定位置中,且在經(jīng)囊封文件中提供指示 參數(shù)集位于何處的指示。舉例來說,囊封單元30的視頻文件產(chǎn)生單元60經(jīng)配置以將參數(shù) 集數(shù)據(jù)存儲在與視頻樣本相關(guān)聯(lián)的樣本描述中、樣本數(shù)據(jù)中、樣本描述和樣本兩者中,或某 一其它位置中。
[0076] 如上所述,視頻文件產(chǎn)生單元60包含參數(shù)集提取單元64和樣本描述產(chǎn)生單元66。 在一個實例中,參數(shù)集提取單元64經(jīng)配置以從囊封單元30的視頻輸入接口 80接收的經(jīng)編 碼視頻數(shù)據(jù)提取參數(shù)集數(shù)據(jù)。在一個實例中,參數(shù)集提取單元64可識別參數(shù)集數(shù)據(jù)且借此 將此數(shù)據(jù)與經(jīng)編碼視頻數(shù)據(jù)區(qū)分。另外,參數(shù)集提取單元64可將參數(shù)集數(shù)據(jù)與經(jīng)編碼視頻 數(shù)據(jù)區(qū)分。
[0077] 視頻文件產(chǎn)生單元60的參數(shù)集提取單元64還可經(jīng)配置以將參數(shù)集數(shù)據(jù)存儲在經(jīng) 囊封視頻文件中的若干不同位置中。在一個實例中,參數(shù)集提取單元64經(jīng)配置以將參數(shù)集 數(shù)據(jù)的一部分或全部存儲在與視頻數(shù)據(jù)的樣本相關(guān)聯(lián)的一或多個樣本描述中。在另一實例 中,參數(shù)集提取單元64經(jīng)配置以將參數(shù)集數(shù)據(jù)存儲在除樣本描述以外的位置中,包含與視 頻軌道中的視頻樣本一起,或在比如參數(shù)集軌道等經(jīng)囊封視頻文件的單獨軌道中。在參數(shù) 集數(shù)據(jù)與樣本描述和視頻樣本分離而存儲的情況下,在一些實例中,參數(shù)集提取單元64可 產(chǎn)生與其中將存儲且借以將發(fā)射參數(shù)集數(shù)據(jù)的一些或全部的經(jīng)囊封視頻文件分離的文件。
[0078] 視頻文件產(chǎn)生單元60的樣本描述產(chǎn)生單元66經(jīng)配置以產(chǎn)生與視頻的樣本相關(guān)聯(lián) 的樣本描述。如上所述,在根據(jù)ISO基礎(chǔ)媒體文件格式而格式化的文件中,總體媒體呈現(xiàn)稱 為電影。電影邏輯上劃分為軌道。一些軌道可表示媒體的經(jīng)定時序列(例如,視頻的幀)。 另外,軌道可含有例如媒體屬性/參數(shù)等其它數(shù)據(jù),包含例如接收囊封在文件中的數(shù)據(jù)的 解碼器裝置可借以對經(jīng)譯碼視頻數(shù)據(jù)進行解碼的參數(shù)集。在每一軌道內(nèi),每一經(jīng)定時單元 稱為樣本,其可例如為視頻或音頻的幀。每一軌道具有一或多個樣本描述,且軌道中的每一 樣本通過參考與描述發(fā)生聯(lián)系。樣本描述提供可借以將樣本屬性信息傳送到例如視頻解碼 器等裝置的語法結(jié)構(gòu)。樣本描述界定可如何對樣本進行解碼(例如,描述識別所使用的壓 縮算法)。樣本描述產(chǎn)生單元66經(jīng)配置以產(chǎn)生與包含在囊封單元30的視頻輸入接口 80所 接收的經(jīng)編碼視頻數(shù)據(jù)中的視頻的樣本相關(guān)聯(lián)的樣本描述。
[0079] 在一個實例中,樣本描述產(chǎn)生單元66產(chǎn)生的樣本描述指示參數(shù)集的位置以及其 它信息。先前HEVC文件格式指定:所有類型的所有參數(shù)集包含在樣本描述中,或所有類型 的所有參數(shù)集可存儲在樣本描述和樣本中。然而,在一些情況下,區(qū)分特定類型的參數(shù)集是 否包含在樣本描述中例如以確定何時執(zhí)行VPS、SPS和PPS的一或多者的頻帶外運送可能是 有用的。
[0080] 為促進確定特定類型的所有參數(shù)集是包含在樣本描述中還是某一其它位置(例 如,參數(shù)集軌道)中,本發(fā)明的技術(shù)使得能夠由樣本描述產(chǎn)生單元66在樣本描述中指定個 別地指示每一類型的參數(shù)集存儲在何處的指示。在一個實例中,樣本描述產(chǎn)生單元66在解 碼器配置記錄中針對每一類型的參數(shù)集提供一個指示,例如VPS、SPS和PPS的每一者。解 碼器配置記錄是形成樣本描述的一部分的語法結(jié)構(gòu)。圖3和4說明囊封單元30產(chǎn)生的文 件的實例,其包含與存儲在文件中的視頻的樣本相關(guān)聯(lián)的參數(shù)集的位置的指示。
[0081] 圖3是說明由囊封單元30囊封的實例視頻文件100的概念圖。視頻文件100包 含網(wǎng)上音樂盒(moovbox)102,其包含視頻數(shù)據(jù)軌道104和參數(shù)集軌道106。根據(jù)本發(fā)明的 視頻文件100或其它經(jīng)囊封視頻文件可包含兩個以上軌道,包含多個視頻和音頻數(shù)據(jù)軌道 以及多個參數(shù)集軌道。在圖3中,視頻數(shù)據(jù)軌道104包含樣本描述108以及包括視頻樣本 110和11的視頻樣本的相關(guān)聯(lián)序列。視頻數(shù)據(jù)軌道104可包含更多視頻樣本和額外樣本描 述。
[0082] 網(wǎng)上音樂盒102形成包含在ISO基礎(chǔ)媒體文件格式視頻文件100中的視頻數(shù)據(jù)的 基本存儲容器。如上所述,在實踐中,網(wǎng)上音樂盒102可包含若干不同軌道,包含視頻數(shù)據(jù)、 音頻數(shù)據(jù)和(在一些情況下)參數(shù)集軌道。在圖3的實例視頻文件100中,網(wǎng)上音樂盒102 包含視頻數(shù)據(jù)軌道104和參數(shù)集軌道106。視頻數(shù)據(jù)軌道104和參數(shù)集軌道106的每一者 可表示媒體或其它信息(例如,視頻的幀)的經(jīng)定時序列。在每一軌道內(nèi),每一經(jīng)定時單元 稱為樣本,其可例如為視頻或音頻的幀,或表示借以解碼視頻的樣本的參數(shù)集的數(shù)據(jù)的樣 本。
[0083] 在一個實例中,樣本描述108由樣本描述產(chǎn)生單兀66至少部分基于與視頻樣本 110和111相關(guān)聯(lián)的參數(shù)集存儲在視頻文件100中何處而產(chǎn)生。在圖3的實例中,與視頻樣 本110和111相關(guān)聯(lián)的參數(shù)集包含若干不同類型的參數(shù)集,包含VPS120、SPS122和PPS 124。VPS120存儲在參數(shù)集軌道106中,而SPS122和PPS124存儲在樣本描述108中或 與視頻樣本110和111 一起,或兩者。
[0084] 樣本描述產(chǎn)生單元66可通過確定參數(shù)集存儲在視頻文件100中何處(例如,由參 數(shù)集提取單元64)產(chǎn)生樣本描述108。在一個實例中,樣本描述產(chǎn)生單元66確定VPS120 存儲在視頻文件100的參數(shù)集軌道106中,而SPS122和PPS124存儲在與視頻樣本110 和111相關(guān)聯(lián)的樣本描述108中。在此情況下,樣本描述產(chǎn)生單元66可在解碼器配置記錄 126中提供視頻文件100中的參數(shù)集位置的指示,所述解碼器配置記錄126是樣本描述108 中包含的語法結(jié)構(gòu)。
[0085] 下文提供實例實施方案。特定來說,與經(jīng)囊封視頻文件100中的視頻樣本110和11 相關(guān)聯(lián)的樣本描述108中包含的解碼器配置記錄126的語法可在下文所展示的實例HEVC解碼器配置記錄中如下。
【權(quán)利要求】
1. 一種將包括多個序列的經(jīng)譯碼視頻圖片的經(jīng)譯碼視頻數(shù)據(jù)存儲在電子文件中的方 法,所述方法包括: 確定與至少一個樣本相關(guān)聯(lián)的樣本描述是否包含與所述至少一個樣本相關(guān)聯(lián)的特定 類型的所有參數(shù)集,其中所述至少一個樣本包括所述多個序列的經(jīng)譯碼視頻圖片的至少一 部分,且其中所述特定類型是參數(shù)集的多個不同特定類型中的一者;以及 基于所述確定在所述電子文件中提供指示所述樣本描述是否包含所述特定類型的所 有參數(shù)集的指示。
2. 根據(jù)權(quán)利要求1所述的方法,其中所述多個不同特定類型的參數(shù)集包括序列參數(shù)集 SPS、圖片參數(shù)集PPS和視頻參數(shù)集VPS中的一或多者。
3. 根據(jù)權(quán)利要求1所述的方法,其中確定所述樣本描述是否包含所述特定類型的所有 參數(shù)集包括: 確定與所述樣本描述相關(guān)聯(lián)的名稱;以及 基于與所述樣本描述相關(guān)聯(lián)的所述名稱確定所述樣本描述是否包含所述特定類型的 所有參數(shù)集。
4. 根據(jù)權(quán)利要求3所述的方法, 其中與所述樣本描述相關(guān)聯(lián)的所述所確定的名稱是"hvcl",且 其中確定所述樣本描述是否包含所述特定類型的所有參數(shù)集包括當所述樣本被命名 為"hvcl"時確定所述樣本描述包含所述特定類型的所有參數(shù)集。
5. 根據(jù)權(quán)利要求3所述的方法, 其中與所述樣本描述相關(guān)聯(lián)的所述所確定的名稱是"hevl",且 其中確定所述樣本描述是否包含所述特定類型的所有參數(shù)集包括當所述樣本被命名 為"hevl"時確定所述樣本描述不包含所述特定類型的所有參數(shù)集。
6. 根據(jù)權(quán)利要求1所述的方法,其進一步包括在所述電子文件中使名稱與所述樣本描 述相關(guān)聯(lián),其中所述名稱不指示所述樣本描述是否包含所述特定類型的所有參數(shù)集。
7. 根據(jù)權(quán)利要求1所述的方法,其中在所述電子文件中提供指示所述樣本描述是否包 含所述特定類型的所有參數(shù)集的指示包括基于所述確定在所述電子文件中提供指示所述 樣本描述不包含所述特定類型的所有參數(shù)集的指示。
8. 根據(jù)權(quán)利要求1所述的方法,其中在所述電子文件中提供指示所述樣本描述是否包 含所述特定類型的所有參數(shù)集的指示包括基于所述確定在所述電子文件中提供指示所述 樣本描述確實包含所述特定類型的所有參數(shù)集的指示。
9. 根據(jù)權(quán)利要求1所述的方法,其中在所述電子文件中提供指示所述樣本描述是否包 含所述特定類型的所有參數(shù)集的指示包括基于所述確定在所述電子文件中提供指示所述 樣本描述的解碼器配置記錄是否包含所述特定類型的所有參數(shù)集的指示。
10. 根據(jù)權(quán)利要求1所述的方法,其中所述特定類型的所有參數(shù)集包括所述多個不同 特定類型的參數(shù)集的第一類型的所有參數(shù)集,其中所述文件中的所述指示包括所述文件中 的第一指示,且所述方法進一步包括: 確定所述樣本描述是否包含與所述至少一個相關(guān)聯(lián)的所述多個不同特定類型的參數(shù) 集的第二類型的所有參數(shù)集;以及 基于所述確定在所述電子文件中提供指示所述樣本描述是否包含所述第二類型的所 有參數(shù)集的第二指示。
11. 根據(jù)權(quán)利要求10所述的方法, 其中所述文件中的所述指示包括所述文件中的指示所述樣本描述是否包含所述第一 類型的所有參數(shù)集的第一指示, 其中在所述電子文件中提供指示所述樣本描述是否包含所述第一類型的所有參數(shù)集 的所述第一指示包括基于所述確定在所述電子文件中提供指示所述樣本描述不包含所述 第一類型的所有參數(shù)集的指示,且 其中在所述電子文件中提供指示所述樣本描述是否包含所述第二特定類型的所有參 數(shù)集的所述第二指示包括基于所述確定在所述電子文件中提供指示所述樣本描述確實包 含所述第二類型的所有參數(shù)集的指示。
12. -種用于將包括多個序列的經(jīng)譯碼視頻圖片的經(jīng)譯碼視頻數(shù)據(jù)存儲在電子文件中 的設(shè)備,所述設(shè)備包括: 至少一個處理器,其經(jīng)配置以: 確定與至少一個樣本相關(guān)聯(lián)的樣本描述是否包含與所述至少一個樣本相關(guān)聯(lián)的特定 類型的所有參數(shù)集,其中所述至少一個樣本包括所述多個序列的經(jīng)譯碼視頻圖片的至少一 部分,且其中所述特定類型是參數(shù)集的多個不同特定類型中的一者;且 基于所述確定在所述電子文件中提供指示所述樣本描述是否包含所述特定類型的所 有參數(shù)集的指示。
13. 根據(jù)權(quán)利要求12所述的設(shè)備,其中所述多個不同類型的參數(shù)集包括序列參數(shù)集 SPS、圖片參數(shù)集PPS和視頻參數(shù)集VPS中的一或多者。
14. 根據(jù)權(quán)利要求12所述的設(shè)備,其中所述至少一個處理器經(jīng)配置以至少通過以下步 驟確定所述樣本描述是否包含所述特定類型的所有參數(shù)集: 確定與所述樣本描述相關(guān)聯(lián)的名稱;以及 基于與所述樣本描述相關(guān)聯(lián)的所述名稱確定所述樣本描述是否包含所述特定類型的 所有參數(shù)集。
15. 根據(jù)權(quán)利要求14所述的設(shè)備, 其中與所述樣本描述相關(guān)聯(lián)的所述所確定的名稱是"hvcl",且 其中所述至少一個處理器經(jīng)配置以當所述樣本被命名為"hvcl"時確定所述樣本描述 包含所述特定類型的所有參數(shù)集。
16. 根據(jù)權(quán)利要求14所述的設(shè)備, 其中與所述樣本描述相關(guān)聯(lián)的所述所確定的名稱是"hevl",且 其中所述至少一個處理器經(jīng)配置以當所述樣本被命名為"hevl"時確定所述樣本描述 不包含所述特定類型的所有參數(shù)集。
17. 根據(jù)權(quán)利要求12所述的設(shè)備,其中所述至少一個處理器經(jīng)配置以在所述電子文件 中使名稱與所述樣本描述相關(guān)聯(lián),其中所述名稱不指示所述樣本描述是否包含所述特定類 型的所有參數(shù)集。
18. 根據(jù)權(quán)利要求12所述的設(shè)備,其中所述至少一個處理器經(jīng)配置以基于所述確定在 所述電子文件中提供指示所述樣本描述不包含所述特定類型的所有參數(shù)集的指示。
19. 根據(jù)權(quán)利要求12所述的設(shè)備,其中所述至少一個處理器經(jīng)配置以基于所述確定在 所述電子文件中提供指示所述樣本描述確實包含所述特定類型的所有參數(shù)集的指示。
20. 根據(jù)權(quán)利要求12所述的設(shè)備,其中所述至少一個處理器經(jīng)配置以基于所述確定在 所述電子文件中提供指示所述樣本描述的解碼器配置記錄是否包含所述特定類型的所有 參數(shù)集的指示。
21. 根據(jù)權(quán)利要求12所述的設(shè)備,其中所述特定類型的所有參數(shù)集包括所述多個不同 特定類型的參數(shù)集的第一類型的所有參數(shù)集,其中所述文件中的所述指示包括所述文件中 的第一指示,且其中所述至少一個處理器經(jīng)配置以: 確定所述樣本描述是否包含與所述至少一個相關(guān)聯(lián)的所述多個不同特定類型的參數(shù) 集的第二類型的所有參數(shù)集;且 基于所述確定在所述電子文件中提供指示所述樣本描述是否包含所述第二類型的所 有參數(shù)集的第二指示。
22. -種用于將包括多個序列的經(jīng)譯碼視頻圖片的經(jīng)譯碼視頻數(shù)據(jù)存儲在電子文件中 的設(shè)備,所述設(shè)備包括: 用于確定與至少一個樣本相關(guān)聯(lián)的樣本描述是否包含與所述至少一個樣本相關(guān)聯(lián)的 特定類型的所有參數(shù)集的裝置,其中所述至少一個樣本包括所述多個序列的經(jīng)譯碼視頻圖 片的至少一部分,且其中所述特定類型是參數(shù)集的多個不同特定類型的一者;以及 用于基于所述確定在所述電子文件中提供指示所述樣本描述是否包含所述特定類型 的所有參數(shù)集的指示的裝置。
23. 根據(jù)權(quán)利要求22所述的設(shè)備,其中所述多個不同類型的參數(shù)集包括序列參數(shù)集 SPS、圖片參數(shù)集PPS和視頻參數(shù)集VPS中的一或多者。
24. 根據(jù)權(quán)利要求22所述的設(shè)備,其進一步包括用于至少通過以下步驟確定所述樣本 描述是否包含所述特定類型的所有參數(shù)集的裝置: 確定與所述樣本描述相關(guān)聯(lián)的名稱;以及 基于與所述樣本描述相關(guān)聯(lián)的所述名稱確定所述樣本描述是否包含所述特定類型的 所有參數(shù)集。
25. -種上面存儲有指令的計算機可讀存儲媒體,所述指令當執(zhí)行時致使一或多個處 理器執(zhí)行包括以下各項的操作: 確定與至少一個樣本相關(guān)聯(lián)的樣本描述是否包含與所述至少一個樣本相關(guān)聯(lián)的特定 類型的所有參數(shù)集,其中所述至少一個樣本包括所述多個序列的經(jīng)譯碼視頻圖片的至少一 部分,且其中所述特定類型是參數(shù)集的多個不同特定類型中的一者;以及 基于所述確定在所述電子文件中提供指示所述樣本描述是否包含所述特定類型的所 有參數(shù)集的指示。
26. -種處理存儲在電子文件中的包括多個序列的經(jīng)譯碼視頻圖片的經(jīng)譯碼視頻數(shù)據(jù) 的方法,所述方法包括: 接收所述文件中指示與至少一個樣本相關(guān)聯(lián)的樣本描述是否包含與所述至少一個樣 本相關(guān)聯(lián)的特定類型的所有參數(shù)集的指示,其中所述至少一個樣本包括所述多個序列的經(jīng) 譯碼視頻圖片的至少一部分,且其中所述特定類型是參數(shù)集的多個不同特定類型中的一 者;以及 基于所述指示確定所述特定類型的所有參數(shù)集是否存儲在所述樣本描述中;以及 基于所述特定類型的所有參數(shù)集是否存儲在所述樣本描述中的所述確定至少部分基 于所述特定類型的所述參數(shù)集的一或多者處理所述經(jīng)譯碼視頻數(shù)據(jù)。
27. -種用于處理存儲在電子文件中的包括多個序列的經(jīng)譯碼視頻圖片的經(jīng)譯碼視頻 數(shù)據(jù)的設(shè)備,所述設(shè)備包括: 至少一個處理器,其經(jīng)配置以: 接收所述文件中指示與至少一個樣本相關(guān)聯(lián)的樣本描述是否包含與所述至少一個樣 本相關(guān)聯(lián)的特定類型的所有參數(shù)集的指示,其中所述至少一個樣本包括所述多個序列的經(jīng) 譯碼視頻圖片的至少一部分,且其中所述特定類型是參數(shù)集的多個不同特定類型中的一 者;且 基于所述指示確定所述特定類型的所有參數(shù)集是否存儲在所述樣本描述中;且 基于所述特定類型的所有參數(shù)集是否存儲在所述樣本描述中的所述確定至少部分基 于所述特定類型的所述參數(shù)集的一或多者處理所述經(jīng)譯碼視頻數(shù)據(jù)。
28. 根據(jù)權(quán)利要求27所述的設(shè)備,其進一步包括解碼器裝置,且其中所述解碼器裝置 經(jīng)配置以至少通過至少部分基于所述特定類型的所述參數(shù)集的一或多者解碼所述經(jīng)譯碼 視頻數(shù)據(jù)而至少部分基于所述特定類型的所述參數(shù)集的一或多者處理所述經(jīng)譯碼視頻數(shù) 據(jù)。
【文檔編號】G06F17/30GK104246773SQ201380021221
【公開日】2014年12月24日 申請日期:2013年3月26日 優(yōu)先權(quán)日:2012年4月25日
【發(fā)明者】王益魁 申請人:高通股份有限公司