Martin Pulec
17fa2dba42
timespec_get compat
...
macOS 10.11 which we still use for backward-compatible mac builds
doesn't have timespec_get function.
2022-03-22 14:40:56 +01:00
Martin Pulec
273a1082d2
tv: fixed wrong abbrev (ms) for microseconds
2022-03-22 14:40:56 +01:00
Martin Pulec
7bace13948
DeckLink disp.: timecode support for Win
2022-03-22 14:40:56 +01:00
Martin Pulec
e7c07129b9
DeckLink disp.: reindent display_decklink_getf
...
Just remove a block by checking the init condition first (+ in opposite
case return nullptr instead of empty envelope).
2022-03-22 14:40:46 +01:00
Martin Pulec
f4053fcec5
DeckLink disp.: small cleanup
...
+ use high_resolution_clock instead of timeval for printing 5-sec FPS stats
2022-03-22 14:40:46 +01:00
Martin Piatka
6e8c3e31d4
audio/filter: Add some documentation
2022-03-21 15:30:31 +01:00
Martin Piatka
c506112d89
audio/filter: Adding filters via control port
2022-03-21 15:19:42 +01:00
Martin Piatka
79437689ff
audio/filter: Add support for control port
2022-03-21 14:25:41 +01:00
Martin Piatka
a05362e760
audio: Use module_raii wrapper
2022-03-21 13:02:52 +01:00
Martin Piatka
e485853359
module: Add small RAII wrapper
2022-03-21 13:01:48 +01:00
Martin Piatka
7b68e5b3f5
audio/filter/delay: Num ber parsing compat
2022-03-18 15:18:37 +01:00
Martin Piatka
3cf5123c3f
audio/filter: audio delay filter
2022-03-18 14:15:31 +01:00
Martin Piatka
e81af5423f
Add audio capture filter infrastructure
2022-03-18 14:15:30 +01:00
Martin Piatka
2dee9ff16d
ring_buffer: assert size > 0
...
Otherwise it crashes elsewhere on division by 0.
2022-03-18 14:15:30 +01:00
Martin Piatka
c580a3b3a1
ring_buffer: Replace malloc/free with C++ memory management
...
The ring_buffer struct contains std::atomic which is a c++ object and
has a constructor, which is not called if the struct is malloc'ed.
This probably wasn't really an issue, since the constructor for those
doesn't do anything interesting anyway.
2022-03-18 14:13:14 +01:00
Martin Piatka
b065dd8117
ring_buffer: add fill() function
2022-03-18 14:11:42 +01:00
Martin Pulec
b1bc866d7f
mist_test.cpp: ignore false positive clang warning
2022-03-18 08:52:32 +01:00
Martin Pulec
0de3402090
Do not load modules for run_tests
...
Modules are linked statically even for the modular build to test
executable.
See 1386ffe5
2022-03-18 08:52:32 +01:00
Martin Pulec
90686125c9
gettimeofday win32 compat: use timespec_get
2022-03-18 08:52:32 +01:00
Martin Pulec
4f84c59d59
tv_add_usec: use lldiv
2022-03-18 08:52:32 +01:00
Martin Pulec
d1f3206077
RTP: work also with time in NS
2022-03-18 08:52:32 +01:00
Martin Pulec
4b315f93de
rtp: ts was needlessly dyn. allocated
2022-03-18 08:52:31 +01:00
Martin Pulec
b5f1fd3735
Replaced chrono clocks with integer nanoseconds
...
Ref 84861d6
It was perhaps rather a workaround for low-resolution Windows timeval
compat. On the other hand it enforced C++ API and makes things a bit
complicated. It had also broken some invariants, namely that the timeval
values had been wallclock time.
2022-03-18 08:52:29 +01:00
Martin Pulec
571813689f
audio under/overflows: be more verbose
...
Print actual numbers of underflow/underflow samples for better
diagnostics.
2022-03-14 11:33:34 +01:00
Martin Pulec
8e77dab6ff
Linux firejail: add some whitelists
...
Added explicit whitelist for --playback and -t testcard:filename
patterns.
2022-03-11 15:43:09 +01:00
Martin Pulec
8b793e9772
rtpenc_h264: use RTPENC_STATE_DECLARE
2022-03-11 10:48:49 +01:00
Martin Pulec
26ad719ac3
configure: print warnings also in the end
...
This prevents some to be missed by user.
- removed screen cap warning for a very old mac
- for conference print it to summary only if the module was requested
explicitly
2022-03-11 10:48:49 +01:00
Martin Pulec
89a4050c76
lib_common: move dlopen etc compat to separate src
...
It is a bit needless to compile the dlerror() commat in a huge number of
sources including that file. Moreover, the compat functions are not
direcly linked to modules' infrastructure in UG, which was piggy-backed
to.
2022-03-11 10:48:49 +01:00
Martin Pulec
8036a832eb
AJA: ifdef diagnose GCC pragmas
2022-03-11 10:48:48 +01:00
Martin Pulec
b52a62965b
GitHub CI C/C++ mac NDI: workaround not needed
...
Remove a workaround that is no longer needed with current NDI.
2022-03-11 10:48:48 +01:00
Martin Pulec
a4bf653605
CoreAudio cap.: CHECK_OK - print err code
...
+ really print warning if error_action is NOOP
2022-03-11 10:48:48 +01:00
Martin Pulec
c123ac275b
CoreAudio cap.: do not use goto to handle errors
...
break from "do {} while(0);" instead
2022-03-11 10:48:48 +01:00
Martin Pulec
e53f5979fc
CoreAudio cap.: use CHECK_OK macro
2022-03-11 10:48:47 +01:00
Martin Pulec
331856268e
CoreAudio cap.: fixed double [CoreAudio]
2022-03-11 10:48:47 +01:00
Martin Pulec
31c750e4a1
audio volume report: use RMS/peak format
...
Seems to be more readable than the previous format.
2022-03-11 10:48:47 +01:00
Martin Pulec
60f0e1cb03
CoreAudio play: replaced fprintfs with logger
2022-03-11 10:48:47 +01:00
Martin Pulec
bf3a9d619e
CoreAudio play: replace an assert with log
2022-03-11 10:48:46 +01:00
Martin Pulec
57fcc088cb
transmit: moved packet size computation to separate func
2022-03-11 10:48:42 +01:00
Martin Pulec
6d5cbde4fa
transmit video multipliers: simplified pattern
...
Simply send multiplied packets sequentially, like for mult:3:
0 0 0 1 1 1 2 2 2 ....
This simplifies the code while the old one was already defunct (at least
the access to packet sizes' list was wrong since recent rewrite).
2022-03-11 10:19:50 +01:00
Martin Pulec
eb9b00b6e9
rtpenc_h264 rewritten
...
- store the buffer+size with _init
- return also pointer to data and EOF flag from _parse
- use longs instead of unsigned for buffer lengths
2022-03-11 10:19:50 +01:00
Martin Pulec
df16e3f17a
transmit: compute pixel format alignment only once
2022-03-11 10:19:50 +01:00
Martin Pulec
e72de3967b
video_codec: set block size to 1 for compressed
...
This slightly simplifies things (like division of the size to packets).
2022-03-11 10:19:50 +01:00
Martin Pulec
806d456db5
transmit: moved gcd/lcm to utils/math.h
2022-03-11 10:19:49 +01:00
Martin Pulec
3b1eff5cc3
transmit: rewrite get_data_len
...
- renamed to get_video_pkt_len()
- use alignment var that is common denominator for both pixel formats
and FEC symbols
2022-03-11 10:19:49 +01:00
Martin Pulec
600b5c92fa
transmit: use array for mult_pos
...
+ declare some vars when initialized (audio_tx_send())
2022-03-11 10:19:19 +01:00
Martin Pulec
a778460fba
Compute packet sizes only once
2022-03-11 10:02:02 +01:00
Martin Pulec
f5a837693f
dlerror Win compat: use FormatMessageA explicitly
...
With current flags, -DUNICODE is defined, thus compiling preview.cpp
using wide function (FormatMessageW) implicitly, thus use FormatMessageA
explicitly.
2022-03-09 16:29:17 +01:00
Martin Pulec
8d05cde1a5
GitHub CI Win: install windeployqt for Qt6
2022-03-09 16:29:07 +01:00
Martin Pulec
8b0af756bb
GitHub CI C/C++ Win: use Qt 6
2022-03-09 16:09:37 +01:00
Martin Pulec
1733346ce4
Makefile: QT_CFLAGS->QT_CXXFLAGS
...
Qt toggles some C warnings not known to C++.
2022-03-09 16:09:36 +01:00