默认
打赏 发表评论 5
想开发IM:买成品怕坑?租第3方怕贵?找开源自已撸?尽量别走弯路了... 找站长给点建议
新手入门:到底什么是WebRTC服务器,以及它是如何联接通话的?
阅读(387034) | 评论(5 收藏8 淘帖1
微信扫一扫关注!

WebRTC 简介


WebRTC,名称源自网页实时通信(Web Real-Time Communication)的缩写,是一个支持网页浏览器进行实时语音通话或视频聊天的技术,是谷歌2010年以6820万美元收购Global IP Solutions公司而获得的一项技术。

WebRTC提供了实时音视频的核心技术,包括音视频的采集、编解码、网络传输、显示等功能,并且还支持跨平台:windows,linux,mac,android。

虽然WebRTC的目标是实现跨平台的Web端实时音视频通讯,但因为核心层代码的Native、高品质和内聚性,开发者很容易进行除Web平台外的移殖和应用。很长一段时间内WebRTC是业界能免费得到的唯一高品质实时音视频通讯技术。

概述


通过WebRTC的端到端通信通常被人们所误解。WebRTC并不是真正意味着你不需要服务器来协商和联接通话。它只意味着,在多数情况中,你可以直接地在浏览器之间进行通信。

更多资料


更多WebRTC的开发资料请见:http://www.52im.net/forum.php?mod=collection&action=view&ctid=5

WebRTC正常工作所需的后端服务器


要想让任何WebRTC服务正常的工作,你需要如下几条后端服务器:

1. 信令服务器:
对于联接浏览器之前的对话来说,最重要的就是某种中介器—一个了解通话双方端点的服务器。这就是信令服务器,负责协商会话,而且可能是最接近WebRTC服务器的东西了。

通常,这个服务器也会穿过会话发送相关数据。信令服务器可以实施像SIP或XMPP的标准化协议,或者私有协议。有时,信令内容也会作为Web服务器的一部分来操作网页。其他情况中,信令服务器就专门用来处理信令了。

2. TURN和STUN服务器:
当通话两端端点都检测到了对方的时候,他们会尝试着在其之间建立直接联接—有时候会有用,但也有不起作用的时候。

当没有用的时候,是因为在通信通道上的网络地址转换或者防火墙机制,要么掩盖了浏览器的地址,将其从私人IP地址转换到公共地址,要么它们认为这个会话是不安全的,以至于它们会阻拦流入的数据流并且不允许通话的进行。

为了克服这些问题,WebRTC使用了STUN和TURN,它们是要求服务器构件来协助协商媒体传输的协议,而且有时将所有的媒体都中继给TURN服务器。

3. 媒体服务器:
甚至在协商信令以及联通媒体之后,我们可能还想要在服务端处理媒体。这种功能是需要有的,因为这样用户就可以实施一个有着大量参与者的会话,并且记录存档会话或会话到其他类型的网络协议的网关。在这些情况中,我们就会用到后端的媒体服务器。

小结


根据使用情况,上面所介绍的每种服务器都可以被认为是WebRTC服务器或者是与WebRTC服务器相关。在大多情况中,通常是将信令服务器视为WebRTC服务器的。

附录:更多实时音视频技术文章


[1] 开源实时音视频技术WebRTC的文章:
开源实时音视频技术WebRTC的现状
简述开源实时音视频技术WebRTC的优缺点
访谈WebRTC标准之父:WebRTC的过去、现在和未来
良心分享:WebRTC 零基础开发者教程(中文)[附件下载]
WebRTC实时音视频技术的整体架构介绍
新手入门:到底什么是WebRTC服务器,以及它是如何联接通话的?
WebRTC实时音视频技术基础:基本架构和协议栈
浅谈开发实时视频直播平台的技术要点
[观点] WebRTC应该选择H.264视频编码的四大理由
基于开源WebRTC开发实时音视频靠谱吗?第3方SDK有哪些?
开源实时音视频技术WebRTC中RTP/RTCP数据传输协议的应用
简述实时音视频聊天中端到端加密(E2EE)的工作原理
实时通信RTC技术栈之:视频编解码
开源实时音视频技术WebRTC在Windows下的简明编译教程
网页端实时音视频技术WebRTC:看起来很美,但离生产应用还有多少坑要填?
>> 更多同类文章 ……

[2] 实时音视频开发的其它精华资料:
专访微信视频技术负责人:微信实时视频聊天技术的演进
即时通讯音视频开发(一):视频编解码之理论概述
即时通讯音视频开发(二):视频编解码之数字视频介绍
即时通讯音视频开发(三):视频编解码之编码基础
即时通讯音视频开发(四):视频编解码之预测技术介绍
即时通讯音视频开发(五):认识主流视频编码技术H.264
即时通讯音视频开发(六):如何开始音频编解码技术的学习
即时通讯音视频开发(七):音频基础及编码原理入门
即时通讯音视频开发(八):常见的实时语音通讯编码标准
即时通讯音视频开发(九):实时语音通讯的回音及回音消除概述
即时通讯音视频开发(十):实时语音通讯的回音消除技术详解
即时通讯音视频开发(十一):实时语音通讯丢包补偿技术详解
即时通讯音视频开发(十二):多人实时音视频聊天架构探讨
即时通讯音视频开发(十三):实时视频编码H.264的特点与优势
即时通讯音视频开发(十四):实时音视频数据传输协议介绍
即时通讯音视频开发(十五):聊聊P2P与实时音视频的应用情况
即时通讯音视频开发(十六):移动端实时音视频开发的几个建议
即时通讯音视频开发(十七):视频编码H.264、VP8的前世今生
实时语音聊天中的音频处理与编码压缩技术简述
网易视频云技术分享:音频处理与压缩技术快速入门
学习RFC3550:RTP/RTCP实时传输协议基础知识
基于RTMP数据传输协议的实时流媒体技术研究(论文全文)
声网架构师谈实时音视频云的实现难点(视频采访)
浅谈开发实时视频直播平台的技术要点
还在靠“喂喂喂”测试实时语音通话质量?本文教你科学的评测方法!
实现延迟低于500毫秒的1080P实时音视频直播的实践分享
移动端实时视频直播技术实践:如何做到实时秒开、流畅不卡
如何用最简单的方法测试你的实时音视频方案
技术揭秘:支持百万级粉丝互动的Facebook实时视频直播
简述实时音视频聊天中端到端加密(E2EE)的工作原理
移动端实时音视频直播技术详解(一):开篇
移动端实时音视频直播技术详解(二):采集
移动端实时音视频直播技术详解(三):处理
移动端实时音视频直播技术详解(四):编码和封装
移动端实时音视频直播技术详解(五):推流和传输
移动端实时音视频直播技术详解(六):延迟优化
理论联系实际:实现一个简单地基于HTML5的实时视频直播
IM实时音视频聊天时的回声消除技术详解
浅谈实时音视频直播中直接影响用户体验的几项关键技术指标
如何优化传输机制来实现实时音视频的超低延迟?
首次披露:快手是如何做到百万观众同场看直播仍能秒开且不卡顿的?
Android直播入门实践:动手搭建一套简单的直播系统
网易云信实时视频直播在TCP数据传输层的一些优化思路
实时音视频聊天技术分享:面向不可靠网络的抗丢包编解码器
>> 更多同类文章 ……

即时通讯网 - 即时通讯开发者社区! 来源: - 即时通讯开发者社区!

标签:WebRTC

本帖已收录至以下技术专辑

推荐方案
评论 5
Mark~

假若信令服务器好比我们的传统的业务后台;那么TURN和STUN应该怎么理解??类似TCP/IP 那层面的东西了么???那媒体服务器就单纯控制我们的会话和传输的媒体数据流??
引用:Rayman 发表于 2021-03-02 18:01
假若信令服务器好比我们的传统的业务后台;那么TURN和STUN应该怎么理解??类似TCP/IP 那层面的东西了么 ...

TURN和STUN解决的是p2p和NAT通信相关的事情
我有疑问啊,webrtc没出现之前,音视频技术用的什么呢
签名: 第一天
引用:vvushao 发表于 2022-01-15 21:55
我有疑问啊,webrtc没出现之前,音视频技术用的什么呢

要么是大厂自研,要么就是买第3方的,很贵
打赏楼主 ×
使用微信打赏! 使用支付宝打赏!

返回顶部