summaryrefslogtreecommitdiffstats
path: root/media/libstagefright/QCOMXCodec.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'media/libstagefright/QCOMXCodec.cpp')
-rw-r--r--media/libstagefright/QCOMXCodec.cpp13
1 files changed, 12 insertions, 1 deletions
diff --git a/media/libstagefright/QCOMXCodec.cpp b/media/libstagefright/QCOMXCodec.cpp
index fcc57f2..a2f3b35 100644
--- a/media/libstagefright/QCOMXCodec.cpp
+++ b/media/libstagefright/QCOMXCodec.cpp
@@ -30,6 +30,7 @@
//#define LOG_NDEBUG 0
#define LOG_TAG "QCOMXCodec"
#include <utils/Log.h>
+#include <cutils/properties.h>
#include <media/stagefright/foundation/ADebug.h>
#include <media/stagefright/MediaDefs.h>
@@ -593,7 +594,7 @@ void QCOMXCodec::setQCSpecificVideoFormat(const sp<MetaData> &meta, sp<IOMX> OMX
void QCOMXCodec::checkIfInterlaced(const uint8_t *ptr, const sp<MetaData> &meta)
{
uint16_t spsSize = (((uint16_t)ptr[6]) << 8) + (uint16_t)(ptr[7]);
- int32_t width = 0, height = 0, isInterlaced = 0;
+ int32_t width = 0, height = 0, isInterlaced = 1;
const uint8_t *spsStart = &ptr[8];
sp<ABuffer> seqParamSet = new ABuffer(spsSize);
@@ -607,4 +608,14 @@ void QCOMXCodec::checkIfInterlaced(const uint8_t *ptr, const sp<MetaData> &meta)
return;
}
+bool QCOMXCodec::useHWAACDecoder(const char *mime) {
+ char value[PROPERTY_VALUE_MAX];
+ int aaccodectype = property_get("media.aaccodectype", value, NULL);
+ if (!strcmp("0", value) && aaccodectype && !strcmp(mime, MEDIA_MIMETYPE_AUDIO_AAC)) {
+ ALOGI("Using Hardware AAC Decoder");
+ return true;
+ }
+ return false;
+}
+
}