如何使用WebRTC創建直接的視訊通信應用程序

WebRTC是Web實時通信的縮寫。

它允許在瀏覽器之間建立直接的數據通信。

您可以使用它來

  • 流式傳輸音頻
  • 流式傳輸視頻
  • 共享文件
  • 視頻聊天
  • 創建點對點數據共享服務
  • 創建多人遊戲

等等。

它是一個致力於使即時通信應用程序易於創建的努力,利用Web技術,因此除了Web瀏覽器之外,不需要任何第三方插件或外部技術。

未來在執行RTC時應該不再需要插件,而是應該依賴於標準技術-WebRTC。

它受到所有現代瀏覽器的支持(Edge僅部分支持RTCDataChannel-請參見後面):

WebRTC實現了以下API:

  • **MediaStream**獲取用戶端的數據流,例如攝像頭和麥克風
  • **RTCPeerConnection**處理同行之間的音頻和視頻流傳輸
  • RTCDataChannel:處理其他類型的數據(任意數據)

使用視頻和音頻通信時,您將使用MediaStreamRTCPeerConnection

其他類型的應用程序(例如遊戲、文件共享等)依賴於RTCDataChannel

在本文中,我將通過使用Node.js上的Websockets服務器來創建一個使用WebRTC連接兩個遠程攝像頭的示例。

提示:在您的項目中,您可能會使用抽象出許多這些細節的庫。這個教程旨在解釋WebRTC技術,以便您知道底層的運作原理。