summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorPatrik2 Carlsson <patrik2.carlsson@sonyericsson.com>2012-11-16 16:18:03 +0100
committerJohan Redestig <johan.redestig@sonymobile.com>2013-07-27 17:48:38 +0000
commita355bb4f5ce39a77d05f62263d4be888e903c4cd (patch)
treec7c34e03d8e6b476aa467ebf3b2a4b5d063555af
parent1bb59258458350af518170558120783bc2f9e61d (diff)
downloadframeworks_av-a355bb4f5ce39a77d05f62263d4be888e903c4cd.zip
frameworks_av-a355bb4f5ce39a77d05f62263d4be888e903c4cd.tar.gz
frameworks_av-a355bb4f5ce39a77d05f62263d4be888e903c4cd.tar.bz2
Handle undefined NAL type for h264 streaming
Packages of undefined NAL type (0) was observed but lead to deleting the subsequent package due to the current assembler implementation. Identifying and ignoring this package without returning an error handles undefined packages without side-effects. Change-Id: I02e15b8682bee3154b3c4acf82639a28417f0c85
-rw-r--r--media/libstagefright/rtsp/AAVCAssembler.cpp7
1 files changed, 7 insertions, 0 deletions
diff --git a/media/libstagefright/rtsp/AAVCAssembler.cpp b/media/libstagefright/rtsp/AAVCAssembler.cpp
index 7ea132e..a6825eb 100644
--- a/media/libstagefright/rtsp/AAVCAssembler.cpp
+++ b/media/libstagefright/rtsp/AAVCAssembler.cpp
@@ -106,6 +106,13 @@ ARTPAssembler::AssemblyStatus AAVCAssembler::addNALUnit(
++mNextExpectedSeqNo;
return success ? OK : MALFORMED_PACKET;
+ } else if (nalType == 0) {
+ ALOGV("Ignoring undefined nal type.");
+
+ queue->erase(queue->begin());
+ ++mNextExpectedSeqNo;
+
+ return OK;
} else {
ALOGV("Ignoring unsupported buffer (nalType=%d)", nalType);