Commit Graph

459 Commits

Author SHA1 Message Date
Alessandro Ros b64650ca4a record: prevent recordDeleteAfter from deleting current segment (#4331) 2025-03-16 12:24:40 +01:00
Alessandro Ros 3d16cf40b4 update badges (#4337) 2025-03-12 11:50:56 +01:00
Alessandro Ros 14ec80ae01 improve recordPath documentation (#3678) (#4302) 2025-03-03 18:10:18 +01:00
Alessandro Ros 5c6cf58d75 webrtc: fix connecting to TCP-only sources (#4293) 2025-03-01 11:07:50 +01:00
Alessandro Ros 44136b3045 api: fix crash in /recordings/list (#4040) (#4291)
The API crashed when

- '%path%' is not present in 'recordPath'
- 'all_others' is in 'paths'
- there's at least one recording segment

A recording segment without path is parsed as a segment with an empty
path. This path is then passed to FindPathConf(), that returns an error
in case of empty or invalid paths. This error is not checked for
performance reasons, leading to the crash.

This PR prevents empty or invalid paths from reaching FindPathConf().
2025-02-28 19:04:05 +01:00
Alessandro Ros 7ab8fbb55d add instructions on how to expose in subfolder (#4287) 2025-02-27 19:53:55 +01:00
Alessandro Ros b33fb487e0 fix workflow badges (#4249) 2025-02-13 11:19:10 +01:00
Alessandro Ros b88f81cb2d add GStreamer + WHEP instructions (#4117) 2025-01-07 09:17:10 +01:00
Alessandro Ros 8cbbbc05c3 rtmp: support additional Enhanced-RTMP features (#3685) (#4088)
new features:
* support publishing Opus and AC-3 tracks
* support publishing more than 2 tracks. This is compatible with OBS multitrack video and OBS VOD audio track
2025-01-02 12:44:01 +01:00
Alessandro Ros d38b7e95fc playback: allow filtering timespans by start and end date (#3637) (#3489) (#4085) 2025-01-02 12:43:18 +01:00
Alessandro Ros dfb792eb90 rtsp: rename encryption, protocols, serverKey, serverCert into rtspEncryption, rtspProtocols, rtspServerKey, rtspServerCert (#4078) 2024-12-25 18:26:14 +01:00
Alessandro Ros 28970b323e fix MTX_CONN_TYPE value with RTSP connections (#3967) (#4075) 2024-12-25 17:42:19 +01:00
Alessandro Ros 57addb1cc2 api, metrics: add additional RTSP statistics (#3312) (#4073) 2024-12-25 15:43:41 +01:00
Alessandro Ros 7191c85e3b fix codecov URL (#4026) 2024-12-08 17:28:06 +01:00
Alessandro Ros 39f509280c update readme (#4010) 2024-12-03 20:09:06 +01:00
Alessandro Ros 72a8b3ca8a webrtc: support publishing and reading H265 tracks (#4003) 2024-12-02 23:55:54 +01:00
Alessandro Ros 71187bc430 remove redundant curly brackets (#3938) 2024-11-06 15:17:07 +01:00
Johnny Arcitec 426e6f89a2 improve unsafe path handling (#3927)
* fix: improve unsafe path handling

Paths containing spaces or dashes were being interpreted as separate options, since the path handling lacked double quotes.

This fixes all unsafe instances of "PWD" and "HOME", along with all other unsafe paths in the scripts.

* readme: explicitly mount the configuration as read-only

This clearly shows users that the MediaMTX container will not modify the configuration file.
2024-11-06 15:15:25 +01:00
Alessandro Ros 576a117c7c bump Golang to 1.23 (#3702) 2024-11-04 14:02:05 +01:00
Idar Lund 51e5f9ca26 add instructions about SELinux distributions (#3673) 2024-10-07 21:08:05 +02:00
Alessandro Ros 23002d9f5f route original timestamps without converting to durations (#3839)
This improves timestamp precision.
2024-10-07 17:59:32 +02:00
Alessandro Ros 54c0737074 add Unity instructions (#3837) 2024-10-06 19:04:59 +02:00
Alessandro Ros ca4458281c webrtc: fix connection timeout when webrtcAdditionalHosts is filled with existing IP (#3835)
When an IP in webrtcAdditionalHosts is already present in the candidate
list because webrtcIPsFromInterfaces is set to true (default), peer
connection fails to establish. This is fixed.
2024-10-06 14:03:11 +02:00
Alessandro Ros 534b637bc7 support using JWT in Authorization header with API, Metrics, PProf (#3630) (#3795) 2024-10-05 21:15:21 +02:00
Alessandro Ros 9f83b57f74 update readme (#3817) 2024-09-29 09:55:53 +02:00
Alessandro Ros 0462329385 fix suggested camera publish command (#3806) 2024-09-26 14:30:37 +02:00
Alessandro Ros f9162b2303 fix README (#3794) 2024-09-22 23:32:57 +02:00
Alessandro Ros 82f2f267f3 update README about libcamera (#3781) 2024-09-15 23:52:36 +02:00
Alessandro Ros e6653857aa rtmp: support ingesting AV1, VP9, H265, MP3, PCM from other servers (#3751) 2024-09-09 12:26:35 +02:00
Alessandro Ros 21cfcb2e0e update Enhanced RTMP link (#3693) 2024-08-26 13:00:01 +02:00
Alessandro Ros 0d1da6bd5b allow to set the JWT claim key that contains permissions (#3560) (#3692) 2024-08-26 12:43:28 +02:00
Alessandro Ros 6da35c8041 playback: add "url" field to recording timespans in /list (#3619) 2024-08-25 23:04:36 +02:00
Alessandro Ros 6256d0b893 rpi: embed libcamera and libfreetype into the server (#2581) (#3665) 2024-08-18 19:12:26 +02:00
Alessandro Ros c5059fa7a0 move RPI Camera component into dedicated repository (#3656) 2024-08-14 23:24:17 +02:00
Alessandro Ros f9913b8a2a simplify rpi / microphone instructions (#3650) 2024-08-13 11:43:22 +02:00
Alessandro Ros 1e7a7d1674 rpi camera: update font and link it to IBM repository (#3647) 2024-08-11 23:34:12 +02:00
Alessandro Ros aade940296 Revert "enable runOnDemandRestart by default (#3605)" (#3609)
This reverts commit 547e56e82b.
2024-08-04 12:32:37 +02:00
Alessandro Ros c80bb53b0f apidocs: add missing authentication-related parameters (#3607) 2024-08-04 12:32:16 +02:00
Alessandro Ros 547e56e82b enable runOnDemandRestart by default (#3605) 2024-08-03 20:51:54 +02:00
Alessandro Ros a1dc9f45f5 webrtc: support publishing H265 tracks (#3435) (#3492)
IMPORTANT NOTE: this doesn't allow to read H265 tracks with WebRTC,
just to publish them. The inability to read H265 tracks with WebRTC is
not in any way related to the server but depends on browsers and on the
fact that they are not legally entitled to embed a H265 decoder inside
them.
2024-06-19 21:02:08 +02:00
Alessandro Ros 39ae1269ad webrtc: support passing username and password through Bearer Token (#3248) (#3459) 2024-06-11 23:37:59 +02:00
Alessandro Ros caa9fa6ca0 webrtc, hls: support passing JWT through Authorization header (#3248) (#3458) 2024-06-11 23:33:01 +02:00
Alessandro Ros 3eabe6ac54 expose MTX_SEGMENT_DURATION to runOnRecordSegmentComplete (#3440) (#2983) (#3456)
* improve tests

* add duration to OnSegmentComplete

* expose MTX_SEGMENT_DURATION to runOnRecordSegmentComplete

* add tests
2024-06-11 18:30:40 +02:00
Alessandro Ros 2bb7db5314 simplify Raspberry Pi build instructions (#3385) 2024-05-24 13:40:05 +02:00
Alessandro Ros 9e636308d9 bump Go to 1.22 (#3279) 2024-04-21 11:12:14 +02:00
Alessandro Ros 6513f05bb6 update README (#3278) 2024-04-21 11:11:23 +02:00
Alessandro Ros dc3eae7f96 add whipclientsink instructions to the README (#3276) 2024-04-20 23:21:39 +02:00
Alessandro Ros 4157f490fa playback: support serving streams in standard MP4 format (#3213)
* playback: support serving streams in standard MP4 format

* sort samples by DTS

* update readme
2024-04-14 19:29:29 +02:00
Dan Bason 87c0535823 Add option for ICE servers to be client only (#3164)
* Add option for ICE servers to be client only

* add clientOnly to configuration file and API docs

---------

Co-authored-by: aler9 <46489434+aler9@users.noreply.github.com>
2024-04-06 18:32:53 +02:00
Mauricio Antunes 4666e5f427 Fix API version in docs (#3180) 2024-04-01 12:18:02 +02:00