国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 系統 > Android > 正文

Android自定義錄制視頻功能

2019-12-12 03:38:31
字體:
來源:轉載
供稿:網友

Android錄制視頻MediaRecorder+SurfaceView的使用方法,供大家參考,具體內容如下

先看效果圖:

<1>將視頻動畫顯示到SurfaceView控件上
<2>使用MediaRecorder類進行視頻的錄制

常用的方法:

  mediaRecorder.reset();  mediaRecorder.setVideoSource(MediaRecorder.VideoSource.CAMERA); //從照相機采集視頻  mediaRecorder.setAudioSource(MediaRecorder.AudioSource.MIC);   mediaRecorder.setOutputFormat(MediaRecorder.OutputFormat.THREE_GPP);  mediaRecorder.setVideoFrameRate(3); //每秒3幀  mediaRecorder.setVideoEncoder(MediaRecorder.VideoEncoder.H263); //設置視頻編碼方式  mediaRecorder.setAudioEncoder(MediaRecorder.AudioEncoder.AMR_NB);  File videoFile = new File(Environment.getExternalStorageDirectory(), System.currentTimeMillis()+".3gp");  mediaRecorder.setOutputFile(videoFile.getAbsolutePath());  mediaRecorder.setPreviewDisplay(surfaceView.getHolder().getSurface());  mediaRecorder.prepare();//預期準備  mediaRecorder.start();//開始刻錄  mediaRecorder.stop();//停止刻錄

下面看代碼:

public class MediaRecorderActivity extends AppCompatActivity {  private SurfaceView sv_mediarecorder_surface;  private MediaRecorder mediaRecorder;  private boolean isStartAndStop=false;  @Override  protected void onCreate(Bundle savedInstanceState) {    super.onCreate(savedInstanceState);    if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT) {      getWindow().addFlags(WindowManager.LayoutParams.FLAG_TRANSLUCENT_STATUS);      getWindow().addFlags(WindowManager.LayoutParams.FLAG_TRANSLUCENT_NAVIGATION);    }    setContentView(R.layout.activity_mediarecorder);    //獲取SurfaceView    sv_mediarecorder_surface = (SurfaceView) findViewById(R.id.sv_mediarecorder_surface);    //實例化媒體錄制器    mediaRecorder = new MediaRecorder();  }  //視頻錄制與暫停的方法  public void startMediaCorder(View view){    Button button= (Button) view;    if (!isStartAndStop) {      if (mediaRecorder==null){        //實例化媒體錄制器        mediaRecorder = new MediaRecorder();      }      mediaRecorder.reset();      mediaRecorder.setVideoSource(MediaRecorder.VideoSource.CAMERA); //從照相機采集視頻      mediaRecorder.setAudioSource(MediaRecorder.AudioSource.MIC);//設置麥克風      //設置保存的格式      mediaRecorder.setOutputFormat(MediaRecorder.OutputFormat.MPEG_4);      //設置編碼格式      mediaRecorder.setVideoEncoder(MediaRecorder.VideoEncoder.H263);      mediaRecorder.setAudioEncoder(MediaRecorder.AudioEncoder.AMR_NB);      mediaRecorder.setVideoFrameRate(3);      //獲取根路徑      String sdPath= Environment.getExternalStorageDirectory().getAbsolutePath();      //設置保存的路徑      mediaRecorder.setOutputFile(sdPath+"/taoge"+System.currentTimeMillis()+".mp4");      //將畫面展示到SurfaceView      mediaRecorder.setPreviewDisplay(sv_mediarecorder_surface.getHolder().getSurface());      //準備      try {        mediaRecorder.prepare();        mediaRecorder.start();      } catch (IOException e) {        e.printStackTrace();      }      button.setText("結束");    }else{      // 為其它應用釋放攝像頭      mediaRecorder.release();      mediaRecorder = null;      //關閉      button.setText("開始");    }    isStartAndStop=!isStartAndStop;  }}

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持武林網。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 合江县| 鄂州市| 会理县| 乐亭县| 尼木县| 洛川县| 民丰县| 青州市| 伊宁县| 孟连| 嘉定区| 潮安县| 花莲市| 临沭县| 渭南市| 新绛县| 新丰县| 蒙山县| 义乌市| 武宣县| 什邡市| 安新县| 石柱| 星子县| 蒲江县| 福海县| 达日县| 凌源市| 无棣县| 柘城县| 长汀县| 富锦市| 广元市| 大连市| 宁河县| 吉林市| 峡江县| 马鞍山市| 佛坪县| 德格县| 宁陕县|