Commit graph

122 commits

Author SHA1 Message Date
Thulinma
2a8f2f75d3 Implemented UDP socket packet send pacing, WebRTC now makes use of this new feature. 2023-06-15 12:34:25 +02:00
Thulinma
0c716714df Rollback to 3.0 version of HLS
Change-Id: I12d2c48d3d4c57b93e827daffb7d38451e03dae9
2023-04-10 14:14:58 +02:00
Marco
03771ccac2 Changed HTTPTS-based playlist writer into a generic format-agnostic playlist writer
Change-Id: I503110bca3a557342ce9a21c64824a916725a79b
2023-01-24 02:17:28 +01:00
Thulinma
877216efd0 connectToFile edit that allows for custom socket passing
Change-Id: Id5da9d9c50d1997f997c9e738d8f680098901509
2023-01-24 01:40:41 +01:00
Thulinma
b571d1c0c5 Removed extraKeepAway value, superseded by MinKeepAway from track metadata 2022-12-12 20:24:38 +01: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
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
ad4c1abd0b Playlist support fixed 2021-12-24 15:09:36 +01:00
Marco van Dijk
3d9ed39396 setstreamVodField and streamLiveField no longer mutually exclusive
Removed curPage map from IO. bufferFrame now creates this variable locally and passes it to bufferStart, bufferFinalize and bufferNext
Fix keyNum selection with mixed live & VoD data
Fix bufferframe to handle mixed VoD and live
Added check to bufferFrame to not start the countdown timer for removing live pages
Fixed countdown timer being set using keyNum rather than pageNumber, which resulted in the wrong pages being deleted
livePage variable moved from static to private variable to correctly handle multithreaded inputs

# Conflicts:
#	src/io.cpp
#	src/output/output.cpp
2021-11-22 15:38:58 +01:00
Thulinma
dae32ede11 Added Util::packetSorter with async/sync modes, set DTSC outputs to use async mode 2021-11-03 14:15:52 +01:00
Thulinma
0a3c399a98 Ensure key and page numbers are all 32 bits, robustify/fix packet handling internals 2021-10-19 22:29:42 +02:00
Thulinma
6f035f3bc6 A few extra status for process status 2021-10-19 22:29:41 +02:00
Ramkoemar
77aa90d48c SRT edits:
- Increased SRT socket queue from 1 to 100
- Fixed SRT initialization (now clean)
- Made output_ts_base.cpp thread-safe
- Made Output class thread-safe
- SRT TS output can now optionally set open file limit
2021-10-19 22:29:41 +02:00
Thulinma
0bd5d742f6 SRT improvements:
- Made SRT support optional
- Make build options visible in cmake-gui
- Improved generic connection stats for outputs
- Added streamid handling configuration for MistInTSSRT
- Push input support over SRT
- Fixed support for SRT settings in push outputs
- Fix parsing of SRT-passed stream names
- Fixed hostnames in MistOutTSSRT, fixed PUSH_REWRITE trigger payload
- Opus support in TS-SRT
- Fixed SRT socket stats, fixed SRT socket address logic, improved SRT socket rolling restart support
- Fixed SRT push deny
2021-10-19 22:29:41 +02:00
Thulinma
8b73260194 Output::seek now returns a boolean for success/failure, patched Output::nextKeyTime to no longer crash when the current track is unloaded 2021-10-19 22:29:41 +02:00
Thulinma
1fff195f77 Various TS improvements 2021-10-19 22:29:41 +02:00
Thulinma
753da9bd3f Fix for unixrecstart/unixrecstop 2021-10-19 22:29:40 +02:00
Thulinma
0af992d405 Various fixes, among which:
- Fixed segfault when attempting to initialseek on disconnected streams
- Fix 100% CPU bug in controller's stats code
- WebRTC UDP bind socket improvements
- Several segfault fixes
- Increased packet reordering buffer size from 30 to 150 packets
- Tweaks to default output/buffer behaviour for incoming pushes
- Added message for load balancer checks
- Fixed HLS content type
- Stats fixes
- Exit reason fixes
- Fixed socket IP address detection
- Fixed non-string arguments for stream settings
- Added caching for getConnectedBinHost()
- Added WebRTC playback rate control
- Added/completed VP8/VP9 support to WebRTC/RTSP
- Added live seek option to WebRTC
- Fixed seek to exactly newest timestamp
- Fixed HLS input

# Conflicts:
#	lib/defines.h
#	src/input/input.cpp
2021-10-19 22:29:40 +02:00
Phencys
2b99f2f5ea New Meta commit 2021-10-19 22:29:40 +02:00
DDVTech
fccf66fba2 Restyle 2021-10-19 22:29:40 +02:00
Thulinma
5be878bea5 Added support for precise splitting of pushes to disk (i.e. recording) with re-variable-ized target strings at each split 2019-09-30 16:28:10 +02:00
Thulinma
01d43796ad 32-bit fixes 2019-01-26 00:51:30 +01:00
Thulinma
109995809d Merge branch 'development' into LTS_development
# Conflicts:
#	src/output/output_http_internal.cpp
2018-11-13 16:35:12 +01:00
Thulinma
251dc5f171 Better onFail handling, better HTTP failure handling 2018-11-13 16:34:30 +01:00
Thulinma
25bb8aac5f Improved output timing 2018-11-05 16:44:36 +01:00
Thulinma
075756d646 Improved output timing 2018-11-05 16:44:24 +01:00
Thulinma
b2995ea2db Fix statistics in Free edition 2018-10-15 13:43:51 +02:00
Thulinma
776cfe1850 Backported various Pro edition changes and general code to Free edition 2018-10-15 10:25:43 +02:00
Thulinma
6ddc4adadf Merge branch 'development' into LTS_development 2018-08-27 14:17:20 +02:00
Ramoe
33488da329 Added singular mode override for inputs 2018-08-27 14:13:25 +02:00
Thulinma
84de51ab8c Merge branch 'development' into LTS_development 2018-08-24 20:05:14 +02:00
Thulinma
01e15663e9 Improved seek function for real-time protocols 2018-08-24 20:05:08 +02:00
Thulinma
d48967d549 Improved selectDefaultTracks function to give feedback on selection changes. 2018-07-04 11:51:03 +02:00
Thulinma
9723159592 Improved selectDefaultTracks function to give feedback on selection changes. 2018-07-04 11:48:36 +02:00
Thulinma
0385daabe8 Merge branch 'development' into LTS_development 2018-03-20 14:30:42 +01:00
Thulinma
74baf8d4a4 Added Output::disconnect() call 2018-03-20 14:22:04 +01:00
Thulinma
ad29c297c2 Merge branch 'development' into LTS_development
# Conflicts:
#	lib/bitfields.h
#	src/input/input.cpp
#	src/output/output.cpp
2018-01-24 19:12:05 +01:00
Thulinma
363df9aacf Moved getMainSelectedTrack to InOutBase class 2018-01-24 18:59:29 +01:00
Thulinma
307d14f901 Added more ISO639 support (2-letter codes and conversions), improved audio/video/subtitle selection through HTTP connectors 2017-11-23 14:15:04 +01:00
Thulinma
3cb5774822 Merge branch 'development' into LTS_development
# Conflicts:
#	src/output/output.h
#	src/output/output_hls.cpp
2017-10-20 14:25:27 +02:00
Erik Zandvliet
c1373fba17 Fixes hls crash on non-existing streams 2017-10-20 14:23:32 +02:00
Thulinma
78b5c28116 Added recstartunix and recstopunix to time recordings by unix time (seconds, not millis) 2017-10-09 15:16:48 +02:00
Thulinma
178c888e56 Removed minSkipAhead, improved seeking algorithm. 2017-09-29 16:20:51 +02:00
Thulinma
485a4ecbbe Removed minSkipAhead, improved seeking algorithm. 2017-09-29 16:13:01 +02:00
Thulinma
8fbdafb288 Generalized recording, pimped. 2017-09-27 12:09:18 +02:00
Erik Zandvliet
f8b9db9dcd Generalized recording, added recfrom and recuntil flags 2017-09-27 12:09:18 +02:00
Thulinma
b0c7897568 Added minKeepAway support to DTSC::Track object, senders and parsers 2017-08-03 15:08:56 +02:00
Thulinma
dc8bae8dd3 Merge branch 'development' into LTS_development
# Conflicts:
#	src/output/output.h
2017-07-28 18:39:49 +02:00
Thulinma
3eb69ff2c7 Changed bufferLivePacket and related functions to have const DTSC::Packet references 2017-07-28 18:38:54 +02:00