deinterlace: Improve segment handling a bit

This commit is contained in:
Sebastian Dröge 2010-04-26 18:12:46 +02:00
parent 05a2732851
commit 61217b521c

View file

@ -606,7 +606,7 @@ gst_deinterlace_reset (GstDeinterlace * self)
self->fps_n = self->fps_d = 0; self->fps_n = self->fps_d = 0;
self->passthrough = FALSE; self->passthrough = FALSE;
gst_segment_init (&self->segment, GST_FORMAT_TIME); gst_segment_init (&self->segment, GST_FORMAT_UNDEFINED);
if (self->sink_caps) if (self->sink_caps)
gst_caps_unref (self->sink_caps); gst_caps_unref (self->sink_caps);
@ -1400,19 +1400,19 @@ gst_deinterlace_sink_event (GstPad * pad, GstEvent * event)
GstFormat fmt; GstFormat fmt;
gboolean is_update; gboolean is_update;
gint64 start, end, base; gint64 start, end, base;
gdouble rate; gdouble rate, applied_rate;
gst_event_parse_new_segment (event, &is_update, &rate, &fmt, &start, gst_event_parse_new_segment_full (event, &is_update, &rate, &applied_rate,
&end, &base); &fmt, &start, &end, &base);
if (fmt == GST_FORMAT_TIME) { if (fmt == GST_FORMAT_TIME) {
GST_DEBUG_OBJECT (pad, GST_DEBUG_OBJECT (pad,
"Got NEWSEGMENT event in GST_FORMAT_TIME, passing on (%" "Got NEWSEGMENT event in GST_FORMAT_TIME, passing on (%"
GST_TIME_FORMAT " - %" GST_TIME_FORMAT ")", GST_TIME_ARGS (start), GST_TIME_FORMAT " - %" GST_TIME_FORMAT ")", GST_TIME_ARGS (start),
GST_TIME_ARGS (end)); GST_TIME_ARGS (end));
gst_segment_set_newsegment (&self->segment, is_update, rate, fmt, start, gst_segment_set_newsegment_full (&self->segment, is_update, rate,
end, base); applied_rate, fmt, start, end, base);
} else { } else {
gst_segment_init (&self->segment, GST_FORMAT_TIME); gst_segment_init (&self->segment, GST_FORMAT_UNDEFINED);
} }
gst_deinterlace_reset_qos (self); gst_deinterlace_reset_qos (self);