Androidでカメラを操作する:ビデオを撮影する

Androidでのカメラの操作に関する記事へのコメントでは、ビデオ録画の作成方法について質問がありました。 これはすべて非常に簡単に行われます。

ビデオ(およびオーディオ)を記録するには、 MediaRecorderクラスが責任を負います。
実際、 記録を有効にするには、次のことを行う必要があります。

1.クラスMediaRecorderのオブジェクトを作成します
MediaRecorder recorder = new MediaRecorder(); 

2.オーディオおよびビデオソースを構成する
 recorder.setAudioSource(MediaRecorder.AudioSource.DEFAULT); recorder.setVideoSource(MediaRecorder.VideoSource.DEFAULT); 

音源として、次を指定することもできます。
MediaRecorder.AudioSource.MIC - ,
MediaRecorder.AudioSource.CAMCORDER - ,

3.出力形式を設定する
 recorder.setOutputFormat(MediaRecorder.OutputFormat.DEFAULT); 

以下を設定することもできます。
MediaRecorder.OutputFormat.MPEG_4 - mp4
MediaRecorder.OutputFormat.THREE_GPP - 3gp

4.ビデオとオーディオの録音パラメーターを構成します(たとえば、次の値を使用)
 recorder.setVideoEncodingBitRate(150000); //   recorder.setAudioEncodingBitRate(8000); //   recorder.setAudioSamplingRate(8000); //     recorder.setAudioChannels(1); //     recorder.setVideoFrameRate(30); //    recorder.setVideoSize(640, 480); //   recorder.setMaxDuration(0); //    recorder.setMaxFileSize(0); //    

5.記録するファイル名を設定します
 recorder.setOutputFile(); 

6.プレビューを設定する
 recorder.setPreviewDisplay(Surface); 

7.録音の準備
 recorder.prepare(); 

8.待望の打ち上げ。 この時点で、プレビューがオンになり、記録が開始されます。
 recorder.start(); 

終了するには:
9.記録を停止する
 recorder.stop(); 

10.設定が異なる別のレコードに同じオブジェクトを使用する場合
 recorder.reset(); //   ,  setAudioSource() 

11.オブジェクトをリリースします
 recorder.release(); 

記録する前にプレビューを表示する場合は、カメラとレコーダーと友達を作る必要があります。 これを行うには、次を実行します。

記録する前に:
-カメラのプレビューを停止する
 camera.stopPreview(); 

-カメラの共有を許可する
 camera.unlock(); 

-カメラオブジェクトをレコーダーに設定する
 recorder.setCamera(camera); 

記録後:
-カメラへの共有アクセスを禁止する
 camera.reconnect(); 

-カメラのプレビューをオンにします
 camera.startPreview(); 

もちろん、ビデオ録画中は写真撮影をオフにすることを忘れないでください。

前の記事 (設定メニューも追加)からのビデオ録画に適合した写真プログラムのソースは、 ここからダウンロードできます

執筆時には、次の情報源が使用されました。

1.ショーンヴァンエブリィ。 Pro Android Media:スマートフォンとタブレット向けのグラフィックス、音楽、ビデオ、リッチメディアアプリの開発。 Apress 2009。
2. カメラクラスの説明
3. MediaRecorderクラスの説明

Source: https://habr.com/ru/post/J113480/


All Articles