
https://github.com/bluenviron/mediamtx
MediaMTX(原名 rtsp-simple-server)是一款轻量级、高性能、零依赖的开源实时媒体服务器和媒体代理,专为现代流媒体场景设计。它支持多种主流流媒体协议,能够实现视频/音频流的发布、读取、代理、录制、回放以及跨协议转换,适用于直播、视频监控、远程医疗、工业视觉、新闻回传等多种应用场景。
核心特性
-
多协议支持
原生支持以下协议:- RTSP(Real Time Streaming Protocol)
- RTMP(Real-Time Messaging Protocol)
- WebRTC(超低延迟网页直播)
- SRT(Secure Reliable Transport,高可靠低延迟传输)
- LL-HLS(Low-Latency HTTP Live Streaming)
- WHIP/WHEP(WebRTC HTTP Ingestion/Playback)
-
跨协议自动转换
用户可通过任意协议推流(如 RTMP),并用其他协议拉流(如 WebRTC 或 RTSP),MediaMTX 自动完成协议转换与格式适配,无需额外转码(若编码格式兼容)。 -
零依赖 & 单文件部署
采用 Go 语言开发,编译为单个可执行文件,无需安装 FFmpeg、GStreamer 等外部依赖,支持 Linux、Windows、macOS 及 ARM 架构(如树莓派、Atlas 500 智能小站)。 -
高性能 & 低资源占用
基于 Goroutines 实现高并发,单机可支撑数百路流;支持硬件加速(通过集成 FFmpeg 的 NVENC/CUVID、VAAPI、AMF 等),显著降低 CPU 负载。 -
灵活的流管理能力
- 支持 静态路径(预定义流)与 动态路径(按需发布)
- 可配置 录制(保存为 .ts 或 .mp4 文件)
- 支持 流转发(forward 到其他 MediaMTX 或流媒体服务器)
- 提供 API 控制接口(RESTful API v3)用于动态启停流、查询状态
- 支持 身份认证(基于用户名/密码或 IP 白名单)
-
热重载配置
修改mediamtx.yml配置文件后,无需重启服务即可生效,保障业务连续性。 -
可观测性与运维友好
- 内置 Prometheus 指标(
/metrics) - 提供健康检查端点(
/healthz) - 支持 pprof 性能分析
- 详细日志输出(可分级、定向到文件或 stdout)
- 内置 Prometheus 指标(
典型应用场景
- 工业视觉:接入 IPC 摄像头(RTSP),通过 WebRTC 低延迟查看现场画面。
- 新闻直播回传:记者用 SRT 推流至总部,观众通过 HLS 或 WebRTC 观看。
- 边缘计算节点:在 Atlas 500 等国产 ARM 设备上部署,实现本地流处理与转发。
- 多平台分发:一次推流,同时提供 RTMP(给 OBS)、WebRTC(给网页)、HLS(给手机 App)三种拉流方式。
- 流录制与回放:自动录制关键事件视频,支持按时间检索回放。
8683

被折叠的 条评论
为什么被折叠?



