Lines Matching refs:env

45 extern sp<Camera> get_native_camera(JNIEnv *env, jobject thiz, struct JNICameraContext** context);
64 JNIMediaRecorderListener(JNIEnv* env, jobject thiz, jobject weak_thiz);
73 JNIMediaRecorderListener::JNIMediaRecorderListener(JNIEnv* env, jobject thiz, jobject weak_thiz)
78 jclass clazz = env->GetObjectClass(thiz);
81 jniThrowException(env, "java/lang/Exception", NULL);
84 mClass = (jclass)env->NewGlobalRef(clazz);
88 mObject = env->NewGlobalRef(weak_thiz);
94 JNIEnv *env = AndroidRuntime::getJNIEnv();
95 env->DeleteGlobalRef(mObject);
96 env->DeleteGlobalRef(mClass);
103 JNIEnv *env = AndroidRuntime::getJNIEnv();
104 env->CallStaticVoidMethod(mClass, fields.post_event, mObject, msg, ext1, ext2, 0);
109 static sp<Surface> get_surface(JNIEnv* env, jobject clazz)
112 Surface* const p = (Surface*)env->GetIntField(clazz, fields.surface_native);
117 static bool process_media_recorder_call(JNIEnv *env, status_t opStatus, const char* exception, const char* message)
121 jniThrowException(env, "java/lang/IllegalStateException", NULL);
124 jniThrowException(env, exception, message);
130 static sp<MediaRecorder> getMediaRecorder(JNIEnv* env, jobject thiz)
133 MediaRecorder* const p = (MediaRecorder*)env->GetIntField(thiz, fields.context);
137 static sp<MediaRecorder> setMediaRecorder(JNIEnv* env, jobject thiz, const sp<MediaRecorder>& recorder)
140 sp<MediaRecorder> old = (MediaRecorder*)env->GetIntField(thiz, fields.context);
147 env->SetIntField(thiz, fields.context, (int)recorder.get());
152 static void android_media_MediaRecorder_setCamera(JNIEnv* env, jobject thiz, jobject camera)
156 jniThrowNullPointerException(env, "camera object is a NULL pointer");
159 sp<Camera> c = get_native_camera(env, camera, NULL);
160 sp<MediaRecorder> mr = getMediaRecorder(env, thiz);
161 process_media_recorder_call(env, mr->setCamera(c->remote(), c->getRecordingProxy()),
166 android_media_MediaRecorder_setVideoSource(JNIEnv *env, jobject thiz, jint vs)
170 jniThrowException(env, "java/lang/IllegalArgumentException", "Invalid video source");
173 sp<MediaRecorder> mr = getMediaRecorder(env, thiz);
174 process_media_recorder_call(env, mr->setVideoSource(vs), "java/lang/RuntimeException", "setVideoSource failed.");
178 android_media_MediaRecorder_setAudioSource(JNIEnv *env, jobject thiz, jint as)
182 jniThrowException(env, "java/lang/IllegalArgumentException", "Invalid audio source");
186 sp<MediaRecorder> mr = getMediaRecorder(env, thiz);
187 process_media_recorder_call(env, mr->setAudioSource(as), "java/lang/RuntimeException", "setAudioSource failed.");
191 android_media_MediaRecorder_setOutputFormat(JNIEnv *env, jobject thiz, jint of)
195 jniThrowException(env, "java/lang/IllegalArgumentException", "Invalid output format");
198 sp<MediaRecorder> mr = getMediaRecorder(env, thiz);
199 process_media_recorder_call(env, mr->setOutputFormat(of), "java/lang/RuntimeException", "setOutputFormat failed.");
203 android_media_MediaRecorder_setVideoEncoder(JNIEnv *env, jobject thiz, jint ve)
207 jniThrowException(env, "java/lang/IllegalArgumentException", "Invalid video encoder");
210 sp<MediaRecorder> mr = getMediaRecorder(env, thiz);
211 process_media_recorder_call(env, mr->setVideoEncoder(ve), "java/lang/RuntimeException", "setVideoEncoder failed.");
215 android_media_MediaRecorder_setAudioEncoder(JNIEnv *env, jobject thiz, jint ae)
219 jniThrowException(env, "java/lang/IllegalArgumentException", "Invalid audio encoder");
222 sp<MediaRecorder> mr = getMediaRecorder(env, thiz);
223 process_media_recorder_call(env, mr->setAudioEncoder(ae), "java/lang/RuntimeException", "setAudioEncoder failed.");
227 android_media_MediaRecorder_setParameter(JNIEnv *env, jobject thiz, jstring params)
236 sp<MediaRecorder> mr = getMediaRecorder(env, thiz);
238 const char* params8 = env->GetStringUTFChars(params, NULL);
245 process_media_recorder_call(env, mr->setParameters(String8(params8)), "java/lang/RuntimeException", "setParameter failed.");
246 env->ReleaseStringUTFChars(params,params8);
250 android_media_MediaRecorder_setOutputFileFD(JNIEnv *env, jobject thiz, jobject fileDescriptor, jlong offset, jlong length)
254 jniThrowException(env, "java/lang/IllegalArgumentException", NULL);
257 int fd = jniGetFDFromFileDescriptor(env, fileDescriptor);
258 sp<MediaRecorder> mr = getMediaRecorder(env, thiz);
260 process_media_recorder_call(env, opStatus, "java/io/IOException", "setOutputFile failed.");
264 android_media_MediaRecorder_setVideoSize(JNIEnv *env, jobject thiz, jint width, jint height)
267 sp<MediaRecorder> mr = getMediaRecorder(env, thiz);
270 jniThrowException(env, "java/lang/IllegalArgumentException", "invalid video size");
273 process_media_recorder_call(env, mr->setVideoSize(width, height), "java/lang/RuntimeException", "setVideoSize failed.");
277 android_media_MediaRecorder_setVideoFrameRate(JNIEnv *env, jobject thiz, jint rate)
281 jniThrowException(env, "java/lang/IllegalArgumentException", "invalid frame rate");
284 sp<MediaRecorder> mr = getMediaRecorder(env, thiz);
285 process_media_recorder_call(env, mr->setVideoFrameRate(rate), "java/lang/RuntimeException", "setVideoFrameRate failed.");
289 android_media_MediaRecorder_setMaxDuration(JNIEnv *env, jobject thiz, jint max_duration_ms)
292 sp<MediaRecorder> mr = getMediaRecorder(env, thiz);
297 process_media_recorder_call(env, mr->setParameters(String8(params)), "java/lang/RuntimeException", "setMaxDuration failed.");
302 JNIEnv *env, jobject thiz, jlong max_filesize_bytes)
305 sp<MediaRecorder> mr = getMediaRecorder(env, thiz);
310 process_media_recorder_call(env, mr->setParameters(String8(params)), "java/lang/RuntimeException", "setMaxFileSize failed.");
314 android_media_MediaRecorder_prepare(JNIEnv *env, jobject thiz)
317 sp<MediaRecorder> mr = getMediaRecorder(env, thiz);
319 jobject surface = env->GetObjectField(thiz, fields.surface);
321 const sp<Surface> native_surface = get_surface(env, surface);
327 jniThrowException(env, "java/io/IOException", "invalid preview surface");
332 if (process_media_recorder_call(env, mr->setPreviewSurface(native_surface), "java/lang/RuntimeException", "setPreviewSurface failed.")) {
336 process_media_recorder_call(env, mr->prepare(), "java/io/IOException", "prepare failed.");
340 android_media_MediaRecorder_native_getMaxAmplitude(JNIEnv *env, jobject thiz)
343 sp<MediaRecorder> mr = getMediaRecorder(env, thiz);
345 process_media_recorder_call(env, mr->getMaxAmplitude(&result), "java/lang/RuntimeException", "getMaxAmplitude failed.");
350 android_media_MediaRecorder_start(JNIEnv *env, jobject thiz)
353 sp<MediaRecorder> mr = getMediaRecorder(env, thiz);
354 process_media_recorder_call(env, mr->start(), "java/lang/RuntimeException", "start failed.");
358 android_media_MediaRecorder_stop(JNIEnv *env, jobject thiz)
361 sp<MediaRecorder> mr = getMediaRecorder(env, thiz);
362 process_media_recorder_call(env, mr->stop(), "java/lang/RuntimeException", "stop failed.");
366 android_media_MediaRecorder_native_reset(JNIEnv *env, jobject thiz)
369 sp<MediaRecorder> mr = getMediaRecorder(env, thiz);
370 process_media_recorder_call(env, mr->reset(), "java/lang/RuntimeException", "native_reset failed.");
374 android_media_MediaRecorder_release(JNIEnv *env, jobject thiz)
377 sp<MediaRecorder> mr = setMediaRecorder(env, thiz, 0);
388 android_media_MediaRecorder_native_init(JNIEnv *env)
392 clazz = env->FindClass("android/media/MediaRecorder");
397 fields.context = env->GetFieldID(clazz, "mNativeContext", "I");
402 fields.surface = env->GetFieldID(clazz, "mSurface", "Landroid/view/Surface;");
407 jclass surface = env->FindClass("android/view/Surface");
412 fields.surface_native = env->GetFieldID(surface, ANDROID_VIEW_SURFACE_JNI_ID, "I");
417 fields.post_event = env->GetStaticMethodID(clazz, "postEventFromNative",
426 android_media_MediaRecorder_native_setup(JNIEnv *env, jobject thiz, jobject weak_this)
431 jniThrowException(env, "java/lang/RuntimeException", "Out of memory");
435 jniThrowException(env, "java/lang/RuntimeException", "Unable to initialize media recorder");
440 sp<JNIMediaRecorderListener> listener = new JNIMediaRecorderListener(env, thiz, weak_this);
443 setMediaRecorder(env, thiz, mr);
447 android_media_MediaRecorder_native_finalize(JNIEnv *env, jobject thiz)
450 android_media_MediaRecorder_release(env, thiz);
483 int register_android_media_MediaRecorder(JNIEnv *env)
485 return AndroidRuntime::registerNativeMethods(env,