summaryrefslogtreecommitdiff
path: root/libavfilter
Commit message (Collapse)AuthorAge
* avfilter/vf_blend: use time_base from framesyncPaul B Mahol2019-07-03
| | | | Fixes non-monotonous timestamps.
* avfilter/vf_maskedclamp: use time_base from framesyncPaul B Mahol2019-07-03
| | | | Fixes non-monotonous timestamps.
* avfilter/vf_maskedmerge: use time_base from framesyncPaul B Mahol2019-07-03
| | | | Fixes non-monotonous timestamps.
* avfilter/af_deesser: remove extra ;Paul B Mahol2019-07-03
|
* avfilter: add deesser audio filterPaul B Mahol2019-07-02
|
* avfilter/af_silenceremove: use input timestamp for timestamp recalculationPaul B Mahol2019-07-02
|
* lavf/qsv_scale: add scaling modes supportZhong Li2019-06-25
| | | | | | | | | | | | | | | | | | | | | | low_power mode will use a fixed HW engine (SFC), thus can offload EU usage. high quality mode will take EU usage (AVS sampler). Performance and EU usage (Render usage) comparsion on Intel(R) Xeon(R) CPU E3-1225 v5 @ 3.30GHz: High quality mode : ffmpeg -hwaccel qsv -c:v h264_qsv -i bbb_sunflower_1080p_30fps_normal_2000frames.h264 \ -vf scale_qsv=w=1280:h=736:mode=hq -f null - fps=389 RENDER usage: 28.10 (provided by MSDK metrics_monitor) Low Power mode: ffmpeg -hwaccel qsv -c:v h264_qsv -i ~/bbb_sunflower_1080p_30fps_normal_2000frames.h264 \ -vf scale_qsv=w=1280:h=736:mode=low_power -f null - fps=343 RENDER usage: 0.00 Low power mode (SFC) may be disabled if not supported by MSDK/Driver/HW, and replaced by AVS mode interanlly. Signed-off-by: Zhong Li <zhong.li@intel.com>
* lavfi/af_asetnsamples: Remove the redundant condition checkJun Zhao2019-06-18
| | | | | | | | Redundant condition: '!A || B' is equivalent to '!A || (A && B)' but more clearly. Reviewed-by: Michael Niedermayer <michael@niedermayer.cc> Signed-off-by: Jun Zhao <barryjzhao@tencent.com>
* libavfilter/vf_blend.c: remove duplicate code with macro-defined functionLimin Wang2019-06-14
| | | | Signed-off-by: Limin Wang <lance.lmwang@gmail.com>
* libavfilter/vf_blend.c: remove duplicate code with same functionLimin Wang2019-06-14
| | | | Signed-off-by: Limin Wang <lance.lmwang@gmail.com>
* lavf/qsv_vpp: add frame format optionZhong Li2019-06-14
| | | | | | | | | 1. Currently output format is hard-coded as NV12, thus means CSC is always done for not NV12 input such as P010. Follow original input format as default output. 2. Add an option to specify output format. Signed-off-by: Zhong Li <zhong.li@intel.com>
* avfilter/vf_gblur: add missing preprocessor checkJames Almer2019-06-12
| | | | | | Fixes compilation on x86_32 Signed-off-by: James Almer <jamrial@gmail.com>
* avfilter/vf_gblur: add x86 SIMD optimizationsRuiling Song2019-06-12
| | | | | | | | | | | | | The horizontal pass get ~2x performance with the patch under single thread. Tested overall performance using the command(avx2 enabled): ./ffmpeg -i 1080p.mp4 -vf gblur -f null /dev/null ./ffmpeg -i 1080p.mp4 -vf gblur=threads=1 -f null /dev/null For single thread, the fps improves from 43 to 60, about 40%. For multi-thread, the fps improves from 110 to 130, about 20%. Signed-off-by: Ruiling Song <ruiling.song@intel.com>
* libavfilter/vf_cover_rect.c: free the allocated frameLimin Wang2019-06-11
| | | | | Signed-off-by: Limin Wang <lance.lmwang@gmail.com> Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* avfilter/vf_normalize: fix filtering of RGB0 formatsPaul B Mahol2019-06-10
|
* lavf/qsvvpp: add P010 output format supportZhong Li2019-06-10
| | | | Signed-off-by: Zhong Li <zhong.li@intel.com>
* lavf/qsvvpp: add extra_hw_frames supportZhong Li2019-06-10
| | | | | | | | | | | | extra_hw_frames is needed for some cases. (eg: qsv decoding + qsv vpp + qsv look_ahead encoding, transcoding failed if no extra_hw_frames supported: ffmpeg -hwaccel qsv -c:v h264_qsv -i bbb_sunflower_1080p_30fps_normal_2000frames.mp4 \ -vf vpp_qsv=w=1280:h=720:extra_hw_frames=100 -v verbose -c:v h264_qsv \ -look_ahead 1 -look_ahead_depth 100 out1.mp4 ) Signed-off-by: Zhong Li <zhong.li@intel.com>
* avfilter/vf_lut2: add slice threadingPaul B Mahol2019-06-09
|
* lavfi/vaapi: Fix build with libva 2.1 and 2.2Mark Thompson2019-06-07
| | | | | While the VAProcColorProperties structure was added in libva 2.1, the colour primaries/transfer/space fields were not added until libva 2.3.
* libavfilter: Add derain filterXuewei Meng2019-06-06
| | | | | | | | | Remove the rain in the input image/video by applying the derain methods based on convolutional neural networks. Training scripts as well as scripts for model generation are provided in the repository at https://github.com/XueweiMeng/derain_filter.git. Signed-off-by: Xuewei Meng <xwmeng96@gmail.com>
* avfilter/framesync: fix shortest with eof_action=passGyan Doshi2019-06-06
| | | | | Shifted check of shortest to after repeatlast, to ensure shortest=1 is always honoured.
* avilter/avf_showwaves: switch to activate in showwaves filterPaul B Mahol2019-06-04
|
* avfilter/af_anlmdn: add support for commandsPaul B Mahol2019-06-03
|
* lavf/sr: Refine the coding style for initJun Zhao2019-06-03
| | | | | | | | | | | | | | We perfer the coding style like: /* some stuff */ if (error) { /* error handling */ return -(errorcode); } /* normal actions */ do_something() Signed-off-by: Jun Zhao <barryjzhao@tencent.com>
* lavf/sr: Don't need to check NULL before sws_freeContextJun Zhao2019-06-03
| | | | | | | sws_freeContext have check the NULL pointer, so don't need to check NULL before sws_freeContext. Signed-off-by: Jun Zhao <barryjzhao@tencent.com>
* lavf/sr: Dump input pixel format in error messageJun Zhao2019-06-03
| | | | | | Dump input pixel format in error message, it's will help to debugging Signed-off-by: Jun Zhao <barryjzhao@tencent.com>
* lavf/qsv: use av_cold for init/uninitZhong Li2019-06-03
| | | | Signed-off-by: Zhong Li <zhong.li@intel.com>
* avfilter/vf_unsharp: enable slice threadingRuiling Song2019-06-03
| | | | | | | | benchmarking with a simple command: ffmpeg -i 1080p.mp4 -vf unsharp=la=3:ca=3 -an -f null /dev/null with the patch, the fps increase from 50 to 120 on my local machine (i7-6770HQ). Signed-off-by: Ruiling Song <ruiling.song@intel.com>
* lavfi/lut: Add slice threading supportJun Zhao2019-06-03
| | | | | | | | | | | | | | | | | Used the command for 1080p h264 clip as follow: a). ffmpeg -i input -vf lutyuv="u=128:v=128" -f null /dev/null b). ffmpeg -i input -vf lutrgb="g=0:b=0" -f null /dev/null after enabled the slice threading, the fps change from: a). 144fps to 258fps (lutyuv) b). 94fps to 153fps (lutrgb) in Intel(R) Core(TM) i5-8265U CPU @ 1.60GHz Reviewed-by: Paul B Mahol <onemda@gmail.com> Signed-off-by: Jun Zhao <barryjzhao@tencent.com>
* lavfi/colorlevels: Add slice threading supportJun Zhao2019-06-03
| | | | | | | | | | | | Add slice threading support, use the command like: ./ffmpeg -i input -vf colorlevels -f null /dev/null with 1080p h264 clip, the fps from 39 fps to 79 fps in the local(Intel(R) Core(TM) i5-8265U CPU @ 1.60GHz) Reviewed-by: Paul B Mahol <onemda@gmail.com> Signed-off-by: Jun Zhao <barryjzhao@tencent.com>
* vf_scale_vaapi: Add options to configure output colour propertiesMark Thompson2019-06-02
| | | | | The "out_color_matrix" and "out_range" properties match the same options in vf_scale; the others attempt to follow the same pattern.
* lavfi/vaapi: Improve support for colour propertiesMark Thompson2019-06-02
| | | | | | Attempts to pick the set of supported colour properties best matching the input. Output is then set with the same values, except for the colour matrix which may change when converting between RGB and YUV.
* vf_misc_vaapi: Add missing return value checksMark Thompson2019-06-02
| | | | Parameter buffer creation can fail.
* lavfi/vaapi: Factorise out common code for parameter buffer setupMark Thompson2019-06-02
| | | | | Also enables cropping on all VAAPI filters, inherited from the existing support in scale_vaapi.
* vf_crop: Add support for cropping hardware framesMark Thompson2019-06-02
| | | | Set the cropping fields in the AVFrame.
* avfilter/af_anlmdn: avoid creating frames with zero samplesPaul B Mahol2019-06-02
|
* avfilter/af_anlmdn: try to recover when cache becomes negativePaul B Mahol2019-06-02
|
* avfilter/af_anlmdn: add smooth factor optionPaul B Mahol2019-06-02
|
* avfilter/vf_xmedian: remove limitation of only odd number of inputsPaul B Mahol2019-06-02
|
* lavfi/showspatial: Remove two write-only variables.Carl Eugen Hoyos2019-05-31
| | | | | | Fixes two warnings: libavfilter/avf_showspatial.c:157:26: warning: variable ‘w’ set but not used libavfilter/avf_showspatial.c:157:23: warning: variable ‘h’ set but not used
* avfilter: add showspatial multimedia filterPaul B Mahol2019-05-31
|
* lavf/qsvvpp: avoid the double-free when working in sys memory modeLinjie Fu2019-05-30
| | | | | | | | | | | | | | | | Currently, picref will be freed by calling av_frame_free(&picref) in submit_frame() in qsvvpp.c when working in system memory mode,and normally it is freed in filter_frame() in vf_vpp_qsv.c when working in other modes. Double free happens when working in system memory mode, remove to fix the memory issue. Reproduce: ffmpeg -init_hw_device qsv=foo -filter_hw_device foo -f rawvideo -pix_fmt nv12 -s:v 852x480 \ -i 852x480.nv12 -vf 'vpp_qsv=w=500:h=400' -f rawvideo -pix_fmt nv12 qsv.nv12 Signed-off-by: Linjie Fu <linjie.fu@intel.com> Signed-off-by: Zhong Li <zhong.li@intel.com>
* avfilter/avf_aphasemeter: make use of av_rescalePaul B Mahol2019-05-28
|
* avfilter/avf_showwaves: make use of av_rescale_qPaul B Mahol2019-05-28
|
* avfilter/avf_ahistogram: make use of av_rescalePaul B Mahol2019-05-28
|
* avfilter/avf_showvolume: make use of av_rescalePaul B Mahol2019-05-28
|
* avfilter/avf_abitscope: make use of av_rescalePaul B Mahol2019-05-28
|
* avfilter/avf_avectorscope: make use of av_rescalePaul B Mahol2019-05-28
|
* lavfi/sr: Change the backend type from flags to intJun Zhao2019-05-28
| | | | | | | native and tensorflow is exclusive, so change the type from flags to int. Signed-off-by: Jun Zhao <barryjzhao@tencent.com>
* lavfi/sr: Remove slice thread flagJun Zhao2019-05-28
| | | | | | sr didn't enable the slice threading, so remove the flag Signed-off-by: Jun Zhao <barryjzhao@tencent.com>