一種交互式多視點視頻流媒體服務中控制延遲的方法
2023-05-31 16:47:06 1
專利名稱:一種交互式多視點視頻流媒體服務中控制延遲的方法
技術領域:
本發明涉及一種交互式多視點視頻流媒體服務中控制延遲的方法,尤其涉及一種交互 式多視點視頻流媒體服務中控制傳輸和視點切換延遲的方法,屬於多媒體數據傳輸技術領 域。
背景技術:
多視點視頻和三維立體電視是新一代的交互式媒體服務,給用戶帶來全新的觀看體 驗用戶可以自由地選擇觀看的視點並且隨時在不同視點間進行切換;可以在不佩戴眼鏡 的情況下獲得三維的場景體驗和感受。同傳統二維電視相比,在視覺效果和用戶交互性上 的巨大優勢,使得多視點視頻/三維立體電視成為研究的熱點,迅速發展和普及,將成為 繼數位電視後廣播網絡和寬帶網絡上新一代交互式媒體的重要應用。
方便快捷的特點使得流媒體直播點播服務成為網際網路上提供媒體內容服務的主要手 段。考慮到流媒體服務的廣泛普及,為了給網際網路用戶帶來更好的觀看體驗,使用流媒體 直播點播技術提供多視點視頻/三維立體電視節目成為一個自然而然的選擇,具有廣泛的 經濟價值和社會價值。
交互性的特點使得多視點視頻和三維立體電視流媒體服務對傳輸過程中和視點切換 過程中的延遲具有苛刻的要求,而網際網路環境本身沒有對於服務的延遲保證機制。現有的 延遲保證方案完全依賴於流媒體伺服器的支持,因此造成伺服器帶寬資源的開銷巨大;而 另一方面,視點的切換需要經過退出當前視點頻道、加入新視點頻道等過程,造成視點切 換的延遲時間較大。
發明內容
本發明提出了一種交互式多視點視頻流媒體服務中的控制延遲的方法,能應用於多視 點視頻或者三維立體電視的流媒體直播或者點播服務。這是一種在保證多視點視頻流媒體 服務傳輸延遲以及視點切換延遲的基礎上,通過優化流媒體伺服器的調度策略以及有效利 用用戶帶寬資源,節約伺服器帶寬資源開銷的方案。
本發明提出的交互式多視點視頻流媒體服務中控制延遲的方法,包括以下步驟
(1) 用戶在開始觀看多視點視頻流媒體節目時,與伺服器通過網絡時間協議進行時 間同步;
(2) 伺服器使觀看同一視點的用戶構建一個視點內覆蓋網,所有視點內覆蓋網聯合
構建一個視點間覆蓋網,構建方法如下-
伺服器在用戶選擇觀看的視點中隨機選取k個觀看相同視點的用戶,k個觀看相同視
點的用戶為該用戶的視點內覆蓋網的鄰居節點,將該信息返回用戶,用戶與k個觀看相同視點的用戶建立連接,對每個用戶重複此過程,使觀看同一視點的用戶形成一個視點內覆 蓋網;在其他每個視點的用戶中隨機選取m個用戶,m個用戶為該用戶的視點間覆蓋網的 鄰居節點,將該信息返回用戶,用戶與(n—l)Xm個用戶建立連接,其中n是視點數量, 對每個用戶重複此過程,使用戶形成一個視點間覆蓋網,k和m取值範圍為5<k<20, 2<m<10;
(3) 伺服器按照上述視點的數量,將上述多視點視頻節目中的關鍵幀數據均分成關 鍵幀數據切片,分別向上述視點內覆蓋網中的部分用戶傳輸不同的關鍵幀數據切片,該部 分用戶將接收的關鍵幀切片數據與同一視點內覆蓋網中的其他用戶進行傳輸和交換;
(4) 經過設定時間後,不同視點內覆蓋網中的用戶將接收的關鍵幀切片數據與其他 視點內覆蓋網中的用戶進行傳輸和交換;
(5) 伺服器將接收的多視點視頻節目中的非關鍵幀數據發送至各視點內覆蓋網中的 部分用戶,不同的視點內覆蓋網發送不同的非關鍵幀數據,該部分用戶將接收的非關鍵幀 數據向同一視點內覆蓋網中的其他用戶傳輸和交換;
(6) 伺服器端在時間L發布數據包S,設用戶與伺服器之間的網絡往返延遲為T2, 流媒體服務中控制延遲目標為T,則當用戶在T,+ T - T2時刻仍然沒有接收到數據包S, 用戶直接向伺服器請求數據包S,伺服器將數據包S發送給用戶;
(7) 每個用戶每隔15秒向伺服器定期報告本用戶當前的數據包出流量速率,伺服器 在每個視點內覆蓋網中選擇出流量速率最大的若干個用戶,伺服器與選擇的用戶之間按照 步驟(3)和(5)中的方法傳輸數據;
(8) 設伺服器總的數據包出流量速率為rs,當前多視點視頻節目碼率為r,伺服器 向用戶當前的直接推送倍數為Y ,當ryr〉ay時,使Y增加為2y;當r,/r〈eY時, 使Y減少為Y/2,其中e〈a, a和e的取值為2《a《20,0<P<2;
(9) 用戶從一個視點切換到另一視點時,同時向伺服器以及該用戶在另一視點的視 點間覆蓋網鄰居節點發送切換視點請求,伺服器向用戶推送比當前節目時間慢T秒的節目 數據,用戶同時從位於另一視點的視點間覆蓋網中的鄰居節點取得當前節目數據,用戶按 照步驟上述(2)加入到另一視點的視點內覆蓋網中,用戶向伺服器發送一個停止數據直 接推送請求,用戶從鄰居節點獲取節目數據。
本發明提出的一種交互式多視點視頻流媒體服務中控制延遲的方法,其優點是
1、 本發明方法是基於兩層結構的對等覆蓋網絡作為多視點視頻傳輸的網絡拓撲基礎。 用戶在收看多視點視頻節目時,在兩個層次上加入這種對等覆蓋網絡。這種兩層結構的對 等覆蓋網絡使得用戶之間進行充分地關聯和連接,保證了多視點視頻數據傳輸的魯棒性, 並且能夠充分地利用用戶的帶寬資源,降低伺服器的帶寬資源開銷。每個用戶均保持一個 與伺服器的直接連接,在多視點視頻數據內容超過所控制的延遲時間仍未到達時,直接向 伺服器進行數據請求,保證用戶的觀看質量。
2、 本發明方法是基於關鍵幀切片的數據調度方法,多視點視頻節目中的關鍵幀數據 被均分成多個關鍵幀數據切片,分別傳給觀看不同視點的觀眾,所有觀眾互相交換各自的 關鍵幀切片,實現觀看不同視點的用戶共享關鍵幀數據的目的,從而極大地減少了伺服器傳輸關鍵幀數據的數量,顯著地降低伺服器傳輸多視點視頻節目的帶寬開銷,保證用戶的 觀看質量和伺服器提供多視點視頻服務的可擴展性。
3、 本發明方法是一種具有自適應能力的伺服器數據傳輸調度方法,能夠根據當前數 據的傳輸情況,改變此後的傳輸策略,在促進數據傳輸和節約伺服器傳輸開銷之間進行折 中,在保證多視點視頻節目傳輸延遲的基礎上,對伺服器傳輸調度方法進行優化,減少傳 輸過程中伺服器的帶寬開銷,提高服務質量和服務的可擴展性。
4、 已有的用戶視點切換方法完全依賴於伺服器直接推送切換後視點的內容,造成服
務器的巨大帶寬開銷,本發明方法提出了視點切換方法,通過利用用戶的鄰居節點帶寬資
源傳輸切換後目標視點的數據,降低視點切換過程中對於伺服器帶寬資源的依賴;減少視 點切換過程中的中間環節,加快視點切換速度,提高服務質量,增強用戶的觀看體驗。
圖1是本發明提出的交互式多視點視頻流媒體服務中控制延遲的方法中的網絡結構 示意圖。
圖1中,l是伺服器,2是用戶,3是用戶與伺服器的直接連接,4是伺服器與各視點 內覆蓋網內部分用戶的連接,5是視點內覆蓋網用戶之間的連接,6是視點間覆蓋網中用 戶之間的連接,7是視點內覆蓋網,8是視點間覆蓋網
具體實施例方式
本發明提出的交互式多視點視頻流媒體服務中控制延遲的方法,其網絡結構如圖l所
示,包括以下步驟
(1) 用戶2在開始觀看多視點視頻流媒體節目時,與伺服器1通過網絡時間協議進 行時間同步;
(2) 伺服器使觀看同一視點的用戶構建一個視點內覆蓋網7,所有視點內覆蓋網聯 合構建一個視點間覆蓋網8,構建方法如下
伺服器在用戶選擇觀看的視點中隨機選取k個觀看相同視點的用戶,k個觀看相同視 點的用戶為該用戶的視點內覆蓋網的鄰居節點,將該信息返回用戶,用戶與k個觀看相同 視點的用戶建立連接,如圖1中的5所示。對每個用戶重複此過程,使觀看同一視點的用 戶形成一個視點內覆蓋網;在其他每個視點的用戶中隨機選取m個用戶,m個用戶為該用 戶的視點間覆蓋網的鄰居節點,將該信息返回用戶,用戶與(n—l)Xm個用戶建立連接, 如圖1中的6所示。其中n是視點數量,對每個用戶重複此過程,使用戶形成一個視點間 覆蓋網,k和m取值範圍為5<k<20, 2<m<10;
(3) 伺服器按照上述視點的數量,將上述多視點視頻節目中的關鍵幀數據均分成關 鍵幀數據切片,分別向上述視點內覆蓋網中的部分用戶傳輸不同的關鍵幀數據切片,該部 分用戶將接收的關鍵幀切片數據與同一視點內覆蓋網中的其他用戶進行傳輸和交換;
(4) 經過設定時間後,不同視點內覆蓋網中的用戶將接收的關鍵幀切片數據與其他 視點內覆蓋網中的用戶進行傳輸和交換;(5) 伺服器將接收的多視點視頻節目中的非關鍵幀數據發送至各視點內覆蓋網中的 部分用戶,不同的視點內覆蓋網發送不同的非關鍵幀數據,該部分用戶將接收的非關鍵幀 數據向同一視點內覆蓋網中的其他用戶傳輸和交換;
(6) 伺服器端在時間L發布數據包S,設用戶與伺服器之間的網絡往返延遲為T2, 流媒體服務中控制延遲目標為T,則當用戶在L+T - T2時刻仍然沒有接收到數據包S, 用戶直接向伺服器請求數據包S,伺服器將數據包S發送給用戶;
(7) 每個用戶每隔15秒向伺服器定期報告本用戶當前的數據包出流量速率,伺服器 在每個視點內覆蓋網中選擇出流量速率最大的若干個用戶,伺服器與選擇的用戶之間按照 步驟(3)和(5)中的方法傳輸數據;
(8) 設伺服器總的數據包出流量速率為rs,當前多視點視頻節目碼率為r,伺服器 向用戶當前的直接推送倍數為Y,當rs/r〉ay時,使Y增加為2Y;當rs/r< 0 Y時, 使Y減少為Y/2,其中e〈a, a和e的取值為2《a《2O,O<0<2;
(9)用戶從一個視點切換到另一視點時,同時向伺服器以及該用戶在另一視點的視點間 覆蓋網鄰居節點發送切換視點請求,伺服器向用戶推送比當前節目時間慢T秒的節目數 據,用戶同時從位於另一視點的視點間覆蓋網中的鄰居節點取得當前節目數據,用戶按照 步驟上述(2)加入到另一視點的視點內覆蓋網中,用戶向伺服器發送一個停止數據直接 推送請求,用戶從鄰居節點獲取節目數據。 以下詳細介紹本發明的內容
在多視點視頻流媒體服務中,伺服器將觀眾按照一定的規則組織成一個覆蓋於底層物 理網絡之上的虛擬網絡,這個虛擬網絡被稱為對等覆蓋網絡(以下簡稱為覆蓋網)。多視 點^L頻節目,即多視點視頻編碼將通過這個覆蓋網進行傳輸。本發明方法提出了一種構造 2層結構覆蓋網的方法伺服器使觀看同一視點的用戶構建一個視點內覆蓋網,所有視點 內覆蓋網聯合構建一個視點間覆蓋網,構建方法如下當用戶加入並開始觀看節目的時候,
伺服器在用戶選擇觀看的視點中隨機選取k個觀看相同視點的用戶,k個觀看相同視點的
用戶為該用戶的視點內覆蓋網的鄰居節點,將該信息返回用戶,用戶與k個觀看相同視點
的用戶建立連接,對每個用戶重複此過程,使觀看同一視點的用戶形成一個視點內覆蓋網; 在其他每個視點的用戶中隨機選取m個用戶,m個用戶為該用戶的視點間覆蓋網的鄰居節 點,將該信息返回用戶,用戶與(n—1) Xm個用戶建立連接,其中n是視點數量,對每 個用戶重複此過程,使用戶形成一個視點間覆蓋網,k和m取值範圍為5<k<20, 2< m<10;用戶在開始觀看多視點視頻節目時,與伺服器使用NTP網絡時間協議進行時間同 步,並且與伺服器保持一個直接連接作為救援連接。NTP協議全稱網絡時間協議(Network TimeProcotol)。它的目的是在國際網際網路上傳遞統一、標準的時間。具體的實現方案是 在網絡上指定若干時鐘源網站,為用戶提供授時服務,並且這些網站間應該能夠相互比對, 提高準確度。
月艮務器在傳輸多視點視頻節目的時候,首先把多視點視頻節目進行流化,即將整個多 視點視頻節目分成許多相同大小的數據包,然後傳輸流化後的數據包。每個數據包有一個 依次遞增的序列號,用戶按照數據包的序列號對數據包進行請求。根據數據包負載部分的內容,可以將數據包分為關鍵幀數據包和非關鍵幀數據包。本發明提出了一種基於關鍵幀 數據切片的方法,在觀看不同視點的用戶之間共享關鍵幀數據包,從顯著降低伺服器的帶 寬開銷。其具體方法為伺服器按照上述視點的數量,將多視點視頻節目中的關鍵幀數據 包均分成關鍵幀數據切片,分別向上述視點內覆蓋網中的部分用戶傳輸不同的關鍵幀數據 切片,該部分用戶將接收的關鍵幀切片數據與同一視點內覆蓋網中的其他用戶進行傳輸和 交換;經過設定時間後,不同視點內覆蓋網中的用戶將接收的關鍵幀切片數據與其他視點 內覆蓋網中的用戶進行傳輸和交換;伺服器將接收的多視點視頻節目中的非關鍵幀數據發 送至各視點內覆蓋網中的部分用戶,不同的視點內覆蓋網發送不同的非關鍵幀數據,該部 分用戶將接收的非關鍵幀數據向同一視點內覆蓋網中的其他用戶傳輸和交換。
在觀看多視點視頻節目的過程中,當用戶發現某部分多視點視頻數據在將要超過傳輸 延遲控制的目標值時,將會向伺服器發送請求,要求伺服器直接將這部分內容推送給用戶, 從而保證用戶的觀看質量。其具體方法為伺服器端在時間L發布數據包S,設用戶與服 務器之間的網絡往返延遲為T2,流媒體服務中控制延遲目標為T,則當用戶在T,+ T - T2 時刻仍然沒有接收到數據包S,用戶直接向伺服器請求數據包S,伺服器將數據包S發送 給用戶。
在多視點視頻節目的傳輸過程中,伺服器會收集用戶傳輸多視點視頻節目的速率,並 根據用戶多視點視頻節目傳輸速率的情況,選擇主動推送多視點視頻節目的節點,使得數 據傳輸能力強的用戶首先得到最新的多視點視頻節目數據,使這部分用戶發揮他們的傳輸 能力將最新的多視點視頻數據傳輸給其他用戶。其具體步驟為每個用戶每隔15秒向服 務器定期報告本用戶當前的數據包出流量速率,伺服器在每個視點內覆蓋網中選擇出流量 速率最大的若干個用戶,按照上述的伺服器傳輸方法將多視點視頻數據傳輸給這部分用 戶。
對於任意一個特定的流媒體數據包,伺服器都會至少主動推送一份拷貝到某一個用 戶。對於一個數據包,如果伺服器直接推送了Y份拷貝到一部分用戶(每個用戶至多推送 一份拷貝),稱直接推送倍數為Y。伺服器根據當前多視點視頻數據的傳輸情況調整直接 推送倍數,從而起到在控制數據傳輸延遲的基礎上,節約伺服器帶寬資源。其具體方法為
設伺服器總的數據包出流量速率為rs,當前多視點視頻節目碼率為r,伺服器向用戶當前 的直接推送倍數為Y,當rVr〉aY時,使Y增加為2Y;當rs/r〈Py時,使Y減少為 Y/2,其中e〈a。
a和e的取值為2《a《20,0<e<2;
原有的用戶視點切換方法完全依賴於伺服器直接推送切換後視點的內容,造成伺服器 的巨大帶寬開銷,本發明提出了一種在利用用戶鄰居節點帶寬資源基礎上的視點切換方 法,實現快速的視點切換和較低的伺服器帶寬開銷。具體方法為用戶從一個視點切換到 另一視點時,同時向伺服器以及該用戶在另一視點的視點間覆蓋網鄰居節點發送切換視點 請求,伺服器向用戶推送比當前節目時間慢T秒的節目數據,用戶同時從位於另一視點的
視點間覆蓋網中的鄰居節點取得當前節目數據,用戶加入到另一視點的視點內覆蓋網中, 用戶向伺服器發送一個停止數據直接推送請求,並從鄰居節點獲取節目數據。
權利要求
1、一種交互式多視點視頻流媒體服務中控制延遲的方法,其特徵在於該方法包括以下步驟(1)用戶在開始觀看多視點視頻流媒體節目時,與伺服器通過網絡時間協議進行時間同步;(2)伺服器使觀看同一視點的用戶構建一個視點內覆蓋網,所有視點內覆蓋網聯合構建一個視點間覆蓋網,構建方法如下伺服器在用戶選擇觀看的視點中隨機選取k個觀看相同視點的用戶,k個觀看相同視點的用戶為該用戶的視點內覆蓋網的鄰居節點,將該信息返回用戶,用戶與k個觀看相同視點的用戶建立連接,對每個用戶重複此過程,使觀看同一視點的用戶形成一個視點內覆蓋網;在其他每個視點的用戶中隨機選取m個用戶,m個用戶為該用戶的視點間覆蓋網的鄰居節點,將該信息返回用戶,用戶與(n—1)×m個用戶建立連接,其中n是視點數量,對每個用戶重複此過程,使用戶形成一個視點間覆蓋網,k和m取值範圍為5<k<20,2<mαγ時,使γ增加為2γ;當rs/r<βγ時,使γ減少為γ/2,其中β<α,α和β的取值為2≤α≤20,0<β<2;(9)用戶從一個視點切換到另一視點時,同時向伺服器以及該用戶在另一視點的視點間覆蓋網鄰居節點發送切換視點請求,伺服器向用戶推送比當前節目時間慢T秒的節目數據,用戶同時從位於另一視點的視點間覆蓋網中的鄰居節點取得當前節目數據,用戶按照步驟上述(2)加入到另一視點的視點內覆蓋網中,用戶向伺服器發送一個停止數據直接推送請求,用戶從鄰居節點獲取節目數據。
全文摘要
本發明涉及一種交互式多視點視頻流媒體服務中控制延遲的方法,屬於多媒體數據傳輸技術領域。首先用戶與伺服器進行時間同步;伺服器使觀看同一視點的用戶構建一個視點內覆蓋網,所有視點內覆蓋網聯合構建一個視點間覆蓋網,用戶在收看多視點視頻節目時,在兩個層次上加入這種對等覆蓋網;多視點視頻節目中的關鍵幀數據被均分成多個關鍵幀數據切片,分別傳給觀看不同視點的觀眾,所有觀眾互相交換各自的關鍵幀切片;根據當前數據的傳輸情況,減少傳輸過程中伺服器的帶寬開銷。本方法根據鄰居節點帶寬資源,降低視點切換過程中對於伺服器帶寬資源的依賴,減少視點切換過程中的中間環節,加快視點切換速度,提高服務質量,增強用戶的觀看體驗。
文檔編號H04N7/24GK101459837SQ200910076120
公開日2009年6月17日 申請日期2009年1月9日 優先權日2009年1月9日
發明者孫立峰, 萌 張, 楊士強, 陳志博 申請人:清華大學