technically it will be C2Y but the c23.h can be perhaps used for both
in c++, std::size() is rather used
This fixes compilation of pano_gl, where its implementation
of countof clashes with the macro (leaked through
debug.h->color_out.h->utils/macros.h, which no longer contains that
define).
With v5, NDI doesn't compile because of NDIlib_frame_type_source_change
missing. According to the NDI license, the most recent version should
be used, anyways.
If --enable-screen is used in Linux without specifying explicitly
x11 or pipewire, require both. The user may need to have the PipeWire
implementation and end up with X11 or vice versa.
Also fix the check for implementation - checked X11 only if
--enable-screen=x11 (without PW) and vice versa for Pipewire. But not
eg. --enable-screen=x11,pipewire.
Also changed configure.ac so that Pipewire screen cap requirements
are checked only in Linux (in other platform currently perhaps not
expected the use of Pipewire screen capture).
set the given <preset> as AVCaptureSessionPreset<Preset> (first letter
converted explicitly to upper-case for backward compatibility when there
has been "low" option not "Low")
If the desktop is 2880x1800, the main profile would capture 480x300, which
is perhaps unexpected - even though the resolution doesn't necessarily
need to be native, 480x300 is perhaps too small. For the FaceTime HD Camera
480x360 so it is better to keep the default (deskotp native, FaceTime 720p).
- suggest also AVCaptureSessionPreset1920x1080
- do not advertise HD - it was actually 720p, users may expect 1080p
(but still allow the setting)
- updated examples - added the "long" preset option, some opts now
use shortcuts
This is handled differently and may trigger unexpected decode to HW_VDPAU
if gl display advertises that, eg. `uv -t testcard -c lavc:c=MJPG -d gl`.
This fixes the commit 647d8627 (2025-06-25) that unintentionally
enabled that.
The HW accel is hanndled actually separately ahd snouldn't be "enabled"
in this way.
strcmp not actually required, just compare first char (1 or '\0')
Mentioned by CID 899145 (pointless comparison, after preprocesor
expansion) but most likely won't fix that (but doesn't need to be fixed,
anyways).
- fixes the SPOUT capture with NVIDIA Optimus
- renderer for Vulkan seem to still use NVIDIA for 10 bit rendering
(-t testcard:c=R10k:patt=gradient2)
refers to <https://github.com/CESNET/UltraGrid/issues/487>
- the fatal/error/warning was off-by-one, should have been "6 -" to match
corresponding Spout log levels, but:
- made the fatal/error/warning mapping explicit, anyways
- use SPOUT_LOG_WARNING for both UG NOTICE and INFO - the previous
SPOUT_LOG_NOTICE is a bit chatty during init, so:
- UG VERBOSE - use the Spout notice
It seems like SPOUTLIBRARY::EnableSpoutLog() must be also executed to
actually enable the logging.
Note that there also exists SPOUTLIBRARY::OpenSpoutConsole(), which seems
to be intended to open a standalone logging window but it didn't open
when just executed between EnableSpoutLog().
As the logging is mainly intended to be output to the console window, it
seems like when issed just EnableSpoutLog() it is dumped to the
stdout/stderr, which is just what we want in UG.
The check is there just to be sure - I didn't come across the situation
when GetSpout returns nullptr. But if so, it is undesirable to crash
(as it was until now) in _probe.
instead of building own Spout, use pre-built release on GH
This actually reverts the commit b98b5ab0 from 2023-11-06.
Date: Mon Nov 6 09:08:46 2023 +0100
to suppress a warning - just print a notice
Not sure when it occurs - if source identity has changed, we would
perhaps stop receiving the stream. Or maybe there is some notice and
NDI handles that automatically? If some action is required, the notice
may help in a bug request.
- suggest that platform= may preceed (full)help - in this case, in fullhelp,
the mode list may differ in X11 than in Wayland
- according to this, warn if something is after "[full]help" - eg. user
may mistakenly set "fullhelp:platform=x11", which won't work since the
platform has not yet been parsed when gl_show_help() executed
+ no longer store the init hints in the dictionary but set them directly
+ call the glewInit in help - this allow the output to be aligned with
selected platform, eg. `-d gl:platform=X11:fullhelp` lists X11 oonitors
Note that on wrong cmdline opt. glfwTerminate is called without prior
glfwInit in _dene but it doesn't seem to be causing problems so far.