19 java.lang.RuntimeException: start failed

使用MediaRecorder录制视频的时候,

mMediaRecorder.setVideoSource(MediaRecorder.VideoSource.CAMERA);mMediaRecorder.setOutputFormat(MediaRecorder.OutputFormat.MPEG_4);mMediaRecorder.setVideoFrameRate(20);mMediaRecorder.setVideoSize(352, 288);mMediaRecorder.setVideoEncoder(mVideoEncoder);mMediaRecorder.setPreviewDisplay(mSurfaceHolder.getSurface());mMediaRecorder.setMaxDuration(0);mMediaRecorder.setMaxFileSize(0);mMediaRecorder.setOutputFile(sender.getFileDescriptor());try {mMediaRecorder.setOnInfoListener(this);mMediaRecorder.setOnErrorListener(this);mMediaRecorder.prepare();mMediaRecorder.start(); 出现如题错误:注意,这段代码在小米上面可以跑通,在Htc和联想的某些机型上面会出现如题错误。

修改为以下,注释掉三行代码:

mMediaRecorder.setVideoSource(MediaRecorder.VideoSource.CAMERA);mMediaRecorder.setOutputFormat(MediaRecorder.OutputFormat.MPEG_4); //mMediaRecorder.setVideoFrameRate(20); //mMediaRecorder.setVideoSize(352, 288);mMediaRecorder.setVideoEncoder(mVideoEncoder);mMediaRecorder.setPreviewDisplay(mSurfaceHolder.getSurface());mMediaRecorder.setMaxDuration(0); //mMediaRecorder.setMaxFileSize(0);mMediaRecorder.setOutputFile(sender.getFileDescriptor());try {mMediaRecorder.setOnInfoListener(this);mMediaRecorder.setOnErrorListener(this);mMediaRecorder.prepare();mMediaRecorder.start();

即可。

在StackOverFlow上面,也有很多这样的问题,如果这种方案不能解决,建议在上面找找其他。

如果使用setCamera()方法,前面要调用camera.unLock()方法。否则,可能出错。

版权声明:本文为博主原创文章,未经博主允许不得转载。

,放弃那些不愿放弃的,容忍那些不可容忍的。

19 java.lang.RuntimeException: start failed

相关文章:

你感兴趣的文章:

标签云: