Java 类android.media.MediaRecorder.OnErrorListener 实例源码

项目:TestRecord    文件:VoiceApi.java   
public static void initRecord() {
    recorder = new MediaRecorder();
    recorder.setAudioSource(MediaRecorder.AudioSource.MIC);
    recorder.setOutputFormat(MediaRecorder.OutputFormat.RAW_AMR);
    recorder.setAudioEncoder(MediaRecorder.AudioEncoder.AMR_NB);

    recorder.setOnErrorListener(new OnErrorListener() {

        @Override
        public void onError(MediaRecorder mr, int what, int extra) {
            // TODO Auto-generated method stub
            recorder = null;
            initRecord();
        }
    });
}
项目:cInterphone    文件:RecordService.java   
protected void startRecording() {
        try {
            mediaRecorder.reset();

//          camera.setDisplayOrientation(90);

            camera.lock();
            camera.unlock();
            mediaRecorder.setCamera(camera);

            mediaRecorder.setAudioSource(MediaRecorder.AudioSource.MIC);
            mediaRecorder.setVideoSource(MediaRecorder.VideoSource.CAMERA);
            mediaRecorder.setOutputFormat(MediaRecorder.OutputFormat.MPEG_4);
            mediaRecorder.setAudioEncoder(MediaRecorder.AudioEncoder.AAC);
            mediaRecorder.setVideoEncoder(MediaRecorder.VideoEncoder.H264);
//          mediaRecorder.setVideoFrameRate(15);
//          mediaRecorder.setOrientationHint(270);
            mediaRecorder.setOutputFile(file.getAbsolutePath());
            mediaRecorder.setPreviewDisplay(sv.getHolder().getSurface());

            mediaRecorder.setOnErrorListener(new OnErrorListener() {
                @Override
                public void onError(MediaRecorder mr, int what, int extra) {
                    System.out.println(what + "-------------------");
                    System.out.println(extra + "------------------");
//                  stopRecording();
                }
            });

            mediaRecorder.prepare();
            mediaRecorder.start();
        } catch (Exception e) {
            e.printStackTrace();
        }
    }