summaryrefslogtreecommitdiff
path: root/libavfilter
Commit message (Collapse)AuthorAge
* Remove unnecessary avassert.h inclusionsAndreas Rheinhardt2021-07-22
| | | | Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
* Remove unnecessary mem.h inclusionsAndreas Rheinhardt2021-07-22
| | | | Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
* Remove obsolete version.h inclusionsAndreas Rheinhardt2021-07-22
| | | | | | | These have mostly been added because of FF_API_*; yet when these were removed, removing the header has been forgotten. Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
* avutil/internal, swresample/audioconvert: Remove cpu.h inclusionsAndreas Rheinhardt2021-07-22
| | | | | | | | | | These inclusions are not necessary, as cpu.h is already included wherever it is needed (via direct inclusion or via the arch-specific headers). Also remove other unnecessary cpu.h inclusions from ordinary non-headers. Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
* avcodec/avcodec: Don't include cpu.hAndreas Rheinhardt2021-07-22
| | | | | | | It is not used here at all; instead, add it where it is used without including it or any of the arch-specific CPU headers. Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
* avcodec/avcodec: Stop including channel_layout.h in avcodec.hAndreas Rheinhardt2021-07-22
| | | | | | Also include channel_layout.h directly wherever used. Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
* lavfi/dnn_backend_ov: Rename RequestItem to OVRequestItemShubhanshu Saxena2021-07-22
| | | | | | | Rename RequestItem to OVRequestItem in the OpenVINO backend to avoid confusion. Signed-off-by: Shubhanshu Saxena <shubhanshu.e01@gmail.com>
* lavfi/dnn_backend_openvino.c: Fix Memory Leak in execute_model_ovShubhanshu Saxena2021-07-22
| | | | | | | | In cases where the execution inside the function execute_model_ov fails, the OVRequestItem must be pushed back to the request_queue before returning the error. In case pushing back fails, release the allocated memory. Signed-off-by: Shubhanshu Saxena <shubhanshu.e01@gmail.com>
* avfilter/af_drmeter: Check that there is dataMichael Niedermayer2021-07-20
| | | | | | | | Fixes: floating point division by 0 Fixes: -nan is outside the range of representable values of type 'int' Fixes: Ticket8307 Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* avfilter/vf_fftdnoiz: Use lrintf() in export_row8()Michael Niedermayer2021-07-20
| | | | | | | Fixes: 1.04064e+10 is outside the range of representable values of type 'int' Fixes: Ticket 8279 Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* avfilter/vf_mestimate: Check b_countMichael Niedermayer2021-07-20
| | | | | | | Fixes: left shift of negative value -1 Fixes: Ticket8270 Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* avfilter/vf_signature: Initialize all houghspace elementsJai Luthra2021-07-20
| | | | Co-authored-by: Oscar <oscar_davids@outlook.com>
* avfilter/internal: Mark ff_filter_get_nb_threads() as av_pureAndreas Rheinhardt2021-07-18
| | | | | | | | | | | It does not modify anything; it only returns a value, so it fulfills the requirements for av_pure. The deeper rationale behind this change is that this function is called quite often inside arguments to FFMIN which may lead to two calls to it; declaring this function as av_pure allows the compiler to optimize the second call away. Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
* avfilter/vf_v360: avoid doubles in fov_from_dfov()Paul B Mahol2021-07-17
|
* avfilter/vf_chromanr: add also euclidean distance for calculationsPaul B Mahol2021-07-17
|
* avfilter/vf_v360: fix visibility test for fisheye projectionDaniel Playfair Cal2021-07-17
| | | | | Previously the visibility test referred to a circle in the input. This changes it so that it refers accurately to the entire area in the input.
* avfilter/[vf_nnedi, vf_estdif]: check interlaced flag on correct frameKacper Michajłow2021-07-16
| | | | | | | Fixes regression in vf_nnedi after 24dc6d386c6f7edb8f6945319f53a7f0b1642bb8 and vf_estdif while at it. Signed-off-by: Kacper Michajłow <kasper93@gmail.com>
* avfilter/vf_nnedi: fix time base for large denominatorsPaul B Mahol2021-07-16
|
* avfilter/vf_estdif: fix time base for large denominatorsPaul B Mahol2021-07-16
|
* avfilter/vf_w3fdif: fix time base for large denominatorsPaul B Mahol2021-07-16
|
* avfilter/af_astats: Only print header lines when values are to be printedTobias Rapp2021-07-14
| | | | | | | | Avoids empty "Channel" or "Overall" header lines added to log output when measurement is restricted to one scope using "measure_perchannel=none" or "measure_overall=none". Signed-off-by: Tobias Rapp <t.rapp@noa-archive.com>
* lavfi/vf_scale: forward errors from swscaleAnton Khirnov2021-07-12
|
* lavfi/vf_scale: pass only the private context to scale_slice()Anton Khirnov2021-07-12
| | | | | Not the input link. The function does nothing with the link except extract the private context from it.
* lavfi/dnn_backend_tf: Error HandlingShubhanshu Saxena2021-07-11
| | | | | | | This commit adds handling for cases where an error may occur, clearing the allocated memory resources. Signed-off-by: Shubhanshu Saxena <shubhanshu.e01@gmail.com>
* lavfi/dnn_backend_tf: Separate function for Completion CallbackShubhanshu Saxena2021-07-11
| | | | | | | This commit rearranges the existing code to create a separate function for the completion callback in execute_model_tf. Signed-off-by: Shubhanshu Saxena <shubhanshu.e01@gmail.com>
* lavfi/dnn_backend_tf: Separate function for filling RequestItemShubhanshu Saxena2021-07-11
| | | | | | | This commit rearranges the existing code to create separate function for filling request with execution data. Signed-off-by: Shubhanshu Saxena <shubhanshu.e01@gmail.com>
* lavfi/dnn_backend_tf: Request-based ExecutionShubhanshu Saxena2021-07-11
| | | | | | | | This commit uses TFRequestItem and the existing sync execution mechanism to use request-based execution. It will help in adding async functionality to the TensorFlow backend later. Signed-off-by: Shubhanshu Saxena <shubhanshu.e01@gmail.com>
* lavfi/dnn_backend_tf: Add TFInferRequest and TFRequestItemShubhanshu Saxena2021-07-11
| | | | | | | | This commit introduces a typedef TFInferRequest to store execution parameters for a single call to the TensorFlow C API. This typedef is used in the TFRequestItem. Signed-off-by: Shubhanshu Saxena <shubhanshu.e01@gmail.com>
* lavfi/dnn_backend_tf: TaskItem Based InferenceShubhanshu Saxena2021-07-11
| | | | | | | This commit uses the common TaskItem and InferenceItem typedefs for execution in TensorFlow backend. Signed-off-by: Shubhanshu Saxena <shubhanshu.e01@gmail.com>
* avfilter/f_metadata: do not return the frame early if there is no metadataMarton Balint2021-07-06
| | | | | | | | | The early return caused isses for the "add" mode (got fixed in c95dfe5cce98cde3e7fb14fbd04b3897f3927cec) and the "select" mode needs a similar fix. It is probably better to fully remove the check, since all modes work correctly with NULL metadata. Signed-off-by: Marton Balint <cus@passwd.hu>
* avfilter/fps: remove unconventional acronymsGyan Doshi2021-07-06
| | | | | | | | | In dd770883e9, support for expressions was added. Among the constants added were labels of qnstc, qpal, sntsc & spal. These were added in ba2a8cb40b to represent parameter permutations where only the resolution is different. They don't have any usage currency and don't represent any industry standards or convention in terms of framerate.
* avfilter/dnn_filter_common: Use const where appropriateLimin Wang2021-07-06
| | | | Signed-off-by: Limin Wang <lance.lmwang@gmail.com>
* lavfi/dnn_backend_openvino.c: Fix Memory Leak in execute_model_ovShubhanshu Saxena2021-07-04
| | | | | | | | In cases where the execution inside the function execute_model_ov fails, push the RequestItem back to the request_queue before returning the error. In case pushing back fails, release the allocated memory. Signed-off-by: Shubhanshu Saxena <shubhanshu.e01@gmail.com>
* avfilter/vf_v360: add cylindrical equal area formatPaul B Mahol2021-06-30
|
* avfilter/vf_guided: support single inputXuewei Meng2021-06-29
| | | | | | | | | | | | Support single input for guided filter by adding guidance mode. If the guidance mode is off, single input is required. And edge-preserving smoothing is conducted. If the mode is on, two inputs are needed. The second input serves as the guidance. For this mode, more tasks are supported, such as detail enhancement, dehazing and so on. Signed-off-by: Xuewei Meng <xwmeng96@gmail.com> Reviewed-by: Steven Liu <lq@chinaffmpeg.org>
* avfilter/scale_cuda: add support for pixel format conversionTimo Rothenpieler2021-06-25
|
* avfilter/scale_cuda: combine separate CUDA sourcesTimo Rothenpieler2021-06-24
|
* avfilter/cuda: fix ptx inflation with large payloadsTimo Rothenpieler2021-06-24
|
* libavfilter: Fix fate-source after 072788c46e36a21ca9e8f1e3cc19a1944db5b89cMartin Storsjö2021-06-23
| | | | Signed-off-by: Martin Storsjö <martin@martin.st>
* avfilter: compress CUDA PTX code if possibleTimo Rothenpieler2021-06-22
|
* lavfi/vf_vpp_qsv: fix the time_base for outlinkHaihao Xiang2021-06-20
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Since commit 89ffcd1, the status pts of the output link is set to a value in the input link time base, not in the output link time base when EOF is reached. Usually this pst value is larger than the required one because the output link time base is more greater than the input link time base. When "-vf vpp_qsv,fps" is used, user has to wait a long time for the ending of the pipeline because fps filter output a huge number of frames until the wrong status pts is hit. The issue can be triggered with the command below (use a clip with 1000 frames in this case): $> time ffmpeg -hwaccel qsv -c:v hevc_qsv -i input.h265 -vf "vpp_qsv=w=1920:h=1080,fps=fps=30" -f null - ... [out_0_0 @ 0x564ccd27e020] 10000000 buffers queued in out_0_0, something may be wrong. frame=40119596 fps=88080 q=-0.0 Lsize=N/A time=371:28:39.96 bitrate=N/A speed=2.94e+03x video:17238889kB audio:0kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: unknown real 9m7.451s user 2m34.102s sys 0m39.734s In order to avoid the above issue, the same time base for input and ouput links is used in this patch. Fixes ticket #9286 Signed-off-by: Zhong Li <zhongli_dev@126.com>
* lavfi/dnn_backend_openvino.c: fix crash when target is not specifiedGuo Yejun2021-06-19
|
* lavfi/dnn_backend_openvino.c: Fix Memory Leak for RequestItemShubhanshu Saxena2021-06-18
| | | | | | | Fix memory leak for RequestItem upon error while pushing to the request_queue in the completion callback. Signed-off-by: Shubhanshu Saxena <shubhanshu.e01@gmail.com>
* avfilter/vf_fps: extend support for expressionsJames Almer2021-06-13
| | | | | | | | | | | | | AV_OPT_TYPE_VIDEO_RATE AVOption types are parsed as expressions, but in a limited way. For example, name constants can only be parsed alone and not as part of a longer expression. This change allows usage like ffmpeg -i IN -vf fps="if(eq(source_fps\,film)\,ntsc_film\,source_fps)" OUT Suggested-by: ffmpeg@fb.com Signed-off-by: James Almer <jamrial@gmail.com>
* lavfi/dnn: Fill Task using Common FunctionShubhanshu Saxena2021-06-12
| | | | | | | This commit adds a common function for filling the TaskItems in all three backends. Signed-off-by: Shubhanshu Saxena <shubhanshu.e01@gmail.com>
* lavfi/dnn: Use uint8_t for async and do_ioproc in TaskItemsShubhanshu Saxena2021-06-12
| | | | | | | These properties have values either 0 or 1, so using uint8_t is a better option as compared to int. Signed-off-by: Shubhanshu Saxena <shubhanshu.e01@gmail.com>
* lavfi/dnn: Add nb_output to TaskItemShubhanshu Saxena2021-06-12
| | | | | | | Add nb_output property to TaskItem for use in TensorFlow backend and Native backend. Signed-off-by: Shubhanshu Saxena <shubhanshu.e01@gmail.com>
* lavfi/dnn: Convert output_name to char** in TaskItemShubhanshu Saxena2021-06-12
| | | | | | | Convert output_name to char **output_names in TaskItem and use it as a pointer to array of output names in the DNN backend. Signed-off-by: Shubhanshu Saxena <shubhanshu.e01@gmail.com>
* lavfi/dnn: Extract TaskItem and InferenceItem from OpenVino BackendShubhanshu Saxena2021-06-12
| | | | | | | Extract TaskItem and InferenceItem from OpenVino backend and convert ov_model to void in TaskItem. Signed-off-by: Shubhanshu Saxena <shubhanshu.e01@gmail.com>
* avfilter/overlay_cuda: support expression of x y positionSteven Liu2021-06-10
| | | | | | | and add per-frame / init mode for it. Signed-off-by: Steven Liu <liuqi05@kuaishou.com> Signed-off-by: Timo Rothenpieler <timo@rothenpieler.org>