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 9c5930464f
Some checks are pending
code_lint / go (push) Waiting to run
code_lint / go_mod (push) Waiting to run
code_lint / docs (push) Waiting to run
code_lint / api_docs (push) Waiting to run
code_test / test_64 (push) Waiting to run
code_test / test_32 (push) Waiting to run
code_test / test_e2e (push) Waiting to run
playback: support concatenating segments with long gaps (#5172)
Thanks to the new mtxi MP4 box, it's possible to check whether two
segments are consecutive without involving dates or timestamps.

When the new mtxi box is present in both segments, do not check if
the end of the first segment corresponds to the start of the
second segment.
2025-12-01 21:27:08 +01:00
.github build(deps): bump actions/checkout from 5 to 6 (#5223) 2025-11-21 02:15:01 +01:00
api apidocs: fix compatibility with OpenAPI 3.0 (#5210) 2025-11-22 23:05:08 +01:00
docker bump Golang to 1.25 (#4870) 2025-09-12 10:20:19 +02:00
docs docs: update (#5152) 2025-11-18 04:07:03 +01:00
internal playback: support concatenating segments with long gaps (#5172) 2025-12-01 21:27:08 +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/go-git/go-git/v5 from 5.16.3 to 5.16.4 (#5228) 2025-11-30 13:12:38 +01:00
go.sum build(deps): bump github.com/go-git/go-git/v5 from 5.16.3 to 5.16.4 (#5228) 2025-11-30 13:12:38 +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.6.2 (#5205) 2025-11-18 04:17:11 +01:00
mediamtx.yml support multiple CORS origins (#5150) 2025-11-21 02:00:46 +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.