Martin Pulec
c18e2b4d75
DeckLink cap.: small refactor
2022-08-12 09:50:50 +02:00
Martin Pulec
443d6aacf2
blackmagic_common.h->hpp: contains only C++ funcs
...
The header contains only C++ linked functions thus mark it as such.
2022-08-11 17:17:24 +02:00
Martin Pulec
dc196ff55a
GL: fixed R10k shifts
...
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)
2022-08-11 17:15:51 +02:00
Martin Pulec
0d793a0836
matrix.c: avioid multiple evaluation
...
same as previous commit
2022-08-11 12:10:56 +02:00
Martin Pulec
0b9abe7233
from_lavc_vid_conv.c: avoid multiple evaluation
...
Needless multiple evaluation of expression may occur in macro expansion.
2022-08-11 12:10:56 +02:00
Martin Pulec
71551253cc
from_lavc_vid_conv.c: fixed yuv8p_to_rgb
2022-08-11 12:10:56 +02:00
Martin Pulec
6b28716d30
replaced MIN/MAX with CLAMP
2022-08-11 12:10:56 +02:00
Martin Pulec
04c2d245d0
fixed Win compile warnings (from CI)
2022-08-11 10:42:45 +02:00
Martin Pulec
95b851eecb
replaced \e with \033
...
'\e' is not standard C, see:
https://stackoverflow.com/questions/63255838/how-can-i-fix-warning-c4129-e-unrecognized-character-escape-sequence/63255920#63255920
2022-08-10 17:01:31 +02:00
Martin Pulec
276933dea6
ximea: fixed output
2022-08-10 16:46:38 +02:00
Martin Pulec
894c61909a
Win: set HAVE_TIMESPEC_GET for MSVC stuff
2022-08-10 16:41:42 +02:00
Martin Pulec
383a00844f
DEBUG_TIMER: use time_ns_t
2022-08-10 13:45:07 +02:00
Martin Pulec
cf58ff3948
added missing includes
2022-08-10 13:45:07 +02:00
Martin Pulec
f24b237ef1
tv.h: added macros cast to double
2022-08-10 13:45:07 +02:00
Martin Pulec
39338a2e50
GL: fixed swapped R/B channels in byte_swap_r10k
2022-08-10 13:45:04 +02:00
Martin Pulec
128150288b
logger: removed preinit
...
no longer needed to initialize rang here
2022-08-10 10:00:07 +02:00
Martin Pulec
555935afa1
vidcap_decklink_grab: simplified
...
- do the RGBA conversion only once (not in all branches)
- exit early if some tile was not captured
2022-08-10 09:58:42 +02:00
Martin Pulec
6bbe8c4228
removed color_out function
2022-08-10 08:14:07 +02:00
Martin Pulec
6802baef6e
pbuf: get rid of rang
2022-08-10 08:14:07 +02:00
Martin Pulec
812bcbfc78
logger: remove ANSI seqences if not terminal
...
This allows use of raw ANSI sequences instead of the rang stuff.
2022-08-10 08:14:07 +02:00
Martin Pulec
7719e8aa47
logger: get rid of rang references
2022-08-10 08:14:07 +02:00
Martin Pulec
d84b375165
color_out: removed color_stderr
2022-08-10 08:14:06 +02:00
Martin Pulec
2dc9a3d214
GLFW: init module after GLFW
...
if glfwInit failed, module has not been unregistred
2022-08-10 08:14:00 +02:00
Martin Piatka
a1483444e5
gl: vdpau: make load frame a member func
2022-08-09 17:00:26 +02:00
Martin Piatka
29eec7f19e
gl: Move vdpau functionality into separate file
2022-08-09 17:00:25 +02:00
Martin Piatka
19083593ab
gl: vdpau: rename render_vdpau to vdpau_load_frame
2022-08-09 17:00:25 +02:00
Martin Piatka
0038eb5e8f
gl: vdpau: check_mixer: pass state_vdpau as argument
2022-08-09 17:00:25 +02:00
Martin Piatka
89ad5b76f8
hwaccel: Fix extern "C" includes
...
hwaccel_vdpau.h was including hwaccel_libav_common.h with C linkage.
This causes the following include chain with c linkage which causes an
error:
hwaccel_vdpau.h -> hwaccel_libav_common.h -> types.h -> <string>
2022-08-09 17:00:19 +02:00
Martin Pulec
f11e91d268
video display: missing TERM_RESET
2022-08-09 16:03:19 +02:00
Martin Pulec
c7f33901d2
GL disp.: use different data type for R10k tex
...
Used GL_UNSIGNED_INT_2_10_10_10_REV instead of GL_UNSIGNED_INT_10_10_10_2
for R10k texture. The later has much better performance on AMD RX 580.
2022-08-09 15:17:09 +02:00
Martin Piatka
213ce5e20f
output buffering: Disable buffering in GDB
...
Since the style reset escape codes are generally after the newline, the
otput of GDB would stay colored without this change
2022-08-09 11:48:58 +02:00
Martin Piatka
e0245aeda5
host,keyboard_control: Move gdb detection to a function
2022-08-09 11:48:58 +02:00
Martin Piatka
8aa662f8c6
lavc: Use svtav1-params for av1 configuration
...
Since ffmpeg 5.1 svtav1-params should be used, as the old way is
deprecated/unsupported now.
2022-08-09 11:48:43 +02:00
Martin Pulec
1664445826
testcard: removed dependency on rang
2022-08-08 16:12:25 +02:00
Martin Pulec
92bc623fff
color_out: added a C++ API
...
Added some basic C++ API removing the need to use rang.
2022-08-08 16:09:58 +02:00
Martin Pulec
b15ede7aec
video_codec: v210, R10k add 10b to description
2022-08-08 15:08:38 +02:00
Martin Pulec
78bef43bf0
testcard_show_codec_help: color print + improvments
2022-08-08 15:08:04 +02:00
Martin Pulec
0587e5537b
testcard: removed "apattern" from usage
...
apattern is no longer a valid configuration option (`midi` was removed so
the only apattern remains `sine`)
2022-08-08 14:38:23 +02:00
Martin Pulec
e96084d875
testcard: prefer key-val opt syntax in usage
2022-08-08 14:12:16 +02:00
Martin Pulec
f9c4e4af52
GL: display frame dropped message
...
similar to SDL2
2022-08-08 11:16:24 +02:00
Martin Pulec
51a91c12ba
lavcd: opt to disable slice threads
...
Just in case it is needed, in addition to 'F' and 'S' option 'n' was
added which disables (implicitly toggled) slice threads.
2022-08-08 10:16:07 +02:00
Martin Pulec
d6dd0d9a9c
lavc: fixed thread cap check for slice+frame
...
fixes ecd5a750 - comparison instead of bit sum is used
2022-08-08 09:39:32 +02:00
Martin Pulec
ec702d5c25
lavd: enable frame multithreading for hevc
...
Setting frame-based multithreading for FFmpeg internal hevc decoder
allows parallel decoding of HEVC stream generated by NVENC.
Performance evaluation shows that (interestingly) not only it doesn't
increase decoding latency but it actually reduces it. It holds for both
libx265 and NVENC (tested with `testcard:codec=R10k:pattern=gray`).
Note that the observation in previous paragraph doesn't hold for all
codecs, eg. setting frame+slice threading for FFmpeg JPEG
encoder+decoder increases latency from some 200 ms to 400 ms.
Refer to GitHub CESENT/UltraGrid discussion #241 .
2022-08-05 16:11:46 +02:00
Martin Pulec
4b7515079b
lavcd: print actual thread settings in verbose mode
2022-08-05 16:11:46 +02:00
Martin Pulec
89e98287b1
lavc: print codec capabilities if verbose
2022-08-05 16:11:46 +02:00
Martin Pulec
26a739dc6b
testcard gray: preinit frames
...
Generating frames on-fly is a bit slow.
2022-08-05 16:11:46 +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
ca0421787a
keyboard_control: use getter&setter for repeat skipping
2022-08-05 13:44:35 +02:00
Martin Piatka
d395377a5d
logging: debug_dump: simplify
2022-08-05 13:44:34 +02:00
Martin Piatka
60e6d00130
logging: remove old dead code
2022-08-05 13:44:34 +02:00