Commit Graph

6771 Commits

Author SHA1 Message Date
Martin Piatka
1260f9727f audio/utils: Fix leak
Coverity CID 466491
2024-07-16 12:26:05 +02:00
Martin Piatka
5133afc749 audio/filter: Add channel remap filter 2024-07-15 16:13:25 +02:00
Martin Piatka
8d7f878fba audio: Move channel_map struct to utils 2024-07-15 16:13:25 +02:00
Martin Piatka
bcba7c0056 audio/utils: Add remux_and_mix_channel() 2024-07-15 16:13:25 +02:00
Martin Piatka
7f25bb6036 audio/filter_chain: Remove initial ':' from cfg 2024-07-15 16:13:25 +02:00
Martin Pulec
2c6fe44145 vcap/rtsp: add examples 2024-07-15 15:11:47 +02:00
Martin Pulec
fff53aeea2 vcap/rtsp: clear cURL only if init 2024-07-15 15:11:47 +02:00
Martin Pulec
278d3f553a vcap/rtsp: check if port is numberic
Also warn if the colon is in the path (it may be either correct or
incorrectly typed option).
2024-07-15 15:11:47 +02:00
Martin Pulec
f4ee36cd23 vcap/rtsp: small fixes
- includes
- do not use TRUE/FALSE
- make decode_frame_by_pt static
2024-07-15 15:11:47 +02:00
Martin Pulec
209c6fdb2b vcap/rtsp: support userinfo with password in URI
The colon before password was incorrectly assumed to be a port number.
2024-07-15 15:11:47 +02:00
Martin Pulec
3cebc5059c vcap/rtsp: use port 554 by default
If no port is included in the URI, use 554 (default RTSP).

refer to GH-400
2024-07-15 15:11:46 +02:00
Martin Pulec
1420c6e530 vcomp/rtsp: hide rtp_rx_port
show only in fullhelp

\+ added the fullhelp option
\+ pretty-print the output (use colors)

refers to GH-400
2024-07-15 15:11:46 +02:00
Martin Pulec
d687f8e0e7 vcap/rtsp: do not advertise size= opt
The opt is actually not used - the given size is always overwritten by
the value from NAL.
2024-07-15 15:11:46 +02:00
Martin Pulec
a57e7442f4 Revert "fixed CID 424197" + fix correctly
Fix the commit ab794ce70 (2023-11-23) that fixed (incorrectly) the
CID 424197.

If  should_exit was set before waiting in pthread_cond_timedwait, the
infinite loop is never left. Moreover, it seems that the loop was left
only on should_exit timeout, not when notified by condition variable.

This is mostly to make Coverity happy - the spurious wakeup here does
not matter in any way. So reverting the original "fix" would be enough.
2024-07-15 15:11:43 +02:00
Martin Pulec
6549973a70 vcomp/lavc: show_coder_help - split to 2 functions
separate UG codec specific usage to a separate function
2024-07-11 14:56:14 +02:00
Martin Pulec
c0a2d0a7e2 vcomp/lavc: per-codec help improvement
If both encoder and decoder of the same name is present, eg. jpeg2000,
print help for both encoder and decoder. Since for the decoder, options
are also printed with enc=<enc>:help, print both enc and dec at the
same time.
2024-07-11 14:56:05 +02:00
Martin Pulec
60befe0b3a vcomp/lavc: add cmdline doc for libsvtav1
examples + remarks for svtav1-param option
2024-07-11 14:29:13 +02:00
Martin Pulec
52b9b38d4a configure_svt: split to av1 version et al.
Actually the setting is entirelly divergent - different if branches are
taken for libsvtav1 and HEVC/VP9. So split it to 2 functions to simplify.
2024-07-11 08:54:03 +02:00
Martin Pulec
5aa8657d3f vcomp/lavc: accept bitrate also for CQP 2024-07-10 16:17:15 +02:00
Martin Pulec
c9930dcc85 vcomp/lavc: do not assert on wrong bitrate
rather return (the error message is already printed by unit_evaluate)
2024-07-10 16:12:26 +02:00
Martin Pulec
208c2f2243 vcomp/lavc libsvtavi: allow bitrate with CRF
This sets Max Bitrate for CRF RC.
2024-07-10 16:12:24 +02:00
Martin Pulec
8737896579 vcomp/lavc: copy setparam_param
In case that set_param callback modifies some field use a copy to be
reentrant for next attempted pixfmt (or reconfiguration).

The other alternative would be to set the pointer to setparam struct
const, but some setters currenty really modify the params.
2024-07-10 15:39:20 +02:00
Martin Pulec
fbeff23698 vcomp/lavc: do not log CRF/CQP setting twice
info already printed with chec_av_opt_set

\+ prints eventual error with error verboseity (template second parameter)
2024-07-09 16:33:35 +02:00
Martin Pulec
e20ce512fb vcomp/lavc: unset svtav1 pred-struct=1 with bitrate
User may be tempted to set the bitrate although CRF is now default,
so unset pred-struct (because it won't work with current
ffmpeg/libxsvtav1).

But issue a (serious) warning in this case.
2024-07-09 16:33:32 +02:00
Martin Piatka
642a072bfa dshow: Add option to force no sync source 2024-07-09 15:44:44 +02:00
Martin Piatka
bd773219b0 dshow: capabilities: Hint RGB conversion only when needed 2024-07-09 15:44:38 +02:00
Martin Piatka
08fe0e0388 v4l2: capabilities: Hint for RGB conversion only when needed 2024-07-09 15:44:38 +02:00
Martin Pulec
febff7d093 Revert "vcomp/lavc libsvtav1: do not set pred_struct=1"
This reverts commit fa8bb8ca8e.

Actually this worsened the behavior significantly by increasing the
latency in the order of 100 frames (depending on properties). This
(currently) disallows setting the bitrate, using CRF/CQP is only possible
because the FFmpeg plugin isn't able to set CBR for now.
2024-07-09 14:56:26 +02:00
Martin Pulec
c445c6fd5e vcomp/lavc: set CRF=35 for libsvtav1 by default
This will allow running libsvtav1 with pred_struct=1.
2024-07-09 14:53:53 +02:00
Martin Pulec
5281fbc4a8 vcomp/lavc: set forced-idr directly
set_forced_idr function was unnecessary - the error handling can now
do chec_av_opt_set(). Moreover it prints out the setting to std output
even when succeeded.
2024-07-09 12:30:43 +02:00
Martin Pulec
7b0c7f3224 vcomp/lavc: use check_av_opt_set for svtav1-params
it also prints value set in UG output (and handles errors as well)
2024-07-09 10:14:38 +02:00
Martin Pulec
446fac2b0d Win 10 term warn: don't print if stdout isn't tty
The terminal warning is neadlessly printed eg. in the GUI.
2024-07-08 16:45:38 +02:00
Martin Pulec
e9eceebbcc vdisp/gl: print actual GL version in verbose 2024-07-08 16:45:38 +02:00
Martin Pulec
4654300cab pixfmt_conv: fixed clang warnings
alignment + loop not vectorized
2024-07-08 16:45:38 +02:00
Martin Pulec
cf87430666 keyboard_control: improved including 2024-07-08 16:45:38 +02:00
Martin Piatka
af4090a305 capture/dshow: Add workaround for OBS virtual camera 2024-07-08 16:04:21 +02:00
Martin Pulec
e52dffac5e src/audio/playback/alsa.c: todo for get_sched_latency_ns
returns now always -1, suggesting removal
2024-07-08 10:21:01 +02:00
Martin Pulec
855c0e850f audio_decoders: ensure fec decode length
CID 464486
2024-07-08 10:21:00 +02:00
Martin Pulec
bc68c877e4 vdisp/deck: fixed CID 464484 2024-07-08 10:21:00 +02:00
Martin Pulec
3b47570f61 vcomp/rtdxt: s/DXT1/DXT1_YUV
Doesn't matter, anyways, because the value is the same for both but just
to be nicer and fix CID 464479.
2024-07-08 10:21:00 +02:00
Martin Pulec
4e4afe8496 module.c dump_tree: unlock the mutex
this fixes CID 464474

Although quite serious, this didn't exhibit problem so far, because:

1. dump_tree is not so much often called
2. the mutex is recursive (doubtfull if it won't be better if they
weren't), so that this will be tolerant to re-locking from the same thread
2024-07-08 10:21:00 +02:00
Martin Pulec
e3a2f81264 vdisp/file: fixed correctly the lock problem
Fixed correctly the problem that was incorrectly attempted by the
previous commit revert. should_exit doesn't need to be checked with the
main while loop because it is done by the inner one.
2024-07-08 10:21:00 +02:00
Martin Pulec
0484544105 Revert "display/file: fixed CID 424197/1"
This reverts commit 517bef3dd1.

The fix was incorrect, causing also new CID 464471.
2024-07-08 10:21:00 +02:00
Martin Pulec
6311f3f196 slightly reordered keyboard_control to make Coverity happy
refers to CID 464439

Actually not much important - the m_started variable is not shared across
threads but should be used only from within the main thread (start()
stop() member functions).
2024-07-08 10:20:49 +02:00
Martin Piatka
84993c4fd9 screen_win: Print error msg when library fails to load 2024-07-04 15:40:08 +02:00
Martin Pulec
54daba57e6 vcomp/cineform: fixed a crash witn unint frame
It is actually a bug of cineform, which can be also reproduced with:
`-t testcard:c=RGB:pattern=noise -c cineform`, this is a workaround.
2024-07-02 16:47:49 +02:00
Martin Pulec
54286c20bc vc_copylineRGBtoRGBA: fixes
- avoid potential out-of-bound src access (if not padded)
- fixed wrong condition for rgb shifts 16,8,0
2024-07-02 16:46:26 +02:00
Martin Pulec
87d1db3b57 added vc_copylineBGRAtoRGB + use
\+ use vc_copylineBGRAtoRGB where it should have been used (not ABGR)
- tested for both screen_osx and screen_x11
2024-07-02 16:39:38 +02:00
Martin Pulec
17dfd6eb86 vc_copylineABGRtoRGB: fixed wrong shifts
actually was for BGRA
2024-07-02 16:39:38 +02:00
Martin Pulec
0d3a15d7b1 vc_copyline{ABGR,RGBA}toRGB: shifts clarification
Replace _source_ r,g,b magic numbers and variables with new constants
indicating that the shift applies on input (not output as usual for the
rgb shifts in fnction declaration /for out RGBA only/).
2024-07-02 16:39:38 +02:00