用于多媒體內容的復用流傳輸的系統和方法
【專利摘要】本發明涉及一種用于多媒體內容的復用流傳輸的系統、服務器和客戶端,包括:至少一個服務器(14),能夠通過一個或多個數據路徑在流傳輸環境中將多媒體內容(20)發送至客戶端(12),其中,多媒體內容被所述服務器(14)解復用為多個子流(16,18),其中每個子流包括唯一標記,使得客戶端(12)能夠將所述子流(16,18)復用為連續流。此外,本發明涉及一種用于多媒體內容的復用流傳輸的方法。
【專利說明】用于多媒體內容的復用流傳輸的系統和方法
【技術領域】
[0001]本發明涉及一種用于多媒體內容的復用流傳輸的系統。更具體地,本發明涉及一種用于多媒體內容的復用流傳輸的系統,其中多媒體流被分為多個子流以便隨后在客戶端接收機處重組。此外,本發明涉及一種用于多媒體內容的復用流傳輸的方法。
【背景技術】
[0002]與將整個多媒體文件傳送至客戶端然后播放的下載不同,流傳輸是客戶端所消費的內容以小塊發送至客戶端的過程。現有流傳輸協議包括實時傳輸協議(RTP)或用戶數據報協議下的MPEG傳輸流(MPEG TS/UDP)。另一方面,下載一般使用超文本傳送協議(HTTP協議)來執行。
[0003]在娛樂和通信系統中,提供RTSP協議(實時傳輸流)作為用于控制流傳輸媒體服務器的網絡控制協議。RTSP服務器經由實時傳輸協議(RTP)來進行流數據的傳輸。RTSP定義了用于控制流數據的回放的控制序列。因特網協議工程組(IETF)在RFC2326中定義了這些控制序列。
[0004]客戶端向流傳輸服務器發起流傳輸會話。實時流傳輸已經變得越來越普遍用于經由因特網來傳輸TV頻道(IPTV)。然而,必須提供手段來處理多媒體提供商與客戶端之間變化的帶寬速率。否則,將發生多媒體流的“定格”,這通常被消費者認為是討厭的。
[0005]已經做出了各種嘗試以向客戶端提供可靠的流傳輸會話,以避免由于變化的帶寬速率而導致多媒體內 容的定格。
[0006]在US 2010/0049865 Al中,示出了將多媒體流分組化為傳輸分組的方法,包括確
定應用數據單元是否要在第一傳輸會話和第二傳輸會話中傳送。在確定應用數據單元要在第一傳輸會話和第二傳輸會話中傳送時,將第一媒體采樣的至少一部分分組化在第一分組中,將第二媒體采樣的至少一部分分組化在第二分組中,第一媒體采樣和第二媒體采樣具有確定的解碼順序。最終,實現信號通知第一信息以標識第二媒體采樣,第一信息與第一媒體采樣相關聯。
[0007]在通信理論中,預見到并發地或串行地使用多個網絡或鏈路提供了不僅關于服務質量而且關于可縮放性的優點。可以受益于多鏈路環境的一種技術是例如可縮放視頻編碼。
[0008]SVC(可縮放視頻編碼)是基于H264的標準,提供了分層編碼結構,其中基本層是完全H264AVC兼容的,增強層依賴于基本層或其他增強層。可縮放性域是時間、質量和空間。因此,增強層可以被編碼以增強幀率、針對給定分辨率的質量以及視頻序列的分辨率。
[0009]如果關于特定質量、幀率和分辨率來比較H264AVC序列和以使用兩個或更多層的SVC編碼的對等序列,已經表明SVC引入的開銷需要約更多10%和15%的帶寬。
[0010]多播/廣播的SVC流由不同層組成,例如3層(基本層和兩個增強層),用于解決例如3個不同的終端分辨率。如果將SVC流與使用傳統H264AVC編碼的相同服務比較,將得到聯播,即針對每個分辨率3個不同流,H264方案的開銷大于100%。[0011 ] 在混合或組合聯網中,構思是通過廣播通道發送一些層(例如基本層),并通過點對點發送其他層(例如增強層)。
[0012]這得到被分到兩個網絡/鏈路并在接收機中重組的流傳輸會話。
[0013]當將流分為兩個子流以便隨后重組時,需要以某種方式保存流分組的原始順序。當將例如RTP流分為兩個子流時,通過特定鏈路/網絡傳輸的每個子流必須符合RTP,因此序號應當在接收機側可用以檢測重新排序的或丟失的分組。因此,對于每個鏈路和子流,對RTP分組重新編號,并且丟失了原始序號。
[0014]為了重組原始流,可以依賴于RTP時間戳。然而,原始流可以具有多個RTP分組,這些RTP分組具有相同時間戳,但是具有解碼器要遵循的呈現順序。
[0015]相應地,本領域需要提供一種用于多媒體內容的復用流傳輸的方法和系統,分別克服——至少部分克服——與現有技術系統相關聯的問題。
【發明內容】
[0016]根據本發明,提供了一種用于多媒體內容的復用流傳輸的系統,包括:至少一個服務器,能夠通過一個或多個數據路徑在流傳輸環境中將多媒體內容發送至客戶端,其中,多媒體內容被所述服務器解復用為多個子流,其中每個子流包括唯一標記,使得客戶端能夠將所述子流復用為連續流。
[0017]根據本發明的實施例,所述唯一標記包括時鐘標記。
[0018]根據本發明的另一實施例,所述時鐘標記包括比特序列,所述比特序列所具有的時間分辨率超過所述多媒體內容的幀率的分辨率。
[0019]根據本發明的另一實施例,不同子流是使用比特序列中與上述幀率定時信息相對應的比特來標識的。
[0020]根據本發明的另一實施例,所述時鐘標記包括90kHz單位的33比特部分和27MHz單位的9比特部分。
[0021]根據本發明的另一實施例,所述流傳輸環境是MPEG2-TS流傳輸環境。
[0022]根據本發明的另一實施例,所述唯一標記包括首部擴展中的原始序號。
[0023]根據本發明的另一實施例,所述唯一標記包括每個子流的凈荷部分中的原始序號。
[0024]根據本發明的另一實施例,所述流傳輸環境是RTP/RTSP流傳輸環境。
[0025]根據本發明的另一方面,提供了一種用于多媒體內容的復用流傳輸的方法,包括:提供多個子流,以通過一個或多個數據路徑在流傳輸環境中將多媒體內容從一個或多個服務器發送至客戶端,其中,每個子流包括唯一標記,使得客戶端能夠將所述子流復用為連續流。
[0026]本發明在其實施例中提出了解決問題的兩種方案。第一實施例在于將原始序號保存在首部擴展中或每個RTP分組的凈荷部分內。然而,最大傳輸單元(MTU)受到影響,在接收機側,在重組之前需要恢復原始序號。此外,不是所有流傳輸格式都使用序號。對于MPEG2-TS,序號稱為連續性計數器,并且被編碼在4比特上(這是對丟失分組檢測的嚴重限制,因為可能有幾十個連續TS分組具有相同時間戳)。這是在非可靠網絡(如因特網)上使用RTP來承載TS流的原因。[0027]第二實施例提出僅依賴于時間戳來恢復原始分組排序。在分割期間,對于具有相同時間戳的所有RTP分組,連續時間戳值遞增I。這是可能的,因為時間戳分辨率遠高于視頻同步和顯示所需的分辨率。例如,對于H264RTP的推薦時鐘速率是90kHz。這意味著,在IOOHz的兩個視頻幀之間,時間戳值遞增900。在接收機側,在重組之前,執行逆操作。檢測到具有新時間戳k的分組,對于每個連續分組,時間戳值遞增I。
[0028]關于MPEG2-TS,只要在RTP上承載MPEG2-TS (其中在這種情況下,RTP時間戳通常完全不使用),本發明就工作良好。
【專利附圖】
【附圖說明】
[0029]現在參照以下附圖,以示例方式更詳細地描述本發明,在附圖中:
[0030]圖1示出了根據本發明實施例的用于多媒體內容的復用流傳輸的系統的示意圖;
[0031]圖2示出了根據本發明實施例的流傳輸分組的進一步細節;
[0032]圖3示出了根據本發明實施例的流傳輸分組的進一步細節;
[0033]圖4示出了根據本發明實施例的流傳輸分組的進一步細節;以及
[0034]圖5示出了根據本發明實施例的用于多媒體內容的復用流傳輸的系統的另一示意圖。
[0035]在附圖中,除非另外指明,相似的參考標記表示相似的部分。
【具體實施方式】
[0036]現在參照圖1,示出了本發明的第一實施例。用于多媒體內容的復用流傳輸的系統10包括客戶端12和能夠在流傳輸環境中將多媒體內容發送至客戶端12的服務器14。客戶端12在圖1中被描述為機頂盒12’以及顯示器12”。服務器14將要在客戶端12處顯示的多媒體內容解復用為兩個子流16和18,如圖1示意性示出的。
[0037]作為示例,在圖2中描述RTP流傳輸環境,作為原始RTP流的一部分。在圖2中,示出了分組20,分組20包含將被置于兩個不同的產生流中的多個網絡抽象層單元(NALU)。為了方便,認為流正在傳輸以SVC編碼的具有基本層和增強層的視頻信號。
[0038]相應地,圖2中示出的實現理解如RFC3984bis中描述的用于SVC的RTP凈荷格式。然而應認識到,本發明適用于其他類型的內容,不限于使用SVC。
[0039]以下,將該流20分為分別傳輸基本層和增強層的兩個產生流。例如,第一流可以通過廣播網絡來傳輸,而另一個通過寬帶網絡傳送。應注意,本發明獨立于選擇將數據置于哪個流中或者在哪個網絡上傳送輔助流的規則。
[0040]通過提取NALU并將其置于新RTP分組中來實現兩個產生流。利用RTP首部(見RFC3550) 和原始流的首部來實現新構建的分組,其中如圖3所示修改序號22和時間戳24。
[0041]產生流是獨立的。這意味著對于每個流,第一個RTP分組的產生是序號22的開始。針對每個新構建的分組,序號22遞增I。
[0042]在圖3所示的示例中,原始RTP時間戳值是123456789。該時間戳24指示原始RTP分組的訪問單元中包含的視頻或音頻的呈現時間。NALU具有唯一呈現時間,不同NALU應當以其被產生從而被置于原始RTP分組中的相同順序提供給解碼器或更一般地呈現器。為了管理接收機中的呈現,修改了產生流的分組26和28的時間戳24。[0043]現在參照圖4,在輔助流26中,首先發送原始分組的第一 NALU(基本層的一部分)。如果認為它是該流的第一個分組,將以被設置為I的序號22來產生它。
[0044]第二 NALU是增強層的一部分,是在產生流28中發送的。由于它也是該流的第一個分組,其序號22為I。
[0045]接下來的3個NALU是基本層的一部分。它們將以分別被設置為2、3和4的序號22在產生流26的3個RTP分組中傳輸。
[0046]最后的NALU是增強層的一部分,并屬于產生流28。
[0047]相同的分割過程應用于所有原始流分組。無論在哪個輔助流中發送RTP分組,時間戳24構建如下:包含第一 NALU的RTP分組具有原始RTP分組的時間戳24,包含第i NALU的RTP分組具有原始RTP分組的時間戳24+(1-l).[0048]為了接收完整流,接收機或客戶端12管理RTP會話。在呈現至解碼器之前,通過應用與如上所述的算法對稱的算法來重組流26和28 (見例如圖5)。
[0049]如圖5所示,重排序過程取得每個RTP接收緩沖器30的分組,以將其移入主流緩沖器32。這些RTP分組根據其時間戳24值的遞增順序置于主流緩沖器32中。這些分組的時間戳24被設置為組的第一個接收分組的時間戳24的值(在本示例中為123456789)。
[0050]具有連續時間戳值24的一組分組的凈荷也可以被合并在單個RTP分組中。該新構建的分組具有連續組的第一個分組的時間戳24。在本示例中,該值將是123456789。一組相鄰接收RTP分組可能過長而不能合并入單個RTP分組。按這種方式,構建具有相同時間戳的多個RTP分組。 [0051]當兩個相鄰接收RTP分組不具有連續時間戳時,這意味著其凈荷不屬于相同的原始RTP分組。在這種情況下,應在主流緩沖器中構建具有第二分組的時間戳的新RTP分組。該新的RTP分組將合并具有連續時間戳的后續接收RTP分組的凈荷。
[0052]當發起流接收時,可以任意選擇流的所有RTP分組中的第一 RTP分組的序號的值。
[0053]備選地,回顧上述SVC使用示例,接收機或客戶端12可以決定僅解碼兩個RTP會話之一,通常是承載基本層的會話。當僅接收到單個RTP會話時,RTP分組的序號22是連續的,并允許檢測丟失或重排序的分組。然而,接收RTP分組的時間戳24將展現出間隔,因為一些時間戳24由在另一會話上發送的分組使用。上述用于恢復原始時間戳24的算法需要如下調整。
[0054]第一個接收分組的時間戳24(記為分組i)用作序列的時間戳24(記為RTPtl),其時間戳24保持不變。
[0055]如果以下分組k具有時間戳RTPk < RTP0+ (k_i) +閾值,則該分組屬于序列,并且其時間戳被設置為RTh。如果該不等式為假,則該分組開始另一序列。
[0056]在MPEG2-TS中,存在被稱為PCR(節目時鐘參考)的時鐘信息,允許同步發送方或服務器14與接收方或客戶端12的時鐘。它由33比特部分(90kHz單位)和9比特部分(27MHz單位)構成。當傳輸多媒體信息(如音頻和視頻)時,分組承載被稱為PTS (呈現時間戳)和DTS (解碼時間戳)的其他信息。PTS或DTS的精度是33比特,并參考PCR時鐘。因此單位等于11毫秒。
[0057]假定視頻幀率可以高至100幀每秒,需要幾十毫秒的分辨率。PTS/DTS分辨率大大超過該分辨率,這給出了將上述機制也應用于MPEG2TS的機會。[0058]相應地,當將MPEG2-TS流分為兩個子流時,PTS的值可以針對每個PES (分組基本流)分組遞增1,導致遞增PTS的連續序列。在接收時,具有緊接前一 PTS的PTS的PES分組被設置為序列的第一 PTS的值。要求是PTS或DTS必須存在于原始流的PES分組首部中。
[0059]相應地,本發明允許在不同網絡之間分割流,而不丟失呈現時間戳或序號。此外,它維持了與現有協議相符的分組格式。
[0060]盡管這里僅公開了本發明的特定實施例,任何本領域技術人員將理解,可以做出本發明的其他修改、變化和可能。因此,這些修改、變化和可能應被認為落入本發明的精神和范圍之內,從而形成這里描述和/或示例的本發明的一部分。
[0061]已經描述了本發明的優選實施例,顯然,在本領域技術人員的能力之內,并且無需創造性能力,可以進行多種修改和實施例。相應地,本發明的范圍由所附權利要求的范圍限定。
[0062]這里記載的所有示例和條件語言預期用于教導目的,以幫助理解本發明的原理和發明人為改進現有技術而貢獻的構思,并且應解釋為不限于這些具體記載的示例和條件。
[0063]此外,這里記載本發明的原理、方案和實施例的所有描述以及其具體示例旨在包含其結構和功能的等效物。此外,這些等效物旨在包括當前已知的等效物以及將來開發的等效物,即所開發的執行相同功能的任何元件,而不論結構如何。
[0064]因此,例如,本領域技術人員可以理解,這里呈現的系統圖表示實現本原理的示意性組件的概念視圖。圖中示出的各個元件的功能可以通過使用專用硬件以及能夠與合適軟件相關聯執行軟件的硬件來提供。當由處理器提供時,功能可以由單個專用處理器、單個共享處理器或多個單獨處理器(其中一些可以是共享的)來提供。此外,顯式使用術語“處理器”或“控制器”不應被解釋為排他地指代能夠執行軟件的硬件,而可以隱式包括而不限于數字信號處理器(“DSP”)硬件、用于存儲軟件的只讀存儲器(“ROM”)、隨機存取存儲器(“RAM”) 和非易失性存儲器。還可以包括其他傳統或定制硬件。
[0065]說明書中引用本原理的“一個實施例”或“實施例”及其其他變型指與該實施例相結合描述的特定特征、結構、特性等等包括在本原理的至少一個實施例中。因此,在說明書中各處出現的短語“在一個實施例中”或“在實施例中”以及任意其他變型不必都指相同實施例。
[0066]應理解,本原理可以以各種形式的硬件、軟件、固件、專用處理器或其組合來實現。優選地,本原理可以實現為硬件和軟件的組合。此外,軟件優選地實現為在程序存儲設備上有形實現的應用程序。應用程序可以上載至包括任何合適架構的機器并由其執行。優選地,機器實現在具有硬件的計算機平臺上,所述硬件如一個或多個中央處理單元(CPU)、隨機存取存儲器(RAM)和輸入/輸出(I/O)接口。計算機平臺還包括操作系統和微指令代碼。這里描述的各個過程和功能可以是經由操作系統執行的微指令代碼的一部分或應用程序的一部分(或其組合)。此外,各種其他外圍設備可以連接至計算機平臺,如附加數據存儲設備和打印設備。
[0067]還應理解,由于本發明的構成系統組件和方法步驟中的一些優選地以軟件實現,根據對本原理進行編程的方式,系統組件(或過程步驟)之間的實際連接可以不同于圖中所示。給定這里的教導,本領域技術人員能夠想到本原理的這些和類似實現或配置。
【權利要求】
1.一種用于多媒體內容的復用流傳輸的系統,包括:至少一個服務器(14),能夠使用實時流傳輸協議,通過一個或多個數據路徑在流傳輸環境中將多媒體內容(20)發送至客戶端(12),其中,多媒體內容被所述服務器(14)解復用為多個子流(16,18),其中每個子流(16,18)包括唯一時鐘標記,所述時鐘標記包括用于標識所述子流的比特序列,所述時鐘標記不同于其他子流的任何其他時鐘標記,使得所述客戶端(12)能夠通過根據所述唯一時鐘標記來恢復原始分組排序,從而將所述子流(16,18)復用為連續流。
2.根據權利要求1所述的系統,其中,所述時鐘標記格式是以超過所述多媒體內容的幀率的分辨率的時間分辨率來定義的。
3.根據權利要求1至2中任一項所述的系統,其中,不同子流是使用比特序列中與上述幀率定時信息相對應的比特來標識的。
4.根據權利要求1至3中任一項所述的系統,其中,所述時鐘標記包括90kHz單位的33比特部分和27MHz單位的9比特部分。
5.根據權利要求1至4中任一項所述的系統,其中,所述流傳輸環境是MPEG2-TS流傳輸環境。
6.根據權利要求1所述的系統,其中,所述唯一標記包括首部擴展中的原始序號。
7.根據權利要求6所述的系統,其中,所述唯一標記包括每個子流的凈荷部分中的原始序號。
8.根據權利要求6或7中任 一項所述的系統,其中,所述流傳輸環境是RTP/RTSP流傳輸環境。
9.一種用于多媒體內容的復用流傳輸的方法,包括:提供多個子流(16,18),以使用實時流傳輸協議,通過一個或多個數據路徑在流傳輸環境中將多媒體內容從一個或多個服務器(814)發送至客戶端(12),其中,每個子流(16,18)包括唯一時鐘標記,所述時鐘標記包括用于標識所述子流的比特序列,所述時鐘標記格式所具有的時間分辨率超過所述多媒體內容的幀率的分辨率,所述時鐘標記不同于其他子流的任何其他時鐘標記,使得所述客戶端能夠通過將所述子流(16,18)復用為連續流。
10.根據權利要求9所述的方法,其中,所述唯一標記包括時鐘標記,所述時鐘標記包括比特序列,所述比特序列所具有的時間分辨率超過所述多媒體內容的幀率的分辨率。
11.根據權利要求10所述的方法,其中,不同子流是使用比特序列中與上述幀率定時信息相對應的比特來標識的。
12.根據權利要求9至11中任一項所述的方法,其中,所述流傳輸環境是MPEG2-TS流傳輸環境。
13.根據權利要求9所述的方法,其中,所述唯一標記包括首部擴展或每個子流的凈荷部分中的原始序號。
14.根據權利要求9或13中任一項所述的方法,其中,所述流傳輸環境是RTP/RTSP流傳輸環境。
15.一種流傳輸服務器(14),被配置為使用實時流傳輸協議,通過一個或多個數據路徑將多媒體內容發送至客戶端(12),其中,要發送的所述多媒體內容被所述服務器(14)解復用為多個子流(16,18),其中每個子流(16,18)包括唯一時鐘標記,所述時鐘標記包括用于標識所述子流的比特序列,所述時鐘標記不同于其他子流的任何其他時鐘標記,使得所述客戶端(12)能夠通過根據所述唯一時鐘標記來恢復原始分組排序,從而將所述子流(16,18)重新復用為連續流。
16.根據權利要求15所述的流傳輸服務器(14),其中,所述時鐘標記格式是以超過所述多媒體內容的幀率的分辨率的時間分辨率來定義的。
17.一種流傳輸客戶端設備(12),被配置為從流傳輸服務器(14)接收多媒體內容(20),所述流傳輸服務器適于使用實時流傳輸協議,通過一個或多個數據路徑發送至所述客戶端設備(12),其中,所述客戶端設備(12)接收的所述多媒體內容已經被所述服務器(14)解復用為多個子流(16,18),其中每個子流(16,18)包括唯一時鐘標記,所述時鐘標記包括用于標識所述子流中的每個子流的比特序列,所述時鐘標記格式所具有的時間分辨率超過所述多媒體內容的幀率的分辨率,子流的所述時鐘標記不同于其他子流的任何其他時鐘標記,使得接收到所述多媒體內容的所述客戶端設備(12)能夠通過根據所述唯一時鐘標記來恢復原始分組排序,從而將所述子流(16,18)重新復用為連續流。
18.根據權利要求17所述的流傳輸客戶端設備(12),其中,所述時鐘標記格式是以超過所述多媒體內容的幀率的分辨率的時間分辨率來定義的。
【文檔編號】H04N21/63GK104025605SQ201280065199
【公開日】2014年9月3日 申請日期:2012年12月20日 優先權日:2011年12月29日
【發明者】紀堯姆·比紹, 伊馮·勒加盧瓦, 斯蒂芬妮·古阿什 申請人:湯姆遜許可公司