avcodec/noise_bsf: Check for wrapped frames

Wrapped frames contain pointers so they need specific code to
noise them, the generic code would lead to segfaults

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
This commit is contained in:
Michael Niedermayer 2023-06-04 19:59:40 +02:00
parent 8d5de4e12f
commit 0889ebc577
No known key found for this signature in database
GPG Key ID: B18E8928B3948D64
1 changed files with 6 additions and 0 deletions

View File

@ -86,6 +86,12 @@ static int noise_init(AVBSFContext *ctx)
return AVERROR(ENOMEM);
}
if (ctx->par_in->codec_id == AV_CODEC_ID_WRAPPED_AVFRAME &&
strcmp(s->amount_str, "0")) {
av_log(ctx, AV_LOG_ERROR, "Wrapped AVFrame noising is unsupported\n");
return AVERROR_PATCHWELCOME;
}
ret = av_expr_parse(&s->amount_pexpr, s->amount_str,
var_names, NULL, NULL, NULL, NULL, 0, ctx);
if (ret < 0) {