summaryrefslogtreecommitdiffstats
path: root/media/jni
diff options
context:
space:
mode:
authorAndreas Huber <andih@google.com>2009-12-03 11:31:19 -0800
committerAndreas Huber <andih@google.com>2009-12-03 13:21:54 -0800
commitbfb9fb143b67c2d0307af2bce9af3c08f362b29a (patch)
tree6b22297ab9749e2c86d3ae4844a7bad884027118 /media/jni
parentd345c6acedb22c9408553ef9f38c196984177e6b (diff)
downloadframeworks_base-bfb9fb143b67c2d0307af2bce9af3c08f362b29a.zip
frameworks_base-bfb9fb143b67c2d0307af2bce9af3c08f362b29a.tar.gz
frameworks_base-bfb9fb143b67c2d0307af2bce9af3c08f362b29a.tar.bz2
Refactor MediaScanner. Some steps on the way towards being able to build the tree without OpenCore.
Diffstat (limited to 'media/jni')
-rw-r--r--media/jni/Android.mk17
-rw-r--r--media/jni/android_media_MediaPlayer.cpp9
-rw-r--r--media/jni/android_media_MediaScanner.cpp12
3 files changed, 30 insertions, 8 deletions
diff --git a/media/jni/Android.mk b/media/jni/Android.mk
index 49a82e6..fdcf3d1 100644
--- a/media/jni/Android.mk
+++ b/media/jni/Android.mk
@@ -1,4 +1,3 @@
-ifneq ($(BUILD_WITHOUT_PV),true)
LOCAL_PATH:= $(call my-dir)
include $(CLEAR_VARS)
@@ -7,12 +6,9 @@ LOCAL_SRC_FILES:= \
android_media_MediaRecorder.cpp \
android_media_MediaScanner.cpp \
android_media_MediaMetadataRetriever.cpp \
- android_media_AmrInputStream.cpp \
android_media_ResampleInputStream.cpp
LOCAL_SHARED_LIBRARIES := \
- libopencore_player \
- libomx_amrenc_sharedlibrary \
libandroid_runtime \
libnativehelper \
libutils \
@@ -21,11 +17,23 @@ LOCAL_SHARED_LIBRARIES := \
libskia \
libui
+ifneq ($(BUILD_WITHOUT_PV),true)
+LOCAL_SRC_FILES += \
+ android_media_AmrInputStream.cpp
+
+LOCAL_SHARED_LIBRARIES += \
+ libopencore_player \
+ libomx_amrenc_sharedlibrary
+else
+ LOCAL_CFLAGS += -DNO_OPENCORE
+endif
+
LOCAL_STATIC_LIBRARIES :=
LOCAL_C_INCLUDES += \
external/tremor/Tremor \
frameworks/base/core/jni \
+ frameworks/base/media/libmedia \
$(PV_INCLUDES) \
$(JNI_H_INCLUDE) \
$(call include-path-for, corecg graphics)
@@ -40,4 +48,3 @@ include $(BUILD_SHARED_LIBRARY)
# build libsoundpool.so
include $(LOCAL_PATH)/soundpool/Android.mk
-endif
diff --git a/media/jni/android_media_MediaPlayer.cpp b/media/jni/android_media_MediaPlayer.cpp
index a4ac6dc..703afd2 100644
--- a/media/jni/android_media_MediaPlayer.cpp
+++ b/media/jni/android_media_MediaPlayer.cpp
@@ -648,12 +648,15 @@ static int register_android_media_MediaPlayer(JNIEnv *env)
"android/media/MediaPlayer", gMethods, NELEM(gMethods));
}
+extern int register_android_media_MediaMetadataRetriever(JNIEnv *env);
extern int register_android_media_MediaRecorder(JNIEnv *env);
extern int register_android_media_MediaScanner(JNIEnv *env);
-extern int register_android_media_MediaMetadataRetriever(JNIEnv *env);
-extern int register_android_media_AmrInputStream(JNIEnv *env);
extern int register_android_media_ResampleInputStream(JNIEnv *env);
+#ifndef NO_OPENCORE
+extern int register_android_media_AmrInputStream(JNIEnv *env);
+#endif
+
jint JNI_OnLoad(JavaVM* vm, void* reserved)
{
JNIEnv* env = NULL;
@@ -685,10 +688,12 @@ jint JNI_OnLoad(JavaVM* vm, void* reserved)
goto bail;
}
+#ifndef NO_OPENCORE
if (register_android_media_AmrInputStream(env) < 0) {
LOGE("ERROR: AmrInputStream native registration failed\n");
goto bail;
}
+#endif
if (register_android_media_ResampleInputStream(env) < 0) {
LOGE("ERROR: ResampleInputStream native registration failed\n");
diff --git a/media/jni/android_media_MediaScanner.cpp b/media/jni/android_media_MediaScanner.cpp
index 6a5404e..144fba2 100644
--- a/media/jni/android_media_MediaScanner.cpp
+++ b/media/jni/android_media_MediaScanner.cpp
@@ -30,6 +30,11 @@
#include "JNIHelp.h"
#include "android_runtime/AndroidRuntime.h"
+#ifndef NO_OPENCORE
+#include "pvmediascanner.h"
+#else
+#include "StagefrightMediaScanner.h"
+#endif
// ----------------------------------------------------------------------------
@@ -281,7 +286,12 @@ android_media_MediaScanner_native_init(JNIEnv *env)
static void
android_media_MediaScanner_native_setup(JNIEnv *env, jobject thiz)
{
- MediaScanner *mp = new MediaScanner();
+#ifndef NO_OPENCORE
+ MediaScanner *mp = new PVMediaScanner();
+#else
+ MediaScanner *mp = new StagefrightMediaScanner();
+#endif
+
if (mp == NULL) {
jniThrowException(env, "java/lang/RuntimeException", "Out of memory");
return;