專利名稱:用于經ip網絡發(fā)送可伸縮編碼視頻的系統(tǒng)和方法
技術領域:
本發(fā)明總的來說涉及視頻編碼方法,更詳細地,涉及一種用于經IP網絡流化(streaming)可伸縮(scalable)編碼視頻的方法。
隨著寬帶技術的迅速發(fā)展,可以預見,在不遠的將來,視頻流化將成為主要的互聯(lián)網應用。多媒體內容經數(shù)據(jù)網絡包括互聯(lián)網的實時流化在近年已經逐漸成為普通應用。交互和非交互多媒體應用的范圍很廣,例如新聞點播、實況網絡電視觀看、視頻會議等,這些都依賴于端到端流化視頻技術。為了支持這種發(fā)展,WLAN產品成本的降低和由新WLAN技術例如IEEE802.11a和802.11g提供的更高的帶寬將最終使它們在視頻傳輸上的應用日益增長。因此,未來的無線視頻應用將必須工作在具有有線主干和無線擴展的開放、分層、互聯(lián)網型的網絡上。因此,對于貫穿網絡的有線和無線部分的傳輸將必須使用通用協(xié)議。這些協(xié)議極可能是基于互聯(lián)網協(xié)議(IP)的現(xiàn)有協(xié)議的未來擴展。
由于互聯(lián)網和無線網絡固有的資源共享,未來的多媒體通信將主要使用可變帶寬信道。因此,如果使用可變帶寬信道經網絡執(zhí)行視頻內容的流化,瞬間數(shù)據(jù)率必須經常調整以適應可用的資源。這可以通過可伸縮視頻編碼實現(xiàn)??缮炜s視頻編碼方案能夠為經異構網絡的傳輸提供簡單靈活的框架,這有許多原因,包括(1)使流化服務器能夠在輸出大量同時單播(unicast)(點播)的流時執(zhí)行最小實時處理和速率控制;(2)高度自適應不可預測的帶寬變化歸因于接收機(例如模擬調制解調器、線纜調制解調器、xDSL等)的異構接入技術和歸因于網絡條件中的動態(tài)變換(例如擁塞事件);(3)使具有低計算能力的處理器能夠僅解碼可伸縮視頻流的子集;(4)支持組播(multicast)和單播應用;和(5)對數(shù)據(jù)包和比特誤差損失有恢復力。
可伸縮編碼方案的例子包括例如MPEG-4精細粒度可伸縮(FGS)、高級FGS、數(shù)據(jù)分割、MPEG-4空間和數(shù)據(jù)可伸縮和上升運動補償小波方案。
MPEG-4系統(tǒng)組已經開發(fā)了一種標準媒體文件格式(.mp4),它本地或遠程(例如流化)地包含多媒體表示的定時媒體信息。該格式是專門以高靈活性和擴張性設計的,以利于媒體的互換、管理、編輯和顯示。
圖1高度抽象地說明了MPEG-4電影文件(即.mp4文件)100的結構,它的結構可以看作是包含了由編碼器產生的基本比特流(即基本比特流(音頻)102、基本比特流(視頻)104)、引導播放器進行本地重放并且包含例如播放器可用其在適當時間提取正確的媒體數(shù)據(jù)來顯示的定時和數(shù)據(jù)指針的數(shù)據(jù)的電影軌道(movie track)(即音頻電影軌道106、視頻電影軌道108)、用于經基于數(shù)據(jù)包的網絡流化媒體的提示軌道(即音頻提示軌道110、視頻提示軌道112),其包含例如服務器可用其從基本比特流產生數(shù)據(jù)包的數(shù)據(jù)包頭的定時、數(shù)據(jù)指針和數(shù)據(jù)的信息。
箭頭示出上述各種流之間存在的關系。詳細地,視頻電影軌道108與視頻基本比特流104有關;音頻電影軌道106與音頻基本比特流102有關;視頻提示軌道112與視頻電影軌道108有關;和音頻提示軌道110與音頻電影軌道106有關。
當在流化應用中使用.mp4文件格式時,通常服務器將建立和文件中包含的提示軌道一樣多的(實時傳輸協(xié)議)RTP連接。換句話說,在RTP連接和提示軌道之間存在一對一的關系。每個RTP連接將分配一個提示軌道,并負責傳送從該軌道產生的數(shù)據(jù)包。RTP是互聯(lián)網協(xié)議,用于發(fā)送實時數(shù)據(jù),例如音頻和視頻。RTP本身并不保證數(shù)據(jù)的實時傳送,但是它提供了發(fā)送和接收應用以支持流化數(shù)據(jù)的機制。通常,RTP運行在UDP協(xié)議之上,雖然規(guī)范一般足夠支持其它傳輸協(xié)議。用戶數(shù)據(jù)報協(xié)議是象TCP一樣運行在IP網絡之上的無連接協(xié)議。與TCP/IP不同,UDP/IP幾乎不提供誤差校正范圍,而是以直接的方式經IP網絡發(fā)送和接收數(shù)據(jù)報。
上述.mp4文件格式的一個缺點在于它沒有明確地解決分層視頻流化的要求。如公知的,在分層視頻編碼中,壓縮視頻被構建為多個子層。這些層可以逐漸加入來改善視頻質量。分層視頻編碼通常產生一個基本比特流,可以劃分為基于不同優(yōu)先級的子層。對多分層視頻流應用普通mp4文件格式的限制是僅一個RTP連接可用來流化分層視頻。這在可伸縮編碼中是不希望的,因為這種固定的流化策略不允許對信道通信、復雜度等進行希望的自適應。
因此,本領域需要一種經IP網絡流化可伸縮編碼視頻的結構框架,使服務器能夠創(chuàng)建多個RTP連接以便能適應分層視頻流的每個子層,該每個子層使得能夠獲得希望的對信道特性、復雜度等的自適應。
針對前述的需要,本發(fā)明提供一種經IP網絡流化可伸縮編碼視頻的結構框架。該新穎的結構對單播和組播均使用多個IP連接來傳送可伸縮編碼視頻。
因此,按照一個方面,本發(fā)明是一種用于靈活可伸縮的視頻打包的系統(tǒng)(即預處理提示方法、裝置和計算機可執(zhí)行處理步驟)。建議的預處理方法,在這里稱為多軌道提示,它有利地向后兼容目前的MPEG-4媒體文件格式標準,因此使它能夠使用通用MPEG-4流化服務器,以便按照變化的信道特性、復雜度限制和用戶喜好來有效地流化分層視頻。即,服務器不需要大規(guī)模修改就能夠自動使用多個信道(即RTP連接),從而通過調整要發(fā)送的可伸縮層的數(shù)目為流化系統(tǒng)提供靈活性以適應網絡條件。因此,多軌道提示方法擴展了標準互聯(lián)網流化協(xié)議(RTSP、SDP)的功能,使得能夠實現(xiàn)靈活的自適應。
有利地,本發(fā)明的提示方法克服了現(xiàn)有技術的限制,即.mp4文件格式不是明確地解決分層視頻流化的需求。因此,僅一個RTP連接可用于經IP網絡流化分層視頻。單個RTP連接是不希望的,這有許多原因,包括不能適用變化的信道特性、復雜度限制和用戶喜好。
現(xiàn)在參考附圖,其中相同的參考符號始終表示對應的部分圖1說明了按照現(xiàn)有技術的MPEG-4電影文件的結構;圖2說明了本發(fā)明的方法可以在其中實施的視頻分配系統(tǒng);圖3a是圖2的視頻編碼器220的更詳細的說明;圖3b是圖2的客戶機的更詳細的說明;和圖4概念地說明了按照發(fā)明的一個實施例構建的經IP網絡傳輸?shù)目缮炜s編碼比特流的分層編碼方案。
所附的打印附錄結合并構成該說明書的一部分,它說明了本發(fā)明的實施例,并和描述一起用于解釋本發(fā)明的原理。附錄以偽碼書寫。
附錄1包含對于FGS多軌道提示的算法的描述。函數(shù)max_channel_allocation(i)將確定分配給與第i個提示軌道關聯(lián)的第i個RTP連接的比特率。因此,算法在提示階段預定了流化信道的比特率。還要注意,在考慮特定網絡條件和編解碼器特性時,也可以改良算法,使打包和速率分配更優(yōu)化。但是,這些算法是專用的,將不在此文中進一步討論。
在以下描述中,為了解釋而不是限制的目的,提出了特定的細節(jié),例如特定結構、接口、技術等,以便于徹底理解本發(fā)明。為了簡單明了,省略了公知裝置、電路和方法的細節(jié)描述,以免本發(fā)明的描述被不必要的細節(jié)模糊。
通常,以下描述的技術可以結合在各種可伸縮編碼方案中來改善增強層的穩(wěn)健性。編碼方案是在經網絡(例如互聯(lián)網或無線網絡)傳送可伸縮比特流的環(huán)境中描述的。但是,分層視頻編碼方案普遍適用于各種環(huán)境。此外,技術是在MPEG-4編碼方案的環(huán)境中描述的,雖然技術也可應用于其它基于運動補償?shù)亩鄬右曨l編碼技術。
MPEG-4系統(tǒng)組已經開發(fā)并標準化了經IP網絡對“不可伸縮”編碼視頻流化的策略。但是,發(fā)明者已經認識到,需要一種新穎的用于“可伸縮”視頻格式的傳輸?shù)牧骰Y構,以能夠有效地適應變化的頻道條件、復雜度限制和用戶喜好。發(fā)明者還進一步認識到,可伸縮視頻流化系統(tǒng)結構應當兼容MPEG-4系統(tǒng)組定義的不可伸縮流化系統(tǒng)結構,以使通用MPEG-4流化服務器能夠發(fā)送可伸縮和不可伸縮視頻格式。
為此,發(fā)明涉及解決由MPEG-4系統(tǒng)組定義的.mp4文件格式中出現(xiàn)的問題,因為.mp4文件格式沒有明確地解決分層視頻流化的需求。詳細地,目前還沒有機制用于創(chuàng)建多個RTP連接,以利用分層編碼提供的可伸縮性的優(yōu)點。因此,本發(fā)明提供一種經IP網絡流化可伸縮編碼視頻的結構框架,使服務器能夠創(chuàng)建多個RTP連接以便適應分層視頻流的每個子層,該每個子層使得能夠獲得希望的對信道特性、復雜度、客戶喜好等的自適應。
雖然將不在這里提供MPEG-4標準的詳細描述,但是將提出該標準的某些方面的概述,以利于理解本發(fā)明。
MP4文件格式最初基于QuickTime,設計為將MPEG-4顯示的媒體信息包含在有助于媒體的互換、管理、編輯和顯示的靈活的、可擴展的格式中。MP4中的媒體數(shù)據(jù)和描述標題一起封裝在幀中。元數(shù)據(jù)通過參考而不是包含地用于描述媒體數(shù)據(jù)特性(媒體類型、時間戳、尺寸...)。MPEG-4系統(tǒng)的規(guī)范使用“.mp4”作為文件標識擴展名,它具有特定的方式來處理經IP網絡對不可伸縮編碼視頻的流化編碼的內容作為媒體軌道(例如音頻是一個媒體軌道,視頻是另一個媒體軌道等)存儲在.mp4文件格式中(參見圖1)。此外,傳輸機制可以通過增加特定提示軌道存儲在文件中,每個媒體軌道一個通過這樣的機制,在媒體軌道中,單個文件可以作為媒體數(shù)據(jù)自身的單個容器使用,在提示軌道中,對于傳輸特定數(shù)據(jù)也是如此。MPEG-4文件格式定義得很標準存儲在媒體軌道中的數(shù)據(jù)條目是MPEG-4訪問單元,其通常大于網絡數(shù)據(jù)包。提示軌道的任務則是存儲有關網絡數(shù)據(jù)包如何形成、如何填充的信息提示軌道實際包含預分段信息,以便服務器知道如何將每個訪問單元分割為網絡數(shù)據(jù)包。因此,可以先產生媒體軌道并將它們存在.mp4文件中,然后使用分立的提示器程序,以便解析該文件、分析訪問單元結構并產生適當?shù)母郊犹崾拒壍馈?br>
圖2示出了視頻分配系統(tǒng)200,其中視頻源(例如攝像機)產生要被編碼器220編碼的視頻內容,然后由提示器230從中產生一個或多個提示軌道,用于經IP網絡204由通用MPEG-4流化服務器205至客戶機206分配。網絡204是多種不同類型的網絡的表示,包括互聯(lián)網、LAN(局域網)、WAN(廣域網)、SAN(存儲域網)和無線網(例如衛(wèi)星、蜂窩、RF等)。雖然說明的示例描述了視頻內容經網絡204的分配,但是本發(fā)明可以更廣泛地應用于多媒體內容的分配,包括視頻、音頻、圖形、文本等。圖2還示出了視頻存儲單元210,用于存儲例如可由視頻源202產生的數(shù)字視頻文件。
視頻編碼器220可以在軟件、固件和/或硬件中實現(xiàn)。編碼器220為了討論的目的而顯示為分立的獨立模塊,但是可以構造為處理器(未示出)的一部分或結合在操作系統(tǒng)(未示出)或其它應用(未示出)中。
圖3a是圖2的視頻編碼器220的更詳細的說明。如所示,視頻編碼器220配備有基層編碼部件222和增強層編碼部件224。視頻編碼器220將視頻數(shù)據(jù)編碼到多個層中,包括基層和增強層?;鶎泳幋a部件222將視頻數(shù)據(jù)編碼到基層中?;鶎泳幋a部件222產生基層基本比特流(基層視頻)402(參見圖4),它可以被傳統(tǒng)的誤差防護技術(例如FEC(前向糾錯)技術)保護。
視頻編碼器220增強層編碼部件224編碼增強層。增強層編碼部件224創(chuàng)建單個基本比特流(增強層視頻)404(參見圖4),它獨立于基層比特流,經網絡204由通用MPEG-4流化服務器205至客戶機206全部或部分發(fā)送。增強層編碼器將唯一再同步標記和標題擴展碼插入增強比特流,以利于增強比特流的句法和語義誤差檢測和防護。
圖3b是圖2的客戶機206的更詳細的說明。如所示,客戶機206配備有處理器330、存儲器332、適配器340、重組器(reassembler)342、視頻解碼器344和一個或多個媒體輸出裝置346。視頻解碼器344具有基層解碼部件352和增強層解碼部件354,以及任選地具有比特平面編碼部件356。
在解碼以后,客戶機206將視頻存儲在存儲器332中,和/或經一個或多個媒體輸出裝置346播放視頻??蛻魴C206可以以許多不同的方式實現(xiàn),包括計算機、手持娛樂裝置、機頂盒、電視機、專用集成電路(ASIC)等。
圖4概念地說明了由圖2的視頻編碼器220執(zhí)行的分層編碼方案400。為了構成經IP網絡傳輸?shù)目缮炜s編碼比特流,比特流必須被分層。
按照本發(fā)明的原理,編碼器220將多幀視頻數(shù)據(jù)壓縮編碼為多個層,包括基層(例如基層視頻402)和多個增強層(例如增強層視頻404)。
為了討論的目的,圖4說明了九個層構成高優(yōu)先級部分(partition)的基本比特流(基層視頻)402、構成低優(yōu)先級部分的基本比特流(增強層視頻)404、基層電影軌道406(高優(yōu)先級部分)、增強層電影軌道408(低優(yōu)先級部分)、基本比特流(基層視頻)402的提示軌道410、和作為本發(fā)明關鍵特征的增強層電影軌道408的多個提示軌道412、414、416、418。
為了克服現(xiàn)有技術的限制,本發(fā)明引入產生多個提示軌道412、414、416、418的概念,從而有利于使視頻數(shù)據(jù)通過網絡204的發(fā)送自適應于變化的信道特性、復雜度限制和用戶喜好。當單個電影軌道(例如增強層電影軌道408)由多個提示軌道(例如提示軌道412、414、416、418)提示時,由增強層電影軌道408指示的基本流將被多個RTP連接經網絡傳送。如此,提供了現(xiàn)有技術所沒有的靈活性,其中流化系統(tǒng)能夠使視頻質量適應網絡條件。即,僅那些提示軌道會被服務器用于從相應的基本比特流提取數(shù)據(jù)來發(fā)送。
換句話說,在多個可用的提示軌道(例如412、414、416、418)中,僅使用滿足以下一個或多個準則的那些提示軌道現(xiàn)行的網絡通信條件、復雜度限制、用戶喜好。例如,在網絡條件改變時,服務器可以從多個可用的提示軌道中使用更多或更少的提示軌道以便于電影軌道408的傳輸。
本發(fā)明的另一關鍵特征是多個可用的提示軌道(例如412、414、416、418)包含可被任意通用MPEG-4流化服務器(例如服務器205)使用的數(shù)據(jù)信息,避免了使用專門或特定硬件的需要。
還應當認識到,增強層電影軌道408僅被虛擬地劃分為多個提示軌道412、414、416、418。即,增強層電影軌道408保持物理不變,因此和原始為本地重放構造的一樣可用并且完整。
進一步要認識到,本發(fā)明的多軌道提示方案不限于上述分層編碼情況。而是,該方案具有更通用的應用,例如可以通過將提示軌道與每個不同種類的視頻幀(即I、P和B幀)關聯(lián)來適用于視頻流。由此,容易地實現(xiàn)了時間視頻可伸縮。
可以理解這里描述的系統(tǒng)、功能、方法和模塊可以在硬件、軟件或硬件和軟件的組合中實現(xiàn)。它們可以通過任意種類的計算機系統(tǒng)或其它適于執(zhí)行這里描述的方法的裝置實現(xiàn)。硬件和軟件的典型組合可以是通用計算機系統(tǒng),具有在裝載和執(zhí)行時控制計算機從而執(zhí)行這里描述的方法的計算機程序。可替換地,可以使用包含用于執(zhí)行本發(fā)明的功能任務的一個或多個的特定硬件的專用計算機。本發(fā)明還可嵌入計算機程序產品中,其包括所有使這里描述的方法和功能能夠實現(xiàn)的特征,在裝載到計算機系統(tǒng)中時,能夠執(zhí)行這些方法和功能。本發(fā)明文中的計算機程序、軟件程序、程序、程序產品或軟件是指一組用于使具有信息處理能力的系統(tǒng)直接或在如下步驟之后執(zhí)行特定功能的代碼或表示法的任何語言的表達(a)轉換為另一種語言、代碼或表示法;和/或(b)以不同的材料形式重現(xiàn)。
為了說明和描述的目的,以上已經提出了對本發(fā)明優(yōu)選實施例的描述。這些不是詳盡的,也不是將發(fā)明限于公開的精確形式,顯然,按照以上教導可以進行許多修改和變化。這些修改和變化對于本領域技術人員來說是顯而易見的,應當包括在所附權利要求定義的本發(fā)明的范圍內。
權利要求
1.一種用于經網絡(204)流化可伸縮編碼視頻的方法,該方法包括a)編碼表示所述可伸縮編碼視頻的基層(406)的第一比特流;b)編碼表示所述可伸縮編碼視頻的增強層(408)的第二比特流;c)產生第一提示軌道(410),以利于經所述網絡(204)傳輸所述編碼的第一比特流(基層)(406);和d)產生多個增強層提示軌道(412)、(414)、(416)、(418),以利于經所述網絡(204)傳輸所述第二比特流(增強層)(408)的至少一部分。
2.如權利要求1的方法,進一步包括步驟e)按照所述第一提示軌道(410)內包含的數(shù)據(jù)元經所述網絡(204)發(fā)送所述編碼的第一比特流(基層)(406);f)確定要經所述網絡(204)發(fā)送的所述編碼的第二比特流(增強層)(408)的所述至少一部分;和g)按照所述多個增強層提示軌道(412)、(414)、(416)、(418)中的一個或多個增強層提示軌道內包含的數(shù)據(jù)元,經所述網絡(204)發(fā)送所述編碼的第二比特流(增強層)(408)的所述確定部分。
3.如權利要求2的方法,其中確定要發(fā)送的所述編碼的第二比特流(408)的一部分的所述步驟(f),按照現(xiàn)行網絡條件、網絡帶寬變化、網絡復雜度限制和用戶喜好中的至少一個來進行。
4.如權利要求2的方法,其中發(fā)送所述編碼的第二比特流(408)的所述確定部分的所述步驟(g)進一步包括步驟1)從所述多個增強層提示軌道(412)、(414)、(416)、(418)中識別滿足要發(fā)送的所述確定部分所需的那些增強層提示軌道;和2)為每個所述識別的增強層提示軌道建立獨立的端到端網絡連接。
5.如權利要求4的方法,其中所述建立的端到端網絡連接是RTP連接。
6.如權利要求1的方法,其中d)產生多個增強層提示軌道(412)、(414)、(416)、(418)以利于經所述網絡傳輸所述第二比特流(增強層)(408)的至少一部分的所述步驟(d)進一步包括保持所述增強層(408)用于本地重放。
7.一種用于經網絡(204)流化可伸縮編碼視頻的系統(tǒng),該系統(tǒng)包括用于編碼(220)表示所述可伸縮編碼視頻的基層(406)的第一比特流的裝置;用于編碼(220)表示所述可伸縮編碼視頻的增強層(408)的第二比特流的裝置;用于產生(230)第一提示軌道(410),以利于經所述網絡(204)傳輸所述編碼的第一比特流(基層)(406)的裝置;和用于產生(230)多個增強層提示軌道(412)、(414)、(416)、(418),以利于經所述網絡(204)傳輸所述第二比特流(增強層)(408)的至少一部分的裝置。
8.如權利要求1的系統(tǒng),進一步包括用于按照所述第一提示軌道(410)內包含的數(shù)據(jù)元經所述網絡(204)發(fā)送所述編碼的第一比特流(基層)(406)的裝置;用于確定要經所述網絡(204)發(fā)送的所述編碼的第二比特流的所述至少一部分的裝置;和用于按照所述多個增強層提示軌道(412)、(414)、(416)、(418)中的一個或多個增強層提示軌道內包含的數(shù)據(jù)元,經所述網絡(204)發(fā)送所述編碼的第二比特流(增強層)(408)的所述至少一部分的裝置。
9.如權利要求8的系統(tǒng),其中用于確定要發(fā)送的所述編碼的第二比特流的所述至少一部分的所述裝置,按照現(xiàn)行網絡條件、網絡帶寬變化、網絡復雜度限制和用戶喜好中的至少一個來制造。
10.如權利要求8的系統(tǒng),其中用于發(fā)送所述編碼的第二比特流(408)的所述確定部分的所述裝置進一步包括用于從所述多個增強層提示軌道(412)、(414)、(416)、(418)中識別滿足要發(fā)送的所述編碼的第二比特流(408)的所述至少一部分所需的那些增強層提示軌道的裝置;和用于為所述多個增強層提示軌道(412)、(414)、(416)、(418)中的每個所述識別的增強層提示軌道建立獨立的端到端網絡連接的裝置。
11.如權利要求10的系統(tǒng),其中所述建立的端到端網絡連接是RTP連接。
12.如權利要求7的系統(tǒng),進一步包括用于保持所述增強層(408)以用于本地重放的裝置。
13.如權利要求7所述的系統(tǒng),其中所述編碼器(220)是MPEG-4編碼器。
全文摘要
提供一種系統(tǒng)和方法以利于經IP網絡(204)傳輸可伸縮編碼視頻。公開了一種建議的預處理方法(這里稱為多軌道提示),有效地將分層視頻(400)構造為靈活的格式,從而能夠按照變化的網絡條件、復雜度限制和用戶喜好來經數(shù)據(jù)包切換網絡(204)容易地流化分層視頻。通用MPEG服務器(205)不需要大規(guī)模修改就能夠自動使用多個信道(即RTP連接),從而通過調整要發(fā)送的可伸縮層的數(shù)目為流化系統(tǒng)提供靈活性,以適應變化的網絡條件、復雜度限制和用戶喜好。因此,多軌道提示方法擴展了標準互聯(lián)網流化協(xié)議(RTSP、SDP)的功能,使得能夠實現(xiàn)靈活的自適應。
文檔編號H04N7/24GK1689332SQ03824219
公開日2005年10月26日 申請日期2003年9月19日 優(yōu)先權日2002年10月15日
發(fā)明者Q·李, M·范德沙爾 申請人:皇家飛利浦電子股份有限公司