Commit Graph
3318 Commits
Author SHA1 Message Date
Alessandro RosandGitHub dcd4b38838 srt: close sources immediately when path is closed (#6038) 2026-08-04 22:48:57 +02:00
98ab3009ea support forwarding streams natively (#5558)
It is now possible to define forward destinations for each path configuration. For each destination, the server will create a client that will forward the stream to the intended destination. Supported protocols are RTSP, RTMP, SRT. API and metrics have also been improved to allow monitoring the new forwarding system.

---------

Co-authored-by: aler9 <46489434+aler9@users.noreply.github.com>
2026-08-04 21:57:15 +02:00
Alessandro RosandGitHub f36c41d90a webrtc: fix "packet lost" error when routing streams from WebRTC (#6034)
Chrome sometimes sends empty packets, that are discarded by the server,
but the sequence number of following packets is not recomputed,
leading downstream packet loss detectors to emit errors. This is fixed.
2026-08-04 21:00:11 +02:00
Alessandro RosandGitHub 543dbc9eb8 fix support for regexp groups greater than 10 (#6033) 2026-08-04 18:50:38 +00:00
Alessandro RosandGitHub d8b2e4b6fc add more black-box tests (#6032) 2026-08-04 18:44:17 +00:00
Alessandro RosandGitHub 021f84428d bump Ubuntu in E2E tests (#6035) 2026-08-04 18:38:27 +00:00
Alessandro RosandGitHub 9d8f894c46 srt: show stream ID in logs (#6018) 2026-08-04 17:57:01 +02:00
dependabot[bot]GitHubdependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
99388ff71f build(deps): bump actions/attest from 4.2.0 to 4.2.1 (#6028)
Bumps [actions/attest](https://github.com/actions/attest) from 4.2.0 to 4.2.1.
- [Release notes](https://github.com/actions/attest/releases)
- [Changelog](https://github.com/actions/attest/blob/main/RELEASE.md)
- [Commits](https://github.com/actions/attest/compare/v4.2.0...v4.2.1)

---
updated-dependencies:
- dependency-name: actions/attest
  dependency-version: 4.2.1
  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>
2026-08-04 07:00:35 +02:00
Alessandro RosandGitHub c8d0e47488 fix some CodeQL warnings (#6029) 2026-08-03 17:23:08 +00:00
Alessandro RosandGitHub 1c7bc95cdd prevent some CodeQL warnings (#6027) 2026-08-03 16:47:25 +00:00
Alessandro RosandGitHub 62c119f0a4 hls: prevent some CodeQL warnings (#6024) 2026-08-03 16:23:08 +00:00
Alessandro RosandGitHub 3d5039607c metrics: fix race condition in tests (#6026) 2026-08-03 18:14:20 +02:00
Alessandro RosandGitHub 35990a38c3 webrtc: fix race condition in tests (#6025) 2026-08-03 18:11:24 +02:00
Alessandro RosandGitHub 168c5900b1 docs: update (#6022) 2026-08-03 11:43:33 +00:00
Alessandro RosandGitHub 3c77704ccf rtsp: log write errors (#6023) 2026-08-02 16:48:13 +00:00
Alessandro RosandGitHub 4bb896afe0 webrtc: reset recomputed audio PTS if it drifts too much (#6021) 2026-08-01 16:24:53 +00:00
Alessandro RosandGitHub 24dd8f44a5 sync golangci-lint settings (#6020) 2026-08-01 08:30:58 +00:00
Alessandro RosandGitHub ef93aee083 use black-box testing where possible (#6016) 2026-08-01 08:06:27 +00:00
dependabot[bot]GitHubdependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
c41a88bb4a build(deps): bump actions/attest from 4 to 4.2.0 (#6017)
Bumps [actions/attest](https://github.com/actions/attest) from 4 to 4.2.0.
- [Release notes](https://github.com/actions/attest/releases)
- [Changelog](https://github.com/actions/attest/blob/main/RELEASE.md)
- [Commits](https://github.com/actions/attest/compare/v4...v4.2.0)

---
updated-dependencies:
- dependency-name: actions/attest
  dependency-version: 4.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>
2026-08-01 09:34:47 +02:00
2156e75dd6 Add OpenAPI definition of the Playback server (#5546)
Co-authored-by: aler9 <46489434+aler9@users.noreply.github.com>
2026-07-31 20:34:41 +00:00
dependabot[bot]GitHubdependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>aler9
fa9cd4fbed build(deps): bump github.com/quic-go/webtransport-go from 0.11.1 to 0.12.0 (#6011)
* build(deps): bump github.com/quic-go/webtransport-go

Bumps [github.com/quic-go/webtransport-go](https://github.com/quic-go/webtransport-go) from 0.11.1 to 0.12.0.
- [Release notes](https://github.com/quic-go/webtransport-go/releases)
- [Commits](https://github.com/quic-go/webtransport-go/compare/v0.11.1...v0.12.0)

---
updated-dependencies:
- dependency-name: github.com/quic-go/webtransport-go
  dependency-version: 0.12.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

* additional changes

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: aler9 <46489434+aler9@users.noreply.github.com>
2026-07-29 18:40:36 +02:00
dependabot[bot]GitHubdependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
74ded29fc3 build(deps): bump code.cloudfoundry.org/bytefmt from 0.82.0 to 0.83.0 (#6008)
---
updated-dependencies:
- dependency-name: code.cloudfoundry.org/bytefmt
  dependency-version: 0.83.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>
2026-07-29 18:15:24 +02:00
dependabot[bot]GitHubdependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
97e439dcb2 build(deps): bump github.com/pion/webrtc/v4 from 4.2.17 to 4.2.18 (#6009)
Bumps [github.com/pion/webrtc/v4](https://github.com/pion/webrtc) from 4.2.17 to 4.2.18.
- [Release notes](https://github.com/pion/webrtc/releases)
- [Commits](https://github.com/pion/webrtc/compare/v4.2.17...v4.2.18)

---
updated-dependencies:
- dependency-name: github.com/pion/webrtc/v4
  dependency-version: 4.2.18
  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>
2026-07-29 18:15:16 +02:00
dependabot[bot]GitHubdependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
f8ce85cc86 build(deps): bump github.com/go-git/go-git/v5 from 5.19.1 to 5.19.2 (#6010)
Bumps [github.com/go-git/go-git/v5](https://github.com/go-git/go-git) from 5.19.1 to 5.19.2.
- [Release notes](https://github.com/go-git/go-git/releases)
- [Changelog](https://github.com/go-git/go-git/blob/main/HISTORY.md)
- [Commits](https://github.com/go-git/go-git/compare/v5.19.1...v5.19.2)

---
updated-dependencies:
- dependency-name: github.com/go-git/go-git/v5
  dependency-version: 5.19.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>
2026-07-29 18:15:06 +02:00
dependabot[bot]GitHubdependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
da52852e12 build(deps): bump github.com/pion/interceptor from 0.1.46 to 0.1.47 (#5994)
Bumps [github.com/pion/interceptor](https://github.com/pion/interceptor) from 0.1.46 to 0.1.47.
- [Release notes](https://github.com/pion/interceptor/releases)
- [Commits](https://github.com/pion/interceptor/compare/v0.1.46...v0.1.47)

---
updated-dependencies:
- dependency-name: github.com/pion/interceptor
  dependency-version: 0.1.47
  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>
2026-07-29 16:57:09 +02:00
dependabot[bot]GitHubdependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
0776496f3c build(deps): bump github.com/MicahParks/jwkset from 0.11.1 to 0.11.2 (#5996)
Bumps [github.com/MicahParks/jwkset](https://github.com/MicahParks/jwkset) from 0.11.1 to 0.11.2.
- [Release notes](https://github.com/MicahParks/jwkset/releases)
- [Commits](https://github.com/MicahParks/jwkset/compare/v0.11.1...v0.11.2)

---
updated-dependencies:
- dependency-name: github.com/MicahParks/jwkset
  dependency-version: 0.11.1
  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>
2026-07-29 16:57:02 +02:00
Alessandro RosandGitHub 817c22cc6c fix inability to read some AV1 streams with RTSP (#6001) (#6006)
Since v1.16.0, temporal unit delimiters were not stripped from AV1 streams
anymore. This has been restored, healing AV1 streams read with
RTSP.
2026-07-29 14:36:23 +02:00
dependabot[bot]GitHubdependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
4236e40881 build(deps): bump github.com/MicahParks/keyfunc/v3 from 3.8.0 to 3.8.1 (#5997)
Bumps [github.com/MicahParks/keyfunc/v3](https://github.com/MicahParks/keyfunc) from 3.8.0 to 3.8.1.
- [Release notes](https://github.com/MicahParks/keyfunc/releases)
- [Commits](https://github.com/MicahParks/keyfunc/compare/v3.8.0...v3.8.1)

---
updated-dependencies:
- dependency-name: github.com/MicahParks/keyfunc/v3
  dependency-version: 3.8.1
  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>
2026-07-29 13:39:32 +02:00
dependabot[bot]GitHubdependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
ee59b83574 build(deps): bump github.com/pion/ice/v4 from 4.3.0 to 4.4.0 (#5995)
Bumps [github.com/pion/ice/v4](https://github.com/pion/ice) from 4.3.0 to 4.4.0.
- [Release notes](https://github.com/pion/ice/releases)
- [Commits](https://github.com/pion/ice/compare/v4.3.0...v4.4.0)

---
updated-dependencies:
- dependency-name: github.com/pion/ice/v4
  dependency-version: 4.4.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>
2026-07-29 13:32:25 +02:00
d843a0bf21 webrtc: fix packet corruption when reading G722 (#6000)
Co-authored-by: aler9 <46489434+aler9@users.noreply.github.com>
2026-07-29 13:31:02 +02:00
Alessandro RosandGitHub a0482f937f webrtc: sort tracks in a deterministic way (#5988) (#5989)
When ingesting tracks with WebRTC, track order was randomized,
preventing multi-track always-available streams from working reliably,
since they require tracks to be ordered in a precise way.

WebRTC tracks are not ordered by MID, RID, trackID and streamID
respectively.
2026-07-25 19:44:45 +02:00
Alessandro RosandGitHub fc47d9e6ed srt: improve log clarity (#5990)
use message 'passphrase not provided by client' when clients do not
provide passphrases.
2026-07-25 19:44:31 +02:00
dependabot[bot]GitHubdependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
7b5251afb3 build(deps): bump github.com/go-git/go-billy/v5 from 5.9.0 to 5.9.1 (#5987)
Bumps [github.com/go-git/go-billy/v5](https://github.com/go-git/go-billy) from 5.9.0 to 5.9.1.
- [Release notes](https://github.com/go-git/go-billy/releases)
- [Commits](https://github.com/go-git/go-billy/compare/v5.9.0...v5.9.1)

---
updated-dependencies:
- dependency-name: github.com/go-git/go-billy/v5
  dependency-version: 5.9.1
  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>
2026-07-25 18:40:08 +02:00
Alessandro RosandGitHub 83e04d8255 improve documentation (#5985) 2026-07-24 15:43:06 +02:00
Alessandro RosandGitHub 519a04e490 docs: add missing MoQ ports (#5983) 2026-07-24 09:12:48 +02:00
dependabot[bot]GitHubdependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>aler9
5ccc80ad7b build(deps): bump github.com/bluenviron/gortsplib/v5 from 5.6.1 to 5.6.2 (#5981)
* build(deps): bump github.com/bluenviron/gortsplib/v5 from 5.6.1 to 5.6.2

Bumps [github.com/bluenviron/gortsplib/v5](https://github.com/bluenviron/gortsplib) from 5.6.1 to 5.6.2.
- [Commits](https://github.com/bluenviron/gortsplib/compare/v5.6.1...v5.6.2)

---
updated-dependencies:
- dependency-name: github.com/bluenviron/gortsplib/v5
  dependency-version: 5.6.2
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

* additional changes

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: aler9 <46489434+aler9@users.noreply.github.com>
2026-07-23 23:49:31 +02:00
dependabot[bot]GitHubdependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
6d253930be build(deps): bump github.com/bluenviron/gortmplib from 0.4.0 to 0.4.1 (#5979)
Bumps [github.com/bluenviron/gortmplib](https://github.com/bluenviron/gortmplib) from 0.4.0 to 0.4.1.
- [Commits](https://github.com/bluenviron/gortmplib/compare/v0.4.0...v0.4.1)

---
updated-dependencies:
- dependency-name: github.com/bluenviron/gortmplib
  dependency-version: 0.4.1
  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>
2026-07-23 23:41:53 +02:00
dependabot[bot]GitHubdependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
28588d5a95 build(deps): bump github.com/bluenviron/gohlslib/v2 from 2.4.0 to 2.4.1 (#5978)
Bumps [github.com/bluenviron/gohlslib/v2](https://github.com/bluenviron/gohlslib) from 2.4.0 to 2.4.1.
- [Commits](https://github.com/bluenviron/gohlslib/compare/v2.4.0...v2.4.1)

---
updated-dependencies:
- dependency-name: github.com/bluenviron/gohlslib/v2
  dependency-version: 2.4.1
  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>
2026-07-23 23:27:27 +02:00
Alessandro RosandGitHub 4c5f558006 hls, webrtc: prevent cross-origin unauthorized access (#5975)
when a user had previously inserted credentials into a MediaMTX
instance through a browser, and AllowOrigins was set to a wildcard,
third-party websites visited by the user were allowed to read streams
without restrictions. This is now prevented by returning "*" in
Access-Control-Allow-Origins when AllowOrigins is a wildcard, a
behavior that prevents browsers from sharing credentials with
third-party websites.
2026-07-23 23:06:15 +02:00
dependabot[bot]GitHubdependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
da0691edcc build(deps): bump github.com/pion/rtp from 1.10.4 to 1.10.5 (#5974)
Bumps [github.com/pion/rtp](https://github.com/pion/rtp) from 1.10.4 to 1.10.5.
- [Release notes](https://github.com/pion/rtp/releases)
- [Commits](https://github.com/pion/rtp/compare/v1.10.4...v1.10.5)

---
updated-dependencies:
- dependency-name: github.com/pion/rtp
  dependency-version: 1.10.5
  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>
2026-07-23 23:05:16 +02:00
c23bdf2924 rtsp: use session ID in requests to the external authentication server (#5977)
Co-authored-by: Cycle1337 <Cycle1337@outlook.com>
2026-07-23 23:04:29 +02:00
Alessandro RosandGitHub 5d0ba43667 moq: prevent excessive CPU consumption in reorderer (#5976)
do not iterate by maxGroupID (passed by user) but iterate by internal
pending packets (uncontrolled by user).
2026-07-23 23:01:05 +02:00
Alessandro RosandGitHub 2183d37d32 add comment to prevent security scan false positives (#5973) 2026-07-23 22:59:23 +02:00
dependabot[bot]GitHubdependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
5994667eca build(deps): bump code.cloudfoundry.org/bytefmt from 0.81.0 to 0.82.0 (#5972)
Bumps [code.cloudfoundry.org/bytefmt](https://github.com/cloudfoundry/bytefmt) from 0.81.0 to 0.82.0.
- [Release notes](https://github.com/cloudfoundry/bytefmt/releases)
- [Commits](https://github.com/cloudfoundry/bytefmt/compare/v0.81.0...v0.82.0)

---
updated-dependencies:
- dependency-name: code.cloudfoundry.org/bytefmt
  dependency-version: 0.82.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>
2026-07-21 21:58:46 +02:00
dependabot[bot]GitHubdependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
0b33532432 build(deps): bump github.com/pion/interceptor from 0.1.45 to 0.1.46 (#5971)
Bumps [github.com/pion/interceptor](https://github.com/pion/interceptor) from 0.1.45 to 0.1.46.
- [Release notes](https://github.com/pion/interceptor/releases)
- [Commits](https://github.com/pion/interceptor/compare/v0.1.45...v0.1.46)

---
updated-dependencies:
- dependency-name: github.com/pion/interceptor
  dependency-version: 0.1.46
  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>
2026-07-21 21:58:27 +02:00
dependabot[bot]GitHubdependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
668b2ffcc9 build(deps): bump github.com/pion/webrtc/v4 from 4.2.16 to 4.2.17 (#5970)
Bumps [github.com/pion/webrtc/v4](https://github.com/pion/webrtc) from 4.2.16 to 4.2.17.
- [Release notes](https://github.com/pion/webrtc/releases)
- [Commits](https://github.com/pion/webrtc/compare/v4.2.16...v4.2.17)

---
updated-dependencies:
- dependency-name: github.com/pion/webrtc/v4
  dependency-version: 4.2.17
  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>
2026-07-21 00:49:05 +02:00
Alessandro RosandGitHub 6da35dc389 moq: support draft-19 of the specification (#5968)
* support draft-19 of the specification

* support subscribing the same track multiple times
2026-07-21 00:24:03 +02:00
Alessandro RosandGitHub be610a6a04 docs: add fail2ban integration (#5016) (#5967) 2026-07-19 17:03:57 +02:00
Alessandro RosandGitHub 58c6099e50 ask for credentials only in case of protocols that support it (#5966)
When clients connect with some protocols (SRT, RTMP), they are unable
to provide credentials even if they are asked to. In this case, it's
useless to wait for credentials, and it's better to immediately log
authentication errors and apply the anti-brute force algorithm.
2026-07-19 16:52:14 +02:00
Alessandro RosandGitHub 363ac206f7 moq: fix several panics and OOM errors (#5964)
Check for limits before allocating memory by using sizes passed from
the remote peer. Also add fuzzing to all MoQ primitives.
2026-07-19 12:13:45 +02:00