WebRTC中的三角形和梯形

简介:




这是一种最常见的情景,两个浏览器同时从Web服务器中下载同一个WebRTC服务器中下载有WebRTC功能的Web程序。就像上面的图展示的那样。为什么会是三角形?因为这三个元素之间的信令路线和和媒体之间所构成的形状恰似一个三角形。两个浏览器之间的通讯并不通过Web服务器,而是通过建立对等连接来实现音视频媒体以及一些附加数据。

在WebRTC中我们常常把浏览器和服务器之间的连接成为信令,但是其实他并非指电话系统中的信令。信令在WebRTC中并没有实现标准化。

由于信令没有标准化,所以现在的信令被视为应用程序的一部分。HTTP和WebScoket都可以作为传输信令的通道。野狗实时视频通话技术在这部分使用的就是基于WebSocket的野狗实时数据同步来作为信令。

WebRTC中的梯形:

WebRTC梯形中采用的都是标准协议。例如:很多视频会议系统用到的会话发起协议(SIP)或者Jingle。当然,还可以采用专有的信令协议。

会话发起协议(Session Initiation Protocol,缩写SIP)是一个由IETF MMUSIC工作组开发的协议,作为标准被提议用于建立,修改和终止包括视频,语音,即时通信,在线游戏和虚拟现实等多种多媒体元素在内的交互式用户会话。

Jingle由Google及XMPP标准基金会设计。其多媒体流被设计用于RTP(实时传输协议)。若需要,可由NAT穿透辅助以使用ICE(交互式连接建立)。 FROM 维基百科

如果浏览器想和一个SIP客户端(例如SIP电话)进行视频通话,首先要做的少就是从Web服务器下载带有WebRTC代码的网页程序,在浏览器端向Web服务器发起音频通话请求对象M,Web服务器把M发给SIP服务器,SIP服务器把请求M发给SIP客户端(例如SIP电话)。SIP客户端在成功接收请求之后会相应另外一个请求对象S发给SIP服务器,SIP服务器把S发给Web服务器,Web服务器把S发给浏览器。在进行外上面的步骤后,浏览器和SIP服务器开始进行打洞,密钥协商,媒体会话等操作。会话关闭的时候流程和建立链接的时候类似。这里不再复述。

采用Jingle协议实现WebRTC的功能:

整个过程和SIP模式相比除了Web服务器A和Web服务器B之间采用的协议不同,其他的基本相似。这里不再详细说明。


作者:Wilddog

来源:51CTO

相关文章
|
10天前
|
数据采集 人工智能 安全
|
6天前
|
机器学习/深度学习 人工智能 前端开发
构建AI智能体:七十、小树成林,聚沙成塔:随机森林与大模型的协同进化
随机森林是一种基于决策树的集成学习算法,通过构建多棵决策树并结合它们的预测结果来提高准确性和稳定性。其核心思想包括两个随机性:Bootstrap采样(每棵树使用不同的训练子集)和特征随机选择(每棵树分裂时只考虑部分特征)。这种方法能有效处理大规模高维数据,避免过拟合,并评估特征重要性。随机森林的超参数如树的数量、最大深度等可通过网格搜索优化。该算法兼具强大预测能力和工程化优势,是机器学习中的常用基础模型。
318 164
|
4天前
|
机器学习/深度学习 自然语言处理 机器人
阿里云百炼大模型赋能|打造企业级电话智能体与智能呼叫中心完整方案
畅信达基于阿里云百炼大模型推出MVB2000V5智能呼叫中心方案,融合LLM与MRCP+WebSocket技术,实现语音识别率超95%、低延迟交互。通过电话智能体与座席助手协同,自动化处理80%咨询,降本增效显著,适配金融、电商、医疗等多行业场景。
323 155
|
5天前
|
编解码 人工智能 自然语言处理
⚽阿里云百炼通义万相 2.6 视频生成玩法手册
通义万相Wan 2.6是全球首个支持角色扮演的AI视频生成模型,可基于参考视频形象与音色生成多角色合拍、多镜头叙事的15秒长视频,实现声画同步、智能分镜,适用于影视创作、营销展示等场景。
378 4
|
13天前
|
SQL 自然语言处理 调度
Agent Skills 的一次工程实践
**本文采用 Agent Skills 实现整体智能体**,开发框架采用 AgentScope,模型使用 **qwen3-max**。Agent Skills 是 Anthropic 新推出的一种有别于mcp server的一种开发方式,用于为 AI **引入可共享的专业技能**。经验封装到**可发现、可复用的能力单元**中,每个技能以文件夹形式存在,包含特定任务的指导性说明(SKILL.md 文件)、脚本代码和资源等 。大模型可以根据需要动态加载这些技能,从而扩展自身的功能。目前不少国内外的一些框架也开始支持此种的开发方式,详细介绍如下。
918 7