diff options
author | Sebastian Dröge <sebastian.droege@collabora.co.uk> | 2010-04-26 18:12:46 +0200 |
---|---|---|
committer | Sebastian Dröge <sebastian.droege@collabora.co.uk> | 2010-04-29 19:28:24 +0200 |
commit | 61217b521c35538184100f2221237b2dd0961167 (patch) | |
tree | 8b06eae0a05f9559eb84baffd96a83e4698b51f2 | |
parent | 05a2732851127db19c0ac4f64be80d3af688fe76 (diff) |
deinterlace: Improve segment handling a bit
-rw-r--r-- | gst/deinterlace/gstdeinterlace.c | 14 |
1 files changed, 7 insertions, 7 deletions
diff --git a/gst/deinterlace/gstdeinterlace.c b/gst/deinterlace/gstdeinterlace.c index c5040b27c..ea025c2df 100644 --- a/gst/deinterlace/gstdeinterlace.c +++ b/gst/deinterlace/gstdeinterlace.c @@ -606,7 +606,7 @@ gst_deinterlace_reset (GstDeinterlace * self) self->fps_n = self->fps_d = 0; self->passthrough = FALSE; - gst_segment_init (&self->segment, GST_FORMAT_TIME); + gst_segment_init (&self->segment, GST_FORMAT_UNDEFINED); if (self->sink_caps) gst_caps_unref (self->sink_caps); @@ -1400,19 +1400,19 @@ gst_deinterlace_sink_event (GstPad * pad, GstEvent * event) GstFormat fmt; gboolean is_update; gint64 start, end, base; - gdouble rate; + gdouble rate, applied_rate; - gst_event_parse_new_segment (event, &is_update, &rate, &fmt, &start, - &end, &base); + gst_event_parse_new_segment_full (event, &is_update, &rate, &applied_rate, + &fmt, &start, &end, &base); if (fmt == GST_FORMAT_TIME) { GST_DEBUG_OBJECT (pad, "Got NEWSEGMENT event in GST_FORMAT_TIME, passing on (%" GST_TIME_FORMAT " - %" GST_TIME_FORMAT ")", GST_TIME_ARGS (start), GST_TIME_ARGS (end)); - gst_segment_set_newsegment (&self->segment, is_update, rate, fmt, start, - end, base); + gst_segment_set_newsegment_full (&self->segment, is_update, rate, + applied_rate, fmt, start, end, base); } else { - gst_segment_init (&self->segment, GST_FORMAT_TIME); + gst_segment_init (&self->segment, GST_FORMAT_UNDEFINED); } gst_deinterlace_reset_qos (self); |