+2007-09-26 Wim Taymans <wim.taymans@gmail.com>
+
+ * gst/qtdemux/gstrtpxqtdepay.c: (gst_rtp_xqt_depay_process),
+ (gst_rtp_xqt_depay_change_state):
+ * gst/qtdemux/gstrtpxqtdepay.h:
+ Fail if we don't know the quicktime format.
+
2007-09-26 Tim-Philipp Müller <tim at centricular dot net>
* ext/flac/gstflacenc.c:
/* discont, clear adapter and try to find a new packet start */
gst_adapter_clear (rtpxqtdepay->adapter);
rtpxqtdepay->need_resync = TRUE;
+ GST_DEBUG_OBJECT (rtpxqtdepay, "we need resync");
}
m = gst_rtp_buffer_get_marker (buf);
switch (tlv_type) {
case TLV_sd:
/* Session description */
- gst_rtp_quicktime_parse_sd (rtpxqtdepay, payload, tlv_len);
+ if (!gst_rtp_quicktime_parse_sd (rtpxqtdepay, payload, tlv_len))
+ goto unknown_format;
+ rtpxqtdepay->have_sd = TRUE;
break;
case TLV_qt:
case TLV_ti:
("Wrong payload length."), (NULL));
return NULL;
}
+unknown_format:
+ {
+ GST_ELEMENT_WARNING (rtpxqtdepay, STREAM, DECODE,
+ ("Unknown payload format."), (NULL));
+ return NULL;
+ }
}
static void
gst_adapter_clear (rtpxqtdepay->adapter);
rtpxqtdepay->previous_id = -1;
rtpxqtdepay->current_id = -1;
- rtpxqtdepay->need_resync = FALSE;
+ rtpxqtdepay->need_resync = TRUE;
+ rtpxqtdepay->have_sd = FALSE;
break;
default:
break;