姬艷峰 夏明飛 楊安洪
【摘要】 隨著IP網(wǎng)建設(shè)的逐漸完善,現(xiàn)有調(diào)度的局限性也逐漸顯現(xiàn)出來,基于IP的多媒體技術(shù)無疑為我們提供了一個很好的思路,本文就多媒體調(diào)度系統(tǒng)的特點進行了簡要闡述,并對實現(xiàn)方法進行了合理探討。
【關(guān)鍵字】 調(diào)度系統(tǒng) 多媒體 FMS AS 3.0
一、現(xiàn)有調(diào)度局限性
通過對上圖分析,可知現(xiàn)有調(diào)度系統(tǒng)局限性如下:
1) 現(xiàn)有交換網(wǎng)不支持視頻、數(shù)據(jù)等多媒體業(yè)務(wù)。傳統(tǒng)電路交換網(wǎng)絡(luò)采用PCM編碼和窄帶交換方式,大量的撥號數(shù)據(jù)業(yè)務(wù)造成語音網(wǎng)絡(luò)的擁塞,且傳統(tǒng)交換網(wǎng)無法適應(yīng)各種多媒體業(yè)務(wù)的應(yīng)用。2) 系統(tǒng)擴容受設(shè)備硬件容量限制,設(shè)備后期擴容投資成本高。3) 調(diào)度交換網(wǎng)絡(luò)是一個封閉的網(wǎng)絡(luò),開放性不夠,用戶的接入實現(xiàn)起來步驟比較繁瑣。4) 現(xiàn)有調(diào)度系統(tǒng)通過擴展IP板提供網(wǎng)絡(luò)接口,來實現(xiàn)與IP網(wǎng)的互聯(lián)。嚴(yán)格而言,仍是獨立于IP網(wǎng)存在,因此需單獨配備相應(yīng)的管理和操作維護人員,以保證網(wǎng)絡(luò)的暢通和提供高質(zhì)量的服務(wù)。這就造成網(wǎng)絡(luò)管理的維護工作量大。5) 現(xiàn)有調(diào)度系統(tǒng)硬件組成復(fù)雜。
二、多媒體調(diào)度的一種實現(xiàn)方法
2.1 多媒體調(diào)度組成圖及原理圖
1)硬件組成
服務(wù)器計算機、客戶端計算機、網(wǎng)絡(luò)交換機、攝像頭、麥克風(fēng)、揚聲音響。多媒體調(diào)度硬件組成原理,如圖1。
2) 軟件組成
Windows server 2003及以上版本、windows xp操作系統(tǒng)、Flash Media Server 4(FMS)和Flash Player 10.1應(yīng)用軟件。多媒體調(diào)度軟件實現(xiàn),如圖2。
2.2 多媒體調(diào)度系統(tǒng)調(diào)度功能實現(xiàn)的簡介
多媒體調(diào)度系統(tǒng)主要實現(xiàn)指揮員對用戶的音視頻調(diào)度指揮、音視頻數(shù)據(jù)的錄制、檢測用戶在線狀態(tài)、非會議用戶的請離等調(diào)度功能,完全能滿足團站調(diào)度指揮的需要。
本調(diào)度系統(tǒng)是基于Flash Media Server 4的二次開發(fā),利用AS 3.0腳本語言編程實現(xiàn)。調(diào)度軟件在Flash Media Server4應(yīng)用軟件配合下,實現(xiàn)多方音視頻會議、數(shù)據(jù)傳輸、音視頻數(shù)據(jù)的錄制等調(diào)度功能, 通過服務(wù)器實現(xiàn)音視頻數(shù)據(jù)的共享轉(zhuǎn)發(fā)和對調(diào)度用戶的控制。
2.3多媒體調(diào)度軟件設(shè)計實現(xiàn)思路
1)利用NetConnection對象和SharedObject對象
當(dāng)用戶申請連接時,通過NetConnection對象報告其狀態(tài),實現(xiàn)顯示與FMS連接成功與否的告知;sharedObject 對象中的數(shù)據(jù)(即聊天記錄)被任何一個client(用戶)所修改,那么FMS會把當(dāng)前的sharedObject 中的最新聊天記錄廣播給所有的client (用戶),使得client (用戶)聊天窗口中顯示的數(shù)據(jù)刷新。sharedObject實現(xiàn)原理,如圖3。
通過針對這兩個對象的編程,可實現(xiàn)對用戶和服務(wù)器連接情況的檢測和連接后的用戶聊天記錄的廣播顯示。
2)打造在線視頻錄制和回放
a.創(chuàng)建一個 NetConnection 對象。 b.使用 NetConnection. connect() 方法連接到服務(wù)器上的應(yīng)用程序?qū)嵗?c.創(chuàng)建一個 NetStream 對象,以便在連接中創(chuàng)建數(shù)據(jù)流。 d.使用NetStream.attachAudio() 方法捕獲音頻并通過該流進行發(fā)送,然后使用 NetStream.attachCamera() 方法捕獲并發(fā)送視頻。 e.使用 NetStream.publish() 方法為該流指定唯一的名稱,然后通過該流將數(shù)據(jù)發(fā)送到服務(wù)器,以使其他用戶能夠收到該數(shù)據(jù)。您還可以在發(fā)布數(shù)據(jù)時進行錄制,以便用戶可以在日后回放該數(shù)據(jù)。f. publish () 方法:將音頻流、視頻流和文本消息流從客戶端發(fā)送到 Flash Media Server,并可選擇在傳輸期間錄制該流。參加會議的用戶將自己本地攝像頭捕捉到的畫面publish到FMS,存放在FMS端userList這個集合對象中,集合中存放的是每個用戶名也就是他們發(fā)布視頻的名字。每當(dāng)有新用戶加入或者退出會議的時候,F(xiàn)MS就把這個userList廣播給每個還在線的用戶。用戶取得userList只需播放其他幾個用戶的視頻即可。在線用戶視頻會議實現(xiàn)原理,如圖4。
通過針對這些方法的編程可以實現(xiàn),用戶之間音視頻會議的建立,音視頻數(shù)據(jù)的錄制保存及在線用戶的顯示。
3)服務(wù)器端的asc文件和客戶端
asc文件中有2個重要的類:
Application類:Application類包含有關(guān)一個Flash Media Server應(yīng)用程序?qū)嵗男畔?,它會一直維持這些信息直到這個應(yīng)用程序?qū)嵗恍遁d。
Client類:Client類讓你處理連接到一個Flash Media Server應(yīng)用程序?qū)嵗拿恳粋€用戶或說client。
Application類有幾個重要事件如下:
Application.onAppStart 當(dāng)這個應(yīng)用程序被服務(wù)器裝載時調(diào)用。
Application.onAppStop 當(dāng)這個應(yīng)用程序被服務(wù)器卸載時調(diào)用。
Application.onConnect 當(dāng)一個客戶機連接到這個應(yīng)用程序時調(diào)用。
Application.onDisconnect 當(dāng)一個客戶機從這個應(yīng)用程序斷開連接時調(diào)用。
Application類有幾個重要方法如下:
Application.acceptConnection() 接受一個來自客戶機的至一個應(yīng)用程序的連接。
Application.broadcastMsg() 向所有連接的客戶機廣播一條消息。
Application.disconnect() 從服務(wù)器斷開一個客戶機的連接。
Application.rejectConnection() 拒絕至一個應(yīng)用程序的連接。
Client類有1重要方法如下:
Client.call() 在Flash客戶機上異步的執(zhí)行一個方法,并把值從Flash客戶機返回到服務(wù)器。
通過針對這兩個類的編程,實現(xiàn)服務(wù)器對客戶機連接和斷開連接請求的的響應(yīng),為指揮員斷開某用戶連接和向用戶廣播信息,提供主動控制功能。
4)利用Camera.getCamera()
通過Camera.getCamera()方法實現(xiàn)檢測攝像頭的使用情況。
5)實現(xiàn)登陸時動態(tài)設(shè)置FMS服務(wù)器鏈接地址
三、優(yōu)點和不足
多媒體調(diào)度優(yōu)點:1)支持視頻、音頻、數(shù)據(jù)等多媒體業(yè)務(wù)。2)立足現(xiàn)有設(shè)備構(gòu)建,設(shè)備后期投資成本低。3)系統(tǒng)基于IP網(wǎng)絡(luò),開放性好,用戶的接入方便。4)設(shè)備組成簡單,便于維護。多媒體調(diào)度不足:1)音視頻數(shù)據(jù)傳輸,對網(wǎng)絡(luò)帶寬要求高。2)音視頻處理,對系統(tǒng)配要求高。
四、結(jié)束語
指揮調(diào)度通信系統(tǒng)是根據(jù)指揮關(guān)系建立的用于保障指揮的專用通信系統(tǒng),在很多行業(yè)通信保障中發(fā)揮著重要作用?;贗P網(wǎng)絡(luò)構(gòu)建語音、視頻和數(shù)據(jù)于一體的多媒體調(diào)度系統(tǒng)更成了一種必然要求。隨著計算機技術(shù)、通信技術(shù)、多媒體技術(shù)的迅猛發(fā)展和社會需求的日益增長,使調(diào)度通信的寬帶化、數(shù)字化、網(wǎng)絡(luò)化、多媒體化成為可能。
參 考 文 獻
[1] ActionScript 3.0編程精髓 Colin Moock 機械工業(yè)出版社
[2] Flash ActionScript 3.0開發(fā)王 張亞飛 電子工業(yè)出版社