Alessandro Ros
a1c6da84dc
webrtc: fix detecting closure of some sessions ( #4204 ) ( #4212 )
2025-02-01 13:43:57 +01:00
Alessandro Ros
e86a7a8217
webrtc: disable UDP when not needed ( #4176 )
2025-01-19 15:43:58 +01:00
Alessandro Ros
8f6267deb8
bump pion/webrtc to v4 ( #4145 )
2025-01-13 23:19:29 +01:00
Alessandro Ros
d4c29f8283
webrtc: switch to recvonly transceivers ( #4059 ) ( #4108 )
...
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
72a8b3ca8a
webrtc: support publishing and reading H265 tracks ( #4003 )
2024-12-02 23:55:54 +01:00
Andres Uribe
f8b366c604
webrtc: restart ICE only on failed connection states ( #3899 )
...
* 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
23002d9f5f
route original timestamps without converting to durations ( #3839 )
...
This improves timestamp precision.
2024-10-07 17:59:32 +02:00
Alessandro Ros
2586782031
fix race condition in tests ( #3834 )
2024-10-05 21:54:11 +02:00
Alessandro Ros
4c3ac34425
fix memory leak in case of errors during initialization of a reader ( #3831 )
2024-10-05 00:49:44 +02:00
Alessandro Ros
1e30dcb555
webrtc: fix crash in case of congestion ( #3813 ) ( #3815 )
2024-09-29 09:56:06 +02:00
Alessandro Ros
658848f8c8
log track ID when skipping tracks ( #3798 )
2024-09-26 14:42:48 +02:00
Alessandro Ros
471019f606
warn users about skipped tracks when reading or publishing ( #3753 )
2024-09-15 19:28:05 +02:00
Alessandro Ros
6a38c87a5b
hls, webrtc: add FromStream / ToStream ( #3752 )
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
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
427249877c
webrtc: fix error "Failed to setup RTCP mux" on some readers ( #3381 ) ( #3449 )
2024-06-10 15:43:52 +02:00
Alessandro Ros
095921dc26
webrtc: on browsers, display error messages from server ( #3448 )
2024-06-10 15:41:05 +02:00
Alessandro Ros
5fe2819546
webrtc: set fmtp of outgoing VP9 and multiopus tracks ( #3446 )
2024-06-10 09:54:08 +02:00
Alessandro Ros
511b276b4d
webrtc: support reading G711 16khz tracks ( #2848 ) ( #3445 )
2024-06-10 00:57:26 +02:00
Alessandro Ros
44953c8e05
webrtc: fix supported AV1 profiles ( #3442 )
2024-06-09 23:09:55 +02:00
Alessandro Ros
d7bc304e52
webrtc: speed up gathering of incoming tracks ( #3441 )
2024-06-09 22:58:40 +02:00
Alessandro Ros
eaf47e6598
webrtc: support reading, publishing, proxying LPCM tracks ( #3437 )
2024-06-09 22:51:16 +02:00
Alessandro Ros
16d0bb7200
webrtc: fix proxying PCMU tracks ( #3427 )
2024-06-05 12:46:55 +02:00
Alessandro Ros
ca1638976b
webrtc: support reading and publishing multichannel Opus ( #3371 ) ( #3375 )
2024-06-03 00:26:32 +02:00
Alessandro Ros
ca6e1259fb
webrtc: support reading and proxying stereo PCMU/PCMA tracks ( #3402 )
2024-06-02 23:08:54 +02:00
Jason Walton
1c2f95f609
webrtc: allow configuring timeouts ( #3404 ) ( #3406 )
...
* webrtc: allow configuring timeouts (#3404 )
* fix from code inspect
2024-05-30 13:36:58 +02:00
Alessandro Ros
407702380a
webrtc: in answer, include codecs that are actually in use ( #3374 )
2024-05-19 19:41:42 +02:00
Alessandro Ros
e283725cde
support routing multichannel Opus between RTSP, SRT, HLS, UDP and recording in MPEG-TS and fMP4 ( #3355 ) ( #3368 )
2024-05-19 14:38:57 +02:00
Alessandro Ros
5d0ebdef56
webrtc: fix error when charset is in Content-Type ( #3126 ) ( #3318 )
2024-05-05 10:47:12 +02:00
Alessandro Ros
1204f76eb7
update golangci-lint ( #3300 )
2024-04-28 18:20:08 +02:00
Alessandro Ros
bfa83fcd33
webrtc: support WHIP/WHEP endpoints without PATCH support ( #3273 ) ( #3277 )
2024-04-20 23:55:35 +02:00
FuseTim
4ed1a39da2
webrtc: support charset in Content-Type of WHIP offer responses ( #3274 )
2024-04-20 23:24:19 +02:00
Rafael Scheidt
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 Ros
665e11a376
webrtc, hls: use absolute paths in Location header ( #3195 ) ( #3177 ) ( #3240 )
2024-04-14 12:04:51 +02:00
Alessandro Ros
a18bebfa58
webrtc: unexport WHIP primitives ( #3233 )
2024-04-13 11:08:30 +02:00
Alessandro Ros
4354535a94
webrtc: fix crash when marshaling ICE fragments ( #3231 )
2024-04-13 10:47:26 +02:00
Jonathan Martin
1989997fe1
webrtc: fix memory leak when WHEP track gathering fails and decrease count of idle HTTP connections ( #3124 )
...
* fix: whep gathering failure leaks peer connections
* fix: failure to create whep client leaks
when read fails, client is not closed
* fix: close idle connection with whip client
* fix: no link check on early whip client close
* move http.Client.CloseIdleConnections() outside WHIPClient
* automatically call WHEPClient.Close() in case of errors during WHEPClient.Read() or WHEPClient.Publish()
---------
Co-authored-by: Jonathan Martin <jonathan.martin@marss.com >
Co-authored-by: aler9 <46489434+aler9@users.noreply.github.com >
2024-03-10 11:33:00 +01:00
Jonathan Martin
732bf565bf
webrtc: fix deadlock when a WHEP source fails ( #3062 ) ( #3108 ) ( #3110 )
...
Co-authored-by: Jonathan Martin <jonathan.martin@marss.com >
Co-authored-by: aler9 <46489434+aler9@users.noreply.github.com >
2024-03-06 22:38:36 +01:00
Alessandro Ros
a52f550ee6
webrtc: return an error when proxying stream with no tracks ( #3042 )
2024-02-18 21:58:11 +01:00
Alessandro Ros
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 Ros
20bb9b90cd
support G711 tracks with multiple channels and custom sample rates ( #2891 )
2024-01-13 11:40:26 +01:00
Alessandro Ros
81c803ba64
webrtc: fix bad quality when converting Opus from WebRTC to LL-HLS ( #2499 ) ( #2740 )
2023-11-24 22:07:33 +01:00
Alessandro Ros
687d8685ef
webrtc: improve connectivity mechanism ( #2686 )
2023-11-12 23:55:28 +01:00
Alessandro Ros
43d41c070b
move static sources into dedicated package ( #2616 )
2023-10-31 14:19:04 +01:00
Alessandro Ros
99bc327d67
move protocol-related code into internal/protocols ( #2572 )
2023-10-26 21:46:18 +02:00