Commit Graph

600 Commits

Author SHA1 Message Date
Alessandro Ros
57c2d5aecb
add playback server (#2452) (#2906)
* add playback server

* add playback switch

* update readme
2024-01-23 20:52:05 +01:00
Alessandro Ros
7b9617f2e7
api: return 404 when an entity is not found (#2582) (#2920) 2024-01-18 23:28:56 +01:00
Alessandro Ros
514036d41a
treat different RTSP formats as different tracks in logs and API (#2907) 2024-01-15 12:08:14 +01:00
Sijmen
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]
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 Ros
7437ee7a09
update golangci-lint (#2868) 2024-01-03 21:13:20 +01:00
Alessandro Ros
598fadc9fb
api: add 'query' field to RTMP, RTSP, SRT and WebRTC clients (#2689) (#2844) 2023-12-26 13:59:53 +01:00
Alessandro Ros
1341421412
move api, metrics and pprof into dedicated packages (#2843) 2023-12-26 13:41:15 +01:00
Alessandro Ros
0c131a2e92
rpi: pass log level to libcamera (#2617) (#2811) 2023-12-15 12:10:16 +01:00
Alessandro Ros
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 Ros
15e6c199b4
always use 'all_others' or 'all' after every other path configuration (#2798) 2023-12-10 19:28:02 +01:00
Alessandro Ros
11988249df
move servers into internal/servers (#2792) 2023-12-08 19:17:17 +01:00
github-actions[bot]
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 Ros
b8dd7b9e52
add RTMPS metrics (#2783) 2023-12-03 16:59:35 +01:00
Alessandro Ros
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 Ros
20123fd5b9
record: rename segmentPath into path (#2777) 2023-12-02 15:35:21 +01:00
Alessandro Ros
7c8e593b0b
record: normalize decoding and encoding of segment paths (#2775) 2023-12-02 15:15:17 +01:00
Alessandro Ros
aade2eedb9
hls, webrtc: prevent XSS attack when appending slash to paths (#2766) (#2767) (#2772) 2023-12-01 20:54:18 +01:00
Alessandro Ros
4ccb245feb
webrtc: fix propagating query parameters when appending slash to paths (#2771) 2023-12-01 20:24:00 +01:00
Alessandro Ros
50e7b038c4
hls: fix appending slash when behind a reverse proxy (#2770) 2023-12-01 20:23:04 +01:00
Alessandro Ros
0e5e3324a7
rpicamera: allow to change bitrate and IDR period dynamically (#2703) (#2764) 2023-11-30 21:43:19 +01:00
Alessandro Ros
ce45498769
move hooks into dedicated package (#2746) 2023-11-26 22:06:07 +01:00
Alessandro Ros
c3d9be322d
allow using 'fallback' with static sources (#2606) (#2706) 2023-11-16 23:37:43 +01:00
Bohdan Cherniakh
4fa6c16c85
Add query as optional block for SRT publish and read (#2656) 2023-11-16 23:32:17 +01:00
Alessandro Ros
a760a98bcc
webrtc: fix crash when reading from path 'publish' (#2688) (#2692) 2023-11-13 14:36:18 +01:00
Alessandro Ros
7a1e155531
update dependencies (#2687) 2023-11-13 00:09:42 +01:00
Alessandro Ros
687d8685ef
webrtc: improve connectivity mechanism (#2686) 2023-11-12 23:55:28 +01:00
Alessandro Ros
83a3086de7
webrtc: prevent pion/webrtc from writing log lines (#2681) 2023-11-12 13:46:25 +01:00
Alessandro Ros
ef19552632
fix setting 'recordDeleteAfter' to zero (#2670) (#2671) 2023-11-10 13:51:52 +01:00
Alessandro Ros
cb04d28f6e
metrics: expose state of WebRTC sessions (#2662) 2023-11-08 12:01:39 +01:00
Alessandro Ros
f82c6e3654
tests: fix race condition in TestPathRunOnDemand (#2663) 2023-11-08 11:21:08 +01:00
Dr. Ralf S. Engelschall
4bf0d10079
metrics: add paths_bytes_sent, srt_conns, srt_conns_bytes_received, srt_conns_bytes_sent (#2620) (#2619) (#2629)
* add missing Prometheus exports (#2620, #2619):
paths_bytes_sent, srt_conns, srt_conns_bytes_received, srt_conns_bytes_sent

* protect Stream.BytesSent()

* add tests

---------

Co-authored-by: aler9 <46489434+aler9@users.noreply.github.com>
2023-11-08 11:20:16 +01:00
Alessandro Ros
813611057d
add runOnUnDemand hook (#2645) 2023-11-04 13:07:51 +01:00
Alessandro Ros
faf7218fda
webrtc: restore compatibility when running behind a proxy, in a subpath (#2638) 2023-11-03 17:36:51 +01:00
Alessandro Ros
4f876ed207
fix crash when publishing to a path with 'runOnDemand' from outside 'runOnDemand' (#2636) (#2637) 2023-11-03 16:54:25 +01:00
Alessandro Ros
d41e4025de
hls: format code (#2634) 2023-11-03 09:42:37 +01:00
Dr. Ralf S. Engelschall
39a239caba
hls: bugfix, stability and resilience improvements in the webpage
- STABILITY: await MEDIA_ATTACHED event before performing "loadSource" on HLS
- STABILITY: await MANIFEST_PARSED event before performing "play" on video element
- RESILIENCE: on "MEDIA_ERROR" event perform "recoverMediaError" on HLS
2023-11-03 09:14:01 +01:00
Alessandro Ros
15f1c73314
hls: apply readTimeout to HLS sources (#2627) 2023-11-02 12:45:46 +01:00
Lukinoh
107a9a4281
webrtc: add options (width, height, framerate, audio capture) and store parameters in URL (#1837) (#2167) (#2584) 2023-11-02 12:24:28 +01:00
Alessandro Ros
43d41c070b
move static sources into dedicated package (#2616) 2023-10-31 14:19:04 +01:00
Alessandro Ros
e9528c0917
api: return empty list when page is empty (#2604) (#2614) 2023-10-30 19:53:16 +01:00
Alessandro Ros
ecee2af05c
webrtc: fix crash in case of errors during PATCH (#2609) (#2613) 2023-10-30 19:53:03 +01:00
Alessandro Ros
4c25529369
move rpicamera into internal/protocols (#2607) 2023-10-30 11:40:55 +01:00
Alessandro Ros
4b4d57f18e
api: add path name to config/paths/list and config/paths/get (#2535) (#2596) 2023-10-28 15:06:06 +02:00
Alessandro Ros
bbb989ee87
api: return full configuration in config/paths/list and config/paths/get (#2535) (#2595) 2023-10-28 14:53:23 +02:00
Alessandro Ros
64eb90738a
webrtc: return detailed errors in responses (#2594) 2023-10-28 14:08:34 +02:00
Alessandro Ros
cde19097bd
api: send error messages in response body (#2518) (#2583) 2023-10-27 20:43:34 +02:00
Alessandro Ros
07ff79f553
api: return 500 instead of 404 in case of non-existing items (#2582)
This is needed to differentiate between calls to non-existent andpoints
and calls to valid endpoints, but with an ID pointing to a non-existing
item, and to return JSON in the latter case.
2023-10-27 20:23:46 +02:00
Alessandro Ros
99bc327d67
move protocol-related code into internal/protocols (#2572) 2023-10-26 21:46:18 +02:00
Alessandro Ros
3ebc585539
restart recordings in case of errors (#2439) (#2571) 2023-10-26 21:40:44 +02:00