From b3734e28a0896f792f422ade9be88970a25a8c46 Mon Sep 17 00:00:00 2001 From: Margaux Clerc Date: Thu, 19 Feb 2015 15:58:48 +0100 Subject: [PATCH] JNI setPayloadTypeNumber and resetLogCollection --- coreapi/linphonecore_jni.cc | 20 +++++++++++++++ .../org/linphone/core/LinphoneCore.java | 25 +++++++++++++++++++ .../org/linphone/core/LinphoneCoreImpl.java | 15 +++++++++++ 3 files changed, 60 insertions(+) diff --git a/coreapi/linphonecore_jni.cc b/coreapi/linphonecore_jni.cc index 3e895a6ce..eb7c47f83 100644 --- a/coreapi/linphonecore_jni.cc +++ b/coreapi/linphonecore_jni.cc @@ -1200,6 +1200,10 @@ extern "C" void Java_org_linphone_core_LinphoneCoreImpl_uploadLogCollection(JNIE linphone_core_upload_log_collection(core); } +extern "C" void Java_org_linphone_core_LinphoneCoreImpl_resetLogCollection(JNIEnv* env, jobject thiz) { + linphone_core_reset_log_collection(); +} + extern "C" jint Java_org_linphone_core_LinphoneCoreImpl_migrateToMultiTransport(JNIEnv* env ,jobject thiz ,jlong lc) { @@ -1603,6 +1607,7 @@ extern "C" jlong Java_org_linphone_core_LinphoneCoreImpl_findPayloadType(JNIEnv* env->ReleaseStringUTFChars(jmime, mime); return result; } + extern "C" jlongArray Java_org_linphone_core_LinphoneCoreImpl_listVideoPayloadTypes(JNIEnv* env ,jobject thiz ,jlong lc) { @@ -1675,6 +1680,21 @@ extern "C" jint Java_org_linphone_core_LinphoneCoreImpl_getPayloadTypeBitrate(JN return (jint)linphone_core_get_payload_type_bitrate((LinphoneCore*)lc,(PayloadType*)pt); } +extern "C" void Java_org_linphone_core_LinphoneCoreImpl_setPayloadTypeNumber(JNIEnv* env + ,jobject thiz + ,jlong lc + ,jlong pt + ,jint number) { + linphone_core_set_payload_type_number((LinphoneCore*)lc,(PayloadType*)pt,number); +} + +extern "C" jint Java_org_linphone_core_LinphoneCoreImpl_getPayloadTypeNumber(JNIEnv* env + ,jobject thiz + ,jlong lc + ,jlong pt) { + return (jint)linphone_core_get_payload_type_number((LinphoneCore*)lc,(PayloadType*)pt); +} + extern "C" void Java_org_linphone_core_LinphoneCoreImpl_enableAdaptiveRateControl(JNIEnv* env ,jobject thiz ,jlong lc diff --git a/java/common/org/linphone/core/LinphoneCore.java b/java/common/org/linphone/core/LinphoneCore.java index 7c23cb9bb..2b7ce9cde 100644 --- a/java/common/org/linphone/core/LinphoneCore.java +++ b/java/common/org/linphone/core/LinphoneCore.java @@ -786,6 +786,26 @@ public interface LinphoneCore { */ int getPayloadTypeBitrate(PayloadType pt); + /** + * Set an explicit bitrate (IP bitrate, not codec bitrate) for a given codec, in kbit/s. + * @param pt the payload type + * @param number target IP bitrate in kbit/s + */ + + /** + * Force a number for a payload type. The LinphoneCore does payload type number assignment automatically. THis function is to be used mainly for tests, in order + * to override the automatic assignment mechanism. + * @param pt the payload type + * @param number + **/ + void setPayloadTypeNumber(PayloadType pt, int number); + + /** + * @param pt the payload type + * @return the payload type number assigned for this codec. + */ + int getPayloadTypeNumber(PayloadType pt); + /** * Enable adaptive rate control. * @param enable @@ -1889,6 +1909,11 @@ public interface LinphoneCore { * Upload the log collection to the configured server url. */ public void uploadLogCollection(); + + /** + * Reset the log collection by removing the log files. + */ + public void resetLogCollection(); /** diff --git a/java/impl/org/linphone/core/LinphoneCoreImpl.java b/java/impl/org/linphone/core/LinphoneCoreImpl.java index bd361daca..8595ff079 100644 --- a/java/impl/org/linphone/core/LinphoneCoreImpl.java +++ b/java/impl/org/linphone/core/LinphoneCoreImpl.java @@ -1274,6 +1274,18 @@ class LinphoneCoreImpl implements LinphoneCore { public synchronized int getPayloadTypeBitrate(PayloadType pt) { return getPayloadTypeBitrate(nativePtr, ((PayloadTypeImpl)pt).nativePtr); } + + private native void setPayloadTypeNumber(long coreptr, long payload_ptr, int number); + @Override + public synchronized void setPayloadTypeNumber(PayloadType pt, int number) { + setPayloadTypeNumber(nativePtr, ((PayloadTypeImpl)pt).nativePtr, number); + } + private native int getPayloadTypeNumber(long coreptr, long payload_ptr); + @Override + public synchronized int getPayloadTypeNumber(PayloadType pt) { + return getPayloadTypeNumber(nativePtr, ((PayloadTypeImpl)pt).nativePtr); + } + @Override public synchronized void enableAdaptiveRateControl(boolean enable) { enableAdaptiveRateControl(nativePtr,enable); @@ -1352,6 +1364,9 @@ class LinphoneCoreImpl implements LinphoneCore { public void uploadLogCollection() { uploadLogCollection(nativePtr); } + + @Override + public native void resetLogCollection(); private native void setPreferredFramerate(long nativePtr, float fps); @Override