v1.9.2

bluenviron/mediamtxv1.9.2Oct 7, 2024by github-actions[bot]

AI Summary

This release focuses on stability improvements, including fixes for memory leaks and WebRTC crashes. It enhances precision by using native timestamps and adds support for JWT authentication across API, Metrics, and PProf endpoints. It also improves HLS capabilities with multiple audio tracks.

Key Highlights

  • Support for JWT in Authorization header for API, Metrics, and PProf
  • Improved timestamp precision by using native timestamps
  • HLS support for generating streams with multiple audio tracks
  • Fix for WebRTC crash in case of congestion

New Features

  • Unity instructions added
  • Instructions about SELinux distributions added
  • Route original timestamps without converting to durations

Full Release Notes

## Fixes and improvements

General

* fix memory leak in case of errors during initialization of a reader (https://github.com/bluenviron/mediamtx/issues/3831)
* log track ID when skipping tracks (https://github.com/bluenviron/mediamtx/issues/3798)
* support using JWT in Authorization header with API, Metrics, PProf (https://github.com/bluenviron/mediamtx/issues/3630) (https://github.com/bluenviron/mediamtx/issues/3795)
* show right server version when server is compiled from source (https://github.com/bluenviron/mediamtx/issues/3409)
* add Unity instructions (https://github.com/bluenviron/mediamtx/issues/3837)
* route original timestamps without converting to durations (https://github.com/bluenviron/mediamtx/issues/3839). This improves timestamp precision.
* add instructions about SELinux distributions (https://github.com/bluenviron/mediamtx/issues/3673)

RTSP

* fix generating media URL with leading slash in control attribute (https://github.com/bluenviron/mediamtx/issues/3517) (https://github.com/bluenviron/gortsplib/issues/625)
* use native timestamps instead of time.Duration (https://github.com/bluenviron/gortsplib/issues/627). this improves timestamp precision

HLS

* support generating streams with multiple audio tracks (https://github.com/bluenviron/mediamtx/issues/2728) (https://github.com/bluenviron/mediamtx/issues/3793) (https://github.com/bluenviron/gohlslib/issues/181)
* muxer: put EXT-X-MEDIA before EXT-X-STREAM (https://github.com/bluenviron/gohlslib/issues/183)
* muxer: prevent creating empty parts before switching segments (https://github.com/bluenviron/gohlslib/issues/184)
* muxer: serve different tracks in different streams (https://github.com/bluenviron/gohlslib/issues/180)
* muxer: keep TARGETDURATION constant to minimize iOS errors (https://github.com/bluenviron/gohlslib/issues/187)
* use native timestamps instead of time.Duration (https://github.com/bluenviron/gohlslib/issues/190)
* client: fix computing absolute timestamp with multiple renditions (https://github.com/bluenviron/gohlslib/issues/192)

WebRTC

* fix crash in case of congestion (https://github.com/bluenviron/mediamtx/issues/3813) (https://github.com/bluenviron/mediamtx/issues/3815)
* fix connection timeout when webrtcAdditionalHosts is filled with existing IP (https://github.com/bluenviron/mediamtx/issues/3835).

Dependencies

* build(deps): bump github.com/MicahParks/jwkset from 0.5.19 to 0.5.20 (https://github.com/bluenviron/mediamtx/issues/3787)
* build(deps): bump github.com/pion/interceptor from 0.1.30 to 0.1.31 (https://github.com/bluenviron/mediamtx/issues/3825)
* build(deps): bump golang.org/x/term from 0.24.0 to 0.25.0 (https://github.com/bluenviron/mediamtx/issues/3827)
* build(deps): bump github.com/pion/interceptor from 0.1.31 to 0.1.32 (https://github.com/bluenviron/mediamtx/issues/3830)
* build(deps): bump golang.org/x/crypto from 0.27.0 to 0.28.0 (https://github.com/bluenviron/mediamtx/issues/3828)
* build(deps): bump github.com/pion/interceptor from 0.1.32 to 0.1.37 (https://github.com/bluenviron/mediamtx/issues/3840)