aboutsummaryrefslogtreecommitdiffstats
path: root/libavfilter
Commit message (Collapse)AuthorAgeFilesLines
* avfilter/af_adelay: make per channel delay argument an int64_tJames Almer2021-04-251-4/+9
| | | | | | Should fix ticket #9196 Signed-off-by: James Almer <jamrial@gmail.com>
* lavfi/dnn_backend_openvino.c: Spelling Correction in OpenVino Backendshubhanshu022021-04-251-1/+1
| | | | | | | Correct Spelling of the word `descibe` to `describe` in init_model_ov Signed-off-by: shubhanshu02 <shubhanshu.e01@gmail.com>
* Include attributes.h directlyAndreas Rheinhardt2021-04-191-0/+1
| | | | | | | | Some files currently rely on libavutil/cpu.h to include it for them; yet said file won't use include it any more after the currently deprecated functions are removed, so include attributes.h directly. Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
* avfilter/af_mcompand: check allocation resultsMarton Balint2021-04-181-0/+3
| | | | | | Fixes the only remaining part of ticket #8931. Signed-off-by: Marton Balint <cus@passwd.hu>
* lavfi: add filter dnn_detect for object detectionGuo, Yejun2021-04-173-0/+423
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Below are the example steps to do object detection: 1. download and install l_openvino_toolkit_p_2021.1.110.tgz from https://software.intel.com/content/www/us/en/develop/tools/openvino-toolkit/download.html or, we can get source code (tag 2021.1), build and install. 2. export LD_LIBRARY_PATH with openvino settings, for example: .../deployment_tools/inference_engine/lib/intel64/:.../deployment_tools/inference_engine/external/tbb/lib/ 3. rebuild ffmpeg from source code with configure option: --enable-libopenvino --extra-cflags='-I.../deployment_tools/inference_engine/include/' --extra-ldflags='-L.../deployment_tools/inference_engine/lib/intel64' 4. download model files and test image wget https://github.com/guoyejun/ffmpeg_dnn/raw/main/models/openvino/2021.1/face-detection-adas-0001.bin wget https://github.com/guoyejun/ffmpeg_dnn/raw/main/models/openvino/2021.1/face-detection-adas-0001.xml wget https://github.com/guoyejun/ffmpeg_dnn/raw/main/models/openvino/2021.1/face-detection-adas-0001.label wget https://github.com/guoyejun/ffmpeg_dnn/raw/main/images/cici.jpg 5. run ffmpeg with: ./ffmpeg -i cici.jpg -vf dnn_detect=dnn_backend=openvino:model=face-detection-adas-0001.xml:input=data:output=detection_out:confidence=0.6:labels=face-detection-adas-0001.label,showinfo -f null - We'll see the detect result as below: [Parsed_showinfo_1 @ 0x560c21ecbe40] side data - detection bounding boxes: [Parsed_showinfo_1 @ 0x560c21ecbe40] source: face-detection-adas-0001.xml [Parsed_showinfo_1 @ 0x560c21ecbe40] index: 0, region: (1005, 813) -> (1086, 905), label: face, confidence: 10000/10000. [Parsed_showinfo_1 @ 0x560c21ecbe40] index: 1, region: (888, 839) -> (967, 926), label: face, confidence: 6917/10000. There are two faces detected with confidence 100% and 69.17%. Signed-off-by: Guo, Yejun <yejun.guo@intel.com>
* lavfi: show side data of detection bounding boxesGuo, Yejun2021-04-172-0/+31
|
* lavfi/qsvvpp: support async depthFei Wang2021-04-114-90/+191
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Async depth will allow qsv filter cache few frames, and avoid force switch and end filter task frame by frame. This change will improve performance for some multi-task case, for example 1:N transcode( decode + vpp + encode) with all QSV plugins. Performance data test on my Coffee Lake Desktop(i7-8700K) by using the following 1:8 transcode test case improvement: 1. Fps improved from 55 to 130. 2. Render/Video usage improved from ~61%/~38% to ~100%/~70%.(Data get from intel_gpu_top) test CMD: ffmpeg -v verbose -init_hw_device qsv=hw:/dev/dri/renderD128 -filter_hw_device \ hw -hwaccel qsv -hwaccel_output_format qsv -c:v h264_qsv -i 1920x1080.264 \ -vf 'vpp_qsv=w=1280:h=720:async_depth=4' -c:v h264_qsv -r:v 30 -preset 7 -g 33 -refs 2 -bf 3 -q 24 -f null - \ -vf 'vpp_qsv=w=1280:h=720:async_depth=4' -c:v h264_qsv -r:v 30 -preset 7 -g 33 -refs 2 -bf 3 -q 24 -f null - \ -vf 'vpp_qsv=w=1280:h=720:async_depth=4' -c:v h264_qsv -r:v 30 -preset 7 -g 33 -refs 2 -bf 3 -q 24 -f null - \ -vf 'vpp_qsv=w=1280:h=720:async_depth=4' -c:v h264_qsv -r:v 30 -preset 7 -g 33 -refs 2 -bf 3 -q 24 -f null - \ -vf 'vpp_qsv=w=1280:h=720:async_depth=4' -c:v h264_qsv -r:v 30 -preset 7 -g 33 -refs 2 -bf 3 -q 24 -f null - \ -vf 'vpp_qsv=w=1280:h=720:async_depth=4' -c:v h264_qsv -r:v 30 -preset 7 -g 33 -refs 2 -bf 3 -q 24 -f null - \ -vf 'vpp_qsv=w=1280:h=720:async_depth=4' -c:v h264_qsv -r:v 30 -preset 7 -g 33 -refs 2 -bf 3 -q 24 -f null - Signed-off-by: Fei Wang <fei.w.wang@intel.com> Reviewed-by: Linjie Fu <linjie.justin.fu@gmail.com> Signed-off-by: Zhong Li <zhongli_dev@126.com>
* avfilter/overlay_cuda: check av_buffer_ref resultTimo Rothenpieler2021-04-111-0/+4
|
* avfilter/vf_v360: unbreak fov_from_dfov() for (d)fisheye when width != heightPaul B Mahol2021-04-111-6/+6
| | | | Based on patch by Daniel Playfair Cal.
* avfilter/overlay_cuda: hold explicit reference to hw_device_ctxTimo Rothenpieler2021-04-111-1/+7
|
* avfilter/vf_v360: allow user to control fov for equirectagular formatPaul B Mahol2021-04-111-11/+103
| | | | It may be useful to use different values from typical 360/180 deg.
* lavfi/dnn: add post process for detectionGuo, Yejun2021-04-084-7/+33
|
* lavfi/dnn: refine code for frame pre/proc processingGuo, Yejun2021-04-086-14/+24
|
* lavfi/dnn_backend_openvino.c: only allow DFT_PROCESS_FRAME to get output dimGuo, Yejun2021-04-081-0/+5
|
* avfilter/vf_find_rect: Use correct format specifierAndreas Rheinhardt2021-04-041-1/+1
| | | | | | | | | Fixes the following GCC warning: warning: format ‘%lld’ expects argument of type ‘long long int’, but argument 4 has type ‘int64_t’ {aka ‘long int’} [-Wformat=] Reviewed-by: Gyan Doshi <ffmpeg@gyani.pro> Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
* avfilter/find_rect: write score to metadataGyan Doshi2021-04-041-0/+4
|
* avfilter/find_rect: add option to discard non-matching framesGyan Doshi2021-04-041-1/+8
| | | | Default is disabled.
* avfilter/find_rect: improve loggingGyan Doshi2021-04-041-1/+3
| | | | | Log now indicates timestamps of frames where a match is made. Loglevel is changed to INFO since the user specifically wants this info.
* avfilter/vf_codecview: Fix undefined left shifts of negative numbersAndreas Rheinhardt2021-04-011-4/+4
| | | | | | Affected the filter-codecview-mvs FATE-test. Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@gmail.com>
* avfilter/af_hdcd: Fix undefined shiftsAndreas Rheinhardt2021-04-011-4/+4
| | | | | | Affected the filter-hdcd-* FATE tests. Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@gmail.com>
* avfilter/vf_scale: Fix adding 0 to NULL (which is UB) in scale_slice()Michael Niedermayer2021-03-311-2/+2
| | | | | Found-by: Jeremy Leconte <jleconte@google.com> Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* Avoid intermediate bitcount for number of bytes in PutBitContextAndreas Rheinhardt2021-03-301-1/+1
| | | | Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@gmail.com>
* avfilter/vf_paletteuse: Fix left shift outside of range of intAndreas Rheinhardt2021-03-281-2/+3
| | | | | | | by keeping the variable uint32_t which in this situation is the natural type anyway. This affected the FATE-test filter-paletteuse-sierra2_4a. Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@gmail.com>
* avfilter/asrc_sine: Fix invalid left shift of negative numberAndreas Rheinhardt2021-03-281-1/+1
| | | | | | | | | | by using a multiplication instead. The multiplication can never overflow an int because the sin-factor is only an int16_t. Affected the FATE-tests filter-concat and filter-concat-vfr. Reviewed-by: Nicolas George <george@nsup.org> Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@gmail.com>
* lavfi/dnn_backend_tensorflow.c: fix mem leak in execute_model_tfTing Fu2021-03-251-0/+5
| | | | Signed-off-by: Ting Fu <ting.fu@intel.com>
* lavfi/dnn_backend_tensorflow.c: fix mem leak in load_native_modelTing Fu2021-03-251-24/+31
| | | | Signed-off-by: Ting Fu <ting.fu@intel.com>
* lavfi/dnn_backend_tensorflow.c: fix mem leak in load_tf_modelTing Fu2021-03-251-0/+8
| | | | Signed-off-by: Ting Fu <ting.fu@intel.com>
* avfilter/overlay_cuda: fix framesync with embedded PGS subtitlenyanmisaka2021-03-251-1/+4
| | | | Signed-off-by: nyanmisaka <nst799610810@gmail.com>
* avfilter/hwupload_cuda: add YUVA420P format supportnyanmisaka2021-03-251-1/+1
| | | | | Signed-off-by: nyanmisaka <nst799610810@gmail.com> Signed-off-by: Timo Rothenpieler <timo@rothenpieler.org>
* lavfi/dnn/dnn_backend_native_layer_mathunary: add exp supportWenlong Ding2021-03-242-0/+5
| | | | Signed-off-by: Wenlong Ding <wenlong.ding@intel.com>
* Bump minor versions after release branchn4.5-devMichael Niedermayer2021-03-201-1/+1
| | | | Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* Bump Versions before release/4.4 branchMichael Niedermayer2021-03-201-1/+1
| | | | Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* avfilter/vf_ocr: add white space to whitelistDominic Mayers2021-03-191-1/+1
| | | | | | | | Fixes #9151. The current version of libavfilter/vf_ocr.c does not have white space in the default whitelist. But it is recommanded to include white space. See https://github.com/tesseract-ocr/tesseract/issues/2923 Signed-off-by: Marton Balint <cus@passwd.hu>
* lavfi/dnn_backend_openvino.c: fix mem leak for TaskItem upon errorGuo, Yejun2021-03-181-6/+6
|
* lavfi/dnn_backend_openvino.c: fix mem leak for RequestItem upon errorGuo, Yejun2021-03-181-9/+7
|
* lavfi/dnn_backend_openvino.c: fix typo upon errorGuo, Yejun2021-03-181-1/+1
|
* lavfi/dnn_backend_openvino.c: fix mem leak for input_blob and output_blob ↵Guo, Yejun2021-03-181-0/+4
| | | | upon error
* lavfi/dnn_backend_openvino.c: fix mem leak for AVFrame upon errorGuo, Yejun2021-03-181-14/+16
|
* avfilter/vf_uspp: use av_packet_alloc() to allocate packetsJames Almer2021-03-171-6/+10
| | | | Signed-off-by: James Almer <jamrial@gmail.com>
* avfilter/vf_mcdeint: use av_packet_alloc() to allocate packetsJames Almer2021-03-171-5/+8
| | | | Signed-off-by: James Almer <jamrial@gmail.com>
* avfilter/vf_xfade: drop unused frames from inactive inputsPaul B Mahol2021-03-141-0/+5
|
* avfilter/vf_uspp: Fix leak of packet side dataAndreas Rheinhardt2021-03-121-0/+1
| | | | | | | | | | | The uspp filter uses a special option ("no_bitstream") of the Snow encoder to suppress it from generating output. The filter therefore did not unref the packet after usage, believing it to be blank. But this is wrong, as the Snow encoder attaches quality stats side data to the packet. Reviewed-by: Michael Niedermayer <michael@niedermayer.cc> Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@gmail.com>
* avfilter/vf_uspp: Fix leak of qp-table on errorAndreas Rheinhardt2021-03-121-0/+2
| | | | | | | Fixes Coverity issue #1473500. Reviewed-by: Michael Niedermayer <michael@niedermayer.cc> Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@gmail.com>
* dnn/dnn_backend_native_layer_mathbinary: Fix leak upon errorAndreas Rheinhardt2021-03-111-12/+11
| | | | | | | Fixes Coverity issue #1473568. Reviewed-by: Guo, Yejun <yejun.guo@intel.com> Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@gmail.com>
* dnn/dnn_backend_native_layer_conv2d: Don't pretend convolution can failAndreas Rheinhardt2021-03-111-2/+1
| | | | | | | | | It can't; these are just remnants of commit 3c7cad69f233252e5178f7732baa0da950d74bbd which let the worker threads do the reallocation. Reviewed-by: Guo, Yejun <yejun.guo@intel.com> Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@gmail.com>
* dnn/dnn_backend_native_layer_conv2d: Check thread creation for errorsAndreas Rheinhardt2021-03-111-3/+10
| | | | | | | Fixes Coverity issue #1473533. Reviewed-by: Guo, Yejun <yejun.guo@intel.com> Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@gmail.com>
* dnn/dnn_backend_native_layer_conv2d: Check allocationAndreas Rheinhardt2021-03-111-0/+2
| | | | | Reviewed-by: Guo, Yejun <yejun.guo@intel.com> Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@gmail.com>
* dnn/dnn_backend_native_layer_conv2d: Avoid separate, unchecked allocationsAndreas Rheinhardt2021-03-111-10/+6
| | | | | Reviewed-by: Guo, Yejun <yejun.guo@intel.com> Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@gmail.com>
* dnn/dnn_backend_native_layer_conv2d: Fix memleak on errorAndreas Rheinhardt2021-03-111-1/+2
| | | | | | | | | | If an error happens when preparing the output data buffer, an already allocated array would leak. Fix this by postponing its allocation. Fixes Coverity issue #1473531. Reviewed-by: Guo, Yejun <yejun.guo@intel.com> Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@gmail.com>
* dnn/dnn_backend_native_layer_conv2d: Avoid allocation when single-threadedAndreas Rheinhardt2021-03-111-9/+9
| | | | | | | | | Also fixes a memleak in single-threaded mode when an error happens in preparing the output data buffer; and also removes an unchecked allocation. Reviewed-by: Guo, Yejun <yejun.guo@intel.com> Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@gmail.com>