//开始录像
MediaRecorder mediaRecorder
public void startMediaRecorder() {
mediaRecorder = new MediaRecorder()
startCamera()
mediaRecorder.setCamera(camera)
//设置保存文件旋转90度
mediaRecorder.setOrientationHint(90)
// 设置录制视频源为Camera(相机)
mediaRecorder.setVideoSource(MediaRecorder.VideoSource.CAMERA)
// 设置录制完成后视频的封装格式THREE_GPP为3gp.MPEG_4为mp4
mediaRecorder.setOutputFormat(MediaRecorder.OutputFormat.THREE_GPP)
// 设置录制的视频编码h263 h264
mediaRecorder.setVideoEncoder(MediaRecorder.VideoEncoder.H264)
// 设置视频录制的分辨率。必须放在设置编码和格式的后面,否则报错
mediaRecorder.setVideoSize(176, 144)
// 设置录制的视频帧率。必须放在设置编码和格式的后面,否则报错
mediaRecorder.setVideoFrameRate(20)
mediaRecorder.setPreviewDisplay(surfaceHolder.getSurface())
// 设置视频文件输出的路径
mediaRecorder.setOutputFile(FileName)
// 准备录制
try {
mediaRecorder.prepare()
} catch (Exception e) {
Log.e("error", e.getMessage().toString())
}
// 开始录制
mediaRecorder.start()
Log.i("录制", "开启")
}
public void stopMediaRecorder() {
if (mediaRecorder != null) {
mediaRecorder.stop();
mediaRecorder.release();
mediaRecorder = null;
stopCamera();
Log.i("录制", "关闭");
}
}