From c80218a9665344a465383fd067f89778d4b6a3f1 Mon Sep 17 00:00:00 2001 From: James Dong Date: Fri, 30 Jul 2010 13:48:46 -0700 Subject: [PATCH] Added damr box for AMR (NB and WB) sample entry - Some players, like QT, sometimes are picky about the missing sample entry Change-Id: Ia32d78e48ac9fd8af8285dbc67f0d69142ba98b4 --- media/libstagefright/MPEG4Writer.cpp | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/media/libstagefright/MPEG4Writer.cpp b/media/libstagefright/MPEG4Writer.cpp index baf9f4f118643..9f712c381310d 100644 --- a/media/libstagefright/MPEG4Writer.cpp +++ b/media/libstagefright/MPEG4Writer.cpp @@ -1615,6 +1615,16 @@ void MPEG4Writer::Track::writeTrackHeader( mOwner->write(kData2, sizeof(kData2)); mOwner->endBox(); // esds + } else if (!strcasecmp(MEDIA_MIMETYPE_AUDIO_AMR_NB, mime) || + !strcasecmp(MEDIA_MIMETYPE_AUDIO_AMR_WB, mime)) { + // 3gpp2 Spec AMRSampleEntry fields + mOwner->beginBox("damr"); + mOwner->writeCString(" "); // vendor: 4 bytes + mOwner->writeInt8(0); // decoder version + mOwner->writeInt16(0x83FF); // mode set: all enabled + mOwner->writeInt8(0); // mode change period + mOwner->writeInt8(1); // frames per sample + mOwner->endBox(); } mOwner->endBox(); } else {