[FFmpeg-cvslog] fftools/ffplay: Check return of swr_alloc_set_opts2()
ffmpeg | branch: master | Michael Niedermayer | Sun Apr 28 01:10:50 2024 +0200| [f44f44155533822922f6d2f24e5c53c14e432612] | committer: Michael Niedermayer fftools/ffplay: Check return of swr_alloc_set_opts2() This probably makes no difference but its more correct Fixes: CID1503080 Unchecked return value Sponsored-by: Sovereign Tech Fund Signed-off-by: Michael Niedermayer > http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=f44f44155533822922f6d2f24e5c53c14e432612 --- fftools/ffplay.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/fftools/ffplay.c b/fftools/ffplay.c index d4300d5d46..b9d11eecee 100644 --- a/fftools/ffplay.c +++ b/fftools/ffplay.c @@ -2391,12 +2391,13 @@ static int audio_decode_frame(VideoState *is) av_channel_layout_compare(&af->frame->ch_layout, &is->audio_src.ch_layout) || af->frame->sample_rate != is->audio_src.freq || (wanted_nb_samples != af->frame->nb_samples && !is->swr_ctx)) { +int ret; swr_free(&is->swr_ctx); -swr_alloc_set_opts2(&is->swr_ctx, +ret = swr_alloc_set_opts2(&is->swr_ctx, &is->audio_tgt.ch_layout, is->audio_tgt.fmt, is->audio_tgt.freq, &af->frame->ch_layout, af->frame->format, af->frame->sample_rate, 0, NULL); -if (!is->swr_ctx || swr_init(is->swr_ctx) < 0) { +if (ret < 0 || swr_init(is->swr_ctx) < 0) { av_log(NULL, AV_LOG_ERROR, "Cannot create sample rate converter for conversion of %d Hz %s %d channels to %d Hz %s %d channels!\n", af->frame->sample_rate, av_get_sample_fmt_name(af->frame->format), af->frame->ch_layout.nb_channels, ___ ffmpeg-cvslog mailing list ffmpeg-cvslog@ffmpeg.org https://ffmpeg.org/mailman/listinfo/ffmpeg-cvslog To unsubscribe, visit link above, or email ffmpeg-cvslog-requ...@ffmpeg.org with subject "unsubscribe".
[FFmpeg-cvslog] tools/opt_common: Check for malloc failure
ffmpeg | branch: master | Michael Niedermayer | Sun Apr 28 18:33:24 2024 +0200| [ba7038043a46420bc86b060dbb13b956ea50ac03] | committer: Michael Niedermayer tools/opt_common: Check for malloc failure Fixes: CID1539100 Negative loop bound Sponsored-by: Sovereign Tech Fund Signed-off-by: Michael Niedermayer > http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=ba7038043a46420bc86b060dbb13b956ea50ac03 --- fftools/opt_common.c | 14 -- 1 file changed, 8 insertions(+), 6 deletions(-) diff --git a/fftools/opt_common.c b/fftools/opt_common.c index 947a226d8d..9d2d5184a0 100644 --- a/fftools/opt_common.c +++ b/fftools/opt_common.c @@ -724,10 +724,13 @@ int show_codecs(void *optctx, const char *opt, const char *arg) return 0; } -static void print_codecs(int encoder) +static int print_codecs(int encoder) { const AVCodecDescriptor **codecs; -unsigned i, nb_codecs = get_codecs_sorted(&codecs); +int i, nb_codecs = get_codecs_sorted(&codecs); + +if (nb_codecs < 0) +return nb_codecs; printf("%s:\n" " V. = Video\n" @@ -762,18 +765,17 @@ static void print_codecs(int encoder) } } av_free(codecs); +return 0; } int show_decoders(void *optctx, const char *opt, const char *arg) { -print_codecs(0); -return 0; +return print_codecs(0); } int show_encoders(void *optctx, const char *opt, const char *arg) { -print_codecs(1); -return 0; +return print_codecs(1); } int show_bsfs(void *optctx, const char *opt, const char *arg) ___ ffmpeg-cvslog mailing list ffmpeg-cvslog@ffmpeg.org https://ffmpeg.org/mailman/listinfo/ffmpeg-cvslog To unsubscribe, visit link above, or email ffmpeg-cvslog-requ...@ffmpeg.org with subject "unsubscribe".
[FFmpeg-cvslog] doc/examples/demux_decode: Simplify loop
ffmpeg | branch: master | Michael Niedermayer | Wed Apr 24 03:08:14 2024 +0200| [91d27f7e02e5bec4b6e53cc7a7f15df8be017bb3] | committer: Michael Niedermayer doc/examples/demux_decode: Simplify loop Fixes: CID1463550 Logically dead code Sponsored-by: Sovereign Tech Fund Signed-off-by: Michael Niedermayer > http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=91d27f7e02e5bec4b6e53cc7a7f15df8be017bb3 --- doc/examples/demux_decode.c | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/doc/examples/demux_decode.c b/doc/examples/demux_decode.c index f26611d8f4..64f5547bc4 100644 --- a/doc/examples/demux_decode.c +++ b/doc/examples/demux_decode.c @@ -138,11 +138,9 @@ static int decode_packet(AVCodecContext *dec, const AVPacket *pkt) ret = output_audio_frame(frame); av_frame_unref(frame); -if (ret < 0) -return ret; } -return 0; +return ret; } static int open_codec_context(int *stream_idx, ___ ffmpeg-cvslog mailing list ffmpeg-cvslog@ffmpeg.org https://ffmpeg.org/mailman/listinfo/ffmpeg-cvslog To unsubscribe, visit link above, or email ffmpeg-cvslog-requ...@ffmpeg.org with subject "unsubscribe".
[FFmpeg-cvslog] avcodec/cbs_av1: Avoid shift overflow
ffmpeg | branch: master | Michael Niedermayer | Wed May 1 21:44:33 2024 +0200| [d7924a4f60f2088de1e6790345caba929eb97030] | committer: Michael Niedermayer avcodec/cbs_av1: Avoid shift overflow Fixes: CID1465488 Unintentional integer overflow Sponsored-by: Sovereign Tech Fund Signed-off-by: Michael Niedermayer > http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=d7924a4f60f2088de1e6790345caba929eb97030 --- libavcodec/cbs_av1.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/libavcodec/cbs_av1.c b/libavcodec/cbs_av1.c index 1d9ac5ab44..fb82996022 100644 --- a/libavcodec/cbs_av1.c +++ b/libavcodec/cbs_av1.c @@ -301,7 +301,7 @@ static int cbs_av1_write_increment(CodedBitstreamContext *ctx, PutBitContext *pb return AVERROR(ENOSPC); if (len > 0) -put_bits(pbc, len, (1 << len) - 1 - (value != range_max)); +put_bits(pbc, len, (1U << len) - 1 - (value != range_max)); CBS_TRACE_WRITE_END_NO_SUBSCRIPTS(); ___ ffmpeg-cvslog mailing list ffmpeg-cvslog@ffmpeg.org https://ffmpeg.org/mailman/listinfo/ffmpeg-cvslog To unsubscribe, visit link above, or email ffmpeg-cvslog-requ...@ffmpeg.org with subject "unsubscribe".
[FFmpeg-cvslog] avformat/concatdec: Check file
ffmpeg | branch: master | Michael Niedermayer | Tue Apr 30 00:47:31 2024 +0200| [a5d1497f33afa17b6a3578b66638e69bf8a558de] | committer: Michael Niedermayer avformat/concatdec: Check file Fixes: null pointer dereference Fixes: -stream_loop 1 -ss 00:00:05 -i zgclab/ffmpeg_crash/poc2 -codec:v copy -codec:a aac -y output.mp4 Found-by: Wang Dawei and Zhou Geng, from Zhongguancun Laboratory Signed-off-by: Michael Niedermayer > http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=a5d1497f33afa17b6a3578b66638e69bf8a558de --- libavformat/concatdec.c | 5 + 1 file changed, 5 insertions(+) diff --git a/libavformat/concatdec.c b/libavformat/concatdec.c index 493659649c..fe65d0c768 100644 --- a/libavformat/concatdec.c +++ b/libavformat/concatdec.c @@ -639,6 +639,11 @@ static int concat_parse_script(AVFormatContext *avf) } } +if (!file) { +ret = AVERROR_INVALIDDATA; +goto fail; +} + if (file->inpoint != AV_NOPTS_VALUE && file->outpoint != AV_NOPTS_VALUE) { if (file->inpoint > file->outpoint || file->outpoint - (uint64_t)file->inpoint > INT64_MAX) ___ ffmpeg-cvslog mailing list ffmpeg-cvslog@ffmpeg.org https://ffmpeg.org/mailman/listinfo/ffmpeg-cvslog To unsubscribe, visit link above, or email ffmpeg-cvslog-requ...@ffmpeg.org with subject "unsubscribe".
[FFmpeg-cvslog] tools/target_enc_fuzzer: Only read pix_fmts if its set
ffmpeg | branch: master | Michael Niedermayer | Sun May 5 03:14:26 2024 +0200| [24bd01ea65eb5a9902a0ce8e38f82dcec7117f87] | committer: Michael Niedermayer tools/target_enc_fuzzer: Only read pix_fmts if its set Fixes: null pointer dereference Fixes: rawvideo encoder Signed-off-by: Michael Niedermayer > http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=24bd01ea65eb5a9902a0ce8e38f82dcec7117f87 --- tools/target_enc_fuzzer.c | 10 ++ 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/tools/target_enc_fuzzer.c b/tools/target_enc_fuzzer.c index 1749f6905b..0345595ada 100644 --- a/tools/target_enc_fuzzer.c +++ b/tools/target_enc_fuzzer.c @@ -130,10 +130,12 @@ int LLVMFuzzerTestOneInput(const uint8_t *data, size_t size) { flags64 = bytestream2_get_le64(&gbc); -int npixfmts = 0; -while (c->p.pix_fmts[npixfmts++] != AV_PIX_FMT_NONE) -; -ctx->pix_fmt = c->p.pix_fmts[bytestream2_get_byte(&gbc) % npixfmts]; +if (c->p.pix_fmts) { +int npixfmts = 0; +while (c->p.pix_fmts[npixfmts++] != AV_PIX_FMT_NONE) +; +ctx->pix_fmt = c->p.pix_fmts[bytestream2_get_byte(&gbc) % npixfmts]; +} switch (c->p.id) { case AV_CODEC_ID_FFV1:{ ___ ffmpeg-cvslog mailing list ffmpeg-cvslog@ffmpeg.org https://ffmpeg.org/mailman/listinfo/ffmpeg-cvslog To unsubscribe, visit link above, or email ffmpeg-cvslog-requ...@ffmpeg.org with subject "unsubscribe".
[FFmpeg-cvslog] tools/target_enc_fuzzer: replace assert by clean exit
ffmpeg | branch: master | Michael Niedermayer | Sun May 5 03:08:48 2024 +0200| [c2918eb88ecb93764809bd158cddbb8d73f89db8] | committer: Michael Niedermayer tools/target_enc_fuzzer: replace assert by clean exit Signed-off-by: Michael Niedermayer > http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=c2918eb88ecb93764809bd158cddbb8d73f89db8 --- tools/target_enc_fuzzer.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/tools/target_enc_fuzzer.c b/tools/target_enc_fuzzer.c index 4357d37636..1749f6905b 100644 --- a/tools/target_enc_fuzzer.c +++ b/tools/target_enc_fuzzer.c @@ -89,7 +89,8 @@ int LLVMFuzzerTestOneInput(const uint8_t *data, size_t size) { av_log_set_level(AV_LOG_PANIC); } -av_assert0(c->p.type == AVMEDIA_TYPE_VIDEO); +if (c->p.type != AVMEDIA_TYPE_VIDEO) +return 0; maxpixels = maxpixels_per_frame * maxiteration; ___ ffmpeg-cvslog mailing list ffmpeg-cvslog@ffmpeg.org https://ffmpeg.org/mailman/listinfo/ffmpeg-cvslog To unsubscribe, visit link above, or email ffmpeg-cvslog-requ...@ffmpeg.org with subject "unsubscribe".
[FFmpeg-cvslog] avformat/evc: Small fixes in documentation
ffmpeg | branch: master | Dawid Kozinski | Thu Apr 18 12:54:24 2024 +0200| [e4da96c6b2051fcd8e1ee9c69f881d2dd6cd1f67] | committer: James Almer avformat/evc: Small fixes in documentation Signed-off-by: Dawid Kozinski > http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=e4da96c6b2051fcd8e1ee9c69f881d2dd6cd1f67 --- libavformat/evc.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/libavformat/evc.c b/libavformat/evc.c index fabccb054c..2f4c74fe51 100644 --- a/libavformat/evc.c +++ b/libavformat/evc.c @@ -233,7 +233,7 @@ static int evcc_write(AVIOContext *pb, EVCDecoderConfigurationRecord *evcc) /* unsigned int(8) profile_idc */ avio_w8(pb, evcc->profile_idc); -/* unsigned int(8) profile_idc */ +/* unsigned int(8) level_idc */ avio_w8(pb, evcc->level_idc); /* unsigned int(32) toolset_idc_h */ @@ -254,7 +254,7 @@ static int evcc_write(AVIOContext *pb, EVCDecoderConfigurationRecord *evcc) /* unsigned int(16) pic_width_in_luma_samples; */ avio_wb16(pb, evcc->pic_width_in_luma_samples); -/* unsigned int(16) pic_width_in_luma_samples; */ +/* unsigned int(16) pic_height_in_luma_samples; */ avio_wb16(pb, evcc->pic_height_in_luma_samples); /* ___ ffmpeg-cvslog mailing list ffmpeg-cvslog@ffmpeg.org https://ffmpeg.org/mailman/listinfo/ffmpeg-cvslog To unsubscribe, visit link above, or email ffmpeg-cvslog-requ...@ffmpeg.org with subject "unsubscribe".
[FFmpeg-cvslog] tests/checkasm/svq1enc: Use proper range for input
ffmpeg | branch: master | Andreas Rheinhardt | Mon May 6 17:25:44 2024 +0200| [6fa967810d8fa5b9101b79acdb1722529f75c4b7] | committer: Andreas Rheinhardt tests/checkasm/svq1enc: Use proper range for input ssd_int8_vs_int16 is only called from encode_block() in svq1enc.c; it calls it in stages: At stage 0, the int16_t array contains the difference of two uint16_t. At each of the following stages, the int16_t array is filled by subtracting an int8_t from the current stage's int16_t array. The maximum stage is five, so the int16_t are in the range (-255 - 5 * 127)..(255 + 5 * 128). This commit modifies the checkasm test to only use values from this range, fixing (undefined) integer overflow in the test. Signed-off-by: Andreas Rheinhardt > http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=6fa967810d8fa5b9101b79acdb1722529f75c4b7 --- tests/checkasm/svq1enc.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/tests/checkasm/svq1enc.c b/tests/checkasm/svq1enc.c index 1a6f531141..f9abdcbff8 100644 --- a/tests/checkasm/svq1enc.c +++ b/tests/checkasm/svq1enc.c @@ -18,7 +18,6 @@ * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. */ -#include "libavutil/mem.h" #include "libavutil/mem_internal.h" #include "libavcodec/svq1encdsp.h" @@ -26,11 +25,13 @@ #include "checkasm.h" #define BUF_SIZE 1024 +#define MIN_VAL (-255 - 5 * 127) +#define MAX_VAL ( 255 + 5 * 128) #define randomize(buf, len) \ do { \ for (int i = 0; i < len; i++) \ -buf[i] = ((rnd() % 65281) - 32641); \ +buf[i] = ((rnd() % (MAX_VAL - MIN_VAL + 1)) + MIN_VAL); \ } while (0) static void test_ssd_int8_vs_int16(SVQ1EncDSPContext *s) { ___ ffmpeg-cvslog mailing list ffmpeg-cvslog@ffmpeg.org https://ffmpeg.org/mailman/listinfo/ffmpeg-cvslog To unsubscribe, visit link above, or email ffmpeg-cvslog-requ...@ffmpeg.org with subject "unsubscribe".
[FFmpeg-cvslog] avfilter/af_volume: Don't free options manually
ffmpeg | branch: master | Andreas Rheinhardt | Sun May 5 16:26:01 2024 +0200| [ebe78e3ef0b07dbefe90c8709aef9611183c08ed] | committer: Andreas Rheinhardt avfilter/af_volume: Don't free options manually Signed-off-by: Andreas Rheinhardt > http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=ebe78e3ef0b07dbefe90c8709aef9611183c08ed --- libavfilter/af_volume.c | 1 - 1 file changed, 1 deletion(-) diff --git a/libavfilter/af_volume.c b/libavfilter/af_volume.c index 5a3c9220f4..b3dd57c5e5 100644 --- a/libavfilter/af_volume.c +++ b/libavfilter/af_volume.c @@ -127,7 +127,6 @@ static av_cold void uninit(AVFilterContext *ctx) { VolumeContext *vol = ctx->priv; av_expr_free(vol->volume_pexpr); -av_opt_free(vol); av_freep(&vol->fdsp); } ___ ffmpeg-cvslog mailing list ffmpeg-cvslog@ffmpeg.org https://ffmpeg.org/mailman/listinfo/ffmpeg-cvslog To unsubscribe, visit link above, or email ffmpeg-cvslog-requ...@ffmpeg.org with subject "unsubscribe".