Commit Graph

9243 Commits

Author SHA1 Message Date
Martin Piatka
fe73cb9145 display/drm: Try to automatically find the DRI device 2024-05-17 13:20:01 +02:00
Martin Piatka
f84a67d3c5 display/drm: DRM_PRIME support 2024-05-17 13:19:57 +02:00
Martin Piatka
86d439f6ab display/drm: Proper x offset calculation 2024-05-17 13:19:57 +02:00
Martin Piatka
660fde20dc display/drm: Use drmIoctl instead of ioctl 2024-05-17 13:19:56 +02:00
Martin Piatka
88dae5ed0f display/drm: Replace dumb buffer create/destroy with ioctl
Older versions of libdrm do not contain those functions
2024-05-17 13:19:56 +02:00
Martin Piatka
1c99a14f59 display/drm: Print DRM driver information 2024-05-17 13:19:56 +02:00
Martin Piatka
70e77c0ca7 display/drm: Add basic support for UYVY and RGBA fmt selection 2024-05-17 13:19:56 +02:00
Martin Piatka
9816eaf6db display/drm: Draw a splashscreen 2024-05-17 13:19:56 +02:00
Martin Piatka
534626429f display/drm: Specify pix_fmt when creating framebuffers 2024-05-17 13:19:56 +02:00
Martin Piatka
2197cb2ee2 display/drm: Print error if display is already occupied 2024-05-17 13:19:55 +02:00
Martin Piatka
698223852d Initial DRM video display 2024-05-17 13:19:55 +02:00
Martin Piatka
cb490950c6 hwaccel/drm: Store fd count 2024-05-17 13:19:49 +02:00
Martin Piatka
6fb547d16c hwaccel/drm: Specify the UG HW frame format 2024-05-17 13:19:49 +02:00
Martin Piatka
f1e0e5110d lavc: Allow outputing DRM HW frames 2024-05-17 13:19:49 +02:00
Martin Piatka
85493309d2 lavc: Add drm_prime av to ug frame conversion 2024-05-17 13:19:48 +02:00
Martin Piatka
b2994070aa Add drm_prime codec to hold dma-buf frames 2024-05-17 13:19:48 +02:00
Martin Pulec
f75a8530f0 hd-rum-transcode: print bound port number
Instead of requested port, print the actually bound port. This should
be the same except the situation when user requests the random port
(requesting port 0).
2024-05-16 15:24:22 +02:00
Martin Pulec
5f3f0b8010 vo_pp/deint: removed config*.h include 2024-05-16 11:04:58 +02:00
Martin Pulec
83d5a90b5b configure.ac: added all to --enable-object
The options cannot be repeated for configure, like
`--enable-object=a --enable-object=b` to enable both a and b
(`--enable-object=a,b` is needed). This may be sometimes impractical,
when the command-line args are appended incrementally.

As a workaround, at least `--enable-output=all` is added. As it is not
a solution, it still (with `--disable-all`) removes most unneeded code
(with dependencies), while compiling all the non-essential objs without
deps.
2024-05-16 10:55:25 +02:00
Martin Pulec
71a5f2d78a vdec/lavc: fixed unused var if no swscale 2024-05-16 10:23:49 +02:00
Martin Pulec
f5d124a9ea decklink: improved including 2024-05-16 09:54:24 +02:00
Martin Pulec
97e41d4af5 deck/disp: [no-]low-latency hint fix
- do not suggest synchronize on low-latency - this was actually incorrect,
because it is the vice versa (low-latency is already implicit for a
long time)
- for "low-latency" notice that it is not needed (implicit)
2024-05-16 09:54:24 +02:00
Martin Pulec
ad25efd83a disp/decklink: moved mode (latency/sync) to separate fn 2024-05-16 09:54:24 +02:00
Martin Pulec
9880a1aa29 vcap/fps_indicator: use colors when low fps
Indicate lower than nominal FPS with different colors when using generic
FPS indicator.

This should help user to detect potential problems.
2024-05-16 09:54:23 +02:00
Martin Pulec
f379547fce main: capture_thread: early return if tx_frame==0
just a refactor, no functional change

\+ the same in print_fps()
2024-05-16 09:54:23 +02:00
Martin Pulec
e6ac096463 video_capture.c: fixed headers
do not include config*.h

\+ moved back to C
2024-05-16 09:54:22 +02:00
Martin Pulec
ade96e561d moved FPS indicator prefix trailing ' ' trim
moved to video_capture.cpp  - it is a bit technical and it is nicer to
have it there than in the huge main.cpp
2024-05-16 09:50:08 +02:00
Martin Pulec
d0bfef4651 portaudio: accept device name prefixes
Also copy the device name to caller allocated buffer instead of cumbersome
giving the pointer to original string.
2024-05-14 11:31:56 +02:00
Martin Pulec
cec50e7656 portaudio: fixed including
- removed config*.h included
- optimized with include-what-you-use
2024-05-14 08:58:45 +02:00
Martin Pulec
06a71f0c2b CID 460738 fix
Fixed minor Coverity complaint (allocation check after first use).
2024-05-14 08:30:55 +02:00
Martin Pulec
9ca00ff610 CoreAudio: accept name for default devices
The default device name was not included in the list of device for
comparison, because the direction was not given. But we know the direction
both in capture and playback, so we can add it so that the default device
is recognized by name.

This also makes audio_ca_probe() more clear as a direction is always
capture or playback (-1 or 1).

\+ added some doxygen documentation

refer to GH-385
2024-05-13 16:47:20 +02:00
Martin Pulec
2af7b0021a decklink aacl: improved description
Mention that the opt actually represents that audio levels are consumer
line.
2024-05-13 15:43:29 +02:00
Martin Pulec
226c17f02d replace all other AC-defined platform macro
Replaced all other autoconf-defined platform macros (HAVE_LINUX and
HAVE_MACOSX, WIN32 already done) with those ones defined by compiler.

Not yet remove the definitions from autoconf, in case someone will use
the old macros anyways. Remove in future.
2024-05-13 12:56:53 +02:00
Martin Pulec
56a6dc78b0 replace remaining WIN32 platform macros
see the commit HEAD@{2}
2024-05-13 12:56:53 +02:00
Martin Pulec
97cef055e6 compat/alarm,compat/usleep: do not use config*h
\+ use _WIN32 platform macro instead of WIN32
2024-05-13 12:56:52 +02:00
Martin Pulec
c23a5c3f8e hd-rum-translator.cpp: replaced WIN32 with _WIN32
WIN32 is defined in config.h, which is now not included directly (althoug
it seems to be transitively). _WIN32 is defined by the compiler, so it
won't break if WIN32 happens not to be defined in MSW.
2024-05-13 12:56:52 +02:00
Martin Pulec
d71b52dbef hd-rum-translator: improve including
as suggested by include-what-you-use

\+ small improves removed TRUE usage (not needed) and also struct item
2024-05-13 12:56:52 +02:00
Martin Pulec
49a638198f hd-rum-transcode: common_preinit handled opts fix
Options --param/-O and --verbose/-V are handled by common_preinit,
which needs to be taken into account:

1. verbose should not be handled again at all (already set; if otherwise
-V would effectively increase verbosity by 2, as with -VV)

2. param should be called second time - the first iteration sets only
opts known to that time (without modules that are not yet registered)

both changes are compatible with getopt in main.cpp
2024-05-13 12:56:52 +02:00
Martin Pulec
2909e4646f common_preinit: use non-permuting getopt
Instead of tweaking the getopt manually, use non-permuting version of
getopt (POSIX-compiliant, indicated by leading '+' in optstring).

This is slightly less error-prone and more readable. Althoug still a
bit tweaking is needed - skipping a non-opt (which can be in the middle
of argv if user cmd uses this syntax). Also options for opts that are
not recognized by this getopt (any aother than -O/-V) will appear as
a non-opt.
2024-05-13 12:56:52 +02:00
Martin Pulec
4d82b59bb3 parse_bitrate: use also for hd-rum-transcode 2024-05-13 12:56:52 +02:00
Martin Pulec
3126076d1c recompress_done: destroy compression 2024-05-13 12:56:51 +02:00
Martin Pulec
cf2314de28 uv: make some shortopts as in hd-rum-transcode
to be consistent
2024-05-13 12:56:51 +02:00
Martin Pulec
e41534a67f hd-rum-transcode: added global shortopts to usage 2024-05-13 12:56:51 +02:00
Martin Pulec
6819a9eb56 hd-rum-transcode: parse options with getopt
previous parsing was a bit cumbersome and error-prone
2024-05-13 12:56:46 +02:00
Martin Pulec
d044e6c913 hd-rum-transcode: get rid of start_index
somewhat unnecessary - optind does the job
2024-05-13 12:44:48 +02:00
Martin Pulec
0c9745dfda optind needs to be set to 0 than 1
optind needs to be set to 0 than 1 to reinit its internal state (see
NOTES in man getopt(3)) for getopt_long() in hd-rum-transcode. If not
so, the leading '+' in optstring (== disallowing permutation) won't
be effective.
2024-05-13 12:44:47 +02:00
Martin Pulec
885534186b hd-rum-transcode: parse global opts with getopt
also short opts are added
2024-05-13 12:44:36 +02:00
Martin Pulec
716d6fc354 video_export: fixed swapped calloc args
doesn't matter but gcc 14.1 complains about that
2024-05-10 15:38:02 +02:00
Martin Pulec
f86902c174 deinterlace: fixed noopt config
Introduced by the commit c4aa64c8 (2024-01-13).

refers to GH-384
2024-05-10 15:35:09 +02:00
Martin Pulec
7373b28aaa AppRun: shorten conditions
||-syntax takes just one line instead of 3
2024-05-09 15:29:29 +02:00