Commit 6888871d authored by Edward Hervey's avatar Edward Hervey Committed by Edward Hervey

aacparse: Avoid over-skipping when checking LOAS config

There might be multiple LOAS config in a row in a full frame. The first
one might be a multi-layer config (which we can't properly parse yet)...
but then followed by a valid (single-layer) one.

The code was previously skipping whole frames (instead of just the LOAS
config we failed to read) resulting in multiple frames (seen up to 6s in
some situation) being dropped before finally getting the configuration.

https://bugzilla.gnome.org/show_bug.cgi?id=758826
parent f173bd7d
......@@ -1302,7 +1302,10 @@ gst_aac_parse_handle_frame (GstBaseParse * parse,
/* This is pretty normal when skipping data at the start of
* random stream (MPEG-TS capture for example) */
GST_DEBUG_OBJECT (aacparse, "Error reading LOAS config. Skipping.");
*skipsize = map.size;
/* Since we don't fully parse the LOAS config, we don't know for sure
* how much to skip. Just skip 1 to end up to the next marker and
* resume parsing from there */
*skipsize = 1;
goto exit;
}
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment