專利名稱:基于分層編碼的視頻流推送方法和系統的制作方法
技術領域:
本發明涉及流媒體編碼及流傳輸技術應用技術領域,尤其涉及基于分層編碼的視 頻流推送方法和系統。
背景技術:
目前隨著電信的IPTV業務及天翼視訊業務發展,我們經常為用戶提供多種不同 尺寸大小的視頻節目,如在IPTV的首頁上提供小視頻窗口節目,而用戶進入到某個直播頻 道后,是全屏的視頻節目;在天翼視訊業務中要根據用戶的手機屏的大小為用戶提供不同 碼流大小的節目。對于現有的IPTV業務和手機業務的編解碼方式以及頻道預覽方式而言,需要在 服務器端按照固定的所需的最大碼流進行編碼,在用戶終端將這些碼流按照固定模式進行 解碼后,不論用戶瀏覽小視頻窗口還是全屏方式觀看,都采用同樣的方式推送視頻流,具有 較大的延遲。
發明內容
本發明提出基于分層編碼的視頻流推送方法和系統,能夠使用戶快速預覽IPTV 上的小視頻窗口中的視頻流,很大程度的減少延時。根據本發明一方面,提出基于分層編碼的視頻流推送方法,包括以下步驟分層編 碼服務器將所需頻道的正常碼流分層編碼,所述正常碼流包括基礎層碼流和增強層碼流, 并推送到網絡接入服務器;網絡接入服務器將基礎層碼流進行解碼并存放在緩存中;發起 頻道切換請求,終端將頻道切換請求發送到網絡接入服務器;網絡接入服務器接收頻道切 換請求,在緩存中獲取從上一個視頻結束幀開始的基礎層碼流,以大于視頻流正常播放速 度的速度將基礎層碼流推送到終端,推送到終端所需要的時間為t。進一步,網絡接入服務器接收頻道切換請求的操作,還包括以下步驟將正常碼流 推送到終端,推送所需要的時間為ti,基礎層碼流在終端的播放時間為ti-t。根據本發明一方面,提出基于分層編碼的視頻流推送系統,包括分層編碼服務 器,將所需頻道的正常碼流分層編碼,所述正常碼流包括基礎層碼流和增強層碼流,并推送 到網絡接入服務器;網絡接入服務器,將基礎層碼流進行解碼并存放在緩存中,當接收終端 的頻道切換請求時,在緩存中獲取從上一個視頻結束幀開始的基礎層碼流,以大于視頻流 正常播放速度的速度將基礎層碼流推送到終端,推送到終端所需要的時間為t。進一步,根據權利要求3所述基于分層編碼的視頻流推送系統,其中,網絡接入服 務器還在接收頻道切換請求時,將正常碼流推送到終端,其中,將正常碼流推送到終端所需 要的時間為ti,基礎層碼流在終端播放的時間為ti-t。根據本發明一方面,提出實現視頻流推送的網絡接入服務器,包括基礎流緩存模 塊,從分層編碼服務器接收基礎層碼流,將基礎層碼流進行解碼并緩存;基礎流推送模塊, 當接收到終端的頻道切換請求時,在基礎流緩存模塊中獲取從上一個視頻結束幀開始的基
3礎層碼流,以大于視頻流正常播放速度的速度推送到終端,推送到終端所需要的時間為t。進一步,根據權利要求5所述實現視頻流推送的網絡接入服務器,還包括正常流 推送模塊,在接收頻道切換請求時,將正常碼流推送到終端,其中,將正常碼流推送到終端 所需要的時間為ti,基礎層碼流在終端播放的時間為ti-t。與現有技術相比,本發明具有至少如下之一的優點現有技術執行的正常碼流播放前會有一段時間的緩沖(碼流從服務器到達終端 的時間),而本發明采用基礎層碼流可以消除或很大程度的減小緩沖時間。使用戶在播放碼 流時,感覺不到碼流緩沖時間。因此,本發明能夠實現快速的頻道預覽。本發明根據實際應用情況來嚴格控制基礎層碼流的播放時間和正常碼流推送的 時間進行相對應,這樣才能使用戶觀看的基礎層碼流和正常碼流之間是無縫的,沒有跳幀、 重幀或丟幀現象。在以后的融合視訊業務中,一個直播頻道的節目又要為多個不同帶寬大小的業務 使用,本發明提出的基于分層編碼的視頻流推送方法和系統,由于可以在網絡接入服務器 中對基礎層碼流進行緩存,并在終端需要時發送給終端,從而還可以解決重復編碼的問題。
此處所說明的附圖用來提供對本發明的進一步理解,構成本發明的一部分,本發 明的示意性實施例及其說明用于解釋本發明,并不構成對本發明的不當限定。在附圖中圖1為本發明基于分層編碼的視頻流推送方法示意圖。圖2為終端與視頻流推送系統之間進行交互的示意圖。圖3所示為本發明視頻流推送系統中網絡接入服務器的結構圖。
具體實施例方式本發明涉及基于分層編碼的視頻流推送方法和系統。在分層編碼服務器端將碼流 進行分層編碼,提供基礎層碼流和增強層碼流,在網絡接入服務器對基礎層碼流進行緩存, 當用戶終端發起頻道切換的請求時,網絡接入服務器以最快的速度將基礎層碼流推送給用 戶終端,使用戶終端在很小的延時下就可進行頻道預覽,此外,網絡接入服務器還將正常碼 流按照正常速度推送給用戶,在用戶終端按照正常的清晰碼流呈現給用戶,實現快速切換。下面通過附圖實施例,對本發明的技術方案做進一步的詳細描述。本發明基于分 層編碼的視頻流推送方法,如圖1所示,包括如下步驟在步驟101,分層編碼服務器將所需頻道的正常碼流分層編碼,所述正常碼流包括 基礎層碼流和增強層碼流,并推送到網絡接入服務器。不同業務所需要的正常碼流大小均不一樣,為了實現快速預覽,這里將正常碼流 進行分層處理,正常碼流包括基礎層碼流和增強層碼流,2個合起來才能顯示正常分辨率 的內容,其中,基礎層碼流是第一個視頻流,通過最低的帶寬來處理,獲得清晰度低的圖像。 增強層碼流是對包含更高分辨率、幀頻和質量水平的信息進行編碼,獲得更高清晰度和更 優質的移動圖像。基礎層碼流和增強層碼流可以自定義,根據業務的最小碼流的展現要求 來進行基礎層碼流的定義。增強層碼流不是對基礎層碼流包含信息的重復,而是對它的補 充。不同業務所需要的分辨率不同,例如小視頻分辨率為320X240,大視頻分辨率為720女
4576。但是所有視頻的基礎層碼流都是一樣的。假設基礎層碼流分辨率為160 * 120,然后 根據不同需要,增強層碼流就不同,比如,小視頻的基礎層碼流+增強層碼流=320女240, 大視頻的基礎層碼流+增強層碼流=720女576。在步驟102,網絡接入服務器將基礎層碼流進行解碼并存放在緩存中。在步驟103,在終端發起直播頻道切換請求時,終端將頻道切換請求發送到網絡接 入服務器。頻道切換包括以下幾種情況大視頻窗口切換到小視頻窗口、小視頻窗口切換到 大視頻窗口、或大視頻窗口之間的頻道切換,例如全頻播放的不同頻道切換。在步驟104,網絡接入服務器接收頻道切換請求,在緩存中獲取從上一個視頻結束 幀開始的基礎層碼流,以大于視頻流正常播放速度的速度將基礎層碼流推送到終端,推送 到終端所需要的時間為t,其中,t是一個可配置的時間,單位可以是毫秒、秒、分等,這里所 說的速度是指單位時間里推送的字節數。在步驟105,終端接收到基礎層碼流之后,將解出的基礎層碼流播放給用戶,實現 頻道預覽。現有技術中,在用戶選擇切換視頻后,將視頻流直接推給用戶,因為視頻的正常碼 流較大及線路帶寬的限制,從用戶發起請求到收到視頻流需要一定的時間,這段時間給用 戶的感觀就是在進行緩沖。而本發明收到請求后,首先將碼流較低的基礎層碼流推給用戶, 因為基礎層碼流較小、占用帶寬較小、所需的時間較短,所以可以消除或很大程度減少緩沖 時間。本發明能夠實現快速的頻道預覽,進一步為快速的頻道切換提供了可能性。在步驟104中,網絡接入服務器接收頻道切換請求,還將正常碼流推送到終端,其 中,將正常碼流推送到終端所需要的時間為ti,基礎層碼流在終端播放的時間為ti-t。在 步驟105中,終端還在接收到正常碼流之后,進行解碼,解出的基礎層碼流和增強層碼流播 放給用戶,從而實現頻道的快速切換。本發明根據實際應用情況來嚴格控制基礎層碼流的播放時間與推送時間之和,等 于將正常碼流從網絡接入服務器推送到終端的時間,這樣在基礎層碼流播放結束時,正好 開始播放正常碼流,使用戶觀看的基礎層碼流和正常碼流之間是無縫的,沒有跳幀、重幀或 丟幀現象。本發明可以通過硬件或者相應的軟件實現,本領域技術人員可以理解并據此作 出相應的變形,但都應覆蓋在本發明權利要求的保護范圍之內。本發明還提供了基于分層編碼的視頻流推送系統,包括分層編碼服務器、網絡接 入服務器。圖2為終端與視頻流推送系統之間進行交互的示意圖。分層編碼服務器將所需頻道的正常碼流分層編碼,所述正常碼流包括基礎層碼流 和增強層碼流,并推送到網絡接入服務器。網絡接入服務器將基礎層碼流進行解碼并存放在緩存中。當接收終端的頻道切換 請求時,在緩存中獲取從上一個視頻結束幀開始的基礎層碼流,以大于視頻流正常播放速 度的速度將基礎層碼流推送到終端,推送到終端所需要的時間為t,其中,t是一個可配置 的時間,這里所說的速度是指單位時間里推送的字節數。頻道切換包括以下幾種情況大視 頻窗口切換到小視頻窗口、小視頻窗口切換到大視頻窗口、或大視頻窗口之間的頻道切換, 例如全頻播放的不同頻道切換。終端接收到基礎層碼流,將解出的基礎層碼流播放給用戶, 實現頻道預覽。進一步,網絡接入服務器接收頻道切換請求,還將正常碼流推送到終端,其中,將
5正常碼流推送到終端所需要的時間為tl,基礎層碼流在終端播放的時間為tl-t。終端在接 收到正常碼流之后,進行解碼,解出的基礎層碼流和增強層碼流播放給用戶,從而實現頻道 的快速切換。圖3所示為本發明視頻流推送系統中網絡接入服務器的結構圖。包括基礎流緩存 模塊、基礎流推送模塊。基礎流緩存模塊,從分層編碼服務器接收基礎層碼流,將基礎層碼流進行解碼并 緩存。基礎流推送模塊,當接收終端的頻道切換請求時,在緩存中獲取從上一個視頻結 束幀開始的基礎層碼流,以大于視頻流正常播放速度的速度將基礎層碼流推送到終端,推 送到終端所需要的時間為t,其中,t是一個可配置的時間,這里所說的速度是指單位時間 里推送的字節數。進一步,本發明所述系統中,網絡接入服務器還可以包括正常流推送模塊,在接收 頻道切換請求時,將正常碼流推送到終端,其中,將正常碼流推送到終端所需要的時間為 tl,基礎層碼流在終端播放的時間為tl-t。終端在接收到正常碼流之后,進行解碼,解出的 基礎層碼流和增強層碼流播放給用戶,從而實現頻道的快速切換。本發明根據實際應用情況來嚴格控制基礎層碼流的播放時間與推送時間之和,等 于將正常碼流從網絡接入服務器推送到終端的時間,這樣在基礎層碼流播放結束時,正好 開始播放正常碼流,使用戶觀看的基礎層碼流和正常碼流之間是無縫的,沒有跳幀、重幀或 丟幀現象。在以后的融合視訊業務中,一個直播頻道的節目又要為多個不同帶寬大小的業務 使用,本發明提出的基于分層編碼的視頻流推送方法和系統,由于可以在網絡接入服務器 中對基礎層碼流進行緩存,并在終端需要時發送給終端,從而還可以解決重復編碼的問題。
權利要求
基于分層編碼的視頻流推送方法,包括以下步驟分層編碼服務器將所需頻道的正常碼流分層編碼,所述正常碼流包括基礎層碼流和增強層碼流,并推送到網絡接入服務器;網絡接入服務器將基礎層碼流進行解碼并存放在緩存中;發起頻道切換請求,終端將頻道切換請求發送到網絡接入服務器;網絡接入服務器接收頻道切換請求,在緩存中獲取從上一個視頻結束幀開始的基礎層碼流,以大于視頻流正常播放速度的速度將基礎層碼流推送到終端,推送到終端所需要的時間為t。
2.根據權利要求1所述基于分層編碼的視頻流推送方法,其中,網絡接入服務器接收 頻道切換請求的操作,還包括以下步驟將正常碼流推送到終端,推送所需要的時間為tl, 基礎層碼流在終端的播放時間為ti-t。
3.基于分層編碼的視頻流推送系統,包括分層編碼服務器,將所需頻道的正常碼流分層編碼,所述正常碼流包括基礎層碼流和 增強層碼流,并推送到網絡接入服務器;網絡接入服務器,將基礎層碼流進行解碼并存放在緩存中,當接收終端的頻道切換請 求時,在緩存中獲取從上一個視頻結束幀開始的基礎層碼流,以大于視頻流正常播放速度 的速度將基礎層碼流推送到終端,推送到終端所需要的時間為t。
4.根據權利要求3所述基于分層編碼的視頻流推送系統,其中,網絡接入服務器還在 接收頻道切換請求時,將正常碼流推送到終端,其中,將正常碼流推送到終端所需要的時間 為tl,基礎層碼流在終端播放的時間為tl-t。
5.實現視頻流推送的網絡接入服務器,包括基礎流緩存模塊,從分層編碼服務器接收基礎層碼流,將基礎層碼流進行解碼并緩存;基礎流推送模塊,當接收到終端的頻道切換請求時,在基礎流緩存模塊中獲取從上一 個視頻結束幀開始的基礎層碼流,以大于視頻流正常播放速度的速度推送到終端,推送到 終端所需要的時間為t。
6.根據權利要求5所述實現視頻流推送的網絡接入服務器,還包括正常流推送模塊, 在接收頻道切換請求時,將正常碼流推送到終端,其中,將正常碼流推送到終端所需要的時 間為tl,基礎層碼流在終端播放的時間為tl-t。
全文摘要
本發明提出基于分層編碼的視頻流推送方法和系統,分層編碼服務器將所需頻道的正常碼流分層編碼,所述正常碼流包括基礎層碼流和增強層碼流,并推送到網絡接入服務器;網絡接入服務器將基礎層碼流進行解碼并存放在緩存中;發起頻道切換請求,終端將頻道切換請求發送到網絡接入服務器;網絡接入服務器接收頻道切換請求,在緩存中獲取從上一個視頻結束幀開始的基礎層碼流,以大于視頻流正常播放速度的速度將基礎層碼流推送到終端,推送到終端所需要的時間為t。本發明使用戶快速預覽,很大程度的減少延時。
文檔編號H04N7/26GK101909063SQ201010250749
公開日2010年12月8日 申請日期2010年8月11日 優先權日2010年8月11日
發明者王換文 申請人:中國電信股份有限公司