最近在帮老师做个Android录像的项目,发现调用MediaRecorder录像时出现视角相差90度的问题,在此做个笔记。
1)首先获得Android手机的Camera对象,将摄像头旋转90度
camera = Camera.open(Camera.CameraInfo.CAMERA_FACING_BACK);
camera.setDisplayOrientation(90);
camera.unlock();
mediaRecorder.setCamera(camera);
2)将MediaRecorder的录像视角也调转90度,否则录下的视频还是会有角度差
mediaRecorder.setOrientationHint(90);
3)不要忘记在录像结束时释放摄像头资源,否则将会导致其他程序无法连接摄像头
camera.release();
默认设置会导致录像比较不清晰,这是码率比较小的原因,我们可以提高录制视频的码率,这样可以使得视频比较清晰
mediaRecorder.setVideoEncodingBitRate(5*1024*1024);
附上录像源码:
package com.example.videorecord;
import java.io.File;
import android.app.Activity;
import android.content.Inte