summaryrefslogtreecommitdiff
path: root/libavfilter
Commit message (Collapse)AuthorAge
* avfilter/vf_cropdetect: Remove set-but-unused variableAndreas Rheinhardt2022-07-30
| | | | Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
* lavfi/vf_cropdetect: Reindent after last commitThilo Borgmann2022-07-30
|
* lavfi/cropdetect: Add new mode to detect crop-area based on motion vectors ↵Thilo Borgmann2022-07-30
| | | | | | and edges This filter allows crop detection even if the video is embedded in non-black areas.
* lavfi/edge_common: Templatify ff_gaussian_blur and ff_sobelThilo Borgmann2022-07-30
|
* fflcms2: move to libavcodecNiklas Haas2022-07-30
| | | | | | | | | | | | | | | We will need this helper inside libavcodec in the future, so move it there, leaving behind an #include to the raw source file in its old location in libvfilter. This approach is inspired by the handling of vulkan.c, and avoids us needing to expose any of it publicly (or semi-publicly) in e.g. libavutil, thus avoiding any ABI headaches. It's debatable whether the actual code belongs in libavcodec or libavfilter, but I decided to put it into libavcodec because it conceptually deals with encoding and decoding ICC profiles, and will be used to decode embedded ICC profiles in image files. Signed-off-by: Niklas Haas <git@haasn.dev>
* qsv: Update ffmpeg qsv_errors to recognize GPU hang and other statusesDmitry Rogozhkin2022-07-29
| | | | | | | | | | | | | | | | | | GPU hang is one of the most typical errors on Intel GPUs in case something goes wrong. It's important to recognize it explicitly for easier bugs triage. Also, this error code can be used to trigger GPU recovery path in self-written applications. There were 2 other statuses which MediaSDK can ppotentially return, MFX_ERR_NONE_PARTIAL_OUTPUT and MFX_ERR_REALLOC_SURFACE. Adding them as well. v2: move MFX_ERR_NONE_PARTIAL_OUTPUT next to MFX_WRN_* (Haihao) Signed-off-by: Hon Wai Chow <hon.wai.chow@intel.com> Signed-off-by: Dmitry Rogozhkin <dmitry.v.rogozhkin@intel.com> Signed-off-by: Haihao Xiang <haihao.xiang@intel.com>
* avfilter/vf_zscale: Add smpte240m transfer option and fix matrix option typoMattias Wadman2022-07-28
| | | | Signed-off-by: Anton Khirnov <anton@khirnov.net>
* lavf/dnn: dump OpenVINO model input/output names to OVMdel struct.Ting Fu2022-07-24
| | | | | | | Dump all input/output names to OVModel struct. In case other funcs use them for reporting errors or locating issues. Signed-off-by: Ting Fu <ting.fu@intel.com>
* lavf/sr: fix the segmentation fault caused by incorrect input frame free.Ting Fu2022-07-22
| | | | | | | This issue would cause segmetaion fault when running srcnn model with sr filter by TensorFlow backend. This filter would free the frame incorectly. Signed-off-by: Ting Fu <ting.fu@intel.com>
* libavfilter/vf_overlay_qsv: Use format of first input to set output format ↵Wenbin Chen2022-07-20
| | | | | | | | | | | | | | | for overlay_qsv overlay_qsv hard coded to use nv12 as output format. Now use the format of the first input to set output format. For detailed information of supported format on different platform, please see the "composition" rows in "Video Processing Features" at below link: https://www.intel.com/content/www/us/en/develop/documentation/media-capabilities-of-intel-hardware/top.html Signed-off-by: Wenbin Chen <wenbin.chen@intel.com> Signed-off-by: Haihao Xiang <haihao.xiang@intel.com>
* avfilter/vsrc_ddagrab: check for existence of DPI_AWARENESS_CONTEXTTimo Rothenpieler2022-07-19
| | | | | | Apparently some (broken?) Windows SDK versions define IDXGIOutput5 but not DPI_AWARENESS_CONTEXT. So we need to explicitly check for its existence.
* lavfi/vf_showinfo: print frame durationsAnton Khirnov2022-07-19
|
* lavfi: use AVFrame.duration instead of AVFrame.pkt_durationAnton Khirnov2022-07-19
|
* avfilter/vsrc_ddagrab: dynamically load SetThreadDpiAwarenessContextTimo Rothenpieler2022-07-19
| | | | | It's a Windows 10 only function, and its presence alone prevents the binary from loading on older Windows versions.
* avfilter/vsrc_ddagrab: fix checkheaders errorTimo Rothenpieler2022-07-18
|
* avfilter: add vsrc_ddagrabTimo Rothenpieler2022-07-18
|
* Bump versions after 5.1 branchMichael Niedermayer2022-07-13
| | | | Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* Bump Versions for 5.1 branchMichael Niedermayer2022-07-13
| | | | Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* avfilter/vf_signature: Fix integer overflow in filter_frame()Michael Niedermayer2022-07-12
| | | | | | | | Fixes: CID1403233 The second of the 2 changes may be unneeded but will help coverity Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* avfilter/vf_xfade: fix zx and zy comparison for slide*George Floarea2022-07-12
| | | | | | | | | This resulted in the wrong column/row being chosen. This can be seen best when using xfade on streams with transparency. For example: in case of a slideleft transition, the first column from the first input will overwrite the first column of the second stream throught the transition.
* avfilter/vf_zscale: enable AVX512 zimg functionsMarton Balint2022-07-10
| | | | Signed-off-by: Marton Balint <cus@passwd.hu>
* avfilter/vf_zscale: simplify and fix slice_params calculationsMarton Balint2022-07-10
| | | | | | | | | Do not insist on a fixed slice height, because that can still cause overflows in corner cases as described in this comment: https://github.com/sekrit-twc/zimg/issues/177#issuecomment-1157734233 Signed-off-by: Marton Balint <cus@passwd.hu>
* avfilter/vf_zscale: remove some unneeded initializationsMarton Balint2022-07-10
| | | | Signed-off-by: Marton Balint <cus@passwd.hu>
* avfilter: add chromakey_cuda filterMohamed Khaled Mohamed2022-07-10
| | | | | | | | | | | | GSoC'22 libavfilter/vf_chromakey_cuda.cu:the CUDA kernel for the filter libavfilter/vf_chromakey_cuda.c: the C side that calls the kernel and gets user input libavfilter/allfilters.c: added the filter to it libavfilter/Makefile: added the filter to it cuda/cuda_runtime.h: added two math CUDA functions that are used in the filter Signed-off-by: Timo Rothenpieler <timo@rothenpieler.org>
* avfilter/vf_xfade: add two more transitionsPaul B Mahol2022-07-09
|
* avfilter: add remap opencl filterPaul B Mahol2022-07-07
|
* avfilter/xstack: Add support for fixed size gridVignesh Venkatasubramanian2022-07-04
| | | | | | | | | | | | Add a short hand parameter for making a fixed size grid. The existing xstack layout parameter syntax gets tedious if all one wants is a matrix like grid of the input streams. Add a grid option to the xstack filter that simplifies this use case by simply specifying the number of rows and columns instead of specific x/y co-ordinate for each stream. Also updating the filter documentation to explain the new option. Signed-off-by: Vignesh Venkatasubramanian <vigneshv@google.com>
* avfilter/vf_atadenoise: Remove unused-but-set variablesAndreas Rheinhardt2022-07-03
| | | | Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
* avfilter/Makefile: always make colorspace.oGyan Doshi2022-06-25
| | | | | | | Unbreaks libavfilter builds when configured with a subset of filters. drawutils added ff_draw_init2 in 6c3a82f043 which calls functions defined in colorspace.c. So the latter needs to be built alongside the former.
* avfilter/vf_gblur: properly round outputPaul B Mahol2022-06-23
|
* avfilter/x86/vf_bwdif: Remove obsolete MMXEXT functionsAndreas Rheinhardt2022-06-22
| | | | | | | | | The only system which benefit from these are truely ancient 32bit x86s as all other systems use at least the SSE2 versions (this includes all x64 cpus (which is why this code is restricted to x86-32)). Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
* avfilter/x86/vf_idet: Remove obsolete MMX(EXT) functionsAndreas Rheinhardt2022-06-22
| | | | | | | | | The only system which benefit from these are truely ancient 32bit x86s as all other systems use at least the SSE2 versions (this includes all x64 cpus (which is why this code is restricted to x86-32)). Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
* avfilter/x86/vf_yadif: Remove obsolete MMXEXT functionsAndreas Rheinhardt2022-06-22
| | | | | | | | | The only system which benefit from these are truely ancient 32bit x86s as all other systems use at least the SSE2 versions (this includes all x64 cpus (which is why this code is restricted to x86-32)). Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
* avfilter/x86/vf_eq_init: Remove obsolete MMXEXT functionAndreas Rheinhardt2022-06-22
| | | | | | | | | | | x64 always has MMX, MMXEXT, SSE and SSE2 and this means that some functions for MMX, MMXEXT and 3dnow are always overridden by other functions (unless one e.g. explicitly disables SSE2) for x64. So given that the only systems that benefit from process_mmxext are truely ancient 32bit x86s it is removed. Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
* avfilter/x86/vf_noise: Remove obsolete MMX functionAndreas Rheinhardt2022-06-22
| | | | | | | | | | | x64 always has MMX, MMXEXT, SSE and SSE2 and this means that some functions for MMX, MMXEXT and 3dnow are always overridden by other functions (unless one e.g. explicitly disables SSE2) for x64. So given that the only systems that benefit from line_noise_mmx are truely ancient 32bit x86s it is removed. Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
* avfilter/vf_estdif: tweak ecost optionPaul B Mahol2022-06-21
|
* libavfilter/vf_frei0r.c: Use UTF-8 version of getenv()Nil Admirari2022-06-21
| | | | Signed-off-by: Martin Storsjö <martin@martin.st>
* lavfi/drawutils: improve colorspace supportrcombs2022-06-19
| | | | | | | | | | | | | | | | | | | | | - Introduce ff_draw_init2, which takes explicit colorspace and range args - Use lavu/csp and lavfi/colorspace for conversion, rather than the lavu/colorspace.h macros - Use the passed-in colorspace when performing RGB->YUV conversions The upshot of this is: - Support for YUV spaces other than BT601 - Better rounding for all conversions - Particular rounding improvements in >8-bit formats, which previously used simple left-shifts - Support for limited-range RGB - Support for full-range YUV in non-J pixfmts Due to the rounding improvements, this results in a large number of minor changes to FATE tests. Signed-off-by: rcombs <rcombs@rcombs.me>
* lavfi/colorspace: add ff_matrix_mul_3x3_vecrcombs2022-06-19
| | | | Signed-off-by: rcombs <rcombs@rcombs.me>
* avfilter/vf_zscale: dissallow too small slicesPaul B Mahol2022-06-16
| | | | Also change rounding type when calculating slices size.
* avfilter: add virtualbass filterPaul B Mahol2022-06-16
|
* all: Replace if (ARCH_FOO) checks by #if ARCH_FOOAndreas Rheinhardt2022-06-15
| | | | | | | | | | | | | | | | | | This is more spec-compliant because it does not rely on dead-code elimination by the compiler. Especially MSVC has problems with this, as can be seen in https://ffmpeg.org/pipermail/ffmpeg-devel/2022-May/296373.html or https://ffmpeg.org/pipermail/ffmpeg-devel/2022-May/297022.html This commit does not eliminate every instance where we rely on dead code elimination: It only tackles branching to the initialization of arch-specific dsp code, not e.g. all uses of CONFIG_ and HAVE_ checks. But maybe it is already enough to compile FFmpeg with MSVC with whole-programm-optimizations enabled (if one does not disable too many components). Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
* avfilter/showinfo: refactor to use avutil/uuidPierre-Anthony Lemieux2022-06-12
|
* lavfi/blockdetect: Reindent after last commitThilo Borgmann2022-06-06
|
* lavfi/blockdetect: Fix possible div by 0Thilo Borgmann2022-06-06
| | | | Found-by Covererity, CID 1504568, 1504569
* lavfi/vf_tonemap_opencl: fix buildrcombs2022-06-01
| | | | This was broken in d42b410e05ad1c4d6e74aa981b4a4423103291fb.
* lavfi/vf_scale_vulkan: fix buildrcombs2022-06-01
| | | | This was broken in d42b410e05ad1c4d6e74aa981b4a4423103291fb.
* lavfi/blockdetect: Remove nop init() functionThilo Borgmann2022-06-01
|
* avutil/csp: create public API for colorspace structsLeo Izen2022-06-01
| | | | | | | | | | This commit moves some of the functionality from avfilter/colorspace into avutil/csp and exposes it as a public API so it can be used by libavcodec and/or libavformat. It also converts those structs from double values to AVRational to make regression testing easier and more consistent. Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
* avfilter/af_biquads: refactor some optionsPaul B Mahol2022-05-29
|