diff options
author | Zhao Zhili <zhilizhao@tencent.com> | 2023-12-19 23:37:03 +0800 |
---|---|---|
committer | Zhao Zhili <zhilizhao@tencent.com> | 2023-12-21 19:30:25 +0800 |
commit | f72d781339716ba5cb086f4043b8626cea814213 (patch) | |
tree | 34475c7622dfbda861891871c1a23bc82931818b | |
parent | 42a4c59e592dbe142c2451e0ac8132b2de574b3e (diff) | |
download | ffmpeg-f72d781339716ba5cb086f4043b8626cea814213.tar.gz |
fftools/ffmpeg_enc: assert necessary frame fields before create encoder
Signed-off-by: Zhao Zhili <zhilizhao@tencent.com>
-rw-r--r-- | fftools/ffmpeg_enc.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/fftools/ffmpeg_enc.c b/fftools/ffmpeg_enc.c index 57590a43a3..2a7fba0c51 100644 --- a/fftools/ffmpeg_enc.c +++ b/fftools/ffmpeg_enc.c @@ -206,6 +206,9 @@ int enc_open(void *opaque, const AVFrame *frame) switch (enc_ctx->codec_type) { case AVMEDIA_TYPE_AUDIO: + av_assert0(frame->format != AV_SAMPLE_FMT_NONE && + frame->sample_rate > 0 && + frame->ch_layout.nb_channels > 0); enc_ctx->sample_fmt = frame->format; enc_ctx->sample_rate = frame->sample_rate; ret = av_channel_layout_copy(&enc_ctx->ch_layout, &frame->ch_layout); @@ -220,6 +223,9 @@ int enc_open(void *opaque, const AVFrame *frame) break; case AVMEDIA_TYPE_VIDEO: { + av_assert0(frame->format != AV_PIX_FMT_NONE && + frame->width > 0 && + frame->height > 0); enc_ctx->width = frame->width; enc_ctx->height = frame->height; enc_ctx->sample_aspect_ratio = ost->st->sample_aspect_ratio = |