mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2025-03-28 20:05:38 +00:00
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:
parent
e7853d3a3d
commit
21b252727d
1 changed files with 7 additions and 5 deletions
|
@ -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);
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue