Android视频录制有两种方法,一种是使用内置的摄像头应用程序,利用Intent启动摄像头,这种比较方便,,但是功能和布局都已经固定了,适合只需简单调用摄像头功能的app。另一种就是利用mediarecorder来自定义app。前面一种比较简单,这里写了一个利用mediarecorder录制视频的demo
先上效果图
MainActivity.java
package com.example.administrator.mediarecordertest;
import android.content.pm.ActivityInfo;
import android.media.MediaRecorder;
import android.os.Bundle;
import android.support.v7.app.AppCompatActivity;
import android.util.Log;
import android.view.SurfaceView;
import android.view.View;
import android.widget.Button;
import android.widget.Toast;
import java.io.File;
public class MainActivity extends AppCompatActivity {
private static final String TAG = MainActivity.class.getSimpleName();
private SurfaceView sView;
private Button btn_start, btn_stop;
private MyMediaRecorder mRecorder;
private File mVideoFile, mFileFolder;
private String path;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
sView = (SurfaceView) findViewById(R.id.sv);
// 设置横屏显示
setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE);
btn_start = (Button) findViewById(R.id.btn_start);
btn_stop = (Button) findViewById(R.id.btn_stop);
btn_stop.setEnabled(false);//设置stop不可按
btn_start.setOnClickListener(new View.OnClickListener() {
@Override
public void