summaryrefslogtreecommitdiff
path: root/libavfilter/allfilters.c
Commit message (Collapse)AuthorAge
* avfilter: add vsrc_ddagrabTimo Rothenpieler2022-07-18
|
* 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: add remap opencl filterPaul B Mahol2022-07-07
|
* avfilter: add virtualbass filterPaul B Mahol2022-06-16
|
* avfilter: add tiltshelf audio filterPaul B Mahol2022-05-29
|
* avfilter: Add blockdetect filterThilo Borgmann2022-05-24
|
* avfilter: add multiply video filterPaul B Mahol2022-05-05
|
* lavfi: Add blurdetect filterThilo Borgmann2022-04-25
|
* lavfi: add vf_iccdetect for parsing ICC profilesNiklas Haas2022-04-23
| | | | | | | | | | | | | | | This filter is designed to parse embedded ICC profiles and attempt extracting colorspace tags from them, updating the AVFrame metadata accordingly. This is intentionally made a separate filter, rather than being part of libavcodec itself, so that it's an opt-in behavior for the time being. This also gives the user more flexibility to e.g. first attach an ICC profile and then also set the colorspace tags from it. This makes #9673 possible, though not automatic. Signed-off-by: Niklas Haas <git@haasn.dev>
* lavfi: add vf_iccgen for generating ICC profilesNiklas Haas2022-04-23
| | | | | | | | | This filter is designed to specifically cover the task of generating ICC profiles (and attaching them to output frames) on demand. Other tasks, such as ICC profile loading/stripping, or ICC profile application, are better left to separate filters (or included into e.g. vf_setparams). Signed-off-by: Niklas Haas <git@haasn.dev>
* avfilter: add colorchart video filterPaul B Mahol2022-04-23
|
* avfilter: add colormap video filterPaul B Mahol2022-04-23
|
* avfilter: add pixelize video filterPaul B Mahol2022-04-14
|
* avfilter: add feedback video filterPaul B Mahol2022-04-14
|
* avfilter: add Audio Video Sync Test filterPaul B Mahol2022-04-12
| | | | Signed-off-by: Paul B Mahol <onemda@gmail.com>
* lavfilter: Add SITI filterBoris Baracaldo2022-04-01
| | | | | | Calculate Spatial Info (SI) and Temporal Info (TI) scores for a video, as defined in ITU-T P.910: Subjective video quality assessment methods for multimedia applications.
* avfilter: add dialogue enhance audio filterPaul B Mahol2022-02-12
|
* avfilter: add overlay vaapi filterXinpeng Sun2022-01-17
| | | | | | | | | | | | | | | | | | | | | | | Overlay one video on the top of another. It takes two inputs and has one output. The first input is the "main" video on which the second input is overlaid. This filter requires same memory layout for all the inputs. An example command to use this filter to overlay overlay.mp4 at the top-left corner of the main.mp4: ffmpeg -init_hw_device vaapi=foo:/dev/dri/renderD128 \ -hwaccel vaapi -hwaccel_device foo -hwaccel_output_format vaapi -c:v h264 -i main.mp4 \ -hwaccel vaapi -hwaccel_device foo -hwaccel_output_format vaapi -c:v h264 -i overlay.mp4 \ -filter_complex "[0:v][1:v]overlay_vaapi=0:0:100:100:0.5[t1]" \ -map "[t1]" -an -c:v h264_vaapi -y out_vaapi.mp4 Signed-off-by: U. Artie Eoff <ullysses.a.eoff@intel.com> Signed-off-by: Xinpeng Sun <xinpeng.sun@intel.com> Signed-off-by: Zachary Zhou <zachary.zhou@intel.com> Signed-off-by: Fei Wang <fei.w.wang@intel.com> Signed-off-by: Haihao Xiang <haihao.xiang@intel.com>
* avfilter: add a blend_vulkan filterWu Jianhua2022-01-05
| | | | | | | | | | | | | | | | | | | | | This commit adds a blend_vulkan filter and a normal blend mode, and reserves support for introducing the blend modes in the future. Use the commands below to test: (href: https://trac.ffmpeg.org/wiki/Blend) I. make an image for test ffmpeg -f lavfi -i color=s=256x256,geq=r='H-1-Y':g='H-1-Y':b='H-1-Y' -frames 1 \ -y -pix_fmt yuv420p test.jpg II. blend in sw ffmpeg -i test.jpg -vf "split[a][b];[b]transpose[b];[a][b]blend=all_mode=normal,\ pseudocolor=preset=turbo" -y normal_sw.jpg III. blend in vulkan ffmpeg -init_hw_device vulkan -i test.jpg -vf "split[a][b];[b]transpose[b];\ [a]hwupload[a];[b]hwupload[b];[a][b]blend_vulkan=all_mode=normal,hwdownload,\ format=yuv420p,pseudocolor=preset=turbo" -y normal_vulkan.jpg Signed-off-by: Wu Jianhua <jianhua.wu@intel.com>
* configure: Add new mpegvideodec CONFIG_EXTRAAndreas Rheinhardt2022-01-04
| | | | | | | | | | | | This allows to remove the spurious dependencies of mpegvideo encoders on error_resilience; some other components that do not use mpegvideo to its fullest turned out to not need it either. Adding a new CONFIG_EXTRA needs a reconfigure to take effect. In order to force this a few unnecessary headers from lavfi/allfilters.c have been removed. Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
* avfilter: add anlmf filterPaul B Mahol2021-12-25
|
* avfilter: add vf_yadif_videotoolboxAman Karmani2021-12-18
| | | | | | | | | | | | | | | | | | | | | | | | | | deinterlaces CVPixelBuffers, i.e. AV_PIX_FMT_VIDEOTOOLBOX frames for example, an interlaced mpeg2 video can be decoded by avcodec, uploaded into a CVPixelBuffer, deinterlaced by Metal, and then encoded to h264 by VideoToolbox as follows: ffmpeg \ -init_hw_device videotoolbox \ -i interlaced.ts \ -vf hwupload,yadif_videotoolbox \ -c:v h264_videotoolbox \ -b:v 2000k \ -c:a copy \ -y progressive.ts (note that uploading AVFrame into CVPixelBuffer via hwupload requires 504c60660d3194758823ddd45ceddb86e35d806f) this work is sponsored by Fancy Bits LLC Reviewed-by: Ridley Combs <rcombs@rcombs.me> Reviewed-by: Philip Langdale <philipl@overt.org> Signed-off-by: Aman Karmani <aman@tmm1.net>
* avfilter: add audio dynamic equalizer filterPaul B Mahol2021-12-12
|
* avfilter: add a transpose_vulkan filterWu Jianhua2021-12-10
| | | | | | | | The following command is on how to apply transpose_vulkan filter: ffmpeg -init_hw_device vulkan -i input.264 -vf \ hwupload=extra_hw_frames=16,transpose_vulkan,hwdownload,format=yuv420p output.264 Signed-off-by: Wu Jianhua <jianhua.wu@intel.com>
* lavfi/allfilters: move vf_chromaber_vulkan to video sectionAnton Khirnov2021-12-04
|
* avfilter: add a flip_vulkan filterWu Jianhua2021-12-02
| | | | | | | | This filter flips the input video both horizontally and vertically in one compute pipeline, and it's no need to use two pipelines for hflip_vulkan,vflip_vulkan anymore. Signed-off-by: Wu Jianhua <jianhua.wu@intel.com>
* avfilter: add audio dynamic smooth filterPaul B Mahol2021-12-02
|
* avfilter: add audio spectral stats filterPaul B Mahol2021-12-02
|
* avfilter: add a vflip_vulkan filterWu Jianhua2021-11-19
| | | | | | | | The following command is on how to apply vflip_vulkan filter: ffmpeg -init_hw_device vulkan -i input.264 -vf hwupload=extra_hw_frames=16,vflip_vulkan,hwdownload,format=yuv420p output.264 Signed-off-by: Wu Jianhua <jianhua.wu@intel.com>
* avfilter: add a hflip_vulkan filterWu Jianhua2021-11-19
| | | | | | | | The following command is on how to apply hflip_vulkan filter: ffmpeg -init_hw_device vulkan -i input.264 -vf hwupload=extra_hw_frames=16,hflip_vulkan,hwdownload,format=yuv420p output.264 Signed-off-by: Wu Jianhua <jianhua.wu@intel.com>
* avfilter: add colorspectrum source video filterPaul B Mahol2021-11-16
|
* libavfilter: add a gblur_vulkan filterWu Jianhua2021-11-16
| | | | | | | | | | | | This commit adds a powerful and customizable gblur Vulkan filter, which provides a maximum 127x127 kernel size of Gaussian Filter. The size could be adjusted by requirements on quality or performance. The following command is on how to apply gblur_vulkan filter: ffmpeg -init_hw_device vulkan -i input.264 -vf hwupload=extra_hw_frames=16,gblur_vulkan,hwdownload,format=yuv420p output.264 Signed-off-by: Wu Jianhua <jianhua.wu@intel.com>
* lavfi: add a libplacebo filterNiklas Haas2021-11-12
| | | | | | | | | | | | | | | | | | | | | | | | This filter conceptually maps the libplacebo `pl_renderer` API into libavfilter, which is a high-level image rendering API designed to work with an RGB pipeline internally. As such, there's no way to avoid e.g. chroma interpolation with this filter, although new versions of libplacebo support outputting back to subsampled YCbCr after processing is done. That being said, `pl_renderer` supports automatic integration of the majority of libplacebo's shaders, ranging from debanding to tone mapping, and also supports loading custom mpv-style user shaders, making this API a natural candidate for getting a lot of functionality out of relatively little code. In the future, I may approach this problem either by rewriting this filter to also support a non-renderer codepath, or by upgrading libplacebo's renderer to support a full YCbCr pipeline. This unfortunately requires a very new version of libplacebo (unreleased at time of writing) for timeline semaphore support. But the amount of boilerplate needed to hack in backwards compatibility would have been very unreasonable.
* avfilter/scale_npp: add scale2ref_npp filterRoman Arzumanyan2021-11-03
| | | | Signed-off-by: Timo Rothenpieler <timo@rothenpieler.org>
* avfilter: add huesaturation filterPaul B Mahol2021-10-29
|
* avfilter: add varblur video filterPaul B Mahol2021-10-19
|
* avfilter: add xcorrelate video filterPaul B Mahol2021-10-13
|
* avfilter: add limitdiff video filterPaul B Mahol2021-10-13
|
* avfilter: add audio signal to distortion ratio filterPaul B Mahol2021-10-09
|
* avfilter/sharpen_npp: add sharpening video filter with borders controlRoman Arzumanyan2021-10-07
| | | | Signed-off-by: Timo Rothenpieler <timo@rothenpieler.org>
* avfilter: add (a)latency filtersPaul B Mahol2021-10-02
|
* avfilter: add morpho filterPaul B Mahol2021-09-28
|
* avfilter: add audio psychoacoustic clipperPaul B Mahol2021-09-11
|
* avfilter/vf_convolution: add scharr operatorPaul B Mahol2021-09-10
|
* avfilter: add grayworld video filterPaul Buxton2021-08-29
| | | | | | | | Implements a gray world color correction algorithm using a log scale LAB colorspace. Signed-off-by: Paul Buxton <paulbuxton.mail@googlemail.com> Signed-off-by: Paul B Mahol <onemda@gmail.com>
* avfilter: add atilt filterPaul B Mahol2021-08-28
|
* avfilter: add adecorrelate filterPaul B Mahol2021-08-28
|
* avfilter: add hsvkey and hsvhold video filtersPaul B Mahol2021-08-25
|
* avfilter: add (a)segment filtersPaul B Mahol2021-08-16
|
* avfilter: add afwtdn filterPaul B Mahol2021-07-24
|