Initialize interval_ts to first QOS event timestamp, otherwise the
fps statistics are printed always after one rendered frame.
Also, initialize last_frames_* counters, the values are bogus e.g. after
PLAYING-NULL-PLAYING state change.
ts = gst_util_get_timestamp ();
if (G_UNLIKELY (!GST_CLOCK_TIME_IS_VALID (self->start_ts))) {
- self->last_ts = self->start_ts = ts;
+ self->interval_ts = self->last_ts = self->start_ts = ts;
}
if (GST_CLOCK_DIFF (self->interval_ts, ts) > self->fps_update_interval) {
display_current_fps (self);
/* Init counters */
self->frames_rendered = G_GUINT64_CONSTANT (0);
self->frames_dropped = G_GUINT64_CONSTANT (0);
+ self->last_frames_rendered = G_GUINT64_CONSTANT (0);
+ self->last_frames_dropped = G_GUINT64_CONSTANT (0);
self->max_fps = -1;
self->min_fps = -1;