本發(fā)明涉及一種基于云端的視頻編輯系統(tǒng)及方法。
背景技術:
現(xiàn)有的視頻編輯一般采用如下方法:視頻、音頻等數(shù)字內容通過算法壓縮后,通過容器技術封裝成一個文件(例如avi容器封裝有h264編碼的視頻內容和acc編碼的音頻內容),任何時候,想要對此文件進行預覽、編輯時,都要對壓縮內容進行解碼,還原原始信息,再交由應用層進行處理。對內容進行更改后,保存時,更要對信息進行編碼壓縮處理,而編碼壓縮是一項大計算量的工作,對本地的硬件有較高的要求,如果硬件能力不夠強大,不僅處理過程緩慢、耗時,更影響其他應用程序的運行,降低本地的工作效率。
技術實現(xiàn)要素:
本發(fā)明要解決的技術問題是克服現(xiàn)有技術的缺陷,提供一種基于云端的視頻編輯系統(tǒng)及方法,通過將運算放到云端進行,使得本地不需要進行大計算量的工作,降低對本地計算資源的依賴,且將視頻資料存儲于云端,可實現(xiàn)到任意終端都可繼續(xù)未完成之工作。
為了解決上述技術問題,本發(fā)明提供了如下的技術方案:
本發(fā)明一方面公開了一種基于云端的視頻編輯系統(tǒng),其包括客戶端和云計算集群;
所述云計算集群由若干臺計算機或虛擬機通過萬兆網絡互聯(lián);
所述云計算集群包括應用服務器、存儲服務器、管理服務器和分析節(jié)點服務器;
所述應用服務器用于負責提供web交互界面和任務調度;
所述存儲服務器,其用于存儲上傳的視頻;
所述分析節(jié)點服務器,其用于分析管理服務器獲取到的http鏈接的任務和通過http插件獲取http文件流,并進行處理。
本發(fā)明另一方面公開了一種基于云端的視頻編輯方法,其包括以下步驟:
s1、用戶登錄應用服務器后,需要將本地需要進行處理的視頻文件上傳到云端;
s2、上傳后位于云端的視頻文件,用戶可通過系統(tǒng)提供的流媒體服務進行實時點播預覽,而無需下載到本地;
s3、系統(tǒng)提供基于ie瀏覽器的activex控件,用于對云端的視頻作各種編輯操作,用戶在客戶機上下發(fā)各種操作命令,位于云端的服務實時處理收到的命令,并將處理的結果返回到客戶端。
進一步地,步驟s1中,由于用戶上傳的視頻格式無法預估,為了提高后臺的計算效率,上傳完成后,系統(tǒng)對上傳的文件進行轉碼,轉碼過程自動根據(jù)視頻的分辨率設置相應的碼率,使得轉碼后的視頻畫質不會發(fā)生改變。
進一步地,系統(tǒng)將用戶上傳的單個文件存儲于單個計算節(jié)點,并通過nginx暴露出來,當要處理的工作跨越2個文件且2個文件不處于同一個計算節(jié)點時,需要其中的某個計算節(jié)點將另一個文件抓取到本地。
本發(fā)明所達到的有益效果是:
本發(fā)明通過采用云端計算集群負擔了大量的編碼運算和文件存儲任務,大大減小了客戶端的運算工作,使得視頻編輯的工作可以在任意配置的客戶機上進行,且將任務放置到云端,可實現(xiàn)協(xié)同、異地辦公。
附圖說明
附圖用來提供對本發(fā)明的進一步理解,并且構成說明書的一部分,與本發(fā)明的實施例一起用于解釋本發(fā)明,并不構成對本發(fā)明的限制。在附圖中:
圖1是本發(fā)明的結構示意圖。
具體實施方式
以下結合附圖對本發(fā)明的優(yōu)選實施例進行說明,應當理解,此處所描述的優(yōu)選實施例僅用于說明和解釋本發(fā)明,并不用于限定本發(fā)明。
如圖1所示,一種基于云端的視頻編輯系統(tǒng),其包括客戶端和云計算集群;
所述云計算集群由若干臺計算機或虛擬機通過萬兆網絡互聯(lián);
所述云計算集群包括應用服務器、存儲服務器、管理服務器和分析節(jié)點服務器;
所述應用服務器用于負責提供web交互界面和任務調度;
所述存儲服務器,其用于存儲上傳的視頻;
所述分析節(jié)點服務器,其用于分析管理服務器獲取到的http鏈接的任務和通過http插件獲取http文件流,并進行處理。
一種基于云端的視頻編輯方法,其包括以下步驟:
計算集群中的計算節(jié)點,在應用服務器中注冊自己(通過ip);
用戶登錄應用服務器后,需要將本地需要進行處理的視頻文件上傳到云端。由于用戶上傳的視頻格式無法預估,為了提高后臺的計算效率,上傳完成后,系統(tǒng)對上傳的文件進行轉碼,轉碼過程自動根據(jù)視頻的分辨率設置相應的碼率,使得轉碼后的視頻畫質不會發(fā)生改變;
上傳后位于云端的視頻文件,用戶可通過系統(tǒng)提供的流媒體服務進行實時點播預覽(解碼位于本地),而無需下載到本地;
系統(tǒng)提供基于ie瀏覽器的activex控件,用于對云端的視頻作各種編輯操作,用戶在客戶機上下發(fā)各種操作命令,位于云端的服務實時處理收到的命令,并將處理的結果返回到客戶端;
由于視頻資料是一種前后相關的流式存儲文件(某一段數(shù)據(jù)的丟失會導致后續(xù)一部分數(shù)據(jù)無法解碼),故系統(tǒng)將用戶上傳的單個文件存儲于單個計算節(jié)點,并通過nginx(一種流行且高效的http服務)暴露出來,當要處理的工作跨越2個文件且2個文件不處于同一個計算節(jié)點時,需要其中的某個計算節(jié)點將另一個文件抓取到本地。在萬兆網絡的環(huán)境下,一個2gb大小的視頻文件,通過如下計算,耗時大約在30s;
文件大?。?gb=2*1024*1024*1024*8=17179869184(bit),
網絡帶寬:10*1024*1024*1024=10737418240(bit)
網絡傳輸耗時~=17179869184/10737418240=1.6(秒)
硬盤的讀寫速度:sata2(7200轉)~=150mb/s
文件移動過程中硬盤的讀寫過程:2*1024/150=13.6(秒)
考慮到其他應用的影響(其他應用也會占用磁盤空間、帶寬),我們假設50%的影響,那么耗時大約為:13.6*2=27(秒)。
與文件的整個編碼過程相比,文件在移動過程中的耗時可以忽略不計(由于不同的硬件、視頻內容的復雜度等因素的影響較大,在這里不再枚舉編碼過程中的耗時)。
最后應說明的是:以上所述僅為本發(fā)明的優(yōu)選實施例而已,并不用于限制本發(fā)明,盡管參照前述實施例對本發(fā)明進行了詳細的說明,對于本領域的技術人員來說,其依然可以對前述各實施例所記載的技術方案進行修改,或者對其中部分技術特征進行等同替換。凡在本發(fā)明的精神和原則之內,所作的任何修改、等同替換、改進等,均應包含在本發(fā)明的保護范圍之內。