mediamtx v1.18.0

v1.18.0
Added 4
  • Track HLS sessions through cookies or query parameters to enable session inspection through logs, metrics and API, track outbound bytes more precisely, and reduce load on external HTTP authentication URLs
  • Support serving streams with a CDN
  • Add readerType attribute to path_readers metric to filter path readers by type
  • Support Axis SRTP variant in RTSP client
Changed 10
  • Add a label after every listener opened message that mentions protocols of every listener
  • Embed TLS master keys into packet dumps when dumpPackets is true, in a format compatible with Wireshark
  • Use token as query parameter key to pass tokens, with legacy jwt query parameter key still supported
  • Expose token passed as query parameter to HTTP authentication
  • Return errors as JSON in playback API
  • Improve metrics performance by using string.Builder instead of string concatenation
Fixed 5
  • Prevent out-of-memory errors by imposing maximum size on body of incoming HTTP requests and responses
  • Fix metrics filtering by type=rtmp_conns and type=rtmps_conns
  • Fix race condition in metrics when reloading configuration
  • Fix RTSP-over-HTTP tunnel request target in RTSP client
  • Support parsing RTSP responses with no status message
Deprecated 1
  • authJWTInHTTPQuery configuration and JWTs in query parameters
New major features

HLS

Fixes and improvements

General

API

RTSP

HLS

Dependencies

  • code.cloudfoundry.org/bytefmt updated from v0.67.0 to v0.69.0
  • github.com/alecthomas/kong updated from v1.14.0 to v1.15.0
  • github.com/bluenviron/gohlslib/v2 updated from v2.2.9 to v2.3.0
  • github.com/bluenviron/gortsplib/v5 updated from v5.5.1 to v5.5.2
  • github.com/go-git/go-git/v5 updated from v5.17.2 to v5.18.0
  • github.com/matthewhartstonge/argon2 updated from v1.4.6 to v1.5.2
  • github.com/pion/ice/v4 updated from v4.2.2 to v4.2.5
  • golang.org/x/crypto updated from v0.49.0 to v0.50.0
  • golang.org/x/sys updated from v0.42.0 to v0.43.0
  • golang.org/x/term updated from v0.41.0 to v0.42.0
  • github.com/pion/stun/v3 updated from v3.1.1 to v3.1.2
  • github.com/pion/turn/v4 removed
  • golang.org/x/net updated from v0.52.0 to v0.53.0
  • golang.org/x/text updated from v0.35.0 to v0.36.0
  • golang.org/x/time updated from v0.12.0 to v0.14.0
  • github.com/pion/turn/v5 v5.0.3 added
  • hls.js updated from v1.6.15 to v1.6.16
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
View original

Upgraded? How did it go?

Discussion