summaryrefslogtreecommitdiffstats
path: root/media
diff options
context:
space:
mode:
authorHarish Mahendrakar <harish.mahendrakar@ittiam.com>2015-04-06 17:57:59 +0530
committerLajos Molnar <lajos@google.com>2015-05-05 13:17:22 -0700
commitae0c0a17e824356eb55a6692ff8dee6cdc050401 (patch)
tree2ef98f77134c1efdf97df46ca87661b9cdbf5565 /media
parent8b07404cfe564885045a63bb592d6b6dc838b408 (diff)
downloadframeworks_av-ae0c0a17e824356eb55a6692ff8dee6cdc050401.zip
frameworks_av-ae0c0a17e824356eb55a6692ff8dee6cdc050401.tar.gz
frameworks_av-ae0c0a17e824356eb55a6692ff8dee6cdc050401.tar.bz2
Added support for MPEG2 video in MPEG4Extractor
Change-Id: I70b1c3a07062526fc6d5333f70f4f1d792834e7f
Diffstat (limited to 'media')
-rwxr-xr-x[-rw-r--r--]media/libstagefright/MPEG4Extractor.cpp14
1 files changed, 13 insertions, 1 deletions
diff --git a/media/libstagefright/MPEG4Extractor.cpp b/media/libstagefright/MPEG4Extractor.cpp
index 6573afc..36b7e94 100644..100755
--- a/media/libstagefright/MPEG4Extractor.cpp
+++ b/media/libstagefright/MPEG4Extractor.cpp
@@ -1665,7 +1665,18 @@ status_t MPEG4Extractor::parseChunk(off64_t *offset, int depth) {
return err;
}
}
-
+ if (mPath.size() >= 2
+ && mPath[mPath.size() - 2] == FOURCC('m', 'p', '4', 'v')) {
+ // Check if the video is MPEG2
+ ESDS esds(&buffer[4], chunk_data_size - 4);
+
+ uint8_t objectTypeIndication;
+ if (esds.getObjectTypeIndication(&objectTypeIndication) == OK) {
+ if (objectTypeIndication >= 0x60 && objectTypeIndication <= 0x65) {
+ mLastTrack->meta->setCString(kKeyMIMEType, MEDIA_MIMETYPE_VIDEO_MPEG2);
+ }
+ }
+ }
break;
}
@@ -2830,6 +2841,7 @@ status_t MPEG4Extractor::verifyTrack(Track *track) {
return ERROR_MALFORMED;
}
} else if (!strcasecmp(mime, MEDIA_MIMETYPE_VIDEO_MPEG4)
+ || !strcasecmp(mime, MEDIA_MIMETYPE_VIDEO_MPEG2)
|| !strcasecmp(mime, MEDIA_MIMETYPE_AUDIO_AAC)) {
if (!track->meta->findData(kKeyESDS, &type, &data, &size)
|| type != kTypeESDS) {