playsinkconvertbin: Don't send undefined NEWSEGMENT events to the internal elements

This happens when the internal elements are added before any NEWSEGMENT
event arrived and in that case we shouldn't send a NEWSEGMENT event
to the internal elements at all. They will get the NEWSEGMENT event
from upstream later.
This commit is contained in:
Sebastian Dröge 2011-11-30 14:25:11 +01:00
parent e7853d3a3d
commit 21b252727d

View file

@ -84,16 +84,18 @@ distribute_running_time (GstElement * element, const GstSegment * segment)
gst_pad_send_event (pad, gst_event_new_flush_start ());
gst_pad_send_event (pad, gst_event_new_flush_stop ());
if (segment->accum) {
if (segment->accum && segment->format != GST_FORMAT_UNDEFINED) {
event = gst_event_new_new_segment_full (FALSE, segment->rate,
segment->applied_rate, segment->format, 0, segment->accum, 0);
gst_pad_send_event (pad, event);
}
event = gst_event_new_new_segment_full (FALSE, segment->rate,
segment->applied_rate, segment->format,
segment->start, segment->stop, segment->time);
gst_pad_send_event (pad, event);
if (segment->format != GST_FORMAT_UNDEFINED) {
event = gst_event_new_new_segment_full (FALSE, segment->rate,
segment->applied_rate, segment->format,
segment->start, segment->stop, segment->time);
gst_pad_send_event (pad, event);
}
gst_object_unref (pad);
}