summaryrefslogtreecommitdiff
path: root/libavfilter
Commit message (Collapse)AuthorAge
* avfilter/af_biquads: make commands work reliably within biquad filterPaul B Mahol2020-11-02
| | | | Previously changing single coefficient would give unexpected results.
* avfilter/af_biquads: add lattice-ladder formPaul B Mahol2020-11-02
|
* avfilter/vf_normalize: fix regression with white/black point calculationPaul B Mahol2020-10-27
|
* lavfi/Makefile: Remove opencl object files when calling make clean.Carl Eugen Hoyos2020-10-25
|
* avfilter/vf_v360: make commands always do relative rotationPaul B Mahol2020-10-25
|
* avfilter: add audio frequency and phase shift filtersPaul B Mahol2020-10-20
|
* avfilter/avf_aphasemeter: add out of phase and mono detectionRomane Lafon2020-10-20
| | | | | | | Extend aphasemeter to detect out of phase or mono sequences in stereo streams. Signed-off-by: Romane Lafon <romane@nomalab.com>
* avfilter/af_asubboost: use transposed II formPaul B Mahol2020-10-20
|
* avfilter/af_crossfeed: use transposed II formPaul B Mahol2020-10-20
|
* avfilter/af_aiir: remove unused argumentPaul B Mahol2020-10-19
|
* avfilter/af_aiir: fix sp2zp mappingPaul B Mahol2020-10-19
|
* dnn_backend_tf.c: add option sess_config for tf backendGuo, Yejun2020-10-19
| | | | | | | | | | | | | | | | | | | | | | | | | | | | TensorFlow C library accepts config for session options to set different parameters for the inference. This patch exports this interface. The config is a serialized tensorflow.ConfigProto proto, so we need two steps to use it: 1. generate the serialized proto with python (see script example below) the output looks like: 0xab...cd where 0xcd is the least significant byte and 0xab is the most significant byte. 2. pass the python script output into ffmpeg with dnn_processing=options=sess_config=0xab...cd The following script is an example to specify one GPU. If the system contains 3 GPU cards, the visible_device_list could be '0', '1', '2', '0,1' etc. '0' does not mean physical GPU card 0, we need to try and see. And we can also add more opitions here to generate more serialized proto. script example to generate serialized proto which specifies one GPU: import tensorflow as tf gpu_options = tf.GPUOptions(visible_device_list='0') config = tf.ConfigProto(gpu_options=gpu_options) s = config.SerializeToString() b = ''.join("%02x" % int(ord(b)) for b in s[::-1]) print('0x%s' % b)
* avfilter/af_aiir: remove unused variablePaul B Mahol2020-10-18
|
* avfilter/af_aiir: add analog transfer function formatPaul B Mahol2020-10-18
|
* avfilter/af_mcompand: Remove redundant calls to AVFilter.uninitAndreas Rheinhardt2020-10-18
| | | | | | | uninit is already called automatically (even when configuring the filter failed). Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@gmail.com>
* avfilter/af_aiir: use av_sscanf()Paul B Mahol2020-10-17
|
* avfilter/af_aiir: reverse order of biquads in serial processingPaul B Mahol2020-10-17
| | | | | This avoids most of clippings for fixed-point precision inputs. Also add warning about filtering fixed-point precision with parallel processing.
* avfilter/af_aiir: use transposed II form for biquad sectionsPaul B Mahol2020-10-16
|
* avfilter/af_aiir: implement parallel processingPaul B Mahol2020-10-16
|
* libavfilter/dnn/dnn_backend{openvino, tf}: check memory alloc non-NULLChris Miceli2020-10-14
| | | | | These previously would not check that the return value was non-null meaning it was susceptible to a sigsegv. This checks those values.
* libavfilter/dnn_backend_native: check mem allocationChris Miceli2020-10-14
| | | | check that frame allocations return non-null.
* avfilter/vf_scale_cuda: unload cuModule on uninitleozhang2020-10-12
| | | | | Signed-off-by: leozhang <nowerzt@gmail.com> Signed-off-by: Timo Rothenpieler <timo@rothenpieler.org>
* avfilter/af_sofalizer: allow up to 64 channelsPaul B Mahol2020-10-12
|
* avfilter/af_sofalizer: allow to specify virtual speakers indetifier as numberPaul B Mahol2020-10-12
|
* avfilter/avfilter.h: add missing FF_API_NEXT wrapperJames Almer2020-10-10
| | | | Signed-off-by: James Almer <jamrial@gmail.com>
* avfilter/vf_minterpolate: Remove redundant code for freeingAndreas Rheinhardt2020-10-09
| | | | | | | | ad73b32d2922f4237405043d19763229aee0e59e added some code for freeing in the input's config_props function, yet this is unnecessary as uninit is called anyway if config_props fails. Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@gmail.com>
* avfilter/vf_minterpolate: Fix left shift of negative valueAndreas Rheinhardt2020-10-09
| | | | | | | | | | | | This has happened when initializing the motion estimation context if width or height of the video was smaller than the block size used for motion estimation and if the motion interpolation mode indicates not to use motion estimation. The solution is of course to only initialize the motion estimation context if the interpolation mode uses motion estimation. Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@gmail.com>
* avfilter/vf_minterpolate: Reject too small dimensionsAndreas Rheinhardt2020-10-09
| | | | | | | | | | The latter code relies upon the dimensions to be not too small; otherwise one will call av_clip() with min > max lateron which aborts in case ASSERT_LEVEL is >= 2 or one will get a nonsense result that may lead to a heap-buffer-overflow/underflow. The latter has happened in ticket #8248 which this commit fixes. Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@gmail.com>
* avfilter/vf_v360: use quaternions for rotationPaul B Mahol2020-10-07
| | | | Fixes gimbal lock issues, and round-off errors.
* avfilter/vf_v360: fix possible out of range valuesPaul B Mahol2020-10-04
|
* avfilter/vf_v360: add mitchell interpolationPaul B Mahol2020-10-04
|
* avfilter/vf_v360: stop using floats variables in xyz_to_octahedronPaul B Mahol2020-09-30
| | | | Use proper integer variables.
* Revert "avfilter/setparams: add FF_FILTER_FLAG_HWFRAME_AWARE"Mark Thompson2020-09-29
| | | | | | | This reverts commit 5bbf58ab876279ca1a5a2f30563f271c99b93e62. The setparams filters are not hwframe aware, so the default context passthrough behaviour is needed to allow using them with hardware frames.
* avfilter/vf_v360: simplify input flippingPaul B Mahol2020-09-29
|
* avfilter/vf_v360: split maps into slicesPaul B Mahol2020-09-29
|
* dnn/native: add native support for denseMingyu Yin2020-09-29
| | | | Signed-off-by: Mingyu Yin <mingyu.yin@intel.com>
* avfilter/setparams: add FF_FILTER_FLAG_HWFRAME_AWAREPavel Koshevoy2020-09-27
| | | | | Allow setparams to be used with hw backed frames and avoid an assertion failure in avfilter_config_links.
* avfilter/vf_v360: add octahedron formatPaul B Mahol2020-09-27
|
* vf_colorspace: Added linear trc.Andrew Klaassen2020-09-27
| | | | | | | | This patch adds the coefficients for the linear gamma function (1,0,1,0) to the colorspace filter. Signed-off-by: Andrew Klaassen <clawsoon@yahoo.com> Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
* avfilter/vf_histogram: add slide modes for thistogramPaul B Mahol2020-09-26
|
* dnn: add a new interface DNNModel.get_outputGuo, Yejun2020-09-21
| | | | | | | | | | for some cases (for example, super resolution), the DNN model changes the frame size which impacts the filter behavior, so the filter needs to know the out frame size at very beginning. Currently, the filter reuses DNNModule.execute_model to query the out frame size, it is not clear from interface perspective, so add a new explict interface DNNModel.get_output for such query.
* dnn: put DNNModel.set_input and DNNModule.execute_model togetherGuo, Yejun2020-09-21
| | | | | | | | | | | | | | suppose we have a detect and classify filter in the future, the detect filter generates some bounding boxes (BBox) as AVFrame sidedata, and the classify filter executes DNN model for each BBox. For each BBox, we need to crop the AVFrame, copy data to DNN model input and do the model execution. So we have to save the in_frame at DNNModel.set_input and use it at DNNModule.execute_model, such saving is not feasible when we support async execute_model. This patch sets the in_frame as execution_model parameter, and so all the information are put together within the same function for each inference. It also makes easy to support BBox async inference.
* dnn: change dnn interface to replace DNNData* with AVFrame*Guo, Yejun2020-09-21
| | | | | | | | | | | | Currently, every filter needs to provide code to transfer data from AVFrame* to model input (DNNData*), and also from model output (DNNData*) to AVFrame*. Actually, such transfer can be implemented within DNN module, and so filter can focus on its own business logic. DNN module also exports the function pointer pre_proc and post_proc in struct DNNModel, just in case that a filter has its special logic to transfer data between AVFrame* and DNNData*. The default implementation within DNN module is used if the filter does not set pre/post_proc.
* dnn: add userdata for load model parameterGuo, Yejun2020-09-21
| | | | the userdata will be used for the interaction between AVFrame and DNNData
* dnn_backend_native_layer_conv2d.c: fix bug of loop boundary in single thread ↵Xu Jun2020-09-20
| | | | | | | | | | | mode. Before patch, fate test for dnn may fail in some Windows environment while succeed in my Linux. The bug was caused by a wrong loop boundary. After patch, fate test succeed in my windows mingw 64-bit. Signed-off-by: Xu Jun <xujunzz@sjtu.edu.cn> Signed-off-by: Guo, Yejun <yejun.guo@intel.com>
* avfilter/vf_datascope: fix oscilloscope with gray>8 depthPaul B Mahol2020-09-19
|
* avfilter/vf_showinfo: add const to the AVFrameSideData instanceLimin Wang2020-09-17
| | | | Signed-off-by: Limin Wang <lance.lmwang@gmail.com>
* dnn_backend_native_layer_conv2d.c: refine code.Xu Jun2020-09-17
| | | | | | | Move thread area allocate out of thread function into main thread. Signed-off-by: Xu Jun <xujunzz@sjtu.edu.cn>
* dnn_backend_native_layer_conv2d.c: fix memory allocation bug in multithread ↵Xu Jun2020-09-17
| | | | | | | | | | | | | function. Before patch, memory was allocated in each thread functions, which may cause more than one time of memory allocation and cause crash. After patch, memory is allocated in the main thread once, an index was parsed into thread functions. Bug fixed. Signed-off-by: Xu Jun <xujunzz@sjtu.edu.cn>
* avfilter/f_interleave: fix some issues with interleavingPaul B Mahol2020-09-15
|