v0.22.1

bluenviron/mediamtxv0.22.1Apr 13, 2023by github-actions[bot]

AI Summary

The project is rebranded to MediaMTX with significant improvements to RTSP parsing, HLS performance, and general stability.

Key Highlights

  • Rebranding to MediaMTX
  • Support for additional characters in usernames and passwords
  • Improved HLS disk write performance and iOS compatibility
  • Support for MPEG-4 video and MP4A-LATM formats in RTSP

New Features

  • Viewport meta tag added to HLS and WebRTC pages
  • MPEG-TS format support added
  • Raspberry Pi Camera support for 32-bit OS with 64-bit kernel

Full Release Notes

## Important announcement

rtsp-simple-server is being rebranded as MediaMTX. Furthermore, my main open source projects are being transferred to the [bluenviron organization](https://github.com/bluenviron), in order to allow the community to maintain and evolve the code regardless of my personal availability.

## Fixes and improvements

General

* build(deps): bump golang.org/x/net from 0.8.0 to 0.9.0 (#1655)
* build(deps): bump golang.org/x/crypto from 0.7.0 to 0.8.0 (#1668)
* allow additional characters in usernames and passwords (#1580) (#1666)
* add remote port to HTTP requests in logs (#1663)
* do not listen on IPv6 when host is 0.0.0.0 (#1665) (#1678)
* metrics: log HTTP requests when logLevel is debug (#1687)
* add read deadline to all incoming HTTP requests (#1689)
* metrics: return metrics even if there are no paths or clients (#1688)
* improve precision of H264 DTS extractor (https://github.com/bluenviron/mediacommon/issues/1)

RTSP server / source

* use normalized trackID in place of mediaUUID (https://github.com/bluenviron/gortsplib/issues/190) (https://github.com/bluenviron/gortsplib/issues/226)
* fix SDP unmarshaling with some Chinese cameras (https://github.com/bluenviron/gortsplib/issues/201) (https://github.com/bluenviron/gortsplib/issues/228)
* fix crash when Content-Length is set to a negative value (https://github.com/bluenviron/gortsplib/issues/233)
* add MPEG-4 video format (https://github.com/bluenviron/gortsplib/issues/236) (#1550)
* add MP4A-LATM format (https://github.com/bluenviron/gortsplib/issues/237)
* add MPEG-TS format (https://github.com/bluenviron/gortsplib/issues/244)
* support TCP read requests without interleaved IDs (https://github.com/bluenviron/gortsplib/issues/246) (#1650)

HLS Muxer

* add viewport meta to hls and webrtc page (#1653)
* muxer: save init.mp4 on disk (https://github.com/bluenviron/gohlslib/issues/20) (#1648)
* muxer: wait presence of segments before serving index.m3u8 and init.mp4 (https://github.com/bluenviron/gohlslib/issues/22)
* muxer: improve disk write performance of MPEG-TS segments (https://github.com/bluenviron/gohlslib/issues/23)
* muxer: change Content-Type of playlist and restore compatibility with iOS (https://github.com/bluenviron/gohlslib/issues/24) 
* muxer: truncate float values to 5 digits and restore compatibility with iOS (https://github.com/bluenviron/gohlslib/issues/26) 
* muxer: round PART-TARGET to milliseconds to avoid illegal changes (https://github.com/bluenviron/gohlslib/issues/27)

WebRTC

* add viewport meta to hls and webrtc page (#1653)
* webrtc: fix regression that broke webrtcICEUDPMuxAddress (#1680) (#1699)

RPI Camera

* support running on 32-bit OS with 64-bit kernel (#1644) (#1700)