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.
Find a file
2026-01-01 22:58:47 +01:00
.github build(deps): bump actions/download-artifact from 6 to 7 (#5271) 2025-12-22 19:44:25 +01:00
api add structured logging (#5219) 2025-12-27 20:42:06 +01:00
docker move away from balenalib Docker images (#5313) 2026-01-01 22:52:39 +01:00
docs rpi: advertise support for Raspberry Pi OS Trixie (#5312) 2026-01-01 22:58:47 +01:00
internal simplify code (#5314) 2026-01-01 22:47:59 +01:00
scripts add self-upgrader (#3501) (#5035) 2025-10-13 13:06:47 +02:00
.dockerignore rename apidocs into api (#4844) 2025-08-09 16:05:34 +02:00
.gitignore rename apidocs into api (#4844) 2025-08-09 16:05:34 +02:00
.golangci.yml update golangci-lint configuration (#5182) 2025-11-11 23:57:52 +01:00
go.mod build(deps): bump github.com/bluenviron/gortmplib from 0.1.2 to 0.2.0 (#5300) 2025-12-28 17:29:27 +01:00
go.sum build(deps): bump github.com/bluenviron/gortmplib from 0.1.2 to 0.2.0 (#5300) 2025-12-28 17:29:27 +01:00
LICENSE remove hls.js from the repository and restore plain MIT license (#3008) 2024-02-12 00:31:13 +01:00
logo.png rewrite readme (#2015) 2023-07-02 14:03:53 +02:00
main.go change repository owner (#1801) 2023-05-16 16:14:20 +02:00
Makefile bump golangci-lint to 2.7.2 (#5261) 2025-12-22 19:43:20 +01:00
mediamtx.yml add structured logging (#5219) 2025-12-27 20:42:06 +01:00
README.md add self-upgrader (#3501) (#5035) 2025-10-13 13:06:47 +02:00
SECURITY.md docs: add security page (#4922) 2025-08-31 16:57:27 +02:00

MediaMTX

Website Test Lint CodeCov Release Docker Hub


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.

Features

  • Publish live streams to the server with SRT, WebRTC, RTSP, RTMP, HLS, MPEG-TS, RTP
  • 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 streams to disk in fMP4 or MPEG-TS format
  • Playback recorded streams
  • Authenticate users with internal, HTTP or JWT authentication
  • Forward streams to other servers
  • Proxy requests to other servers
  • Control the server through the Control API
  • Extract metrics from the server in a Prometheus-compatible format
  • Monitor performance to investigate CPU and RAM consumption
  • Run 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.