Commit Graph

8224 Commits

Author SHA1 Message Date
Paul B Mahol 53a485cd37 avfilter/af_afftfilt: fix memory leaks on error 2020-02-09 15:49:09 +01:00
Paul B Mahol 2174a315b4 avfilter/af_afffilt: fix crash on error 2020-02-09 15:42:48 +01:00
Paul B Mahol 283e755734 avfilter/vf_xfade: add diagonal smooth transitions 2020-02-09 12:59:56 +01:00
Paul B Mahol 3f24e744ad avfilter/af_asoftclip: add support for commands 2020-02-09 10:59:20 +01:00
Paul B Mahol d842998183 avfilter/af_asoftclip: add slice threading support 2020-02-09 10:47:43 +01:00
Paul B Mahol 3750e36aa8 avfilter/vf_alphamerge: add AVClass to private context 2020-02-08 21:54:45 +01:00
Andreas Rheinhardt adea33f465 avfilter/vf_paletteuse: Fix potential double-free of AVFrame
apply_palette() would free an AVFrame given to it only via an AVFrame *
(and not via AVFrame **) in three of its four exists (namely in the
normal path and in two error paths). So upon error the caller has no way
to know whether the frame has already been freed or not;
load_apply_palette(), the only caller, opted to free the frame in this
scenario.

This commit changes this by making apply_palette not freeing the frame
at all, which is left to load_apply_palette().

Fixes Coverity issue #1452434.

Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@gmail.com>
Reviewed-by: Paul B Mahol <onemda@gmail.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2020-02-08 18:20:43 +01:00
Paul B Mahol cbd5a4536c avfilter/vf_alphamerge: add timeline support 2020-02-08 14:28:01 +01:00
Paul B Mahol a8d82cc2b8 avfilter/vf_fade: improve type option description 2020-02-08 12:40:23 +01:00
Paul B Mahol 8cab0ce5dc avfilter/vf_fade: add missing .flags for type option 2020-02-08 12:36:59 +01:00
Paul B Mahol 68416e4ba7 avfilter/vf_maskedclamp: make C version consistent with ASM one
In case of undefined behaviour.
2020-02-08 10:46:37 +01:00
Paul B Mahol 3720153ffc aviflter/vf_xfade: add pixelize transition 2020-02-07 22:35:16 +01:00
Paul B Mahol e3e5598290 avfilter/vf_xfade: add dissolve transition 2020-02-07 22:00:14 +01:00
Paul B Mahol bfdd6304fb avfilter/af_crystalizer: add slice threading support 2020-02-07 19:26:39 +01:00
Paul B Mahol ae5a435300 avfilter: add afirsrc filter 2020-02-07 17:07:30 +01:00
Paul B Mahol 7e8721e98e avfilter/af_acrossover: free all output frames on error 2020-02-07 12:13:06 +01:00
Paul B Mahol cd671ea083 avfilter/af_acrossover: add slice threading support 2020-02-07 12:13:06 +01:00
Paul B Mahol 270068b5af avfilter/af_acrossover: improve filter output
Makes sum always flat. Also faster.
2020-02-06 15:45:19 +01:00
James Almer 616e9b5cff avfilter/Makefile: add vulkan.h to the list of skipped headers
Should fix make checkheaders

Signed-off-by: James Almer <jamrial@gmail.com>
2020-02-06 10:26:31 -03:00
Paul B Mahol 2d58fa6d9e avfilter/vf_xfade: add horzopen/close transition 2020-02-05 16:53:06 +01:00
Paul B Mahol 10f4441acb avfilter/vf_xfade: add vertopen/close transition 2020-02-05 16:44:50 +01:00
Martin Storsjö 0815a22dcc vf_ssim: Fix loading doubles to float registers on i386
This fixes the tests filter-refcmp-ssim-yuv and filter-refcmp-ssim-rgb
on i386 after breaking in fcc0424c93.

Signed-off-by: Martin Storsjö <martin@martin.st>
2020-02-05 14:38:26 +02:00
Lynne a71a5d9214 lavfi: bump minor version for the Vulkan filters 2020-02-04 23:52:29 +00:00
Lynne 907ae87d6e lavfi: add an chromaber_vulkan filter
This commit adds a chromatic aberration filter for Vulkan that attempts to
emulate a lens chromatic aberration effect.
For a YUV frame it will instead shift the chroma channels, providing a
simple approximation.
2020-02-04 23:19:48 +00:00
Lynne a2db7343e0 lavfi: add an avgblur_vulkan filter
This commit adds a fast avgblur Vulkan filter.
This will reset Intel GPUs on Linux due to a known, two-year-old driver bug
(!834 on mesa's gitlab).
2020-02-04 23:19:48 +00:00
Lynne 7bb443137c lavfi: add an overlay_vulkan filter
This commit adds a basic, non-converting overlay filter for Vulkan.
2020-02-04 23:19:48 +00:00
Lynne d95c509cc6 lavfi: add an scale_vulkan filter
This commit adds a basic, non-converting Vulkan scaling filter.
2020-02-04 23:19:48 +00:00
Lynne 6fca61bbc9 lavfi: add Vulkan filtering framework
This commit adds a Vulkan filtering infrastructure for libavfilter.
It attempts to abstract as much as possible of the Vulkan API from filters.

The way the hwcontext and the framework are designed permits for parallel,
non-CPU-blocking filtering throughout, with the exception of up/downloading
and mapping.
2020-02-04 23:19:48 +00:00
Philip Langdale 88d2ccbe93 lavfi/vf_hwupload: Add support for HW -> HW transfers
As we find ourselves wanting a way to transfer frames between
HW devices (or more realistically, between APIs on the same device),
it's desirable to have a way to describe the relationship. While
we could imagine introducing a `hwtransfer` filter, there is
almost no difference from `hwupload`. The main new feature we need
is a way to specify the target device. Having a single device
for the filter chain is obviously insufficient if we're dealing
with two devices.

So let's add a way to specify the upload target device, and if none
is specified, continue with the existing behaviour.

We must also correctly preserve the sw_format on such a transfer.
2020-02-04 23:19:48 +00:00
Paul B Mahol fcc0424c93 avfilter/vf_ssim: improve precision
Use doubles for accumulating floats.
2020-02-04 18:28:04 +01:00
Paul B Mahol efee86fafa avfilter/vf_xfade: add circleopen & circleclose transition 2020-02-04 10:39:02 +01:00
Paul B Mahol c4e29d0ba3 avfilter/vf_xfade_opencl: move passthrough code before eof check 2020-02-03 09:40:46 +01:00
Paul B Mahol 6d5e9ed67c avfilter/vf_xfade: move passthrough code before eof check 2020-02-03 09:36:52 +01:00
Paul B Mahol cd823dadf9 avfilter: add xfade opencl filter 2020-02-02 14:08:56 +01:00
Paul B Mahol e5e7289ea8 avfilter/vf_xfade: remove unused header 2020-02-01 22:06:11 +01:00
Paul B Mahol 5c9a4ff8c1 avfilter/vf_psnr: fix logic failure when comparing time bases 2020-02-01 21:10:25 +01:00
Paul B Mahol 89eee09739 avfilter/vf_ssim: fix logic failure when comparing time bases 2020-02-01 21:09:32 +01:00
Marton Balint c044ac2071 avfilter/vf_geq: use per-thread AVExpr for expression evaluation
There was no consensus about separating AVExprState from AVExpr so here is a
minimal patch using the existing AVExpr to fix ticket #7528.

Signed-off-by: Marton Balint <cus@passwd.hu>
2020-01-31 22:47:49 +01:00
Paul B Mahol 53b4128ea0 avfilter/vf_xfade: add smooth transitions 2020-01-31 13:14:13 +01:00
Marton Balint 62d92a878d avfilter/vf_drawtext: do not overread text if the last UTF8 sequence is invalid
Signed-off-by: Marton Balint <cus@passwd.hu>
2020-01-31 00:15:13 +01:00
Marton Balint 5ac8389cfa avfilter/vf_drawtext: use replacement chars for invalid UTF8 sequences
continue is explicitly disallowed for GET_UTF8, so let's fix that as well.
Fixes crash with invalid UTF8 sequences.

Signed-off-by: Marton Balint <cus@passwd.hu>
2020-01-31 00:15:13 +01:00
Paul B Mahol 0a275fec62 avfilter/vf_xfade: add radial transition 2020-01-30 17:29:31 +01:00
Paul B Mahol 863accbefa avfilter: add xfade filter 2020-01-30 16:35:33 +01:00
Marton Balint 47d5d0cc74 avfilter/vf_geq: fix multiple assignments of ptr in slice_geq_filter
Fixes Coverity CID 1427183.

Signed-off-by: Marton Balint <cus@passwd.hu>
2020-01-29 19:53:43 +01:00
Andreas Rheinhardt ab39f0d841 avfilter/asrc_sinc: Don't allocate arrays separately
Besides the obvious advantages this also fixes a potential memleak:
If only one of the arrays had been successfully allocated, the other
would leak. This also fixes Coverity issues #1440386 and #1440387.

Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@gmail.com>
Reviewed-by: Paul B Mahol <onemda@gmail.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2020-01-28 17:18:27 +01:00
Paul B Mahol 32ea6ffb16 avfilter/vf_colorconstancy: fix memory leak on error
Also remove unneeded log message while here.
2020-01-27 16:58:50 +01:00
Michael Niedermayer dfc4714886 avfilter/vf_find_rect: Remove assert
A score of 0 is possible
Fixes: Ticket8500

Reviewed-by: Paul B Mahol <onemda@gmail.com>
Reviewed-by: Andreas Rheinhardt <andreas.rheinhardt@gmail.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2020-01-27 12:01:42 +01:00
Michael Niedermayer 6ff2474e02 avfilter/vf_find_rect: Increase worst case score
score could be 1.0 which lead to uninitialized values

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2020-01-27 12:01:42 +01:00
Gyan Doshi 6e6b34917e avfilter/scale: don't fail for circular expressions
Due to conditional expressions, it is possible for them to be resolved
successfully. A warning is still printed.
2020-01-26 21:06:53 +05:30
Paul B Mahol ecd95858d4 avfilter/vf_tonemap_opencl: fix long filter description 2020-01-26 14:51:52 +01:00