Commit Graph

1278 Commits

Author SHA1 Message Date
aler9
c8f40f448a fix EOF error during DTS extraction 2022-06-03 12:48:45 +02:00
aler9
9bd8b2cfb6 rtmp server, hls muxer: fix DTS in case of B-frames and remove PTS-DTS offset 2022-06-03 11:31:39 +02:00
aler9
4073013f68 hls muxer: stop normalizing PTS 2022-06-02 22:37:46 +02:00
aler9
acd788d632 update gortsplib 2022-06-02 20:58:48 +02:00
aler9
73a9444c8d hls muxer: remove useless pps storage 2022-06-02 13:40:30 +02:00
aler9
2ed1aa3d11 hls muxer, rtmp server: extract DTS from samples 2022-06-02 12:42:59 +02:00
aler9
e7f88bc12f move DTS extractor into gortsplib 2022-06-02 11:55:12 +02:00
aler9
9f51e281e3 merge standards 2022-06-01 12:43:24 +02:00
aler9
c0a11bd783 update IETF standards 2022-06-01 12:40:12 +02:00
aler9
ac513655f5 update links 2022-06-01 12:34:24 +02:00
aler9
93975552ac hls muxer: improve performance, decrease memory consumption 2022-06-01 10:13:37 +02:00
aler9
22d9bdabf8 update readme 2022-05-31 19:25:00 +02:00
Alessandro Ros
e115983296
Implement Low-Latency HLS (#938)
* add hlsVariant parameter

* hls: split muxer into variants

* hls: implement fmp4 segments

* hls muxer: implement low latency mode

* hls muxer: support audio with fmp4 mode

* hls muxer: rewrite file router

* hls muxer: implement preload hint

* hls muxer: add various error codes

* hls muxer: use explicit flags

* hls muxer: fix error in aac pts

* hls muxer: fix sudden freezes with video+audio

* hls muxer: skip empty parts

* hls muxer: fix video FPS

* hls muxer: add parameter hlsPartDuration

* hls muxer: refactor fmp4 muxer

* hls muxer: fix CAN-SKIP-UNTIL

* hls muxer: refactor code

* hls muxer: show only parts of last 2 segments

* hls muxer: implementa playlist delta updates

* hls muxer: change playlist content type

* hls muxer: improve video dts precision

* hls muxer: fix video sample flags

* hls muxer: improve iphone audio support

* hls muxer: improve mp4 timestamp precision

* hls muxer: add offset between pts and dts

* hls muxer: close muxer in case of error

* hls muxer: stop logging requests with the info level

* hls muxer: rename entry into sample

* hls muxer: compensate video dts error over time

* hls muxer: change default segment count

* hls muxer: add starting gap

* hls muxer: set default part duration to 200ms

* hls muxer: fix audio-only streams on ios

* hls muxer: add playsinline attribute to video tag of default web page

* hls muxer: keep mpegts as the default hls variant

* hls muxer: implement encryption

* hls muxer: rewrite dts estimation

* hls muxer: improve DTS precision

* hls muxer: use right SPS/PPS for each sample

* hls muxer: adjust part duration dynamically

* add comments

* update readme

* hls muxer: fix memory leak

* hls muxer: decrease ram consumption
2022-05-31 19:17:26 +02:00
aler9
2efe19ac48 update comment 2022-05-29 15:47:31 +02:00
aler9
c5afa69174 fix regression that caused a source to be closed after 10secs when sourceOnDemand is yes (#949) 2022-05-28 13:54:04 +02:00
aler9
6de8277cb7 support SDPs with TIAS bandwidths (#948) 2022-05-23 21:30:41 +02:00
aler9
23ac079646 rtsp source: fix regression (#949)
This caused a periodic disconnection when sourceOnDemand is yes
2022-05-20 23:42:19 +02:00
aler9
2fba878755 rtsp server: fix wrong RTP-Info header (#922)
- fix truncation to seconds of RTP time in RTP-Info
- add a small quantity to rtptime in RTP-Info
- add 1 to last sequence number in RTP-Info
2022-05-16 14:37:05 +02:00
aler9
3fbd842ca8 update readme 2022-05-16 14:32:52 +02:00
aler9
959b78586a rtmp: add MessageReader 2022-05-16 11:57:29 +02:00
aler9
1f6d92bc3a rtmp: add additional message types 2022-05-14 00:52:11 +02:00
aler9
180db31166 rtmp: support negative timestamps in MessageWriter 2022-05-14 00:37:08 +02:00
aler9
dcdb0cf13f rtmp: fix timestamp in MessageWriter 2022-05-14 00:19:43 +02:00
aler9
d1c6c56077 rtmp: add Chunk2 2022-05-14 00:11:01 +02:00
aler9
420b6b21c4 rtmp: split MessageWriter into single handlers per chunk stream 2022-05-13 23:47:54 +02:00
aler9
896c799f99 rtmp: add MessageType, ControlChunkStreamID 2022-05-13 23:38:39 +02:00
aler9
9519bf670a rtmp: add MessageWriter 2022-05-13 20:53:52 +02:00
aler9
046a3f248d rtmp: add primitives 2022-05-13 19:04:47 +02:00
aler9
13fb24da39 fix rtmp -> rtsp audio conversion (#932) 2022-05-13 16:59:52 +02:00
aler9
7ecd52808a rtsp source: support cameras that provide base URL inside control attribute (#683) 2022-05-11 16:54:07 +02:00
aler9
d6a804f592 rtsp server: improve performance when reading with TCP 2022-05-11 16:37:33 +02:00
aler9
ae23dde169 hls client: improve video / audio sync 2022-05-10 23:35:25 +02:00
aler9
0c4f6e2d43 rtmp server: fix bias error in AAC DTS 2022-05-10 23:35:19 +02:00
aler9
b6b99b142a hls muxer: prefer hls.js over native HLS 2022-05-10 17:35:52 +02:00
aler9
f521049e2f rtsp source: restore support for cameras with percent sign in password 2022-05-10 17:33:34 +02:00
aler9
901eae2f6b fix bias error in AAC timestamp 2022-05-10 13:29:32 +02:00
aler9
3128ff91de update readme 2022-05-04 09:50:05 +02:00
aler9
3e4bae5cab add vlc/ubuntu notice 2022-05-04 09:43:19 +02:00
aler9
58e3fa358e split handling of on-demand sources and on-demand publishers 2022-05-03 14:38:45 +02:00
aler9
98b3538289 fix panic that happens when publishing to a path with source = redirect (#933) 2022-05-03 11:45:47 +02:00
aler9
1ad0df128d rtsp source: fix timeout (https://github.com/aler9/rtsp-simple-server/discussions/897)
that happens when there's a UDP->TCP switch and Content-Base contains
an absolute URL
2022-05-02 19:03:00 +02:00
aler9
6c95ea2837 rtsp source: support AUs wrapped inside ADTS (#855) 2022-04-29 12:33:33 +02:00
aler9
411fb989eb hls client: add limit on NALU size 2022-04-29 12:23:13 +02:00
aler9
35b3541e4f hls client: add limit on AU size 2022-04-29 12:02:11 +02:00
aler9
095b90b7ef hls muxer: fix PCR insertion when stream is audio only 2022-04-28 13:04:13 +02:00
aler9
709d727eab hls muxer: tune hls.js parameters 2022-04-27 18:55:31 +02:00
aler9
dedca93eca hls muxer: update hls.js 2022-04-25 18:57:40 +02:00
aler9
ae7e68c914 hls muxer: remove progressive flag; add liveSyncDurationCount, liveMaxLatencyDurationCount to hls.js 2022-04-25 18:57:16 +02:00
aler9
07591c7514 hls muxer: update primary playlist in case SPS/PPS changed 2022-04-24 13:01:27 +02:00
aler9
3b21da7762 hls muxer: add EXT-X-VERSION to primary playlist 2022-04-24 11:37:11 +02:00