【Androidアプリ開発】MediaRecorderによる録画機能の実装

salmoncode
記事内に商品プロモーションを含む場合があります。

Androidでは、MediaRecorder を利用することで簡単にカメラ映像を録画できます。
この記事では、CameraX と MediaRecorder を組み合わせて動画を撮影・保存する方法を、動作するコード例つきで紹介します。

スポンサーリンク

🧩 この記事でできること

  • MediaRecorderの基本構造を理解できる
  • カメラ映像を録画し、ファイルとして保存できる
  • 撮影の開始/停止をプログラムで制御できる

🛠️ 開発環境

  • Android Studio 2024.1(Jellyfish)
  • Kotlin 2.0
  • テスト端末:Pixel 8 / Android 14

1. パーミッションの設定

録画機能を利用するには、カメラと音声の権限が必要です。
AndroidManifest.xml に以下を追加します。

2. カメラとプレビューのセットアップ

ここでは簡単のために、CameraX を利用してプレビューを表示します。

3. MediaRecorderで録画を開始/停止する

📌 ポイント

  • MediaStoreOutputOptions を使うと、ギャラリーに自動登録されます。
  • 録画の開始・停止はUIボタンに紐づけると直感的です。

4. 録音付き動画の確認

録音を有効にしている場合、録画後の動画にはマイク音声も含まれます。
音声が入らない場合は以下をチェックしてください:

  • 権限リクエストが実行されているか
  • 実機でテストしているか(エミュレータでは録音不可のことが多い)

5. 出力ファイルの保存場所

録画された動画は以下のように保存されます:

/storage/emulated/0/DCIM/Camera/

アプリ専用フォルダに保存したい場合は context.getExternalFilesDir(Environment.DIRECTORY_MOVIES) を指定します。

まとめ

  • MediaRecorderで簡単に録画が可能
  • CameraXを組み合わせるとプレビュー付き録画も容易
  • MediaStore連携でギャラリー保存まで自動化できる

🔗 関連記事

この記事で使用した開発環境

  • Android Studio 2024.1
  • Pixel 8a(Android 14)
録画テストにおすすめ
  • Pixel8a: リファレンス端末

さらに学びたい方へ

スポンサーリンク
書いた人
サーモン
サーモン
著者(ソフトウェアエンジニア)
こんにちは、ソフトウェアエンジニアのサーモンです。 情報系大学院を卒業後、都内IT企業に従事しています。プログラミング歴は10年以上になります。
記事URLをコピーしました