Commit graph

40 commits

Author SHA1 Message Date
Thulinma
7098f8430b Update input codec capabilities to be more consistent/accurate, and more easily automatically parsed 2022-10-06 16:23:29 +02: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
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
ad4c1abd0b Playlist support fixed 2021-12-24 15:09:36 +01:00
Thulinma
4080d141f8 Fix bug in Output::seek() when seeking to a timestamp that is between the last part of a key and the first part of the next key 2021-10-19 22:29:41 +02:00
Thulinma
7297336e46 Rewrite of Comms 2021-10-19 22:29:41 +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
Thulinma
2a91a7366b Updated default segment size to 1900 2019-09-09 16:02:24 +02:00
Thulinma
22ddae4670 Added always-on option to DTSC pull input 2019-08-10 12:30:51 +02:00
Thulinma
66890c4564 Robustified Socket::Connection, added debugging data for copies/assigns and Socket::Connetion::open() calls for proper socket re-use. 2019-06-30 22:36:29 +02:00
Thulinma
9e1539a2b9 Merge branch 'development' into LTS_development
# Conflicts:
#	src/controller/controller_statistics.cpp
#	src/input/input_buffer.cpp
#	src/input/input_dtsc.cpp
#	src/input/input_ebml.cpp
#	src/input/input_flv.cpp
#	src/input/input_mp3.cpp
#	src/output/output_httpts.cpp
#	src/output/output_progressive_mp3.cpp
#	src/output/output_progressive_mp4.cpp
2019-01-25 23:57:42 +01:00
Thulinma
7565704fdc Fixed 32-bit compile issues 2019-01-25 23:49:56 +01:00
Thulinma
7af419fdad Added "deletestreamsource" call that deletes a stream AND the corresponding source file. 2018-05-09 13:39:53 +02:00
Thulinma
9ce7c29813 Changed playlist input timing to boottime-based instead of wallclock-based, split up realtime and regular main loops functions
# Conflicts:
#	src/input/input.cpp
2018-05-09 12:21:03 +02:00
Thulinma
f934d15a78 Removed automatic wildcard addition for DTSC input URLs 2018-05-09 09:41:26 +02:00
Thulinma
87fb2fc5b9 Improved input descriptions 2018-02-13 13:05:35 +01:00
Thulinma
017c9dbb65 Improved input descriptions 2018-02-13 12:59:09 +01:00
Thulinma
6b1db9d0ec Merge branch 'development' into LTS_development
# Conflicts:
#	src/input/input.cpp
2017-07-26 17:01:52 +02:00
Thulinma
3446d022e8 Added header read speed timers, simplified header logic for VoD. 2017-07-26 17:00:36 +02:00
Thulinma
d42bf9777e Merge branch 'development' into LTS_development
# Conflicts:
#	CMakeLists.txt
#	src/input/input_buffer.cpp
2017-07-22 18:55:12 +02:00
Thulinma
45e4cddec9 Updated Input class with preRun() and checkArguments() instead of single setup() function 2017-07-22 18:53:05 +02:00
Thulinma
72a6816ec1 Added DTSC stdin input 2017-07-22 18:50:16 +02:00
Thulinma
dadb1ebde8 Merge branch 'development' into LTS_development
# Conflicts:
#	src/output/output.cpp
#	src/output/output_http_internal.cpp
2017-01-10 12:36:53 +01:00
Thulinma
8f38872ffc Fixed DTSC input bug with ping commands 2017-01-10 12:33:24 +01:00
Thulinma
3ee83644f3 Added options to DTSC pull for controlling the buffer config. Made 8X target duration the default buffer size. Inputs now wait for INPUT_TIMEOUT *and* two biggestFragment durations, added a few helper functions to DTSC::Meta. Buffer now automatically sets segment size to min(configed_size, biggest_fragment/2) to prevent sudden reductions of fragment sizes by more than 50% 2016-10-11 15:04:52 +02:00
Thulinma
22cd84fcd5 Added options to DTSC pull for controlling the buffer config. Made 8X target duration the default buffer size. Inputs now wait for INPUT_TIMEOUT *and* two biggestFragment durations, added a few helper functions to DTSC::Meta. Buffer now automatically sets segment size to min(configed_size, biggest_fragment/2) to prevent sudden reductions of fragment sizes by more than 50% 2016-10-11 15:02:29 +02:00
Thulinma
a93fddf4e2 Added DTSC keep alive for idle connections 2016-09-02 17:50:52 +02:00
Thulinma
d50404a00c Fixed 100% CPU issue in DTSC pull input 2016-09-02 17:48:56 +02:00
Thulinma
5ffe12aba4 Tweaked several debug messages, backported a few Pro edition edits that were missed earlier 2016-07-28 20:45:31 +02:00
Thulinma
4c9c6fa7ba Backported various little edits from Pro edition. 2016-06-02 14:07:21 +02:00
Erik Zandvliet
d370ef4eac Working multi-input 2015-04-02 09:56:47 +02:00
Thulinma
a555c5b43c Fixed several --json misconfigurations in inputs. 2015-02-06 00:42:43 +01:00
Thulinma
e70a5c106d Decrease debug message verbosity levels. 2015-01-15 10:20:49 +01:00
Thulinma
8542281ac2 JSON-based input selection. 2014-10-02 16:12:19 +02:00
Thulinma
d7ad0b3207 Properly fixed earlier MistIn fixes 2014-04-30 15:40:48 +02:00
Thulinma
6cbf81bdb9 Fixed stdin/stdout support messages for MistIn applications. 2014-04-30 12:05:50 +02:00
Thulinma
cd2fe225c5 Shared memory rewrite 2014-04-04 19:50:40 +02:00