Commit Graph

487 Commits

Author SHA1 Message Date
Martin Pulec
2da425de46 make: ObjC compile cmd fix
CXX was used for ObjC compilation but with some recent autoconf update
to 2.72, CXX is set to "g++ -std=gnu++11" because clang there without
-std uses C++98, which was perhaps mishandled by the former autoconf
versions. Using CC (== gcc) corrects that.
2024-01-02 14:13:28 +01:00
Martin Pulec
07e452c778 CI+make: use system location for Syphon 2023-12-04 10:50:56 +01:00
Martin Pulec
d648771854 Makefile: ensure copying to dir + use CP
- ensure copying to a directory where cp dst is assumed to be a directory
(see previous 2 commits)
- use CP macro instead of cp when already defined
2023-11-20 08:09:13 +01:00
Martin Pulec
72ffd5c5ed make: run AsciiDoc gen silently
message `Generated uv.1` is output, anyways
2023-11-15 09:09:16 +01:00
Martin Pulec
d617773a3a Makefile: install manpages to Mac bundle 2023-11-14 11:13:08 +01:00
Martin Pulec
54fbb7fd8b Makefile: build manual pages 2023-11-14 08:20:57 +01:00
Martin Pulec
25b2e3ebfa Makefile: fixed multiple init of pipe in some cases
./autogen.sh  --disable-all --enable-object=src/video_display/pipe.o \
        --enable-reflector
2023-11-08 12:59:29 +01:00
Martin Pulec
0f9dbdf89e Revert "Makefile: added deps on bundle dir"
This still causes the bundle rebuild. Under normal circumstances it
won't matter but as we sign the directory after creating the bundle
and before creating dmg, it actually hurts, becasue to the DMG goes the
freshly-created (unsigned) bundle.

This reverts commit 7294347a9b.
2023-11-02 12:03:51 +01:00
Martin Pulec
7294347a9b Makefile: added deps on bundle dir
This should now work as expected because the build stuff has been
changed/fixed since the "todo" was written.
2023-11-01 09:10:28 +01:00
Martin Pulec
5d0160fd0d Makefile: add reflector objects unconditionally
Pseudo-displays are required by the reflector unconditionally (not always
all, depends what is run).
2023-09-20 11:54:00 +02:00
Martin Pulec
46522e312f Makefile [Mac] manual QtDBus copy workaround
Currently macdeployqt distributed with Qt 6 in Homebrew fails to deploy
transitive dependency (QTDBus in this case). So as a workaround we
hard-copy that for now.

It may not be problem of Qt 6 itself but just the Homebrew distribution,
see also [1].

[1]:
a6a9f108df
2023-09-15 15:36:43 +02:00
Martin Pulec
9a6b85aab1 mac GUI bundle: link Frameworks to libs
Macdeployqt copies ordinal libraries to Frameworks/ while we use libs/
with macdeployqt, so use symlink to avoid having 2 copies when lib is
used by both uv and uv-qt.
2023-09-14 16:11:39 +02:00
Martin Pulec
a41a5095c3 Makefile mac: gui bundle updates
do not run dylibbundler on uv-qt and macdeployqt on uv/hd-rum-transcode

This should no longer be needed and it simplifies things a bit.
2023-09-14 16:11:39 +02:00
Martin Pulec
4b1526e634 Makefile mac: cp Frameworks/ to bundle
Do not use hard-coded list of frameworks in Makefile, rather use list
generated by configure.ac in BIN_DEPS.

Needed frameworks are copied to Frameworks/ as part of BIN_DEPS target
(needed for TARGET), so that we can copy this directly to the bundle.
2023-09-14 16:11:39 +02:00
Martin Pulec
63ac91db3f configure.ac: simplified Qt
The whole stuff is no no longer needed - only qmake is needed to build
the GUI now (UG itself does no longer depend on Qt - shared IPC frame
now uses UNIX sockets).
2023-09-14 16:11:39 +02:00
Martin Pulec
c136250aa4 Makefile.in: reformated mac bundle target
keep 80 columns width
2023-09-14 16:11:36 +02:00
Martin Pulec
eebe224c10 build: do not link reflector with unneeded deps
Do not link all optional features to the reflector, only video compress
modules are actually requested for it.
2023-08-09 16:08:31 +02:00
Martin Pulec
9ab4edbf56 configure: non-essential objs are not needed for reflector
The non-essential object separated in HEAD^^^ happen not to be needed
for the reflector.
2023-08-09 16:08:30 +02:00
Martin Pulec
15d0f4ae55 removed capture_filter none
This capture filter is never initialized now (if none capture filter is
given, empty list of capture filters is used).
2023-08-09 16:08:30 +02:00
Martin Pulec
78b8ea7e7c disable non-essential files with --disable-all
Disable non-essential modules with --disable-all even if doesn't have
external dependencies and thus has been built unconditionally until
now. Individual files can then be re-enabled with --enable-file=src1,src2
option.
2023-08-09 16:08:30 +02:00
Martin Pulec
cb8d96d210 configure: option to disable reflector
The option will likely not be used alone but rather implicitly by
--disable-all and it can be used to speed-up the compilation if reflector
is not needed (and maybe also if its compilation is failing).
2023-08-08 16:12:45 +02:00
Martin Pulec
d17c5ea24c removed platform_time.c + references
get_time_in_ns() should be used instead time_since_epoch_in_ms(). Having
both may be misleading and may lead to errors when interchanged.
2023-08-08 15:32:29 +02:00
Martin Pulec
6c431eff87 Makefile: do not link unused files 2023-08-08 14:39:32 +02:00
Martin Pulec
3639d00dbf replaced not thread-safe *rand48 functions
Use rand_s() in Windows and random() in POSIX systems.
2023-08-02 10:07:19 +02:00
Martin Pulec
b634053b99 added silence audio filter 2023-07-26 12:33:09 +02:00
Martin Pulec
7da1be7911 mac CI: fixed distcheck
final bundle path has changed

+ [Makefile.am] the targets were not overriden
2023-07-03 11:14:05 +02:00
Martin Pulec
82aed12b1a Makefile: rewritten macOS bundling
Always create clean bundles (both with and without GUI).

The former approach was quite fragile and althoug it offered some
advantage that it wasn't needed to rebundle the libs all the time, it
perhaps doesn't overcome the disadvantages, eg. that it was actually
broken until now - first run was successfull but when the macos-wrapper
was deployed second time, it created broken bundle (the script doesn't
handle this case).

Some kind of caching of already processed steps may be readded in future
but definitely made in a more clean way.

+ removed bundle-nolib - doesn't seem to be needed; can be readded if
  needed, anyways
+ removed '; \' at line before 'cp -R $(GUI_BUNDLE_DEP)/* $(GUI_BUNDLE)'
  Not sure how it affects the behavior but that made the cp command
  part of the previous command, which is certainly not intended.
2023-07-03 11:14:05 +02:00
Martin Pulec
a8b46e48e7 Makefile macOS: do not use wrapper for scripts
currently only applicable on update.sh
2023-07-03 11:14:04 +02:00
Martin Pulec
e75a8e3e5d Makefile mac: copy all files from old to GUI bundle
the former was a bit error-prone and eg. since 2b9ed6c7 (2023-05-15),
icon.icns was not copied (just to old bundle but not re-copied to GUI
bundle). Also things like Vulcan shaderes were not copied.

Here, we use a no-clobber option not to override files specific to GUI
bundle.

+ fixed the actaull path of icon.icns inside the bundle
2023-07-03 11:13:35 +02:00
Martin Pulec
5555315b5c added override_prop cap. f.
This allows overriding some video props (only in metadata), eg.
25p->50i. Currently only FPS + interlacing change is supported.
2023-06-21 16:37:49 +02:00
Martin Pulec
bb3ff5e165 vidcap file: improved A/V synchronization
fixes GH-322
2023-06-20 13:37:49 +02:00
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