Large scale skip is an optimization, and thus it is safer to
stop skipping than to continue. Clear skip on segments and
discontinuities, as these are points where it is possible that
the original idea of "bytes to skip" changes.
parse->priv->prev_dts = GST_CLOCK_TIME_NONE;
parse->priv->discont = TRUE;
parse->priv->seen_keyframe = FALSE;
+ parse->priv->skip = 0;
break;
}
GST_DEBUG_OBJECT (parent, "chain");
/* early out for speed, if we need to skip */
+ if (buffer && GST_BUFFER_IS_DISCONT (buffer))
+ parse->priv->skip = 0;
if (parse->priv->skip > 0) {
gsize bsize = gst_buffer_get_size (buffer);
GST_DEBUG ("Got %" G_GSIZE_FORMAT " buffer, need to skip %u", bsize,