[FFmpeg-cvslog] lavc/encode: improve input sample rate validation
Anton Khirnov
git at videolan.org
Tue Jul 11 20:28:55 EEST 2023
ffmpeg | branch: master | Anton Khirnov <anton at khirnov.net> | Thu Jul 6 18:16:49 2023 +0200| [39206c5e581f5020fe47adf463a759b0f39186d8] | committer: Anton Khirnov
lavc/encode: improve input sample rate validation
Reject zero sample rates in addition to negative ones and describe them
as 'invalid' rather than 'unsupported'.
> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=39206c5e581f5020fe47adf463a759b0f39186d8
---
libavcodec/encode.c | 10 +++++-----
1 file changed, 5 insertions(+), 5 deletions(-)
diff --git a/libavcodec/encode.c b/libavcodec/encode.c
index f443f07e15..0d009a26cc 100644
--- a/libavcodec/encode.c
+++ b/libavcodec/encode.c
@@ -658,6 +658,11 @@ static int encode_preinit_audio(AVCodecContext *avctx)
avctx->sample_fmt);
return AVERROR(EINVAL);
}
+ if (avctx->sample_rate <= 0) {
+ av_log(avctx, AV_LOG_ERROR, "Invalid audio sample rate: %d\n",
+ avctx->sample_rate);
+ return AVERROR(EINVAL);
+ }
if (c->sample_fmts) {
for (i = 0; c->sample_fmts[i] != AV_SAMPLE_FMT_NONE; i++) {
@@ -686,11 +691,6 @@ static int encode_preinit_audio(AVCodecContext *avctx)
return AVERROR(EINVAL);
}
}
- if (avctx->sample_rate < 0) {
- av_log(avctx, AV_LOG_ERROR, "Specified sample rate %d is not supported\n",
- avctx->sample_rate);
- return AVERROR(EINVAL);
- }
if (c->ch_layouts) {
for (i = 0; c->ch_layouts[i].nb_channels; i++) {
if (!av_channel_layout_compare(&avctx->ch_layout, &c->ch_layouts[i]))
More information about the ffmpeg-cvslog
mailing list