Commit Graph

9910 Commits

Author SHA1 Message Date
Martin Pulec
8b94de582c lavc: replace deprecated items
Some AVCodec properties like pix_fmts or sample_fmts are marked as
deprecated and should be replaced by avcodec_get_supported_config()
in current FFmpeg.

Created compat functions to get rid of deprecate warnings running with
both old and new FFmpeg.
2024-11-12 14:59:19 +01:00
Martin Pulec
875c585dc3 vcap/rtsp: unlink the (fallback) file 2024-10-31 16:05:43 +01:00
Martin Pulec
8b33b1e058 vcap/rtsp: create fallback file in $TMPDIR
If running with Firejail, neither /tmp (used by tmpfile()) nor CWD may
be writable so try to create file in $TMPDIR (if defined, otherwise
there a default).

+ modified get_temp_file() opened file mode to be readable
2024-10-31 10:58:47 +01:00
Martin Pulec
351b056f91 vcap/rtsp: turn some messages to debug
perhaps just relicts

actualiy, it used to be "debug" prior to 476aff20
2024-10-31 10:58:47 +01:00
Martin Pulec
328dd443fc get_temp_file: allow NULL for output filename 2024-10-31 10:58:47 +01:00
Martin Pulec
85447d7438 pbuf SSRC printout more terse
In verbose mode, the SSRC is still printed but it makes - toghether
with timestamps that are default in verbose - the line quite long,
so make it a bit shorter.
2024-10-31 08:50:02 +01:00
Martin Pulec
2eef4963ef CI Linux: current live555 build fix
Version 2024-10-24 expects std::atomic_flag::test(), which is a C++20
feature but can be omitted if NO_STD_LIB is defined. (passing -std=c++2a
won't help because U20.04 libstdc++ doesn't contain that method).
2024-10-30 13:25:20 +01:00
Martin Pulec
2f9730b66f configure.ac: fix EOL garbage
Added accidentaly by the commit 73572e77 (2024-03-05). Effective only
if --with-cuda option used but without any implications - just `/FOUN:
not found` printed, but processed normally.
2024-10-30 11:47:39 +01:00
Martin Pulec
41daf835a1 tx_init: allow NULL for encryption
Refactoring done in 1ab725d57 (2024-08-05) changed the behavior not to
expect NULL pointer, because common_opts.encryption is a char array now.
But tx_init calls also audio/playback/mixer, which crashes since then so
be less rigid in this case.
2024-10-30 11:47:35 +01:00
Martin Piatka
4aac9745e5 GUI: Recv report: Fix for new format
This would also be good to report over contol socket instead
2024-10-29 14:53:23 +01:00
Martin Piatka
f224f89344 GUI: Recv loss: Fix for new log format
The log line reporting recv loss changed format a while ago breaking
this. As a more proper fix it would be nice to eventually report this over
control port instead.
2024-10-29 14:48:20 +01:00
Martin Piatka
db1712de3d GUI: Template SSRC_container Key type 2024-10-29 14:46:58 +01:00
Martin Pulec
54e57d7dee DELTACAST: allow compilation with v6.19
v6.19 and v6.20 is undistinguishable by preprocessor but the later
changes the API. So added a preprocessor directive to allow compilation
with v6.19 passed by user. It could have been checked by autoconf but
it is perhaps not worth the effort.
2024-10-25 10:04:09 +02:00
Martin Pulec
b68569f4df CI mac: add /Library/Framework to rpath
needed for DELTACAST, otherwise manpage generation fails with:
```
 dyld[40232]: Library not loaded: @rpath/VideoMasterHD.framework/Versions/A/VideoMasterHD
  Referenced from: <3D8A8CBA-1094-3538-9770-331DE9A2D6D2> /Users/runner/work/UltraGrid/UltraGrid/bin/uv
  Reason: tried: '/usr/local/lib/VideoMasterHD.framework/Versions/A/VideoMasterHD' (no such file), '/System/Volumes/Preboot/Cryptexes/OS/usr/local/lib/VideoMasterHD.framework/Versions/A/VideoMasterHD' (no such file), '/usr/local/lib/VideoMasterHD.framework/Versions/A/VideoMasterHD' (no such file), '/System/Volumes/Preboot/Cryptexes/OS/usr/local/lib/VideoMasterHD.framework/Versions/A/VideoMasterHD' (no such file)
Could not obtain data from UG/reflector output!
```
2024-10-25 08:54:43 +02:00
Martin Pulec
bd2c1b7599 CI macos: fail if DELTA not found
Fail if DELTACAST SDK was not found (actually remove check for its
presence) if $SDK_URL is set.
2024-10-24 16:16:24 +02:00
Martin Pulec
4977da090b CI macos: re-enable DELTACAST
The file name has changed and --enable-deltacast was used just if the
download succeeded (which didn't).

Fixes the commit 98d4969b (2024-05-24) that disabled deltacast, because
the archive was not downloaded due to wrong name.
2024-10-24 16:14:34 +02:00
Martin Pulec
4d73989ba6 Revert "CI Linux FFmpeg: patch VP9 FFmpeg patch"
This reverts commit c8b1e6859d.

the upstream SVT-VP9 patch has been updated
2024-10-21 11:02:08 +02:00
Martin Pulec
72ac724fb1 correct color names
The actual value (5,2,1)/5 didn't match peach fuzz (255,190,152)/255
but the rather closest color is Tomato (255,99,71)/255.

The T_DARKER_ORANGE is poorly defined but its value (3,1,0)/5 matches
approximately the X11 color Saddle Brown (139,69,19)/255.
2024-10-21 10:55:27 +02:00
Martin Piatka
98975b398a gl_utils: Rename Framebuffer to avoid symbol collision
Avoid collision with Drm Framebuffer
2024-10-17 14:15:53 +02:00
Martin Piatka
83cf5b2b64 vdisp/drm: Rename Framebuffer to avoid symbol collision
Avoid symbol collision with GL Framebuffer
2024-10-17 14:15:52 +02:00
Martin Piatka
a43128d867 gl_utils: Remove unused PBO 2024-10-17 14:15:52 +02:00
Martin Pulec
5306ea4134 pbuf stats: print media type instead of SSRC
refers to GH-417
2024-10-16 16:19:09 +02:00
Martin Pulec
30bceebdba pbuf: rename loss_pct to recv_pct
the number tells actually the percent of received pckts, not lost
2024-10-16 11:06:07 +02:00
Martin Pulec
d2bac1f926 pbuf, pdb: improved including
include-what-you-use
2024-10-16 10:51:24 +02:00
Martin Pulec
bf39e121af CI FFmpeg Linux: updated libde265 patch
remove FFCodec.init_static_data - dropped from upstream but not used by
libde265 plugin anyways
2024-10-16 09:45:13 +02:00
Martin Pulec
550cfb5d8a CI Linux FFmpeg: use GH mirror
Since the CI is run on GH, this will lower risk of fails due to
eg. external outage. Also it is possible that the clone will be slightly
faster.
2024-10-16 09:31:11 +02:00
Martin Pulec
4c8f4b32f2 CI Linux FFmpeg: compat vaapi patch update 2024-10-16 09:11:50 +02:00
Martin Pulec
3d0cf25ab9 jpeg_reader: check comp_count validity
+ piggyback switch error msg from verbose (it will fail so the error
just in verbose doesn't make much sense)
2024-10-15 16:20:06 +02:00
Martin Pulec
36f427485f CI Linux: add deb-src in U24.04
ubuntu-latest is now U24.04, which uses .source files in deb822 format
instead the original .list in one-line-style format. ubuntu-latest is
used by Coverity runner.
2024-10-15 16:19:54 +02:00
Martin Pulec
91819d289d jpeg_reader: read_adobe_app14 fix
the terminating NUL byte was not read - the tag is 'Adobe\0'

+ mark length as const as it won't change later
2024-10-15 16:13:44 +02:00
Martin Pulec
47b1b8c871 jpeg_reader: bound-check all marker read fns 2024-10-15 16:13:44 +02:00
Martin Pulec
1c61070f91 CI Linux: use libcurl4-openssl-dev instead of NSS
Needed for coverity-scan newly builds on ubuntu-latest (currently
24.04). Ubuntu 24.04 has no longer libcurl4-nss-dev.
2024-10-15 16:13:44 +02:00
Martin Pulec
e102b79600 jpeg_reader: replaced read_marker
replaced old read_marker with bound-checking (former) read_marker_new
2024-10-15 16:13:44 +02:00
Martin Pulec
9531c04a23 jpeg_reader: sanitize input
Sanitize incorrect marker lengths for SOS and SOF0 as reported by Coverity
CID 469656. Utilized image_end sentinel as in GPUJPEG.
2024-10-15 16:13:37 +02:00
Martin Pulec
50b7207b5d add README.hdml to legacy macOS dmg
Redirects to a wiki page informing how to allow unsigned UG build
(alternative builds are not signed).
2024-10-15 09:37:45 +02:00
Martin Pulec
2b62857dea vdisp/ndi: set stride explicitly
The documentation in header for
NDIlib_video_frame_v2_t.line_stride_in_bytes says that if set to 0,
default value (size of pixel * bpp) will be used.

However, this doesn't seem to work for P216 and PA16 in Windows. It does
in Linux, also 8-bit formats do not require that. However in Windows,
it causes "No data received.".

see also GH-148
2024-10-14 16:27:05 +02:00
Martin Pulec
3e52ae4eab vdisp/ndi: safe syncs 2024-10-14 15:40:45 +02:00
Martin Pulec
b840e0a1a8 ndi_common: add mac fallback path to NDI Tools
Compared to MSW, NDI doesn't set neither the NDI_RUNTIME_DIR_V6
environment variable nor doesn't have "global" runtimne installation path.

The dylib is, however, included dirctly inside individual applications'
bundles. Most of the NDI Tools apps use libndi_advanced.dylib but some
(including the used NDI Launcher) uses libndi.dylib.
2024-10-14 14:49:09 +02:00
Martin Pulec
d1e510f3d7 ndi_common [Win]: add also Tools\Runtime fallback
In the [wiki], for macOS and Windows, NDI Tools installation is advised,
which does bring its own NDI Runtime, but in a different path. So adding
it for Windows.

[wiki]: https://github.com/CESNET/UltraGrid/wiki/NDI
2024-10-14 14:49:09 +02:00
Martin Pulec
b3c89e34d2 ndi_common: unify loader for Win and mac/Linux
Always try the list of libraries. Also replace FALLBACK_NDI_PATH with
_PATHS which now can contain comma-delimited list of libraries.
2024-10-14 14:49:04 +02:00
Martin Pulec
055e751101 vcap/ndi: handle source disconnect 2024-10-14 10:33:19 +02:00
Martin Pulec
68239316c0 vcap/ndi: partial name matching updated
- allow also matching for machine name (case-insensitive) in addition
to source name
- document it in help
- various improvemetnts: includes, the partial matching is now done in
a separate loop and without c++ regexes (readabilitz)
2024-10-14 10:33:16 +02:00
Martin Pulec
d9fef1ac32 vcap/ndi: ndi_disp_convert_Y416_to_PA16 fix 2024-10-11 16:31:38 +02:00
Martin Pulec
f12577f0b9 fix vc_copylineRG48toY216
incorrectly braced

Actually not obvious until 2f450060 (2024-09-24) because the chroma x1.5
was used but clamped, which has somehow hidden that.
2024-10-11 16:14:00 +02:00
Martin Pulec
fd08c583eb improved including in few files 2024-10-11 16:13:39 +02:00
Martin Pulec
c96a167d08 configure.ac: check the header in MSW as well 2024-10-11 14:36:39 +02:00
Martin Pulec
2b022dd1d8 ndi_common.h: lib loading debug messages
print NDI lib loaded path
2024-10-11 14:06:55 +02:00
Martin Pulec
5ce4e45d12 ndi_common.h: simplify - use static cstr length 2024-10-11 14:06:54 +02:00
Martin Pulec
9c18c7e8e7 vdisp/ndi: refactor init
Use parse_fmt and do not use cumbersome pseudo-C++ exceptions imitation.
2024-10-11 14:05:28 +02:00
Martin Pulec
b9c012737f jpeg_reader: add additional SPIFF CS
Add all color space parameter specifications from T.81 - map known ones,
add commented-out case for the rest.
2024-10-09 15:08:52 +02:00