versatica / mediasoup 使用和特点简要介绍

591 阅读1分钟

mediasoup v3

网站和文档

支持论坛

设计目标

mediasoup 和它的客户端库被设计为完成以下目标:

  • 成为一个SFU(选择性转发单元)。
  • 同时支持WebRTC和普通RTP的输入和输出。
  • 在服务器端成为一个Node.js模块/Rust crate。
  • 在客户端是一个很小的JavaScript和C++库。
  • 极简主义:只处理媒体层。
  • 与信令无关:不要求任何信令协议。
  • 是超低级别的API。
  • 支持所有现有的WebRTC端点。
  • 能够与知名的多媒体库/工具集成。

使用案例

mediasoup 和它的客户端库提供了一个超低级别的 API。它们旨在实现不同的用例和场景,没有任何限制或假设。这些用例中的一些是。

  • 小组视频聊天应用。
  • 一对多(或几对多)的实时广播应用。
  • RTP流媒体。

特点

  • ECMAScript 6/Idiomatic Rust低级别API。
  • 多流:通过一个ICE+DTLS传输的多个音频/视频流。
  • IPv6就绪。
  • 通过UDP和TCP的ICE / DTLS / RTP / RTCP。
  • 支持同步广播和SVC。
  • 拥堵控制。
  • 发送方和接收方带宽估计与空间/时间层分配算法。
  • 数据信息交换(通过WebRTC DataChannels,通过普通UDP的SCTP,以及在Node.js/Rust中直接终止)。
  • 功能极其强大(在libuv之上用C++编码的媒体工作者线程/子进程)。

在线演示

v3demo.mediasoup.org(源代码)上试用。

许可证

ISC