aboutsummaryrefslogtreecommitdiffstats
path: root/libavfilter/allfilters.c
Commit message (Collapse)AuthorAgeFilesLines
...
* avfilter: Remove avfilter_next/avfilter_register APIAndreas Rheinhardt2021-04-271-38/+0
| | | | | | | Deprecated in 8f1382f80e0d4184c54c14afdda6482f050fbba7. Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@gmail.com> Signed-off-by: James Almer <jamrial@gmail.com>
* lavfi: add filter dnn_detect for object detectionGuo, Yejun2021-04-171-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Below are the example steps to do object detection: 1. download and install l_openvino_toolkit_p_2021.1.110.tgz from https://software.intel.com/content/www/us/en/develop/tools/openvino-toolkit/download.html or, we can get source code (tag 2021.1), build and install. 2. export LD_LIBRARY_PATH with openvino settings, for example: .../deployment_tools/inference_engine/lib/intel64/:.../deployment_tools/inference_engine/external/tbb/lib/ 3. rebuild ffmpeg from source code with configure option: --enable-libopenvino --extra-cflags='-I.../deployment_tools/inference_engine/include/' --extra-ldflags='-L.../deployment_tools/inference_engine/lib/intel64' 4. download model files and test image wget https://github.com/guoyejun/ffmpeg_dnn/raw/main/models/openvino/2021.1/face-detection-adas-0001.bin wget https://github.com/guoyejun/ffmpeg_dnn/raw/main/models/openvino/2021.1/face-detection-adas-0001.xml wget https://github.com/guoyejun/ffmpeg_dnn/raw/main/models/openvino/2021.1/face-detection-adas-0001.label wget https://github.com/guoyejun/ffmpeg_dnn/raw/main/images/cici.jpg 5. run ffmpeg with: ./ffmpeg -i cici.jpg -vf dnn_detect=dnn_backend=openvino:model=face-detection-adas-0001.xml:input=data:output=detection_out:confidence=0.6:labels=face-detection-adas-0001.label,showinfo -f null - We'll see the detect result as below: [Parsed_showinfo_1 @ 0x560c21ecbe40] side data - detection bounding boxes: [Parsed_showinfo_1 @ 0x560c21ecbe40] source: face-detection-adas-0001.xml [Parsed_showinfo_1 @ 0x560c21ecbe40] index: 0, region: (1005, 813) -> (1086, 905), label: face, confidence: 10000/10000. [Parsed_showinfo_1 @ 0x560c21ecbe40] index: 1, region: (888, 839) -> (967, 926), label: face, confidence: 6917/10000. There are two faces detected with confidence 100% and 69.17%. Signed-off-by: Guo, Yejun <yejun.guo@intel.com>
* avfilter: add msad video filterPaul B Mahol2021-03-061-0/+1
|
* avfilter: add identity video filterPaul B Mahol2021-03-061-0/+1
|
* avfilter: add vif filterAshish Singh2021-02-161-0/+1
| | | | | | | This is Visual Information Fidelity (VIF) filter and one of the component filters of VMAF. It outputs the average VIF score over all frames. Signed-off-by: Ashish Singh <ashk43712@gmail.com>
* avfilter: add monochrome video filterPaul B Mahol2021-02-121-0/+1
|
* avfilter: add exposure video filterPaul B Mahol2021-02-101-0/+1
|
* avfilter: add aexciter audio filterPaul B Mahol2021-02-101-0/+1
|
* avfilter: add colorize filterPaul B Mahol2021-02-071-0/+1
|
* avfilter: add colorcorrect filterPaul B Mahol2021-02-031-0/+1
|
* avfilter: add colorcontrast filterPaul B Mahol2021-02-021-0/+1
|
* avfilter: add colortemperature filterPaul B Mahol2021-01-271-0/+1
|
* avfilter: add kirsch video filterPaul B Mahol2021-01-271-0/+1
|
* avfilter: add shear video filterPaul B Mahol2021-01-261-0/+1
|
* avfilter: add epx pixel art scalerPaul B Mahol2021-01-251-0/+1
|
* avfilter: add estdif video filterPaul B Mahol2021-01-161-0/+1
|
* avfilter: add temporal midway equalizer filterPaul B Mahol2021-01-011-0/+1
|
* avfilter: add shufflepixels video filterPaul B Mahol2020-12-201-0/+1
|
* avfilter: add asuperpass and asuperstop filterPaul B Mahol2020-12-111-0/+2
|
* avfilter: add asubcut filterPaul B Mahol2020-12-051-0/+1
|
* avfilter: add asupercut filterPaul B Mahol2020-11-261-0/+1
|
* avfilter: add speechnorm filterPaul B Mahol2020-11-151-0/+1
|
* avfilter: add adenorm filterPaul B Mahol2020-11-051-0/+1
|
* avfilter: add audio frequency and phase shift filtersPaul B Mahol2020-10-201-0/+2
|
* avfilter: remove useless castZhao Zhili2020-08-231-1/+1
| | | | Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@gmail.com>
* avfilter: add chromanr video filterPaul B Mahol2020-07-081-0/+1
|
* avfilter: add dblur video filterPaul B Mahol2020-05-301-0/+1
|
* lavfi: add untile filter.Nicolas George2020-05-231-0/+1
|
* avfilter: add gradients source video filterPaul B Mahol2020-05-191-0/+1
|
* avfilter/vf_scdet: add filter to detect scene changeLimin Wang2020-05-141-0/+1
| | | | | Reviewed-by: Paul B Mahol <onemda@gmail.com> Signed-off-by: Limin Wang <lance.lmwang@gmail.com>
* avfilter: add asubboost filterPaul B Mahol2020-04-301-0/+1
|
* avfilter: add maskedthreshold filterPaul B Mahol2020-04-181-0/+1
|
* avfilter: add tmedian filterPaul B Mahol2020-04-181-0/+1
|
* avfilter: add vf_overlay_cudaYaroslav Pogrebnyak2020-03-281-0/+1
| | | | Signed-off-by: Timo Rothenpieler <timo@rothenpieler.org>
* avfilter: add Contrast Adaptive Sharpen video filterPaul B Mahol2020-02-241-0/+1
|
* avfilter: add pad opencl filterPaul B Mahol2020-02-141-0/+1
|
* avfilter: add afirsrc filterPaul B Mahol2020-02-071-0/+1
|
* lavfi: add an chromaber_vulkan filterLynne2020-02-041-0/+1
| | | | | | | 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.
* lavfi: add an avgblur_vulkan filterLynne2020-02-041-0/+1
| | | | | | 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).
* lavfi: add an overlay_vulkan filterLynne2020-02-041-0/+1
| | | | This commit adds a basic, non-converting overlay filter for Vulkan.
* lavfi: add an scale_vulkan filterLynne2020-02-041-0/+1
| | | | This commit adds a basic, non-converting Vulkan scaling filter.
* avfilter: add xfade opencl filterPaul B Mahol2020-02-021-0/+1
|
* avfilter: add xfade filterPaul B Mahol2020-01-301-0/+1
|
* avfilter: add freezeframes video filterPaul B Mahol2020-01-111-0/+1
|
* avfilter: add thistogram video filterPaul B Mahol2019-12-291-0/+1
|
* avfilter: Add tonemap vaapi filter for H2SXinpeng Sun2019-12-171-0/+1
| | | | | | | | | | | | | It performs HDR(High Dynamic Range) to SDR(Standard Dynamic Range) conversion with tone-mapping. It only supports HDR10 as input temporarily. An example command to use this filter with vaapi codecs: FFMPEG -hwaccel vaapi -vaapi_device /dev/dri/renderD128 -hwaccel_output_format vaapi \ -i INPUT -vf 'tonemap_vaapi=format=p010' -c:v hevc_vaapi -profile 2 OUTPUT Signed-off-by: Xinpeng Sun <xinpeng.sun@intel.com> Signed-off-by: Zachary Zhou <zachary.zhou@intel.com> Signed-off-by: Ruiling Song <ruiling.song@intel.com>
* avfilter/vf_yaepblur: add yaepblur filterleozhang2019-12-061-0/+1
| | | | | Signed-off-by: leozhang <leozhang@qiyi.com> Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* avfilter: add axcorrelate filterPaul B Mahol2019-11-231-0/+1
|
* avfilter/vf_dnn_processing: add a generic filter for image proccessing with ↵Guo, Yejun2019-11-071-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | dnn networks This filter accepts all the dnn networks which do image processing. Currently, frame with formats rgb24 and bgr24 are supported. Other formats such as gray and YUV will be supported next. The dnn network can accept data in float32 or uint8 format. And the dnn network can change frame size. The following is a python script to halve the value of the first channel of the pixel. It demos how to setup and execute dnn model with python+tensorflow. It also generates .pb file which will be used by ffmpeg. import tensorflow as tf import numpy as np import imageio in_img = imageio.imread('in.bmp') in_img = in_img.astype(np.float32)/255.0 in_data = in_img[np.newaxis, :] filter_data = np.array([0.5, 0, 0, 0, 1., 0, 0, 0, 1.]).reshape(1,1,3,3).astype(np.float32) filter = tf.Variable(filter_data) x = tf.placeholder(tf.float32, shape=[1, None, None, 3], name='dnn_in') y = tf.nn.conv2d(x, filter, strides=[1, 1, 1, 1], padding='VALID', name='dnn_out') sess=tf.Session() sess.run(tf.global_variables_initializer()) output = sess.run(y, feed_dict={x: in_data}) graph_def = tf.graph_util.convert_variables_to_constants(sess, sess.graph_def, ['dnn_out']) tf.train.write_graph(graph_def, '.', 'halve_first_channel.pb', as_text=False) output = output * 255.0 output = output.astype(np.uint8) imageio.imsave("out.bmp", np.squeeze(output)) To do the same thing with ffmpeg: - generate halve_first_channel.pb with the above script - generate halve_first_channel.model with tools/python/convert.py - try with following commands ./ffmpeg -i input.jpg -vf dnn_processing=model=halve_first_channel.model:input=dnn_in:output=dnn_out:fmt=rgb24:dnn_backend=native -y out.native.png ./ffmpeg -i input.jpg -vf dnn_processing=model=halve_first_channel.pb:input=dnn_in:output=dnn_out:fmt=rgb24:dnn_backend=tensorflow -y out.tf.png Signed-off-by: Guo, Yejun <yejun.guo@intel.com> Signed-off-by: Pedro Arthur <bygrandao@gmail.com>
* avfilter: add median filterPaul B Mahol2019-10-291-0/+1
|