余晖落尽暮晚霞,黄昏迟暮远山寻
本站
当前位置:网站首页 > 编程知识 > 正文

WebRTC已经成为W3C和IETF标准(webrtc ie)

xiyangw 2022-11-25 12:12 18 浏览 0 评论

更多互联网新鲜资讯、工作奇淫技巧关注原创【飞鱼在浪屿】(日更新)

本文是WebRTC的历史,体系结构,用例和未来的简要概述。

制定Web标准的过程是一个漫长的过程,可确保跨浏览器的有用性,一致性和兼容性。今天,W3C和IETF标志着疫情期间最重要的标准之一WebRTC的完成。


历史#

WebRTC是一个平台,可为浏览器,移动应用程序和桌面应用程序提供实时通信功能,通常用于视频通话。该平台包括一套全面的技术和标准。Google于2009年提出创建WebRTC的想法,以替代无法在浏览器中运行的Adobe Flash和桌面应用程序。上一代基于浏览器的产品建立在许可的专有技术之上。借助环聊,各种产品都采用了这种技术。然后,谷歌收购了获得该技术许可的公司,并将其作为开源WebRTC项目提供。该代码库已集成在Chrome中,并由使用WebRTC的大多数应用程序使用。与其他浏览器供应商和行业领导者(例如Mozilla,Microsoft,Cisco,和爱立信一样,W3C和IETF都开始了WebRTC的标准化。2013年,Mozilla和Google 在他们的浏览器之间演示了视频通话。随着标准的发展,许多架构讨论导致跨浏览器的实现差异,并挑战了兼容性和互操作性。随着标准在过去几年中最终定稿,大多数分歧最终得以解决。现在,WebRTC规范随附了 用于解决兼容性的 全套平台测试和工具,并且浏览器已在很大程度上相应地调整了其实现。这结束了一个充满挑战的时期,Web开发人员必须不断将其服务用于不同的浏览器实现和规范更改。


架构和功能#

RTCPeerConnectionAPI是WebRTC规范的核心部分。RTCPeerConnection处理连接不同端点上的两个应用程序以使用对等协议进行通信。该PeerConnection API与之紧密交互, getUserMedia以访问摄像头和麦克风,以及 getDisplayMedia捕获屏幕内容。WebRTC通过以下方式发送和接收包含音频和/或视频内容以及任意二进制数据的流:

DataChannel用于处理,编码和解码音频和视频的媒体功能提供了任何WebRTC实现的核心。

WebRTC支持各种音频编解码器,其中Opus是使用最多且用途最广泛的。要求WebRTC实施同时支持Google的免费使用的VP8视频编解码器和H.264来处理视频。

WebRTC连接始终是加密的,这可以通过两个现有协议来实现:DTLS和SRTP。

WebRTC在很大程度上依赖于现有的标准和技术,从视频编解码器(VP8,H264),网络遍历(ICE),传输(RTP,SCTP)到媒体描述协议(SDP)。这包括在50多个RFC中。


使用情况:当它的毫秒的事#

WebRTC广泛用于需要实时的应用程序,例如远程手术,系统监控和自动驾驶汽车的远程控制,以及无法建立缓冲的基于UDP的语音或视频呼叫。Google,Facebook,Cisco,RingCentral和Jitsi等公司的几乎所有基于浏览器的视频通话服务都使用WebRTC。Google Stadia和NVidia Geforce Now现在使用WebRTC可以将游戏流程从云端传输到网络浏览器,而不会出现明显的延迟。


流行看跌专注于视频通话性能#

在过去的一年中,由于浏览器中视频通话的增加,WebRTC在Chrome中的使用率增长了100倍。视频通话已成为疫情期间许多人生活的基本组成部分,浏览器供应商已开始优化视频通话所依赖的技术。当员工和学生开始在家工作和学习时,由于资源要求的大型会议和视频效果在视频会议中变得越来越普遍,这一点尤其重要。在过去的一年中,Chrome对于视频通话的电池友好性提高了30%以上,并针对大量使用场景进行了更多优化。Mozilla,Apple和Microsoft都进行了重大改进 在通过大流行实施WebRTC的过程中,特别是确保他们遵守现在正式的标准。


WebRTC的未来#

WebRTC现在已作为W3C标准完成,但改进仍在继续。节省多达50%带宽的新视频编解码器AV1 在WebRTC和Web浏览器中可用。开源代码库的持续改进有望进一步减少延迟并提高可流式传输的视频质量。 WebRTC NV主动创建了辅助API以启用新用例。这些包括对现有API的扩展,以提供对现有功能(如可伸缩视频编码)的更多控制,以及可以访问较低级别组件的API 。后者通过集成高性能的自定义WebAssembly组件,为Web开发人员提供了更大的创新灵活性。随着新兴的5G网络以及对更多交互式服务的需求,预计在来年基于WebRTC的服务将继续增长。

相关推荐

前后端分离 Vue + NodeJS(Koa) + MongoDB实践

作者:前端藏经阁转发链接:https://www.yuque.com/xwifrr/gr8qaw/vr51p4写在前面闲来无事,试了一下Koa,第一次搞感觉还不错,这个项目比较基础但还是比较完整了,...

MongoDB 集群如何工作?

一、什么是“MongoDB”?“MongoDB”是一个开源文档数据库,也是领先的“NoSQL”数据库,分别用“C++”“编程语言”编写,使用带有“Schema”的各种类似JSON的文档,是也分别被认为...

三部搭建mongo,和mongo UI界面

三步搭建mongo,和mongoUI界面安装首先你需要先有一个docker的环境检查你的到docker版本docker--versionDockerversion18.03.1-ce,b...

Mongodb 高可用落地方案

此落地方案,用于实现高可用。复制集这里部署相关的复制集,用于实现MongoDB的高可用。介绍MongoDB复制集用于提供相关的数据副本,当发生硬件或者服务中断的时候,将会从副本中恢复数据,并进行自动...

一次线上事故,我顿悟了MongoDB的精髓

大家好,我是哪吒,最近项目在使用MongoDB作为图片和文档的存储数据库,为啥不直接存MySQL里,还要搭个MongoDB集群,麻不麻烦?让我们一起,一探究竟,继续学习MongoDB分片的理论与实践,...

IDEA中安装MongoDB插件-再也无要nosql manager for mongodb

大家都知道MongoDB数据库作为典型的非关系型数据库被广泛使用,但基于MongoDB的可视化管理工具-nosqlmanagerformongodb也被用的较多,但此软件收费,所以国内的破解一般...

数据库监控软件Lepus安装部署详解

Lepus安装部署一、软件介绍Lepus是一套开源的数据库监控平台,目前已经支持MySQL、Oracle、SQLServer、MongoDB、Redis等数据库的基本监控和告警(MySQL已经支持复...

YAPI:从0搭建API文档管理工具

背景最近在找一款API文档管理工具,之前有用过Swagger、APIManager、Confluence,现在用的还是Confluence。我个人一直不喜欢用Swagger,感觉“代码即文档”,让代...

Mac安装使用MongoDB

下载MongoDB包:https://www.mongodb.com/download-center解压mongodb包手动解压到/usr/local/mongodb文件夹配置Mac环境变量打开环境...

保证数据安全,不可不知道的MongoDB备份与恢复

大家在项目中如果使用MongoDB作为NOsql数据库进行存储,那一定涉及到数据的备份与恢复,下面给大家介绍下:MongoDB数据备份方法在MongoDB中我们使用mongodump命令来备...

MongoDB数据备份、还原脚本和定时任务脚本

备注:mongodump和mongorestore命令需要在MongoDB的安装目录bin下备份脚本备份格式/usr/local/mongodb/bin/mongodump -h ...

等保2.0测评:mongoDB数据库

一、MongoDB介绍MongoDB是一个基于分布式文件存储的数据库。由C++语言编写。旨在为WEB应用提供可扩展的高性能数据存储解决方案。MongoDB是一个介于关系数据库和非关系数据库之间的产...

MongoDB入门实操《一》

什么是MongoDBMongoDB是一个基于分布式文件存储的数据库。由C++语言编写。旨在为WEB应用提供可扩展的高性能数据存储解决方案。MongoDB是一个介于关系数据库和非关系数据库之...

Python安装PyMongo的方法详细介绍

欢迎点击右上角关注小编,除了分享技术文章之外还有很多福利,私信学习资料可以领取包括不限于Python实战演练、PDF电子文档、面试集锦、学习资料等。前言本文主要给大家介绍的是关于安装PyMongo的...

第四篇:linux系统中mongodb的配置

建议使用普通用户进行以下操作。1、切换到普通用户odysee。2、准备mongodb安装包,自行去官网下载。3、解压安装包并重命名为mongodb4.04、配置mongodbcdmongod...

取消回复欢迎 发表评论: