Commit graph

411 commits

Author SHA1 Message Date
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
Thulinma
19a4701be7 Added STREAM_END trigger + viewerseconds stat in prometheus output 2021-10-19 22:29:40 +02:00
Thulinma
771fad390a Allow overriding application name with -DAPPNAME="Name here" 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
Ramoe
2a09128830 Added FFMPEG process 2021-10-19 22:29:39 +02:00
Thulinma
5c8aa1bfbd Improved trustedproxy support 2021-08-30 12:43:19 +02:00
Thulinma
dbafdf6744 Correct handling of reaper thread in forking binaries 2021-03-19 22:47:06 +01:00
Thulinma
d522c1d90f Merge branch 'development' into LTS_development
# Conflicts:
#	src/input/input_buffer.cpp
2020-09-30 17:29:49 +02:00
Thulinma
bafe30e234 Improvements/tests for SEM_LIVE locking 2020-09-30 17:24:57 +02:00
Thulinma
e6a9e5d421 Merge branch 'development' into LTS_development 2020-08-31 15:28:30 +02:00
Thulinma
ef1ee853b9 Fix shutdown API call 2020-08-31 15:27:59 +02:00
Thulinma
eb15ad41a9 Merge branch 'development' into LTS_development
# Conflicts:
#	src/controller/controller_api.cpp
2020-08-10 14:49:59 +02:00
Thulinma
a05dba0ce8 Added API call for shutting down MistServer from local API connections 2020-08-10 14:48:32 +02:00
Thulinma
a15b3c20f1 Merge branch 'development' into LTS_development
# Conflicts:
#	src/controller/controller_api.cpp
2020-07-15 19:30:40 +02:00
Thulinma
b057698018 Added api_endpoint API call to give local API endpoint address, added responses to local-only UDP API, added Socket::getSocketName(), added ability to discover current listening interface address and port for serveSocket-style functions 2020-07-15 19:29:16 +02:00
Thulinma
c2fd7af109 Fix always on streams being misdetected when set to false. -_- 2020-03-12 16:03:15 +01:00
Thulinma
8d519d0fc5 Merge branch 'development' into LTS_development 2020-03-10 14:01:31 +01:00
Thulinma
04a1b394dd Fixed multiple public addresses in controller settings, fixed debug level being passed when set to default 2020-03-10 14:01:21 +01:00
Thulinma
eb8694052d Merge branch 'development' into LTS_development
# Conflicts:
#	lib/http_parser.cpp
2020-03-03 17:04:10 +01:00
Thulinma
af87ab3552 Fix stats JSON output of connector counts -_- 2020-02-27 12:07:05 +01:00
Thulinma
93d28526f7 Merge branch 'development' into LTS_development
# Conflicts:
#	src/controller/controller.cpp
2020-02-26 16:09:22 +01:00
Thulinma
10e965327a Memory limit checking to help users create optimal configs 2020-02-26 16:08:39 +01:00
Thulinma
38a5522832 Fix controller segfault when source is very short 2020-02-03 16:53:26 +01:00
Thulinma
ead45b4fb8 Fixes to playlist support 2020-01-23 13:43:55 +01:00
Erik Zandvliet
907be3b1f4 Playlist support 2020-01-23 13:43:51 +01:00
Thulinma
aac698a1f1 Added fix for licensing/updating through non-SSL proxy server 2019-11-07 13:40:57 +01:00
Thulinma
7a751a8382 Stats fix, removed some dead code. 2019-11-06 15:01:50 +01:00
Thulinma
7bffdfe644 Added global configuration mechanism and defaultStream support 2019-10-31 11:19:54 +01:00
Thulinma
919e5eb41f Merge branch 'development' into LTS_development
# Conflicts:
#	CMakeLists.txt
#	src/controller/controller.cpp
#	src/controller/controller_api.cpp
2019-09-09 13:41:22 +02:00