Commit Graph

1382 Commits

Author SHA1 Message Date
aler9
cca4702357 webrtc muxer: fix race condition
this happened when server was recreated due to API or hot reloading
2023-01-07 13:11:19 +01:00
aler9
9d19ccc837 add WebRTC and low-latency HLS tests 2023-01-07 12:33:28 +01:00
aler9
ec1f957627 webrtx muxer: fix timeout in case of H264 tracks 2023-01-06 20:30:43 +01:00
aler9
777860f757 webrtc muxer: fix freeze on Firefox 2023-01-06 20:02:23 +01:00
aler9
5a0143056a webrtc muxer: fix HTTP status code of index page
Status code was 404, not is 200.
2023-01-06 18:47:54 +01:00
aler9
6d14b011c4 hls muxer: improve generation of H265 codec parameters 2023-01-06 16:48:35 +01:00
aler9
f837ba6a83 hls source: support proxying H265 and Opus tracks 2023-01-06 15:39:20 +01:00
aler9
3f7009f72a hls source: support proxying any number of tracks
Tracks were previously limited to 2
2023-01-06 15:25:35 +01:00
aler9
fa1c07253f hls source: skip unsupported tracks
Skip AC-3, EC-3, closed caption tracks
2023-01-05 14:04:36 +01:00
aler9
59c0ef520f fix crash when H264 or H265 parameters are nil (#1155)
in H264 and H264, parameters (VPS, SPS and PPS) are automatically
prepended to random access units. When parameters were nil, they were
prepended anyway, leading to a crash. Parameters are not prepended only
if they are valid.
2023-01-05 13:13:19 +01:00
aler9
e3fff72b7c move format processors into dedicated folder 2023-01-05 12:54:00 +01:00
aler9
535cbe41e8 speed up tests 2023-01-05 00:01:15 +01:00
aler9
3fd2a25dc1 improve tests 2023-01-03 19:22:10 +01:00
aler9
034e42f463 hls muxer: support reading Opus tracks (#1338) 2023-01-03 18:36:13 +01:00
aler9
cce3fb440f add issue-lock workflow 2022-12-31 16:57:58 +01:00
aler9
090342a413 conf: allow to set empty slices with empty env variables 2022-12-30 18:40:27 +01:00
aler9
cabfd1f171 update readme 2022-12-30 17:48:32 +01:00
aler9
bb2fcdfdd9 update readme 2022-12-30 17:46:59 +01:00
aler9
b26f848613 webrtc: add webrtcICEUDPMuxAddress 2022-12-30 17:23:41 +01:00
aler9
c42e2a5b8a webrtc: print ICE candidate descriptions 2022-12-30 16:56:55 +01:00
aler9
3e0419358a fix crash when webrtcICETCPMuxAddress is already taken 2022-12-30 15:42:35 +01:00
andrew-ld
b27c363ecf
(webrtc) added support for ice mux tcp and nat1to1ips (#1323)
* add webrtcp static tcp mux port

* add ice nat1 host configuration and cleanup

* typo

* rename config keys

* apply codecov suggestions

* apply review suggestions

* typo

* dont use deepequal for WebRTCICETCPMuxAddress

* unexport NewPeerConnection()

* remove Dockerfile

* use an empty list instead of nil value in webrtcICEHostNAT1To1IPs

* drop webrtcICETCPMuxEnable and enable TCP mux when webrtcICETCPMuxAddress is filled

* run go mod tidy

Co-authored-by: aler9 <46489434+aler9@users.noreply.github.com>
2022-12-30 15:39:20 +01:00
Benjamin Peter
d15bde3a59
rpicamera: Initialize tuning file env var before lib init. Fixes #1344 (#1345) 2022-12-30 15:33:00 +01:00
aler9
3a761e5e2f update go-mp4 2022-12-29 23:51:32 +01:00
aler9
939ee1757c update README 2022-12-29 20:48:14 +01:00
Alessandro Ros
5de600ffaa
support reading H265 tracks with HLS (#1342)
* support reading H265 tracks with HLS

* update README
2022-12-29 20:46:31 +01:00
aler9
37baa33fc8 hls muxer: add workaround for bug on latest iPhone iOS
In iPhone iOs 16.1.1, the EXT-X-PRELOAD-HINT file is requested without
the last character, and "partXX.mp4" becomes "partXX.mp"
2022-12-29 20:41:21 +01:00
aler9
242fa0bbba hls muxer: restore support for EXT-X-PRELOAD-HINT 2022-12-29 20:41:21 +01:00
aler9
ec8175e434 fix tests 2022-12-29 16:36:24 +01:00
aler9
fbf8e82db5 update gortsplib 2022-12-28 20:32:03 +01:00
aler9
455b8beff7 simplify code 2022-12-27 18:01:58 +01:00
aler9
946dcea0d1 update golangci-lint 2022-12-27 16:58:21 +01:00
Alessandro Ros
ad52b3fab7
Support publishing with RTMP and H265 (for OBS Studio) (#1333)
* support publishing with RTMP and H265 (for OBS Studio)

* rtmp source: block H265 tracks
2022-12-27 13:55:30 +01:00
aler9
4ebf4f7398 add HLS/FMP4 client tests 2022-12-27 12:00:00 +00:00
aler9
31541765fd hls source: fix crash in case of invalid EXT-X-MEDIA-SEQUENCE 2022-12-27 12:00:00 +00:00
aler9
241c81dc56 hls source: download first playlist once 2022-12-27 12:00:00 +00:00
aler9
0c6385f0e8 hls source: support MPEG-TS streams with metadata tracks 2022-12-27 12:00:00 +00:00
aler9
0ab053ef8f update gortsplib 2022-12-27 13:49:21 +01:00
aler9
3016245267 update readme 2022-12-27 12:00:00 +00:00
aler9
738c953a59 update gortsplib 2022-12-22 21:19:06 +01:00
aler9
0c1fa7f6d4 update readme 2022-12-21 14:43:49 +01:00
aler9
f394c9f8a8 api: add ID to WebRTC readers (#1318) 2022-12-21 12:50:02 +01:00
aler9
1860abea9f update apidocs 2022-12-21 12:47:29 +01:00
aler9
ecc1d35ac2 update apidocs 2022-12-21 12:45:29 +01:00
aler9
bab5caee01 webrtc: fix connection in case of high latency
When latency is high, one side of the peer connection switched to the
"connected" state before the other one, and then closed the WebSocket
connection since it's useless after the peer connection has been
established. This caused the other side of the connection to detect a
WebSocket error and to exit.

The WebSocket connection must remain open, otherwise the
"connected" state is not set by both parts.
2022-12-20 13:30:30 +01:00
aler9
7a5c426ae4 apidocs: add missing config parameters 2022-12-19 23:30:45 +01:00
aler9
ec86401037 webrtc: make HTTPS optional (#1312) 2022-12-19 23:26:07 +01:00
aler9
0e68aedf12 webrtc: fix support for video + audio 2022-12-19 23:08:24 +01:00
aler9
aac0f1b8a2 webrtc: fix sending of RTCP sender reports 2022-12-19 22:48:06 +01:00
aler9
ac371d8dca remove sendrecv comment 2022-12-19 22:13:54 +01:00