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
Alessandro Ros e0f4748839
Some checks failed
code_lint / go (push) Has been cancelled
code_lint / go_mod (push) Has been cancelled
code_lint / docs (push) Has been cancelled
code_lint / api_docs (push) Has been cancelled
code_test / test_64 (push) Has been cancelled
code_test / test_32 (push) Has been cancelled
code_test / test_e2e (push) Has been cancelled
modernize code (#4947)
2025-09-07 16:08:47 +02:00
.github docs: add linter (#4945) 2025-09-06 22:51:45 +02:00
api allow setting UDP read buffer size (#3308) (#4846) 2025-08-11 12:21:00 +02:00
docker remove v8 suffix from arm64 binaries (#4472) 2025-04-28 23:54:45 +02:00
docs docs: add linter (#4945) 2025-09-06 22:51:45 +02:00
internal modernize code (#4947) 2025-09-07 16:08:47 +02:00
scripts docs: add linter (#4945) 2025-09-06 22:51:45 +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 linter settings (#4790) 2025-07-26 16:44:32 +02:00
go.mod build(deps): bump github.com/pion/rtp from 1.8.21 to 1.8.22 (#4936) 2025-09-04 11:17:29 +02:00
go.sum build(deps): bump github.com/pion/rtp from 1.8.21 to 1.8.22 (#4936) 2025-09-04 11:17:29 +02: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 docs: add linter (#4945) 2025-09-06 22:51:45 +02:00
mediamtx.yml allow setting UDP read buffer size (#3308) (#4846) 2025-08-11 12:21:00 +02:00
README.md update documentation (#4930) 2025-09-02 10:39:11 +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
  • 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
  • Reload the configuration without disconnecting existing clients (hot reloading)
  • Monitor the server through Prometheus-compatible metrics
  • 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.