开源技术分享:全面支持rtsp/rtmp/hls/http-flv/ws-flv/fmp4/gb28181的强大流媒体服务ZLMediaKit
什么!都2020年了,你还在用nginx,srs和虚假开源easydarwin搭建流媒体服务?全面而开源的ZLMediaKit你值得拥有!
ZLMediaKit项目维护地址:https://github.com/xia-chu/ZLMediaKit
ZLMediaKit是什么
一个高性能运营级流媒体服务框架。
提供完整的MediaServer服务器,可以免开发直接部署为商用服务器。
提供完善的restful api以及webhook,支持丰富的业务逻辑。
提供完善的标准C API,可以作SDK用,或供其他语言调用。
ZLMediaKit支持哪些协议接入和分发
- 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
- 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编码
- 其他
- 支持丰富的restful api以及web hook事件
- 支持简单的telnet调试
- 支持配置文件热加载
- 支持流量统计、推拉流鉴权等事件
- 支持虚拟主机,可以隔离不同域名
- 支持按需拉流,无人观看自动关断拉流
- 支持先拉流后推流,提高及时推流画面打开率
- 提供c api sdk
- 支持FFmpeg拉流代理任意格式的流
- 支持http api生成并返回实时截图
- 支持按需解复用、转协议,当有人观看时才开启转协议
咨询作者注意事项:
QQ私聊一般不接受无偿技术咨询和支持,除了以下情况例外:
一般只接受以下人员的私聊技术咨询
1、提交过pr或其他形式的代码
2、开源过基于zlmediakit的项目
3、在qq群里面热心解答过相关技术问题
4、分享过自写的zlmediakit相关文档
5、做过一切对zlmediakit发展和推广有贡献的事情