淺談基于ASP.NET MVC的多媒體網(wǎng)絡(luò)發(fā)布管理平臺的開發(fā)論文
淺談基于ASP.NET MVC的多媒體網(wǎng)絡(luò)發(fā)布管理平臺的開發(fā)論文
與傳統(tǒng)的音視頻設(shè)備采用的工作方式不同,網(wǎng)絡(luò)媒體依賴IT設(shè)備開發(fā)商們提供的技術(shù)和設(shè)備來傳輸、存儲和處理音視頻信號。最流行的傳統(tǒng)的SDI(串型數(shù)字)傳輸方式缺乏真正意義上的網(wǎng)絡(luò)交換特性。需要做大量的工作才可能利用SDI創(chuàng)建類似以太網(wǎng)和IP(因特網(wǎng)協(xié)議)所提供的部分網(wǎng)絡(luò)功能。所以,視頻行業(yè)中的網(wǎng)絡(luò)媒體技術(shù)就應(yīng)運(yùn)而生。以下是學(xué)習(xí)啦小編今天為大家精心準(zhǔn)備的:淺談基于ASP. NET MVC的多媒體網(wǎng)絡(luò)發(fā)布管理平臺的開發(fā)相關(guān)論文。內(nèi)容僅供參考,歡迎閱讀!
淺談基于ASP. NET MVC的多媒體網(wǎng)絡(luò)發(fā)布管理平臺的開發(fā)全文如下:
計算機(jī)多媒體技術(shù)提供了融文字、圖形、圖像、動畫、音頻與視頻等多種信息形式為一體的數(shù)字化信息傳播載體。與單一信息載體技術(shù)相比,多媒體具有信息量大、形式豐富與表現(xiàn)力強(qiáng)等優(yōu)勢,產(chǎn)生了大量多媒體計算機(jī)應(yīng)用。多媒體網(wǎng)絡(luò)發(fā)布系統(tǒng)即為其中的一種新興多媒體應(yīng)用,它能夠通過廣泛部署的計算機(jī)網(wǎng)絡(luò)將服務(wù)器上的多媒體信息實時地發(fā)布或即時地更新到位于各個不同地點的多媒體播放終端。作為一種新的信息通告與發(fā)布形式,多媒體網(wǎng)絡(luò)發(fā)布應(yīng)用呈現(xiàn)出豐富多變的視聽效果和富有沖擊力的感官效果,能夠替代海報和燈箱等傳統(tǒng)信息傳播方式,可廣泛運(yùn)用于學(xué)校、工廠、商場、賓館、醫(yī)院和智能樓宇等各種場所。
多媒體網(wǎng)絡(luò)發(fā)布管理是整個多媒體發(fā)布系統(tǒng)中的關(guān)鍵,業(yè)務(wù)人員通過管理平臺將數(shù)字化圖像、音頻、視頻、文字等信息內(nèi)容編排成為待發(fā)布的節(jié)目單,并為節(jié)目單指定播放終端設(shè)備,從而規(guī)范發(fā)布業(yè)務(wù)管理與提高運(yùn)行效率。文中采用領(lǐng)域驅(qū)動設(shè)計思想對網(wǎng)絡(luò)多媒體發(fā)布管理平臺的業(yè)務(wù)進(jìn)行分析設(shè)計,并采用ASP. NET MVC與Entity Framework構(gòu)造多層Web 應(yīng)用架構(gòu),滿足平臺開發(fā)過程中的需求變化,降低項目開發(fā)難度。
1 需求分析
在多媒體網(wǎng)絡(luò)發(fā)布系統(tǒng)中,業(yè)務(wù)人員通過集中式的發(fā)布系統(tǒng)管理平臺,處理多媒體播放計劃制訂、播放終端設(shè)備分組及多媒體素材存儲等管理問題。多媒體網(wǎng)絡(luò)發(fā)布系統(tǒng)的主要組成部分包括多媒體網(wǎng)絡(luò)發(fā)布管理平臺、多媒體網(wǎng)絡(luò)發(fā)布服務(wù)平臺、管理終端、播放終端組、網(wǎng)絡(luò)等。其中,業(yè)務(wù)人員根據(jù)身體業(yè)務(wù)將各個播放終端劃分為不同的播放終端組,組內(nèi)所有終端所播放節(jié)目是相同的; 業(yè)務(wù)人員在管理終端通過瀏覽器進(jìn)行遠(yuǎn)程管理; 多媒體發(fā)布服務(wù)平臺存儲有需要通過網(wǎng)絡(luò)發(fā)布到播放終端組的各多媒體節(jié)目。因此,多媒體發(fā)布管理平臺負(fù)責(zé)整個系統(tǒng)及業(yè)務(wù)的統(tǒng)一管理,是本文的主要設(shè)計研究目標(biāo)。
1. 1 管理平臺目標(biāo)分析
多媒體發(fā)布業(yè)務(wù)的統(tǒng)一管理是實現(xiàn)多媒體網(wǎng)絡(luò)發(fā)布應(yīng)用的關(guān)鍵。為了規(guī)范發(fā)布業(yè)務(wù)流程、及時部署或更新信息、提高效率,其主要設(shè)計目標(biāo)為:
多媒體信息素材資源的統(tǒng)一管理。通過發(fā)布管理平臺,能夠方便地對多媒體信息素材進(jìn)行增加、刪除、查找、重命名與分類等各項操作,進(jìn)而統(tǒng)一存儲與共享信息素材,以便在不同的發(fā)布計劃中重復(fù)使用。
多媒體播放終端設(shè)備的統(tǒng)一管理。為了保障業(yè)務(wù),通過管理平臺對播放終端統(tǒng)一地進(jìn)行實時狀態(tài)監(jiān)測、遠(yuǎn)程管理與控制,并能夠?qū)Σシ沤K端進(jìn)行分組管理,以及采集存儲播放終端的相關(guān)日志記錄。
多媒體節(jié)目制作與發(fā)布業(yè)務(wù)的統(tǒng)一管理。通過Web 瀏覽器訪問管理平臺,根據(jù)業(yè)務(wù)要求對多媒體信息素材進(jìn)行加工編排,并制訂發(fā)布任務(wù)計劃、指定發(fā)布的播放終端組,解決手工發(fā)布方式的費時、費力、易出錯與非實時性等弊端。
1. 2 管理平臺業(yè)務(wù)分析
由管理平臺目標(biāo)分析可知,多媒體網(wǎng)絡(luò)發(fā)布管理平臺可以統(tǒng)一管理與操作所有的業(yè)務(wù)。在傳統(tǒng)手工多媒體節(jié)目發(fā)布方式中,業(yè)務(wù)人員事先準(zhǔn)備多媒體節(jié)目,并拷貝到U 盤等便攜存儲設(shè)備,然后到終端設(shè)備的現(xiàn)場進(jìn)行節(jié)目更換,因此產(chǎn)生高昂的時間、人力與管理成本,且不具備實時性與即時性。而采用多媒體網(wǎng)絡(luò)發(fā)布方式,業(yè)務(wù)人員可以通過網(wǎng)絡(luò)將多媒體節(jié)目發(fā)布到各個播放終端。多媒體網(wǎng)絡(luò)發(fā)布管理平臺的主要業(yè)務(wù)流程為:
業(yè)務(wù)人員接收到一個新的多媒體發(fā)布業(yè)務(wù)時,通過Web 瀏覽器登錄到多媒體發(fā)布管理平臺,創(chuàng)建一個新的播放計劃;
為了能夠向多個播放終端發(fā)送多媒體信息,需要為播放計劃選擇一個播放終端組。如果該播放終端組不存在,則創(chuàng)建一個新播放終端組;
然后,業(yè)務(wù)人員可為這個播放計劃創(chuàng)建一個多媒體節(jié)目。多媒體節(jié)目由圖像、音頻、視頻、文本、動畫等多媒體信息素材組成;
新建的多媒體節(jié)目被提交給審核人員。經(jīng)過審核后,進(jìn)入到節(jié)目排程步驟;在節(jié)目排程中,確定播放計劃的播放時間,最終提交給審核人員。如果通過審核,則整個播放計劃進(jìn)入待發(fā)布狀態(tài)。如果未通過審批,則進(jìn)行修改。
1. 3 管理平臺功能分析
為了達(dá)到設(shè)計目標(biāo)和滿足業(yè)務(wù)流程需求,多媒體網(wǎng)絡(luò)發(fā)布平臺的管理功能應(yīng)該包含多媒體信息管理、多媒體播放管理、終端設(shè)備管理與系統(tǒng)管理等主要功能模塊,如圖3 所示。各功能模塊的主要功能為:
多媒體信息管理。包括圖片、音頻、視頻、文本等多媒體素材管理,同時還提供緊急消息管理,業(yè)務(wù)人員可以通過多媒體信息管理功能進(jìn)行多媒體素材和緊急消息的上傳、刪除、重命名、查詢等操作;
終端設(shè)備管理。包括播放終端遠(yuǎn)程設(shè)置、遠(yuǎn)程控制、狀態(tài)監(jiān)視與歷史記錄等功能,業(yè)務(wù)人員可以通過終端設(shè)備管理功能進(jìn)行終端設(shè)備的注冊、建立分組、取消分組等操作,以及設(shè)置設(shè)備的工作參數(shù)、監(jiān)控設(shè)備的工作狀態(tài)等;
多媒體播放管理。包括模板制作管理、節(jié)目制作管理、播放排程管理與播放審核管理等功能,業(yè)務(wù)人員可以通過多媒體播放管理功能進(jìn)行素材選擇、節(jié)目創(chuàng)建、節(jié)目播放方式設(shè)置、節(jié)目播放時間安排與節(jié)目的播放終端組分派等操作;
系統(tǒng)管理。包括用戶管理、系統(tǒng)參數(shù)設(shè)置、權(quán)限管理、角色管理、報表管理等系統(tǒng)管理功能,業(yè)務(wù)人員可以通過系統(tǒng)管理功能對系統(tǒng)進(jìn)行設(shè)置與維護(hù)。
2 管理平臺的設(shè)計與實現(xiàn)
2. 1 管理平臺的架構(gòu)設(shè)計
本管理平臺采用ASP. NET MVC 和Entity Framework 實現(xiàn)Web 應(yīng)用程序四層架構(gòu),從上到下依次為表示層、應(yīng)用層、領(lǐng)域?qū)雍突A(chǔ)設(shè)施層。表示層由Web 資源文件組成,包括ASP. NET Web 頁、JawaScript腳本和其它界面元素,負(fù)責(zé)向用戶展現(xiàn)豐富的界面信息,并執(zhí)行用戶命令。應(yīng)用層負(fù)責(zé)表示層請求的轉(zhuǎn)發(fā)、調(diào)用和驗證,或者處理后臺返回的異常信息,其中的控制器可通過Action 響應(yīng)遠(yuǎn)程的請求。領(lǐng)域?qū)又饕?fù)責(zé)處理整個系統(tǒng)的業(yè)務(wù)邏輯,這一層主要包括業(yè)務(wù)服務(wù)和領(lǐng)域模型?;A(chǔ)設(shè)施層負(fù)責(zé)數(shù)據(jù)持久化,采用ORM 實現(xiàn)數(shù)據(jù)源的訪問。
2. 2 管理平臺的領(lǐng)域?qū)釉O(shè)計與實現(xiàn)
根據(jù)多媒體信息發(fā)布業(yè)務(wù)分析,最終得到管理平臺的領(lǐng)域模型。在這個領(lǐng)域模型中,存在播放計劃、節(jié)目、幻燈片和播放終端組等四個聚合。
播放計劃聚合由節(jié)目排程、播放終端組與節(jié)目等三個實體組成。其中,節(jié)目排程是聚合根,節(jié)目排程與播放終端組是一對多關(guān)聯(lián)關(guān)系; 節(jié)目排程與節(jié)目是多對多關(guān)聯(lián)關(guān)系,因此增加節(jié)目引用實體,將這個多對多關(guān)聯(lián)關(guān)系轉(zhuǎn)換為兩個一對多關(guān)聯(lián)關(guān)系。
節(jié)目聚合由節(jié)目、視頻和幻燈片等三個實體組成。其中,節(jié)目是聚合根,節(jié)目與視頻、節(jié)目與幻燈片是多對多關(guān)聯(lián)關(guān)系,因此分別增加視頻引用實體、幻燈片引用實體。
燈片聚合由幻燈片、音頻、圖片、文字和模板等五個實體所構(gòu)成。其中,幻燈片是聚合根,模板與幻燈片是一對多關(guān)聯(lián)關(guān)系; 幻燈片與音頻、幻燈片與圖片、幻燈片與文字是多對多關(guān)聯(lián)關(guān)系,因此增加音頻引用、圖片引用與文字引用等三個實體。
播放終端組聚合由播放終端組、播放終端和用戶賬號等三個實體所構(gòu)成。其中,播放終端組是聚合根,播放終端組與播放終端、用戶賬號和播放終端組是一對多關(guān)聯(lián)關(guān)系。
2. 3 管理平臺的基礎(chǔ)設(shè)施層設(shè)計與實現(xiàn)
管理平臺的基礎(chǔ)設(shè)施層是四層結(jié)構(gòu)的底層,直接與數(shù)據(jù)庫進(jìn)行交互,并將關(guān)系數(shù)據(jù)庫的數(shù)據(jù)表轉(zhuǎn)化為對象模型,然后提供給上層的領(lǐng)域?qū)?。系統(tǒng)采用Entity Framework 的Repository 模式和LINQ實現(xiàn)數(shù)據(jù)庫的訪問,隱藏底層數(shù)據(jù)存儲的技術(shù)細(xì)節(jié)與差異,使開發(fā)人員專注于業(yè)務(wù)邏輯的分析與開發(fā),提高系統(tǒng)的可維護(hù)性和可擴(kuò)展性。在管理平臺中的Repository 模式開發(fā)中,為每一個領(lǐng)域?qū)拥膶嶓w對象創(chuàng)建一個IRopository 接口并定義實體操作類,并在系統(tǒng)的應(yīng)用層中創(chuàng)建一個相對應(yīng)的控制器類,從而實現(xiàn)業(yè)務(wù)邏輯與數(shù)據(jù)庫的解耦。
2. 4 應(yīng)用層的設(shè)計與實現(xiàn)
應(yīng)用層位于表示層和領(lǐng)域?qū)又g,處理管理平臺的業(yè)務(wù)邏輯。根據(jù)領(lǐng)域?qū)拥膶嶓w對象設(shè)計和基礎(chǔ)設(shè)施層的數(shù)據(jù)訪問設(shè)計,在應(yīng)用層上采用ASP. NET MVC 的控制器實現(xiàn)管理平臺的用戶操作功能,解決了傳統(tǒng)ASP. NET WebForms 應(yīng)用程序框架中的前端網(wǎng)頁界面與后臺業(yè)務(wù)邏輯代碼之間的高耦合性問題,從而使人機(jī)交互和業(yè)務(wù)邏輯的開發(fā)過程相對獨立,并對這兩個部分的實現(xiàn)進(jìn)行分離。系統(tǒng)開發(fā)中,使用基礎(chǔ)設(shè)施層已經(jīng)定義的IRopository 類和實體操作類來實現(xiàn)各個業(yè)務(wù)的控制器,最終到表示層提供數(shù)據(jù)表示所需的對象,從而使業(yè)務(wù)邏輯與表示層視圖的開發(fā)過程解耦。
2. 5 表示層的設(shè)計與實現(xiàn)
管理平臺的表示層是用戶與系統(tǒng)人機(jī)交互的接口,其作用是將用戶輸入的請求傳遞給模型、接收模型的處理結(jié)果并呈現(xiàn)給用戶。人機(jī)交互和業(yè)務(wù)邏輯的開發(fā)過程應(yīng)該相互獨立,需要對這兩個部分的實現(xiàn)進(jìn)行解耦,因此采用ASP. NET MVC 的視圖View。View 視圖引擎Razor,包含了Knockoutjs、jQuery UI、jQuery validation 等AJAX 前端技術(shù),語法簡潔,不包含業(yè)務(wù)邏輯處理的代碼,能有效地適應(yīng)用戶需求的變更。
3 結(jié)語
本文采用領(lǐng)域驅(qū)動設(shè)計思想,對多媒體網(wǎng)絡(luò)發(fā)布管理的業(yè)務(wù)處理流程和功能需求進(jìn)行了分析,創(chuàng)建了多媒體網(wǎng)絡(luò)發(fā)布管理平臺的領(lǐng)域模型,并采用ASP. NET MVC 和Entity Framework 實現(xiàn)多媒體網(wǎng)絡(luò)發(fā)布管理平臺的四層Web 應(yīng)用程序架構(gòu),解決了管理平臺開發(fā)過程的前端頁面和后臺代碼、業(yè)務(wù)邏輯和數(shù)據(jù)庫設(shè)計之間的耦合問題,從而滿足多媒體網(wǎng)絡(luò)發(fā)布業(yè)務(wù)規(guī)范管理的要求。