From 15375861b5079d57d1639084c505589082130014 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sebastian=20Dr=C3=B6ge?= Date: Sun, 9 Jun 2013 19:20:20 +0200 Subject: [PATCH] adder: Reject segments that have a different rate than the output segment adder does no rate conversion. --- gst/adder/gstadder.c | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/gst/adder/gstadder.c b/gst/adder/gstadder.c index fc767697ac..ca3c7e417d 100644 --- a/gst/adder/gstadder.c +++ b/gst/adder/gstadder.c @@ -868,9 +868,20 @@ gst_adder_sink_event (GstCollectPads * pads, GstCollectData * pad, adder->pending_events = g_list_append (adder->pending_events, event); event = NULL; break; - case GST_EVENT_SEGMENT: + case GST_EVENT_SEGMENT:{ + const GstSegment *segment; + gst_event_parse_segment (event, &segment); + if (segment->rate != adder->segment.rate) { + GST_ERROR_OBJECT (pad->pad, + "Got segment event with wrong rate %lf, expected %lf", + segment->rate, adder->segment.rate); + res = FALSE; + gst_event_unref (event); + event = NULL; + } discard = TRUE; break; + } default: break; }