我想使用MediaRecorder
录制视频但是当我使用setOutputFormat
方法设置输出格式时,我总是会遇到以下异常:
java.lang.IllegalStateException at android.media.MediaRecorder.setOutputFormat(Native Method)at android.media.MediaRecorder.setProfile(MediaRecorder.java:416)
以下是我用来准备mediarecorder的代码:
mediaRecorder.setAudioSource(MediaRecorder.AudioSource.CAMCORDER);
mediaRecorder.setVideoSource(MediaRecorder.VideoSource.CAMERA);
mediaRecorder.setOutputFormat(MediaRecorder.OutputFormat.MPEG_4);
UPDATE 这是整个堆栈跟踪:
java.lang.IllegalStateException 在android.media.MediaRecorder.setOutputFormat(本机方法) 在android.media.MediaRecorder.setProfile(MediaRecorder.java:416) at net.alfdev.demomaps.CameraActivity.prepareVideoRecorder(CameraActivity.java:344) at net.alfdev.demomaps.CameraActivity.buttonCaptureVideo(CameraActivity.java:398) at net.alfdev.demomaps.CameraActivity_ $ 2.onLongClick(CameraActivity_.java:106) 在android.view.View.performLongClick(View.java:4802) 在android.widget.TextView.performLongClick(TextView.java:8948) 在android.view.View $ CheckForLongPress.run(View.java:19795) 在android.os.Handler.handleCallback(Handler.java:739) 在android.os.Handler.dispatchMessage(Handler.java:95) 在android.os.Looper.loop(Looper.java:135) 在android.app.ActivityThread.main(ActivityThread.java:5274) at java.lang.reflect.Method.invoke(Native Method) 在java.lang.reflect.Method.invoke(Method.java:372) 在com.android.internal.os.ZygoteInit $ MethodAndArgsCaller.run(ZygoteInit.java:909) 在com.android.internal.os.ZygoteInit.main(ZygoteInit.java:704)
有什么想法吗? 提前谢谢