在網際網路協議網絡上流式傳輸細粒狀可縮放性編碼的視頻的方法
2023-08-03 10:43:11 2
專利名稱:在網際網路協議網絡上流式傳輸細粒狀可縮放性編碼的視頻的方法
技術領域:
本發明一般涉及視頻流式傳輸,更具體說,涉及在諸如網際網路的IP(網際網路協議)網絡上流式傳輸細粒狀編碼的視頻的方法。
背景技術:
已經使用細粒狀可縮放性(FGS)來壓縮視頻以便在具有可變帶寬的網絡(諸如網際網路)上進行傳輸。FGS結構包括以位速率RBL編碼的基礎層和以位速率REL編碼的單一細粒狀增強層。
由於該增強層的細粒度性,FGS視頻流可以通過任何網絡會話以範圍從Bmin=RBL到Bmax=RBL+REL的可用帶寬傳輸。例如,如果在發射機和接收機之間的可用帶寬是B=R,則發射機以速率RBL發送基礎層而只有一部分增強層用速率Re=R-RBL發送。可以選擇部分的增強層以細粒狀方式傳輸。因此,總的傳輸的位速率R=RBL+Re。
FGS編碼方法近來已經由MPEG-4採用作為流式傳輸應用的標準。預期FGS在無線和異構網絡環境中由於其對不可預測的帶寬變化的高度可適應性而將逐漸獲得普及。為幫助使FGS完全成功,一個專門化的、可以利用FGS的帶寬適應特徵的流式傳輸解決方案是有利的。當前尚沒有為流式傳輸FGS的可用的成熟技術。
為使用FGS的可適應性特徵,現有技術建議有選擇地只轉發給定的鏈路能夠處理的那些數目的層,亦即所有層是沿著同一組播分發樹或子樹發放的,所述組播分發樹或子樹隱含地由接收機的層預訂(subscription)狀態所規定。這樣,接收機可以通過在接收流表明網際網路而隱含地規定組播分發樹。這樣,接收機以這種方式決定它當前的預訂的級是過高還是過低。
處理可調整帶寬的現有技術方法的缺陷是可縮放性差。例如,在反饋內爆(feedback implosion)中(這在該技術中是公知的),現有技術端到端解決方案在大量用戶同時參加對話時會導致控制信號從用戶回送而壓倒信號源。信號源可能沒有計算資源來處理這些控制信號。
另外,現有技術顯示出會話內的公平性太差。如果多個用戶共享同一瓶頸鏈路,則一個用戶的活動可能影響其他用戶的帶寬,因而影響其他用戶感受到的視頻質量。
現有技術方法還展現出差的響應時間。接收機使用「參加或離開」組播組控制以適應接收速率,但是這些控制過程涉及大量網際網路協議一起合作以實現目標。這可能導致接收機感受到在接收機發布控制命令的時間和該命令被成功執行的時間之間的不可接受的延遲。
發明內容
本發明的目的是一種在IP網絡上發送編碼的視頻數據的系統和方法。總體上參照圖2,除了具有能夠向IP網絡發送多層數據的伺服器(總體上由標號40指示),所述系統包括位於伺服器40下遊的自適應節點(總體上由標號50指示)。自適應節點50配置在伺服器40和位於自適應節點50的下遊的接收機(總體上由標號60指示)中間。接收機60和自適應節點50可以有能力通過感知數據網絡的網絡擁塞條件而分析網絡容量,和根據感知的網絡擁塞條件動態而改變接收機60和/或自適應節點50已經預訂的信道。
保護的範圍不由上面敘述的示範實施例的發明內容限制,而僅由權利要求限制。
現在參考附圖,其中相似的參考號碼通篇表示相應的部件圖1是本發明的一個示範實施例的原理圖;圖2是本發明的一個示範實施例以樹形式表示的原理圖;圖3是這裡使用的信道的原理圖;圖4是信道的進一步的示意圖;圖5和圖6是本發明的示例方法的框圖。其中的框按它們的標號說明如下200在數據網絡中在伺服器和接收機的邏輯上的中間配置自適應節點210啟動在伺服器和接收機之間經由數據網絡在邏輯上通過自適應節點的通信
220由接收機根據它感知的網絡容量預訂一個或者多個信道230啟動在伺服器和接收機之間經由數據網絡為每一預訂的信道邏輯上通過自適應節點的端對端通信信道240在自適應節點處認出由接收機預訂的在操作上配置在伺服器和接收機中間的自適應節點下遊的信道250伺服器經由各自的信道向數據網絡發送多個數據層中預定數目的數據層260由接收機在接收機處監視網絡容量270由自適應節點在自適應節點處監視網絡容量280根據由接收機感知的網絡容量由接收機修改預訂信道的傳輸281接收所有的預訂並計算最大預訂率282回傳計算的最大預訂率290根據由自適應節點感知的網絡容量修改通過自適應節點到接收機的預訂的信道的傳輸具體實施方式
現在參考附圖,最初參考圖1和圖3,實現細粒狀可縮放性(FGS)編碼來改善在FGS基礎層21傳輸的每一幀或圖像的視頻質量和信噪比(SNR)(圖3)。本發明提供一個信道管理模型和速率控制機制,以便在數據網絡100上實現FGS編碼視頻的流式傳輸,這是通過引入在數據流中配置的專門化的自適應節點51、52(圖1)以實現可縮放性、並允許實施例直接配置在諸如數據網絡100的標準IP網絡之上而實現的。
在一個在圖1的特定的物理原理布局中總體示出、而在圖2中以更一般的、等價的邏輯樹布局示出的示範實施例中,本發明包括一個用於將對網絡容量敏感的編碼的視頻數據進行編碼並發送的系統。該系統包括伺服器40、自適應節點(在圖2中總體用標號50指示,而在圖1中具體用標號51和52指示)、和接收機(在圖2中總體用標號60指示,而在圖1中具體用標號61和62指示),它們全都在操作上經由諸如網際網路100的IP網絡互聯。
如圖1和圖3所示,伺服器40具有處理器和存儲器,能夠經由數據通信設備42(圖1)通過多個信道30(圖3)向網絡100發送數據。該數據包括多個層20(圖3),諸如FGS基礎層21和多個增強視頻層22-25。基礎層編碼器44(圖1)(它可以用軟體實現)可以在伺服器40內存在和執行,在這裡基礎層編碼器44能夠對一部分視頻數據編碼以產生基礎層幀。這可以包括遵守諸如MPEG4標準的標準的編碼。另外,增強層編碼器45(圖1)(它可以用軟體實現)可以在伺服器40中執行,在這裡增強層編碼器45能夠使用FGS編碼技術從視頻數據和基礎層幀產生經運動補償的剩餘圖像幀。
如圖2所示,自適應節點50可操作地配置在伺服器40和下遊客戶(諸如接收機60)和/或其他自適應節點中間,例如在圖1中自適應節點52是自適應節點51的客戶。自適應節點50能夠把由接收機60預訂的信道30(圖3所示)轉發到接收機60。
如圖1和圖2指出,可以存在多個自適應節點50,一些在其他對等體(諸如其他的自適應節點50)的上遊,例如,在圖1中自適應節點51是自適應節點52的邏輯上的上遊,而一些具有下遊對等體,諸如多個下遊接收機60。如在圖2中另外所示,自適應節點50位於伺服器40和其他自適應節點50、接收機60或其組合的邏輯上的中間。自適應節點50(圖1中的自適應節點51)包括網絡分析器54,它可以是在自適應節點50內執行的軟體。在本發明的一個實施例中,網絡分析器54的唯一功能可以是對它的每一下遊接收機60預訂的信道30的數目計數。在本發明的另一個實施例中,網絡分析器54除對每一下遊接收機60預訂的信道的數目計數外,還可以感知在自適應節點50處的網絡擁塞條件。基於所感知的在自適應節點50處的網絡擁塞條件,自適應節點50動態修改由接收機60預訂的信道30(圖3)的傳輸。
自適應節點50可以執行兩種不同的功能。在前向方向,亦即從伺服器40到接收機60,自適應節點50可以增強網絡100以便在流式傳輸應用方面提供希望的服務質量。在逆方向,自適應節點50可以用作為能夠抑制反饋內爆和加速信道自適應控制的控制工具。因此,自適應節點50還可以處理位於該自適應節點50下遊的一個或者多個客戶的信道預訂請求,所述客戶亦即一個或者多個接收機60以及來自位於下遊的一個或者多個其它自適應節點50。預訂請求因此可以由自適應節點50或由在回傳端點處的伺服器40處理。
自適應節點50還可以進一步包括數據存儲器55,用於緩衝存儲層20(圖3)。數據存儲器55可以包括一個或者多個固定或者可拆卸磁介質、固定或者可拆卸光介質、固定或者可拆卸電子介質。
自適應節點50和數據發送器例如伺服器40或者另外的自適應節點50根據接收的控制信號可以激活或者去激活一個給定的信道30(例如在圖3中所示的信道31-35),以便實現為接收機60的信道預訂和解除預訂。
接收機60不知道信道結構。接收機60將接收的分組解碼,並將它們輸出到顯示系統,例如顯示監視器或者電視(圖中未示出)。網絡分析器64(圖1)(它可以作為在接收機60內執行的軟體而實現)監視網絡100在接收機60處感知的網絡擁塞條件。基於感知的網絡擁塞,接收機60通過給自適應節點50或者直接給其它數據發送者(例如伺服器40)發送控制信號(諸如通過使用實時流式傳輸協議(RTSP)方法)以動態預訂預定數目的信道30。
自適應節點50可以接收來自下遊客戶(例如接收機60或者另一個自適應節點50)的預訂。自適應節點50然後可以向上遊轉發該預訂。另外,包括從所有下遊節點50、60接收的預定預訂數量的預訂消息可以向上遊回傳。自適應節點50還可以例如通過分組損失和跳動報告觀察下遊鏈路負載,和例如但不限於通過丟棄諸如在上面的信道30中的分組這樣的分組來決定減小它的轉發速率。
另外參考圖4,自適應節點50或者伺服器40還可以調度包括在信道30中的層數據20的分組的傳輸,或者以突發方法或者以規律方式。分組以組的方式轉發,每一組表示一組圖像或者一組幀的一個視頻幀。在典型的場合,組傳送的順序通過首先傳輸包含基礎層21的分組而進行優先級排序,使得再傳輸的請求110具有較大的機會在基礎層21幀的顯示的截止期限前得到處理。可以使用數據存儲器55以更快地處理來自接收機6 0(圖4中未示出)的再傳輸請求110。
自適應節點50還可以為在向數據存儲器55傳輸中損失的分組提出它自己向上遊的傳輸請求110。當這樣一個遺失的分組到達自適應節點50時,自適應節點50可以把該遺失的分組存儲在數據存儲器55中,並且另外可以迅速向下遊轉發該遺失的分組,在該遺失的分組上添加或不添加優先級標記。
一般在一個示範實施例的操作中,視頻數據源例如伺服器40(圖1)根據FGS標準對該視頻數據編碼。視頻數據可以諸如在伺服器40(圖1)使用FGS技術編碼,其中首先使用一部分視頻數據以產生一個基礎層幀21(圖3)。然後從視頻數據和該基礎層幀21使用細粒狀編碼技術產生經運動補償的剩餘圖像。然後使用經運動補償的剩餘圖像產生增強層22-25(圖3),在這裡每一增強層22-25包括一部分經運動補償的剩餘圖像。伺服器40經由多個信道30發送多個分組以使FGS編碼的視頻通過網絡100進行流式傳輸。接收機60(圖1)預訂一個或者多個信道30,這至少部分地取決於在接收機60感知的帶寬。
在一個優選方式中,伺服器40為包括基礎層21的分組分配最高的發送優先級,並且漸進地減少來自不同增強層22-25的分組的優先級或者增強層22-25所用的信道32-35的優先級。例如,當自適應節點50需要丟棄一個分組時,在一個優選方式中,它將從具有最低優先級的分組中選擇。
現在另外參考圖5,在步驟200,一個或者多個自適應節點50邏輯上配置在數據網絡例如100中的伺服器40和接收機60的中間。在FGS處理後,伺服器40可以啟動在伺服器40和一個或者多個下遊接收機60之間的多個端對端通信信道,藉助它們,伺服器40給網絡100提供編碼的視頻。在一個典型的實施例中,一個預定的信道(例如31)以預定的帶寬和優先級與基礎層21關聯。另外的信道30可以與增強層22-25例如信道32-35關聯。
然後在步驟210在數據網絡100上在邏輯上通過一個或者多個自適應節點50啟動在伺服器40和接收機60之間的通信。在步驟220,接收機60根據由接收機60感知的網絡容量預訂包含基礎層21和至少一個增強層22-25的一個或者多個信道30。對於信道30的實際預訂至少部分基於由接收機60感知的網絡容量。因此,在它們參與FGS系統對話期間,自適應節點50和接收機60持續監視帶寬和動態調整信道預訂。
在步驟230,伺服器40和接收機60在數據網絡100上為每一預訂的信道30邏輯上通過邏輯配置在伺服器40和接收機60之間的一個或者多個自適應節點50啟動端對端通信信道。在步驟240,自適應節點50認出對在操作上配置在伺服器40和接收機60中間的自適應節點50的下遊的接收機60預訂的信道30。
一旦信道30已經建立,則在步驟250經由它們各自的信道30向數據網絡100發送多個數據層中預定數目的數據層20。
現在參考圖6,由接收機60實現的信道控制通過預訂或者放棄一個或者多個信道30而允許加入或離開擁塞的組播組。在步驟260,接收機60監視在接收機60處的網絡容量。在步驟280,接收機60可以根據由接收機60感知的網絡容量修改在接收機60處的預訂的信道30的傳輸。
在當前預見的實施例中,接收機60將根據在接收機60處感知的網絡擁塞條件動態建立或者拆除伺服器40和接收機60之間的端對端通信信道30。以這種方式,包括伺服器40、自適應節點50、和接收機60的整個系統可以有效地適應FGS編碼的視頻的傳輸速率而不依賴用於增強層22-25的複雜的截斷算法,它在當所有的一切都在單一信道30(例如31)中發送時可能是必要的。
在適當的時間,接收機60可以對未接收到的分組發布一個再傳輸請求。然而,在接收機60移動到加入或者離開一個組播組前,它可以給接收機60上遊的自適應節點50例如接收機61上遊的自適應節點51發送一個控制信號。
對於本發明的多信道流式傳輸模型和FGS,伺服器40通過信道30以至少一個接收機60能夠接受的最大速率發送分組。在步驟281,每一接收機60將接收所有的預訂和計算最大預訂率。所有其它只能以較低速率接收的接收機60隻預訂信道30的子組。因此,雖然同一廣播會話的所有信道30將共享或者部分共享同一組播發送樹和伺服器40可以以最大帶寬通過信道30發送一個數據流,但是每一個接收機60根據由接收機60感知的網絡容量以適合於該接收機的帶寬接收該數據流。
在步驟282,接收機60然後可以回傳計算的預訂率,諸如到位於上遊的自適應節點51或者位於上遊的伺服器40。
在步驟270,當接收機60正在監視帶寬和接收數據時,自適應節點51也監視網絡容量,但是集中在自適應節點51處的網絡容量。相應地,自適應節點50也接收在不同信道30中的分組,並把它們轉發到下一個下遊接收者,下遊接收者可以包括另外的自適應節點50諸如自適應節點52和接收機61、62。根據在自適應節點50處感知的網絡容量,在步驟272自適應節點50可以修改預訂的信道30通過自適應節點50到接收機60的傳輸,所述接收機60根據由自適應節點50感知的網絡容量預訂信道30。這樣,自適應節點50例如但不限於通過優先級緩衝存儲或分組丟棄能夠修改由下遊接收機60預訂的信道30通過自適應節點50到下遊接收機60的傳輸。
在一個當前預見的實施例中,最下遊的自適應節點50(例如52)可以接收來自緊接在自適應節點52下遊(例如接收機62)的接收機60的信道預訂請求。該最下遊的自適應節點52然後計算一個適合於該最下遊的自適應節點52的最大信道預訂級並且把這一最大信道預訂級傳播到上遊的下一個自適應節點(例如自適應節點51)。該處理可以重複直到伺服器40。其結果是,沿組播樹的每一分支,傳輸最大數目的信道30,它們適合於每一分支的網絡負載容量。
在上遊路徑中的每一自適應節點50還可以集合從它們的下遊接收機60或者下遊自適應節點50接收的所有控制信號,並且在需要時把集合的控制信號回傳給伺服器40。伺服器40然後可以根據接收到的、由自適應節點50轉發的控制信號來調整它的廣播信道30。
如果需要的話,自適應節點50可以丟棄分組或者在接收機60可以接受的一定延遲參數內延遲分組的傳輸,以便平滑暫時的通信量變化。作為例子但不是限制,可以配置一個前向節點(例如自適應節點51)以便僅當自適應節點51下遊的鏈路容量因並發通信量超過預定的鏈路門限(例如一定的時間尺度而飽和時)丟棄分組。如果這一飽和只是暫時的(諸如可以由突發通信量所引起),則轉發處理可能暫時減慢,但是轉發延遲了的分組的時間跨距可能仍然維持在如所有信道30曾到達的時間跨距的同樣的持續時間內。
自適應節點50可以按照分配給這些數據包的優先級的次序處理數據包。在一個優選的實施例中,自適應節點50不轉發在信道30中高於它的下遊鏈路可以用掉的分組,亦即它丟棄它們。被丟棄的分組可以根據分配給這些數據分組的優先級而丟棄,並相應地通知上遊節點。
在自適應節點50具有一個轉發緩衝器55的實施例中,自適應節點50可以緩衝存儲來自信道30的內容,允許自適應節點50對上遊和下遊的不同的網絡容量作出反應。例如,如果自適應節點50具有緩衝器55,則它可以超高速緩衝存儲分組,使得自適應節點50可以滿足來自緩衝器55的下遊重新傳輸請求。如果自適應節點50檢測到由於在它的轉發緩衝器55中的溢出因而它必須丟棄一些分組,則它可以這樣做,然後相應地通知上遊節點例如51和40。
另外,自適應節點50可以獨立於任何自適應節點50或在自適應節點50下遊的接收機60而請求重新傳輸一個或者多個分組。伺服器40然後重新傳輸請求的分組給自適應節點50。如果下遊容量變得可用,則自適應節點50可以把這種另外的容量通知它的上遊節點和請求另外的信道30。
因此,自適應節點50可以從一個上遊源例如伺服器40請求重新傳輸,和/或也響應下遊的重新傳輸請求。進一步,通過使用它的緩衝存儲能力,自適應節點50可以以第一速率從一個上遊數據源(例如伺服器40)接受信道數據,同時以第二速率向一個下遊的數據接收機60傳播信道數據。這可能導致緩衝器的填充/清空操作,它可以增加有效的端對端數據速率而無需使在自適應節點50的兩側相應部分過載。
舉另一個例子但不是作為限制,假定接收機60希望離開它當前預訂的信道35。接收機60首先給自適應節點50或者給伺服器40發送一個信道控制信號。當這一控制信號最終到達伺服器40時,伺服器40可以立即停止通過信道35發送所有分組,如果沒有其他的接收機當前預訂信道35的話,即使接收機60未能通過正常過程成功離開組播信道也是這樣。信道35將立即靜止,節省網絡資源。
自適應節點50向其傳送分組的下遊鏈路的容量追隨著滿足TCP友好準則的轉發速率,作為舉例但不限於,取決於可容忍的端對端的延遲,以允許分組從較高的信道(例如32-35)繼續轉發,同時在當前瓶頸鏈路上被緩衝存儲以調節該鏈路暫時的擁塞。相應地,自適應節點50可以具有兩種不同的功能在從伺服器40到接收機60的前向方向上,自適應節點50可以增強IP網絡以便對流式傳輸應用提供諸如選擇性地分組丟棄的服務質量(QoS)。在相反的方向上,自適應節點50可以起到抑制反饋內爆和加速信道適應控制的控制作用。
儘管本發明根據上述特定例子說明,但是應該理解,本發明不打算局限到或限制於這裡所公開的例子。例如,本發明不限於任何特定的編碼策略幀類型或者概率分布。相反,本發明打算覆蓋在所附權利要求的精神和範圍之內所包括的各種結構及其修改。
權利要求
1.一種用於提供細粒狀可縮放性編碼的視頻數據的流式傳輸的系統,包括伺服器,用於通過多個信道向數據網絡發送細粒狀可縮放性編碼的視頻數據;接收機,具有第一網絡分析器,它感知在接收機處的網絡擁塞條件,和根據在接收機處感知的數據網絡的擁塞條件來動態修改對預定數目的多個信道的預訂;和自適應節點,具有第二網絡分析器,它對由接收機預訂的信道的數目進行計數。
2.權利要求1所述的系統,其中,所述自適應節點包括多個自適應節點,其中,該多個自適應節點中的至少一個是在該多個自適應節點中的至少另一個節點的上遊。
3.一種用於傳輸流式傳輸的細粒狀可縮放性編碼的視頻數據的方法,包括a.在數據網絡中在伺服器和接收機的邏輯上的中間配置自適應節點;b.啟動在數據網絡上在伺服器和接收機之間邏輯上通過該自適應節點的通信;c.根據由接收機感知的網絡容量由接收機預訂一個或者多個信道,每一信道相應於多個數據層中一個預定數據層,這些數據層包括在伺服器可用的流式傳輸的細粒可縮放性編碼的視頻數據;d.為每一預訂的信道啟動在數據網絡上在伺服器和接收機之間邏輯上通過自適應節點的端對端通信信道;e.由自適應節點認出由在操作上配置在伺服器和接收機中間的自適應節點下遊的接收機所預訂的信道;f.由伺服器經由其各自的信道向數據網絡發送多個數據層中預定數目的數據層;g.由接收機在接收機處監視網絡容量;h.由自適應節點在自適應節點處監視網絡容量;i.根據由接收機感知的網絡容量修改在接收機處預訂的信道的傳輸;和j.根據由自適應節點感知的網絡容量修改預訂的信道通過自適應節點到接收機的傳輸。
4.權利要求3所述的方法,其中步驟(c)進一步包括a.把流式傳輸的細粒狀可縮放性編碼的視頻數據的一部分編碼以產生一個基礎層幀;b.使用細粒狀編碼技術從流式傳輸的細粒狀可縮放性編碼的視頻數據和基礎層幀產生經運動補償的剩餘圖像;c.使用經運動補償的剩餘圖像產生增強層;該增強層包括多個層,每一層包括一部分經運動補償的剩餘圖像。
5.權利要求4所述的方法,進一步包括在自適應節點緩衝存儲基礎層幀和增強層。
6.權利要求5所述的方法,其中緩衝存儲進一步包括a.從上遊節點請求重新傳輸;和b.響應來自下遊節點的重新傳輸請求。
7.權利要求4所述的方法,進一步包括a.以第一速率從一個上遊數據源接收層數據;和b.以第二速率向一個下遊數據接收機轉發層數據。
8.權利要求4所述的方法,其中,自適應節點處理邏輯上配置在該自適應節點下遊的客戶的預訂請求。
9.權利要求8所述的方法,其中,所述客戶至少包括接收機和第二自適應節點中的一個。
10.權利要求8所述的方法,其中所述處理包括a.從自適應節點的接收機接收預訂請求;b.由自適應節點計算最大預訂級;和c.由自適應節點向上遊的下一個對等體傳播該最大預訂級。
11.一個用在流式傳輸視頻數據系統中的自適應節點,包括a.數據通信接口,用於可操作地連接到一個數據網絡;b.網絡分析器,用於i.在自適應節點處感知數據網絡的網絡擁塞條件;和ii.根據感知的網絡擁塞條件,對從邏輯上配置在該自適應節點的上遊的數據信道源到邏輯上配置在該自適應節點下遊的客戶的數據信道的傳輸進行動態修改。
全文摘要
本發明的目的是一種系統和方法,用於在諸如IP網絡的數據網絡上發送編碼的視頻數據。在具有能夠發送多層數據到數據網絡的伺服器之外,該系統還包括自適應節點,它們位於伺服器和位於該自適應節點下遊的客戶中間,這裡,這些客戶可以是接收機和/或其它自適應節點。接收機和自適應節點可以有能力分析網絡容量,這是通過在設備處感知數據網絡的網絡擁塞條件而實現的,並根據所感知的網絡擁塞條件動態地改變接收機和/或自適應節點已經預訂的信道預訂。在此強調,提供本摘要是為了遵照使檢索人員或者其他讀者迅速確定該技術公開的主題而需要摘要的這一規則。應該理解它的提交將不用於解釋或限制權利要求的範圍。
文檔編號H04N7/16GK1636404SQ03804339
公開日2005年7月6日 申請日期2003年2月12日 優先權日2002年2月22日
發明者Q·李, W·R·T·坦卡特 申請人:皇家飛利浦電子股份有限公司