Commit graph

130 commits

Author SHA1 Message Date
aler9
1342431c15 webrtc: fix reconnecting to server after a failure (#4022) 2025-01-06 13:51:08 +01:00
Alessandro Ros
d4c29f8283
webrtc: switch to recvonly transceivers (#4059) (#4108)
Some checks are pending
code_lint / golangci_lint (push) Waiting to run
code_lint / mod_tidy (push) Waiting to run
code_lint / api_docs (push) Waiting to run
code_test / test_64 (push) Waiting to run
code_test / test_32 (push) Waiting to run
code_test / test_highlevel (push) Waiting to run
This fixes compatibility with devices that support decoding AV1 but
don't support encoding it.

This was previously impossible to achieve due to a bug that prevented
video from being displayed when recvonly transceivers were in use and
audio was not present.
2025-01-04 16:36:03 +01:00
Alessandro Ros
b49acb1e00
accept durations expressed as days (i.e. '1d') (#4094) 2025-01-02 12:44:15 +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
6425bd5a8e
srt: fix compatibility with Blackmagic Design hardware (#3701) (#4087) 2025-01-02 12:43:37 +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
8cb584b514
api, metrics: fix RTC lowercase in webRTCSession and webRTCSource (#4076) 2024-12-25 17:47:24 +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
8a808ac0f6
api: add 'session' field to RTSPConn (#3974) (#4074) 2024-12-25 16:17:53 +01:00
Alessandro Ros
57addb1cc2
api, metrics: add additional RTSP statistics (#3312) (#4073) 2024-12-25 15:43:41 +01:00
github-actions[bot]
d23fb08e2d
bump hls.js to v1.5.18 (#4052)
Some checks failed
code_lint / golangci_lint (push) Has been cancelled
code_lint / mod_tidy (push) Has been cancelled
code_lint / api_docs (push) Has been cancelled
code_test / test_64 (push) Has been cancelled
code_test / test_32 (push) Has been cancelled
code_test / test_highlevel (push) Has been cancelled
Co-authored-by: mediamtx-bot <bot@mediamtx>
2024-12-18 11:22:53 +01:00
Alessandro Ros
72a8b3ca8a
webrtc: support publishing and reading H265 tracks (#4003)
Some checks are pending
code_lint / golangci_lint (push) Waiting to run
code_lint / mod_tidy (push) Waiting to run
code_lint / api_docs (push) Waiting to run
code_test / test_64 (push) Waiting to run
code_test / test_32 (push) Waiting to run
code_test / test_highlevel (push) Waiting to run
2024-12-02 23:55:54 +01:00
Alessandro Ros
576a117c7c
bump Golang to 1.23 (#3702)
Some checks failed
code_lint / golangci_lint (push) Has been cancelled
code_lint / mod_tidy (push) Has been cancelled
code_lint / api_docs (push) Has been cancelled
code_test / test_64 (push) Has been cancelled
code_test / test_32 (push) Has been cancelled
code_test / test_highlevel (push) Has been cancelled
2024-11-04 14:02:05 +01:00
Andres Uribe
f8b366c604
webrtc: restart ICE only on failed connection states (#3899)
Some checks are pending
code_lint / golangci_lint (push) Waiting to run
code_lint / mod_tidy (push) Waiting to run
code_lint / api_docs (push) Waiting to run
code_test / test_64 (push) Waiting to run
code_test / test_32 (push) Waiting to run
code_test / test_highlevel (push) Waiting to run
* webrtc: Restart ICE only on failed connection states

* rename "connected" into "ready" since WebRTC can emit the "connected" state multiple times

---------

Co-authored-by: aler9 <46489434+aler9@users.noreply.github.com>
2024-10-31 12:47:35 +01:00
Alessandro Ros
5ff4f90ff9
webrtc: fix using JavaScript classes from outside the server (#3923)
Some checks are pending
code_lint / golangci_lint (push) Waiting to run
code_lint / mod_tidy (push) Waiting to run
code_lint / api_docs (push) Waiting to run
code_test / test_64 (push) Waiting to run
code_test / test_32 (push) Waiting to run
code_test / test_highlevel (push) Waiting to run
2024-10-30 21:29:50 +01:00
Alessandro Ros
20ad88f013
webrtc: move JavaScript reader and publisher into portable classes (#3921)
Some checks failed
code_lint / golangci_lint (push) Has been cancelled
code_lint / mod_tidy (push) Has been cancelled
code_lint / api_docs (push) Has been cancelled
code_test / test_64 (push) Has been cancelled
code_test / test_32 (push) Has been cancelled
code_test / test_highlevel (push) Has been cancelled
2024-10-28 18:48:11 +01:00
Alessandro Ros
51b21c8adb
webrtc: include query parameters in session URL (#3920) 2024-10-28 18:35:55 +01:00
github-actions[bot]
773116a647
bump hls.js to v1.5.17 (#3885)
Some checks failed
code_lint / golangci_lint (push) Has been cancelled
code_lint / mod_tidy (push) Has been cancelled
code_lint / api_docs (push) Has been cancelled
code_test / test_64 (push) Has been cancelled
code_test / test_32 (push) Has been cancelled
code_test / test_highlevel (push) Has been cancelled
Co-authored-by: mediamtx-bot <bot@mediamtx>
2024-10-18 17:42:35 +02:00
github-actions[bot]
a09b27f421
bump hls.js to v1.5.16 (#3853)
Co-authored-by: mediamtx-bot <bot@mediamtx>
2024-10-09 20:07:13 +02:00
Alessandro Ros
1a6547f13b
restore pprof service (#3848) (#3851)
Some checks are pending
code_lint / golangci_lint (push) Waiting to run
code_lint / mod_tidy (push) Waiting to run
code_lint / api_docs (push) Waiting to run
code_test / test_64 (push) Waiting to run
code_test / test_32 (push) Waiting to run
code_test / test_highlevel (push) Waiting to run
2024-10-08 17:06:47 +02:00
Alessandro Ros
d13dc1074a
make better use of Gin middleware system (#3849) 2024-10-08 17:02:16 +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
ae3a0e4560
remove deprecated test (#3836) 2024-10-06 13:58:28 +02:00
Alessandro Ros
c71694741e
show right server version when server is compiled from source (#3409)
Some checks are pending
code_lint / golangci_lint (push) Waiting to run
code_lint / mod_tidy (push) Waiting to run
code_lint / api_docs (push) Waiting to run
code_test / test_64 (push) Waiting to run
code_test / test_32 (push) Waiting to run
code_test / test_highlevel (push) Waiting to run
2024-10-05 23:10:14 +02:00
Alessandro Ros
2586782031
fix race condition in tests (#3834)
Some checks are pending
code_lint / golangci_lint (push) Waiting to run
code_lint / mod_tidy (push) Waiting to run
code_lint / api_docs (push) Waiting to run
code_test / test_64 (push) Waiting to run
code_test / test_32 (push) Waiting to run
code_test / test_highlevel (push) Waiting to run
2024-10-05 21:54: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
4c3ac34425
fix memory leak in case of errors during initialization of a reader (#3831)
Some checks are pending
code_lint / golangci_lint (push) Waiting to run
code_lint / mod_tidy (push) Waiting to run
code_lint / api_docs (push) Waiting to run
code_test / test_64 (push) Waiting to run
code_test / test_32 (push) Waiting to run
code_test / test_highlevel (push) Waiting to run
2024-10-05 00:49:44 +02:00
Alessandro Ros
4d0ce87f09
hls: support generating streams with multiple audio tracks (#2728) (#3793) 2024-10-03 19:38:54 +02:00
Alessandro Ros
337d3d04ff
hls: fix delay when window is minimized (#3759) (#3772) 2024-09-15 22:53:04 +02:00
Alessandro Ros
471019f606
warn users about skipped tracks when reading or publishing (#3753)
Some checks are pending
code_lint / golangci_lint (push) Waiting to run
code_lint / mod_tidy (push) Waiting to run
code_lint / api_docs (push) Waiting to run
code_test / test_64 (push) Waiting to run
code_test / test_32 (push) Waiting to run
code_test / test_highlevel (push) Waiting to run
2024-09-15 19:28:05 +02:00
Alessandro Ros
6a38c87a5b
hls, webrtc: add FromStream / ToStream (#3752)
Some checks failed
code_lint / golangci_lint (push) Has been cancelled
code_lint / mod_tidy (push) Has been cancelled
code_lint / api_docs (push) Has been cancelled
code_test / test_64 (push) Has been cancelled
code_test / test_32 (push) Has been cancelled
code_test / test_highlevel (push) Has been cancelled
2024-09-09 12:59:23 +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
gsmini
ab85249638
remove redundant variable declarations (#3725)
Some checks are pending
code_lint / golangci_lint (push) Waiting to run
code_lint / mod_tidy (push) Waiting to run
code_lint / api_docs (push) Waiting to run
code_test / test_64 (push) Waiting to run
code_test / test_32 (push) Waiting to run
code_test / test_highlevel (push) Waiting to run
2024-09-08 20:43:05 +02:00
Alessandro Ros
1f478329eb
hls: fix playback speed on iOS (#3155) (#3731) (#3734) 2024-09-08 20:29:50 +02:00
Alessandro Ros
dc3b5f4e57
webrtc: fix 'duplicate payload type' error in read page (#3543) (#3679) 2024-08-25 22:27:51 +02:00
github-actions[bot]
aa1822dd62
bump hls.js to v1.5.15 (#3681)
Some checks failed
code_lint / golangci_lint (push) Has been cancelled
code_lint / mod_tidy (push) Has been cancelled
code_lint / api_docs (push) Has been cancelled
code_test / test_64 (push) Has been cancelled
code_test / test_32 (push) Has been cancelled
code_test / test_highlevel (push) Has been cancelled
Co-authored-by: mediamtx-bot <bot@mediamtx>
2024-08-23 12:48:46 +02:00
Alessandro Ros
c5059fa7a0
move RPI Camera component into dedicated repository (#3656)
Some checks failed
code_lint / golangci_lint (push) Has been cancelled
code_lint / mod_tidy (push) Has been cancelled
code_lint / api_docs (push) Has been cancelled
code_test / test_64 (push) Has been cancelled
code_test / test_32 (push) Has been cancelled
code_test / test_highlevel (push) Has been cancelled
2024-08-14 23:24:17 +02:00
Yang-Sang-Ho
c8f1fa93f5
remove whitespace from hashBuf (#3622)
Some checks failed
code_lint / golangci_lint (push) Has been cancelled
code_lint / mod_tidy (push) Has been cancelled
code_lint / api_docs (push) Has been cancelled
code_test / test_64 (push) Has been cancelled
code_test / test_32 (push) Has been cancelled
code_test / test_highlevel (push) Has been cancelled
* remove whitespace from hashBuf

* merge bytes.TrimSpace and strings.TrimSpace

---------

Co-authored-by: aler9 <46489434+aler9@users.noreply.github.com>
2024-08-10 11:15:17 +02:00
github-actions[bot]
01f1d27670
bump hls.js to v1.5.14 (#3624)
Some checks failed
code_lint / golangci_lint (push) Has been cancelled
code_lint / mod_tidy (push) Has been cancelled
code_lint / api_docs (push) Has been cancelled
code_test / test_64 (push) Has been cancelled
code_test / test_32 (push) Has been cancelled
code_test / test_highlevel (push) Has been cancelled
Co-authored-by: mediamtx-bot <bot@mediamtx>
2024-08-07 16:33:50 +02:00
Dan Bason
1055be99c0
automatically reload TLS certificates when they change (#3598)
* Dynamically refresh tls certs for all servers

* make sure that CertLoader is always closed

---------

Co-authored-by: aler9 <46489434+aler9@users.noreply.github.com>
2024-08-04 14:12:08 +02:00
Alessandro Ros
0230aa0a9c
record, hls: fix panic with MPEG-4 audio tracks without config (#3590) (#3594) 2024-08-01 16:34:40 +02:00
github-actions[bot]
976f2252a5
bump hls.js to v1.5.13 (#3540)
Co-authored-by: mediamtx-bot <bot@mediamtx>
2024-07-08 18:08:49 +02:00
Alessandro Ros
3f1d182d2c
fix support for HTTP preflight requests (#1792) (#3535) 2024-07-06 21:45:15 +02:00
Alessandro Ros
342c257df5
srt: process connection requests in parallel (#3382) (#3534) 2024-07-05 22:17:40 +02:00
Bouke van der Bijl
dfa2e81e61
Save a hash of the hls.min.js release (#3464)
This ensures the downloaded hls.js matches exactly and removes a dependency on cdn.jsdelivr.net
2024-06-17 23:15:18 +02:00
Alessandro Ros
f227971517
fix UDP-related tests (#3484)
for some reason, using "localhost" with UDP inside GitHub Actions and
Docker stopped working.
2024-06-17 23:09:25 +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
80a133afc9
bump dependencies (#3457) 2024-06-11 22:43:27 +02:00
Alessandro Ros
095921dc26
webrtc: on browsers, display error messages from server (#3448) 2024-06-10 15:41:05 +02:00