Needs adding log_msg_once variable arguments (printf-like).
+ print always error in deinterlace - if user explicitly wants
deinterlace PP, maybe we should notify loudly
fixed `-d gl` of `-t testcard:size=47x32:codec=v210` or `..size=48x32`
The problem was perhaps with truncation of a number slightly below
nearest integer. Result was a "broken" bar of a testcard (in midst it
was shifted by one horizontal pixel).
Quite a huge eps is needed in macOS - .49999 cut-off was not sufficient
for `size=$((48*53))x$((32*53))`.
- simplified comutations (n + .5) instead of (n + 1.) / 2.
- documentation
- renamed imageWidthOrig to imageWidthRaw - it was confusing because
the originl version used size and sizeOrig, where sizeOrig is our
imageWidth and size, which is now imageWidthRaw, was imageWidthOrig
before
+ exit if (any) shader compilation fails and errors are treated as fatal
(`--param errors-fatal`)
R10k line is padded to 256 B (as DeckLinks requires) so widths not
divisible by 64 pixels were not displayed correctly.
Not sure if AJA holds also this convetion, it is not mentioned in docs
for NTV2_FBF_10BIT_DPX. However, SDI formats' line widths are generally
divisible by 64 pixels so it is not relevant there.
Steps to reproduce the problem were:
uv -t testcard:size=48x32:codec=R10k -d gl
It is possible that some old card do not compile all shaders, eg. in
Windows 10 HD Graphics 3000 doesn't compile v210_to_rgb_fp.
Instead of aborting (until last commit), just disable the codec and let
video decoder to decode it to some of other supported codecs.
Return a macro ((void *) 1) from modules returning pointer to signalize
that help was printed (for correct UG return value). This replaces the
old behavior when module class specific value (eg. &display_init_noerr)
was returned.
Replace blocking/nonblock/discard flags with numerical timeout for
fine-grainer control of latency.
The original flags are kept as convenience macros so the API changes is
only small as long as non-block (default) or blocking is used.
Use name (MOD_NAME) provided by module rather than name given from
command-line. Those 2 may not match - in command-line it is
case-insensitive so ("gl" or even "gL" would be printed inestead of
expected "GL"). Also there may be input/output module of the same name
(eg. decklink) for which we may want to distinguish.
Fixed some of (easy) newly detected Coverity bugs. Those are mostly
innocent ones (performance) and not new (detected because of new release
of Coverity).
Removed indirect dependency on rang.hpp through color_out.h. Now only
remaining dependencies on rang.hpp are direct.
+ fixed escape sequence for foreground magenta
Fixes a crash using Wayland GLFW version, starting fullscreen and
returning to windowed mode. It may be rather a GLFW bug.
Steps to reproduce -- start `uv -t testcard -d gl:fs` and press 'F'
(fullscreen). Needs Wayland GLFW build (as in current Arch Linux).
Rlo and Glo (shifted right) had incorrect shifts.
+ use delimiter in bit mask (readibility)
+ make all constants unsigned (already implicitly cast but to make it
clear)
Do not iconify when windows is fullscreen and loses focus -- this is
particularly annoying when using 2 displays (but can have a rationale
in a single display setup when platform has full-screen windows always
on top).
If window has approximately the same or higher resolution than the
screen resolution, reverting back from fullscreen caused the window
fail to re-gain its windowed state, reverting to full-screen.
To avoid that glfwSetWindowMonitor() needs to be called with {x,y}pos
set to GLFW_DONT_CARE instead of 0.