分享两款开源go与c++编写支持webrtc、rstp、rmtp等协议的流媒体直播服务程序ZLMediaKit和mediamtx

分享两款开源go与c++编写支持webrtc、rstp、rmtp等协议的流媒体直播服务程序ZLMediaKit和mediamtx

一、ZLMediaKit

800_auto

ZLMediaKit是基于C++11的高性能运营级流媒体服务框架,具有以下特点和功能:

项目特点:

使用C++11开发,代码稳定可靠,性能优越,避免使用裸指针。

支持多种流媒体协议,包括RTSP、RTMP、HLS、HTTP-FLV、WebSocket-FLV、GB28181、HTTP-TS、WebSocket-TS、HTTP-fMP4、WebSocket-fMP4、MP4、WebRTC等,还支持协议之间的互转

使用多路复用、多线程、异步网络IO模式,支持海量客户端连接,并发性能出色。

经过长期大量的稳定性和性能测试,已经在线上商用验证。

支持多平台,包括Linux、macOS、iOS、Android、Windows。

支持多种指令集平台,如x86、arm、risc-v、mips、龙芯、申威等。

实现了画面秒开和极低延时(最低可达100毫秒)。

提供完善的标准C API,可用作SDK,也可供其他编程语言调用。

提供完整的MediaServer服务器,可直接部署为商用服务器。

提供完善的RESTful API和web hook,支持丰富的业务逻辑。

打通了视频监控协议栈与直播协议栈,对RTSP和RTMP的支持都很完善。

全面支持多种视频编码格式,包括H265、H264、AAC、G711、OPUS等。

功能丰富,支持集群、按需转协议、按需推拉流、先播后推、断连续推等功能。

具备极致性能,支持单机10W级别播放器,100Gb/s级别IO带宽能力。

提供了独家特性,如全面支持ipv6网络。

项目定位:

移动嵌入式跨平台流媒体解决方案。

商用级流媒体服务器。

网络编程二次开发SDK。

功能清单:

项目支持多种协议,包括RTSP[S]、RTMP[S]、HLS、TS、fMP4、HTTP[S]与WebSocket、GB28181与RTP推流、MP4点播与录制、WebRTC、SRT等。具体功能包括但不限于:

支持不同协议的服务器和客户端。

支持多种音视频编码格式。

支持HTTP和WebSocket协议,包括跨域访问。

支持GB28181和RTP推流,双向语音对讲。

支持MP4文件点播与录制。

支持WebRTC推流和播放,包括单端口、多线程、网络连接迁移等特性。

支持SRT协议。

提供RESTful API和web hook事件。

支持配置文件热加载。

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

...

点击查看剩余70%

{{collectdata}}

网友评论