flacdec: send newsegment event when operating push-based and unframed

For some reason flac doesn't call our metadata callback when we operate
in push mode with unframed input, but that's where we set up the
newsegment event (since that's where we'd get the duration from the
stream info header), so we didn't send a newsegment event at all in this
case. Hack around this by storing a generic newsegment event for now
which will be used if we don't replace it with a better one that
includes the duration.
This commit is contained in:
Tim-Philipp Müller 2009-08-01 17:07:42 +01:00
parent 3cf8790906
commit cee10cb439

View file

@ -1247,6 +1247,13 @@ gst_flac_dec_sink_event (GstPad * pad, GstEvent * event)
GST_DEBUG_OBJECT (dec, "newsegment event in %s format => not framed",
gst_format_get_name (fmt));
dec->framed = FALSE;
/* prepare generic newsegment event, for some reason our metadata
* callback where we usually set this up is not being called in
* push mode */
dec->start_segment = gst_event_new_new_segment (FALSE, 1.0,
GST_FORMAT_TIME, 0, -1, 0);
gst_event_unref (event);
res = TRUE;
}