在網(wǎng)絡(luò)視頻會(huì)議開發(fā)領(lǐng)域,我們有許多開源的音頻編碼庫(kù)可以供選擇,如G.7x系列、ACC、AC3、Speex等音頻編碼庫(kù),但由于網(wǎng)絡(luò)視頻會(huì)議可能會(huì)在無(wú)QOS保證的網(wǎng)絡(luò)中傳輸數(shù)據(jù),所以不僅要求音頻編碼器可以傳輸實(shí)時(shí)的高質(zhì)量的音頻數(shù)據(jù),還需要保證帶寬足夠小,滿足不同帶寬的需求。因此一些寬帶的編碼器,如ACC、AC3等,其傳輸需要較大的帶寬,就很難適應(yīng)網(wǎng)絡(luò)視頻會(huì)議的低帶寬傳輸要求。Speex是一個(gè)基于CELP算法的開源編碼器,其可以支持從窄帶(2kb)到寬帶(44kbs)的音頻傳輸,最少的音頻傳輸帶寬可以達(dá)到500字節(jié)每秒,是目前壓縮率最高的音頻編碼器之一。Speex除了以上的特點(diǎn)外,還具有一些可供網(wǎng)絡(luò)會(huì)議使用的特性。
1、 數(shù)據(jù)丟包掩飾
在網(wǎng)絡(luò)視頻會(huì)議的傳輸過程中,由于網(wǎng)絡(luò)的帶寬存在著波動(dòng)性,因此有時(shí)候我們傳輸?shù)臄?shù)據(jù)會(huì)在網(wǎng)絡(luò)中出現(xiàn)延遲甚至?xí)a(chǎn)生丟包現(xiàn)象,大部分的音頻編碼器,當(dāng)其接收的數(shù)據(jù)出現(xiàn)丟包,可能聲音就會(huì)出現(xiàn)不連續(xù)的情況。而Speex的丟包掩飾功能可以使局部丟包不影響整體的音頻質(zhì)量。經(jīng)測(cè)試當(dāng)超過5%的丟包的時(shí)候,GSM、G.72x的語(yǔ)音質(zhì)量會(huì)嚴(yán)重下降,而當(dāng)我們采用Speex進(jìn)行傳輸?shù)臅r(shí)候,其語(yǔ)音質(zhì)量沒有出現(xiàn)較大變化,這證明Speex的丟包掩飾確實(shí)能解決局部丟包的問題。由于網(wǎng)絡(luò)視頻會(huì)議有時(shí)候會(huì)出現(xiàn)網(wǎng)絡(luò)堵塞的情況,從而出現(xiàn)數(shù)據(jù)丟包現(xiàn)象,因此Speex的數(shù)據(jù)丟包掩飾對(duì)網(wǎng)絡(luò)視頻會(huì)議克服丟包的影響非常有作用。
2、 可變數(shù)據(jù)流
Speex具有先進(jìn)的可變數(shù)據(jù)流傳輸方式,其通過音頻靜音檢測(cè),Speex可以在靜音的情況不發(fā)送任何數(shù)據(jù);而通過調(diào)整語(yǔ)音的傳輸質(zhì)量,動(dòng)態(tài)改變語(yǔ)音的傳輸帶寬,使語(yǔ)音在主觀上更為出色。
3、 回聲抑制
網(wǎng)絡(luò)視頻會(huì)議系統(tǒng)的語(yǔ)音一般都是雙向的,如果其中一方把外置的聲音傳輸?shù)狡潲溈孙L(fēng)上,就很容易出現(xiàn)回聲的現(xiàn)象。Speex編碼庫(kù)提供回聲消除功能,可以通過近端和遠(yuǎn)端的數(shù)據(jù)包進(jìn)行疊加,從而消除靜音,但由于網(wǎng)絡(luò)視頻會(huì)議的語(yǔ)音接收和發(fā)送線程都是分開,因此需要對(duì)兩個(gè)線程進(jìn)行同步才能進(jìn)行回聲消除。
4、 自動(dòng)增益控制
網(wǎng)絡(luò)視頻會(huì)議系統(tǒng)的聲音采集通??梢詾槎?、鵝頸麥克風(fēng)等,不同的麥克風(fēng)的其拾音半徑都不一樣,而且有時(shí)候我們會(huì)議發(fā)言者的位置可能會(huì)移動(dòng),如采集同樣的聲音大小,其聲音就會(huì)有時(shí)大、有時(shí)小,通過語(yǔ)音自動(dòng)增益控制,通過放大或者降低聲強(qiáng),我們可以獲得大致一直的聲音強(qiáng)度,避免了語(yǔ)音跳躍的情況。
5、 噪聲消除
在會(huì)議中可能會(huì)遇到對(duì)方的環(huán)境噪聲造成語(yǔ)音質(zhì)量下降的情況,Speex可以對(duì)環(huán)境噪聲進(jìn)行判斷,并消除這些噪聲,提高了語(yǔ)音的質(zhì)量。
6、 強(qiáng)化的立體聲編碼
Speex除了能壓縮一般語(yǔ)音數(shù)據(jù),還可以對(duì)立體聲數(shù)據(jù)進(jìn)行編碼。
7、 跨平臺(tái)
Speex可以在不同的平臺(tái)上編譯,如Android、IOS系統(tǒng),因此非常適合我們的視頻會(huì)議系統(tǒng)的移動(dòng)終端的音頻壓縮庫(kù)。
總結(jié),通過Speex的多項(xiàng)特性證明,Speex是目前最佳的開源網(wǎng)絡(luò)視頻會(huì)議音頻編碼庫(kù),Speex編碼不僅僅是一個(gè)開源的編碼器,其還具有網(wǎng)絡(luò)視頻會(huì)議音頻處理所需要的一些重要的功能。