Commit Graph

26 Commits

Author SHA1 Message Date
aler9
841bbec959 hls client: allow segments with up to 200 parts 2022-10-24 16:10:13 +02:00
Alessandro Ros
e5ab731d14
Improve HLS client (#1179)
* hls source: support fMP4s video streams

* hls source: start reading live streams from (end of playlist - starting point)

* hls client: wait processing of current fMP4 segment before downloading another one

* hls client: support fmp4 trun boxes with default sample duration, flags and size

* hls client: merge fmp4 init file reader and writer

* hls client: merge fmp4 part reader and writer

* hls client: improve precision of go <-> mp4 time conversion

* hls client: fix esds generation in go-mp4

* hls client: support audio in separate playlist

* hls client: support an arbitrary number of tracks in fmp4 init files

* hls client: support EXT-X-BYTERANGE

* hls client: support fmp4 segments with multiple parts at once

* hls client: support an arbitrary number of mpeg-ts tracks

* hls client: synchronize tracks around a primary track

* update go-mp4

* hls: synchronize track reproduction around a leading one

* hls client: reset stream if playback is too late

* hls client: add limit on DTS-RTC difference

* hls client: support again streams that don't provide codecs in master playlist
2022-10-23 14:04:33 +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
f1fb00b80f update golangci-lint 2022-09-17 21:19:45 +02:00
aler9
a8822b9f15 hls muxer / source: route AAC units singularly
This aligns the HLS implementation with the rest of the server. In case
of HLS/MPEGTS, the server now generates an ADTS packet for each AU,
without grouping multiple AUs into a single ADTS packet.
2022-08-14 12:19:11 +02:00
aler9
af7a815f83 update gortsplib 2022-08-05 23:50:45 +02:00
aler9
56338e0084 hls client: do not create audio track when there's no audio track 2022-03-20 16:55:53 +01:00
aler9
eeb15773f9 hls client: rename ClientParent into ClientLogger 2022-03-08 18:15:26 +01:00
aler9
9cebeac039 hls client: ignore Annex-B decode errors 2022-03-08 18:15:26 +01:00
Victor Gavro
c13e33b1ed m3u8 relative url fixed 2022-03-08 18:15:26 +01:00
Victor Gavro
c3a1ee72bc m3u8 relative url fixed (urls starting with // and urls with query string) 2022-03-08 18:15:26 +01:00
aler9
fe32022edf hls client: move RTP packet generation outside client 2022-02-19 12:25:23 +01:00
aler9
c1eb03da26 hls: split client code into multiple files 2022-02-18 10:46:52 +01:00
aler9
5504ff44b6 rtsp: parse all incoming RTP/RTCP packets 2022-02-18 00:14:52 +01:00
aler9
2bfdcc7d89 update gortsplib 2022-01-30 17:43:03 +01:00
aler9
a1fed6fb38 rtsp source: set ServerName when using TLS (#708) 2021-12-03 23:33:28 +01:00
aler9
f7419586af update gortsplib 2021-11-12 22:29:56 +01:00
aler9
47a975de09 hls: fix race condition 2021-11-01 11:07:37 +01:00
aler9
c9c9c88ac8 update golangci-lint 2021-10-30 13:06:29 +02:00
aler9
161fa58bd6 hls: cleanup 2021-10-28 18:57:04 +02:00
aler9
9155bffefb allow disabling HTTPS validation by using sourceFingerprint (#665) 2021-10-25 21:14:13 +02:00
aler9
e78544f23e update gortsplib 2021-09-28 15:47:56 +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
df4c268813 support proxying HLS 2021-09-05 18:00:29 +02:00