OSDN Git Service

Fix for 5477832 Movie Studio crash when trying to import the attached h263 file.
authorRajneesh Chowdury <rajneeshc@google.com>
Wed, 19 Oct 2011 19:49:08 +0000 (12:49 -0700)
committerRajneesh Chowdury <rajneeshc@google.com>
Wed, 19 Oct 2011 21:19:53 +0000 (14:19 -0700)
Add support for Audio Object type 5(SBR) and 29(PS) in
audio decoder node.

Change-Id: I9b631893f530d0c8550a0a7addfbdce226313693

libvideoeditor/vss/mcs/src/M4MCS_API.c
libvideoeditor/vss/stagefrightshells/src/VideoEditorAudioDecoder.cpp

index b48dfe7..2ac0be1 100755 (executable)
@@ -10575,6 +10575,13 @@ M4OSA_ERR M4MCS_intCheckAndGetCodecProperties(
                     pC->pReaderAudioStream,
                     pC->m_pCurrentAudioDecoderUserData);
     }
+    if (M4NO_ERROR != err) {
+
+        M4OSA_TRACE1_1(
+            "M4MCS_intCheckAndGetCodecProperties: m_pFctCreateAudioDec \
+             returns 0x%x", err);
+        return err;
+    }
 
     pC->m_pAudioDecoder->m_pFctSetOptionAudioDec(pC->pAudioDecCtxt,
            M4AD_kOptionID_3gpReaderInterface, (M4OSA_DataOption) pC->m_pReaderDataIt);
index d73352a..38e667c 100755 (executable)
@@ -341,9 +341,20 @@ M4OSA_ERR VideoEditorAudioDecoder_parse_AAC_DSI(M4OSA_Int8* pDSI,
     VIDEOEDITOR_CHECK(M4NO_ERROR == err, err);
     switch( result ) {
         case 2:
+            /* Audio Object Type is 2 (AAC Low Complexity) */
             pProperties->aPSPresent  = 0;
             pProperties->aSBRPresent = 0;
             break;
+        case 5:
+            /* Audio Object Type is 5 (Spectral Band Replication) */
+            pProperties->aPSPresent  = 0;
+            pProperties->aSBRPresent = 1;
+            break;
+        case 29:
+            /* Audio Object Type is 29 (Parametric Stereo) */
+            pProperties->aPSPresent  = 1;
+            pProperties->aSBRPresent = 1;
+            break;
         default:
             LOGV("parse_AAC_DSI ERROR : object type %d is not supported",
                 result);