Commit graph

1023 commits

Author SHA1 Message Date
Thulinma
b571d1c0c5 Removed extraKeepAway value, superseded by MinKeepAway from track metadata 2022-12-12 20:24:38 +01:00
Thulinma
4181b52857 Silence more compile warnings, fix compilation on MacOS 2022-10-27 14:50:38 +02:00
Ivan Tivonenko
0a13ec1119 Fix compile warnings
Co-authored-by: Thulinma <jaron@vietors.com>
2022-10-27 14:50:38 +02:00
Thulinma
8175ad6dd5 Fix token handling when multiple sessions are multiplexed over a single HTTP connection 2022-10-13 13:24:20 +02:00
Thulinma
0674443066 Fix push outputs to use the correct remote addresses 2022-10-10 14:16:48 +02:00
Marco van Dijk
8ac486b815 Completed new sessions system
Co-authored-by: Thulinma <jaron@vietors.com>
2022-10-05 03:13:52 +02:00
Ramkoemar
074e757028 Sessions rework 2022-10-05 03:09:58 +02:00
Thulinma
3e85da2afd Match libav's RTMP receive window rollover behaviour 2022-10-03 11:53:15 +02:00
Thulinma
f418fed81c Fix HLS output not setting "responded" value appropriately 2022-09-22 13:23:06 +02:00
Marco van Dijk
c10d5a7ec1 onFail on a WS connection, send the error back using the websocket request handler 2022-09-22 13:23:06 +02:00
Phencys
3734c90544 Added support for raw passthrough of MPEG2-TS data 2022-08-08 11:00:39 +02:00
Thulinma
4084768a3e Improved incoming push accept timing 2022-08-08 10:57:22 +02:00
Thulinma
c37aac8898 Remove "Rate=..." debug message from RTMP push output 2022-08-04 09:14:51 +02:00
Thulinma
ed9910d587 Fix for list limit in HLS/CMAF outputs when using non-live 2022-08-03 14:58:05 +02:00
Matthew James
0430a644df Enable Parameters on TSSRT listener 2022-07-25 13:40:13 +02:00
Thulinma
b62747c402 RTMP auth fixes: opaque is now returned urlencoded, challenge now actually works -_- 2022-06-19 15:50:11 +02:00
Marco
d8f67e84b7 RTMP custom audio loop support for streams containing copyrighted audio 2022-06-19 15:50:05 +02:00
Cat
86379e44eb Embed: Raw/WS (HEVC only atm) player 2022-06-19 10:41:20 +02:00
Thulinma
ac13686048 h264 output now also supports h265 output, added websocket support 2022-06-19 10:41:16 +02:00
Siddarth Tegginamani
5147d77b02 HLS TS updated to use hls_support library for (LL)HLS manifest generation. 2022-06-01 16:50:53 +02:00
Thulinma
f9a543c63d TS TCP push output support 2022-06-01 16:31:14 +02:00
Marco van Dijk
2485c16dfc FEC 2022-06-01 16:27:15 +02:00
Thulinma
bd283fab1d Support RTMP input over pipe 2022-06-01 16:06:06 +02:00
Thulinma
ad85f45972 Fixed TS-based outputs injecting extra init/nalend data when not needed 2022-06-01 16:00:04 +02:00
Thulinma
6d4c52c3c0 Added TS-RIST push output support 2022-06-01 15:58:30 +02:00
Thulinma
840a1f5f4e Cleanup TS SRT output code 2022-06-01 15:41:18 +02:00
Thulinma
9f0b86108d Fixed ts-exec output 2022-04-29 17:03:49 +02:00
Thulinma
35a54dbd61 Fixed auto-seeking when adding tracks to an existing track selection 2022-03-10 10:32:00 +01:00
Marco
dd2382e858 Added SDP output 2022-02-21 15:30:16 +01:00
Siddarth Tegginamani
ccee512b3d Bug Fix: CMAF DASH playback works
- syntax error fixed
- removed unnecessary track id simplification
2022-02-11 22:52:20 +01:00
Siddarth Tegginamani
e9d5920a80 HLS CMAF updated to use hls_support library for (LL)HLS manifest generation.
- also removed duplicate CMAF library methods
2022-02-11 22:47:28 +01:00
Cat
dac00f6555 Embed: added hls.js player 2022-02-11 22:44:31 +01:00
Thulinma
1e6143bc88 Further fixes to WS/MP4 (implemented "auto" track, implemented dropping video voluntarily) 2022-02-11 17:54:21 +01:00
Thulinma
22e720c9d1 Fixed WS/MP4 initial seek not happening 2022-02-11 17:25:41 +01:00
Thulinma
c3a09f5fe2 Fix RTMP push delay, specifically 2022-02-11 17:25:34 +01:00
Thulinma
4d1046f72a Fix pushdelay option 2022-02-09 12:15:12 +01:00
Thulinma
82883d39ea Removed licensing system related code 2022-02-09 12:14:58 +01:00
Siddarth Tegginamani
4a866305e5 DTSC pull input now supports keeping stream UTC offset intact between servers, plus a local fallback calculation for older versions 2022-02-03 13:11:17 +01:00
Thulinma
9403d34eb4 Add a quarter frame offset to MPEG-TS AAC timestamp rounding 2022-02-03 13:08:06 +01:00
Thulinma
0951758d2f Fix track dropping if userSelect empty but buffer is not 2022-01-24 16:07:54 +01:00
Thulinma
a5bdaaaa5c Added mkv-exec input and output support 2022-01-24 10:47:47 +01:00
Thulinma
10b134d062 Allow waiting for specific track counts with specific timeouts 2022-01-23 00:18:27 +01:00
Thulinma
4e48896237 Remove USR1 signal handler when spawning child processes 2022-01-23 00:17:03 +01:00
Thulinma
f560b88bfe Several fixes:
- Fixed bug in stream health function causing loop if track not active
- Fixed DTSC pulls ignoring data before the live point
- Improved async buffers (deque mode) to spread the tracks more fairly
- DTSC pull now implements "ping" and "error" commands
- DTSC pulls report suspicious keyframe intervals to the origin and ask for confirmation
- DTSC output now accepts these reports and disconnects if there is no match in keyframe intervals
- Outputs in async mode now keep the seek point in all tracks when reselecting
- Outputs in async mode now default to a starting position in each track that is at a keyframe roughly halfway in the buffer
- Outputs in async mode now ignore playback rate (always fastest possible)
- Removed code duplication in prepareNext function
- Reordered the prepareNext function somewhat to be easier to follow for humans
- DTSC output no longer overrides initialSeek function, now uses default implementation
- Sanitycheck output now supports both sync and async modes, supports printing multiple timestamps for multiple tracks
2022-01-23 00:03:54 +01:00
Thulinma
b89875ea37 No longer print warning for page load failures caused by a user disconnect 2022-01-23 00:02:50 +01:00
Thulinma
72cfc82a9f Robustified disconnect/reconnect functions in Output 2022-01-23 00:00:42 +01:00
Thulinma
28f0f15937 Fixed boolean options in connector/protocol settings 2022-01-22 23:59:44 +01:00
Thulinma
200e1e4a1c WS/MP4 reliability edits:
- Stream selecting now obeys new "maxdelay" capa entry
- Output::liveSeek now takes an optional bool argument to indicate only rate control should be applied (no seeking)
- dataWaitTimeout is now configurable per-output, defaults to the old 25s
- WS/MP4 uses the new liveSeek with rate-control only
- WS/MP4 uses the new dataWaitTimeout and sets it to 4.5s
- WS/MP4 uses the new maxdelay capa, sets it to 5s
- WS/MP4 will now auto-reselect tracks if a track is dropped for data wait timeout or disappeared from metadata reasons
- Added support for jitter information in WS/MP4 protocol
- Robustify sendWebsocketCodecData being ran when sendHeader is ran
- Fix race condition when switching video tracks before previous video track has sent a single frame
2022-01-22 23:59:09 +01:00
Thulinma
a0eb42f1dd Added human readable name in info JSON output for sources 2022-01-22 23:53:57 +01:00
Thulinma
61c08be425 TS UDP output now defaults to all supported tracks 2021-12-24 15:09:41 +01:00