常用流媒体服务器

article/2025/10/30 11:53:05

1、Mediasoup

mediasoup是相对比较新的一个WebRTC服务器端的开源项目。它更多是通过集成包方式和其他应用服务器来集成。它支持SFU模式,主要支持视频聊天,媒体流广播等。

 其特点是:

通过底层API实现和第三方集成,安装简单,文档齐全,技术支持相对较弱,功能支持比较单一。2、Jitsi开源视频会议

        Jitsi 平台是非常活跃的开源视频会议平台,其对标的视频会议产品是zoom,Google meet等视频会议平台。其视频会议功能意见非常完善,包括终端,服务器端,会议桥和录像,屏幕共享,即时消息,SIP网关接入/电话入会等功能。

其基本特点:

        功能完整,文档齐全,技术支持完善,提供很多自定义的接口,快速部署,SFU, 开发语言(java, lua)非常庞大,安装的服务和界面管理系统配置文件比较多,源代码安装相对比较复杂。

3、WebRTC媒体服务器

        WebRTC技术最初的使用架构是点对点的(浏览器之间的)通信,这也是其非常强大的一个优势,用户无需安装任何第三方插件自己和对端进行通信。但是,随着技术本身的不断发展和业务场景的复杂程度越来越高,用户场景中就需要一个WebRTC服务器端,媒体服务器或者WebRTC网关来进行媒体,信令管理或者转换处理。因此,市场上逐渐出现了各种针对WebRTC应用场景发布的一些开源的WebRTC服务器端开源项目。

另外,根据视频会议是WebRTC的主要卖点,因此关于WebRTC的处理方式,很多开源媒体服务器的架构有有所不同,有的服务器端支持MCU方式,有的支持SFU方式,还有的WebRTC服务器支持混合方式。

        根据很多数据说明,在浏览器和云平台或者大容量的部署中,很多集成商选择了SFU模式,以便能够充分拓展,降低服务器的处理负载。当然,也有用户选择MCU的方式可以非常方便集中控制其服务器处理流程。两种方式各有其优缺点,这取决于用户使用场景和自己的集成方式。

        除了基于WebRTC的视频会议以外,WebRTC媒体服务器还可以支持各种流媒体的推送服务和直播等场景,还有和SIP对接集成的功能。因此,很多时候,WebRTC服务器端也可以作为一个WebRTC网关来使用,实现和传统PSTN电话系统的集成对接,实现信令转换处理。例如,通过Asterisk/WebRTC/SIP/FXO呼入呼出等场景。

4、Janus

        Janus是比较早期的WebRTC 服务器端的开源项目,官方对其定义是一个WebRTC服务器端,支持的功能比较丰富,通过core模块来支持不同的插件的方式。开发语言(C语言),代码架构比较清晰,支持了SIP 接口(补丁后的sofia)。

其特点是:

        通过强大的core模块实现对插件的拓展,支持SFU模式,客户端集成相对比较简单,团队相对比较小,社区支持较弱。

5、Licode

        Licode是一个开源的WebRTC通信平台,提供了服务器端和客户端完整的产品配套。它支持视频会议,用户房间管理等非常灵活的功能,支持MCU模式。目前没有看到界面管理系统发布。

其特点是:

        安装配置相对比较简单,专注于视频会议,房间功能开发相对比较灵活,完全WebRTC支持。社区支持较弱,视频会议拓展方式实现,目前没有看到无SIP接口

6、其他开源第三方WebRTC网关

        除了以上几种独立的WebRTC媒体服务器以外,比较热门的基于语言的开源平台也逐渐发力,不断增加对WebRTC能力的支持。其中,Asterisk(SFU)和FreeSWITCH(MCU)都已经发布了多个版本支持WebRTC的视频会议功能,很多第三方集成商也在其平台逐渐增加了WebRTC的支持,通过第三方的sip.js 客户端实现企业级的视频会议功能。Kamailio也可以作为一个WebRTC网关服务器端实现WebRTC/SIP之间的信令处理。

        还有另外一种方式是使用WebRTC 媒体服务器集成Asterisk或者FreeSWITCH实现WebRTC的呼叫中心,融合通信跨平台解决方案。

         因为,Asterisk和FreeSWITCH都是实现的媒体服务器功能,因此在WebRTC的实现上没有太多的区别。因为,本身Asterisk或FreeSWITHC可以支持SIP/PSTN,这两个媒体服务器和WebRTC平台集成相对更加简单。

7、red5pro

        Red5 Pro专注于视频直播和媒体流转发处理的WebRTC媒体服务器,支持服务器端和客户端SDK开发,支持的编码方式比较多。

         其特点是:流媒体直播功能比较丰富,支持多种客户端文档和社区支持相对较弱。

8、Ant-媒体服务器

        Ant-Media-Server是从red5pro 克隆出来的开源项目,也支持了一个企业版的项目,它目前支持两个不同的版本:开源版本和企业版本。它支持SFU模式,目前支持了比较多的应用功能,并且支持了很多非常灵活的针对拓展功能,带宽调整优化,低延时等功能。更多应用在视频直播等场景中。

其特点是:

        支持拓展方式,支持对各种编码,环境进行调整优化,实时录像支持(MP4和HLS),支持对社交媒体平台的媒体推送等,企业版本支持了很多非常实用的功能。

        社区版本支持的功能有限,企业版本功能相对比较多,用户选择操作困难。

        以上这些服务器端本身都有各自的特点和开发的目标,因此有一些服务器端不一定完全能够满足用户自己的需求,用户需要根据其特性和自己的场景来加以取舍,最终需要用户根据WebRTC 服务器端的产品定位,功能,支持能力和自己的需求来决定选用哪种服务器。


http://chatgpt.dhexx.cn/article/Be4uqQX9.shtml

相关文章

开源流媒体服务器Red5实施案列分析

Red5是一个采用Java开发开源的Flash流媒体服务器。它支持:把音频 (MP3)和视频(FLV)转换成播放流; 录制客户端播放流(只支持FLV);共享对象;现场直播流发布&…

Red5流媒体服务器的搭建与使用

什么是流媒体服务器 流媒体指以流形式在网络中传送音频、视频和多媒体文件的媒体形式。相对于下载后观看的网络播放形式而言,流媒体的典型特征是把连续的音频和视频信息压缩后放到网络服务器上,用户边下载边观看,而不必等待整个文件下载完毕…

Red5流媒体服务器初探——Red5服务器的搭建

由于个人的兴趣爱好,想利用手中的树莓派搭建一个环境监控系统。由于需要一个流媒体服务器用于多媒体数据的接收与推送,所以最近稍微了解了下Red5 Media Server方面的东西。 搭建Red5服务器 首先在百度中搜索“Red5”关键字可以获得以下链接:…

Red5流服务器搭建(实现在线直播,流媒体视频播放和在线视频会议)

最近研究了一下流媒体技术,也试着用免费开源的Red5搭建了流服务器,实现了直播,视频播放,远程视频会议等功能,下面是近期实践的总结, 一. 先介绍一下流媒体技术: 所谓流媒体技术,是…

搭建Windows Red5流媒体服务器详解

搭建Windows Red5流媒体服务器详解 环境 win7 64 位 一、下载程序 setup-Red5-1.0.0-java6.exe 或者 setup-Red5-1.0.1-java6.exe 推荐 下载1.0.1 版本 , 后面rtmp 播放使用的是1.0.1 版本的red5 red51.0.0 下载地址 http://download.csdn.net/detail/keepin…

Red5流媒体服务器的搭建

Red5搭建耗了我很多时间,尝试了Red5的N多个版本,从0.9.0~1.0.5都试过了。 还有JDK的版本,也尝试了很多从jdk6u43到jdk7u79都试过了。 我主要的一个问题就是,在Red5的安装页面看不到安装的AppName,因此我试了很多都不…

(一)使用RED5搭建流媒体服务器

——–本次是在windows中搭建成功,并且成功演示demo 1.安装好jdk red5-server-1.05 以下需要JDK-1.7 red5-server-1.06 以上需要JDK-1.8 2.到官方下载red5-server-1.04 压缩文件 https://github.com/Red5/red5-server/releases 安装步骤: 1&#…

nginx+red5流媒体服务器搭建

公司 近期要开展演练投票,需要对演练视频进行观看,由于服务器资源有限,所以决定将视频部署到多个流媒体上,并且通过nginx进行负载调节; 一、red5流媒体搭建 Red5 是一个采用 Java 开发开源的 Flash 流媒体服务器。 下…

【Java】Red5服务器搭建(实现在线直播,流媒体视频播放)

为什么80%的码农都做不了架构师?>>> 引言 流媒体文件是目前非常流行的网络媒体格式之一,这种文件允许用户一边下载一边播放,从而大大减少了用户等待播放的时间。另外通过网络播放流媒体文件时,文件本身不会在本地磁盘中…

Red5流媒体服务器的完整尝试

1、下载Red5以及Java环境 所需要的文件如下:JDK可利用华为镜像快速下载 然后解压JDK与red5,配置JDK环境变量JAVA_HOMEE:\Program Files\Java\jdk1.8.0_20 配置好运行环境后,点击red5.bat即可启动,在浏览器地址栏输入http://localhost:5080/出…

流媒体服务器之Red5环境搭建

首先先介绍一下RED5,Red5的主要功能和Macromedia公司的FMS类似,提供基于Flash的流媒体服务的一款基于Java的开源流媒体服务器。它由Java语言编写,使用RTMP作为流媒体传输协议,这与FMS完全兼容。它具有流化FLV、MP3文件&#xff0c…

java语言【#106. 求绝对值】(已通过)

题目描述 ​ 在数学中,对于小于 0 的实数 n 来说,它的绝对值等于 −n,而对于大于等于 0 的实数来说,它的绝对值等于自身。 ​ 输入一个实数,输出它的绝对值。 输入 ​ 输入一个实数 n (−100.0≤n≤100.0…

java求数字的绝对值

1.代码如下: package com.aaa;import java.util.Scanner;public class Shuzi {public static void main(String[] args) { // 求数字的绝对值Scanner scnew Scanner(System.in);while (true) {System.out.println("请输入你要判断的数字");double…

java中负数取绝对值,面试篇

前言: 这篇文章主要介绍了26道Spring经典面试题总结(附带答案)的相关资料,小编在网上看到的觉得挺不错的,现在分享给大家,希望对你们有所帮助。 另外本人整理收藏了多家公司面试知识点整理 ,以及各种Java核心知识点免费分享给大家,下方只是部分截图 想要资料的话也可以在…

CentOS7.4配置OpenLDAP Client集成AD服务及SSSD服务与SSH服务

一、前置准备 1、基础环境说明 客户端操作系统:CentOS 7.4 core AD服务器:WinServer 2012 R2 2、AD证书导出 1).服务器管理 服务器管理→AD CS→证书颁发机构→所有任务→备份CA 2).证书备份(导出) 备份项目→设置密码(默认为空)→完成 二、OpenL…

通过AD域验证登录Linux系统(Linux安装sssd加入Windows AD域)

背景 有一台Centos 7 的Linux服务器,需要每个IT管理员都可以登录并进行维护,为了方便账户管理,统一认证,要求Linux服务器登录实现Windows AD域验证。 环境说明 AD域:Windows server 2019 AD域主机IP : 192.168.100.…

使用AFS, Active Directory和SSSD搭建用于集成电路设计的分布式存储系统 【十七】部署 AFS 客户端 2 统一身份登录

使用AFS, Active Directory和SSSD搭建用于集成电路设计的分布式存储系统 【十七】部署 AFS 客户端 2 统一身份登录 Linux 统一身份登录和查询POSIX 属性 (POSIX Attributes)安装组件程序加入 AD 域测试 LDAP 查询配置 NSS 和 PAM配置 SSSD验证 SSSD 配置针对 AFS 进一步配置 PA…

linux 7 realm,系统运维|Samba 系列(十五):用 SSSD 和 Realm 集成 Ubuntu 到 Samba4 AD DC...

本教程将告诉你如何将 Ubuntu 桌面版机器加入到带有 SSSD 和 Realm 服务的 Samba4 活动目录域中,以在活动目录中认证用户。 要求: 第 1 步:初始配置 1、 在把 Ubuntu 加入活动目录前确保主机名被正确设置了。使用 hostnamectl 命令设置机器名字或者手动编辑 /etc/hostname 文…

linux的sssd服务,使用FreeIPA为SS信任用户在SSSD上设置默认登录Shell

本文介绍使用FreeIPA为SS信任用户在SSSD上设置默认登录Shell的方法。 前言 IPA身份管理服务器提供与Microsoft Active Directory的双向用户身份和密码同步,但是在配置IPA和Active Directory之后,用户的默认shell是/bin/sh,本文将讨论如何在Fr…

freeipa 客户端 Kerberos认证 SSSD关系

参考资料: Documentation - FreeIPA Kerberos - FreeIPA SSSD Architecture - sssd.io Password management — MIT Kerberos Documentation https://posts.specterops.io/attacking-freeipa-part-i-authentication-77e73d837d6a freeIPA中kerberos跟LDAP是怎…