Commit Graph

8804 Commits

Author SHA1 Message Date
Martin Pulec
5782dfd3cf CI ARM: enforce Pipewire + Vulkan (64b only) 2023-12-04 13:23:59 +01:00
Martin Pulec
9575c24b79 lavc: include config.h unconditionally
needed for PACKAGE_BUGREPORT
2023-12-04 13:06:16 +01:00
Martin Pulec
574a33da0a lavc: enable header_inserter for h264_amf
AMD RX 7600 needs this even though header_spacing is set to 1. RX 580
didn't need this.
2023-12-04 12:43:25 +01:00
Martin Pulec
acf3320143 lavc header_inserter: fixed inverted condition 2023-12-04 12:34:01 +01:00
Martin Pulec
a6088cc26c vidcap Syphon: improved includes 2023-12-04 12:34:01 +01:00
Martin Pulec
bc0c55a4a9 configure Syphon: remove check for x86_64
Syphon can build also for arm64

This reverts commit 70d3402ec1
(2021-02-03).
2023-12-04 12:33:49 +01:00
Martin Pulec
07e452c778 CI+make: use system location for Syphon 2023-12-04 10:50:56 +01:00
Martin Pulec
4b981ddb50 swmix: Coverity fixes
- suppressed CID 424203 - move old audio data free outside the lock
(to indicate that network_audio_buffer is not needed to be guarded by
the lock)

- suppressed CID 424228 - assign video frame data from network buffer
in the locked section - similarly as for the above, it is actually not
guarded by the lock but this is just done to suppress the warning (and
is also shorter to assign on single line)
2023-12-01 16:02:52 +01:00
Martin Pulec
248a8e0e9a swmix: fixed including 2023-12-01 16:02:49 +01:00
Martin Pulec
f9290460a2 fixed CID 428882 2023-12-01 10:18:47 +01:00
Martin Pulec
3d0fb3e5fd simple_linked_list: replace NULL with nullptr
cstddef is not included, anyways
2023-11-30 16:35:15 +01:00
Martin Pulec
6183399199 fixed CID 424188, 42421{0,1,2,6}
COPY_INSTEAD_OF_MOVE
2023-11-30 16:05:54 +01:00
Martin Pulec
d093dbb0a9 AppRun: resolve tilde expansion (just "~/") 2023-11-30 11:26:22 +01:00
Martin Pulec
34796a0c43 vidcap file: fixed unguarded should_exit
Just use `while(true)`, should_exit is checked again few lines below
with the lock held.

fixes CID 424215
2023-11-30 10:49:49 +01:00
Martin Pulec
4b9d203510 common_preinit: move init struct
fixes CID 424214
2023-11-30 10:45:25 +01:00
Martin Pulec
2e430b4f4a gpujpeg enc: optimized includes/using 2023-11-30 10:45:21 +01:00
Martin Pulec
60520d62fd gpujpeg enc: fixed some Coverity complains
move objects instead of copy (COPY_INSTEAD_OF_MOVE)

fixed CID 42421{0,3}
2023-11-30 10:34:24 +01:00
Martin Pulec
297e77f7e4 state_video_compress_gpujpeg::push: reindent
use early return to simplify
2023-11-30 10:24:52 +01:00
Martin Pulec
88e483500d modiule dump_tree: lock currently dumped node
fixes CID 424208
2023-11-30 10:24:13 +01:00
Martin Pulec
9c30a6d658 file: sort headers properly 2023-11-30 10:07:00 +01:00
Martin Pulec
2a674d5817 module: wrap mutex [un]lock
Wrap pthread_mutex_[un]lock using debug messages (allows catch some
syncrhonization problems).
2023-11-30 09:58:17 +01:00
Martin Pulec
8b61234e9c simple_linked_list_remove: return bool
+ modernize
2023-11-30 09:38:12 +01:00
Martin Pulec
dd97abd111 audio/audio.cpp: optimized includes and using 2023-11-29 15:35:37 +01:00
Martin Pulec
869c436588 audio codec fmt: accept shortcuts
accept prefix syntax for bitrate and sample_rate
2023-11-29 15:27:33 +01:00
Martin Pulec
c66d4f3194 unit_evaluate_dbl: renamed end_ptr var
Since now we receive endptr as a parameter, it is somehow misleading to
have both endptr and end_ptr vars. Use endptr_tmp instead.
2023-11-29 15:27:32 +01:00
Martin Pulec
5c61b9d4d8 parse_audio_codec_params: check bitrate suffix
do not accept something like:
`uv -A Opus:bitrate=64b`

(was meant 64 bps or what?)
2023-11-29 15:27:32 +01:00
Martin Pulec
7fa5f3e672 parse_audio_codec_params: wrong cond fix 2023-11-29 15:27:32 +01:00
Martin Pulec
40a7d04ec1 unit_evaluate[_dbl]: added endptr param 2023-11-29 15:27:32 +01:00
Martin Pulec
6ebcfa1a26 audio/codec: improved including 2023-11-29 15:26:32 +01:00
Martin Pulec
bfb7a1d232 removed no longer needed check_audio_codec 2023-11-29 14:58:16 +01:00
Martin Pulec
e50db753be audio/codec parse_audio_codec_params: check vals 2023-11-29 14:58:16 +01:00
Martin Pulec
288b2c5804 refactor audio codec fmt parse
Should be almost functional equivalent as the previous version.
2023-11-29 14:58:14 +01:00
Martin Pulec
042a854209 DeckLink disp sync: better encapsulation 2023-11-29 14:09:41 +01:00
Martin Pulec
f2ba6c3cc7 DeckLink disp sync: handle excessive aud. underflw
using audio codec with relatively long delay may cause underflows, eg.:
```
uv -t testcard:mode=Hi59 -s embedded -d decklink:sync=4 -r embedded \
  -c libavcodec:encoder=libx264 -A mp3:bitrate=64k
```

refers to GH-362
2023-11-29 09:30:25 +01:00
Martin Pulec
cdf4140a77 DeckLink disp sync: assert sched_frm min<max
\+ moved the stuff to a separate function
2023-11-28 16:56:21 +01:00
Martin Pulec
6008230061 DeckLink disp.: do not return nullptr on getf()
Do not return nullptr from getf() - it should not be returned when
reconvigure was sucessful and would crash in decoder, anyways. We
reconfigure with audio change internally, so if may fail.
2023-11-28 16:56:21 +01:00
Martin Pulec
86dd2c2b64 DeckLink disp.: set magic to human-readable FourCC 2023-11-28 16:56:21 +01:00
Martin Pulec
5efb58d1ae DeckLink disp sched: schedule (min+max+1)/2
Rather than filling to just the minimum, schedule (min+max+1)/2 on
underflow. This is consistent with that how it is prefilled.
2023-11-28 16:56:21 +01:00
Martin Pulec
38cffb0dad DeckLink disp.: watch overflow
- add even more than 1 frame if less than one from m_min_sched_frames
- add the fill even if we have frames in queue but we won't get the
m_min_sched_frames
2023-11-28 16:56:21 +01:00
Martin Pulec
0f8d022022 DeckLink disp.: resorted includes
- system prior to user
- include all config*h unconditionally (required for PACKAGE_* and ntohl)
- small other updates (int->bool)
2023-11-28 16:56:19 +01:00
Martin Pulec
3edf5ccede video_decoders: assert getf() != nullptr 2023-11-28 10:29:48 +01:00
Martin Pulec
0c2a074c28 Revert "CI Linux: fixed failed run (Vulkan)"
VulkanLoader has been updated, with the CUDA _EXT prefix, which is on
contrary incompatible with Vulkan-Headers v1.3.270.

This reverts commit 62ae77117d.
2023-11-28 08:39:43 +01:00
Martin Pulec
f9d888f9fe DeckLink disp.: print video time when scheduled
for debugging
2023-11-27 16:41:28 +01:00
Martin Pulec
9ebb942635 FEC: very small help improvement 2023-11-27 16:41:28 +01:00
Martin Pulec
1b76001575 transmit: optimize includes
+ RTP: do not require config.h and WORDS_{BIG,LITTLE}ENDIAN (use
__BYTE_ORDER__ instead)
2023-11-27 16:41:24 +01:00
Martin Pulec
cd22b7d8cc aplay dummy: print also offset from previous TS 2023-11-27 15:21:40 +01:00
Martin Pulec
99269e670d aplay dummy: added option debug
print timestamps etc.
2023-11-27 15:21:29 +01:00
Martin Pulec
3fa71b552f zfec: revert headers incl removal
removed 2023-11-16 by commit c8080a4f

config.h include is actually requested (HAVE_ZFEC). If config.h is
included and HAVE_ZFEC is defined, also other headers, which have been
deleted, are required as well.
2023-11-27 11:08:53 +01:00
Martin Pulec
62ae77117d CI Linux: fixed failed run (Vulkan)
fixed failed run:
<https://github.com/CESNET/UltraGrid/actions/runs/7002907554/job/19047571995>

Vulkan-Loader seem to be (temporarily?) incompatible with current Vulkan
Headers, which suffix VK_DEBUG_REPORT_OBJECT_TYPE_CUDA_FUNCTION_NV with
_EXT in v1.3.271.
2023-11-27 10:54:07 +01:00
Martin Pulec
61cd13d3c6 add short opt -i for audio filter 2023-11-21 14:10:21 +01:00