mirror of
https://github.com/FFmpeg/FFmpeg.git
synced 2024-12-23 12:43:46 +02:00
Revert "avfilter/vf_minterpolate: if metadata lavfi.scd.mafd exists, we'll use it first"
This reverts commit d88e1c9838
.
Fixes null pointer dereference.
Signed-off-by: Marton Balint <cus@passwd.hu>
This commit is contained in:
parent
5913cd4e6c
commit
7f3a946216
@ -834,19 +834,11 @@ static int detect_scene_change(MIContext *mi_ctx)
|
|||||||
ptrdiff_t linesize2 = mi_ctx->frames[2].avf->linesize[0];
|
ptrdiff_t linesize2 = mi_ctx->frames[2].avf->linesize[0];
|
||||||
|
|
||||||
if (mi_ctx->scd_method == SCD_METHOD_FDIFF) {
|
if (mi_ctx->scd_method == SCD_METHOD_FDIFF) {
|
||||||
double ret = 0, mafd = HUGE_VAL, diff;
|
double ret = 0, mafd, diff;
|
||||||
uint64_t sad;
|
uint64_t sad;
|
||||||
AVDictionaryEntry *e_mafd = NULL;
|
|
||||||
char *tail = NULL;
|
|
||||||
|
|
||||||
e_mafd = av_dict_get(mi_ctx->frames[2].avf->metadata, "lavfi.scd.mafd", NULL, AV_DICT_MATCH_CASE);
|
|
||||||
if (e_mafd)
|
|
||||||
mafd = strtod(e_mafd->value, &tail);
|
|
||||||
if (*tail || mafd == HUGE_VAL) {
|
|
||||||
mi_ctx->sad(p1, linesize1, p2, linesize2, me_ctx->width, me_ctx->height, &sad);
|
mi_ctx->sad(p1, linesize1, p2, linesize2, me_ctx->width, me_ctx->height, &sad);
|
||||||
emms_c();
|
emms_c();
|
||||||
mafd = (double) sad * 100.0 / (me_ctx->height * me_ctx->width) / (1 << mi_ctx->bitdepth);
|
mafd = (double) sad * 100.0 / (me_ctx->height * me_ctx->width) / (1 << mi_ctx->bitdepth);
|
||||||
}
|
|
||||||
diff = fabs(mafd - mi_ctx->prev_mafd);
|
diff = fabs(mafd - mi_ctx->prev_mafd);
|
||||||
ret = av_clipf(FFMIN(mafd, diff), 0, 100.0);
|
ret = av_clipf(FFMIN(mafd, diff), 0, 100.0);
|
||||||
mi_ctx->prev_mafd = mafd;
|
mi_ctx->prev_mafd = mafd;
|
||||||
|
Loading…
Reference in New Issue
Block a user