Commit Graph
100 Commits
Author SHA1 Message Date
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
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
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
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
aler9 96519ac23c update gortsplib 2022-12-19 13:57:48 +01:00
aler9 0772db509a fix freeze when reading a stream with both HLS and RTSP 2022-12-18 23:16:20 +01:00
aler9 f9bf62ef0a update readme 2022-12-16 01:03:04 +01:00
aler9 4bad36345a update readme 2022-12-16 00:54:26 +01:00
aler9 478607a602 hls muxer: ask credentials again after failed attemps 2022-12-14 23:51:18 +01:00
aler9 57015e2bf0 fix authentication with VLC
This fixes the case in which VLC is trying to read a path with a query
(i.e. stream?mykey=myval) and the path requires read credentials.
2022-12-14 19:07:39 +01:00
aler9 6524130ab9 implement resizing of oversized H265 RTP packets 2022-12-14 18:54:35 +01:00
aler9 ffbdf51669 fix handling of oversized H264 RTP packets
Resized RTP packets were wrongly mixed with original packets.
Original packets are now discarded correctly.
2022-12-14 17:50:40 +01:00
aler9 39da300345 update H265 track parameters when resolution, VPS, SPS or PPS change 2022-12-14 15:41:59 +01:00
aler9 4bafa4ea9b add dedicated processors for H265 and Opus 2022-12-13 21:26:35 +01:00
aler9 074cfa6712 update gortsplib 2022-12-12 18:23:23 +01:00
aler9 feae9222c6 add latest-rpi docker image 2022-12-12 14:37:22 +01:00
aler9 3b5efb25a3 add docker images with libcamera included (#1110) 2022-12-12 13:52:09 +01:00
aler9 ff12605106 rpicamera: remove grep and awk dependency 2022-12-12 13:14:26 +01:00
aler9 062fb600e8 return an error when rpiCamera in used in two paths (#1257) 2022-12-12 11:49:11 +01:00
aler9 99855e0909 fix generation of Docker images (#1293) 2022-12-12 10:44:39 +01:00
aler9 c44b4099c2 update gortsplib 2022-12-11 22:09:55 +01:00
aler9 5319f9ed47 update readme
add instructions on how to compile with Raspberry Pi camera support
2022-12-09 00:46:33 +01:00
aler9 88fcb25759 update gortsplib 2022-12-09 00:12:17 +01:00
aler9 3f5c550baf rpicamera: support libcamera 0.0.2 2022-12-08 23:50:18 +01:00
aler9 7fef5500cb fix codecov / github api limits 2022-11-29 15:54:56 +01:00
aler9 7ed0a873f5 use Track.String() instead of reflect for getting track names 2022-11-28 11:16:31 +01:00
aler9 7a49b92d9b update gortsplib 2022-11-28 08:59:49 +01:00
aler9 282d155a4f update gortsplib 2022-11-15 23:47:12 +01:00
aler9 16580c8985 move all tests under same workflow 2022-11-07 10:16:46 +01:00
aler9 e6a9e280b5 decrease release build times 2022-11-07 09:34:41 +01:00
aler9 1252472e05 optimize "release" workflow
build binaries once for both GitHub and Docker Hub
2022-11-07 09:34:00 +01:00
aler9 22f52b0d96 update gortsplib 2022-11-05 17:28:53 +01:00
aler9 ac8207c8f4 update gortsplib 2022-11-03 21:44:31 +01:00
aler9 4e4067dc85 rpicamera: avoid hanging during encode errors (#1133) 2022-11-03 17:39:51 +01:00
aler9 4d770cef94 hide normal decoder states from logs 2022-11-03 16:05:46 +01:00
aler9 b21967260d add license file to binaries and docker images (#1138) 2022-11-03 16:01:41 +01:00
aler9 eae895e321 decrease ram consumption 2022-11-03 15:44:34 +01:00
aler9 7eb7883270 improve performance 2022-11-03 15:27:21 +01:00
aler9 a4363dfaa3 hls: use fields for each flag values 2022-11-02 10:24:58 +01:00
aler9 f0514b3983 update gortsplib 2022-11-01 16:13:18 +01:00
aler9 f7fdd60966 rtsp server: log decode errors 2022-10-31 19:16:13 +01:00
aler9 584cc9357a rtsp source: log decode errors 2022-10-31 19:11:20 +01:00
aler9 e379bc5213 fix readme 2022-10-29 12:52:15 +02:00
aler9 a48374c81f rpicamera: fix compatibility with latest version of libcamera (#1195) 2022-10-29 12:34:44 +02:00
aler9 23244471ad update gortsplib 2022-10-28 16:35:13 +02:00
aler9 cc0d8f7dab hls client: ignore data from unrecognized tracks in MPEG-TS segments 2022-10-26 21:53:33 +02:00
aler9 0daf8a17b7 hls client: skip packets received before the 1st packet of the leading
track, for MPEG-TS segments too
2022-10-26 21:50:17 +02:00
aler9 7981522bf6 hls client: skip packets received before the 1st packet of the leading
track; make sure that the initial DTS is zero
2022-10-26 17:39:32 +02:00
aler9 8cec54c980 apidocs: add missing rpicamera params 2022-10-25 14:31:21 +02:00
aler9 edaad84a5a check gortsplib before publishing a release 2022-10-25 14:18:59 +02:00
aler9 ff26b88760 update gortsplib 2022-10-25 14:18:44 +02:00
aler9 96433e753b fix tests 2022-10-25 14:06:09 +02:00
aler9 4f6121b1c4 rpicamera: use exact frame timestamps 2022-10-25 12:14:37 +02:00
aler9 532592c099 rpicamera: change default resolution to 1920x1080 2022-10-25 11:29:04 +02:00
aler9 7013b75daf rpicamera: add rpiCameraMode parameter (#1111) 2022-10-25 11:23:44 +02:00
aler9 dfef383311 hls muxer: fix compatibility with grafov/m3u8 2022-10-24 16:13:37 +02:00
aler9 841bbec959 hls client: allow segments with up to 200 parts 2022-10-24 16:10:13 +02:00
aler9 fdb1955e1d api: autogenerate structs from configuration 2022-10-23 18:01:51 +02:00
aler9 ec4ec142b4 forbid using 'rpiCamera' as source on regexp paths 2022-10-23 16:44:34 +02:00
aler9 847ca6c89d hls muxer: fix regression introduced in b5dd658 2022-10-20 10:20:38 +02:00
aler9 fad3474805 rtmp server: print only tracks that are effectively being read 2022-10-19 17:03:04 +02:00
aler9 c9de689a72 hls muxer: print only tracks that are effectively being converted 2022-10-19 17:01:26 +02:00
aler9 680b348902 hls muxer: change m3u8 Content-Type to application/x-mpegURL 2022-10-18 11:02:52 +02:00
aler9 8aa719eda5 prepend SPS and PPS once when remuxing H264 streams
This avoids missing frames when reading with RTSP and the original
stream has NALU groups with multiple IDRs in it.
2022-10-09 23:40:28 +02:00
aler9 31d9429c18 hls source: refactor client 2022-10-09 12:56:48 +02:00
aler9 3b8e2f0211 hls source: support streams that start with negative DTS 2022-10-09 12:16:29 +02:00
aler9 5b5db2f833 hls client: fix reading some streams with odd Annex-B format
see
https://github.com/aler9/gortsplib/commit/b3c70f56f7a1dc2f712230b9264bd7754a8092d2
2022-10-08 20:22:37 +02:00