https://github.com/bluenviron/mediamtx
Ready-to-use SRT / WebRTC / RTSP / RTMP / LL-HLS media server and media proxy that allows to read, publish, proxy, record and playback video and audio streams.
https://github.com/bluenviron/mediamtx
go golang hls media-server obs-studio rtcp rtmp rtmp-proxy rtmp-server rtp rtsp rtsp-proxy rtsp-relay rtsp-server srt streaming webrtc webrtc-proxy
Last synced: about 1 month ago
JSON representation
Ready-to-use SRT / WebRTC / RTSP / RTMP / LL-HLS media server and media proxy that allows to read, publish, proxy, record and playback video and audio streams.
- Host: GitHub
- URL: https://github.com/bluenviron/mediamtx
- Owner: bluenviron
- License: mit
- Created: 2019-12-28T20:08:43.000Z (about 6 years ago)
- Default Branch: main
- Last Pushed: 2025-05-12T13:07:08.000Z (9 months ago)
- Last Synced: 2025-05-12T14:28:34.977Z (9 months ago)
- Topics: go, golang, hls, media-server, obs-studio, rtcp, rtmp, rtmp-proxy, rtmp-server, rtp, rtsp, rtsp-proxy, rtsp-relay, rtsp-server, srt, streaming, webrtc, webrtc-proxy
- Language: Go
- Homepage:
- Size: 10.7 MB
- Stars: 14,280
- Watchers: 158
- Forks: 1,752
- Open Issues: 182
-
Metadata Files:
- Readme: README.md
- License: LICENSE
- Security: SECURITY.md
Awesome Lists containing this project
- awesome-go - aler9/mediamtx - simple-server. ready-to-use RTSP / RTMP / LL-HLS / WebRTC server and proxy that allows to read, publish and proxy video and audio streams.|6,058| (Popular)
- awesome-ip-camera - MediaMTX
- awesome-repositories - bluenviron/mediamtx - Ready-to-use SRT / WebRTC / RTSP / RTMP / LL-HLS / MPEG-TS / RTP media server and media proxy that allows to read, publish, proxy, record and playback video and audio streams. (Go)
- cpp-learning-2025 - bluenviron/mediamtx - dependency RTMP/RTSP/WebRTC server | (Real-World Projects / Audio/Video & Streaming)
- awesome-github-repos - bluenviron/mediamtx - Ready-to-use SRT / WebRTC / RTSP / RTMP / LL-HLS / MPEG-TS / RTP media server and media proxy that allows to read, publish, proxy, record and playback video and audio streams. (Go)
README
[](https://mediamtx.org)
[](https://github.com/bluenviron/mediamtx/actions/workflows/code_test.yml)
[](https://github.com/bluenviron/mediamtx/actions/workflows/code_lint.yml)
[](https://app.codecov.io/gh/bluenviron/mediamtx/tree/main)
[](https://github.com/bluenviron/mediamtx/releases)
[](https://hub.docker.com/r/bluenviron/mediamtx)
_MediaMTX_ is a ready-to-use and zero-dependency real-time media server and media proxy that allows to publish, read, proxy, record and playback video and audio streams. It has been conceived as a "media router" that routes media streams from one end to the other.
|[Install](https://mediamtx.org/docs/kickoff/install)|[Documentation](https://mediamtx.org/docs/kickoff/introduction)|
|-|-|
Features
- [Publish](https://mediamtx.org/docs/usage/publish) live streams to the server with SRT, WebRTC, RTSP, RTMP, HLS, MPEG-TS, RTP
- [Read](https://mediamtx.org/docs/usage/read) live streams from the server with SRT, WebRTC, RTSP, RTMP, HLS
- Streams are automatically converted from a protocol to another
- Serve several streams at once in separate paths
- Reload the configuration without disconnecting existing clients (hot reloading)
- [Record](https://mediamtx.org/docs/usage/record) streams to disk in fMP4 or MPEG-TS format
- [Playback](https://mediamtx.org/docs/usage/playback) recorded streams
- [Authenticate](https://mediamtx.org/docs/usage/authentication) users with internal, HTTP or JWT authentication
- [Forward](https://mediamtx.org/docs/usage/forward) streams to other servers
- [Proxy](https://mediamtx.org/docs/usage/proxy) requests to other servers
- [Control](https://mediamtx.org/docs/usage/control-api) the server through the Control API
- [Extract metrics](https://mediamtx.org/docs/usage/metrics) from the server in a Prometheus-compatible format
- [Monitor performance](https://mediamtx.org/docs/usage/performance) to investigate CPU and RAM consumption
- [Run hooks](https://mediamtx.org/docs/usage/hooks) (external commands) when clients connect, disconnect, read or publish streams
- Compatible with Linux, Windows and macOS, does not require any dependency or interpreter, it's a single executable
- ...and many [others](https://mediamtx.org/docs/kickoff/introduction).