| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483 |
- #include "com_jme3_audio_android_AndroidOpenALSoftAudioRenderer.h"
- #include "AL/alc.h"
- #include "AL/al.h"
- #include "AL/alext.h"
- // for __android_log_print(ANDROID_LOG_INFO, "YourApp", "formatted message");
- #include <android/log.h>
- #include <jni.h>
- #include <stddef.h>
- #include <stdio.h>
- #include <assert.h>
- #include <string.h>
- #include <time.h>
- #ifdef __cplusplus
- extern "C" {
- #endif
- static jboolean created = JNI_FALSE;
- #define BUFFER_COUNT 1
- ALuint* buffers[BUFFER_COUNT] = { 0 };
- ALuint* source = 0;
- int getError() {
- int errorcode = alGetError();
- // __android_log_print(ANDROID_LOG_INFO, "OpenAL Soft", "getError: %d", errorcode);
- return errorcode;
- }
- /* InitAL opens the default device and sets up a context using default
- * attributes, making the program ready to call OpenAL functions. */
- int InitAL()
- {
- ALCdevice *device;
- ALCcontext *ctx;
- /* Open and initialize a device with default settings */
- device = alcOpenDevice(NULL);
- if(!device)
- {
- fprintf(stderr, "Could not open a device!\n");
- return 1;
- }
- ctx = alcCreateContext(device, NULL);
- // __android_log_print(ANDROID_LOG_INFO, "OpenAL Soft", "NULL: %d", NULL);
- // __android_log_print(ANDROID_LOG_INFO, "OpenAL Soft", "Created context: %d", ctx);
- // __android_log_print(ANDROID_LOG_INFO, "OpenAL Soft", "Created context addr: %d", &ctx);
- if(ctx == NULL || alcMakeContextCurrent(ctx) == ALC_FALSE)
- {
- if(ctx != NULL)
- alcDestroyContext(ctx);
- alcCloseDevice(device);
- fprintf(stderr, "Could not set a context!\n");
- return 1;
- }
- printf("Opened \"%s\"\n", alcGetString(device, ALC_DEVICE_SPECIFIER));
- __android_log_print(ANDROID_LOG_INFO, "OpenAL Soft", "Opened %s", alcGetString(device, ALC_DEVICE_SPECIFIER));
- return 0;
- }
- /* CloseAL closes the device belonging to the current context, and destroys the
- * context. */
- void CloseAL()
- {
- ALCdevice *device;
- ALCcontext *ctx;
- ALCboolean result;
- // __android_log_print(ANDROID_LOG_INFO, "OpenAL Soft", "Getting current context");
- ctx = alcGetCurrentContext();
- // getError();
- if(ctx == NULL){
- __android_log_print(ANDROID_LOG_INFO, "OpenAL Soft", "No context found");
- return;
- }
- // __android_log_print(ANDROID_LOG_INFO, "OpenAL Soft", "Getting current context device");
- device = alcGetContextsDevice(ctx);
- if(device == NULL) {
- __android_log_print(ANDROID_LOG_INFO, "OpenAL Soft", "No device found");
- return;
- } else {
- // __android_log_print(ANDROID_LOG_INFO, "OpenAL Soft", "alcGetContextsDevice device: %d", device);
- // __android_log_print(ANDROID_LOG_INFO, "OpenAL Soft", "alcGetContextsDevice device addr: %d", &device);
- }
- // getError();
- // __android_log_print(ANDROID_LOG_INFO, "OpenAL Soft", "Setting context to NULL");
- result = alcMakeContextCurrent(NULL);
- // __android_log_print(ANDROID_LOG_INFO, "OpenAL Soft", "alcMakeContextCurrent returned");
- // __android_log_print(ANDROID_LOG_INFO, "OpenAL Soft", "alcMakeContextCurrent returned with result: %d", result);
- if(!result) {
- __android_log_print(ANDROID_LOG_INFO, "OpenAL Soft", "alcMakeContextCurrent failed");
- return;
- }
- // __android_log_print(ANDROID_LOG_INFO, "OpenAL Soft", "Destroying context: %d", ctx);
- // __android_log_print(ANDROID_LOG_INFO, "OpenAL Soft", "Destroying context addr: %d", &ctx);
- alcDestroyContext(ctx);
- // __android_log_print(ANDROID_LOG_INFO, "OpenAL Soft", "Closing device");
- result = alcCloseDevice(device);
- // __android_log_print(ANDROID_LOG_INFO, "OpenAL Soft", "alcCloseDevice result: %d", result);
- }
- JNIEXPORT jboolean JNICALL Java_com_jme3_audio_android_AndroidOpenALSoftAudioRenderer_alIsCreated
- (JNIEnv* env, jclass)
- {
- return created;
- }
- JNIEXPORT jboolean JNICALL Java_com_jme3_audio_android_AndroidOpenALSoftAudioRenderer_alCreate
- (JNIEnv* env, jclass)
- {
- __android_log_print(ANDROID_LOG_INFO, "OpenAL Soft", "Starting Audio Engine");
- InitAL();
- created = JNI_TRUE;
- return created;
- }
- JNIEXPORT jboolean JNICALL Java_com_jme3_audio_android_AndroidOpenALSoftAudioRenderer_alDestroy
- (JNIEnv* env, jclass)
- {
- // __android_log_print(ANDROID_LOG_INFO, "OpenAL Soft", "alDestroy");
- CloseAL();
- created = JNI_FALSE;
- return created;
- }
- JNIEXPORT jstring JNICALL Java_com_jme3_audio_android_AndroidOpenALSoftAudioRenderer_alcGetString
- (JNIEnv* env, jclass, jint param)
- {
- // __android_log_print(ANDROID_LOG_INFO, "OpenAL Soft", "alcGetString for param: %d", param);
- ALCdevice *device;
- ALCcontext *ctx;
- ctx = alcGetCurrentContext();
- if(ctx != NULL) {
- device = alcGetContextsDevice(ctx);
- // __android_log_print(ANDROID_LOG_INFO, "OpenAL Soft", "alcGetString param value: %s", alcGetString(device, param));
- return env->NewStringUTF(alcGetString(device, param));
- }
- }
- JNIEXPORT jstring JNICALL Java_com_jme3_audio_android_AndroidOpenALSoftAudioRenderer_alGetString
- (JNIEnv* env, jclass, jint param)
- {
- // __android_log_print(ANDROID_LOG_INFO, "OpenAL Soft", "alGetString for param: %d", param);
- // __android_log_print(ANDROID_LOG_INFO, "OpenAL Soft", "alGetString param value: %s", alGetString(param));
- return env->NewStringUTF(alGetString(param));
- }
- JNIEXPORT jint JNICALL Java_com_jme3_audio_android_AndroidOpenALSoftAudioRenderer_alGenSources
- (JNIEnv *, jclass)
- {
- ALuint source;
- alGenSources(1, &source);
- // __android_log_print(ANDROID_LOG_INFO, "OpenAL Soft", "alGenSources: %d", source);
- return source;
- }
- JNIEXPORT jint JNICALL Java_com_jme3_audio_android_AndroidOpenALSoftAudioRenderer_alGetError
- (JNIEnv *, jclass)
- {
- return getError();
- }
- JNIEXPORT void JNICALL Java_com_jme3_audio_android_AndroidOpenALSoftAudioRenderer_alDeleteSources
- (JNIEnv* env, jclass, jint numSources, jobject intbufSources)
- {
- // __android_log_print(ANDROID_LOG_INFO, "OpenAL Soft", "alDeleteSources numSources: %d", numSources);
- ALuint* pIntBufSources = (ALuint*) env->GetDirectBufferAddress(intbufSources);
- alDeleteSources((ALsizei)numSources, pIntBufSources);
- }
- JNIEXPORT void JNICALL Java_com_jme3_audio_android_AndroidOpenALSoftAudioRenderer_alGenBuffers
- (JNIEnv* env, jclass, jint numBuffers, jobject intbufBuffers)
- {
- ALuint* pIntBufBuffers = (ALuint*) env->GetDirectBufferAddress(intbufBuffers);
- alGenBuffers((ALsizei)numBuffers, pIntBufBuffers);
- // for (int i=0; i<numBuffers; i++) {
- // __android_log_print(ANDROID_LOG_INFO, "OpenAL Soft", "alGenBuffers[%d]: %d", i, *(pIntBufBuffers+i));
- // }
- }
- JNIEXPORT void JNICALL Java_com_jme3_audio_android_AndroidOpenALSoftAudioRenderer_alDeleteBuffers
- (JNIEnv* env, jclass, jint numBuffers, jobject intbufBuffers)
- {
- // __android_log_print(ANDROID_LOG_INFO, "OpenAL Soft", "alDeleteBuffers numBuffers: %d", numBuffers);
- ALuint* pIntBufBuffers = (ALuint*) env->GetDirectBufferAddress(intbufBuffers);
- // __android_log_print(ANDROID_LOG_INFO, "OpenAL Soft", "alDeleteBuffers Buffers: %d", *pIntBufBuffers);
- // for (int i=0; i<numBuffers; i++) {
- // if(alIsBuffer(*(pIntBufBuffers+i)) == AL_TRUE) {
- // __android_log_print(ANDROID_LOG_INFO, "OpenAL Soft", "alDeleteBuffers[%d]: %d", i, *(pIntBufBuffers+i));
- // __android_log_print(ANDROID_LOG_INFO, "OpenAL Soft", "alDeleteBuffers buffer is a known buffer");
- // }
- // }
- alDeleteBuffers((ALsizei)numBuffers, pIntBufBuffers);
- }
- JNIEXPORT void JNICALL Java_com_jme3_audio_android_AndroidOpenALSoftAudioRenderer_alSourceStop
- (JNIEnv *, jclass, jint source)
- {
- // __android_log_print(ANDROID_LOG_INFO, "OpenAL Soft", "alSourceStop for source: %d", source);
- alSourceStop((ALuint)source);
- }
- JNIEXPORT void JNICALL Java_com_jme3_audio_android_AndroidOpenALSoftAudioRenderer_alSourcei
- (JNIEnv *, jclass, jint source, jint param, jint value)
- {
- // __android_log_print(ANDROID_LOG_INFO, "OpenAL Soft", "alSourcei for source: %d, param: %d, value: %d", source, param, value);
- alSourcei((ALuint)source, (ALenum)param, (ALint)value);
- }
- JNIEXPORT void JNICALL Java_com_jme3_audio_android_AndroidOpenALSoftAudioRenderer_alBufferData
- (JNIEnv* env, jclass, jint buffer, jint format, jobject bufferData, jint bufferSize, jint frequency)
- {
- // __android_log_print(ANDROID_LOG_INFO, "OpenAL Soft", "alBufferData for source: %d, format: %d, size: %d, frequency: %d", buffer, format, bufferSize, frequency);
- ALuint* pBufferData = (ALuint*) env->GetDirectBufferAddress(bufferData);
- alBufferData((ALuint)buffer, (ALenum)format, pBufferData, (ALsizei)bufferSize, (ALsizei)frequency);
- }
- JNIEXPORT void JNICALL Java_com_jme3_audio_android_AndroidOpenALSoftAudioRenderer_alSourcePlay
- (JNIEnv *, jclass, jint source)
- {
- // __android_log_print(ANDROID_LOG_INFO, "OpenAL Soft", "alSourcePlay for source: %d", source);
- alSourcePlay((ALuint)source);
- }
- JNIEXPORT void JNICALL Java_com_jme3_audio_android_AndroidOpenALSoftAudioRenderer_alSourcePause
- (JNIEnv *, jclass, jint source)
- {
- // __android_log_print(ANDROID_LOG_INFO, "OpenAL Soft", "alSourcePause for source: %d", source);
- alSourcePause((ALuint)source);
- }
- JNIEXPORT void JNICALL Java_com_jme3_audio_android_AndroidOpenALSoftAudioRenderer_alSourcef
- (JNIEnv *, jclass, jint source, jint param, jfloat value)
- {
- // __android_log_print(ANDROID_LOG_INFO, "OpenAL Soft", "alSourcef for source: %d, param: %d, value: %f", source, param, value);
- alSourcef((ALuint)source, (ALenum)param, (ALfloat)value);
- }
- JNIEXPORT void JNICALL Java_com_jme3_audio_android_AndroidOpenALSoftAudioRenderer_alSource3f
- (JNIEnv *, jclass, jint source, jint param, jfloat value1, jfloat value2, jfloat value3)
- {
- // __android_log_print(ANDROID_LOG_INFO, "OpenAL Soft", "alSource3f for source: %d, param: %d, value1: %f, value2: %f, value3: %f", source, param, value1, value2, value3);
- alSource3f((ALuint)source, (ALenum)param, (ALfloat)value1, (ALfloat)value2, (ALfloat)value3);
- }
- JNIEXPORT jint JNICALL Java_com_jme3_audio_android_AndroidOpenALSoftAudioRenderer_alGetSourcei
- (JNIEnv *, jclass, jint source, jint param)
- {
- // __android_log_print(ANDROID_LOG_INFO, "OpenAL Soft", "alGetSourcei for source: %d, param: %d", source, param);
- ALint result;
- alGetSourcei((ALuint)source, (ALenum)param, &result);
- return (jint)result;
- }
- JNIEXPORT void JNICALL Java_com_jme3_audio_android_AndroidOpenALSoftAudioRenderer_alSourceUnqueueBuffers
- (JNIEnv* env, jclass, jint source, jint numBuffers, jobject buffers)
- {
- // __android_log_print(ANDROID_LOG_INFO, "OpenAL Soft", "alSourceUnqueueBuffers for source: %d, numBuffers: %d", source, numBuffers);
- ALuint* pBuffers = (ALuint*) env->GetDirectBufferAddress(buffers);
- // for (ALuint i=0; i<numBuffers; i++) {
- // __android_log_print(ANDROID_LOG_INFO, "OpenAL Soft", "alSourceUnqueueBuffers, checking buffer[%d]: %d", i, *(pBuffers+i));
- // ALboolean isBuffer = alIsBuffer(*(pBuffers+i));
- // __android_log_print(ANDROID_LOG_INFO, "OpenAL Soft", "buffer check result: %d", isBuffer);
- // }
- alSourceUnqueueBuffers((ALuint)source, (ALsizei)numBuffers, pBuffers);
- // for (ALuint i=0; i<numBuffers; i++) {
- // __android_log_print(ANDROID_LOG_INFO, "OpenAL Soft", "alSourceUnqueueBuffers[%d]: %d", i, *(pBuffers+i));
- // }
- }
- JNIEXPORT void JNICALL Java_com_jme3_audio_android_AndroidOpenALSoftAudioRenderer_alSourceQueueBuffers
- (JNIEnv* env, jclass, jint source, jint numBuffers, jobject buffers)
- {
- // __android_log_print(ANDROID_LOG_INFO, "OpenAL Soft", "alSourceQueueBuffers for source: %d, numBuffers: %d", source, numBuffers);
- ALuint* pBuffers = (ALuint*) env->GetDirectBufferAddress(buffers);
- alSourceQueueBuffers((ALuint)source, (ALsizei)numBuffers, pBuffers);
- // for (ALuint i=0; i<numBuffers; i++) {
- // __android_log_print(ANDROID_LOG_INFO, "OpenAL Soft", "alSourceQueueBuffers[%d]: %d", i, *(pBuffers+i));
- // }
- }
- JNIEXPORT void JNICALL Java_com_jme3_audio_android_AndroidOpenALSoftAudioRenderer_alListener
- (JNIEnv* env, jclass, jint param, jobject bufferData)
- {
- // __android_log_print(ANDROID_LOG_INFO, "OpenAL Soft", "alListener for param: %d", param);
- ALfloat* pBufferData = (ALfloat*) env->GetDirectBufferAddress(bufferData);
- alListenerfv((ALenum)param, pBufferData);
- // getError();
- // for (int i=0; i<4; i++) {
- // __android_log_print(ANDROID_LOG_INFO, "OpenAL Soft", "alListener[%d]: %f", i, *(pBufferData+(i*sizeof(ALfloat))));
- // }
- }
- JNIEXPORT void JNICALL Java_com_jme3_audio_android_AndroidOpenALSoftAudioRenderer_alListenerf
- (JNIEnv *, jclass, jint param, jfloat value)
- {
- // __android_log_print(ANDROID_LOG_INFO, "OpenAL Soft", "alListenerf for param: %d, value: %f", param, value);
- alListenerf((ALenum)param, (ALfloat)value);
- }
- JNIEXPORT void JNICALL Java_com_jme3_audio_android_AndroidOpenALSoftAudioRenderer_alListener3f
- (JNIEnv *, jclass, jint param, jfloat value1, jfloat value2, jfloat value3)
- {
- // __android_log_print(ANDROID_LOG_INFO, "OpenAL Soft", "alListener3f for param: %d, value1: %f, value2: %f, value3: %f", param, value1, value2, value3);
- alListener3f((ALenum)param, (ALfloat)value1, (ALfloat)value2, (ALfloat)value3);
- }
- JNIEXPORT jboolean JNICALL Java_com_jme3_audio_android_AndroidOpenALSoftAudioRenderer_alcIsExtensionPresent
- (JNIEnv* env, jclass, jstring extension)
- {
- ALCdevice *device;
- ALCcontext *ctx;
- ALboolean result;
- // char buf[128];
- const char* strExtension;
- jsize strLength = env->GetStringUTFLength(extension);
- ctx = alcGetCurrentContext();
- if(ctx != NULL) {
- device = alcGetContextsDevice(ctx);
- if (device != NULL) {
- strExtension = env->GetStringUTFChars(extension, NULL);
- if (strExtension == NULL) {
- return JNI_FALSE; /* OutOfMemoryError already thrown */
- }
- // __android_log_print(ANDROID_LOG_INFO, "OpenAL Soft", "alcIsExtensionPresent for param: %s with size: %d", strExtension, strLength);
- result = alcIsExtensionPresent(device, strExtension);
- // __android_log_print(ANDROID_LOG_INFO, "OpenAL Soft", "alcIsExtensionPresent found: %d", result);
- env->ReleaseStringUTFChars(extension, strExtension);
- return (jboolean)result;
- } else {
- __android_log_print(ANDROID_LOG_INFO, "OpenAL Soft", "device is null in alcIsExtensionPresent");
- }
- } else {
- __android_log_print(ANDROID_LOG_INFO, "OpenAL Soft", "current context is null in alcIsExtensionPresent");
- }
- return JNI_FALSE;
- }
- JNIEXPORT void JNICALL Java_com_jme3_audio_android_AndroidOpenALSoftAudioRenderer_alcGetInteger
- (JNIEnv* env, jclass, jint param, jobject buffer, jint bufferSize)
- {
- ALCdevice *device;
- ALCcontext *ctx;
- // __android_log_print(ANDROID_LOG_INFO, "OpenAL Soft", "alcGetInteger for param: %d", param);
- ALCint* pBuffers = (ALCint*) env->GetDirectBufferAddress(buffer);
- ctx = alcGetCurrentContext();
- if(ctx != NULL) {
- device = alcGetContextsDevice(ctx);
- if (device != NULL) {
- alcGetIntegerv(device, (ALCenum)param, (ALCsizei)bufferSize, pBuffers);
- } else {
- __android_log_print(ANDROID_LOG_INFO, "OpenAL Soft", "device is null in alcGetInteger");
- }
- } else {
- __android_log_print(ANDROID_LOG_INFO, "OpenAL Soft", "current context is null in alcGetInteger");
- }
- }
- JNIEXPORT void JNICALL Java_com_jme3_audio_android_AndroidOpenALSoftAudioRenderer_alGenAuxiliaryEffectSlots
- (JNIEnv* env, jclass, jint numSlots, jobject buffer)
- {
- // __android_log_print(ANDROID_LOG_INFO, "OpenAL Soft", "alGenAuxiliaryEffectSlots for numSlots: %d", numSlots);
- ALuint* pBuffers = (ALuint*) env->GetDirectBufferAddress(buffer);
- alGenAuxiliaryEffectSlots((ALsizei)numSlots, pBuffers);
- }
- JNIEXPORT void JNICALL Java_com_jme3_audio_android_AndroidOpenALSoftAudioRenderer_alGenEffects
- (JNIEnv* env, jclass, jint numEffects, jobject buffer)
- {
- // __android_log_print(ANDROID_LOG_INFO, "OpenAL Soft", "alGenEffects for numEffects: %d", numEffects);
- ALuint* pBuffers = (ALuint*) env->GetDirectBufferAddress(buffer);
- alGenEffects((ALsizei)numEffects, pBuffers);
- }
- JNIEXPORT void JNICALL Java_com_jme3_audio_android_AndroidOpenALSoftAudioRenderer_alEffecti
- (JNIEnv *, jclass, jint effect, jint param, jint value)
- {
- // __android_log_print(ANDROID_LOG_INFO, "OpenAL Soft", "alEffecti for effect: %d, param: %d, value: %d", effect, param, value);
- alEffecti((ALuint)effect, (ALenum)param, (ALint)value);
- }
- JNIEXPORT void JNICALL Java_com_jme3_audio_android_AndroidOpenALSoftAudioRenderer_alAuxiliaryEffectSloti
- (JNIEnv *, jclass, jint effectSlot, jint param, jint value)
- {
- // __android_log_print(ANDROID_LOG_INFO, "OpenAL Soft", "alAuxiliaryEffectSloti for effect: %d, param: %d, value: %d", effectSlot, param, value);
- alAuxiliaryEffectSloti((ALuint)effectSlot, (ALenum)param, (ALint)value);
- }
- JNIEXPORT void JNICALL Java_com_jme3_audio_android_AndroidOpenALSoftAudioRenderer_alDeleteEffects
- (JNIEnv* env, jclass, jint numEffects, jobject buffer)
- {
- // __android_log_print(ANDROID_LOG_INFO, "OpenAL Soft", "alDeleteEffects for numEffects: %d", numEffects);
- ALuint* pBuffers = (ALuint*) env->GetDirectBufferAddress(buffer);
- alDeleteEffects((ALsizei)numEffects, pBuffers);
- }
- JNIEXPORT void JNICALL Java_com_jme3_audio_android_AndroidOpenALSoftAudioRenderer_alDeleteAuxiliaryEffectSlots
- (JNIEnv* env, jclass, jint numEffectSlots, jobject buffer)
- {
- // __android_log_print(ANDROID_LOG_INFO, "OpenAL Soft", "alDeleteAuxiliaryEffectSlots for numEffectSlots: %d", numEffectSlots);
- ALuint* pBuffers = (ALuint*) env->GetDirectBufferAddress(buffer);
- alDeleteAuxiliaryEffectSlots((ALsizei)numEffectSlots, pBuffers);
- }
- JNIEXPORT void JNICALL Java_com_jme3_audio_android_AndroidOpenALSoftAudioRenderer_alGenFilters
- (JNIEnv* env, jclass, jint numFilters, jobject buffer)
- {
- // __android_log_print(ANDROID_LOG_INFO, "OpenAL Soft", "alGenFilters for numFilters: %d", numFilters);
- ALuint* pBuffers = (ALuint*) env->GetDirectBufferAddress(buffer);
- alGenFilters((ALsizei)numFilters, pBuffers);
- }
- JNIEXPORT void JNICALL Java_com_jme3_audio_android_AndroidOpenALSoftAudioRenderer_alFilteri
- (JNIEnv *, jclass, jint filter, jint param, jint value)
- {
- // __android_log_print(ANDROID_LOG_INFO, "OpenAL Soft", "alFilteri for filter: %d, param: %d, value: %d", filter, param, value);
- alFilteri((ALuint)filter, (ALenum)param, (ALint)value);
- }
- JNIEXPORT void JNICALL Java_com_jme3_audio_android_AndroidOpenALSoftAudioRenderer_alFilterf
- (JNIEnv *, jclass, jint filter, jint param, jfloat value)
- {
- // __android_log_print(ANDROID_LOG_INFO, "OpenAL Soft", "alFilterf for filter: %d, param: %d, value: %f", filter, param, value);
- alFilterf((ALuint)filter, (ALenum)param, (ALfloat)value);
- }
- JNIEXPORT void JNICALL Java_com_jme3_audio_android_AndroidOpenALSoftAudioRenderer_alSource3i
- (JNIEnv *, jclass, jint source, jint param, jint value1, jint value2, jint value3)
- {
- // __android_log_print(ANDROID_LOG_INFO, "OpenAL Soft", "alSource3i for source: %d, param: %d, value1: %d, value2: %d, value3: %d", source, param, value1, value2, value3);
- alSource3i((ALuint)source, (ALenum)param, (ALint)value1, (ALint)value2, (ALint)value3);
- }
- JNIEXPORT void JNICALL Java_com_jme3_audio_android_AndroidOpenALSoftAudioRenderer_alDeleteFilters
- (JNIEnv* env, jclass, jint numFilters, jobject buffer)
- {
- // __android_log_print(ANDROID_LOG_INFO, "OpenAL Soft", "alDeleteFilters for numFilters: %d", numFilters);
- ALuint* pBuffers = (ALuint*) env->GetDirectBufferAddress(buffer);
- alDeleteFilters((ALsizei)numFilters, pBuffers);
- }
- JNIEXPORT void JNICALL Java_com_jme3_audio_android_AndroidOpenALSoftAudioRenderer_alEffectf
- (JNIEnv *, jclass, jint effect, jint param, jfloat value)
- {
- // __android_log_print(ANDROID_LOG_INFO, "OpenAL Soft", "alEffectf for effect: %d, param: %d, value: %d", effect, param, value);
- alEffectf((ALuint)effect, (ALenum)param, (ALfloat)value);
- }
- #ifdef __cplusplus
- }
- #endif
|