Commit Graph
167 Commits
Author SHA1 Message Date
bluenviron-botandGitHub eda7957a44 bump mediamtx-rpicamera to v2.6.0 (#5780) 2026-05-18 22:27:17 +02:00
Alessandro RosandGitHub c05c14d9af webrtc: support WHIP ICE restarts (#5183) (#5770) 2026-05-15 19:15:42 +02:00
bluenviron-botandGitHub 670e01c99a bump mediamtx-rpicamera to v2.5.7 (#5761) 2026-05-13 09:46:40 +02:00
Alessandro RosandGitHub cdea2dc167 webrtc: support interacting with servers with no trickle ICE (#5273) (#5757) 2026-05-12 21:07:16 +02:00
Alessandro RosandGitHub 66a67188fe tests: use testing.T.TempDir rather than os.TempDir (#5709) 2026-04-29 22:47:47 +02:00
bluenviron-botandGitHub b5091290e1 bump mediamtx-rpicamera to v2.5.6 (#5702) 2026-04-29 12:52:54 +02:00
Alessandro RosandGitHub f87d9e659e hls: track sessions (#962) (#5683)
sessions are now tracked through cookies or query parameters.

This provides the ability to inspect sessions through logs, metrics and
API, allows more precise tracking of outbound bytes, decreases load on
external HTTP authentication URLs since they are now called once per
session and not once per request.
2026-04-25 21:10:34 +02:00
Alessandro RosandGitHub 2589c99639 return a custom error when body size limit is exceeded (#5675) 2026-04-21 19:00:30 +02:00
Alessandro RosandGitHub caeccdceff prevent out-of-memory errors (#5674)
impose a maximum size on body of incoming HTTP requests and responses.
2026-04-19 21:39:08 +02:00
Alessandro RosandGitHub d4c6f95291 dump unencrypted TLS sessions (#5624)
when dumpPackets is true, embed TLS master keys into the dump, in a
format which is natively compatible with Wireshark.
2026-04-04 14:46:43 +02:00
bluenviron-botandGitHub 489a69af38 bump mediamtx-rpicamera to v2.5.5 (#5629) 2026-03-31 22:34:55 +02:00
Alessandro RosandGitHub 3bad7045c1 api: add missing enums and move all enums in dedicated components (#5576) 2026-03-15 22:09:00 +01:00
Alessandro RosandGitHub d1fd3df27c api: add user field to RTSP, RTMP, SRT, WebRTC conns and sessions (#5104) (#5565) 2026-03-14 00:03:58 +01:00
Alessandro RosandGitHub daec21324f rtsp: fix rtsps scheme not being used in requests (#5236) (#5544) 2026-03-07 18:30:40 +01:00
Alessandro RosandGitHub 35e1f486c9 add integrated packet dumper (#5488)
this allows to dump any incoming and outgoing packet, to disk, in
pcapng format.
2026-02-22 13:34:05 +01:00
bluenviron-botandGitHub a07526d57c bump Golang to 1.26 (#5460) 2026-02-21 14:48:53 +01:00
Alessandro RosandGitHub 96d6dbae12 rpi: fix kernel warning when closing camera (#4988) (#5474) 2026-02-21 14:37:37 +01:00
bluenviron-botandGitHub a4ff325df0 bump mediamtx-rpicamera to v2.5.4 (#5495) 2026-02-21 12:35:03 +01:00
Alessandro RosandGitHub 87fbfebf06 webrtc: add whepBearerTokenParameter (#3796) (#5486)
this allows to pass Authorization: Bearer to servers that require it.
2026-02-19 11:57:39 +01:00
Alessandro RosandGitHub f991821a5f webrtc: allow tuning WHEP timeouts (#5027) (#5479)
add whepHandshakeTimeout, whepTrackGatherTimeout, whepSTUNGatherTimeout
2026-02-18 16:29:25 +01:00
Alessandro RosandGitHub bbefa5bc8b improve tests (#5469) 2026-02-15 12:50:26 +01:00
Alessandro RosandGitHub f907e19b08 hls: in client, support storing and sending cookies (#5444) 2026-02-10 15:17:15 +01:00
bluenviron-botandGitHub e0dac8724b bump mediamtx-rpicamera to v2.5.3 (#5429) 2026-02-07 19:38:57 +01:00
Alessandro RosandGitHub 74eaa11d3a rtsp: add rtspUDPSourcePortRange param (#5363) (#5397) 2026-01-31 16:21:53 +01:00
bluenviron-botandGitHub cdab7a062d bump mediamtx-rpicamera to v2.5.2 (#5396) 2026-01-31 15:56:48 +01:00
Alessandro RosandGitHub a56408db19 add always available streams (#5335)
When the publisher or source of a stream is offline, the server can be
configured to fill gaps in the stream with a video that is played on
repeat until a publisher comes back online. This allows readers to stay
connected regardless of the state of the stream. The offline video and
any future online stream are concatenated without decoding or
re-encoding packets, using the original codec.
2026-01-31 14:44:58 +01:00
Alessandro RosandGitHub 46b4293e35 api: improve openapi definition (#5380)
add uint64, uint, uuid, move WebRTCICEServer into dedicated schema
2026-01-25 19:35:43 +01:00
Alessandro RosandGitHub 653d10fb75 use the same filtering process for every codec (#5324)
this allows to apply features that were previously implemented for
single codecs (like RTP packet resizing), to any codec, and simplifies
future development.
2026-01-16 14:03:13 +01:00
Alessandro RosandGitHub cd34de8770 print last decode error (#5319)
decode errors are still grouped together, but the last one is now
printed.
2026-01-05 15:28:24 +01:00
Alessandro RosandGitHub 1d9b2ff7ea tests: fix race condition (#5316) 2026-01-04 16:27:12 +01:00
Alessandro RosandGitHub b2af5defd0 tests: fix race condition (#5309) 2026-01-01 20:00:27 +01:00
dependabot[bot]GitHubdependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
62effa79ef build(deps): bump github.com/bluenviron/gortmplib from 0.1.2 to 0.2.0 (#5300)
Bumps [github.com/bluenviron/gortmplib](https://github.com/bluenviron/gortmplib) from 0.1.2 to 0.2.0.
- [Commits](https://github.com/bluenviron/gortmplib/compare/v0.1.2...v0.2.0)

---
updated-dependencies:
- dependency-name: github.com/bluenviron/gortmplib
  dependency-version: 0.2.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-12-28 17:29:27 +01:00
dependabot[bot]GitHubdependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
f843df4ab8 build(deps): bump github.com/bluenviron/mediacommon/v2 (#5297)
Bumps [github.com/bluenviron/mediacommon/v2](https://github.com/bluenviron/mediacommon) from 2.5.3 to 2.6.0.
- [Commits](https://github.com/bluenviron/mediacommon/compare/v2.5.3...v2.6.0)

---
updated-dependencies:
- dependency-name: github.com/bluenviron/mediacommon/v2
  dependency-version: 2.6.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-12-28 15:44:36 +01:00
Alessandro RosandGitHub 1704fba5e9 rtsp: avoid setupping back channels (#5074) (#5289) 2025-12-24 20:44:56 +01:00
Alessandro RosandGitHub 55f93eddde rtsp: call rtsp.ToStream before advertising the stream (#5288) 2025-12-24 20:37:01 +01:00
dependabot[bot]GitHubdependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
66c7519e12 build(deps): bump github.com/bluenviron/gortmplib from 0.1.1 to 0.1.2 (#5254)
Bumps [github.com/bluenviron/gortmplib](https://github.com/bluenviron/gortmplib) from 0.1.1 to 0.1.2.
- [Commits](https://github.com/bluenviron/gortmplib/compare/v0.1.1...v0.1.2)

---
updated-dependencies:
- dependency-name: github.com/bluenviron/gortmplib
  dependency-version: 0.1.2
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-12-07 10:56:32 +01:00
Alessandro RosandGitHub 3f599d236f rtp: reorder packets before ingestion (#5194) 2025-11-14 17:19:48 +01:00
Alessandro RosandGitHub ff187b6d8a update golangci-lint configuration (#5182) 2025-11-11 23:57:52 +01:00
Alessandro RosandGitHub 1ef5db5b3c extend udpReadBufferSize to WebRTC UDP sockets (#5130)
this allows to decrease packet losses without touching system parameters.
2025-10-29 11:45:15 +01:00
Alessandro RosandGitHub adc4a6ceb6 add udpReadBufferSize parameter (#5129)
this allows to set a global UDP read buffer, applied to every UDP socket.
2025-10-29 11:28:22 +01:00
bluenviron-botandGitHub 4ff80d773b bump mediamtx-rpicamera to v2.5.1 (#5121) 2025-10-21 21:50:28 +02:00
Alessandro RosandGitHub d209454693 rtmp: fix freeze when reading source (#5117)
Tracks were read without deadlines, freezing the server if they are not
present. This patch also allows to close the server immediately during
track reading.
2025-10-21 18:04:18 +02:00
Alessandro RosandGitHub ccaccc51b4 replace incoming absolute timestamps of any source (#5081)
Absolute timestamps are used to generate recording segments, so users
should not be able to change them, unless explicitly allowed.

Parameter useAbsoluteTimestamp allowed to re-enable absolute timestamps
with RTSP and WebRTC, now it is extended to all protocols.
2025-10-13 12:23:51 +02:00
Alessandro RosandGitHub 0cdae40fe3 estimate absolute timestamp more precisely (#5078)
When the absolute timestamp of incoming frames was not available, it
was filled with the current timestamp, which is influenced by latency
over time.

This mechanism is replaced by an algorithm that detects when latency is
the lowest, stores the current timestamp and uses it as reference
throughout the rest of the stream.
2025-10-12 11:02:14 +02:00
Alessandro RosandGitHub f5f03562d3 rewrite Unit definition (#5079)
Stream units now share the same struct, with a specialized payload.
2025-10-11 12:18:51 +02:00
Alessandro RosandGitHub cd80814009 do not include recorder and HLS muxer in sent bytes (#4380) (#5039)
in API (/paths/list, /paths/get) and metrics (paths_bytes_sent), the
amount of sent bytes was increased even in case of writes to the
recorder and HLS muxer, which are not generating network traffic. This
fixes the issue.
2025-09-29 09:28:04 +02:00
bluenviron-botandGitHub d6cb547321 bump mediamtx-rpicamera to v2.5.0 (#4993) 2025-09-18 13:06:12 +02:00
Alessandro RosandGitHub f81c50ee68 rtsp: support reading streams tunneled with HTTP or WebSocket (#4986) 2025-09-17 22:31:20 +02:00
Alessandro RosandGitHub e3b8af8933 switch to gortsplib/v5 (#4978) 2025-09-16 13:10:34 +02:00
Alessandro RosandGitHub 35aceaa4a9 send server name (SNI) when opening TLS connections (#4973) 2025-09-15 19:38:36 +02:00