FreeSWITCH是一個(gè)非常強大的軟交換系統。除基本的音視頻通話(huà)以外,它也支持多方的音頻和視頻會(huì )議。下面我們就來(lái)看一下FreeSWITCH在視頻會(huì )議方面都有哪些功能。
普通視頻會(huì )議
要讓FreeSWITCH支持視頻會(huì )議,首要配置FreeSWITCH支持視頻通話(huà)。FreeSWITCH默認的配置是不支持視頻通話(huà)的,假設我們增加H264編碼支持,在 vars.xml中配置如下:
<X-PRE-PROCESS cmd="set" data="global_codec_prefs=G722,PCMU,PCMA,GSM,GSM,H264"/>
<X-PRE-PROCESS cmd="set" data="outbound_codec_prefs=PCMU,PCMA,GSM,GSM,H264"/>
配置好視頻編解碼后,重啟FreeSWITCH,就可以撥打3000呼入默認的會(huì )議進(jìn)行視頻會(huì )議了。在FreeSWITCH視頻會(huì )議中,FreeSWITCH會(huì )檢測當前發(fā)言的人,并自動(dòng)顯示當前發(fā)言人的頭像。在FreeSWITCH 1.4中,新加入了一個(gè)vid-floor子命令,可以用它來(lái)控制當前哪個(gè)成員顯示在大家面前。比如,在會(huì )議中,以下命令將大家看到的視頻切換到member-id為3的成員:
conference 3000 vid-floor 3 force
注意其中的force參數,該參數是可選的。如果沒(méi)有該參數,則只是臨時(shí)切換到該成員,根據聲音大小自動(dòng)切換還是會(huì )出現;如果使用該參數,就固定永遠顯示這一個(gè)成員(當然如果該成員掛機,就又會(huì )變成自動(dòng)選擇模式)。
終端視頻會(huì )議
目前,FreeSWITCH中的視頻會(huì )議不支持“融屏”,即不能像MCU一樣將多個(gè)參與者,不過(guò),潮流的視頻終端可以做到這一點(diǎn)。
潮流網(wǎng)絡(luò )新款安卓7寸觸摸屏GXV3275支持主流的視頻編解碼H264,并話(huà)機本身允許最大三方視頻會(huì )議的建立,如果服務(wù)器的視頻會(huì )議室被占滿(mǎn)的情況下,可以使用GXV3275臨時(shí)快速建立簡(jiǎn)單的三方視頻會(huì )議。
GXV3275支持1080P的編解碼,最大幀率支持30幀,一路視頻通話(huà)可以實(shí)現1080P@30fps。以下配置圖設置了720P的視頻大小,一般使用視頻速率為2M Kbps,在帶寬足夠的情況下(比如),視頻通話(huà)流暢度可達到30幀。如果帶寬不足(比如),可以使用4CIF的視頻大小,視頻速率,一般視頻流暢度可達到15幀。
Ps:H.264視頻大小和視頻速率是調節視頻的主要兩個(gè)參數值,請根據實(shí)際網(wǎng)絡(luò )帶寬來(lái)配置。
下面是三方視頻會(huì )議建立步驟:
1)首先通過(guò)桌面的會(huì )議APP圖標進(jìn)入會(huì )議界面,通過(guò)“+”按鈕把其他兩方成員加進(jìn)會(huì )議,建立三方語(yǔ)音會(huì )議后,點(diǎn)擊視頻控制進(jìn)行視頻會(huì )議。
2) 勾選要進(jìn)行視頻通話(huà)的線(xiàn)路,點(diǎn)擊開(kāi)啟視頻會(huì )議
3) 建立三方視頻會(huì )議
4) 此外,從會(huì )議室界面可看到,GXV3275允許邀請其他五方成員進(jìn)行語(yǔ)音會(huì )議,通過(guò)觸摸按鍵邀請成員,可以快速的建立起六方語(yǔ)音會(huì )議,如果是普通的IP話(huà)機建立語(yǔ)音會(huì )議,必須要一路一路建立通話(huà)后再建立起會(huì )議。GXV3275的六方語(yǔ)音會(huì )議節省了服務(wù)器會(huì )議室資源,并且節省了用戶(hù)操作時(shí)間,更加的人性化使用。
視頻監控
有了視頻會(huì )議及融屏的解決方案以后,就可以將視頻監控也融入到FreeSWITCH中了。為了能與FreeSWITCH進(jìn)行視頻通信,最簡(jiǎn)單的方案就是找一個(gè)支持SIP協(xié)議的攝像機。潮流網(wǎng)絡(luò )公司有一款攝像機型號是GXV3615W。下圖是該攝像機的SIP配置頁(yè)面,可以看出,它跟普通的SIP話(huà)機配置方式基本上是一樣的。
配置完成后,該攝像機也是以一個(gè)SIP客戶(hù)端的方式注冊到FreeSWITCH上。一般來(lái)說(shuō),它不會(huì )主動(dòng)發(fā)起呼叫,但是我們可以從FreeSWITCH中呼叫它。攝像機在接收到呼叫后,會(huì )自動(dòng)應答,所以,我們就可以簡(jiǎn)單呼叫一個(gè)電話(huà)號碼查看該攝像機覆蓋范圍內的圖像了。在一些智能家居類(lèi)的應用中,通過(guò)呼叫一個(gè)電話(huà)號碼即可以查看家里的情況。在FreeSWITCH中,就這么簡(jiǎn)單地實(shí)現了。當然,我們也可以將該攝像機加入會(huì )議,如(所配置的賬號為1010):
conference 3000 dial user/1010
由于該攝像機一般不會(huì )說(shuō)話(huà),所以在FreeSWITCH視頻會(huì )議中如果想看到它的話(huà),就需要使用“vid-floor”功能強制把floor設置成它,如:
conference 3000 vid-floor 2 force
當然,FreeSWITCH對外提供豐富的API,大家可以很方便的把這些功能集成到自己的軟件中。