diff --git a/build/android/Android.mk b/build/android/Android.mk index e402eca74..47aec3448 100755 --- a/build/android/Android.mk +++ b/build/android/Android.mk @@ -77,7 +77,10 @@ LOCAL_STATIC_LIBRARIES := \ libeXosip2 \ libosip2 \ libgsm -# libmsilbc \ +ifeq ($(TARGET_ARCH_ABI),armeabi-v7a) + LOCAL_CFLAGS += -DHAVE_ILBC=1 + LOCAL_STATIC_LIBRARIES += libmsilbc +endif LOCAL_MODULE_CLASS = SHARED_LIBRARIES include $(BUILD_SHARED_LIBRARY) diff --git a/coreapi/linphonecore_jni.cc b/coreapi/linphonecore_jni.cc index 7501e25ab..3a5511a00 100644 --- a/coreapi/linphonecore_jni.cc +++ b/coreapi/linphonecore_jni.cc @@ -292,17 +292,17 @@ extern "C" void Java_org_linphone_core_LinphoneCoreImpl_setNetworkStateReachable linphone_core_set_network_reachable((LinphoneCore*)lc,isReachable); } -extern "C" void Java_org_linphone_core_LinphoneCoreImpl_setSoftPlayLevel( JNIEnv* env +extern "C" void Java_org_linphone_core_LinphoneCoreImpl_setPlaybackGain( JNIEnv* env ,jobject thiz ,jlong lc ,jfloat gain) { - linphone_core_set_soft_play_level((LinphoneCore*)lc,gain); + linphone_core_set_playback_gain_db((LinphoneCore*)lc,gain); } -extern "C" float Java_org_linphone_core_LinphoneCoreImpl_getSoftPlayLevel( JNIEnv* env +extern "C" float Java_org_linphone_core_LinphoneCoreImpl_getPlaybackGain( JNIEnv* env ,jobject thiz ,jlong lc) { - return linphone_core_get_soft_play_level((LinphoneCore*)lc); + return linphone_core_get_playback_gain_db((LinphoneCore*)lc); } extern "C" void Java_org_linphone_core_LinphoneCoreImpl_muteMic( JNIEnv* env @@ -354,7 +354,18 @@ extern "C" jlong Java_org_linphone_core_LinphoneCoreImpl_enablePayloadType(JNIEn ,jboolean enable) { return linphone_core_enable_payload_type((LinphoneCore*)lc,(PayloadType*)pt,enable); } - +extern "C" void Java_org_linphone_core_LinphoneCoreImpl_enableEchoCancellation(JNIEnv* env + ,jobject thiz + ,jlong lc + ,jboolean enable) { + linphone_core_enable_echo_cancellation((LinphoneCore*)lc,enable); +} +extern "C" jboolean Java_org_linphone_core_LinphoneCoreImpl_isEchoCancellationEnabled(JNIEnv* env + ,jobject thiz + ,jlong lc + ) { + return linphone_core_echo_cancellation_enabled((LinphoneCore*)lc); +} //ProxyConfig diff --git a/java/common/org/linphone/core/LinphoneCore.java b/java/common/org/linphone/core/LinphoneCore.java index bd153c74a..bb78726aa 100644 --- a/java/common/org/linphone/core/LinphoneCore.java +++ b/java/common/org/linphone/core/LinphoneCore.java @@ -159,12 +159,12 @@ public interface LinphoneCore { * Allow to control play level before entering sound card: * @param level in db */ - public void setSoftPlayLevel(float gain); + public void setPlaybackGain(float gain); /** * get play level before entering sound card: * @return level in db */ - public float getSoftPlayLevel(); + public float getPlaybackGain(); /** * Mutes or unmutes the local microphone. * @param isMuted @@ -196,4 +196,8 @@ public interface LinphoneCore { public void enablePayloadType(PayloadType pt, boolean enable) throws LinphoneCoreException; + public void enableEchoCancellation(boolean enable); + + public boolean isEchoCancellationEnabled(); + }