VOIP通訊中影響語音質量的因素

2021-09-06 14:34:56 字數 1240 閱讀 2673

**

在voip通訊中,影響語音質量的因素比較多,歸類起來就以下幾個大的因素:

1、網路因素,網路一般體現在網路的延遲、抖動、丟包。延遲一般是有語音的編譯碼速度、jitterbuffer延遲、tcp/ip協議棧處理速 度、中間路由器路由延遲等引起的,在這些因素中,最重要的是jitterbuffer延遲和中間路由器路由延遲。解決中間路由器的延遲必須是通過中間網路 的選取來解決,類似skype的sn、qq的伺服器協調路由的解決方案,其實就是找到最佳語音路由路徑。抖動是有中間路由器的包排隊引起的,抖動會引起聲 音的不連續。解決這個問題辦法就是用jitterbuffer來緩衝,從而達到消除抖動,但jitterbuffer太長會引起網路的延遲,所以在 jitterbuffer的設計上必須採用實時根據網路的情況調整jitterbuffer的緩衝大小。還有個問題就是丟包,一般的語音編譯碼允許的丟包 率在5%以內,引起丟包的主要原因的終端的頻寬不夠或中間路由器堵塞造成丟包,如果是終端的頻寬不夠,那麼在呼叫建立過程中必須協商雙方的通訊能力,盡量 考慮用比較合適的語音編譯碼來進行通訊,例如:在56k的貓上最好不要選用g711等大頻寬的語音編譯碼,所以智慧型的通訊能力協商是必要的。如果是中間路 由器堵塞造成丟包丟包,解決這種情況有很多辦法:採用對丟包不明顯的語音codec、丟包補償(fec)、自動選擇中間路由(同解決網路延遲的方法一 樣)。

2、編譯碼取樣因素,一般**的語音的取樣是8k,這就很大程度印象聲音的真實性,gips的isac編譯碼採用16k ~ 44.1k不等的取樣,所以skype可以聲稱自己比pstn的語音更清新,尤其是在放**的時候。所以在voip系統中,要在聲音清晰度上超過pstn 達到網路娛樂的效果,必須採用高取樣的codec。現在16k以上的語音編譯碼有:isac、speex、g.722.2等。這些編譯碼都是需要比較大的 頻寬和cpu利用率,所以很必須綜合考慮。

3、語音的數字訊號處理,一般在如果不採用任何的數字訊號處理,聲音質量肯定比較差,一般表現為:回聲大、噪音大、聲音乎小乎大。所以要提高語音這 方面的清晰度,必須做回聲抵消、噪音抑制、訊號增抑控制處理。但這些訊號處理的演算法一般只能在pc上或用dsp來實現,一般的掌上裝置無法有這樣的計算能 力。所以在呼叫建立過程中必須協商雙方的計算能力,這個是非常必要的。現在試面上的voip產品很少考慮這方面。

4、靜音壓縮和cng,靜音壓縮有兩個非常明顯的功能,那就是節省頻寬、減小延遲。但也帶來了乙個負面的影響,就是對方在靜音的時候,你根本聽不到 任何聲音,好象網路斷開一樣,這個時候cng產生舒適音是非常必要的。所以靜音壓縮和cng是要合在一起使用才能達到好的效果。

6、rtp/rtcp的通訊控制問題。

mysql中影響效能的全域性變數

bulk insert buffer size 批量插入快取大小,該引數主要是針對myisam儲存引擎來說的。適用於在一次性插入100 1000 條記錄的情況時,提高效率。預設值是8m,可以針對資料量的大小,翻倍增加。concurrent insert 併發插入,當表沒有空洞 即刪除過記錄 時,某程...

Unity中影響渲染順序的因素總結

相機元件上設定的相機深度,深度越大越靠後渲染。renderqueue 2500是透明與不透明的分水嶺。同乙個相機下 renderqueue小於2500的物體 始終在 renderqueue大於2500之前繪製。在tags layers設定中可見 如果camera相同,那接下來就看sorting la...

通訊中的backhaul

backhaul 可以翻譯成回程,也叫回程線路 在現有的無線通訊中,backhaul指的是基站和基站控制器之間的鏈結 一般使用者先接入基站,基站再與基站控制器通訊,然後進入核心網 在無線技術中,回程 backhaul 指的是從信元站點向交換機傳送語音和資料流量的功能。在衛星通訊中,回程是指衛星向自身...