From 7caaca64ff3e96d202ad9192a0e6dbf76f9deecc Mon Sep 17 00:00:00 2001
From: Ghislain MARY <ghislain.mary@belledonne-communications.com>
Date: Fri, 13 Jun 2014 14:57:24 +0200
Subject: [PATCH] Use the iSAC codec and WebRTC echo canceller from the
 mswebrtc plugin on Android.

---
 build/android/Android.mk    | 29 +++++++++++++++++++++++++----
 coreapi/linphonecore_jni.cc |  8 ++++----
 mediastreamer2              |  2 +-
 3 files changed, 30 insertions(+), 9 deletions(-)

diff --git a/build/android/Android.mk b/build/android/Android.mk
index d815a11a9e..438732952a 100755
--- a/build/android/Android.mk
+++ b/build/android/Android.mk
@@ -160,10 +160,31 @@ LOCAL_CFLAGS += -DHAVE_SILK
 LOCAL_STATIC_LIBRARIES += libmssilk
 endif
 
-ifeq ($(BUILD_WEBRTC_ISAC),1)
-LOCAL_CFLAGS += -DHAVE_ISAC
-LOCAL_STATIC_LIBRARIES += libwebrtc_isacfix_neon
-LOCAL_STATIC_LIBRARIES += libwebrtc_spl libwebrtc_isacfix libmsisac
+ifneq ($(BUILD_WEBRTC_AECM)$(BUILD_WEBRTC_ISAC),00)
+LOCAL_CFLAGS += -DHAVE_WEBRTC
+LOCAL_STATIC_LIBRARIES += libmswebrtc
+endif
+ifneq ($(BUILD_WEBRTC_AECM),0)
+LOCAL_STATIC_LIBRARIES += \
+	libwebrtc_aecm \
+	libwebrtc_apm_utility \
+	libwebrtc_spl \
+	libwebrtc_system_wrappers
+ifeq ($(TARGET_ARCH_ABI), armeabi-v7a)
+LOCAL_STATIC_LIBRARIES += \
+	libwebrtc_aecm_neon \
+	libwebrtc_spl_neon
+endif
+endif
+ifneq ($(BUILD_WEBRTC_ISAC),0)
+LOCAL_STATIC_LIBRARIES += \
+	libwebrtc_isacfix \
+	libwebrtc_spl
+ifeq ($(TARGET_ARCH_ABI), armeabi-v7a)
+LOCAL_STATIC_LIBRARIES += \
+	libwebrtc_isacfix_neon \
+	libwebrtc_spl_neon
+endif
 endif
 
 ifeq ($(BUILD_G729),1)
diff --git a/coreapi/linphonecore_jni.cc b/coreapi/linphonecore_jni.cc
index 919c813a9a..dd84cafbaf 100644
--- a/coreapi/linphonecore_jni.cc
+++ b/coreapi/linphonecore_jni.cc
@@ -52,8 +52,8 @@ extern "C" void libmssilk_init();
 #ifdef HAVE_G729
 extern "C" void libmsbcg729_init();
 #endif
-#ifdef HAVE_ISAC
-extern "C" void libmsisac_init();
+#ifdef HAVE_WEBRTC
+extern "C" void libmswebrtc_init();
 #endif
 #endif /*ANDROID*/
 
@@ -787,8 +787,8 @@ extern "C" jlong Java_org_linphone_core_LinphoneCoreImpl_newLinphoneCore(JNIEnv*
 #ifdef HAVE_G729
 	libmsbcg729_init();
 #endif
-#ifdef HAVE_ISAC
-	libmsisac_init();
+#ifdef HAVE_WEBRTC
+	libmswebrtc_init();
 #endif
 
 	jlong nativePtr = (jlong)linphone_core_new(	&ldata->vTable
diff --git a/mediastreamer2 b/mediastreamer2
index ebc30daf06..903d16fd95 160000
--- a/mediastreamer2
+++ b/mediastreamer2
@@ -1 +1 @@
-Subproject commit ebc30daf06e5b98eab43257fbf425aac291a7bba
+Subproject commit 903d16fd95c070f8194221142aaa13c17be7d535
-- 
GitLab