亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于云計算平臺的視頻轉碼設計與應用

        2014-10-20 06:04:54吳旻倩秦川
        電腦知識與技術 2014年25期
        關鍵詞:云計算

        吳旻倩 秦川

        摘要:隨著高清視頻的普及和發(fā)展,視頻服務提供商面臨著高清晰度視頻轉碼的需求日益增加。視頻轉碼既是計算密集型工作又是數(shù)據(jù)密集型工作,需要大量消耗計算機資源,但是最終會因為單計算節(jié)點的物理條件和轉碼算法的并發(fā)能力受到限制,造成轉碼速度提升不大。該文依托云計算平臺將單個轉碼任務同時發(fā)送到多個計算節(jié)點,以提高視頻轉碼的速度。

        關鍵詞:云計算;Hadoop;視頻轉碼

        中圖分類號:TP393 文獻標識碼:A 文章編號:1009-3044(2014)25-5979-02

        隨著計算機技術和網(wǎng)絡技術的發(fā)展,網(wǎng)絡為我們提供各種服務。其中視頻提供服務就是一種典型的網(wǎng)絡服務,市場規(guī)模日益擴大,發(fā)展?jié)摿O大。通常在用戶的播放終端不同的情況下,又要讓用戶能正常觀看視頻。要達到這樣的效果就要掌握視頻轉換的關鍵技術-視頻轉碼,視頻轉碼要在終端數(shù)據(jù)處理能力不同、終端數(shù)據(jù)顯示功能不同、終端網(wǎng)絡帶寬不同、終端數(shù)據(jù)包丟失率不同等情況下進行轉換。從視頻轉碼軟件的發(fā)展歷程來看,早期視頻轉碼簡單依靠單個CPU的通用計算能力來實現(xiàn),而今發(fā)展到利用CPU的多功能指令集。從早期的VCD(碼率1.5Mbps),到有限的標清DVD(碼率4.5Mbps),再到波長更短的高清藍光(碼率25Mbps),復雜的轉碼技術接踵而來。視頻轉碼的并行化已儼然成為了一種潮流,它是伴隨多核計算機的普及、并行計算思想的發(fā)展相呼應的必然結果。使用多線程技術,使多核CPU在視頻轉碼工作中充分發(fā)揮并行處理性能,實現(xiàn)像組級、幀級、片級或模塊級的并行策略,但這種策略仍然受到轉碼算法和CPU數(shù)量或本身并發(fā)能力的限制,使并發(fā)率上升空間有限。

        Hadoop是并行編程系統(tǒng),適合于處理大規(guī)模數(shù)據(jù),可根據(jù)輸入的數(shù)據(jù)分布信息,自動創(chuàng)建并行子任務形成一個集合,使子任務在合適的集群節(jié)點上并行執(zhí)行的一個開源云計算框架。Hadoop系統(tǒng)的核心模塊就是MapReduce,該模塊極大地方便了程序員在不會分布式并行編程的情況下,將自己的程序運行在分布式系統(tǒng)上。程序員要做的僅僅是按照MapReduce編程規(guī)范定義好map(映射)函數(shù)、reduce(規(guī)約)函數(shù),而不需要關心節(jié)點和任務的失效及任務之間的數(shù)據(jù)等問題,就能完成分布式數(shù)據(jù)處理問題。在本文中通過基于云計算平臺的MapReduce開發(fā)框架,將轉碼任務并發(fā)到多個計算節(jié)點,每個計算節(jié)點在同一時間對同一個視頻文件的不同部分各自進行轉碼,系統(tǒng)再將分段轉碼結束后的視頻文件整合成單個視頻,即完成單個轉碼任務。

        1 基于云計算平臺的視頻轉碼系統(tǒng)

        1.1 系統(tǒng)設計原理

        本系統(tǒng)設計是本著以提升轉碼任務的速度為原則,因為單個計算節(jié)點的物理條件和轉碼算法不會影響并發(fā)能力,使得轉碼任務的速度具備較大的提升空間。基于Hadoop云計算平臺的視頻轉碼系統(tǒng)可以滿足大批量、多用戶視頻轉碼對資源的需求。本系統(tǒng)使用音視頻轉換軟件來實現(xiàn)視頻轉碼,將轉碼功能用MapReduce中map函數(shù)封裝起來。當集群出現(xiàn)大量視頻轉碼任務時,系統(tǒng)會利用集群計算能力和視頻轉碼軟件在集群節(jié)點上自動隨機分配任務,實現(xiàn)多視頻同時在線轉碼。碼率轉換、空間分辨率轉換、時間分辨率轉換、語法轉換、容錯視頻轉碼等的工作全交給已有的轉碼軟件來實現(xiàn)。

        在本系統(tǒng)設計中,使用Java腳本提供的Runtime類函數(shù)調(diào)用轉碼功能代碼。此方法的優(yōu)點是:只要打包后最終的結果是可執(zhí)行文件,無論視頻處理功能是由什么語言編譯的,都可以被MapReduce框架調(diào)用。Java虛擬機的運行時環(huán)境可以通過Runtime類函數(shù)獲取,Runtime類函數(shù)調(diào)用可執(zhí)行文件只要一個取代調(diào)用進程的內(nèi)容的函數(shù)Exec。Exec函數(shù)的參數(shù)是要被調(diào)用的可執(zhí)行文件的命令行,該命令行的值取決于視頻處理功能的具體實現(xiàn)。

        1.2 系統(tǒng)架構實現(xiàn)

        系統(tǒng)整體架構采用Google提出的適用于大規(guī)模數(shù)據(jù)量的并行運算軟件架構“Map-Reduce”, 主要思想是使用一個映射(Map)函數(shù)使用他的拆分功能,將一個將一個大任務拆分成若干個獨立互不干擾的多個小任務,同時將這些小任務映射到多個相應節(jié)點的算法,或使用一個化簡(Reduce)函數(shù)實現(xiàn)一個逆操作(多個相互獨立任務合并成一個任務)。本系統(tǒng)是由存儲系統(tǒng)、任務調(diào)度、碼流預處理、碼流后處理、碼流分割、碼流合并、轉碼節(jié)點等部分組成。映射器承載了將大視頻碼流拆分成多個小段視頻碼流的過程,包括碼流預處理和碼流分割?;喥鞒休d了將小段視頻碼流轉碼、合并和復用的過程,包括轉碼節(jié)點、碼流合并和碼流后處理。

        存儲用戶提交的待轉碼視頻通過視頻接收接口到達存儲系統(tǒng),用戶可通過視頻接收接口獲取轉碼系統(tǒng)成功轉碼后的視頻和相關信息。轉碼系統(tǒng)的核心是任務調(diào)度,主要是管理系統(tǒng)內(nèi)的需要進行計算的所有資源,如遇到新的轉碼任務到達時任務中心時,本系統(tǒng)會自動根據(jù)優(yōu)先級以及當前系統(tǒng)的空閑資源進行分配,然后分配適當?shù)挠嬎阗Y源按順序去完成碼流預處理、碼流分割、轉碼、碼流合并、碼流后處理等步驟。

        碼流預處理對用戶提交的轉碼視頻分析、容器解析,流解復用進行自定義轉碼需求,使視頻和音頻流分離。碼流分割任務調(diào)度模塊按照指示,指定的視頻流被劃分成段,分割時需要連續(xù)的流圖像避免跳幀或重幀現(xiàn)象。任務調(diào)度模塊的指令分配轉碼節(jié)點,讀取分割后的視頻碼流段,根據(jù)用戶設置的轉碼參數(shù)完成轉碼過程。碼流后處理對轉碼合并后的視頻碼流以及轉碼后的音頻碼流按照用戶指定的文件格式進行復用,生成成品文件。

        1.3 視頻拆分算法

        一系列連續(xù)的圖像組成Group Of Pictures(視頻碼流中的圖像組)。在 MPEG編碼中,圖片組即I幀和I幀之間的幀排列。每個圖像組至少有一個I幀,并且I幀處于圖像組的開頭。I幀無需依賴其他幀可以獨立解碼,若干個連續(xù)的圖像組組成了一段視頻碼流。視頻分割的過程中圖像組級別粒子大小適中,相比單一幀的粒子而言,圖像組解碼的獨立性更好;相比完整視頻有更好的轉碼并發(fā)性。

        所以,判斷碼流圖像組的結構在視頻文件拆分的過程中得以體現(xiàn),需要視Open-Gop和Colse-Gop的不同情況分別采取不同的分割策略。例如要保證解碼器能夠解出這個視頻文件中的所有幀,Open-Gop就必須在每一段分割碼流片斷的前面增加一個圖像組的冗余。同時在進行分割時還要將分割策略的選擇情況記錄下來,供編制合并程序時參考使用。

        在拆分后,如果拆分點后的第一個GOP是Open-Gop,需要多加一個GOP在后一段視頻前。相反,如果拆分點后的第一個GOP是Colse-Gop,就不可能會出現(xiàn)無法解碼視頻的情況,因為視頻通常被拆分點劃分成為兩段,拆分過程中還要注意解碼器一段視頻進行每一次解碼時,都要查找對應視頻中的序列頭信息。視碼流的不同會出現(xiàn)每個GOP前都附帶有相同的序列頭,也可能僅僅只開始處包含序列頭。這時,如果出現(xiàn)前者狀態(tài),那么就在拆分時整體分割每個序列頭。如果出現(xiàn)后者狀態(tài),則序列頭添加在拆分之后的每一段子視頻前面。

        2 視頻轉碼系統(tǒng)實驗實施

        為檢測本系統(tǒng)的效果,我們將總時長為60小時的85個高清1080i測試視頻(碼率為50Mbps)進行實驗。當系統(tǒng)架構和核心算法在固定的情況下,如果將這批的視頻轉碼作為單獨的任務,可以用“吞吐量”來考驗衡量系統(tǒng)完成該任務的速度,任務處理時間越短表示系統(tǒng)和外部的吞吐量越大。同理,如果將每一個視頻的轉碼作為單獨的任務,則系統(tǒng)的性能可以使用“超時率”來進行評測,其公式為:超時率=1-視頻時長÷轉碼時長。從這個公式可以看出如果想實時轉碼就是要使超時率為0,也就是說用1個小時轉完1個小時的視頻。當超時率為正表示超實時轉碼。該轉碼系統(tǒng)的性能能力的變化通過調(diào)節(jié)任務并發(fā)數(shù)量來控制,實驗結果如表1所示。

        從實驗結果中,我們可以看到,隨著并發(fā)吞吐數(shù)量的增加,外部吞吐能能力略有下降,因為視頻文件拆分、合并等操作引發(fā)了額外的系統(tǒng)開銷,但單個文件轉碼速度已有顯著提高,由單個節(jié)點的速度嚴重滯后提升到4、5個節(jié)點并發(fā)實時速度。當然,并行計算會帶來額外的開銷,從而導致上升成本,但它縮短了單個任務執(zhí)行時間,需要縮短單個轉碼任務執(zhí)行時間,采用計算機集群并行化是可行的首選方案。

        3 結束語

        在當今日益豐富的視頻服務中,集中式視頻轉碼系統(tǒng)有著存儲容量和數(shù)據(jù)處理能力不足、不可以擴展的缺點。該文提出了一種以云計算框架為基礎的視頻轉碼系統(tǒng),充分發(fā)揮計算機群集的并發(fā)能力。目前,該系統(tǒng)已應用到電大系統(tǒng)教學視頻的生產(chǎn)發(fā)布上,在線視頻點播速度顯著提高。

        參考文獻:

        [1] 曾帥,李樂民,廖丹.一種基于視頻轉碼與IP組播的媒體推送系統(tǒng)設計[J] .計算機應用研究, 2013(2).

        [2] 黃柑波. 基于開放式云轉碼服務平臺的技術研究[J] .IT時代周刊,2013.

        [3] 張宇,劉新,葉德建. 基于分布式流媒體計算框架的轉碼系統(tǒng)的設計與實現(xiàn)[J] .計算機應用與軟件,2013(7).

        [4] 葉世其. 面向服務的云計算框架模型設計與實現(xiàn)[J] .中國新技術新產(chǎn)品, 2013(9).

        [5] 潘小明,張向陽,沈錫鏞,嚴丹. 云計算信息安全測評框架研究[J] .計算機時代, 2013 (2).

        猜你喜歡
        云計算
        志愿服務與“互聯(lián)網(wǎng)+”結合模式探究
        云計算與虛擬化
        基于云計算的移動學習平臺的設計
        實驗云:理論教學與實驗教學深度融合的助推器
        大學教育(2016年9期)2016-10-09 08:54:03
        云計算中的存儲虛擬化技術應用
        科技視界(2016年20期)2016-09-29 13:34:06
        极品成人影院| 亚洲毛片免费观看视频| 国产人妖乱国产精品人妖| 久久人妻内射无码一区三区| 天天综合久久| 美女一区二区三区在线观看视频 | 女邻居的大乳中文字幕| 欧美日韩国产综合aⅴ| 男女搞黄在线观看视频| 亚洲av午夜一区二区三| 国产亚洲真人做受在线观看| 香蕉视频毛片| 国产精品久久国产三级国| 国产亚洲自拍日本亚洲| 欧美大屁股xxxx| 国精品无码一区二区三区在线看| 国产精品久久婷婷六月| 国产区女主播在线观看| 亚洲精品黑牛一区二区三区| 国产av一区二区三区区别| 亚洲精品不卡av在线免费| 国产成人午夜福利在线观看| 久久久久久人妻一区二区三区| 免费一级a毛片在线播出 | 国产不卡视频一区二区在线观看 | 亚洲国产av一区二区三区精品| 中文无码日韩欧| 国产午夜精品理论片| 久久最黄性生活又爽又黄特级片| 女人18片毛片60分钟| 人妻少妇精品视频一区二区三区| 欧美日韩一区二区三区视频在线观看| 美女视频黄a视频全免费网站色| 亚洲第一最快av网站| 国产在线白丝DVD精品| 人妻精品人妻一区二区三区四五 | 人妻夜夜爽天天爽三区麻豆av网站| 国产毛片网| 中文亚洲第一av一区二区| 天天躁夜夜躁狠狠是什么心态 | 一区二区三区视频偷拍|