生活随笔
收集整理的這篇文章主要介紹了
WebRTC基本介绍
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
WebRTC基本介紹
目錄
什么是WebRTCWebRTC框架
1. 什么是WebRTC
WebRTC,名稱源自網頁即時通信(英語:Web Real-Time Communication)的縮寫,是一個支持網頁瀏覽器進行實時語音對話或視頻對話的API。它于2011年6月1日開源并在Google、Mozilla、Opera支持下被納入萬維網聯盟的W3C推薦標準。WebRTC雖然冠以“web”之名,但并不受限于傳統互聯網應用或瀏覽器的終端運行環境。實際上無論終端運行環境是瀏覽器、桌面應用、移動設備(Android或iOS)還是IoT設備,只要IP連接可到達且符合WebRTC規范就可以互通。WebRTC是一個免費的開源項目,通過簡單的API為游覽器和移動應用程序提供實時通信(RTC)功能。
2. WebRTC框架
紫色部分是Web應用開發者api層藍色實線是面向游覽器廠商的API層藍色虛線部分游覽器廠商可以自定義實現特別是PeerConnection為Web開發人員提供了一個抽象,從復雜的內部結構中抽象出來。我們只需要關注PeerConnection這個對象即可開發音視頻通話應用。
1. Your Web App
Web開發者開發的程序,Web開發者可以基于集成WebRTC的瀏覽器提供的web API開發基于視頻、音頻的實時通信應用。
2. Web API
面向第三方開發者的WebRTC標準API(Javascript),使開發者能夠容易地開發出類似于網絡視頻聊天的web應用。
3. WebRTC Native C++ API
本地C++ API層,使瀏覽器廠商容易實現WebRTC標準的Web API,抽象地對數字信號過程進行處理。
4. Transport / Session
傳輸/會話層會話層組件采用了libjingle庫的部分組件實現,無須使用xmpp/jingle協議
1. RTP Stack協議棧
Real Time Protocol
2. STUN/ICE
可以通過STUN和ICE組件來建立不同類型網絡間的呼叫連接。
3. Session Management
一個抽象的會話層,提供會話建立和管理功能。該層協議留給應用開發者自定義實現。
4. VoiceEngine
音頻引擎是包含一系列音頻多媒體處理的框架,包括從視頻采集卡到網絡傳輸端等整個解決方案。VoiceEngine是WebRTC極具價值的技術之一,是Google收購GIPS公司后開源的。在VoIP上,技術業界領先,后面的文章會詳細了解。
1. iSAC
Internet Speech Audio Codec針對VoIP和音頻流的寬帶和超寬帶音頻編解碼器,是WebRTC音頻引擎的默認的編解碼器采樣頻率:16khz,24khz,32khz;(默認為16khz)自適應速率為10kbit/s ~ 52kbit/;自適應包大小:30~60ms;算法延時:frame + 3ms
2. iLBC
Internet Low Bitrate CodecVoIP音頻流的窄帶語音編解碼器采樣頻率:8khz;20ms幀比特率為15.2kbps30ms幀比特率為13.33kbps標準由IETF RFC3951和RFC3952定義
3. NetEQ for Voice
針對音頻軟件實現的語音信號處理元件NetEQ算法:自適應抖動控制算法以及語音包丟失隱藏算法。使其能夠快速且高解析度地適應不斷變化的網絡環境,確保音質優美且緩沖延遲最小。是GIPS公司獨步天下的技術,能夠有效的處理由于網絡抖動和語音包丟失時候對語音質量產生的影響。NetEQ 也是WebRTC中一個極具價值的技術,對于提高VoIP質量有明顯效果,加以AEC\NR\AGC等模塊集成使用,效果更好。
4. Acoustic Echo Canceler (AEC)
回聲消除器是一個基于軟件的信號處理元件,能實時的去除mic采集到的回聲。
5. Noise Reduction (NR)
噪聲抑制也是一個基于軟件的信號處理元件,用于消除與相關VoIP的某些類型的背景噪聲(嘶嘶聲,風扇噪音等等… …)
5. VideoEngine
WebRTC視頻處理引擎VideoEngine是包含一系列視頻處理的整體框架,從攝像頭采集視頻到視頻信息網絡傳輸再到視頻顯示整個完整過程的解決方案。
1. VP8
視頻圖像編解碼器,是WebRTC視頻引擎的默認的編解碼器VP8適合實時通信應用場景,因為它主要是針對低延時而設計的編解碼器。VPx編解碼器是Google收購ON2公司后開源的,VPx現在是WebM項目的一部分,而WebM項目是Google致力于推動的HTML5標準之一
2. Video Jitter Buffer
視頻抖動緩沖器,可以降低由于視頻抖動和視頻信息包丟失帶來的不良影響。
3. Image enhancements
圖像質量增強模塊對網絡攝像頭采集到的圖像進行處理,包括明暗度檢測、顏色增強、降噪處理等功能,用來提升視頻質量。
總結
以上是生活随笔為你收集整理的WebRTC基本介绍的全部內容,希望文章能夠幫你解決所遇到的問題。
如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。