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