am 568cde55: am 80cff944: am 74675f29: Merge "AArch64: Use long for pointers in AmrInputStream"

* commit '568cde557abfaaa5bf584cf7c3396f9efd990e6c':
  AArch64: Use long for pointers in AmrInputStream
This commit is contained in:
Narayan Kamath
2014-01-07 13:04:01 +00:00
committed by Android Git Automerger
2 changed files with 20 additions and 20 deletions

View File

@ -41,7 +41,7 @@ public final class AmrInputStream extends InputStream
private InputStream mInputStream; private InputStream mInputStream;
// native handle // native handle
private int mGae; private long mGae;
// result amr stream // result amr stream
private final byte[] mBuf = new byte[SAMPLES_PER_FRAME * 2]; private final byte[] mBuf = new byte[SAMPLES_PER_FRAME * 2];
@ -130,11 +130,11 @@ public final class AmrInputStream extends InputStream
// //
// AudioRecord JNI interface // AudioRecord JNI interface
// //
private static native int GsmAmrEncoderNew(); private static native long GsmAmrEncoderNew();
private static native void GsmAmrEncoderInitialize(int gae); private static native void GsmAmrEncoderInitialize(long gae);
private static native int GsmAmrEncoderEncode(int gae, private static native int GsmAmrEncoderEncode(long gae,
byte[] pcm, int pcmOffset, byte[] amr, int amrOffset) throws IOException; byte[] pcm, int pcmOffset, byte[] amr, int amrOffset) throws IOException;
private static native void GsmAmrEncoderCleanup(int gae); private static native void GsmAmrEncoderCleanup(long gae);
private static native void GsmAmrEncoderDelete(int gae); private static native void GsmAmrEncoderDelete(long gae);
} }

View File

@ -49,17 +49,17 @@ struct GsmAmrEncoderState {
int32_t mLastModeUsed; int32_t mLastModeUsed;
}; };
static jint android_media_AmrInputStream_GsmAmrEncoderNew static jlong android_media_AmrInputStream_GsmAmrEncoderNew
(JNIEnv *env, jclass clazz) { (JNIEnv *env, jclass clazz) {
GsmAmrEncoderState* gae = new GsmAmrEncoderState(); GsmAmrEncoderState* gae = new GsmAmrEncoderState();
if (gae == NULL) { if (gae == NULL) {
jniThrowRuntimeException(env, "Out of memory"); jniThrowRuntimeException(env, "Out of memory");
} }
return (jint)gae; return (jlong)gae;
} }
static void android_media_AmrInputStream_GsmAmrEncoderInitialize static void android_media_AmrInputStream_GsmAmrEncoderInitialize
(JNIEnv *env, jclass clazz, jint gae) { (JNIEnv *env, jclass clazz, jlong gae) {
GsmAmrEncoderState *state = (GsmAmrEncoderState *) gae; GsmAmrEncoderState *state = (GsmAmrEncoderState *) gae;
int32_t nResult = AMREncodeInit(&state->mEncState, &state->mSidState, false); int32_t nResult = AMREncodeInit(&state->mEncState, &state->mSidState, false);
if (nResult != OK) { if (nResult != OK) {
@ -70,7 +70,7 @@ static void android_media_AmrInputStream_GsmAmrEncoderInitialize
static jint android_media_AmrInputStream_GsmAmrEncoderEncode static jint android_media_AmrInputStream_GsmAmrEncoderEncode
(JNIEnv *env, jclass clazz, (JNIEnv *env, jclass clazz,
jint gae, jbyteArray pcm, jint pcmOffset, jbyteArray amr, jint amrOffset) { jlong gae, jbyteArray pcm, jint pcmOffset, jbyteArray amr, jint amrOffset) {
jbyte inBuf[BYTES_PER_FRAME]; jbyte inBuf[BYTES_PER_FRAME];
jbyte outBuf[MAX_OUTPUT_BUFFER_SIZE]; jbyte outBuf[MAX_OUTPUT_BUFFER_SIZE];
@ -86,7 +86,7 @@ static jint android_media_AmrInputStream_GsmAmrEncoderEncode
if (length < 0) { if (length < 0) {
jniThrowExceptionFmt(env, "java/io/IOException", jniThrowExceptionFmt(env, "java/io/IOException",
"Failed to encode a frame with error code: %d", length); "Failed to encode a frame with error code: %d", length);
return -1; return (jint)-1;
} }
// The 1st byte of PV AMR frames are WMF (Wireless Multimedia Forum) // The 1st byte of PV AMR frames are WMF (Wireless Multimedia Forum)
@ -101,30 +101,30 @@ static jint android_media_AmrInputStream_GsmAmrEncoderEncode
env->SetByteArrayRegion(amr, amrOffset, length, outBuf); env->SetByteArrayRegion(amr, amrOffset, length, outBuf);
return length; return (jint)length;
} }
static void android_media_AmrInputStream_GsmAmrEncoderCleanup static void android_media_AmrInputStream_GsmAmrEncoderCleanup
(JNIEnv *env, jclass clazz, jint gae) { (JNIEnv *env, jclass clazz, jlong gae) {
GsmAmrEncoderState *state = (GsmAmrEncoderState *)gae; GsmAmrEncoderState *state = (GsmAmrEncoderState *) gae;
AMREncodeExit(&state->mEncState, &state->mSidState); AMREncodeExit(&state->mEncState, &state->mSidState);
state->mEncState = NULL; state->mEncState = NULL;
state->mSidState = NULL; state->mSidState = NULL;
} }
static void android_media_AmrInputStream_GsmAmrEncoderDelete static void android_media_AmrInputStream_GsmAmrEncoderDelete
(JNIEnv *env, jclass clazz, jint gae) { (JNIEnv *env, jclass clazz, jlong gae) {
delete (GsmAmrEncoderState*)gae; delete (GsmAmrEncoderState*)gae;
} }
// ---------------------------------------------------------------------------- // ----------------------------------------------------------------------------
static JNINativeMethod gMethods[] = { static JNINativeMethod gMethods[] = {
{"GsmAmrEncoderNew", "()I", (void*)android_media_AmrInputStream_GsmAmrEncoderNew}, {"GsmAmrEncoderNew", "()J", (void*)android_media_AmrInputStream_GsmAmrEncoderNew},
{"GsmAmrEncoderInitialize", "(I)V", (void*)android_media_AmrInputStream_GsmAmrEncoderInitialize}, {"GsmAmrEncoderInitialize", "(J)V", (void*)android_media_AmrInputStream_GsmAmrEncoderInitialize},
{"GsmAmrEncoderEncode", "(I[BI[BI)I", (void*)android_media_AmrInputStream_GsmAmrEncoderEncode}, {"GsmAmrEncoderEncode", "(J[BI[BI)I", (void*)android_media_AmrInputStream_GsmAmrEncoderEncode},
{"GsmAmrEncoderCleanup", "(I)V", (void*)android_media_AmrInputStream_GsmAmrEncoderCleanup}, {"GsmAmrEncoderCleanup", "(J)V", (void*)android_media_AmrInputStream_GsmAmrEncoderCleanup},
{"GsmAmrEncoderDelete", "(I)V", (void*)android_media_AmrInputStream_GsmAmrEncoderDelete}, {"GsmAmrEncoderDelete", "(J)V", (void*)android_media_AmrInputStream_GsmAmrEncoderDelete},
}; };