Skip to content

MediaMTX

v1.19.0 Feature

This release adds 3 notable features for engineering teams evaluating rollout.

Published 1d Media Servers
✓ No known CVEs patched
Read the diff → Tool health → What is this tool? →

✓ No known CVEs patched in this version

Topics

go hls media-over-quic media-server obs-studio rtcp
+12 more
rtmp rtmp-proxy rtmp-server rtp rtsp rtsp-proxy rtsp-relay rtsp-server srt streaming webrtc webrtc-proxy

Affected surfaces

deps auth

Summary

AI summary

Broad release touches Fixes and improvements General, New major features Media-over-QUIC, https://github.com/bluenviron/mediamtx/issues/5778, and client.

Changes in this release

Feature Medium

Adds Media-over-QUIC support for reading and publishing streams.

Adds Media-over-QUIC support for reading and publishing streams.

Source: llm_adapter@2026-06-02

Confidence: high

Feature Medium

Adds FLAC support for RTMP reading and writing.

Adds FLAC support for RTMP reading and writing.

Source: llm_adapter@2026-06-02

Confidence: high

Feature Medium

Adds FLAC support for HLS reading and publishing.

Adds FLAC support for HLS reading and publishing.

Source: llm_adapter@2026-06-02

Confidence: high

Feature Medium

Adds user agent field to RTMP, RTSP, WebRTC, and HLS.

Adds user agent field to RTMP, RTSP, WebRTC, and HLS.

Source: llm_adapter@2026-06-02

Confidence: high

Feature Medium

Adds --check-version CLI flag to query available updates.

Adds --check-version CLI flag to query available updates.

Source: llm_adapter@2026-06-02

Confidence: high

Feature Low

Uses frame timestamp for text overlay in RPI Camera input.

Uses frame timestamp for text overlay in RPI Camera input.

Source: granite4.1:30b@2026-06-02-audit

Confidence: low

Dependency Low

Updates multiple dependencies (e.g., gohlslib v2.4.0, pion/webrtc v4.2.14).

Updates multiple dependencies (e.g., gohlslib v2.4.0, pion/webrtc v4.2.14).

Source: llm_adapter@2026-06-02

Confidence: high

Bugfix Medium

Fixes hot reloading race when metrics server reloads SRT server.

Fixes hot reloading race when metrics server reloads SRT server.

Source: llm_adapter@2026-06-02

Confidence: high

Bugfix Medium

Fixes hot reloading race when API server reloads RTMPS server.

Fixes hot reloading race when API server reloads RTMPS server.

Source: llm_adapter@2026-06-02

Confidence: high

Bugfix Medium

Triggers RTSP TCP timeout only if no data is received, accepting keepalive responses.

Triggers RTSP TCP timeout only if no data is received, accepting keepalive responses.

Source: llm_adapter@2026-06-02

Confidence: high

Bugfix Medium

Fixes HLS playlist race condition during generation.

Fixes HLS playlist race condition during generation.

Source: llm_adapter@2026-06-02

Confidence: high

Bugfix Low

Prevents exit on undocumented Flash control messages in RTMP.

Prevents exit on undocumented Flash control messages in RTMP.

Source: granite4.1:30b@2026-06-02-audit

Confidence: low

Bugfix Low

Removes redundant JavaScript argument from HLS output.

Removes redundant JavaScript argument from HLS output.

Source: granite4.1:30b@2026-06-02-audit

Confidence: low

Bugfix Low

Ensures coherent version string across all HLS playlists.

Ensures coherent version string across all HLS playlists.

Source: granite4.1:30b@2026-06-02-audit

Confidence: low

Bugfix Low

Makes internal JavaScript variables private in WebRTC client.

Makes internal JavaScript variables private in WebRTC client.

Source: granite4.1:30b@2026-06-02-audit

Confidence: low

Bugfix Low

Fixes connectivity after network changes in WebRTC sessions.

Fixes connectivity after network changes in WebRTC sessions.

Source: granite4.1:30b@2026-06-02-audit

Confidence: low

Full changelog

New major features

Media-over-QUIC

  • support reading and publishing with Media-over-QUIC (https://github.com/bluenviron/mediamtx/issues/5815) Media-over-QUIC is a streaming protocol built upon cutting edge protocols (QUIC, HTTP3) and browser APIs (WebTransport, WebCodecs). It's slightly faster than WebRTC, has an advanced data recovery mechanism, it supports additional codecs (FLAC) and is less complicated to route. Check the documentation for instructions and details.

RTMP

  • support reading and writing FLAC (https://github.com/bluenviron/mediamtx/issues/5778) (https://github.com/bluenviron/mediamtx/issues/5789)

HLS

  • support reading and publishing FLAC (https://github.com/bluenviron/mediamtx/issues/5778) (https://github.com/bluenviron/mediamtx/issues/5791)

Fixes and improvements

General

  • Add user agent field to RTMP, RTSP, WebRTC, and HLS (https://github.com/bluenviron/mediamtx/issues/5753)
  • add --check-version command line flag (https://github.com/bluenviron/mediamtx/issues/5786) this allows to check whether a new version is available without upgrading.
  • use file name suffix for OS-specific code wherever possible (https://github.com/bluenviron/mediamtx/issues/5787)
  • fix two hot reloading cases (https://github.com/bluenviron/mediamtx/issues/5817) * reload SRT server when metrics server is reloaded * reload API server when RTMPS server is reloaded

RTSP

  • client: trigger TCP timeout only if nothing is received (https://github.com/bluenviron/gortsplib/issues/1002) (https://github.com/bluenviron/gortsplib/issues/968) (https://github.com/bluenviron/gortsplib/issues/1067) Previously, a data packet was required, now a keepalive response from the server is enough.
  • sdp: support non-standard 'meta' media type (https://github.com/bluenviron/gortsplib/issues/1068)
  • forbid H264 packetization mode zero (https://github.com/bluenviron/gortsplib/issues/1072) Packetization mode zero requires allowing inefficient and brittle fragmented UDP packets, which we are not.

RTMP

  • client: add FLAC fourCC (https://github.com/bluenviron/gortmplib/issues/73)
  • do not exit in case of undocumented Flash control messages (https://github.com/bluenviron/mediamtx/issues/5512) (https://github.com/bluenviron/gortmplib/issues/75)

HLS

  • remove redundant JavaScript argument (https://github.com/bluenviron/mediamtx/issues/5806)
  • muxer: fix race condition when generating playlist (https://github.com/bluenviron/gohlslib/issues/359) (https://github.com/bluenviron/gohlslib/issues/360) Max age of playlist depends on segments, so it needs to be covered by the segment mutex.
  • muxer: use coherent version in all playlists (https://github.com/bluenviron/mediamtx/issues/5781) (https://github.com/bluenviron/gohlslib/issues/363)

WebRTC

  • make JavaScript internal variables private (https://github.com/bluenviron/mediamtx/issues/5804)
  • fix connectivity after network changes (https://github.com/bluenviron/mediamtx/issues/5097) (https://github.com/bluenviron/mediamtx/issues/5818)

RPI Camera

  • use timestamp of frame in text overlay (https://github.com/bluenviron/mediamtx/issues/2733) (https://github.com/bluenviron/mediamtx-rpicamera/issues/103)

Dependencies

  • code.cloudfoundry.org/bytefmt updated from v0.72.0 to v0.74.0
  • github.com/abema/go-mp4 updated from v1.5.0 to v1.6.0
  • github.com/bluenviron/gohlslib/v2 updated from v2.3.2 to v2.4.0
  • github.com/bluenviron/gortmplib updated from v0.3.2 to v0.4.0
  • github.com/bluenviron/gortsplib/v5 updated from v5.5.3 to v5.5.4
  • github.com/bluenviron/mediacommon/v2 updated from v2.8.3 to v2.9.0
  • github.com/go-git/go-git/v5 updated from v5.19.0 to v5.19.1
  • github.com/matthewhartstonge/argon2 updated from v1.5.3 to v1.5.4
  • github.com/pion/ice/v4 updated from v4.2.5 to v4.2.7
  • github.com/pion/transport/v4 updated from v4.0.1 to v4.0.2
  • github.com/pion/webrtc/v4 updated from v4.2.12 to v4.2.14
  • golang.org/x/crypto updated from v0.51.0 to v0.52.0
  • golang.org/x/net updated from v0.54.0 to v0.55.0
  • golang.org/x/sys updated from v0.44.0 to v0.45.0
  • github.com/pion/dtls/v3 updated from v3.1.2 to v3.1.3
  • github.com/pion/sctp updated from v1.9.5 to v1.10.0
  • github.com/pion/srtp/v3 updated from v3.0.10 to v3.0.11
  • github.com/pion/stun/v3 updated from v3.1.2 to v3.1.4
  • github.com/pion/turn/v5 updated from v5.0.3 to v5.0.7
  • github.com/quic-go/webtransport-go v0.10.0 added
  • golang.org/x/sync v0.20.0 added
  • github.com/dunglas/httpsfv v1.1.0 added
  • github.com/bluenviron/mediamtx-rpicamera updated from v2.5.7 to v2.6.0

Security

Binaries are compiled from source code by the Release workflow, which is a fully-visible process that prevents any change or external interference in produced artifacts.

Checksums of binaries are also published in a public blockchain by using GitHub Attestations, and they can be verified by running:

ls mediamtx_* | xargs -L1 gh attestation verify --repo bluenviron/mediamtx

You can verify checksums of binaries by downloading checksums.sha256 and running:

cat checksums.sha256 | grep "$(ls mediamtx_*)" | sha256sum --check

Weekly OSS security release digest.

The CVE patches and breaking changes that affected production tools this week. One email, every Sunday.

No spam, unsubscribe anytime.

Share this release

Track MediaMTX

Get notified when new releases ship.

Sign up free

About MediaMTX

Ready-to-use, zero-dependency real-time media server and proxy to publish, read, record, playback and route video/audio streams over SRT, WebRTC, RTSP, RTMP, HLS, MPEG-TS, RTP.

All releases →

Beta — feedback welcome: [email protected]