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
Martin Pulec
df7d47d418
configure: fixed Qt6 in Windows
...
The generated Makefile is only umbrella for Debug and Release makefiles.
2022-03-09 16:09:35 +01:00
Martin Pulec
a8fba13593
Makefile.astat: build with c++ instead of g++
...
GCC is not always present (eg. in MSYS2 clang env).
2022-03-09 16:09:34 +01:00
Martin Pulec
bb63bed6a7
confiugre.ac: Qt - search also for qmake6
...
qmake6 is available in MSYS2 qt6.
2022-03-09 16:09:26 +01:00
Martin Piatka
4badf76d92
GUI: Fix direct OpenGL calls
2022-03-09 14:56:43 +01:00
Martin Pulec
5cc8c64e24
libx264: set slice-max-size to 1200
2022-03-04 16:28:59 +01:00
Martin Pulec
b144ced5e5
main: use set_audio_delay to git show
2022-03-04 16:28:58 +01:00
Martin Pulec
36bf6e6607
lavc configure_x264_x265: simplify a bit
2022-03-04 16:28:58 +01:00
Martin Pulec
e9fc1e0fda
AppImage: check also ULTRAGRID_USE_FIREJAIL for 0 or no
2022-03-04 16:28:58 +01:00
Martin Pulec
5b62e4e884
rtpenc_h264: allocate on stack
2022-03-04 16:28:58 +01:00
Martin Pulec
8bded29c1c
rtpenc_h264: hide API
2022-03-04 16:28:58 +01:00
Martin Pulec
ae17f406e7
audio/video_offset: document vars
2022-03-04 16:27:49 +01:00
Martin Pulec
eadaee0de1
audio capture/playback: do not pass NULL as cfg
...
This makes it more consistent with other modules and also it simplifies
the modules that do not need to check/handle NULLs by themselves.
2022-03-03 16:20:54 +01:00
Martin Pulec
60d7fd0faa
audio testcard: added crescendo
2022-03-03 16:20:54 +01:00
Martin Pulec
8a02fcfd60
audio testcard: refactor a bit
2022-03-03 16:20:53 +01:00
Martin Pulec
a486f7848b
audio volume report: use onle line for all channels
...
Output only onle line of volume for all channels.
This prevents flooding the output with plently of status lines when
multiple channels (like 16) are used.
2022-03-03 16:20:53 +01:00
Martin Pulec
83cdea5c34
audio deocder: store channel scales as a vector
...
To avoid error like just the fixed error in previous commit. Use also
bound checking vector::at() access member.
2022-03-03 16:20:50 +01:00
Martin Piatka
f029fa483d
lavc: x265: Enable constrained intra
...
This greatly decreases the time needed for decoder to display clear
image after dropped packets.
Open GOP is already implicitly disabled by intra-refresh, disabling it
explicitly just hides the warning.
2022-03-03 16:15:41 +01:00
Martin Piatka
6696de65da
lib_common: Simplify library map initialization
2022-03-02 15:56:24 +01:00
Martin Piatka
3cfb1935c3
lib_common: Fix module multiple initialization detection
2022-03-02 15:56:24 +01:00
Martin Piatka
0d2dad43e2
capture_filter.h: Remove function prototype
...
This function was removed a long time ago in
32f7932a25
2022-03-02 15:56:23 +01:00
Martin Pulec
43a8f49bbd
Fixed crash from commit 54befa49
...
Fixed incorrect number of channels allocated when there is channel
remapping, eg.:
uv -s testcard -r dummy --audio-channel-map 0:1
The problem occurs in code introduced by commit 54befa49 but the array
is also used elsewhere, namely read by decode_audio_frame().
2022-03-02 11:24:09 +01:00
Martin Pulec
91d5054677
configure, config_unix.h: removed some obsolete includes/checks
2022-03-02 11:24:02 +01:00