Commit Graph
147 Commits
Author SHA1 Message Date
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
Alessandro RosandGitHub 1b8897d30d rtmp: move implementation to gortmplib (#4968) 2025-09-13 11:50:36 +02:00
Alessandro RosandGitHub 9318107779 rtmp: support additional enhanced RTMP features (#4168) (#4321) (#4954)
* support reading AV1, VP9, H265, Opus, AC-3, G711, LPCM
* support reading multiple video or audio tracks at once
2025-09-11 23:18:46 +02:00
Alessandro RosandGitHub 736abc40b3 fix golangci_lint workflow (#4933) 2025-09-03 15:22:27 +02:00
Alessandro RosandGitHub b627128d0f remove context from webrtc.PeerConnection arguments (#4854)
contexts are useless since there's already PeerConnection.Close().
2025-08-12 15:19:59 +02:00
Alessandro RosandGitHub 89993951ca fix arm32 / arm64 binaries (#4863) 2025-08-12 14:22:50 +02:00
Alessandro RosandGitHub afff90f00e restore Windows compatibility (#4860) 2025-08-12 13:00:45 +02:00
Alessandro RosandGitHub 61382e496b fix memory leak when reloading the configuration (#4855)
When a path has a MPEG-TS, RTP or WebRTC source and the path
configuration is reloaded, a routine was left open because the reload
channel was not handled. This fixes the issue.
2025-08-11 17:50:40 +02:00
Alessandro RosandGitHub 2b316cb1f7 fix race conditions in tests (#4853) 2025-08-11 13:48:03 +02:00
Alessandro RosandGitHub 462fb2bd0f allow setting UDP read buffer size (#3308) (#4846)
new parameters: rtspUDPReadBufferSize, rtpUDPReadBufferSize, mpegtsUDPReadBufferSize
2025-08-11 12:21:00 +02:00
Alessandro RosandGitHub d0430d8ea5 support ingesting RTP streams (#1515) (#4843) 2025-08-09 16:12:10 +02:00
Alessandro RosandGitHub 69d37cc6c6 api: rename udpSource into mpegtsSource (#4842) 2025-08-08 22:04:26 +02:00
Alessandro RosandGitHub 7feff1d1dc support MPEG-TS over unix sockets (#4388) (#4389) (#4828) 2025-08-08 18:03:38 +02:00
Alessandro RosandGitHub 914220d974 udp: listen on default multicast interface (#4565) (#4820)
... instead of listening on all multicast interfaces.
2025-08-04 15:18:48 +02:00
Alessandro RosandGitHub b59c37ad4b remove redundant definitions (#4793) 2025-07-27 12:01:52 +02:00
Alessandro RosandGitHub d423a71aaa update linter settings (#4790) 2025-07-26 16:44:32 +02:00
Alessandro RosandGitHub 7ac752097b rpi: allow setting software H264 profile and level (#3965) (#4786) 2025-07-25 13:40:15 +02:00
Alessandro RosandGitHub 0fe12f8bf6 rpi: rename rpiCameraProfile into rpiCameraH264Profile, rpiCameraLevel into rpiCameraH264Level (#3965) (#4785) 2025-07-25 11:44:55 +02:00
Alessandro RosandGitHub 1cabc382b0 rpi: rename rpiCameraJPEGQuality in rpiCameraMJPEGQuality (#4784) 2025-07-25 11:40:09 +02:00
Alessandro RosandGitHub cc27cf6563 mpegts, srt: support MPEG-4 Audio LATM tracks (#4403) (#4759) 2025-07-21 10:02:40 +02:00
dependabot[bot]GitHubdependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
d0a97e47ff build(deps): bump github.com/bluenviron/gohlslib/v2 from 2.2.1 to 2.2.2 (#4763)
Bumps [github.com/bluenviron/gohlslib/v2](https://github.com/bluenviron/gohlslib) from 2.2.1 to 2.2.2.
- [Commits](https://github.com/bluenviron/gohlslib/compare/v2.2.1...v2.2.2)

---
updated-dependencies:
- dependency-name: github.com/bluenviron/gohlslib/v2
  dependency-version: 2.2.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-07-21 09:55:10 +02:00