視頻會(huì)議多點(diǎn)控制單元的MCU設(shè)計(jì)與實(shí)現(xiàn)
視頻會(huì)議模式的設(shè)置和參與會(huì)議的成員管理可由MCU控制臺(tái)來(lái)完成。實(shí)際應(yīng)用中,一般會(huì)為每個(gè)會(huì)議配備一個(gè)會(huì)議管理者,又稱(chēng)會(huì)議管理員。會(huì)議管理員可通過(guò)MCU控制臺(tái)對(duì)多點(diǎn)控制單元進(jìn)行遠(yuǎn)程控制,包括設(shè)置會(huì)議開(kāi)始和結(jié)束的時(shí)間、會(huì)議采用的音視頻標(biāo)準(zhǔn)、會(huì)議模式的設(shè)置、與會(huì)者列表的管理以及會(huì)議模板的裝載和保存等。在會(huì)議進(jìn)行中,會(huì)議管理員還可通過(guò)MCU控制臺(tái)對(duì)會(huì)議進(jìn)行調(diào)度,包括指定新的主席、指定新的發(fā)言聽(tīng)眾、取消發(fā)言等。
在分布式會(huì)議方案中,各個(gè)終端均完成一定的控制與交換功能,因而靈活性強(qiáng),與會(huì)端加入/退出會(huì)議功能易于實(shí)現(xiàn),但其通信協(xié)議比較復(fù)雜。控制信息以廣播方式發(fā)送,因而通信效率比較低,所以通常采用集中式實(shí)現(xiàn)方案。有時(shí)候,主席端也可與MCU合并形成一個(gè)超級(jí)服務(wù)端。這種方式可以演化為人們所熟悉的客戶(hù)/服務(wù)器體系。在主席端的機(jī)動(dòng)性要求不高時(shí),這種方式具有非常突出的優(yōu)點(diǎn),如易于實(shí)現(xiàn),控制簡(jiǎn)便等。圖4所示是客戶(hù)/服務(wù)器方式MCU的方案結(jié)構(gòu)。為了保證通用性和機(jī)動(dòng)性,本設(shè)計(jì)采用集中式MCU方案。
2.2 MCU的通信接口設(shè)計(jì)
通信接口的主要功能是數(shù)據(jù)串/并變換與緩存,其作用類(lèi)似于較大輸入輸出緩沖區(qū)的串口擴(kuò)展。從調(diào)制解調(diào)器(Modem)輸入的串行數(shù)據(jù)格式為2-8-1-N,即2 bit起始位,8 bit數(shù)據(jù),1bit停止位,無(wú)奇偶校驗(yàn)。接口卡分離出8 bit數(shù)據(jù)位并對(duì)之進(jìn)行串/并變換后存入輸入緩沖區(qū),緩沖區(qū)是8 kbit的FIFO(先入先出)堆棧,接口卡提供指定的地址以便微機(jī)從中讀取數(shù)據(jù)。微機(jī)輸出的數(shù)據(jù)可寫(xiě)入接口卡的輸出緩沖區(qū)。它也是8 kbit的FIFO堆棧,然后接口卡執(zhí)行相反的操作并將之輸出到Modem[17]。接口卡的原理如圖5所示。
2.3 視頻會(huì)議系統(tǒng)協(xié)議的簡(jiǎn)化模型
MCU的設(shè)計(jì)可參考ITU的H.324系列建議。該建議擬訂了低比特多媒體通信終端的基本框架。它包括四個(gè)主要部分:G.723.1音頻編碼標(biāo)準(zhǔn)、H.263視頻編碼標(biāo)準(zhǔn)、H.245通信控制協(xié)議和H.223復(fù)接分接協(xié)議,該建議同時(shí)也描述了一個(gè)在PSTN中采用V.34標(biāo)準(zhǔn)的Modem。V.34標(biāo)準(zhǔn)規(guī)定了輸入/輸出Modem的數(shù)據(jù)格式、比特率等要求。本系統(tǒng)由于MCU連接了多個(gè)端口,若各端口Modem的速率不一致,則可能會(huì)造成MCU的數(shù)據(jù)擁塞,故本系統(tǒng)中禁止Modem速率的自動(dòng)調(diào)整。一般在會(huì)議開(kāi)始之前,即按各端口中最低速率建立連接,以保證較小的誤碼率。在MCU中,主要是對(duì)H.223幀的幀頭進(jìn)行處理。H.223幀結(jié)構(gòu)中的幀起始標(biāo)志為3個(gè)連續(xù)的FAS碼,每個(gè)FAS碼長(zhǎng)為4個(gè)字節(jié),試驗(yàn)系統(tǒng)中可取為0XEC。該標(biāo)志也可用于實(shí)現(xiàn)對(duì)H.223幀的定界。由于幀長(zhǎng)度是不定的,因此,幀起始標(biāo)志的正確傳輸與檢測(cè)直接影響到幀定位。控制信號(hào)也占4個(gè)字節(jié),其中前兩個(gè)字節(jié)為BAS碼,主要攜帶會(huì)議控制信息。因本會(huì)議系統(tǒng)的可能狀態(tài)較少,所用到的控制命令也少,故只用一個(gè)字節(jié)傳送命令,另一個(gè)字節(jié)作為BAS碼的糾錯(cuò)字節(jié),以保證命令的正確傳輸。
在視頻會(huì)議系統(tǒng)的命令交互中,MCU及各個(gè)與會(huì)站點(diǎn)在會(huì)議中都要維護(hù)一張狀態(tài)設(shè)置表,表中記錄了各與會(huì)站點(diǎn)所對(duì)應(yīng)的邏輯端口、電話(huà)號(hào)碼、地理位置、在會(huì)議中的身份(主席、發(fā)言方及普通會(huì)員)等,此后MCU進(jìn)一步將邏輯端口映射成相應(yīng)的物理地址,以便MCU從該地址讀寫(xiě)信息。狀態(tài)設(shè)置表的初始設(shè)置是在會(huì)前通過(guò)勤務(wù)電話(huà)確定的。預(yù)定的開(kāi)會(huì)時(shí)間由MCU負(fù)責(zé)通過(guò)Modem呼通各與會(huì)站點(diǎn),以建立起數(shù)據(jù)鏈路。當(dāng)某個(gè)站點(diǎn)呼通后,該站點(diǎn)即在其H.223幀中插入終端就緒命令,而MCU則將該幀環(huán)回,并將BAS碼替換為就緒確認(rèn)命令。當(dāng)所有站點(diǎn)均就緒后,MCU即向各站點(diǎn)發(fā)會(huì)議就緒命令。同時(shí)將主席端的數(shù)據(jù)切換到各個(gè)站點(diǎn),此時(shí)主席便可以發(fā)言,也可以命令其它會(huì)員發(fā)言。如果主席沒(méi)有發(fā)命令給MCU,則向MCU發(fā)會(huì)議進(jìn)行中狀態(tài)指示,MCU則維持當(dāng)前狀態(tài);若主席命令A(yù)站點(diǎn)發(fā)言,則其在H.223幀中插入令A(yù)發(fā)言的命令。MCU接到命令后,即將A站點(diǎn)的數(shù)據(jù)切換到除A外的所有其它站點(diǎn),同時(shí)將主席的數(shù)據(jù)發(fā)往A站點(diǎn)。當(dāng)主席命令會(huì)議結(jié)束時(shí),MCU即向各站點(diǎn)發(fā)送會(huì)議結(jié)束確認(rèn)命令,并停止工作,由各站點(diǎn)自行掛斷Modem。圖6為上述過(guò)程的命令交互示意圖。
評(píng)論