我正在用MediaRecorder录制视频。我的代码在2.3.3上正常工作,但在4.0.3上失败。MediaRecorder.stop()停止失败:-1007
的问题是以下几点:代码mediaRecorder.stop()抛出的RuntimeExeption
java.lang.RuntimeException: stop failed.
at android.media.MediaRecorder.stop(Native Method)
与logcat的消息
04-05 15:10:51.815: E/MediaRecorder(15709): stop failed: -1007
UPDATE
我发现,MediaPlayer的一个报告错误(通过MediaPlayer.OnErrorListener)几乎立即开始。错误代码是100(媒体服务器死亡),额外-1007。
更新2 编写代码的MediaRecorder
c = Camera.open();
...
// Step 1: Unlock and set camera to MediaRecorder
camera.unlock();
mediaRecorder.setCamera(camera);
// Step 2: Set sources
mediaRecorder.setAudioSource(MediaRecorder.AudioSource.CAMCORDER);
mediaRecorder.setVideoSource(MediaRecorder.VideoSource.CAMERA);
// Step 3: Set a CamcorderProfile (requires API Level 8 or higher)
CamcorderProfile profile = CamcorderProfile
.get(CamcorderProfile.QUALITY_HIGH);
// manual set up!
mediaRecorder.setOutputFormat(MediaRecorder.OutputFormat.MPEG_4);
mediaRecorder.setVideoEncodingBitRate(profile.videoBitRate);
mediaRecorder.setVideoFrameRate(profile.videoFrameRate);
mediaRecorder.setVideoSize(profile.videoFrameWidth,
profile.videoFrameHeight);
mediaRecorder.setAudioChannels(profile.audioChannels);
mediaRecorder.setAudioEncodingBitRate(profile.audioBitRate);
mediaRecorder.setAudioSamplingRate(profile.audioSampleRate);
mediaRecorder.setAudioEncoder(profile.audioCodec);
//mediaRecorder.setVideoEncoder(MediaRecorder.VideoEncoder.MPEG_4_SP);
mediaRecorder.setVideoEncoder(profile.videoCodec);
// mediaRecorder.setProfile(profile);
// Step 4: Set output file
mediaRecorder.setOutputFile("somefile.mp4");
// Step 5: Set the preview output
mediaRecorder.setPreviewDisplay(preview.getHolder().getSurface());
// Step 6: Prepare configured MediaRecorder
try {
mediaRecorder.prepare();
} catch ...
{ release mediaRecorder}
然后我simplyCall mediaRecorder.start() 请注意,我需要的视频被编码成MP4格式。 此代码适用于Samsng Galaxy GIO(android 2.3.3),并按照宏基E305(android 4.0.2)上的描述失败
任何想法? 谢谢。
我发现similiar问题,但它并没有帮助:https://code.google.com/p/android/issues/detail?id=38107 – alekz 2013-04-05 12:21:33
您能不能告诉代码你如何准备MediaRecorder对象? – 2013-04-09 20:33:18
某些代码片段可能也有帮助 – 2013-04-10 00:01:26