recorder = new MediaRecorder();
camera.unlock();
recorder.setCamera(camera);
recorder.setAudioSource(MediaRecorder.AudioSource.CAMCORDER);
recorder.setVideoSource(MediaRecorder.VideoSource.CAMERA);
recorder.setProfile(CamcorderProfile.get(currentCamType,CamcorderProfile.QUALITY_HIGH));
recorder.setOutputFile(/*path of output file*/);
recorder.prepare();
recorder.start();
在上面的代码中,当调用 recorder.start() 时,预览会发生变化(被拉伸),但我没有通过 MediaRecorder.setPreviewDisplay() 设置媒体记录器的预览显示。创建表面视图时,我曾经使用过 camera.setPreviewDisplay() 。我认为上面代码中的 recorder.setProfile() 负责拉伸视频。