流媒体服务器之 ZLMediaKit介绍

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

流媒体服务器是流媒体应用的核心系统,是运营商向用户提供视频服务的关键平台。流媒体服务器的主要功能是对流媒体内容进行采集、缓存、调度和传输播放。流媒体应用系统的主要性能体现都取决于媒体服务器的性能和服务质量。因此,流媒体服务器是流媒体应用系统的基础,也是最主要的组成部分。

ZLMediaKit特点及优势

• 基于C++ • 支持协议:RTSP、RTMP、HLS、HTTP-FLV、WebSocket-FLV、GB28181、HTTP-TS、WebSocket-TS、HTTP-fMP4、WebSocket-fMP4、MP4、WebRTC • 基于多路复用/多线程/异步网络IO、并发性能好 • 经过长期的市场验证 • 支持linux、macos、ios、android、windows • 画面延控制在500毫秒内,最低可达100毫秒 • 提供 C API做为SDK,语言也可以直接调用API • 可以直接部署为MediaServer服务器 • 提供restful api、web hook • 支持H265/H264/AAC/G711/OPUS • 支持集群、按需转协议、按需推拉流、先播后推、断连续推等功能 • 单机10W级别播放器,100Gb/s级别io带宽

功能

RTSP[S]

  • RTSP[S] 服务器,支持RTMP/MP4/HLS转RTSP[S],支持亚马逊echo show这样的设备

  • RTSP[S] 播放器,支持RTSP代理,支持生成静音音频

  • RTSP[S] 推流客户端与服务器

  • 支持 rtp over udp rtp over tcp rtp over http rtp组播 四种RTP传输方式

  • 服务器/客户端完整支持Basic/Digest方式的登录鉴权,全异步可配置化的鉴权接口

  • 支持H265编码

  • 服务器支持RTSP推流(包括rtp over udp rtp over tcp方式)

  • 支持H264/H265/AAC/G711/OPUS编码,其他编码能转发但不能转协议

RTMP[S]

  • RTMP[S] 播放服务器,支持RTSP/MP4/HLS转RTMP

  • RTMP[S] 发布服务器,支持录制发布流

  • RTMP[S] 播放器,支持RTMP代理,支持生成静音音频

  • RTMP[S] 推流客户端

  • 支持http[s]-flv直播

  • 支持websocket-flv直播

  • 支持H264/H265/AAC/G711/OPUS编码,其他编码能转发但不能转协议

  • 支持RTMP-H265

  • 支持RTMP-OPUS

本文福利, 免费领取C++音视频学习资料包、技术视频/代码,内容包括(音视频开发,面试题,FFmpeg ,webRTC ,rtmp ,hls ,rtsp ,ffplay ,编解码,推拉流,srs)↓↓↓↓↓↓见下面↓↓文章底部点击免费领取↓↓

HLS

  • 支持HLS文件生成,自带HTTP文件服务器

  • 通过cookie追踪技术,可以模拟HLS播放为长连接,可以实现HLS按需拉流、播放统计等业务

  • 支持HLS播发器,支持拉流HLS转rtsp/rtmp/mp4

  • 支持H264/H265/AAC/G711/OPUS编码

TS

  • 支持http[s]-ts直播

  • 支持ws[s]-ts直播

  • 支持H264/H265/AAC/G711/OPUS编码

fMP4

  • 支持http[s]-fmp4直播

  • 支持ws[s]-fmp4直播

  • 支持H264/H265/AAC/G711/OPUS编码

HTTP[S]与WebSocket

  • 服务器支持目录索引生成,文件下载,表单提交请求

  • 客户端提供文件下载器(支持断点续传),接口请求器,文件上传器

  • 完整HTTP API服务器,可以作为web后台开发框架

  • 支持跨域访问

  • 支持http客户端、服务器cookie

  • 支持WebSocket服务器和客户端

  • 支持http文件访问鉴权

GB28181与RTP推流

  • 支持UDP/TCP国标RTP(PS或TS)推流服务器,可以转换成RTSP/RTMP/HLS等协议

  • 支持RTSP/RTMP/HLS转国标推流客户端,支持TCP/UDP模式,提供相应restful api

  • 支持H264/H265/AAC/G711/OPUS编码

  • 支持海康ehome推流

MP4点播与录制

  • 支持录制为FLV/HLS/MP4

  • RTSP/RTMP/HTTP-FLV/WS-FLV支持MP4文件点播,支持seek

  • 支持H264/H265/AAC/G711/OPUS编码

WebRTC

  • 支持WebRTC推流,支持转其他协议

  • 支持WebRTC播放,支持其他协议转WebRTC

  • 支持双向echo test

  • 支持simulcast推流

  • 支持上下行rtx/nack丢包重传

  • 支持单端口、多线程、客户端网络连接迁移(开源界唯一)。

  • 支持TWCC rtcp动态调整码率

  • 支持remb/pli/sr/rr rtcp

  • 支持rtp扩展解析

  • 支持GOP缓冲,webrtc播放秒开

其他

  • 支持丰富的restful api以及web hook事件

  • 支持简单的telnet调试

  • 支持配置文件热加载

  • 支持流量统计、推拉流鉴权等事件

  • 支持虚拟主机,可以隔离不同域名

  • 支持按需拉流,无人观看自动关断拉流

  • 支持先播放后推流,提高及时推流画面打开率

  • 提供c api sdk

  • 支持FFmpeg拉流代理任意格式的流

  • 支持http api生成并返回实时截图

  • 支持按需解复用、转协议,当有人观看时才开启转协议,降低cpu占用率

  • 支持溯源模式的集群部署,溯源方式支持rtsp/rtmp/hls/http-ts, 边沿站支持hls, 源站支持多个(采用round robin方式溯源)

  • rtsp/rtmp/webrtc推流异常断开后,可以在超时时间内重连推流,播放器无感知

本文福利, 免费领取C++音视频学习资料包、技术视频/代码,内容包括(音视频开发,面试题,FFmpeg ,webRTC ,rtmp ,hls ,rtsp ,ffplay ,编解码,推拉流,srs)↓↓↓↓↓↓见下面↓↓文章底部点击免费领取↓↓


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

相关文章

基于 Red5 的流媒体服务器的搭建和应用

http://www.open-open.com/lib/view/open1427624415883.html 阅读目录 顺序流传输实时流传输准备工作:安装工作:学习 Red5 是一个采用 Java 开发的开源免费 Flash 流媒体服务器。Red5 基于 Java 和一些功能强大的开源框架,为企业级应用奠定了…

red5流媒体服务器网站,[RED5]red5流媒体服务器(开源免费)的安装方法

前言: 这次是在 centos 6.2 上安装的 第一步 安装jdk [rootlocalhost ~]# mkdir -p /usr/java && cd /usr/java [rootlocalhost java]# wget http://download.oracle.com/otn-pub/java/jdk/7u4-b20/jdk-7u4-linux-i586.rpm?AuthParam1338380823_32740b93dd6532f01b895…

1.主流的流媒体服务器FMS/wowza/red5/SRS产品对比

先列个大纲,慢慢补上内容吧: (2017年11月6日,今天开始,将写一点关于流媒体服务器相关的原创文章,由于篇幅较长,所以会坚持更新添加内容) 一、FMS(AMS)流媒体服务器介绍&#xff…

Red5流媒体服务器的安装与测试

Red5是一款基于Java的开源流媒体服务器,用它做服务器可以在Flex中实现像快播(Qvod)那样在线播放视频。Red5类似于tomcat,因此可以将red5与tomcat整合在一起.red5使用RTMP作为流媒体传输协议, 它具有流化FLV、MP3文件,实时录制客户…

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

引言 流媒体文件是目前非常流行的网络媒体格式之一,这种文件允许用户一边下载一边播放,从而大大减少了用户等待播放的时间。另外通过网络播放流媒体文件时,文件本身不会在本地磁盘中存储,这样就节省了大量的磁盘空间开销。正是这…

Red5 流媒体服务器 的使用(开发)

1. 什么是Red5. Red5是一个开源项目,用于实现flash与服务器端之间通过rtmp(real time messaging protocal)协议通信,可以实现视频、音频的传输,remote shared object等等。相对于FMS, Red5是免费、开源的。 2. 环境搭建(用Tomcat好了). 首先下…

CentOS 7下Red5流媒体服务器的搭建与测试

Red5流媒体服务器的搭建 一、Red5流媒体简介二、搭建流程1、下载Red52、修改Red5相关配置3、启动Red5服务器4、问题解决问题1:问题2: 5、测试环节6、结语 一、Red5流媒体简介 Red5流媒体服务器是一个采用Java开发的开源免费的Flash流媒体服务器。并且相…

常用流媒体服务器

1、Mediasoup mediasoup是相对比较新的一个WebRTC服务器端的开源项目。它更多是通过集成包方式和其他应用服务器来集成。它支持SFU模式,主要支持视频聊天,媒体流广播等。 其特点是: 通过底层API实现和第三方集成,安装简单&#…

开源流媒体服务器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…