Fix avc software decoder to properly handle SEI nalType and access unit delimiter.
diff --git a/media/libstagefright/codecs/avc/dec/AVCDecoder.cpp b/media/libstagefright/codecs/avc/dec/AVCDecoder.cpp
index 484c742..22e6188 100644
--- a/media/libstagefright/codecs/avc/dec/AVCDecoder.cpp
+++ b/media/libstagefright/codecs/avc/dec/AVCDecoder.cpp
@@ -262,6 +262,8 @@
                 &nalType, &nalRefIdc);
 
     if (res != AVCDEC_SUCCESS) {
+        LOGE("cannot determine nal type");
+
         mInputBuffer->release();
         mInputBuffer = NULL;
 
@@ -375,18 +377,19 @@
             mInputBuffer->release();
             mInputBuffer = NULL;
 
-            if (res == AVCDEC_PICTURE_READY) {
+            if (res == AVCDEC_PICTURE_READY || res == AVCDEC_SUCCESS) {
                 *out = new MediaBuffer(0);
 
                 return OK;
             } else {
+                LOGE("failed to decode frame (res = %d)", res);
                 return UNKNOWN_ERROR;
             }
         }
 
         case AVC_NALTYPE_SEI:
         {
-            res = PVAVCDecodeSlice(
+            res = PVAVCDecSEI(
                     mHandle, const_cast<uint8_t *>(inPtr),
                     mInputBuffer->range_length());
 
@@ -404,6 +407,9 @@
 
         case AVC_NALTYPE_AUD:
         {
+            mInputBuffer->release();
+            mInputBuffer = NULL;
+
             *out = new MediaBuffer(0);
 
             return OK;