Commit Graph

456 Commits

Author SHA1 Message Date
Martin Pulec
e51b965350 configure,Make DXT: small fixes
This doesn't do anything important at all (standard removed, headers
should be now properly removed by GENERATED_HEADERS var).
2023-06-07 13:48:45 +02:00
Martin Pulec
194849ad2b added video capture filter ratelimit
Limits frame rate to specified value.

This can be used if source doesn't keep its nominal frame rate, as some
Magewells do and use higher.

Another use case is just to limit the framerate from eg. 60 to 25 (which
are coprimes, for 60 and 30, already existing capture filter 'every')
can be used.
2023-05-24 09:35:17 +02:00
Martin Pulec
2b9ed6c795 Makefile: mac bundle: copy icon+update.sh directly
- renamed update.mac->update.sh
- moved update.sh + icon.icns to macOS bundle skeleton path
2023-05-15 16:49:26 +02:00
Martin Pulec
3db29d0c6c Makefile: do not echo CUDA compilation twice
The compiler is run twice - first for real compilation, second for
dependency tracking. Do not print compilation message the second one
since it may be confusing.
2023-03-30 17:03:23 +02:00
Martin Pulec
265c6b3f6e Win build: CUDA 8.0 compat
Although quite old, it is very simple to add support for it and it will
allow compilation for eg. CUDA CC 2.x.
2023-03-29 13:39:32 +02:00
Martin Pulec
35413ef700 rtsp server: removed rtsp_utils.c
The functions included are used only in h264_rtp.cpp so they may be
moved there directly.
2023-03-16 16:03:22 +01:00
Martin Pulec
6ae7f268f0 video_codec: moved pixfmt convs to a separate file
Just the conversions grew to a significant amount so it is better to
split the file to two to keep the general video codec utility functions
in one file and the conversions in the another.
2023-03-16 14:26:22 +01:00
Martin Pulec
effa536cf6 build: include vcap testcard in Makefile directly 2023-03-16 14:00:22 +01:00
Martin Pulec
4afbabcf90 configure: run tests only if feature requested (or auto) 2023-03-16 14:00:20 +01:00
Martin Pulec
d633b8eec2 configure: removed no longer used cppunit bits 2023-03-15 08:43:16 +01:00
Martin Pulec
d2c00ff3f8 split utils/text to string.c and text.c 2023-03-14 13:21:12 +01:00
Martin Pulec
84db4767bb rewritten all remaining tests without cppunit 2023-03-07 15:45:45 +01:00
Martin Pulec
8df499ffac merged utils/hresult to utils/windows
These 2 files are relatively small and coherent.

+ fixed hresult_to_str not returning anything on RPC_E_CHANGED_MODE
2023-02-24 15:00:00 +01:00
Martin Pulec
39af5e01df moved CoInitialize stuff outside bmd_common
this code may be useful in general
2023-02-24 14:48:07 +01:00
Martin Pulec
bf3a70b73e build sys: del srcdir_abs (realpath/python missing)
No longer used and on macOS there is now neither realpath nor python so
error printed.
2023-02-17 12:18:57 +01:00
Martin Pulec
be39092cda rename double-framerate.cpp -> temporal-deint.c
The original name was now slightly misleading since there is also bob
and linear deinterlators.

Also for user it is "double_framerate", not corresponding with the
original file name (underscore instead of minus sign).

+ moved to C
2023-01-18 11:37:59 +01:00
Martin Pulec
fc0c6adae0 macOS: fixed Vulkan shader bundling/loading 2023-01-17 14:25:09 +01:00
Martin Pulec
a2b0105001 PAM/Y4M utils: move implementation to .c file 2022-12-02 11:15:21 +01:00
Martin Piatka
589adadbee audio: Add 'discard' audio filter 2022-11-29 12:53:25 +01:00
Martin Piatka
7d7e5112c3 audio_filter: Add controlport_stats for volume reporting
For reporting audio volume on the sending side. The report format is similar
to reports from the recieving side, except instead of "ARECV", "ASEND"
is used, and the number of channels reported is the same as in the audio
frame.
2022-11-29 12:53:25 +01:00
Martin Piatka
7cb9771962 Move tokenize and sv_parse_num into string_view_utils 2022-11-10 12:04:41 +01:00
Martin Pulec
7c6c1c1f29 Makefile: remove some forgotten assets
docs and manpages
2022-11-08 16:06:33 +01:00
Martin Pulec
2a15e8461e Makefile: fixed shaders installation/removal
simplified by copying all the shaders

+ avoid bashism (/bin/sh is dash on Ubuntu anyway)
2022-11-08 15:56:49 +01:00
Martin Beľa
b3c191c9c9 [vulkan] Fix shader installation 2022-11-08 10:53:20 +01:00
Martin Beľa
3def04b629 [vulkan] Integrate vulkan_sdl2 into the build and installation processes 2022-11-07 23:36:06 +01:00
Martin Pulec
a5c059da60 moved audio resampler to separate file 2022-10-25 15:51:03 +02:00
Martin Pulec
c132fcc9fe removed gettimeofday win32 replacement
The replacement was recently (since 6dfd098d) used even despite the
built-in has been implemented. The replacement was there because it
has supposedly better precision than the built-in. But since it is
no longer true (if it ever was), it is removed.

Note: there is also timespec_get (or UG wrapper get_time_in_ns) that can
be used in recent code instead of POSIX gettimeofday.
2022-10-13 12:15:40 +02:00
Martin Pulec
17056959f6 dummy: documentation
+ added indent_paragraph function
2022-10-13 09:16:07 +02:00
Martin Pulec
06b468ead2 renamed proxy display as blend 2022-08-26 14:51:55 +02:00
Martin Pulec
82e64c84e2 Makefile: added QMAKE_FLAGS
can be used to pass QMAKE_CC/QMAKE_CXX to qmake
2022-08-23 10:47:53 +02:00
Martin Pulec
f4a9ba6ac2 Doxygen: updates
- update exclude list
- do not contain symlinks (not needed, UltraGrid doesn't use/create any,
  on the other hand, the developer may have symlink eg. to build dir
  which we do not want to include)
- added doc to .PHONY
2022-08-19 10:42:09 +02:00
Martin Pulec
0b8cc39f9c removed perf tool
It was almost never used since added.
2022-08-17 17:24:34 +02:00
Martin Pulec
34eb23cb12 Added "color" capture filter and postprocess
The motivation for this filter currently is to measure compression
latency in UltraGrid, eg.:

    uv  --verbose=+timestamps --capture-filter color -t testcard:pattern=gray \
     -d dummy -p color [-c libavcodec]
2022-08-05 16:11:46 +02:00
Martin Piatka
7acea1fed1 display/preview: Merge with unix_sock display
Switch from shared memory based ipc to unix socket
2022-06-24 13:40:19 +02:00
Martin Piatka
af7d6ae7d6 Add unix_sock display for ipc 2022-06-24 13:39:35 +02:00
Martin Piatka
12ff07b919 tools: Add ipc frame utils 2022-06-24 13:38:20 +02:00
Martin Pulec
474c4dd7cc added display capture filter 2022-06-01 11:22:00 +02:00
Martin Piatka
4669ac16e6 Makefile: Call GUI QMAKE with original C(XX)FLAGS
When a variable is defined in the environment, it also gets modified
and exported for all commands and sub-makes in the Makefile
(https://web.mit.edu/gnu/doc/html/make_6.html#SEC66).

This means that when building with custom C(XX)FLAGS (such as with
Archlinux makepkg), the flag "-DHAVE_CONFIG_H" which absence  is used to
detect out-of-tree building (in platform_pipe.cpp) got also wrongly
passed to qmake. This caused linking to fail due to undefined symbols,
which are only present in UltraGrid in-tree-builds.
2022-05-30 14:20:23 +02:00
Martin Piatka
90bef05d71 Makefile: Run GUI makefile unconditionaly
The wildcards in the GUI dependencies did't cover all subdirectories, so
recompilation was not always triggered on file modification.
This change leaves the decision whether to recompile to the GUI
makefile, which should be more robust
2022-05-27 11:34:35 +02:00
Martin Pulec
29d2b8efd1 Makefile: compile lavc convs with -Ofast
Since the conversion have moved from libavcodec_common, compile the
conversions with -Ofast, not the common file itself.
2022-05-25 14:47:18 +02:00
Martin Pulec
88e58ba1f7 Makefile: fix DXT shader path for out-of-tree b. 2022-05-25 14:47:18 +02:00
Martin Pulec
2b45ba946b mac: display warning to use alt-build on <10.15 2022-05-17 08:56:13 +02:00
Martin Pulec
2cda941242 Makefile: use short compile msg also for nvcc 2022-04-20 09:39:08 +02:00
Martin Pulec
888dbe14d5 removed platform_spin
There is perhaps no need to use spin lock - pthread mutexes have low
overhead if no contention takes place, anyway.

+ replaced platform_spin with pthread_mutex in resource manager
+ document why resource manager is needed
2022-04-01 10:28:55 +02:00
Martin Pulec
585e95ad20 Makefile: remove unneeded includes 2022-03-30 14:05:13 +02:00
Martin Pulec
3a175fce0e Makefile: CUDA_INC to CUDA compiler instead of INC
Passing the parameter to MSVC compiler causes MinGW headers to be
used which causes compilation fail.

See:
https://github.com/CESNET/UltraGrid/actions/runs/2059190533
2022-03-30 14:05:13 +02:00
Martin Piatka
131e8be91e Makefile.in: Make clean less verbose by default 2022-03-23 10:04:30 +01:00
Martin Piatka
6008925116 Makefile: Make GUI compilation less verbose 2022-03-23 10:00:30 +01:00
Martin Piatka
58c05cee67 Makefile.in: Call make for GUI with $(MAKE)
From make manual:
"Recursive make commands should always use the variable MAKE, not the
explicit command name ‘make’"

This also causes the submake to inherit the parallelization settings
from the parent make
2022-03-23 09:52:29 +01:00
Martin Piatka
23fadf0ff0 Makefile.in: clean: Add missing rm for dxt_glsl.h 2022-03-23 09:52:06 +01:00