基于云計算的虛擬機與客戶端間視頻傳輸方法
【專利摘要】本發(fā)明揭示了一種基于云計算的虛擬機與客戶端間視頻傳輸方法,本發(fā)明的特點是在虛擬機端不對視頻數(shù)據(jù)進行解碼,而是將視頻數(shù)據(jù)進行分離,然后通過UDP用戶數(shù)據(jù)包協(xié)議等方式將其發(fā)送到客戶端。對于虛擬機來說,在視頻播放過程中,僅僅完成媒體文件的分離以及數(shù)據(jù)報的發(fā)送工作,負載相對較低,數(shù)據(jù)傳輸?shù)男屎芨摺?br>
【專利說明】基于云計算的虛擬機與客戶端間視頻傳輸方法
【技術(shù)領(lǐng)域】
[0001] 本發(fā)明涉及云計算領(lǐng)域,特別涉及一種基于云計算的虛擬機與客戶端間視頻傳輸 方法。
【背景技術(shù)】
[0002] 云計算是當前計算模型的一次重要革新。通過將各種互聯(lián)計算資源進行有效整合 并實現(xiàn)多層次的虛擬化與抽象,云計算有效地將大規(guī)模計算資源以可靠服務的形式提供給 用戶,從而將用戶從復雜的底層硬件邏輯、軟件棧與網(wǎng)絡(luò)協(xié)議中解放出來。更重要的是,云 計算帶來的服務整合與按需供給將大大提高當前計算資源的利用率,達到降低成本,減少 能耗的目的。
[0003] 當今的服務器所集成的顯卡一般能力較弱且不支持視頻的硬件解碼,視頻在遠程 虛擬機中播放需要軟件解碼;未來服務器可能加入先進的圖形處理器(GPU),但先進的GPU 對多路視頻的硬件解碼支持非常有限(現(xiàn)在最多兩路);并且解碼后的圖像碼流急劇放大, 傳輸?shù)奖镜仫@示需要更大的網(wǎng)路帶寬的開銷。所以需要提供一種視頻傳輸技術(shù),使虛擬機 和客戶端之間可以高效便捷地進行視頻數(shù)據(jù)的傳輸。
【發(fā)明內(nèi)容】
[0004] 本發(fā)明的目的是提供一種基于云計算的虛擬機與客戶端間視頻傳輸方法,解決現(xiàn) 有技術(shù)存在的缺陷和不足。
[0005] 本發(fā)明提供一種基于云計算的虛擬機與客戶端間視頻傳輸方法,包括以下步驟: 將視頻在虛擬機上分離成視頻流和音頻流,再將所述視頻流分離成視頻頭與視頻幀; 通過云桌面協(xié)議主控通道獲取客戶端與虛擬機對應的網(wǎng)絡(luò)地址,建立客戶端與虛擬機 的數(shù)據(jù)傳輸通道; 通過UDP用戶數(shù)據(jù)包協(xié)議將所述分離的視頻、音頻數(shù)據(jù)從所述數(shù)據(jù)傳輸通道傳輸?shù)娇?戶端; 獲取虛擬機上的視頻顯示窗口數(shù)據(jù),并將其通過云桌面協(xié)議主控通道傳輸給客戶端。 [0006] 所述虛擬機上的視頻分離通過設(shè)置在虛擬機中的視頻播放器進行的,分離后的數(shù) 據(jù)中,所述音頻流為編碼后的音頻流,所述視頻幀為編碼后的視頻幀。
[0007] 所述獲取的虛擬機上的視頻顯示窗口數(shù)據(jù),包括視頻顯示的窗口坐標、視頻顯示 的坐標、播放進度及其他矩形數(shù)據(jù)。
[0008] 所述視頻頭用來描述視頻的特征參數(shù),包括視頻編碼標準、視頻碼率、長寬參數(shù)。
[0009] 所述虛擬機架設(shè)在云計算服務器上,虛擬機與服務器之間信號通道雙向通訊。
[0010] 所述云桌面協(xié)議主控通道是虛擬機通過因特網(wǎng)與客戶端進行通信與控制的信號 通道。
[0011] 所述客戶端與虛擬機的數(shù)據(jù)傳輸通道是虛擬機通過因特網(wǎng)向客戶端傳輸視頻流、 音頻流的數(shù)據(jù)通道。
[0012] 本發(fā)明的特點是在虛擬機端不對視頻數(shù)據(jù)進行解碼,而是將視頻數(shù)據(jù)進行分離, 然后通過UDP用戶數(shù)據(jù)包協(xié)議等方式將其發(fā)送到客戶端。對于虛擬機來說,在視頻播放過 程中,僅僅完成媒體文件的分離以及數(shù)據(jù)報的發(fā)送工作,負載相對較低,數(shù)據(jù)傳輸?shù)男屎?商。
【專利附圖】
【附圖說明】
[0013] 圖1是本發(fā)明流程示意圖; 圖2是本發(fā)明框架示意圖; 圖3是本發(fā)明數(shù)據(jù)流向示意圖。
【具體實施方式】
[0014] 下面結(jié)合附圖和實施方式進一步說明本發(fā)明的技術(shù)方案。
[0015] 參見圖1,本發(fā)明提供一種基于云計算的虛擬機與客戶端間視頻傳輸方法,包括以 下步驟: A1、將視頻在虛擬機上分離成視頻流和音頻流,再將所述視頻流分離成視頻頭與視頻 幀。
[0016] 作為一實施例,所述虛擬機上的視頻分離通過設(shè)置在虛擬機中的視頻播放器進行 的。媒體播放器的播放的過程都是將媒體文件分離成視頻流與音頻流,而后將視頻流分離 成視頻頭和一幀幀編碼過的視頻數(shù)據(jù),而后媒體播放器并不對視頻數(shù)解碼,而是將視頻數(shù) 據(jù)通過UDP用戶數(shù)據(jù)包協(xié)議等方式發(fā)送到客戶端。對于虛擬機來說,在視頻播放過程中,僅 僅完成媒體文件的分離以及數(shù)據(jù)報的發(fā)送工作,負載相對較低。
[0017] A2、通過云桌面協(xié)議主控通道獲取客戶端與虛擬機對應的網(wǎng)絡(luò)地址,建立客戶端 與虛擬機的數(shù)據(jù)傳輸通道。
[0018] A3、通過UDP用戶數(shù)據(jù)包協(xié)議將所述分離的視頻、音頻數(shù)據(jù)從所述數(shù)據(jù)傳輸通道 傳輸?shù)娇蛻舳恕?br>
[0019] 視頻流和音頻流的傳輸:本發(fā)明中,傳送的視頻流是編碼過的,網(wǎng)絡(luò)占用比解碼過 后再傳送到客戶端要小得多。在本發(fā)明中,根據(jù)視頻可以用不著太嚴格的校驗的特點,使用 用戶數(shù)據(jù)包協(xié)議(UDP ),能夠降低網(wǎng)絡(luò)占用。
[0020] A4、獲取虛擬機上的視頻顯示窗口數(shù)據(jù),并將其通過云桌面協(xié)議主控通道傳輸給 客戶端。
[0021] 獲取視頻顯示窗口數(shù)據(jù):本發(fā)明中,從媒體播放器中取得視頻顯示的窗口坐標、視 頻顯示的坐標以及其他矩形,并將這些數(shù)據(jù)發(fā)送到客戶端,作為下一步客戶端的視頻數(shù)據(jù) 顯不。
[0022] 參見圖2,本發(fā)明是通過圖2的框架來實現(xiàn)的,虛擬機102架設(shè)在服務器101上, 虛擬機102與服務器101之間通過信號通道雙向通訊(見服務器101和虛擬機102間的箭 頭)。主控通道107是云桌面協(xié)議主控通道,也是虛擬機102通過因特網(wǎng)104與客戶端105 之間的通信與控制的信號通道。數(shù)據(jù)傳輸通道106是通過云桌面協(xié)議主控通道107獲取客 戶端105與虛擬機102對應的網(wǎng)絡(luò)地址(IP地址),建立的客戶端105與虛擬機102的數(shù)據(jù) 傳輸通道,也是虛擬機102通過因特網(wǎng)104向客戶端105傳輸視頻流、音頻流的數(shù)據(jù)通道。
[0023] 參見圖2和圖3,作為一實施例,所述虛擬機102上的視頻分離通過設(shè)置在虛擬機 102中的視頻播放器103進行的,分離后的數(shù)據(jù)中,所述音頻流為編碼后的音頻流,所述視 頻幀為編碼后的視頻幀。所述獲取的虛擬機102上的視頻顯示窗口數(shù)據(jù),包括視頻顯示的 窗口坐標、視頻顯示的坐標、播放進度及其他矩形數(shù)據(jù)。
[0024] 作為一實施例,所述視頻頭用來描述視頻的特征參數(shù),包括視頻編碼標準、視頻碼 率、長寬參數(shù)。
[0025] 具體應用中,作為一個應用,服務器可采用S400 R710戴爾服務器:英特爾至強處 理器 X5650 2. 66GHz,雙通路中央處理器(CPU),96GB 1333MHz RDIMM 內(nèi)存;1TB SAS 硬盤; 兩個5709C雙端口千兆以太網(wǎng));可以虛擬40臺以上虛擬機??蛻艚K端可使用X86雙核 1.6GHZ中央處理器,不支持視頻的硬件解碼和顯示??蛻艚K端也可以使用飛思卡爾半導體 Freescale I.MX53 800GHZ 中央處理器,支持MPEG2/4, H264, VC-1, WMV9視頻的硬件解碼 和顯示。
[0026] 本【技術(shù)領(lǐng)域】中的普通技術(shù)人員應當認識到,以上的實施方式僅是用來說明本發(fā) 明,而并非用作為對本發(fā)明的限定,只要在本發(fā)明的實質(zhì)精神范圍內(nèi),對以上實施方式的變 化、變型都將落在本發(fā)明的權(quán)利要求書范圍內(nèi)。
【權(quán)利要求】
1. 一種基于云計算的虛擬機與客戶端間視頻傳輸方法,其特征在于,包括以下步驟: 將視頻在虛擬機上分離成視頻流和音頻流,再將所述視頻流分離成視頻頭與視頻幀; 通過云桌面協(xié)議主控通道獲取客戶端與虛擬機對應的網(wǎng)絡(luò)地址,建立客戶端與虛擬機 的數(shù)據(jù)傳輸通道; 通過UDP用戶數(shù)據(jù)包協(xié)議將所述分離的視頻、音頻數(shù)據(jù)從所述數(shù)據(jù)傳輸通道傳輸?shù)娇?戶端; 獲取虛擬機上的視頻顯示窗口數(shù)據(jù),并將其通過云桌面協(xié)議主控通道傳輸給客戶端。
2. 如權(quán)利要求1所述的方法,其特征在于,所述虛擬機上的視頻分離通過設(shè)置在虛擬 機中的視頻播放器進行的,分離后的數(shù)據(jù)中,所述音頻流為編碼后的音頻流,所述視頻幀為 編碼后的視頻幀。
3. 如權(quán)利要求1或2所述的方法,其特征在于,所述獲取的虛擬機上的視頻顯示窗口數(shù) 據(jù),包括視頻顯示的窗口坐標、視頻顯示的坐標、播放進度及其他矩形數(shù)據(jù)。
4. 如權(quán)利要求3所述的方法,其特征在于,所述視頻頭用來描述視頻的特征參數(shù),包括 視頻編碼標準、視頻碼率、長寬參數(shù)。
5. 如權(quán)利要求4所述的方法,其特征在于,所述虛擬機架設(shè)在云計算服務器上,虛擬機 與服務器之間信號通道雙向通訊。
6. 如權(quán)利要求5所述的方法,其特征在于,所述云桌面協(xié)議主控通道是虛擬機通過因 特網(wǎng)與客戶端進行通信與控制的信號通道。
7. 如權(quán)利要求6所述的方法,其特征在于,所述客戶端與虛擬機的數(shù)據(jù)傳輸通道是虛 擬機通過因特網(wǎng)向客戶端傳輸視頻流、音頻流的數(shù)據(jù)通道。
【文檔編號】H04L29/06GK104144178SQ201310164257
【公開日】2014年11月12日 申請日期:2013年5月7日 優(yōu)先權(quán)日:2013年5月7日
【發(fā)明者】雷州, 陽海華, 范申莎 申請人:上海國富光啟云計算科技有限公司