在軟件視頻會議的開發(fā)過程中,由于需要在不同的系統(tǒng)進行互聯(lián)互通,特別是和硬件的視頻會議系統(tǒng)或者和移動終端進行數(shù)據(jù)交換,都需要有共同的數(shù)據(jù)協(xié)議規(guī)范,因此在視頻會議軟件的開發(fā)的過程應(yīng)該遵循相應(yīng)的協(xié)議,這些協(xié)議可以使得我們的網(wǎng)絡(luò)視頻會議系統(tǒng)能更好地與不同的系統(tǒng)進行連接,從而實現(xiàn)不同的系統(tǒng)、不同的終端都能互聯(lián)互通。軟件視頻會議的協(xié)議分為幾類,第一類是框架協(xié)議,第二類是傳輸控制協(xié)議,第三類是編解碼協(xié)議,第四類是消息傳輸協(xié)議,我們現(xiàn)在把這幾類協(xié)議做一個詳細的解釋,并列舉其中的一些協(xié)議的例子。
1、框架協(xié)議
軟件視頻會議的框架協(xié)議是整個視頻會議系統(tǒng)的基礎(chǔ)框架,現(xiàn)在主流是視頻會議框架協(xié)議有SIP和H323及MGCP三種,SIP協(xié)議主要特點是簡單易用,比較適合輕量級的軟件視頻會議使用,開源的項目是Osip、OPAL;H323協(xié)議主要特點是功能較強,包含有很多協(xié)議族,其中包括H.239、T.120等,由于其協(xié)議包含的內(nèi)容較多,因此開發(fā)較為復雜,一般我們可以采用開源的Openh323、OPAL協(xié)議棧來加快開發(fā)H323協(xié)議的視頻會議系統(tǒng);MGCP協(xié)議是多媒體網(wǎng)關(guān)協(xié)議,MGCP協(xié)議一般用在MCU服務(wù)器中,主要是為了與一些軟交換的設(shè)備進行數(shù)據(jù)交換的用途。H323、SIP及MGCP協(xié)議之間的區(qū)別,我們可以參考“視頻會議SIP MGCP和H323的區(qū)別”。由于這幾種協(xié)議都有許多視頻會議系統(tǒng)使用,為了與之互聯(lián)互通,現(xiàn)在的視頻會議軟件產(chǎn)品都會同時支持SIP和H.323協(xié)議。
2、傳輸控制協(xié)議
在視頻會議領(lǐng)域的傳輸控制協(xié)議主要是TCP協(xié)議、UDP協(xié)議、RUDP協(xié)議、RTP協(xié)議,TCP協(xié)議和UDP協(xié)議是傳輸層的控制協(xié)議,在視頻會議軟件中,TCP是有連接的控制協(xié)議,但由于需要進行三次握手,因此實時傳輸數(shù)據(jù)會比較慢,而UDP是建立在無連接的信道,因此數(shù)據(jù)傳輸不能保證可靠性。我們在視頻會議系統(tǒng)中,一般采用RUDP協(xié)議,也就是可靠的UDP傳輸協(xié)議,它是在UDP協(xié)議的基礎(chǔ)上加入了控制協(xié)議,既能保證數(shù)據(jù)的實時性,有能保證數(shù)據(jù)的可靠性。RUDP是視頻會議領(lǐng)域較為常用的協(xié)議。最后一個是RTP協(xié)議,RTP協(xié)議是實時傳輸協(xié)議,它也是通過在UDP協(xié)議的基礎(chǔ)上加入了控制域,這樣可以判斷數(shù)據(jù)是否丟包,但RTP協(xié)議不能保證數(shù)據(jù)的可靠性,而傳輸效率比RUDP高。因此RTP協(xié)議是網(wǎng)絡(luò)視頻會議系統(tǒng)中傳輸大流量實時數(shù)據(jù)(如視頻)的最好傳輸協(xié)議。
3、編解碼協(xié)議
視頻會議的編解碼協(xié)議主要是指視頻編解碼協(xié)議,H.264、MPEG4、H.265、H.263、H261協(xié)議都是常用的編解碼協(xié)議。H.264是現(xiàn)在主流的編解碼協(xié)議,在開發(fā)當中我們可以參考的H.264協(xié)議的開源庫是x264、t264。MPEG4協(xié)議是前幾年用得最多的視頻編解碼器,但由于其壓縮率比H.264要低,因此這幾年已被H.264所替代,但在高清視頻會議中,由于高清視頻對于H.264意味著需要更多的cpu消耗,因此MPEG4協(xié)議在高清視頻中還是有相當?shù)膽?yīng)用價值。而H.263、H261都是比較舊的協(xié)議,其壓縮率較低,因此這兩種協(xié)議一般現(xiàn)在用得較少。H.265協(xié)議是最新的視頻編解碼協(xié)議,它的壓縮率比H.264更高,在同等的帶寬下,視頻質(zhì)量比H.264更好,其被認為是H.264的接班人,但由于現(xiàn)今的硬件水平還沒有達到H.265協(xié)議的復雜運算的要求,因此H.265協(xié)議只是在實驗階段,還沒有進行實際應(yīng)用。
4、消息傳輸協(xié)議
視頻會議系統(tǒng)的消息傳輸協(xié)議,主要是用于消息數(shù)據(jù)的交換, xmpp協(xié)議是通過xml語言來進行系統(tǒng)的數(shù)據(jù)交換,由于xml語言可以嵌入不同的數(shù)據(jù)結(jié)構(gòu),因此xmpp協(xié)議具有超強的擴張性。xmpp協(xié)議最典型的應(yīng)用是即時通訊系統(tǒng),由于即時通訊和視頻會議系統(tǒng)在信息交換上有很多相同點,因此xmpp協(xié)議非常適合用視頻會議軟件使用。xmpp協(xié)議主要的開源項目有jabberXMPP協(xié)議,其已經(jīng)在多個即時通訊系統(tǒng)中得到應(yīng)用。