IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 嵌入式 -> WebRTC 服务器要干些什么 -> 正文阅读

[嵌入式]WebRTC 服务器要干些什么

概述

WebRTC 的服务器大体分为信令服务器和媒体服务器

WebRTC 信令服务器是主要功能是为 WebRTC 通讯搭建一个了解彼此能力的通道, 交换信息, 同步改动.

而媒体服务器就是用来交换媒体,包括对媒体数据的加解密,编解码,带宽和速率控制等功能

不同的 RTP Toplogies 对服务器有不同的要求

WebRTC 或者说多媒体通信一般有如下的几种拓扑结构:

  1. Point to Point 点对点
  2. Point to Multipoint Using Multicast 单点到多点(使用多播)
  3. Point to Multipoint Using the RFC 3550 Translator 单点到多点(使用RFC3550 的 Translator)
  4. Point to Multipoint Using the RFC 3550 Mixer Model 单点到多点(使用RFC3550 的Mixer)
  5. Point to Multipoint Using Video Switching MCUs 单点到多点(使用视频切换)
  6. Point to Multipoint Using RTCP-Terminating MCU 单点到多点(使用RTCP 终结方式)
  7. Non-Symmetric Mixer/Translators 非对称的 mixer/translator
  8. Combining Topologies 混合拓扑

服务器的主要功能

P2P

如果是两个人之间的端到端 (P2P) 的通信, 信令服务器的功能很简单

  1. 交换媒体通信和处理能力,主要是以 SDP 来描述
  2. 交换连接地址, 比如 ICE Candidate

而由于是点对点的通信,媒体服务器也就不需要了。

P2P

SFU

如果是 SFU(Selective Forward Unit), 那么它的信令服务器除了上述的 SDP 媒体参数协商, ICE 连接地址交换,还有参加 RTP 会话的参加者信息的同步。

SFU

多个人之间的会议系统, 信令控制会麻烦很多,除了上述两个基本功能之外, 还要有

  • 会议管理
  • 成员管理
  • 设备管理
  • 会话管理
  • 连接管理
  • 媒体管理
  • 管理会议中的实体

在 RFC4575 中有这样的定义

conference-info
     |
     |-- conference-description
     |
     |-- host-info
     |
     |-- conference-state
     |
     |-- users
     |    |-- user
     |    |    |-- endpoint
     |    |    |    |-- media
     |    |    |    |-- media
     |    |    |    |-- call-info
     |    |    |
     |    |    |-- endpoint
     |    |         |-- media
     |    |-- user
     |         |-- endpoint
     |              |-- media
     |

     |-- sidebars-by-ref
     |    |-- entry
     |    |-- entry
     |
     |-- sidebars-by-val
          |-- entry
          |    |-- users
          |         |-- user
          |         |-- user
          |-- entry
               |-- users
                    |-- user
                    |-- user
                    |-- user

MCU

Multiple Control Unit 多点控制单元相比 SFU, 它有着对于媒体流的 Mix 和 translate 功能,可以很好地适配传统的通信设备,在实际应用中,一般我们会以 SFU 为主, MCU 为辅,共同形成一个服务器集群。

MCU

服务器中需要维护领域对象

在 WebRTC 服务器上,我们一般会维护如下的领域对象

  • Conference
  • Session
  • Participate
  • Device
  • Connection
  • MediaSession
  • MediaSessionDescription
  • MediaStream
  • MediaStreamTrack
  • 等等

领域对象的具体内容从略,一般有如下的 Command 或 Event

应用层的事件大约可以分为 5 类

  • Request: 包括 command
  • Response
  • Subscribe
  • Notify
  • Message 就是一个消息,不要求响应, 例如 Presence 出席信息

具体的有

  • Start
  • End
  • Join
  • Leave
  • Offer
  • Answer
  • Mute
  • Unmute
  • Expel
  • RaiseHand
  • 等等
  嵌入式 最新文章
基于高精度单片机开发红外测温仪方案
89C51单片机与DAC0832
基于51单片机宠物自动投料喂食器控制系统仿
《痞子衡嵌入式半月刊》 第 68 期
多思计组实验实验七 简单模型机实验
CSC7720
启明智显分享| ESP32学习笔记参考--PWM(脉冲
STM32初探
STM32 总结
【STM32】CubeMX例程四---定时器中断(附工
上一篇文章      下一篇文章      查看所有文章
加:2021-08-02 10:57:40  更:2021-08-02 10:59:08 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年12日历 -2024/12/27 10:27:37-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码
数据统计