summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* ffprobe: fix data hash renderingStefano Sabatini2023-01-247-1223/+1223
| | | | | | | | Print data hash before side data list, fix wrong nesting level of data hash element. In particular, fix trac issue: http://trac.ffmpeg.org/ticket/7217
* ffprobe: use pkt->dts to compute interval ts when pts is missingStefano Sabatini2023-01-241-2/+3
| | | | | | | | For some samples the pkt->pts is always missing, use the pkt->dts instead. Fix trac issue: http://trac.ffmpeg.org/ticket/4427
* cbs_av1: Remove constraint on MDCV luminance valuesMark Thompson2023-01-241-5/+2
| | | | | While desiring min to be less than max feels entirely sensible, unfortunately the standard does not actually have this requirement.
* avfilter/vf_scdet: fix introduced discrepancy with latest changePaul B Mahol2023-01-241-1/+1
|
* avfilter/vf_cropdetect: add ability to change limit at runtimeAshyni2023-01-245-50/+93
| | | | | | Fixes: https://trac.ffmpeg.org/ticket/9851 Signed-off-by: Ashyni <jeffrey.c@tuta.io>
* avcodec/dpcm: add .flushPaul B Mahol2023-01-241-0/+8
| | | | Otherwise after seek, DC offset for audio samples might be big.
* avformat: add WADY demuxerPaul B Mahol2023-01-245-2/+91
|
* avcodec: add WADY DPCM decoderPaul B Mahol2023-01-248-3/+56
|
* avcodec/libjxldec: fix gamma22 and gamma28 recognitionLeo Izen2023-01-221-2/+2
| | | | | | | Gamma 2.2 and Gamma 2.8 are tagged in the file as 0.45455 and 0.35714, respectively (i.e. 1/2.2 and 1/2.8). Trying to identify them as 2.2 and 2.8 instead of these values will cause the transfer function to not properly be recognized. This patch fixes this.
* avfilter/vf_dblur: also filter last scanlinePaul B Mahol2023-01-191-2/+2
|
* avfilter/vf_dblur: allow radius < 1.0Paul B Mahol2023-01-191-1/+1
|
* lavc/tests/bitstream: test bits_*_signed_nz and bits_peek_signed*Anton Khirnov2023-01-181-1/+18
|
* lavc/bitstream: avoid UB in bits_{read,peek}_signed(0)Anton Khirnov2023-01-183-3/+39
| | | | | | | | | | bits_*_signed(0) will currently invoke an undefined shift by 8 * sizeof(int). Add bits_*_signed_nz() that only works for n>0, analogous to bits_read_nz(). Add an explicit check for n=0 in bits_*_signed(). Found-by: James Almer
* avfilter/vf_histogram: call av_frame_copy_props()Paul B Mahol2023-01-171-1/+1
|
* lavc/libvpx: increase thread limit to 64OvchinnikovDmitrii2023-01-173-2/+4
| | | | | | | | | | | | | | | | | | | | | | This change improves the performance and multicore scalability of the vp9 codec for streaming single-pass encoded videos by taking advantage of up to 64 cores in the system. The current thread limit for ffmpeg codecs is 16 (MAX_AUTO_THREADS in pthread_internal.h) due to a limitation in H.264 codec that prevents more than 16 threads being used. Experiments show that increasing the thread limit to 64 for vp9 improves the performance for encoding 4K raw videos for streaming by up to 47% compared to 16 threads, and from 20-30% for 32 threads, with the same quality as measured by the VMAF score. Rationale for this change: Vp9 uses tiling to split the video frame into multiple columns; tiles must be at least 256 pixels wide, so there is a limit to how many tiles can be used. The tiles can be processed in parallel, and more tiles mean more CPU threads can be used. 4K videos can make use of 16 threads, and 8K videos can use 32. Row-mt can double the number of threads so 64 threads can be used. Signed-off-by: James Zern <jzern@google.com>
* avfilter/vf_lagfun: call av_frame_copy_props()Paul B Mahol2023-01-171-1/+1
|
* avfilter/vf_elbg: call av_frame_copy_props()Paul B Mahol2023-01-171-1/+1
|
* avfilter/avf_showvolume: set output video frame durationPaul B Mahol2023-01-171-0/+1
|
* avfilter/vsrc_gradients: set output video frame durationPaul B Mahol2023-01-171-0/+1
|
* avfilter/avf_abitscope: set output time_base and output frame durationPaul B Mahol2023-01-171-1/+3
|
* avfilter/af_virtualbass: call av_frame_copy_props()Paul B Mahol2023-01-171-1/+1
|
* avfilter/vf_scdet: change threshold checkingPaul B Mahol2023-01-171-1/+1
| | | | Also allow score to match threshold thus allowing ==0.0 scores.
* avfilter/af_arnndn: unbreak filteringPaul B Mahol2023-01-171-4/+5
|
* avfilter/af_arnndn: call av_frame_copy_props()Paul B Mahol2023-01-171-1/+1
|
* avfilter/af_afftfilt: call av_frame_copy_props()Paul B Mahol2023-01-171-1/+1
|
* avfilter/af_afftdn: call av_frame_copy_props()Paul B Mahol2023-01-171-1/+1
|
* avfilter/vsrc_cellauto: set video frame durationPaul B Mahol2023-01-171-0/+1
|
* avfilter/vsrc_life: set video frame durationPaul B Mahol2023-01-171-0/+1
|
* avfilter/vsrc_mandelbrot: set video frame durationPaul B Mahol2023-01-171-0/+1
|
* avfilter/vsrc_mptestsrc: set video frame durationPaul B Mahol2023-01-171-0/+1
|
* avfilter/vsrc_testsrc: set video frame durationPaul B Mahol2023-01-171-0/+1
|
* avfilter/vsrc_sierpinski: set video frame durationPaul B Mahol2023-01-171-0/+1
|
* avfilter/vf_ciescope: fix black-point positionPaul B Mahol2023-01-171-18/+16
|
* avfilter/vf_ciescope: switch to anti-aliased linesPaul B Mahol2023-01-171-13/+30
|
* avfilter/avf_a3dscope,avf_showcwt: set video frame durationPaul B Mahol2023-01-172-0/+2
|
* avfilter/af_dialoguenhance: call av_frame_copy_props()Paul B Mahol2023-01-171-1/+1
|
* avfilter/af_surround: call av_frame_copy_props()Paul B Mahol2023-01-171-1/+1
|
* avfilter/af_afir: call av_frame_copy_props()Paul B Mahol2023-01-171-0/+1
|
* avcodec/scpr3: Check bxMichael Niedermayer2023-01-171-0/+3
| | | | | | | | Fixes: Out of array access Fixes: 55102/clusterfuzz-testcase-minimized-ffmpeg_AV_CODEC_ID_SCPR_fuzzer-4877396618903552 Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* avcodec/012v: Order operations for odd size handlingMichael Niedermayer2023-01-171-2/+2
| | | | | | | | | | Fixes: out of array access Fixes: 48567/clusterfuzz-testcase-minimized-ffmpeg_AV_CODEC_ID_ZERO12V_fuzzer-6714182078955520.fuzz Fixes: 48567/clusterfuzz-testcase-minimized-ffmpeg_AV_CODEC_ID_ZERO12V_fuzzer-6698145212137472.fuzz Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg Reviewed-by: Paul B Mahol <onemda@gmail.com> Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* lavfi/overlay_vaapi: remove unnecessary codeHaihao Xiang2023-01-171-3/+0
| | | | | | VA-API filter is not required. Signed-off-by: Haihao Xiang <haihao.xiang@intel.com>
* lavfi/vaapi: remove duplicated codeHaihao Xiang2023-01-173-140/+77
| | | | | | | Add a ff_ function to handle mulitple pipeline parameters. No functional changes. Signed-off-by: Haihao Xiang <haihao.xiang@intel.com>
* avcodec/vaapi_encode_h26x: passthrough A53 CC data as H264/HEVC SEIAman Karmani2023-01-173-4/+68
| | | | Signed-off-by: Aman Karmani <aman@tmm1.net>
* lavfi/qsv: use QSVVPPContext as base context in vf_vpp_qsv/vf_overlay_qsvHaihao Xiang2023-01-174-48/+31
| | | | | | | | | | | | | | The same members between QSVVPPContext and VPPContext are removed from VPPContext, and async_depth is moved from QSVVPPParam to QSVVPPContext so that all QSV filters using QSVVPPContext may support async depth. In addition, we may use QSVVPPContext as base context in other QSV filters in the future so that we may re-use functions defined in qsvvpp.c for other QSV filters. This commit shouldn't change the functionality of vpp_qsv / overlay_qsv. Signed-off-by: Haihao Xiang <haihao.xiang@intel.com>
* lavfi/qsvvpp: set output frame durationsHaihao Xiang2023-01-171-0/+5
| | | | Signed-off-by: Haihao Xiang <haihao.xiang@intel.com>
* lavfi/vf_vpp_qsv: check output format string against NULL pointerHaihao Xiang2023-01-171-1/+1
| | | | | | | This is in preparation for reusing the code for other QSV filters. E.g. deinterlacing_qsv may have an option array without format option Signed-off-by: Haihao Xiang <haihao.xiang@intel.com>
* lavfi/vf_vpp_qsv: add has_passthrough flag in VPPContextHaihao Xiang2023-01-171-1/+5
| | | | | | | | | | QSV filters may set this flag in preinit callback to turn on / off pass through mode This is in preparation for reusing the code for other QSV filters. E.g. scale_qsv filter doesn't support pass through mode. Signed-off-by: Haihao Xiang <haihao.xiang@intel.com>
* lavfi/vf_vpp_qsv: add vpp_preinit callbackHaihao Xiang2023-01-171-0/+14
| | | | | | | | | | Set the expected default value for options in this callback, hence we have the right values even if these options are not included in the option arrray. This is in preparation for reusing the code for other QSV filters. Signed-off-by: Haihao Xiang <haihao.xiang@intel.com>
* lavfi/vf_vpp_qsv: allow special values for the output video dimensionsHaihao Xiang2023-01-171-7/+40
| | | | | | | | | | Special values are: 0 = original width/height -1 = keep original aspect This is in preparation for reusing the code for other QSV filters. Signed-off-by: Haihao Xiang <haihao.xiang@intel.com>
* lavfi/vf_vpp_qsv: handle NULL pointer when evaluating an expressionHaihao Xiang2023-01-171-16/+20
| | | | | | | | This patch provides default value if the expression is NULL. This is in preparation for reusing the code for other QSV filters. Signed-off-by: Haihao Xiang <haihao.xiang@intel.com>