Michael Niedermayer
dde86d0ddf
avfilter/vf_spp: Remove unused AVCodecContext
...
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2020-05-12 01:00:28 +02:00
Lynne
70d396c8af
Revert "hwcontext_vulkan: only use one semaphore per image"
...
This reverts commit 97b526c192
.
It broke the API, and assumed no other APIs used multiple semaphores.
This also disallowed certain optimizations to happen.
Dealing with APIs that give or expect single semaphores is easier when
we use per-image semaphores.
2020-05-11 23:48:26 +01:00
Limin Wang
a058d81570
avfilter/vf_signalstats: reindent after last commit
...
Signed-off-by: Limin Wang <lance.lmwang@gmail.com>
2020-05-10 22:32:34 +08:00
Limin Wang
25bb72af62
avfilter/vf_signalstats: make the alloc array used for any bit depth
...
Signed-off-by: Limin Wang <lance.lmwang@gmail.com>
2020-05-10 22:32:34 +08:00
Limin Wang
764efda192
avfilter/vf_signalstats: add SignalstatsContext.maxsize variable
...
Signed-off-by: Limin Wang <lance.lmwang@gmail.com>
2020-05-10 22:32:34 +08:00
Limin Wang
a8c762a17d
avfilter/vf_signalstats: rename config_props -> config_output
...
Signed-off-by: Limin Wang <lance.lmwang@gmail.com>
2020-05-10 22:32:34 +08:00
Guo, Yejun
71e28c5422
dnn/native: add native support for minimum
...
it can be tested with model file generated with below python script:
import tensorflow as tf
import numpy as np
import imageio
in_img = imageio.imread('input.jpg')
in_img = in_img.astype(np.float32)/255.0
in_data = in_img[np.newaxis, :]
x = tf.placeholder(tf.float32, shape=[1, None, None, 3], name='dnn_in')
x1 = tf.minimum(0.7, x)
x2 = tf.maximum(x1, 0.4)
y = tf.identity(x2, name='dnn_out')
sess=tf.Session()
sess.run(tf.global_variables_initializer())
graph_def = tf.graph_util.convert_variables_to_constants(sess, sess.graph_def, ['dnn_out'])
tf.train.write_graph(graph_def, '.', 'image_process.pb', as_text=False)
print("image_process.pb generated, please use \
path_to_ffmpeg/tools/python/convert.py to generate image_process.model\n")
output = sess.run(y, feed_dict={x: in_data})
imageio.imsave("out.jpg", np.squeeze(output))
Signed-off-by: Guo, Yejun <yejun.guo@intel.com>
2020-05-08 15:22:27 +08:00
Sebastian Dröge
ed3da72583
s->target_i and global are in dB but s->target_tp and true_peak are
...
linear. Instead of mixing these in the calculations, convert the former
first to have all following calculations in the same unit.
Signed-off-by: Kyle Swanson <k@ylo.ph>
2020-05-01 21:36:07 -07:00
Limin Wang
f441fadbcf
avfilter/af_adelay: Check sscanf() return value
...
Reviewed-by: Michael Niedermayer <michael@niedermayer.cc>
Signed-off-by: Limin Wang <lance.lmwang@gmail.com>
2020-05-01 06:36:36 +08:00
Limin Wang
ee5d6d2ef8
avfilter/vf_mix: Check sscanf() return value
...
Reviewed-by: Nicolas George <george@nsup.org>
Signed-off-by: Limin Wang <lance.lmwang@gmail.com>
2020-05-01 06:36:36 +08:00
Paul B Mahol
0a181c2cb1
avfilter/af_crossfeed: make options runtime configurable
2020-04-30 12:18:36 +02:00
Paul B Mahol
35d6001815
avfilter/af_crossfeed: make slope configurable
2020-04-30 12:18:36 +02:00
Paul B Mahol
0ec61fcff7
avfilter/af_crossfeed: fix calculation of alpha parameter
...
Use A in calculation.
2020-04-30 12:18:36 +02:00
Paul B Mahol
c7d8082357
avfilter: add asubboost filter
2020-04-30 12:18:36 +02:00
Paul B Mahol
2970846fc1
avfilter/vf_v360: make FOV adjusted for dual fisheye too
...
Remove any usage of padding for this format.
2020-04-29 19:18:25 +02:00
Paul B Mahol
d8147c4e2d
avfilter/af_amix: make weights option runtime configured
2020-04-29 19:18:25 +02:00
Steven Liu
d813e43b3d
avfilter/vf_v360: adjustment out_pad and in_pad maximum value to 1/10
...
Because not every user know about in_pad and out_pad reasonable value range
so maybe try to set 1.0, but setting 1.0 is so hugh to get an fatal error.
Suggested-by: Paul B Mahol <onemda@gmail.com>
Signed-off-by: Steven Liu <lq@chinaffmpeg.org>
2020-04-29 13:48:02 +01:00
Paul B Mahol
f53fc935b8
avfilter/vf_pixscope: also show standard deviation of zoomed area
2020-04-26 12:27:36 +02:00
Paul B Mahol
35bcbfd6da
avfilter/f_interleave: no need to check for inlink eof if non-empty queue
...
Also set state to ready if there is any inlink with queued frame.
2020-04-25 13:35:22 +02:00
Paul B Mahol
ec3b5deab4
avfilter/f_interleave: make sure that all frames in inlink queue are used
2020-04-25 13:07:13 +02:00
Paul B Mahol
b29b934e4f
avfilter/f_interleave: add duration option
2020-04-25 12:35:22 +02:00
Lynne
b136a98303
scale_vulkan: take frame cropping parameters in account when scaling
...
Then sample_aspect_ratio line at the bottom was cargo-culted from the vaapi
scaling filter, but its unnecesary.
2020-04-23 18:23:45 +01:00
Lynne
f66ac83c22
overlay_vulkan: add support for overlaying images with an alpha channel
2020-04-23 18:23:45 +01:00
Guo, Yejun
8ce9d88f93
dnn/native: add native support for divide
...
it can be tested with model file generated with below python script:
import tensorflow as tf
import numpy as np
import imageio
in_img = imageio.imread('input.jpg')
in_img = in_img.astype(np.float32)/255.0
in_data = in_img[np.newaxis, :]
x = tf.placeholder(tf.float32, shape=[1, None, None, 3], name='dnn_in')
z1 = 2 / x
z2 = 1 / z1
z3 = z2 / 0.25 + 0.3
z4 = z3 - x * 1.5 - 0.3
y = tf.identity(z4, name='dnn_out')
sess=tf.Session()
sess.run(tf.global_variables_initializer())
graph_def = tf.graph_util.convert_variables_to_constants(sess, sess.graph_def, ['dnn_out'])
tf.train.write_graph(graph_def, '.', 'image_process.pb', as_text=False)
print("image_process.pb generated, please use \
path_to_ffmpeg/tools/python/convert.py to generate image_process.model\n")
output = sess.run(y, feed_dict={x: in_data})
imageio.imsave("out.jpg", np.squeeze(output))
Signed-off-by: Guo, Yejun <yejun.guo@intel.com>
2020-04-22 13:15:00 +08:00
Guo, Yejun
ef79408e97
dnn/native: add native support for 'mul'
...
it can be tested with model file generated from above python script:
import tensorflow as tf
import numpy as np
import imageio
in_img = imageio.imread('input.jpg')
in_img = in_img.astype(np.float32)/255.0
in_data = in_img[np.newaxis, :]
x = tf.placeholder(tf.float32, shape=[1, None, None, 3], name='dnn_in')
z1 = 0.5 + 0.3 * x
z2 = z1 * 4
z3 = z2 - x - 2.0
y = tf.identity(z3, name='dnn_out')
sess=tf.Session()
sess.run(tf.global_variables_initializer())
graph_def = tf.graph_util.convert_variables_to_constants(sess, sess.graph_def, ['dnn_out'])
tf.train.write_graph(graph_def, '.', 'image_process.pb', as_text=False)
print("image_process.pb generated, please use \
path_to_ffmpeg/tools/python/convert.py to generate image_process.model\n")
output = sess.run(y, feed_dict={x: in_data})
imageio.imsave("out.jpg", np.squeeze(output))
Signed-off-by: Guo, Yejun <yejun.guo@intel.com>
2020-04-22 13:14:47 +08:00
Guo, Yejun
6aa7e07e7c
dnn/native: add native support for 'add'
...
It can be tested with the model file generated with below python script:
import tensorflow as tf
import numpy as np
import imageio
in_img = imageio.imread('input.jpg')
in_img = in_img.astype(np.float32)/255.0
in_data = in_img[np.newaxis, :]
x = tf.placeholder(tf.float32, shape=[1, None, None, 3], name='dnn_in')
z1 = 0.039 + x
z2 = x + 0.042
z3 = z1 + z2
z4 = z3 - 0.381
z5 = z4 - x
y = tf.math.maximum(z5, 0.0, name='dnn_out')
sess=tf.Session()
sess.run(tf.global_variables_initializer())
graph_def = tf.graph_util.convert_variables_to_constants(sess, sess.graph_def, ['dnn_out'])
tf.train.write_graph(graph_def, '.', 'image_process.pb', as_text=False)
print("image_process.pb generated, please use \
path_to_ffmpeg/tools/python/convert.py to generate image_process.model\n")
output = sess.run(y, feed_dict={x: in_data})
imageio.imsave("out.jpg", np.squeeze(output))
Signed-off-by: Guo, Yejun <yejun.guo@intel.com>
2020-04-22 13:14:30 +08:00
Paul B Mahol
4457f75c65
avfilter: add maskedthreshold filter
2020-04-18 12:34:49 +02:00
Paul B Mahol
9987f6d01e
avfilter: add tmedian filter
2020-04-18 12:34:49 +02:00
Limin Wang
403bee30a5
avfilter/af_acrossover: Check sscanf() return value
...
Signed-off-by: Limin Wang <lance.lmwang@gmail.com>
2020-04-17 16:56:13 +02:00
Paul B Mahol
24db9372eb
avfilter/af_astats: add noise floor count stat
2020-04-17 13:28:01 +02:00
Paul B Mahol
715da29501
avfilter/af_astats: add slice threading support
2020-04-17 13:26:44 +02:00
Paul B Mahol
87b4fb65a8
avfilter/af_astats: measure noise floor
2020-04-17 13:26:30 +02:00
Paul B Mahol
0607f1bcb0
avfilter/af_amix: unbreak FATE, increase iterator when breaking from loop
2020-04-14 19:21:23 +02:00
Paul B Mahol
10a68ccd58
avfilter/af_amix: use av_strtod() for weights
2020-04-14 12:38:47 +02:00
Paul B Mahol
ce24b1def0
avfilter/vf_telecine: avoid possible null-pointer dereference
2020-04-14 12:12:42 +02:00
Paul B Mahol
70f866ad1b
avfilter/vf_mix: check if array is available
2020-04-13 16:44:01 +02:00
Gyan Doshi
2e2fa2d6e6
doc/filters: clarify metadata and logging for blackdetect
2020-04-13 11:23:24 +05:30
Carl Eugen Hoyos
dbc5c0c1c8
lavfi/telecine: Mark telecined frames as interlaced.
2020-04-11 13:48:52 +02:00
Gyan Doshi
49a32fa45c
avfilter/delogo: correct indentation for option show.
2020-04-11 11:46:48 +05:30
Gyan Doshi
74fe697f96
avfilter/delogo: remove deprecated options
...
Deprecated in 2015 in 8bc708fcee
2020-04-11 11:46:43 +05:30
Limin Wang
46d2b2071b
avfilter/ebur128: prefer to use variable instead of type for sizeof
...
Signed-off-by: Limin Wang <lance.lmwang@gmail.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2020-04-09 15:03:36 +02:00
Rosen Penev
8beb9e571c
avfilter/vf_drawtext: only test available exceptions
...
soft float systems do not define these macros under musl.
Fixes: Ticket7102
Signed-off-by: Rosen Penev <rosenp@gmail.com>
2020-04-09 00:59:21 +02:00
Lynne
97b526c192
hwcontext_vulkan: only use one semaphore per image
...
The idea was to allow separate planes to be filtered independently, however,
in hindsight, literaly nothing uses separate per-plane semaphores and it
would only work when each plane is backed by separate device memory.
2020-04-07 12:52:56 +01:00
Paul B Mahol
3f9fd9dcfd
avfilter/vf_xfade: add slice transitions
2020-04-07 13:51:25 +02:00
Guo, Yejun
7e4527e8fa
avfilter/vf_derain.c: put all the calculation in model file.
...
currently, the model outputs the rain, and so need a subtraction
in filter c code to get the final derain result.
I've sent a PR to update the model file and accepted, see at
https://github.com/XueweiMeng/derain_filter/pull/3
Signed-off-by: Guo, Yejun <yejun.guo@intel.com>
Signed-off-by: Steven Liu <lq@chinaffmpeg.org>
2020-04-07 11:04:47 +08:00
Guo, Yejun
ffa1561608
dnn_backend_native_layer_mathbinary: add sub support
...
more math binary operations will be added here
Signed-off-by: Guo, Yejun <yejun.guo@intel.com>
2020-04-07 11:04:34 +08:00
Guo, Yejun
2114c42418
avfilter/vf_dnn_processing.c: fix typo for the linesize of dnn data
...
Signed-off-by: Guo, Yejun <yejun.guo@intel.com>
2020-04-07 11:03:25 +08:00
Lynne
ca76a5ba1a
scale_vulkan: correctly copy the colormatrix
2020-04-06 19:16:35 +01:00
Carl Eugen Hoyos
61dcaf5fb7
lavf, lavfi: Remove uses of sizeof(char).
...
The C standard requires sizeof(char) == 1.
2020-04-04 23:21:14 +02:00
Carl Eugen Hoyos
e61767c40a
lavfi/scale_qsv: Fix a format specifier for a variable of type int.
2020-04-04 23:18:18 +02:00
Paul B Mahol
ec7fb45240
avfilter/vf_v360: add pannini input support
2020-04-04 14:16:28 +02:00
Paul B Mahol
dc67c0f180
avfilter/vf_v360: improve description of output fov options
2020-04-03 17:14:58 +02:00
Paul B Mahol
8e1354c95d
avfilter/x86/vf_v360_init: add missing cases
2020-04-02 12:25:37 +02:00
Paul B Mahol
e4809e12ea
avfilter/vf_v360: add SIMD for lagrange9 interpolation
2020-04-02 12:25:37 +02:00
Paul B Mahol
b00b935d99
avfilter/vf_v360: add lagrange9 interpolation
2020-04-02 12:25:37 +02:00
Carl Eugen Hoyos
00ce1ec6a5
lavfi/deshake_opencl: Do not use bool, powerpc does not like it.
...
Fixes ticket #8591 .
2020-04-01 15:48:19 +02:00
Paul B Mahol
72be5d4661
avfilter/vf_v360: fix swapped variables
2020-03-29 13:27:49 +02:00
Paul B Mahol
85025162da
avfilter/vf_v360: speedup fisheye output
2020-03-29 13:27:49 +02:00
Paul B Mahol
460001981f
avfilter/vf_v360: reduce unnecessary negations
2020-03-29 13:27:49 +02:00
Limin Wang
585ac1ff5b
avfilter/vf_showinfo: limit the max number of timecode
...
Signed-off-by: Limin Wang <lance.lmwang@gmail.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2020-03-28 19:21:11 +01:00
Yaroslav Pogrebnyak
4976b102d8
avfilter: add vf_overlay_cuda
...
Signed-off-by: Timo Rothenpieler <timo@rothenpieler.org>
2020-03-28 18:39:40 +01:00
Paul B Mahol
ddbd77da90
avfilter/af_acrossover: revert 270068b5a
...
Actually it did not work well.
2020-03-27 10:13:20 +01:00
Limin Wang
aa822007a4
avfilter/vf_showinfo: check if the s12m data size is valid
...
Signed-off-by: Limin Wang <lance.lmwang@gmail.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2020-03-27 01:42:16 +01:00
Paul B Mahol
840e92da17
avfilter/vf_v360: improve sg input format
...
Specifically unbreak yaw functionality.
2020-03-26 13:53:22 +01:00
Paul B Mahol
7931e766ad
avfilter/vf_v360: improve sg output format
2020-03-26 13:37:13 +01:00
Paul B Mahol
0b43897530
avfilter/vf_v360: fix hfov/vfov calculation from dfov for sg projection
2020-03-25 13:38:41 +01:00
Andreas Rheinhardt
65e8f6dd9b
avfilter/vf_paletteuse: Forward error codes
...
Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@gmail.com>
2020-03-24 20:14:08 +01:00
Gyan Doshi
7239254b1d
avfilter/hue: fix range in comment
...
Found-by: Michael Koch
Signed-off-by: Gyan Doshi <ffmpeg@gyani.pro>
2020-03-24 15:04:52 +05:30
Linjie Fu
acc6f632b4
lavfi/vf_dnn_processing: Fix compile warning of mixed declarations and code
...
Signed-off-by: Linjie Fu <linjie.fu@intel.com>
Reviewed-by: Guo, Yejun <yejun.guo@intel.com>
2020-03-19 14:27:23 +08:00
Lynne
1a5e9ae4d8
scale_vulkan: add support for RGB->YUV conversions
...
Only top-left chroma position supported for now.
2020-03-17 22:52:00 +00:00
Paul B Mahol
d64cbd4fda
remove CHAR_MIN/CHAR_MAX usage
...
It is not needed at all.
2020-03-17 22:46:36 +01:00
Paul B Mahol
6fbc7f092e
avfilter/af_anequalizer: fix off by one in reallocation
2020-03-14 19:39:04 +01:00
Paul B Mahol
8f222573e9
avfilter/f_sendcmd: add more useful variables
2020-03-13 17:19:33 +01:00
Guo, Yejun
e35f966853
avfilter/vf_dnn_processing.c: add frame size change support for planar yuv format
...
The Y channel is handled by dnn, and also resized by dnn. The UV channels
are resized with swscale.
The command to use espcn.pb (see vf_sr) looks like:
./ffmpeg -i 480p.jpg -vf format=yuv420p,dnn_processing=dnn_backend=tensorflow:model=espcn.pb:input=x:output=y -y tmp.espcn.jpg
Signed-off-by: Guo, Yejun <yejun.guo@intel.com>
Reviewed-by: Pedro Arthur <bygrandao@gmail.com>
2020-03-12 18:22:51 +08:00
Guo, Yejun
bd50453894
avfilter/vf_dnn_processing.c: add planar yuv format support
...
Only the Y channel is handled by dnn, the UV channels are copied
without changes.
The command to use srcnn.pb (see vf_sr) looks like:
./ffmpeg -i 480p.jpg -vf format=yuv420p,scale=w=iw*2:h=ih*2,dnn_processing=dnn_backend=tensorflow:model=srcnn.pb:input=x:output=y -y srcnn.jpg
Signed-off-by: Guo, Yejun <yejun.guo@intel.com>
Reviewed-by: Pedro Arthur <bygrandao@gmail.com>
2020-03-12 18:22:39 +08:00
Guo, Yejun
d86a8c056b
avfilter/vf_dnn_processing.c: use swscale for uint8<->float32 convert
...
Signed-off-by: Guo, Yejun <yejun.guo@intel.com>
Reviewed-by: Pedro Arthur <bygrandao@gmail.com>
2020-03-12 18:22:18 +08:00
James Almer
36aaee2a65
avfilter/Makefile: remove dnn files when calling make clean
...
Also remove the ancient reference to libmpcodecs while at it.
Signed-off-by: James Almer <jamrial@gmail.com>
Reviewed-by: Paul B Mahol <onemda@gmail.com>
2020-03-11 14:11:37 +08:00
Paul B Mahol
70209000fd
avfilter/f_sendcmd: implement expr flag
...
Make possible to parse expressions and store results as arguments
for target filters.
2020-03-03 20:38:56 +01:00
Paul B Mahol
5c7b6aadb5
avfilter/vf_v360: simplify some unnecessary indirections
2020-03-03 12:41:30 +01:00
Paul B Mahol
580d68f90e
avfilter/vf_v360: add half equirectangular input format
2020-03-03 12:21:16 +01:00
Paul B Mahol
ca04231983
avfilter/vf_v360: add half equirectangular output format
2020-03-03 12:03:42 +01:00
Guo, Yejun
f9cb7cf424
avfilter/vf_sr.c: refine code to use AVPixFmtDescriptor.log2_chroma_h/w
...
Signed-off-by: Guo, Yejun <yejun.guo@intel.com>
Reviewed-by: Pedro Arthur <bygrandao@gmail.com>
2020-03-03 15:28:59 +08:00
Paul B Mahol
6e1913a02e
avfilter/vf_v360: add truncated square pyramid input format
2020-03-02 19:05:13 +01:00
Paul B Mahol
3dd81be866
avfilter/vf_v360: add truncated square pyramid output format
2020-03-02 17:43:25 +01:00
Paul B Mahol
1281399135
avfilter/vf_v360: fix cylindrical input format
2020-03-01 11:24:31 +01:00
Paul B Mahol
db8146f4dd
avfilter/vf_v360: cleanup some code
2020-03-01 10:33:36 +01:00
Paul B Mahol
8f3df1dd4d
avfilter/vf_v360: improve interpolation for equirect input at poles
2020-02-29 22:35:02 +01:00
Andreas Rheinhardt
be82dc175b
avfilter/vf_cas: Remove superfluous ;
...
The second ; in a double ;; is actually a null statement. It triggers
the typical declaration-after-statement compiler-warnings if it occurs
in the middle of several declarations (like here).
Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@gmail.com>
Reviewed-by: Paul B Mahol <onemda@gmail.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2020-02-29 22:31:01 +01:00
Paul B Mahol
f707c84b8b
avfilter/vf_v360: add partial size setup for flat
...
Other part of size is calculated from both available horizontal
and vertical FOV and given one size component.
2020-02-29 20:22:37 +01:00
Paul B Mahol
3733a6bc20
avfilter/vf_v360: speed up fisheye input calculation
2020-02-29 16:39:35 +01:00
Paul B Mahol
2dfd9445ff
avfilter/vf_v360: improve tetrahedron input format at frame borders
2020-02-29 14:24:35 +01:00
Paul B Mahol
50a13b987b
avfilter/vf_v360: simplify tetrahedron input calculation
2020-02-29 14:24:35 +01:00
Paul B Mahol
fc7d4d08fb
avfilter/vf_v360: improve precision of some output formats
2020-02-29 14:24:35 +01:00
Paul B Mahol
31ecfa95fb
avfilter/vf_v360: simplify code which handles interpolation points
2020-02-28 16:53:19 +01:00
Paul B Mahol
9b22254331
avfilter/vf_v360: add initial barrel split format input support
2020-02-27 23:37:23 +01:00
Paul B Mahol
b0a9960a77
avfilter/vf_v360: add barrel split format output support
2020-02-26 14:52:25 +01:00
Jacob Ruiz
ba2581adb2
avfilter/vf_zscale: fix crash on unaligned input
2020-02-25 19:52:26 +01:00
Paul B Mahol
7e08a92370
avfilter/vf_convolve: reset fft/ifft pointers after free
2020-02-25 17:35:09 +01:00
Paul B Mahol
b484eb2556
avfilter/vf_v360: add basic commands support
2020-02-25 11:33:06 +01:00
Paul B Mahol
08a21c1fd8
avfilter/vf_v360: handle gracefully invalid values for rorder option
2020-02-25 11:12:02 +01:00
Paul B Mahol
72b6c8c99f
avfilter: add Contrast Adaptive Sharpen video filter
2020-02-24 11:57:25 +01:00
Paul B Mahol
90913abc2e
avfilter/vf_v360: improve dfisheye_to_xyz() output
2020-02-23 22:00:32 +01:00
Paul B Mahol
e6ea0e7429
avfilter/vf_v360: improve fisheye_to_xyz() output
2020-02-23 21:55:35 +01:00
Paul B Mahol
ebc8806b9f
avfilter/vf_v360: improve equirect_to_xyz() quality
2020-02-23 18:15:06 +01:00
Linjie Fu
edf2c7be5c
lavfi/vf_scale_qsv: fix the class_name in help for scale_qsv
...
Class name is used in show_help_children(avfilter_get_class(),...)
to prompt the available filters.
$ ffmpeg -h full
Before:
qsvscale AVOptions:
After:
scale_qsv AVOptions:
Signed-off-by: Linjie Fu <linjie.fu@intel.com>
Signed-off-by: Zhong Li <zhongli_dev@126.com>
2020-02-18 10:27:02 +08:00
Michael Niedermayer
0c0ca0f244
avfilter/vf_aspect: Fix integer overflow in compute_dar()
...
Fixes: signed integer overflow: 1562273630 * 17 cannot be represented in type 'int'
Fixes: Ticket8323
Found-by: Suhwan
Reviewed-by: Paul B Mahol <onemda@gmail.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2020-02-16 15:13:10 +01:00
Paul B Mahol
314a783bb8
avfilter/vf_phase: add >8 bit support
2020-02-15 12:18:51 +01:00
Paul B Mahol
55755b4ab2
avfilter/opencl: use av_fopen_utf8()
2020-02-14 21:49:47 +01:00
Paul B Mahol
5452d0372c
avfilter/vf_fieldhint: use av_fopen_utf8()
2020-02-14 21:47:55 +01:00
Paul B Mahol
a2c0746344
avfilter/vf_lut3d: use av_fopen_utf8()
2020-02-14 21:44:38 +01:00
Paul B Mahol
5fe6c6b8f4
avfilter/vf_remap: add fill color option
2020-02-14 13:19:05 +01:00
Paul B Mahol
1c6a91990d
avfilter: add pad opencl filter
2020-02-14 09:59:27 +01:00
Paul B Mahol
47773f7979
avfilter/vf_xmedian: implement percentile option
2020-02-12 14:59:32 +01:00
Paul B Mahol
28743f1803
avfilter/vf_median: implement percentile option
2020-02-12 11:27:28 +01:00
Paul B Mahol
cf92f42672
avfilter/vf_colorlevels: add support for commands
2020-02-11 14:19:56 +01:00
Paul B Mahol
52cd7a6337
avfilter/vf_colorkey: add support for commands
2020-02-11 14:00:21 +01:00
Andreas Rheinhardt
212077eda4
avfilter/vf_dedot: Fix leak of AVFrame if making it writable fails
...
Even in this scenario, the frame still contains references to data that
won't be freed if the frame isn't unreferenced. And the AVFrame itself
will leak, too.
Fixes Coverity issue #1441422 .
Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@gmail.com>
Reviewed-by: Paul B Mahol <onemda@gmail.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2020-02-11 00:03:44 +01:00
Paul B Mahol
e63a66416f
avfilter/vf_thumbnail: fix possible crash on error
2020-02-10 15:46:42 +01:00
Paul B Mahol
32bc0e0444
avfilter/vf_thumbnail: add timeline support
2020-02-10 15:46:42 +01:00
Paul B Mahol
1e6cef6861
avfilter/vf_fade: fix color fading for planar rgb
2020-02-09 22:50:07 +01:00
Paul B Mahol
06db1bef4c
avfilter/vf_fade: add >8 bit support for black and alpha fade
2020-02-09 22:28:59 +01:00
Mark Thompson
593106ff47
lavfi/vf_*_vaapi: Fix error case
...
Fixes CID 1452400, 1452416, 1452550, 1452590, 1452760
.
2020-02-09 20:36:45 +00:00
Mark Thompson
f130b22119
lavfi/vf_deshake_opencl: Avoid propagating uninitialised data
...
Fixes CID 1452753.
2020-02-09 20:36:45 +00:00
Paul B Mahol
53a485cd37
avfilter/af_afftfilt: fix memory leaks on error
2020-02-09 15:49:09 +01:00
Paul B Mahol
2174a315b4
avfilter/af_afffilt: fix crash on error
2020-02-09 15:42:48 +01:00
Paul B Mahol
283e755734
avfilter/vf_xfade: add diagonal smooth transitions
2020-02-09 12:59:56 +01:00
Paul B Mahol
3f24e744ad
avfilter/af_asoftclip: add support for commands
2020-02-09 10:59:20 +01:00
Paul B Mahol
d842998183
avfilter/af_asoftclip: add slice threading support
2020-02-09 10:47:43 +01:00
Paul B Mahol
3750e36aa8
avfilter/vf_alphamerge: add AVClass to private context
2020-02-08 21:54:45 +01:00
Andreas Rheinhardt
adea33f465
avfilter/vf_paletteuse: Fix potential double-free of AVFrame
...
apply_palette() would free an AVFrame given to it only via an AVFrame *
(and not via AVFrame **) in three of its four exists (namely in the
normal path and in two error paths). So upon error the caller has no way
to know whether the frame has already been freed or not;
load_apply_palette(), the only caller, opted to free the frame in this
scenario.
This commit changes this by making apply_palette not freeing the frame
at all, which is left to load_apply_palette().
Fixes Coverity issue #1452434 .
Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@gmail.com>
Reviewed-by: Paul B Mahol <onemda@gmail.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2020-02-08 18:20:43 +01:00
Paul B Mahol
cbd5a4536c
avfilter/vf_alphamerge: add timeline support
2020-02-08 14:28:01 +01:00
Paul B Mahol
a8d82cc2b8
avfilter/vf_fade: improve type option description
2020-02-08 12:40:23 +01:00
Paul B Mahol
8cab0ce5dc
avfilter/vf_fade: add missing .flags for type option
2020-02-08 12:36:59 +01:00
Paul B Mahol
68416e4ba7
avfilter/vf_maskedclamp: make C version consistent with ASM one
...
In case of undefined behaviour.
2020-02-08 10:46:37 +01:00
Paul B Mahol
3720153ffc
aviflter/vf_xfade: add pixelize transition
2020-02-07 22:35:16 +01:00
Paul B Mahol
e3e5598290
avfilter/vf_xfade: add dissolve transition
2020-02-07 22:00:14 +01:00
Paul B Mahol
bfdd6304fb
avfilter/af_crystalizer: add slice threading support
2020-02-07 19:26:39 +01:00
Paul B Mahol
ae5a435300
avfilter: add afirsrc filter
2020-02-07 17:07:30 +01:00
Paul B Mahol
7e8721e98e
avfilter/af_acrossover: free all output frames on error
2020-02-07 12:13:06 +01:00
Paul B Mahol
cd671ea083
avfilter/af_acrossover: add slice threading support
2020-02-07 12:13:06 +01:00
Paul B Mahol
270068b5af
avfilter/af_acrossover: improve filter output
...
Makes sum always flat. Also faster.
2020-02-06 15:45:19 +01:00
James Almer
616e9b5cff
avfilter/Makefile: add vulkan.h to the list of skipped headers
...
Should fix make checkheaders
Signed-off-by: James Almer <jamrial@gmail.com>
2020-02-06 10:26:31 -03:00
Paul B Mahol
2d58fa6d9e
avfilter/vf_xfade: add horzopen/close transition
2020-02-05 16:53:06 +01:00
Paul B Mahol
10f4441acb
avfilter/vf_xfade: add vertopen/close transition
2020-02-05 16:44:50 +01:00
Martin Storsjö
0815a22dcc
vf_ssim: Fix loading doubles to float registers on i386
...
This fixes the tests filter-refcmp-ssim-yuv and filter-refcmp-ssim-rgb
on i386 after breaking in fcc0424c93
.
Signed-off-by: Martin Storsjö <martin@martin.st>
2020-02-05 14:38:26 +02:00
Lynne
a71a5d9214
lavfi: bump minor version for the Vulkan filters
2020-02-04 23:52:29 +00:00
Lynne
907ae87d6e
lavfi: add an chromaber_vulkan filter
...
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.
2020-02-04 23:19:48 +00:00
Lynne
a2db7343e0
lavfi: add an avgblur_vulkan filter
...
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).
2020-02-04 23:19:48 +00:00
Lynne
7bb443137c
lavfi: add an overlay_vulkan filter
...
This commit adds a basic, non-converting overlay filter for Vulkan.
2020-02-04 23:19:48 +00:00
Lynne
d95c509cc6
lavfi: add an scale_vulkan filter
...
This commit adds a basic, non-converting Vulkan scaling filter.
2020-02-04 23:19:48 +00:00
Lynne
6fca61bbc9
lavfi: add Vulkan filtering framework
...
This commit adds a Vulkan filtering infrastructure for libavfilter.
It attempts to abstract as much as possible of the Vulkan API from filters.
The way the hwcontext and the framework are designed permits for parallel,
non-CPU-blocking filtering throughout, with the exception of up/downloading
and mapping.
2020-02-04 23:19:48 +00:00
Philip Langdale
88d2ccbe93
lavfi/vf_hwupload: Add support for HW -> HW transfers
...
As we find ourselves wanting a way to transfer frames between
HW devices (or more realistically, between APIs on the same device),
it's desirable to have a way to describe the relationship. While
we could imagine introducing a `hwtransfer` filter, there is
almost no difference from `hwupload`. The main new feature we need
is a way to specify the target device. Having a single device
for the filter chain is obviously insufficient if we're dealing
with two devices.
So let's add a way to specify the upload target device, and if none
is specified, continue with the existing behaviour.
We must also correctly preserve the sw_format on such a transfer.
2020-02-04 23:19:48 +00:00
Paul B Mahol
fcc0424c93
avfilter/vf_ssim: improve precision
...
Use doubles for accumulating floats.
2020-02-04 18:28:04 +01:00
Paul B Mahol
efee86fafa
avfilter/vf_xfade: add circleopen & circleclose transition
2020-02-04 10:39:02 +01:00
Paul B Mahol
c4e29d0ba3
avfilter/vf_xfade_opencl: move passthrough code before eof check
2020-02-03 09:40:46 +01:00
Paul B Mahol
6d5e9ed67c
avfilter/vf_xfade: move passthrough code before eof check
2020-02-03 09:36:52 +01:00
Paul B Mahol
cd823dadf9
avfilter: add xfade opencl filter
2020-02-02 14:08:56 +01:00
Paul B Mahol
e5e7289ea8
avfilter/vf_xfade: remove unused header
2020-02-01 22:06:11 +01:00
Paul B Mahol
5c9a4ff8c1
avfilter/vf_psnr: fix logic failure when comparing time bases
2020-02-01 21:10:25 +01:00
Paul B Mahol
89eee09739
avfilter/vf_ssim: fix logic failure when comparing time bases
2020-02-01 21:09:32 +01:00
Marton Balint
c044ac2071
avfilter/vf_geq: use per-thread AVExpr for expression evaluation
...
There was no consensus about separating AVExprState from AVExpr so here is a
minimal patch using the existing AVExpr to fix ticket #7528 .
Signed-off-by: Marton Balint <cus@passwd.hu>
2020-01-31 22:47:49 +01:00
Paul B Mahol
53b4128ea0
avfilter/vf_xfade: add smooth transitions
2020-01-31 13:14:13 +01:00
Marton Balint
62d92a878d
avfilter/vf_drawtext: do not overread text if the last UTF8 sequence is invalid
...
Signed-off-by: Marton Balint <cus@passwd.hu>
2020-01-31 00:15:13 +01:00
Marton Balint
5ac8389cfa
avfilter/vf_drawtext: use replacement chars for invalid UTF8 sequences
...
continue is explicitly disallowed for GET_UTF8, so let's fix that as well.
Fixes crash with invalid UTF8 sequences.
Signed-off-by: Marton Balint <cus@passwd.hu>
2020-01-31 00:15:13 +01:00
Paul B Mahol
0a275fec62
avfilter/vf_xfade: add radial transition
2020-01-30 17:29:31 +01:00
Paul B Mahol
863accbefa
avfilter: add xfade filter
2020-01-30 16:35:33 +01:00
Marton Balint
47d5d0cc74
avfilter/vf_geq: fix multiple assignments of ptr in slice_geq_filter
...
Fixes Coverity CID 1427183.
Signed-off-by: Marton Balint <cus@passwd.hu>
2020-01-29 19:53:43 +01:00
Andreas Rheinhardt
ab39f0d841
avfilter/asrc_sinc: Don't allocate arrays separately
...
Besides the obvious advantages this also fixes a potential memleak:
If only one of the arrays had been successfully allocated, the other
would leak. This also fixes Coverity issues #1440386 and #1440387 .
Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@gmail.com>
Reviewed-by: Paul B Mahol <onemda@gmail.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2020-01-28 17:18:27 +01:00
Paul B Mahol
32ea6ffb16
avfilter/vf_colorconstancy: fix memory leak on error
...
Also remove unneeded log message while here.
2020-01-27 16:58:50 +01:00
Michael Niedermayer
dfc4714886
avfilter/vf_find_rect: Remove assert
...
A score of 0 is possible
Fixes: Ticket8500
Reviewed-by: Paul B Mahol <onemda@gmail.com>
Reviewed-by: Andreas Rheinhardt <andreas.rheinhardt@gmail.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2020-01-27 12:01:42 +01:00
Michael Niedermayer
6ff2474e02
avfilter/vf_find_rect: Increase worst case score
...
score could be 1.0 which lead to uninitialized values
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2020-01-27 12:01:42 +01:00
Gyan Doshi
6e6b34917e
avfilter/scale: don't fail for circular expressions
...
Due to conditional expressions, it is possible for them to be resolved
successfully. A warning is still printed.
2020-01-26 21:06:53 +05:30
Paul B Mahol
ecd95858d4
avfilter/vf_tonemap_opencl: fix long filter description
2020-01-26 14:51:52 +01:00
Paul B Mahol
4b4bcb126c
avfilter/vf_v360: do not remap alpha plane if that will be overwritten later
2020-01-25 20:00:53 +01:00
Paul B Mahol
9990cb16d3
avfilter/vf_v360: mark another hemisphere not visible for flat input format
2020-01-25 14:34:05 +01:00
Paul B Mahol
8d861cd850
avfilter/vf_v360: add mask option, unset pixels are marked as transparent
2020-01-25 14:34:05 +01:00
Paul B Mahol
31350de997
avfilter/vf_deshake_opencl: silence warning about usage of uninitialized value
2020-01-25 11:42:32 +01:00
Paul B Mahol
a4f2fc9341
avfilter/vf_v360: fix fov calculation from dfov for fisheye input/output
2020-01-24 23:22:38 +01:00
Paul B Mahol
d033f403d6
avfilter/vf_v360: support input flips for tetrahedron format
2020-01-23 11:20:18 +01:00
Paul B Mahol
05d3d09cf5
avfilter/vf_v360: fix small artifacts with tetrahedron inputs
2020-01-23 11:20:18 +01:00
Paul B Mahol
ec4f764249
avfilter/vf_v360: add tetrahedron format
2020-01-22 23:49:32 +01:00
Paul B Mahol
a3e67c2d2f
avfilter/vf_stack: add fill option for xstack
2020-01-22 19:13:51 +01:00
Paul B Mahol
a00fa73f47
avfilter/vf_v360: improve fisheye input format
2020-01-22 12:59:35 +01:00
Paul B Mahol
103a29b89d
avfilter/vf_v360: add support for fisheye input format
2020-01-21 20:12:54 +01:00
Paul B Mahol
fc2523c792
avfilter/vf_v360: add support for input fov to input sg format
2020-01-21 12:02:27 +01:00
Paul B Mahol
19f75e7787
avfilter/vf_v360: add support for cylindrical input format
2020-01-21 00:21:56 +01:00
Paul B Mahol
e57b9aa8b1
avfilter/vf_v360: add support for flat input format
2020-01-20 21:10:37 +01:00
Paul B Mahol
091695f8e8
avfilter/vf_v360: rewrite fov_from_dfov()
2020-01-20 21:10:37 +01:00
Paul B Mahol
15133c6ab2
avfilter/vf_v360: replace rest of roundf() with lrintf()
2020-01-19 19:54:29 +01:00
Paul B Mahol
3bf28d40e5
avfilter/vf_v360: change remaps to int16_t type
2020-01-19 19:54:29 +01:00
Paul B Mahol
ff5e241bca
avfilter/vf_v360: move map variable up
2020-01-19 19:54:29 +01:00
Paul B Mahol
fdc61267b4
avfilter/vf_v360: make more stuff const
2020-01-19 19:54:29 +01:00
Gyan Doshi
4de2106fbf
avfilter/pad: improve error check for w and h
...
Target dimensions have to cover entire input.
2020-01-19 11:17:53 +05:30
Paul B Mahol
feeef2f80c
avfilter/vf_normalize: add support for >8 depth
2020-01-18 17:28:23 +01:00
Paul B Mahol
ac51173024
avfilter/vf_normalize: add support for planar rgb
2020-01-18 17:28:23 +01:00
Paul B Mahol
4545699625
avfilter/vf_normalize: factor code dealing with AVFrame pixels out
2020-01-18 17:28:23 +01:00
Paul B Mahol
1908818e7b
avfilter/vf_normalize: move luts into private context
2020-01-18 17:28:23 +01:00
Paul B Mahol
273886fa60
avfilter/asrc_anoisesrc: add velvet noise
2020-01-18 17:27:10 +01:00
Paul B Mahol
fdddc0d678
avfilter/vf_v360: add perspective output projection
2020-01-18 17:25:48 +01:00
Paul B Mahol
62a0d22621
avfilter/vf_v360: add gaussian interpolation
2020-01-18 13:43:33 +01:00