if (in) {
/* update frame metrics */
prv = dm->fid ? dm->queue[dm->fid - 1].frame : dm->last;
- if (!prv)
- prv = in;
- calc_diffs(dm, &dm->queue[dm->fid], prv, in);
+ if (!prv) {
+ dm->queue[dm->fid].maxbdiff = INT64_MAX;
+ dm->queue[dm->fid].totdiff = INT64_MAX;
+ } else {
+ calc_diffs(dm, &dm->queue[dm->fid], prv, in);
+ }
if (++dm->fid != dm->cycle)
return 0;
av_frame_free(&dm->last);