v1.12.1

bluenviron/mediamtxv1.12.1May 4, 2025by github-actions[bot]

AI Summary

Improvements to JWT authentication (exclusion, parsing) and RPI camera functionality, along with fixes for H265 crashes and WebRTC code quality.

Key Highlights

  • Add authJWTExclude to exclude actions when using JWT
  • Support parsing JWT claims encoded as strings
  • Support filtering interface and source IP in UDP sources
  • Fix H265 crash with malicious payload
  • Improve JavaScript classes in WebRTC

New Features

  • Add authJWTExclude
  • Support parsing JWT claims encoded as strings
  • Support filtering interface and source IP in UDP sources
  • Support customizing official Docker images
  • Remove v8 suffix from arm64 binaries

Full Release Notes

## Fixes and improvements

General

* add authJWTExclude to exclude actions when using JWT (https://github.com/bluenviron/mediamtx/issues/3431)
* support parsing JWT claims encoded as strings (https://github.com/bluenviron/mediamtx/issues/3696) (https://github.com/bluenviron/mediamtx/issues/4465)
* support filtering interface and source IP in UDP sources (https://github.com/bluenviron/mediamtx/issues/4178) (https://github.com/bluenviron/mediamtx/issues/4464)
* support customizing official Docker images (https://github.com/bluenviron/mediamtx/issues/4471)
* remove v8 suffix from arm64 binaries (https://github.com/bluenviron/mediamtx/issues/4472)
* fix recordPath documentation (https://github.com/bluenviron/mediamtx/issues/4480)
* h265: fix crash in DTS extractor with malicious payload (https://github.com/bluenviron/mediacommon/issues/191)
* fmp4: block tracks with invalid timescale (https://github.com/bluenviron/mediacommon/issues/192)

RTSP

* support decoding H264 units without Marker field (https://github.com/bluenviron/mediamtx/issues/3945) (https://github.com/bluenviron/gortsplib/issues/759) (like the ones produced by the FLIR M400)
* fix SDP compatibility with some Uniview cameras (https://github.com/bluenviron/gortsplib/issues/618) (https://github.com/bluenviron/gortsplib/issues/765)
* prevent decoding SDPs without media streams (https://github.com/bluenviron/gortsplib/issues/769)
* prevent decoding formats with zero clock rate or channels (https://github.com/bluenviron/gortsplib/issues/770)
* fix crash when reading tracks with zero clock rate (https://github.com/bluenviron/mediamtx/issues/4476) (https://github.com/bluenviron/gortsplib/issues/772)also prevents RTCP sender and RTCP reports from being emitted whentrack has clock rate set to zero.
* client: enable keepalives in most cases (https://github.com/bluenviron/gortsplib/issues/775)

WebRTC

* simplify webrtcTurnSecretExpiration (https://github.com/bluenviron/mediamtx/issues/4453)
* improve JavaScript classes (https://github.com/bluenviron/mediamtx/issues/4455)* add close() method* move support functions into classes as static methods* convert arrow functions into standard functions* make most methods private* add JSDocs
* prevent payload type conflict in read page (https://github.com/bluenviron/mediamtx/issues/4456)

RPI Camera

* fix missing clock rate in secondary stream (https://github.com/bluenviron/mediamtx/issues/4476) (https://github.com/bluenviron/mediamtx/issues/4478)
* fix using camera when /usr/sbin is not in PATH (https://github.com/bluenviron/mediamtx/issues/4479)
* support displaying microseconds in text overlay (https://github.com/bluenviron/mediamtx/issues/3866) (https://github.com/bluenviron/mediamtx-rpicamera/issues/47)

Dependencies

* code.cloudfoundry.org/bytefmt updated from v0.36.0 to v0.39.0
* github.com/MicahParks/keyfunc/v3 updated from v3.3.10 to v3.3.11
* github.com/bluenviron/gortsplib/v4 updated from v4.13.0 to v4.14.0
* github.com/bluenviron/mediacommon/v2 updated from v2.1.0 to v2.1.1
* github.com/go-git/go-git/v5 updated from v5.15.0 to v5.16.0
* github.com/matthewhartstonge/argon2 updated from v1.2.1 to v1.3.0
* github.com/pion/rtp updated from v1.8.13 to v1.8.15
* github.com/bluenviron/mediamtx-rpicamera updated from v2.4.0 to v2.4.1

## Security

Binaries have been produced by the [Release workflow](https://github.com/bluenviron/mediamtx/actions/workflows/release.yml) without human intervention.

SHA256 checksums:

* mediamtx_v1.12.1_darwin_amd64.tar.gz 2919ecc2738703fbac3411301cf7876c43fb1dff73e334e49d7c1d893e705328
* mediamtx_v1.12.1_darwin_arm64.tar.gz e7f7da716ae00c5363db98ab72c661978e439803e5983442ced3222571a8dcb4
* mediamtx_v1.12.1_linux_amd64.tar.gz 3fa66f5ffa546d74875b24c18984500a865b58309cd44eaca24c65ce4375d880
* mediamtx_v1.12.1_linux_arm64.tar.gz e0d2d16e7bf22d43290231f781659d291db5600ed146e7b3f33257c5f162f1e0
* mediamtx_v1.12.1_linux_armv6.tar.gz ce75093f6ad276b89c2d3223d0337cca17e53b7ed2c2631aa5bd5e22c0c8b00e
* mediamtx_v1.12.1_linux_armv7.tar.gz 0189a4edb9d798bd4793b4c9bb38f1e78073cb2dcee8d15db3774263ff2975de
* mediamtx_v1.12.1_windows_amd64.zip 890924df75226377fcad61037791ac92103f140710b23c3050b0f8ed5e908388