From f2898ce7e2e6c0126bb81c12f7ed914599d2890a Mon Sep 17 00:00:00 2001 From: Juha Heinanen Date: Wed, 29 Jan 2025 02:51:08 +0200 Subject: [PATCH] Added lost Java_com_tutpro_baresip_Api_create_1AAudio_1SessionId API function --- app/src/main/cpp/baresip.c | 30 ++++++++++++++++++++++++++++++ 1 file changed, 30 insertions(+) diff --git a/app/src/main/cpp/baresip.c b/app/src/main/cpp/baresip.c index bf59b5b3..e62c3947 100644 --- a/app/src/main/cpp/baresip.c +++ b/app/src/main/cpp/baresip.c @@ -1,6 +1,7 @@ #include #include #include +#include #include #include #include @@ -1802,3 +1803,32 @@ JNIEXPORT void JNICALL Java_com_tutpro_baresip_Api_module_1unload( LOGD("unloaded module %s\n", native_module); (*env)->ReleaseStringUTFChars(env, javaModule, native_module); } + +JNIEXPORT jint JNICALL +Java_com_tutpro_baresip_Api_create_1AAudio_1SessionId(JNIEnv *env, jobject obj) { + AAudioStreamBuilder *builder = NULL; + AAudioStream *stream = NULL; + jint sessionId = -1; + + if (AAudio_createStreamBuilder(&builder) != AAUDIO_OK) { + return -1; + } + + AAudioStreamBuilder_setDirection(builder, AAUDIO_DIRECTION_INPUT); + AAudioStreamBuilder_setSharingMode(builder, AAUDIO_SHARING_MODE_SHARED); + AAudioStreamBuilder_setPerformanceMode(builder, AAUDIO_PERFORMANCE_MODE_LOW_LATENCY); + AAudioStreamBuilder_setUsage(builder,AAUDIO_USAGE_VOICE_COMMUNICATION); + AAudioStreamBuilder_setInputPreset(builder, AAUDIO_INPUT_PRESET_VOICE_RECOGNITION); + AAudioStreamBuilder_setFormat(builder, AAUDIO_FORMAT_PCM_I16); + AAudioStreamBuilder_setSampleRate(builder, 16000); + AAudioStreamBuilder_setChannelCount(builder, 1); + AAudioStreamBuilder_setSessionId(builder, AAUDIO_SESSION_ID_ALLOCATE); + + if (AAudioStreamBuilder_openStream(builder, &stream) == AAUDIO_OK) { + sessionId = AAudioStream_getSessionId(stream); + AAudioStream_close(stream); + } + + AAudioStreamBuilder_delete(builder); + return sessionId; +}