1
0
mirror of https://github.com/FFmpeg/FFmpeg.git synced 2024-12-02 03:06:28 +02:00
Commit Graph

7587 Commits

Author SHA1 Message Date
Xuewei Meng
ecc096513c libavfilter/dnn_native: Add multiple activation functions in dnn native
Add "Leaky_relu" and "None" option in activation function.

Reviewed-by: Guo, Yejun <yejun.guo@intel.com>
Signed-off-by: Xuewei Meng <xwmeng96@gmail.com>
Signed-off-by: Steven Liu <lq@onvideo.cn>
2019-05-22 10:28:07 +08:00
Xuewei Meng
e45e6005ce libavfilter/dnn_native: Add multiple padding methods in dnn native
Add another two padding methods "VALID" and "SAME" as tensorflow,
and keep the existing "SAME_CLAMP_TO_EDGE" method suggested by sr filter.
As "SAME_CLAMP_TO_EDGE"can keep the output with the same size as original input,
and gives a slight better result as mentioned by sr filter.

Reviewed-by: Guo, Yejun <yejun.guo@intel.com>
Signed-off-by: Xuewei Meng <xwmeng96@gmail.com>
Signed-off-by: Steven Liu <lq@onvideo.cn>
2019-05-21 12:53:58 +08:00
Paul B Mahol
96c79d4e1f avfilter/vf_ocr: also export confidence of result 2019-05-17 19:10:12 +02:00
Paul B Mahol
6276b4db97 avfilter/vf_separatefields: switch to activate
Fixes timestamp of last output frame.
2019-05-16 12:31:57 +02:00
Gyan Doshi
8cf947ca4c avfilter/drawtext: stop resource leak
Fixes Coverity CID 1445099
2019-05-16 10:30:28 +05:30
Philip Langdale
13168ecbdc avfilter/vf_scale_cuda: Simplify output plane addressing
I'm not sure why this was written the way it was originally. We
initialise the plane addresses correctly in hwcontext_cuda so
why try and play games to calculate the plane offsets directly
in this code?
2019-05-15 11:40:50 -07:00
Philip Langdale
bfbde996cf avfilter/vf_scale_cuda: Add support for YUV444P16
This format is interesting because it's what you get for decoded
10/12bit HEVC 4:4:4.
2019-05-15 11:40:50 -07:00
Philip Langdale
89bd7554b2 avfilter/vf_scale_cuda: Fix incorrect scaling of > 8bit content
When i converted the filter to use texture objects instead of
texture references, I incorrect dropped the `pixel_size` scaling
factor when setting `pitchInBytes`. `src_pitch` is in pixels and
so must be scaled up.
2019-05-15 11:40:50 -07:00
Paul B Mahol
f49cec2ba8 avfilter: add asr filter 2019-05-14 15:17:14 +02:00
Andreas Rheinhardt
670251de56 avfilter/vf_stack: Don't modify const strings
b3b7ba62 introduced undefined behaviour: A (non-modifiable) string
literal has been assigned to a modifiable string; said string was indeed
modified later via av_strtok.
This of course caused compiler warnings because of the discarded
qualifier; these are in particular fixed by this commit.

Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@gmail.com>
2019-05-14 14:47:51 +02:00
Paul B Mahol
8ef163ba9e avfilter: add xmedian filter 2019-05-14 14:43:56 +02:00
Paul B Mahol
f1c9d6fe70 avfilter/vf_chromahold: implement blend option 2019-05-13 12:15:32 +02:00
Gyan Doshi
87db1ca632 avfilter/drawtext: make command processing error-resilient
Prevents crash or interruption in text rendering
if new option string contains invalid values.
2019-05-13 10:34:32 +05:30
Paul B Mahol
bd6942b4c0 avfilter/af_astats: fix calculations involving last sample 2019-05-12 17:12:06 +02:00
Paul B Mahol
2a4a364f6a avfilter/af_astats: fix initial values of variables 2019-05-12 17:12:06 +02:00
Paul B Mahol
59fb8cae5e avfilter: add colorhold filter
Fixes #7671.
2019-05-11 20:16:45 +02:00
Jun Zhao
c967128952 lavf/cover_rect: Fix logic check issue
Fix logic check issue #6741

Reviewed-by: Michael Niedermayer <michael@niedermayer.cc>
Signed-off-by: Jun Zhao <barryjzhao@tencent.com>
2019-05-10 09:07:29 +08:00
Pavel Koshevoy
181031906e avfilter/af_atempo: Make ffplay display correct timestamps when seeking
NOTE: this is a refinement of the patch from Paul B Mahol
offset all output timestamps by same amount of first input timestamp
2019-05-08 23:38:10 -06:00
Guo, Yejun
c636dc9819 libavfilter/dnn: add more data type support for dnn model input
currently, only float is supported as model input, actually, there
are other data types, this patch adds uint8.

Signed-off-by: Guo, Yejun <yejun.guo@intel.com>
Signed-off-by: Pedro Arthur <bygrandao@gmail.com>
2019-05-08 12:33:00 -03:00
Guo, Yejun
25c1cd909f libavfilter/dnn: support multiple outputs for tensorflow model
some models such as ssd, yolo have more than one output.

the clean up code in this patch is a little complex, it is because
that set_input_output_tf could be called for many times together
with ff_dnn_execute_model_tf, we have to clean resources for the
case that the two interfaces are called interleaved.

Signed-off-by: Guo, Yejun <yejun.guo@intel.com>
Signed-off-by: Pedro Arthur <bygrandao@gmail.com>
2019-05-08 12:33:00 -03:00
Guo, Yejun
7adfb6132e libavfilter/dnn: avoid memcpy for tensorflow dnn output
use TF_Tensor's cpu address to avoid extra memcpy.

Signed-off-by: Guo, Yejun <yejun.guo@intel.com>
Signed-off-by: Pedro Arthur <bygrandao@gmail.com>
2019-05-08 12:33:00 -03:00
Guo, Yejun
e2b92896c4 libavfilter/dnn: determine dnn output during execute_model instead of set_input_output
Currently, within interface set_input_output, the dims/memory of the tensorflow
dnn model output is determined by executing the model with zero input,
actually, the output dims might vary with different input data for networks
such as object detection models faster-rcnn, ssd and yolo.

This patch moves the logic from set_input_output to execute_model which
is suitable for all the cases. Since interface changed, and so dnn_backend_native
also changes.

In vf_sr.c, it knows it's srcnn or espcn by executing the model with zero input,
so execute_model has to be called in function config_props

Signed-off-by: Guo, Yejun <yejun.guo@intel.com>
Signed-off-by: Pedro Arthur <bygrandao@gmail.com>
2019-05-08 12:33:00 -03:00
Guo, Yejun
05f86f05bb libavfilter/dnn: remove limit for the name of DNN model input/output
remove the requirment that the name of DNN model input/output
should be "x"/"y",

Signed-off-by: Guo, Yejun <yejun.guo@intel.com>
Signed-off-by: Pedro Arthur <bygrandao@gmail.com>
2019-05-08 12:33:00 -03:00
Guo, Yejun
05aec8bb13 libavfilter/vf_sr: refine code to remove keyword 'else'
remove 'else' since there is always 'return' in 'if' scope,
so the code will be clean for later maintenance

Signed-off-by: Guo, Yejun <yejun.guo@intel.com>
Signed-off-by: Pedro Arthur <bygrandao@gmail.com>
2019-05-08 12:33:00 -03:00
Guo, Yejun
014b6a56f8 libavfilter/dnn_backend_tf.c: set layer_add_res for input layer
otherwise, the following check will return error if layer_add_res
is randomly initialized.

Signed-off-by: Guo, Yejun <yejun.guo@intel.com>
Signed-off-by: Pedro Arthur <bygrandao@gmail.com>
2019-05-08 12:33:00 -03:00
Paul B Mahol
c539dd992c avfilter/af_afftfilt: switch to activate 2019-05-08 15:03:22 +02:00
Ruiling Song
06ba4783a0 lavfi/gblur: doing several columns at the same time
Instead of doing each column one by one, doing several columns
together gives about 30% better performance.

Reviewed-by: Paul B Mahol <onemda@gmail.com>
Signed-off-by: Ruiling Song <ruiling.song@intel.com>
2019-05-08 10:39:43 +08:00
Gyan Doshi
b3b7ba623f avfilter/vf_xstack: set better error msg for
missing layout
2019-05-07 16:45:11 +05:30
Paul B Mahol
e668260ba9 avfilter/af_rubberband: also do not ignore failures 2019-05-06 21:09:43 +02:00
Paul B Mahol
066864aca8 avfilter/af_rubberband: handle case when no frame is given 2019-05-06 21:04:52 +02:00
Marton Balint
328a96839d avfilter/vf_freezedetect: fix missing freeze_start when the freeze length is around the detection duration
Fixes ticket #7875.

Signed-off-by: Marton Balint <cus@passwd.hu>
2019-05-05 20:07:35 +02:00
Paul B Mahol
73f234fdf8 avfilter/f_interleave: switch to activate 2019-05-05 19:51:44 +02:00
Paul B Mahol
38baaa1617 avfilter/vf_vibrance: add alternate option 2019-05-05 13:29:34 +02:00
Paul B Mahol
526bc2205b avfilter/vf_vibrance: factor some calculations out of loop 2019-05-05 13:09:37 +02:00
Moritz Barsnick
98541f7032 avfilter/f_realtime: add option to scale speed 2019-05-04 19:39:38 +02:00
Paul B Mahol
e94447cd49 avfilter/af_amultiply: use pts from frame from first input 2019-05-04 11:28:14 +02:00
Paul B Mahol
3d8e99eba3 avfilter/vf_vmafmotion: remove unused header 2019-05-04 11:09:47 +02:00
Paul B Mahol
16154c019f avfilter/vf_blend: remove unused header 2019-05-03 20:48:18 +02:00
Paul B Mahol
d3d1d5936f avfilter/vf_tonemap: add slice threading 2019-05-01 21:19:58 +02:00
Paul B Mahol
a7fa89fa0b avfilter/avf_abitscope: switch to activate 2019-05-01 21:17:55 +02:00
Paul B Mahol
255feeccc5 avfilter/af_biquads: add timeline support 2019-05-01 12:59:54 +02:00
Paul B Mahol
01204c04b0 avfilter/af_stereowiden: add timeline support 2019-05-01 12:40:25 +02:00
Paul B Mahol
0ee65ea95c avfilter/af_extrastereo: add timeline support 2019-05-01 12:33:56 +02:00
Paul B Mahol
d010bfad31 avfilter/af_crossfeed: add timeline support 2019-05-01 12:31:52 +02:00
Paul B Mahol
5a39b797ac avfilter/avf_showspectrum: convert some doubles to floats 2019-04-30 20:36:33 +02:00
Paul B Mahol
38c170d54c avfilter/af_asoftclip: add timeline support 2019-04-30 11:02:36 +02:00
Paul B Mahol
9cc10418b3 avfilter/af_dynaudnorm: add timeline support 2019-04-30 10:56:39 +02:00
Paul B Mahol
c82d81ba42 avfilter/af_dynaudnorm: always update delay when flushing 2019-04-30 10:05:23 +02:00
Paul B Mahol
ac551c54b1 avfilter/vf_normalize: add timeline support 2019-04-29 23:28:40 +02:00
Paul B Mahol
e6c7d838ea avfilter/af_adeclick: switch to activate 2019-04-29 22:19:15 +02:00
Paul B Mahol
12a284fa63 avfilter/af_rubberband: make use of initial input timestamp 2019-04-29 21:11:46 +02:00
Martin Vobruba
093a504414 avfilter/avf_showwaves: Add draw mode also to showwavespic filter
See commit a8c2d375ca
2019-04-29 20:31:05 +02:00
Paul B Mahol
31990046ac avfilter/f_ebur128: use correct type for chl 2019-04-29 16:46:42 +02:00
Paul B Mahol
d7fead80ad avfilter/af_dynaudnorm: switch to activate 2019-04-29 15:12:42 +02:00
Paul B Mahol
a40bcb5c93 avfilter/af_rubberband: switch to activate 2019-04-29 14:22:13 +02:00
Paul B Mahol
a89ec33fd5 avfilter/af_rubberband: check if rbs is valid 2019-04-29 13:47:46 +02:00
Paul B Mahol
21d1bb00c4 avfilter/af_sofalizer: switch to activate 2019-04-29 13:35:04 +02:00
Paul B Mahol
21b1f08ea2 avfilter/avf_avectorscope: switch to activate 2019-04-29 12:52:50 +02:00
Paul B Mahol
77aacdb036 avfilter/avf_ahistogram: switch to activate 2019-04-29 12:43:18 +02:00
Paul B Mahol
a66324cd52 avfilter/avf_ahistogram: properly name pads 2019-04-29 12:28:38 +02:00
Paul B Mahol
ce774e30ff avfilter/avf_showspectrum: add log scale for frequency plot 2019-04-29 11:45:30 +02:00
Matthias Troffaes
90b21ae5b5 avfilter/af_astats: fix msvc compile error
MSVC requires an explicit cast from void * to void when applying the
ternary conditional operator to switch between methods that return
void.
2019-04-29 11:08:49 +02:00
Paul B Mahol
5840a7f8a6 avfilter/vf_lut3d: increase MAX_LEVEL 2019-04-28 10:52:21 +02:00
Paul B Mahol
d5b2458f46 avfilter/vf_lut3d: fix range domain processing for .cube format
The ranges are for input, not for output.
2019-04-28 09:32:55 +02:00
Paul B Mahol
c2f305ca17 avfilter: add audio soft clip filter 2019-04-27 00:21:38 +02:00
Paul B Mahol
bf15dcc5c8 avfilter/vf_stack: use time_base from framesync
Fixes non-monotonous timestamps.
2019-04-26 23:59:52 +02:00
Paul B Mahol
1e01f66822 avfilter/af_astats: count number of NaNs/Infs/denormals for floating-point audio too 2019-04-26 12:14:10 +02:00
Ruiling Song
0fc464631a lavfi/opencl: add more opencl helper macro
Signed-off-by: Ruiling Song <ruiling.song@intel.com>
2019-04-26 10:08:05 +08:00
Carl Eugen Hoyos
1ae5a64457 lavfi/frei0r: Fix a union member type and remove an unneeded cast. 2019-04-25 00:29:09 +02:00
Paul B Mahol
604421630b avfilter/af_surround: improve rear channels separation 2019-04-24 22:31:02 +02:00
Paul B Mahol
2d16b83824 avfilter/af_surround: check for invalid magnitude and phase difference 2019-04-24 22:31:02 +02:00
Paul B Mahol
e1e0f94dc9 avfilter/af_surround: add angle option 2019-04-24 22:31:02 +02:00
Paul B Mahol
e1cfb01b05 avfilter/af_surround: fix typo 2019-04-24 22:31:02 +02:00
Paul B Mahol
4a69b18242 avfilter/af_surround: export more channel's in/out gains 2019-04-23 17:48:10 +02:00
Paul B Mahol
ce15c3a4c8 avfilter/af_surround: switch to activate 2019-04-23 13:37:41 +02:00
Paul B Mahol
7a128ac2bc avfilter/af_surround: expose window size to user 2019-04-23 13:37:41 +02:00
Paul B Mahol
ccc07ebe45 avfilter/af_surround: add 6.1/6.0 upmix from stereo 2019-04-23 13:37:41 +02:00
Paul B Mahol
26fd40b568 avfilter/af_surround: make channel spread from stereo image user configurable 2019-04-22 22:15:01 +02:00
Paul B Mahol
dbb35abf28 avfilter/af_surround: add lfe_mode option 2019-04-22 22:15:01 +02:00
Paul B Mahol
c6c94303d4 avfilter/af_surround: avoid divisions with very small numbers 2019-04-22 22:15:01 +02:00
Paul B Mahol
dafcdeb258 lavfi/avf_showwaves: fix extra gaps at end of waveform
Fixes #5931.
2019-04-21 21:12:03 +02:00
Jun Zhao
b272d5b9b6 lavfi/frei0r: Fixes the compilation warnings
Fixes the compilation warnings

Reviewed-by: Paul B Mahol <onemda@gmail.com>
Signed-off-by: Jun Zhao <barryjzhao@tencent.com>
2019-04-21 21:20:16 +08:00
Jarek Samic
1c46ab4815 lavfi: add colorkey_opencl filter
This is a direct port of the CPU filter.

Signed-off-by: Jarek Samic <cldfire3@gmail.com>
Signed-off-by: Mark Thompson <sw@jkqxz.net>
2019-04-20 16:32:34 +01:00
Paul B Mahol
782ae68a11 avfilter: add lagfun filter 2019-04-20 14:20:07 +02:00
Paul B Mahol
e20ad3bd59 avfilter/vf_lut3d: add cineSpace 3D lut support 2019-04-20 13:52:42 +02:00
Paul B Mahol
b9d25b1a6e avfilter/vf_lut3d: add cineSpace 1D lut parsing 2019-04-20 13:52:41 +02:00
Paul B Mahol
fee7c15d87 avfilter/af_surround: allow user to change overlap and win_func 2019-04-20 12:02:50 +02:00
Carl Eugen Hoyos
93209902ed lavfi/fspp: Simplify a macro.
Silences a warning with clang:
warning: implicit conversion from 'int' to 'int16_t' (aka 'short') changes value from 44130 to -21406
2019-04-20 00:20:07 +02:00
Paul B Mahol
8a3ed5a313 avfilter/af_agate: implement mode option 2019-04-17 23:36:39 +02:00
Paul B Mahol
a0559fcd81 avfilter/af_sidechaincompress: implement mode option 2019-04-17 16:34:17 +02:00
Carl Eugen Hoyos
c3aa4844f3 lavfi/fspp: Remove two unused macros. 2019-04-16 00:43:10 +02:00
Paul B Mahol
ecdaa4b4fa avfilter/af_asetnsamples: use correct function 2019-04-07 21:15:13 +02:00
Nikolas Bowe via ffmpeg-devel
4c8e3725d9 avfilter/af_asetnsamples: fix sample queuing.
When asetnsamples uses output samples < input samples, remaining samples build up in the fifo over time.
Fix this by marking the filter as ready again if there are enough samples.

Regression since ef3babb2c7
Reviewed-by: Paul B Mahol <onemda@gmail.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2019-04-07 13:17:34 +02:00
Philip Langdale
c0b6e4cb6d avfilter/vf_yadif_cuda: Remove unnecessary stream synchronisation
I put this call in by habit, rather than because there was any
actual need. The filter is simply processing frames one after
the other and has no need to synchronise.

malakudi on the devtalk forums noticed a slowdown when using nvenc
with temporal/spatial aq and that the slowdown went away if the
sync call was removed. I also verified that in the basic encoding
case there's an observable speedup.

I also verified that we aren't doing unnecessary sync calls in any
other filter.
2019-03-30 08:55:15 -07:00
Zhong Li
4131b0619c qsv: fix the dangerous macro definitions
Signed-off-by: Zhong Li <zhong.li@intel.com>
Reviewed-by: Carl Eugen Hoyos <ceffmpeg@gmail.com>
2019-03-28 21:49:04 +08:00
Daniel Playfair Cal
6e42021128 avfilter/vf_lensfun: add scale parameter
The lensfun filter wraps the lensfun library which performs
transformations on videos to correct for lens distortion. Often this
results in areas in the input being mapped to areas that fall outside
the boundaries of the output. The library has a parameter called scale
which is a scale factor applied to the output video. By decreasing it it
is possible to regain the areas of the video which would otherwise have
been lost. There is a special value of 0 which indicates that the
library should automatically determine a scale factor that results in
the output frame being filled (i.e. little or no black/unmapped areas).

This patch adds a corresponding scale option to the lensfun filter which
is passed through to the library. The existing behaviour of using the
automatic value of 0 is retained as the default behaviour, while other
values will be passed through to the library.

Signed-off-by: Daniel Playfair Cal <daniel.playfair.cal@gmail.com>
2019-03-25 22:50:54 +01:00
Jun Zhao
305025c8ae lavfi/sidedata: add missed frame side data type
add missed frame side data type

Signed-off-by: Jun Zhao <barryjzhao@tencent.com>
2019-03-23 11:25:06 +08:00
Ruiling Song
b073fb9eea lavfi/colorspace_common: add ifdef check to be more compatible.
Some filters may not need to do linearize/delinearize, thus
will even not define them. Add ifdef check, so they could easily
re-use the .cl file.

Signed-off-by: Ruiling Song <ruiling.song@intel.com>
2019-03-22 09:33:28 +08:00
Ruiling Song
8b951cd475 lavfi/tonemap_opencl: reuse color matrix calculation from colorspace.c
Signed-off-by: Ruiling Song <ruiling.song@intel.com>
2019-03-22 09:33:28 +08:00
Ruiling Song
2593122a16 lavfi/opencl: add ff_opencl_print_const_matrix_3x3()
This is used to print a 3x3 matrix into a part of OpenCL
source code.

Signed-off-by: Ruiling Song <ruiling.song@intel.com>
2019-03-22 09:33:28 +08:00
Ruiling Song
d0f3798b4e lavfi/colorspace: move some functions to common file
These functions can be reused by other colorspace filters,
so move them to common file. No functional changes.

Signed-off-by: Ruiling Song <ruiling.song@intel.com>
2019-03-22 09:33:28 +08:00
Marton Balint
6af67dcc35 avfilter/af_astats: add support for optimized min/max/peak calculation
Signed-off-by: Marton Balint <cus@passwd.hu>
2019-03-21 00:39:57 +01:00
Marton Balint
5cc4b79b29 avfilter/af_astats: rework sample loops
The channel loop is now the outer loop for both planar and interleaved. This is
needed by the next patch, and the speed difference is negligable if any.

Signed-off-by: Marton Balint <cus@passwd.hu>
2019-03-21 00:39:57 +01:00
Marton Balint
235228ea50 avfilter/af_astats: factorize sample loops
Signed-off-by: Marton Balint <cus@passwd.hu>
2019-03-21 00:39:57 +01:00
Marton Balint
233fdd84c2 avfilter/af_astats: fix identation
Signed-off-by: Marton Balint <cus@passwd.hu>
2019-03-21 00:39:57 +01:00
Marton Balint
e85f37d51e avfilter/af_astats: add support for selecting measured statistics
set_metadata with many entries is not very efficient, and with small audio
frames the performance loss is noticable. Also with this very simple
calculations (like peak) can be even further optimized.

Unfoturnately there are some small differences in metadata and av_log info
output, so factorizing calculations and output might not worth the hassle.

Signed-off-by: Marton Balint <cus@passwd.hu>
2019-03-21 00:39:57 +01:00
Kieran Kunhya
2ff7af563a vf_showinfo: Fix timecode display 2019-03-09 18:42:34 +00:00
Linjie Fu
147ef1d947 lavf/deinterlace_qsv: set specific field for repeat
Set specific field for repeat in PicStruct if the frame has repeat
flag.

Match the CheckInputPicStruct in MSDK.

Fix #7701.

Signed-off-by: Linjie Fu <linjie.fu@intel.com>
Signed-off-by: Zhong Li <zhong.li@intel.com>
2019-03-08 15:08:16 +08:00
Jun Zhao
96451477b9 lavfi/tonemap: make use of AVFILTER_DEFINE_CLASS
use AVFILTER_DEFINE_CLASS for defining the filter classes

Signed-off-by: Jun Zhao <barryjzhao@tencent.com>
2019-03-08 09:38:09 +08:00
Jun Zhao
26dbe88ea3 lavfi/zscale: make use of AVFILTER_DEFINE_CLASS
use AVFILTER_DEFINE_CLASS for defining the filter classes

Signed-off-by: Jun Zhao <barryjzhao@tencent.com>
2019-03-08 09:38:09 +08:00
Paul B Mahol
007c13e51e avfilter/af_anlmdn: add output mode option 2019-03-01 16:38:59 +01:00
Philip Langdale
b4c9c09915 avfilter/vf_thumbnail_cuda: Switch to using ffnvcodec
This change switches the vf_thumbnail_cuda filter from using the
full cuda sdk to using the ffnvcodec headers and loader.

Most of the change is a direct mapping, but I also switched from
using texture references to using texture objects. This is supposed
to be the preferred way of using textures, and the texture object API
is the one I added to ffnvcodec.

Signed-off-by: Philip Langdale <philipl@overt.org>
Signed-off-by: Timo Rothenpieler <timo@rothenpieler.org>
2019-02-27 18:03:17 +01:00
Philip Langdale
2544c7ea67 avfilter/vf_scale_cuda: Switch to using ffnvcodec
This change switches the vf_scale_cuda filter from using the
full cuda sdk to using the ffnvcodec headers and loader.

Most of the change is a direct mapping, but I also switched from
using texture references to using texture objects. This is supposed
to be the preferred way of using textures, and the texture object API
is the one I added to ffnvcodec.

Signed-off-by: Philip Langdale <philipl@overt.org>
Signed-off-by: Timo Rothenpieler <timo@rothenpieler.org>
2019-02-27 18:03:17 +01:00
Philip Langdale
7debf4277c avfilter/vf_yadif_cuda: Switch to using ffnvcodec
This change switches the vf_thumbnail_cuda filter from using the
full cuda sdk to using the ffnvcodec headers and loader.

Signed-off-by: Philip Langdale <philipl@overt.org>
Signed-off-by: Timo Rothenpieler <timo@rothenpieler.org>
2019-02-27 18:03:17 +01:00
Paul B Mahol
c679119a73 avfilter/vf_amplify: add tolerance option 2019-02-22 23:32:27 +01:00
Tomas Härdin
abc5ac3cf5 palettegen: Fill with last color, not black
If we fill with black then the generated palette will have one color more
than what the user requested. This also resulted in unwanted black specks in
the output of paletteuse, especially when generating small palettes.
2019-02-19 21:29:03 +01:00
Timo Rothenpieler
9e1e521393 avutil/cuda_check: fix usage of removed .c file
Why did this not break compilation?
2019-02-15 00:44:12 +01:00
Jun Zhao
ff5ed7abd6 avfilter/tests/integral: Correct the comment
Correct the comment

Signed-off-by: Jun Zhao <mypopydev@gmail.com>
2019-02-13 19:59:39 +08:00
Jun Zhao
9f33b0ed39 avfilter/tests/integral: Fix build warning after adjust the location
Fix build warning like "warning: ISO C90 forbids mixed declarations
and code" after adjust the location for malloc fail check.

Reviewed-by: Michael Niedermayer <michaelni@gmx.at>
Signed-off-by: Jun Zhao <mypopydev@gmail.com>
2019-02-12 09:09:29 +08:00
Jun Zhao
6382d03347 avfilter/tests/integral: Check malloc fail before using it
Need to check malloc fail before using it, so adjust the location
in the code.

Reviewed-by: Michael Niedermayer <michaelni@gmx.at>
Signed-off-by: Jun Zhao <mypopydev@gmail.com>
2019-02-12 09:08:27 +08:00
Paul B Mahol
08b83bf828 avfilter/vf_mix: always output frame if array is filled 2019-02-02 18:54:54 +01:00
Paul B Mahol
9e0e8e10c7 avfilter/vf_mix: add timeline support to tmix filter 2019-02-02 18:52:03 +01:00
Clément Bœsch
1a9c6cc411 lavfi/nlmeans: use a dynamic size for the weight LUT 2019-02-01 20:58:47 +01:00
Clément Bœsch
65e61febc8 lavfi/nlmeans: simplify log() call 2019-02-01 20:58:47 +01:00
Jun Zhao
6c586303a1 lavfi/nlmeans: improve the performance
Remove the pdiff_lut_scale in nlmeans and increase weight_lut table size
from 2^9 to 500000, this change will avoid using pdiff_lut_scale in
nlmeans_slice() for weight_lut table search, improving the performance
by about 12%. (in 1080P size picture case).

Use the profiling command like:

perf stat -a -d -r 5 ./ffmpeg -i input -an -vf nlmeans=s=30 -vframes 10 \
-f null /dev/null

without this change:
when s=1.0(default value) 63s
     s=30.0               72s

after this change:
     s=1.0(default value) 56s
     s=30.0               63s

Reviewed-by: Carl Eugen Hoyos <ceffmpeg@gmail.com>
Signed-off-by: Jun Zhao <mypopydev@gmail.com>
Signed-off-by: Clément Bœsch <u@pkh.me>
2019-02-01 20:58:43 +01:00
Gyan Doshi
b5b6f6ad59 avfilter/buffersrc: print relevant info when skipping filter reinit
The timestamp of the changed input frame as well as its relevant
properties can be examined by the user. Only applicable when
reinit_filter is disabled on the input stream.
2019-01-27 18:48:36 +05:30
Zhong Li
260f1960e7 lavf/vaapi_deinterlace: return error if mode unsupported
Reviewed-by: Mark Thompson <sw@jkqxz.net>
Signed-off-by: Fuwei Tang <fuweix.tang@intel.com>
Signed-off-by: Zhong Li <zhong.li@intel.com>
2019-01-25 16:55:01 +08:00
Gyan Doshi
3224d6691c avfilter/afade+acrossfade: allow skipping fade on inputs
New fade curve value 'nofade' passes audio samples as-is.
Primarily useful in carrying out acrossfade without fades.
2019-01-24 22:08:34 +05:30
Zachary Zhou
b8ebce4f84 libavfilter: add transpose_vaapi filter
Swap width and height when do clock/cclock rotation
Add reversal/hflip/vflip options

ffmpeg -hwaccel vaapi -vaapi_device /dev/dri/renderD128
-hwaccel_output_format vaapi -i input.264 -vf "transpose_vaapi=clock_flip"
-c:v h264_vaapi output.h264

Signed-off-by: Zachary Zhou <zachary.zhou@intel.com>
Signed-off-by: Mark Thompson <sw@jkqxz.net>
2019-01-23 23:29:40 +00:00
James Almer
af05070ddf avfilter/vf_paletteuse: don't constantly free and realloc internal frames
Reviewed-by: Clément Bœsch <u@pkh.me>
Signed-off-by: James Almer <jamrial@gmail.com>
2019-01-17 13:24:14 -03:00
Gyan Doshi
f60fdbc960 avfilter/extractplanes: add support for 12-bit YUVA formats
At present, 16-bit auto-scaled format results in incorrect alpha
extraction.
2019-01-17 11:41:18 +01:00
Paul B Mahol
9217dedcd9 avfilter/af_anlmdn: add timeline support 2019-01-13 11:55:01 +01:00
Paul B Mahol
1ea5529dd2 avfilter: add maskfun filter 2019-01-12 19:49:15 +01:00
Paul B Mahol
f4fd8ef725 avfilter/af_anlmdn: rework how denoising strength is used
Make into account patch size.
2019-01-12 15:41:24 +01:00
Paul B Mahol
c65c4ce773 avfilter/af_anlmdn: do not output more samples than received 2019-01-11 16:51:49 +01:00
Paul B Mahol
c563513fdf avfilter/af_anlmdn: drain samples at end 2019-01-11 11:54:15 +01:00
Paul B Mahol
b5ae61d2c0 avfilter/af_anlmdn: do not trim first samples
Instead denoise from start, assumming missing samples are silence.
2019-01-11 11:23:59 +01:00
Paul B Mahol
0c0fc8896c avfilter/af_anlmdn: log used parameters 2019-01-11 11:14:35 +01:00
Paul B Mahol
395e8a53fa avfilter/af_anlmdn: use lut table to calculate weights 2019-01-10 21:49:47 +01:00
Paul B Mahol
dcae5ba322 avfilter: add anlmdn filter x86 SIMD optimizations 2019-01-10 21:49:47 +01:00
Carl Eugen Hoyos
02b6d1dd63 lavfi/f_select: Cosmetics, move a function.
Silences a warning when only aselect was enabled:
libavfilter/f_select.c:421:12: warning: 'query_formats' defined but not used
2019-01-10 20:14:08 +01:00
Carl Eugen Hoyos
e51811d215 lavfi/f_select: Fix aselect filter standalone compilation. 2019-01-10 20:10:50 +01:00
Carl Eugen Hoyos
e52140ba37 lavfi/Makefile: Fix bwdif filter standalone compilation. 2019-01-10 20:02:26 +01:00
Paul B Mahol
ed3b64402e avfilter/af_anlmdn: ignore too small values 2019-01-09 21:16:34 +01:00
Paul B Mahol
8a1fc95840 avfilter: add anlmdn audio filter
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2019-01-08 22:00:51 +01:00
Paul B Mahol
f2e2456294 avfilter/af_afir: adjust min partition size
Minimal value allowed by our FFT is 16 thus min partition size is 8.
2019-01-05 09:40:41 +01:00
James Almer
ef67af31ff x86/af_afir: use three operand form forat some instructions
Fixes compilation with old yasm versions.

Signed-off-by: James Almer <jamrial@gmail.com>
2019-01-03 23:36:19 -03:00
James Almer
5402c1886b x86/af_afir: add ff_fcmul_add_avx()
fcmul_add_c: 1228.8
fcmul_add_sse3: 334.3
fcmul_add_avx: 186.3

Tested on a Core i5 4460 @ 3.2GHz

Reviewed-by: Paul B Mahol <onemda@gmail.com>
Signed-off-by: James Almer <jamrial@gmail.com>
2019-01-03 10:12:19 -03:00
James Almer
82043dfd2e avfilter/af_afir: split off fcmul_add into a DSP context
Reviewed-by: Paul B Mahol <onemda@gmail.com>
Signed-off-by: James Almer <jamrial@gmail.com>
2019-01-03 10:12:18 -03:00
James Almer
9b5bd665e1 x86/af_afir: fix processing the last element
ff_fcmul_add_sse3() is now identical to the C version.

Reviewed-by: Paul B Mahol <onemda@gmail.com>
Signed-off-by: James Almer <jamrial@gmail.com>
2019-01-03 10:12:18 -03:00