From 3603a92ce401548e69f6fefdef874bbe9dd1616a Mon Sep 17 00:00:00 2001 From: Simon Morlat Date: Tue, 12 Aug 2014 17:24:28 +0200 Subject: [PATCH] add jitter buffer settings --- coreapi/linphonecore_jni.cc | 8 ++++++++ java/common/org/linphone/core/LinphoneCore.java | 17 +++++++++++++++++ .../org/linphone/core/LinphoneCoreImpl.java | 15 +++++++++++++-- 3 files changed, 38 insertions(+), 2 deletions(-) diff --git a/coreapi/linphonecore_jni.cc b/coreapi/linphonecore_jni.cc index 5e28c52ad..92c253288 100644 --- a/coreapi/linphonecore_jni.cc +++ b/coreapi/linphonecore_jni.cc @@ -3412,6 +3412,14 @@ extern "C" void Java_org_linphone_core_LinphoneCoreImpl_setCpuCountNative(JNIEnv ms_set_cpu_count(count); } +extern "C" void Java_org_linphone_core_LinphoneCoreImpl_setAudioJittcomp(JNIEnv *env, jobject thiz, jlong lc, jint value) { + linphone_core_set_audio_jittcomp((LinphoneCore *)lc, value); +} + +extern "C" void Java_org_linphone_core_LinphoneCoreImpl_setVideoJittcomp(JNIEnv *env, jobject thiz, jlong lc, jint value) { + linphone_core_set_video_jittcomp((LinphoneCore *)lc, value); +} + extern "C" void Java_org_linphone_core_LinphoneCoreImpl_setAudioPort(JNIEnv *env, jobject thiz, jlong lc, jint port) { linphone_core_set_audio_port((LinphoneCore *)lc, port); } diff --git a/java/common/org/linphone/core/LinphoneCore.java b/java/common/org/linphone/core/LinphoneCore.java index 5328442fd..54f923dd6 100644 --- a/java/common/org/linphone/core/LinphoneCore.java +++ b/java/common/org/linphone/core/LinphoneCore.java @@ -1623,4 +1623,21 @@ public interface LinphoneCore { * Typical use is to stop ringing when the user requests to ignore the call. **/ public void stopRinging(); + + /** + * Set audio jitter buffer size in milliseconds. + * A value of zero disables the jitter buffer. + * The new value is taken into account immediately for all running or pending calls. + * @param value the jitter buffer size in milliseconds. + */ + public void setAudioJittcomp(int value); + + /** + * Set video jitter buffer size in milliseconds. + * A value of zero disables the jitter buffer. + * The new value is taken into account immediately for all running or pending calls. + * @param value the jitter buffer size in milliseconds. + */ + public void setVideoJittcomp(int value); + } diff --git a/java/impl/org/linphone/core/LinphoneCoreImpl.java b/java/impl/org/linphone/core/LinphoneCoreImpl.java index dc2a9188b..c7dd9f0fa 100644 --- a/java/impl/org/linphone/core/LinphoneCoreImpl.java +++ b/java/impl/org/linphone/core/LinphoneCoreImpl.java @@ -1200,13 +1200,24 @@ class LinphoneCoreImpl implements LinphoneCore { return getPayloadTypeBitrate(nativePtr, ((PayloadTypeImpl)pt).nativePtr); } @Override - public void enableAdaptiveRateControl(boolean enable) { + public synchronized void enableAdaptiveRateControl(boolean enable) { enableAdaptiveRateControl(nativePtr,enable); } @Override - public boolean isAdaptiveRateControlEnabled() { + public synchronized boolean isAdaptiveRateControlEnabled() { return isAdaptiveRateControlEnabled(nativePtr); } + private native void setAudioJittcomp(long ptr, int value); + @Override + public synchronized void setAudioJittcomp(int value) { + setAudioJittcomp(nativePtr,value); + } + private native void setVideoJittcomp(long ptr, int value); + @Override + public synchronized void setVideoJittcomp(int value) { + setVideoJittcomp(nativePtr,value); + } + }