Commit Graph

303 Commits

Author SHA1 Message Date
aler9
94e519f08f conf: use dedicated interface to unmarshal from environment 2021-10-11 12:13:57 +02:00
aler9
b21efeb28f restore logLevel: debug 2021-10-05 20:36:15 +02:00
aler9
0d4d81c333 remove useless code 2021-10-05 09:41:37 +02:00
aler9
b70a4bfe5b fix regression that prevented setting config slices with env variables (#612) 2021-10-04 08:58:23 +02:00
aler9
0d15e2772a close custom commands with SIGINT again (#495) 2021-10-03 16:09:40 +02:00
aler9
131148ecb4 fix lint 2021-10-03 16:08:10 +02:00
aler9
2a1b3e194d avoid deadlock when a runOnDemand command is used and a path is deleted 2021-10-03 16:05:37 +02:00
aler9
0a9e414625 avoid closing readers twice 2021-10-03 16:01:40 +02:00
aler9
d2c668ceea avoid deadlock when a runOnPublish command is reading and the publisher times out (#595) (#495) 2021-10-03 15:58:24 +02:00
aler9
160966e81b print log messages when runOnConnect and runOnRead are started or stopped 2021-10-03 15:46:06 +02:00
aler9
3149203f36 print log messages about custom commands closing after they are closed 2021-10-03 15:22:42 +02:00
aler9
507d810bff make log messages about custom commands more clear 2021-10-03 15:20:26 +02:00
aler9
091056dd8e add log messages when runOnPublish is started or stopped 2021-10-03 15:19:06 +02:00
aler9
c46ae16dc7 run runOnRead command also with RTMP readers 2021-09-30 13:12:20 +02:00
aler9
e62ed283d1 rtmp: do not raise an error in case of metadata packets (#577) 2021-09-30 11:57:03 +02:00
aler9
e78544f23e update gortsplib 2021-09-28 15:47:56 +02:00
aler9
ab71f22560 move decoding of more configuration into JSON decoding 2021-09-27 16:40:49 +02:00
aler9
f114e90c55 speed up tests 2021-09-27 16:40:49 +02:00
aler9
1f540a2aaf return error in case of non-existent parameters in the configuration file 2021-09-27 16:40:49 +02:00
aler9
b748e6d0ff update error messages 2021-09-27 16:40:49 +02:00
aler9
6921a402d1 decode the configuration when decoding JSON 2021-09-27 16:40:49 +02:00
aler9
54292d712e convert the configuration into JSON before loading it 2021-09-27 16:40:49 +02:00
aler9
ca9645c2f9 api: decode durations from strings instead of numbers
This allows to use human-readable durations with the API,
for instance: "5s" instead of 5000000000
2021-09-26 23:21:37 +02:00
aler9
64808863ed move confenv into conf 2021-09-26 22:25:39 +02:00
aler9
68ab5c05f6 move aac utilities into gortsplib 2021-09-23 20:24:10 +02:00
aler9
3b0327233e move hls utils into gortsplib 2021-09-23 20:14:20 +02:00
aler9
06cffc44df hls: move constants into right file 2021-09-23 11:14:57 +02:00
aler9
e2f33a7495 api: support working with path configs that contains slashes (#581) 2021-09-23 09:07:36 +02:00
aler9
9398cea0c2 update golangci-lint 2021-09-09 23:05:54 +02:00
aler9
ef4b925209 hls: fix discontinuity of TS counters between segments 2021-09-07 12:02:44 +02:00
aler9
98bf53a1e8 hls: simplify audio pts generation 2021-09-07 10:24:57 +02:00
aler9
74f3be1eed hls: use audioAUCount only if audio is primary track 2021-09-07 10:23:32 +02:00
aler9
02afa8ff99 rtmp, hls: remove initial difference of 2secs between PTS and DTS of H264 2021-09-07 10:04:58 +02:00
aler9
2710189945 hls: fix error that caused primary playlist not to be served to more than 1 client 2021-09-06 20:02:23 +02:00
aler9
e189f4570c hls, rtmp: set DTS = PTS when a IDR frame is received 2021-09-06 19:04:39 +02:00
aler9
ddcd0c34cf api: fix concurrency issue when creating multiple path configs at once (#542) 2021-09-06 18:39:15 +02:00
aler9
df4c268813 support proxying HLS 2021-09-05 18:00:29 +02:00
aler9
5eb4741278 hls: speed up serving of files 2021-09-05 15:47:28 +02:00
aler9
7ba507f205 rtmp: print clearer error message in case no H264/AAC tracks are found 2021-08-31 10:42:08 +02:00
Lionel Nicolas
450acfaf4e externalcmd: fix crash when manually pushing to an ondemand path 2021-08-27 08:37:24 +02:00
aler9
b65207012c update gortsplib 2021-08-25 19:51:59 +02:00
aler9
6d69e4969e hls: set html video height to 100% 2021-08-23 13:12:14 +02:00
aler9
92523c2a13 hls: insert segments into playlist only after they're complete
In this way, EXT-X-TARGETDURATION and EXTINF are always filled correctly.

If no segments have been generated yet, the playlist is not returned
until a segment is inserted or the muxer is closed. This causes timeout
issues on iOS Safari, that are solved by waiting for a fetch() before starting
the video.
2021-08-23 13:12:09 +02:00
aler9
6b6d314a07 hls: revert 93b1433 and send PCR once in a while 2021-08-21 21:13:23 +02:00
aler9
b3c13fcf9a hls: do not send DTS if PTS = DTS 2021-08-20 13:07:35 +02:00
aler9
6e5564c0a2 api: return rtspsSessions in case of RTSPS sessions 2021-08-20 10:32:43 +02:00
aler9
da44bbd18a api: normalize entity names 2021-08-20 10:13:41 +02:00
aler9
801ef44f54 rtsp, rtmp: fix ignored errors 2021-08-19 17:28:42 +02:00
aler9
4fdd42fa58 hls: rename remuxer into muxer 2021-08-18 15:49:12 +02:00
aler9
ca499a27c3 remove stats from rtmp and rtsp source 2021-08-18 15:43:56 +02:00