WebRTC原始碼

來源:互聯網
上載者:User
Google開放即時通訊架構WebRTC原始碼

     其實早在6月2號以前,在Google上班的朋友就告訴我這條資訊,我也第一時間拿到WebRTC全部source code, 但由於最近工作實在是忙,沒第一時間在這轉載這一資訊。現補一下,希望一直關注多媒體應用的同行,能較早時間去學習WebRTC架構中的技術,並在實際項目中運用。

    Google今日宣布向開發人員開放WebRTC架構的原始碼。WebRTC是一項在瀏覽器內部進行即時視頻和音頻通訊的技術,是Google去年以6820萬美元收購收購Global IT Solutions公司而獲得一項技術。

      Google今日在官方部落格中稱:“我們希望讓瀏覽器成為即時通訊的創新地所在,到目前為止,即時通訊需要使用受著作權保護的訊號處理技術,並通過外掛程式或下載用戶端才能實現,而WebRTC則允許開發人員使用HTML和JavaScript API來建立即時應用。”
      Google還稱:“為此我們將與Mozilla和Opera等瀏覽器廠商密切合作,以便讓更廣泛的Web社區來部署這項技術。此外,我們還將與IETF和W3C工作群組等標準機構合作,以定義一套即時通訊標準。”

  目前,開發人員可訪問http://sites.google.com/site/webrtc/頁面擷取WebRTC的原始碼、規格說明和工具等。(國內網路可能不能登入,總共大小有80M, 如有需要可以留連絡方式)

在這還轉載一篇對WebRTC source code(http://blog.csdn.net/cymlife/archive/2011/06/02/6460852.aspx) 組成部分的簡單介紹的博文。要想更深的瞭解相關技術,大家一定要花時間去學習研究。我也會去學習,到時有時間也會發表相關文章與大家一起交流。 視頻   WebRTC的視頻部分,包含採集、編解碼(I420/VP8)、加密、媒體檔案、影像處理、顯示、網路傳輸與流控(RTP/RTCP)等功能。    視頻採集---video_capture   原始碼在webrtc\modules\video_capture\main目錄下,包含介面和各個平台的原始碼。   在windows平台上,WebRTC採用的是dshow技術,來實現枚舉視頻的裝置資訊和視頻資料的採集,這意味著可以支援大多數的視頻採集裝置;對那些需要單獨驅動程式的視頻採集卡(比如海康高清卡)就無能為力了。   視頻採集支援多種媒體類型,比如I420、YUY2、RGB、UYUY等,並可以進行幀大小和幀率控制。    視頻編解碼---video_coding    原始碼在webrtc\modules\video_coding目錄下。   WebRTC採用I420/VP8編解碼技術。VP8是google收購ON2後的開源實現,並且也用在WebM項目中。VP8能以更少的資料提供更高品質的視頻,特別適合視頻會議這樣的需求。    視頻加密--video_engine_encryption    視頻加密是WebRTC的video_engine一部分,相當於視頻應用程式層面的功能,給點對點的視頻雙方提供了資料上的安全保證,可以防止在Web上視頻資料的泄漏。   視頻加密在發送端和接收端進行加解密視頻資料,密鑰由視頻雙方協商,代價是會影響視頻資料處理的效能;也可以不使用視頻加密功能,這樣在效能上會好些。   視頻加密的資料來源可能是原始的資料流,也可能是編碼後的資料流。估計是編碼後的資料流,這樣加密代價會小一些,需要進一步研究。    視頻媒體檔案--media_file    原始碼在webrtc\modules\media_file目錄下。   該功能是可以用本地檔案作為視頻源,有點類似虛擬網路攝影機的功能;支援的格式有Avi。   另外,WebRTC還可以錄製音視頻到本地檔案,比較實用的功能。    視頻影像處理--video_processing    原始碼在webrtc\modules\video_processing目錄下。   視頻影像處理針對每一幀的映像進行處理,包括明暗度檢測、顏色增強、降噪處理等功能,用來提升視頻品質。    視頻顯示--video_render    原始碼在webrtc\modules\video_render目錄下。   在windows平台,WebRTC採用direct3d9和directdraw的方式來顯示視頻,只能這樣,必須這樣。    網路傳輸與流控    對於網路視頻來講,資料的傳輸與控制是核心價值。WebRTC採用的是成熟的RTP/RTCP技術。 音頻   WebRTC的音頻部分,包含裝置、編解碼(iLIBC/iSAC/G722/PCM16/RED/AVT、NetEQ)、加密、音效檔、聲音處理、聲音輸出、音量控制、音視頻同步、網路傳輸與流控(RTP/RTCP)等功能。    音訊裝置---audio_device    原始碼在webrtc\modules\audio_device\main目錄下,包含介面和各個平台的原始碼。   在windows平台上,WebRTC採用的是Windows Core Audio和Windows Wave技術來管理音訊裝置,還提供了一個混音管理器。   利用音訊裝置,可以實現聲音輸出,音量控制等功能。    音頻編解碼---audio_coding    原始碼在webrtc\modules\audio_coding目錄下。   WebRTC採用iLIBC/iSAC/G722/PCM16/RED/AVT編解碼技術。   WebRTC還提供NetEQ功能---抖動緩衝器及丟包補償模組,能夠提高音質,並把延遲減至最小。   另外一個核心功能是基於語音會議的混音處理。    聲音加密--voice_engine_encryption    和視頻一樣,WebRTC也提供聲音加密功能。    音效檔    該功能是可以用本地檔案作為音頻源,支援的格式有Pcm和Wav。   同樣,WebRTC也可以錄製音頻到本地檔案。    聲音處理--audio_processing    原始碼在webrtc\modules\audio_processing目錄下。   聲音處理針對音頻資料進行處理,包括回聲消除(AEC)、AECM、自動增益(AGC)、降噪處理等功能,用來提升聲音品質。    網路傳輸與流控    和視頻一樣,WebRTC採用的是成熟的RTP/RTCP技術。

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.