Commit Graph
621 Commits
Author SHA1 Message Date
Jason WaltonandGitHub 1c2f95f609 webrtc: allow configuring timeouts (#3404) (#3406)
* webrtc: allow configuring timeouts (#3404)

* fix from code inspect
2024-05-30 13:36:58 +02:00
xjr20042andGitHub 6debb52abd hls: make closeAfterInactivity configurable (#3329)
* HLS: make closeAfterInactivity configurable

* add `hlsMuxerCloseAfter` to `apidocs/openapi.yaml`
2024-05-09 10:08:15 +02:00
Alessandro RosandGitHub 1204f76eb7 update golangci-lint (#3300) 2024-04-28 18:20:08 +02:00
Alessandro RosandGitHub 85dd81698b support HTTPS, Allow-Origin and trusted proxies in API, playback server, metrics server and pprof server (#2658) (#2491) (#3235) (#3280) 2024-04-21 17:10:35 +02:00
2bd8ac7e19 fix support for JWT authentication in API, metrics, playback, pprof (#3253)
Co-authored-by: Rafael Scheidt <rafaelscheidt@Rafaels-MacBook-Air.local>
Co-authored-by: aler9 <46489434+aler9@users.noreply.github.com>
2024-04-18 23:55:48 +02:00
Alessandro RosandGitHub 95f1f79b35 api: fix crash when changing settings of an on-demand source that is idle (#3246) (#3249) 2024-04-15 17:44:54 +02:00
Alessandro RosandGitHub c7dbb951f3 update golangci-lint (#3149) 2024-03-19 12:53:26 +01:00
Alessandro RosandGitHub 24cc62e344 hls: decrease number of idle connections kept open after a reconnection (#3128) 2024-03-10 11:51:15 +01:00
Alessandro RosandGitHub 9c6ba7e2c7 New authentication system (#1341) (#1992) (#2205) (#3081)
This is a new authentication system that covers all the features exposed by the server, including playback, API, metrics and PPROF, improves internal authentication by adding permissions, improves HTTP-based authentication by adding the ability to exclude certain actions from being authenticated, adds an additional method (JWT-based authentication).
2024-03-04 14:20:34 +01:00
Alessandro RosandGitHub b6db3121b5 rtsp: add random value to timestamp of tracks from other protocols (#3071) 2024-02-26 00:41:05 +01:00
Alessandro RosandGitHub c7bdcea741 move RTSP tests into internal/servers/rtsp (#3049) 2024-02-20 19:35:35 +01:00
Alessandro RosandGitHub 34dbcfb508 move WebRTC tests into internal/servers/webrtc (#3043) 2024-02-18 22:15:08 +01:00
Alessandro RosandGitHub a52f550ee6 webrtc: return an error when proxying stream with no tracks (#3042) 2024-02-18 21:58:11 +01:00
Alessandro RosandGitHub 9e5de737f0 move SRT tests into internal/servers/srt (#3037) 2024-02-17 20:42:41 +01:00
Alessandro RosandGitHub ad58efe47d move RTMP tests into internal/servers/rtmp (#3035) 2024-02-16 23:27:27 +01:00
e5e029a7f4 srt: add additional metrics (#2962)
* first attempt at the srt metrics

* Updated variables to better match mediamtx

* Prometheus metrics for SRT

* Update readme for SRT metrics

* Switch openapi to number from float

* SRT metrics metrics response fix

* Make the metric test less strict, and nolint line length on the SRT metrics struct

* remove nolint

* move BytesSent and BytesReceived into APISRTConnMetrics

* merge APISRTConn and APISRTConnMetrics

* improve tests

---------

Co-authored-by: slowe <slowe@clairglobal.com>
Co-authored-by: aler9 <46489434+aler9@users.noreply.github.com>
2024-02-16 14:22:30 +01:00
Alessandro RosandGitHub 1ae3240b91 hls: fix crash when muxer is being recreated, improve performance (#3017) 2024-02-13 23:32:15 +01:00
Alessandro RosandGitHub b6eaa6bc18 move test utilities into 'test' (#3016)
* move test utilities into 'test'

* rename newEmptyTimer into emptyTimer
2024-02-13 18:49:27 +01:00
Alessandro RosandGitHub 0332ba59a0 api: add endpoints for recording management (#2901) (#2988) 2024-02-04 23:51:51 +01:00
Alessandro RosandGitHub 0f733bab26 add rpiCameraAWBGains (#2858) (#2954) 2024-01-28 21:48:21 +01:00
Alessandro RosandGitHub 6f6f8e0994 prevent multiple crashes when reloading the configuration (#2945) 2024-01-26 13:04:06 +01:00
Alessandro RosandGitHub 57c2d5aecb add playback server (#2452) (#2906)
* add playback server

* add playback switch

* update readme
2024-01-23 20:52:05 +01:00
Alessandro RosandGitHub 7b9617f2e7 api: return 404 when an entity is not found (#2582) (#2920) 2024-01-18 23:28:56 +01:00
Alessandro RosandGitHub 514036d41a treat different RTSP formats as different tracks in logs and API (#2907) 2024-01-15 12:08:14 +01:00
397c58a882 Add Argon2 credential hash support (#2888)
* Add argon2 credential hash support

* update README, tests and documentation

---------

Co-authored-by: aler9 <46489434+aler9@users.noreply.github.com>
2024-01-13 12:49:08 +01:00
dependabot[bot]GitHubdependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
120791b415 build(deps): bump github.com/bluenviron/mediacommon from 1.7.0 to 1.7.1 (#2897)
Bumps [github.com/bluenviron/mediacommon](https://github.com/bluenviron/mediacommon) from 1.7.0 to 1.7.1.
- [Commits](https://github.com/bluenviron/mediacommon/compare/v1.7.0...v1.7.1)

---
updated-dependencies:
- dependency-name: github.com/bluenviron/mediacommon
  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>
2024-01-13 11:28:12 +01:00
Alessandro RosandGitHub 7437ee7a09 update golangci-lint (#2868) 2024-01-03 21:13:20 +01:00
Alessandro RosandGitHub 598fadc9fb api: add 'query' field to RTMP, RTSP, SRT and WebRTC clients (#2689) (#2844) 2023-12-26 13:59:53 +01:00
Alessandro RosandGitHub 1341421412 move api, metrics and pprof into dedicated packages (#2843) 2023-12-26 13:41:15 +01:00
Alessandro RosandGitHub 0c131a2e92 rpi: pass log level to libcamera (#2617) (#2811) 2023-12-15 12:10:16 +01:00
Alessandro RosandGitHub d261bfe773 support static sources in paths with regular expressions (#824) (#2799)
This allows to proxy requests to other servers by using regular
expressions.
2023-12-10 21:23:41 +01:00
Alessandro RosandGitHub 15e6c199b4 always use 'all_others' or 'all' after every other path configuration (#2798) 2023-12-10 19:28:02 +01:00
Alessandro RosandGitHub 11988249df move servers into internal/servers (#2792) 2023-12-08 19:17:17 +01:00
3891e7eb26 bump hls-js to v1.4.13 (#2791)
Co-authored-by: mediamtx-bot <bot@mediamtx>
2023-12-08 10:33:30 +01:00
Alessandro RosandGitHub b8dd7b9e52 add RTMPS metrics (#2783) 2023-12-03 16:59:35 +01:00
Alessandro RosandGitHub ed72fa7db1 fix crash when requesting metrics and RTMP, SRT or WebRTC servers are not present anymore (#2782) 2023-12-03 16:42:12 +01:00
Alessandro RosandGitHub 20123fd5b9 record: rename segmentPath into path (#2777) 2023-12-02 15:35:21 +01:00
Alessandro RosandGitHub 7c8e593b0b record: normalize decoding and encoding of segment paths (#2775) 2023-12-02 15:15:17 +01:00
Alessandro RosandGitHub aade2eedb9 hls, webrtc: prevent XSS attack when appending slash to paths (#2766) (#2767) (#2772) 2023-12-01 20:54:18 +01:00
Alessandro RosandGitHub 4ccb245feb webrtc: fix propagating query parameters when appending slash to paths (#2771) 2023-12-01 20:24:00 +01:00
Alessandro RosandGitHub 50e7b038c4 hls: fix appending slash when behind a reverse proxy (#2770) 2023-12-01 20:23:04 +01:00
Alessandro RosandGitHub 0e5e3324a7 rpicamera: allow to change bitrate and IDR period dynamically (#2703) (#2764) 2023-11-30 21:43:19 +01:00
Alessandro RosandGitHub ce45498769 move hooks into dedicated package (#2746) 2023-11-26 22:06:07 +01:00
Alessandro RosandGitHub c3d9be322d allow using 'fallback' with static sources (#2606) (#2706) 2023-11-16 23:37:43 +01:00
Bohdan CherniakhandGitHub 4fa6c16c85 Add query as optional block for SRT publish and read (#2656) 2023-11-16 23:32:17 +01:00
Alessandro RosandGitHub a760a98bcc webrtc: fix crash when reading from path 'publish' (#2688) (#2692) 2023-11-13 14:36:18 +01:00
Alessandro RosandGitHub 7a1e155531 update dependencies (#2687) 2023-11-13 00:09:42 +01:00
Alessandro RosandGitHub 687d8685ef webrtc: improve connectivity mechanism (#2686) 2023-11-12 23:55:28 +01:00
Alessandro RosandGitHub 83a3086de7 webrtc: prevent pion/webrtc from writing log lines (#2681) 2023-11-12 13:46:25 +01:00
Alessandro RosandGitHub ef19552632 fix setting 'recordDeleteAfter' to zero (#2670) (#2671) 2023-11-10 13:51:52 +01:00