diff options
author | Insun Kang <insun@google.com> | 2012-11-23 19:00:07 +0900 |
---|---|---|
committer | Andreas Huber <andih@google.com> | 2013-02-25 09:01:01 -0800 |
commit | 2b56065a51c49a6235ac974c033c5751e8055869 (patch) | |
tree | 9542d497e722bfa9caa041ea6385d5e70ed6a754 /media/libstagefright | |
parent | 99c2f923f6b04efffe949d1daf9cb7148e3cc201 (diff) | |
download | frameworks_av-2b56065a51c49a6235ac974c033c5751e8055869.zip frameworks_av-2b56065a51c49a6235ac974c033c5751e8055869.tar.gz frameworks_av-2b56065a51c49a6235ac974c033c5751e8055869.tar.bz2 |
Handles duplicated NAL start code to fix crash on HLS streams.
Some youtube live streams are encoded having duplicated NAL start code,
for instance, 00 00 01 00 00 00 01 ....
In previous code, zero NAL size causes crash by CHECK_GT(nalsize, 0)
macro. With this patch, duplicated NAL start code will be just ignored.
TESTED=Played problematic Youtube Live streams.
Change-Id: I1d76f111a34bd29cb09b037eb1b0626fe5f5b140
Diffstat (limited to 'media/libstagefright')
-rw-r--r-- | media/libstagefright/mpeg2ts/ESQueue.cpp | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/media/libstagefright/mpeg2ts/ESQueue.cpp b/media/libstagefright/mpeg2ts/ESQueue.cpp index 82fb637..9499712 100644 --- a/media/libstagefright/mpeg2ts/ESQueue.cpp +++ b/media/libstagefright/mpeg2ts/ESQueue.cpp @@ -536,7 +536,7 @@ sp<ABuffer> ElementaryStreamQueue::dequeueAccessUnitH264() { size_t nalSize; bool foundSlice = false; while ((err = getNextNALUnit(&data, &size, &nalStart, &nalSize)) == OK) { - CHECK_GT(nalSize, 0u); + if (nalSize == 0) continue; unsigned nalType = nalStart[0] & 0x1f; bool flush = false; |