mediamtx README

The project's README from github.com/bluenviron/mediamtx. As one markdown file: README.md.

MediaMTX

Website Test Lint CodeCov Release Docker Hub


MediaMTX is a ready-to-use and zero-dependency live media server and media proxy that allows to publish, read, proxy, record and playback real-time video and audio streams. It has been conceived as a "media router" that routes media streams from one end to the other, with a focus on efficiency and portability.

Install Documentation

Features

mediamtx (bluenviron/mediamtx)

Searching Database…

20.4K ·GitHub
What is this?MediaMTX is a ready-to-use, zero-dependency live media server and media proxy: it publishes, reads, proxies, records and plays back real-time video and audio streams.
Is it a library I import into my code, or a server I run on its own?A standalone server, not a library — one executable with no dependencies or interpreter, conceived as a media router that routes streams from one end to the other.
How do I get it running?Download the prebuilt single executable for your OS and run it — no dependencies or interpreter, nothing else to set up first.
Which operating systems does it support?Linux, Windows and macOS are supported — it ships as a single native executable, so no runtime or interpreter is needed on any of them.
Do viewers have to use the same protocol the publisher used?No — streams are automatically converted from one protocol to another, so one RTSP camera can simultaneously serve WebRTC browsers, HLS players and more. Several streams run at once in separate paths.
Can it record streams and play them back later?Yes — it records streams to disk in fMP4 or MPEG-TS format and plays recorded streams back. It can also serve an always-available stream even when the publisher is offline.
What does it offer for operating and monitoring the server?A Control API for management, Prometheus-compatible metrics, performance monitoring to investigate CPU and RAM consumption, and hooks that run external commands when clients connect, disconnect, read or publish.
Can I restrict who is allowed to publish or watch?Yes — users can be authenticated with internal, HTTP or JWT authentication before they publish or read streams.
What are similar projects?go2rtc, ZLMediaKit, srs, livego, SmarterStreaming, livekit, FFmpeg, webrtc
Creator
bluenviron
Size
10 MB
Stars
20.4K
Age
6y
Commits · 90 Days