From 64b06d1829493d9119022ed5e8476f3e9b486ec5 Mon Sep 17 00:00:00 2001 From: =?utf8?q?Sebastian=20Dr=C3=B6ge?= Date: Sat, 15 Aug 2015 12:58:50 +0200 Subject: [PATCH] dcaparse: Don't look for a second syncword There are streams out there that consistently contain garbage between every frame so we never ever find a second consecutive syncword. See https://bugzilla.gnome.org/show_bug.cgi?id=738237 --- gst/audioparsers/gstdcaparse.c | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/gst/audioparsers/gstdcaparse.c b/gst/audioparsers/gstdcaparse.c index 47dbdd0..d91e6bf 100644 --- a/gst/audioparsers/gstdcaparse.c +++ b/gst/audioparsers/gstdcaparse.c @@ -321,7 +321,6 @@ gst_dca_parse_handle_frame (GstBaseParse * parse, GstDcaParse *dcaparse = GST_DCA_PARSE (parse); GstBuffer *buf = frame->buffer; GstByteReader r; - gboolean parser_draining; gboolean parser_in_sync; gboolean terminator; guint32 sync = 0; @@ -379,6 +378,12 @@ gst_dca_parse_handle_frame (GstBaseParse * parse, dcaparse->last_sync = sync; + /* FIXME: Don't look for a second syncword, there are streams out there + * that consistently contain garbage between every frame so we never ever + * find a second consecutive syncword. + * See https://bugzilla.gnome.org/show_bug.cgi?id=738237 + */ +#if 0 parser_draining = GST_BASE_PARSE_DRAINING (parse); if (!parser_in_sync && !parser_draining) { @@ -409,6 +414,7 @@ gst_dca_parse_handle_frame (GstBaseParse * parse, goto cleanup; } } +#endif /* found frame */ ret = GST_FLOW_OK; -- 2.7.4