问题是这样的..我打开视频然后按录制的时候直接就出现耗时..别说录了~直接卡在第一帧立即耗时 一段时间后就报耗时了..求解.. 报的错就是我在使用recorder.start();这一行中报java.lang.RuntimeException: start failed.try{recorder.setPreviewDisplay(videoholder.getSurface());recorder.setVideoSource(MediaRecorder.VideoSource.CAMERA);//视频源recorder.setAudioSource(MediaRecorder.AudioSource.MIC);//录音源为麦克风recorder.setOutputFormat(MediaRecorder.OutputFormat.MPEG_4);//输出格式为mp4recorder.setVideoEncoder(MediaRecorder.VideoEncoder.H263);//视频编码recorder.setVideoFrameRate(24);//视频帧频率recorder.setAudioEncoder(MediaRecorder.AudioEncoder.AMR_NB);//音频编码recorder.setOutputFile(myRecVideoFile.getAbsolutePath());//保存路径recorder.prepare();datestart = System.currentTimeMillis();recorder.start();timer = new Timer(true);timer.schedule(task,1000,1000);}catch(IOException e){Toast.makeText(ChatShowVideo.this, "录制失败", Toast.LENGTH_SHORT).show();ChatShowVideo.this.finish();}}一使用Toast后直接就finish了~报的错就是 start failed
2 回答
阿晨1998
TA贡献2037条经验 获得超6个赞
在Android中使用MediaRecorder录音,需要以下几个步骤,如果步骤不对,可能会造成start failed这样的错误。
1、创建MediaRecorder对象
2、调用MediRecorder对象的setAudioSource()方法设置声音的来源,一般传入MediaRecorder.MIC
3、调用MediaRecorder对象的setOutputFormat()设置所录制的音频文件的格式
4、调用MediaRecorder对象的setAudioRncoder()、setAudioEncodingBitRate(int bitRate)、setAudioSamlingRate(int SamplingRate)设置所录音的编码格式、编码位率、采样率等,
5、调用MediaRecorder对象的setOutputFile(String path)方法设置录制的音频文件的保存位置
6、调用MediaRecoder对象的Prepare()方法准备录制
7、调用MediaRecoder对象的start()方法开始录制
8、调用MediaRecoder对象的stop()方法停止录制,并调用release()方法释放资源
- 2 回答
- 0 关注
- 743 浏览
添加回答
举报
0/150
提交
取消