Commit graph

441 commits

Author SHA1 Message Date
Thulinma
f3ba13d6bb Change controller calls that use stream metadata to instantly time out if unavailable, rather than waiting for availability 2023-08-31 15:39:20 +02:00
Thulinma
f19899aed2 Added support for JSON content type in APIv1 and APIv2 calls 2023-08-23 11:06:13 +02:00
Marco
b0d4422d27 Added machine readable exit reasons, INPUT_END trigger, OUTPUT_END trigger, and updated RECORDING_END trigger to include all of these. 2023-08-23 10:55:53 +02:00
Thulinma
b7d5964512 Keep capabilities and protocol config around after close, retry opening pages for ~50ms, no longer warn in save situations of SHM re-use 2023-07-17 18:10:23 +02:00
Thulinma
282c736746 Make config auto-reading/writing configurable with command line flag 2023-07-06 14:04:51 +02:00
Thulinma
8d623e9609 Fix segfault in deinitState when original initState failed 2023-06-19 17:29:23 +02:00
Thulinma
132e59db51 Support for reloading config from disk, writing config to disk after 60 seconds of no changes, reloading config from disk on API call request 2023-06-12 11:47:28 +02:00
Thulinma
0af85de22d UDP API port is now stored in and read from global config 2023-05-01 15:21:10 +02:00
Thulinma
9fe01e82d9 Fix viewer protocol counts in prometheus output 2023-04-10 15:13:20 +02:00
Thulinma
9cd08e3a77 Renamed SRT input and output to SubRip to prevent confusion with TSSRT 2023-04-06 13:23:46 +02:00
Thulinma
e9ea839996 32-bit fixes 2023-02-27 10:43:02 +01:00
Thulinma
0f692233e8 Generalize DTSH header reading and writing; generalize input override prefixes; support external writer targets for pushing 2023-02-22 13:27:09 +01:00
Marco van Dijk
2b18a414b4 Added support for external writers 2023-02-22 13:25:42 +01:00
Marco van Dijk
ea25d4b74b Scheduled Pushes
Change-Id: I3d3a75f4a45d96e6a7849b14634caedd0899ac69
2023-02-09 17:51:45 +01:00
Marco van Dijk
97d24f75e4 Custom variables support
Change-Id: Ia847a868d1803dc80fdb8a627d57bba571cdee64
2023-02-09 12:49:01 +01:00
Thulinma
fbade20111 Meson edits
Change-Id: I37260c32d3b43e42ac2d6aa4f86e5a8d9446b61b
2023-01-03 23:45:10 +01:00
Gijs Peskens
529adbfaf6 Add building via meson, remove outdated options
Co-authored-by: Thulinma <jaron@vietors.com>
Change-Id: I2a620c8d98aca7203f6742c66c3f82afe91b5c3c
2022-12-17 03:36:59 +01:00
Thulinma
a71e81eee2 Fix anti-bruteforcing sleep to be outside of any locking 2022-12-12 20:24:38 +01:00
Thulinma
5bd58dff03 Added ATHEIST environment variable to disable angel process in Controller 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
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
9232451a74 Implemented 422 status code segment skip, new reporting trigger, implements #91 2022-06-19 15:51:22 +02:00
Thulinma
d117835757 Support push-only connectors 2022-06-01 15:57:06 +02:00
Thulinma
13e04ce608 Split config support 2022-06-01 15:38:02 +02:00
Siddarth Tegginamani
97f040cefd Added global config value with unix time of system boot, for system-wide consistent time calculations 2022-02-11 22:43:55 +01:00
Thulinma
82883d39ea Removed licensing system related code 2022-02-09 12:14:58 +01:00
Thulinma
c60c085d09 Robustified controller rolling reloads 2022-01-27 10:22:45 +01:00
Thulinma
28f0f15937 Fixed boolean options in connector/protocol settings 2022-01-22 23:59:44 +01:00
Thulinma
6733bf2a20 Fixed all ARM-related issues/warnings/etc 2021-11-04 18:49:27 +01:00
Thulinma
bf2ce9a422 Implemented new active_streams API, backwards compatible with old API 2021-10-19 22:29:42 +02:00
Thulinma
f8f799422b Fixed statistics returning random data right after stream start and/or reload 2021-10-19 22:29:42 +02:00
Thulinma
c95ab07e04 Added loss stats to prometheus output 2021-10-19 22:29:42 +02:00
Thulinma
e884dc0c32 Added tagging system + API to controller 2021-10-19 22:29:41 +02:00
Thulinma
209cd4c0fc Process system updates:
All processes:
- Added process status system and relevant API calls
- Added ability to set track masks for input/output in processes
- Added support for unmasking tracks when there is a push target, by the "unmask" parameter.
- Added track unmasking support for processes on exit/error
- Make processes start faster, if possible, in the first few seconds of a stream
- Delay stream ready state if there are processes attempting to start

Livepeer process updates:
- Added Content-Resolution header to MistProcLivepeer as per Livepeer's request
- Renamed transcode from "Mist Transcode" to source stream name
- Added ability to send audio to livepeer
- Robustified livepeer timing code, shutdown code, and improved GUI
- Prevent "audio keyframes" from starting segments in MistProcLivepeer
- Multithreaded (2 upload threads) livepeer process
- Stricter downloader/uploader timeout behaviour
- Robustness improvements
- Fix small segment size 😒
- Streamname correction
- Prevent getting stuck when transcoding multiple qualities and they are not equal length
- Corrected log message print error
- Race condition fix
- Now always waits for at least 1 video track
2021-10-19 22:29:41 +02:00
Thulinma
36501a618e Fix controller locking up if MstLog pipe was already blocked during start, fixed several shared memory pages not being correctly re-created on crash recovery 2021-10-19 22:29:41 +02:00
Thulinma
97b28bebda Packet loss stats:
- Fixed bug in packet lost stats, added packet loss and packet retransmission percentages in "totals" API
- Fixed totals and clients calls
- Push stats now includes packet loss/retransmission info
2021-10-19 22:29:41 +02:00
Thulinma
49aa497a66 Added no_unconfigured_streams API call, which nukes streams that are not supposed to be running. 2021-10-19 22:29:41 +02:00
Thulinma
570ed76bd2 Added "config_backup" and "config_restore" API calls, moved "save" API call to always be last executed (guaranteeing same-call edits are part of the saved version) 2021-10-19 22:29:41 +02:00
Thulinma
7c6da9d455 Added generic PUSH_REWRITE trigger, fixed request URL bug 2021-10-19 22:29:41 +02:00
Phencys
19199cbff8 TSSRT Support 2021-10-19 22:29:41 +02:00
Thulinma
7297336e46 Rewrite of Comms 2021-10-19 22:29:41 +02:00
Thulinma
fb56a8f9e8 Session cache fix, semaphore verbosity only in dev builds 2021-10-19 22:29:41 +02:00
Thulinma
45b5ea30ac Added location storage and handling in Controller and Load Balancer 2021-10-19 22:29:41 +02:00
Thulinma
15c132f6f8 Added MistUtilNuke, added input PID and pull PID fields, added nuke_stream API call 2021-10-19 22:29:41 +02:00
Thulinma
ca63abae14 Added STAT_CUTOFF compile flag 2021-10-19 22:29:41 +02:00
Balder
cff43da016 Fixed controller restarting always-on streams when they were, in fact, still on. 2021-10-19 22:29:41 +02:00
Thulinma
3d26741148 Socket library and Config library restructuring, improvement to UDP socket reliability 2021-10-19 22:29:41 +02:00
Thulinma
de4890ac20 Livepeer transcoding support 2021-10-19 22:29:40 +02:00