Commit Graph

5131 Commits

Author SHA1 Message Date
Martin Pulec
df7958487a Server mode: support audio 2021-06-29 14:06:47 +02:00
Martin Pulec
cb6f490dc0 Audio testcard: add assert check 2021-06-29 14:02:08 +02:00
Martin Pulec
b023e8e608 Added server/client mode
Allows NAT traversal when server (sender) is outside the NAT.
2021-06-29 08:59:29 +02:00
Martin Pulec
009abc6d39 Video_rxtx rtp: small refactor 2021-06-29 08:59:28 +02:00
Martin Pulec
781222fcfe RTP UDP: record src addr also with with multithreaded recv 2021-06-29 08:59:28 +02:00
Martin Pulec
d47c708e9e Configure: detect also system zfec
Detect and use zfec provided by python-zfec3 in Ubuntu.

+ added option --with-zfec for custom path
2021-06-29 08:59:25 +02:00
Martin Pulec
ee801e6c38 Out-of-tree build fixes
- fixed when the build dir is not even in the tree (git)
- the path to QT worked only if $(srcdir) is relative (configure was
invoked with relative path)
2021-06-28 14:42:27 +02:00
Martin Pulec
8eb8ecfcac Fixed 711eb170 2021-06-28 14:42:11 +02:00
Martin Pulec
6ac6715da5 Small cross-compile fixes
- $GENICAM_GENTL64_PATH may be defined in Linux but the path inside the
dir is then invalid when cross-compiling for Windows
- rang.hpp included transitively from video_frame_pool.cpp needs _WIN32_WINNT
at least to _WIN32_WINNT_VISTA prior including other headers - it is
defined in config_win32.h
2021-06-24 16:42:58 +02:00
Martin Pulec
0265ede451 configure.ac: prevent using AC_CHECK_FILE when cross_compiling 2021-06-24 16:42:58 +02:00
Martin Pulec
fc56d9a1c4 GitHub CI: remove possible previous instalations of cached items
Due to inexact matching, cache might not have been hit but item was
extracted from partially matching key.
2021-06-24 16:42:58 +02:00
Martin Pulec
a4ada7cca9 GitHub CI: check ETags for cache keys 2021-06-24 16:42:57 +02:00
Martin Pulec
b65a851d68 GitHub CI: replace cache key counters
GitHub actually uses a bit complicated pattern matching for the keys:
https://docs.github.com/en/actions/guides/caching-dependencies-to-speed-up-workflows#using-contexts-to-create-cache-keys

Namely if exact hit is not found, the key is used as a prefix which
could cause using 'ffmpeg-cache-2' for 'ffmpeg-cache'. In addition
steps.<id>.outputs.cache-hit is set to false if the match is not exact
but the cache is actually restored from inexact match.

+ use ${{ runner.os }} as part of the cache key (currently not needed
but we may use the same key for different platform caches)
2021-06-24 16:42:57 +02:00
Martin Pulec
5e7cb16500 GitHub CI: use actions/cache@v2
cache@v2 uses zstd which should improve space efficiency and speed.
2021-06-24 16:42:57 +02:00
Martin Pulec
bba039e0a5 Screen X11: check received buffer with assert
The returned value may be also NULL
2021-06-21 11:35:22 +02:00
Martin Pulec
711eb170ad RTP video decoder: check bounds also for compressed/FEC
Check bounds also for compressed/FEC streams to avoid crashes and/or
potential attacks. This can occur for instance when VR has some
unexpected data outside the buffer.
2021-06-21 11:05:31 +02:00
Martin Pulec
3dd7a82a69 DeckLink disp.: use word "recognized" for pix fmts in help
There was "Supported pixel formats" which was a bit misleading since it
indicates that the pixel format is supported by UltraGrid but it doesn't
need to be supported by the card.
2021-06-17 17:04:45 +02:00
Martin Pulec
f7b5160e44 Lavc: use sets to avoid duplicities
(and to do the actual sort in get_available_pix_fmts())
2021-06-16 12:28:47 +02:00
Martin Pulec
b23736770b Added image_pattern_raw
Added raw image data generator that user can use to provide raw image
data that won't be color-converted. This could be useful eg. for testing
out-of-range YUV values.
2021-06-16 12:27:14 +02:00
Martin Pulec
36c8b53ad2 Added also y216_to_yuv422p16le
yuv422p16le is actually a preferred format over yuv422p10le by FFmpeg so
this conversion may be useful in future.
2021-06-14 16:57:14 +02:00
Martin Pulec
703208432c Added y216_to_yuv422p10le
yuv422p10le is eligible intermediate format for Y216 to libx264/libx265.
2021-06-14 16:57:14 +02:00
Martin Pulec
34c8055dc8 Small include changes
To allow some files compile outside UltraGrid (without config.h) for
standalone convert.
2021-06-14 16:57:14 +02:00
Martin Pulec
98a301c0b1 get_decoder_from_uv_to_uv: fixed assertion 2021-06-14 16:56:37 +02:00
Martin Pulec
2f2bc80a61 Fixed y216_to_yuv444p16le 2021-06-14 14:46:33 +02:00
Martin Piatka
bfd9aa3855 Github CI: Update ffmpeg intra-refresh patch 2021-06-14 13:19:32 +02:00
Martin Piatka
e00081b8d5 Revert "GitHub CI: enable also DELTACAST explicitly"
This reverts commit 9df3957be1.
2021-06-14 13:19:26 +02:00
Martin Pulec
0a1f29533d NDI cap.: better stride handling
- do not assert it equal line width - may be either different or 0 (default)
- respect the stride where possible (not sure for P216, which is planar)
2021-06-08 16:04:44 +02:00
Martin Pulec
972d0432c6 GitHub CI [Win]: AJA build fix
Current MSVS requires explicit target "Rebuild" for some reason.
Explicit target "Build" doesn't work for some reason (perhaps some
error in project file?).
2021-06-08 16:04:43 +02:00
Martin Pulec
725daf7cb9 AppImage Firejail: use dbus support only if available
+ explicit check for firejail binary
+ use --keep-var-tmp only if available
2021-06-08 16:04:36 +02:00
Martin Piatka
eab94c12c0 Remove some unused includes
Removes some unused includes reported by include-what-you-use
2021-06-08 15:22:25 +02:00
Martin Piatka
c0131ada10 configure.ac: xrgl: Add missing space to libs 2021-06-08 15:22:25 +02:00
Martin Pulec
10e194eaef AppImage Firejail: pass LD_LIBRARY_PATH 2021-06-08 08:40:14 +02:00
Martin Pulec
44c2559780 Firejail: PCP requires --protocol=netlink 2021-06-07 09:49:42 +02:00
Martin Pulec
e6a59fe0ed NDI disp.: fixed parsin of name opt 2021-06-07 08:23:36 +02:00
Martin Pulec
cbb6a20ce1 AppImage: added --fullhelp 2021-06-03 13:23:16 +02:00
Martin Pulec
930ccd1ebc AppImage: env var to run with Firejail 2021-06-03 13:22:41 +02:00
Martin Pulec
b850ff0eb2 AppImage: get rid of uv-wrapper.sh
AppRun already adds <dir>/usr/lib to LD_LIBRARY_PATH.
2021-06-02 09:31:46 +02:00
Martin Pulec
4f34cd1a61 GitHub CI [Win]: for some reason cmake config must be first
For some reason cmake config must be given prior to --parallel with MSVS
16.10 (didn't seem to be an issue with previous version).
2021-05-31 14:05:06 +02:00
Martin Pulec
1c8f968934 AppImage: option to show manual pages 2021-05-31 14:05:01 +02:00
Martin Pulec
9a7255f52f create-appimage.sh: do not download appimagetool/appimageupdatetool if present
Do not download appimagetool/appimageupdatetool if present in system.
2021-05-31 10:52:33 +02:00
Martin Pulec
f598ab59da create-appimage.sh: fixed out-of-tree build 2021-05-31 10:52:33 +02:00
Martin Pulec
376e3e4bcf gettimeofday_replacement: improved computitation
* simplified + keep computation in long long
* overflow check with DEBUG
2021-05-28 08:52:00 +02:00
Martin Pulec
f8fd2f872e Logger: option to enable/disable timestamps 2021-05-26 16:15:39 +02:00
Martin Pulec
f06204262b Use environment variable ULTRAGRID_VERBOSE 2021-05-26 14:48:53 +02:00
Martin Pulec
1d47a5f00d Initialize audio network only if used 2021-05-26 11:19:18 +02:00
Martin Pulec
613c62bf54 Lavc: fixed get_decoder_from_uv_to_uv
Improved UG decoder selection in get_decoder_from_uv_to_uv - now is
selected nearest better codec.

+ written a test for the above
2021-05-25 10:11:30 +02:00
Martin Pulec
127ff31184 configure.ac: do not set -Werror in debug mode
This is quite restrictive and it actually disallows debug build if there
is any warning. Also it is not necessarily related to that option.
2021-05-25 08:22:40 +02:00
Martin Pulec
3c81b3b04c SDL2: dropped frame warn with logger
Allows aggregation of messages and thus not congesting the output.
2021-05-25 08:22:34 +02:00
Martin Pulec
ec854785ce Video codec: added subsampling 2021-05-21 19:40:18 +02:00
Martin Pulec
5fdaef03a3 GitHub CI [Linux ARM]: use code checked out by GitHub
Use code checked out by GitHub Action - previously there was a clone
but we want rather the actual code, which doesn't need to be in master
branch of the main repository.

This also requires a small refactor (chroot in home rather than in
$GITHUB_WORKSPACE)
2021-05-21 19:40:15 +02:00