开发手册 欢迎您!
软件开发者资料库

WebRTC - 概述

WebRTC概述 - 从概述,架构,环境,MediaStream API,RTCPeerConnection API,RTCDataChannel API,发送消息,信令,浏览器支持,移动支持,视频演示,语音演示,文本演示,安全性开始学习WebRTC。

随着 WebRTC(网络实时通信)的发挥,网络对于实时通信并不陌生.尽管它于2011年5月发布,但它仍处于开发阶段,其标准正在发生变化.一组协议由 WEB浏览器中的实时通信工作组标准化, http://tools.ietf.org/wg/rtcweb/,而新的API标准由 Web实时通信工作小组在 http://www.w3.org/2011 W3C(万维网联盟)的/04/webrtc/.随着WebRTC的出现,现代网络应用程序可以轻松地将音频和视频内容传输给数百万人.

基本方案

WebRTC允许您设置快速轻松地与其他Web浏览器建立点对点连接.要从头开始构建这样的应用程序,您需要大量的框架和库来处理典型问题,如数据丢失,连接丢弃和NAT遍历.使用WebRTC,所有这些都内置于开箱即用的浏览器中.该技术不需要任何插件或第三方软件.它是开源的,其源代码可在 http://www.webrtc.org/免费获取.

WebRTC API包括媒体捕获,音频和视频编码和解码,传输层和会话管理.

基本方案

媒体捕获

第一步是访问摄像头和麦克风用户的设备.我们检测可用设备的类型,获得用户访问这些设备的权限以及管理流.

编码和解码音频和视频

它是通过Internet发送音频和视频数据流并非易事.这是使用编码和解码的地方.这是将视频帧和音频波分成较小块并压缩它们的过程.该算法称为编解码器.存在大量不同的编解码器,这些编解码器由具有不同业务目标的不同公司维护. WebRTC中还有许多编解码器,如H.264,iSAC,Opus和VP8.当两个浏览器连接在一起时,它们会选择两个用户之间支持的最佳编解码器.幸运的是,WebRTC在幕后完成大部分编码.

传输层

传输层管理数据包的顺序,处理数据包丢失和连接到其他用户. WebRTC API再一次让我们可以轻松访问告诉我们何时出现连接问题的事件.

会话管理

会话管理优惠管理,开放和组织联系.这通常称为信令.如果您将音频和视频流传输给用户,则转移附属数据也是有意义的.这是通过 RTCDataChannel API 来完成的.

Google,Mozilla,Opera等公司的工程师们为将这种实时体验带到了很好的工作岗位. Web.

浏览器兼容性

WebRTC标准是网络上发展最快的标准之一,因此并不意味着每个浏览器都支持所有相同的功能同时.要检查您的浏览器是否支持WebRTC,您可以访问 https://img01.yuandaxia.cn/Content/img/tutorials/webrtc/.在所有教程中,我建议您使用Chrome进行所有示例.

试用WebRTC

现在让我们开始使用WebRTC.通过 https://apprtc.appspot.com/将您的浏览器导航到演示站点

点击加入

单击"加入"按钮.你应该看到一个下拉通知.

点击允许

点击"允许"按钮开始将视频和音频流式传输到网页.您应该看到自己的视频流.

打开网址

现在,在新的浏览器选项卡中打开您当前所在的URL,然后单击"加入".你应该看到两个视频流 : 一个来自你的第一个客户端,另一个来自第二个客户端.

Video Stream

现在你应该理解为什么WebRTC是一个强大的工具.

用例

实时网络为全新系列打开了大门应用程序,包括基于文本的聊天,屏幕和文件共享,游戏,视频聊天等.除了沟通,您可以将WebRTC用于其他目的,例如 :

  • 实时营销

  • 实时广告

  • 后台通信(CRM,ERP,SCM,FFM)

  • 人力资源管理

  • 社交网络

  • 约会服务

  • 在线医疗咨询

  • 金融服务

  • 监控

  • 多人游戏

  • 直播

  • 电子学习

摘要

现在您应该清楚地了解WebRTC一词.您还应该知道可以使用WebRTC构建哪些类型的应用程序,因为您已经在浏览器中尝试过.总而言之,WebRTC是一项非常有用的技术.