我正在使用媒体录制器在Android中录制视频。该视频在前置和后置摄像头的手机中都能很好地录制,但对于平板电脑而言,视频可以很好地记录在后置摄像头上,但对于前置摄像头,它显示模糊。这就是我录制的视频的外观:
我的视频录制代码是
private Camera getCameraInstance() {
// TODO Auto-generated method stub
Camera c = null;
try {
if (Camera.getNumberOfCameras() >= 2) {
//if you want to open front facing camera use this line
c = Camera.open(CameraInfo.CAMERA_FACING_FRONT);}
// c.setDisplayOrientation(90);
//c = Camera.open(1); // attempt to get a Camera instance
} catch (Exception e) {
// Camera is not available (in use or does not exist)
}
return c; // returns null if camera is unavailable
}
private boolean prepareMediaRecorder() {
myCamera = getCameraInstance();
mediaRecorder = new MediaRecorder();
myCamera.unlock();
mediaRecorder.setCamera(myCamera);
mediaRecorder.setAudioSource(MediaRecorder.AudioSource.CAMCORDER);
mediaRecorder.setVideoSource(MediaRecorder.VideoSource.CAMERA);
mediaRecorder.setProfile(CamcorderProfile
.get(CamcorderProfile.QUALITY_HIGH));
mediaRecorder.setOutputFile("/sdcard/myvideo.mp4");
//mediaRecorder.setMaxDuration(60000); // Set max duration 60 sec.
//mediaRecorder.setMaxFileSize(5000000); // Set max file size 5M
mediaRecorder.setPreviewDisplay(myCameraSurfaceView.getHolder()
.getSurface());
try {
mediaRecorder.prepare();
} catch (IllegalStateException e) {
releaseMediaRecorder();
return false;
} catch (IOException e) {
releaseMediaRecorder();
return false;
}
return true;
}