coderslay
coderslay

Reputation: 14370

How to record sound by using inbuilt microphone in android

I need to record sound by using mobile's own microphone... How to do it?

Upvotes: 4

Views: 9305

Answers (2)

M. Usman Khan
M. Usman Khan

Reputation: 4408

Example:

To start recording:

        MediaRecorder audioRecorder = new MediaRecorder();
        audioRecorder.setAudioSource(MediaRecorder.AudioSource.MIC);
        audioRecorder.setOutputFormat(MediaRecorder.OutputFormat.DEFAULT);
        audioRecorder.setAudioEncoder(MediaRecorder.AudioEncoder.DEFAULT);
        audioRecorder.setOutputFile(AUDIO_FILE_PATH);

        try {
            audioRecorder.prepare();

        } catch (IllegalStateException e) {
            e.printStackTrace();
        } catch (IOException e) {
            e.printStackTrace();
        }

        audioRecorder.start();

To stop recording:

        audioRecorder.stop();
        audioRecorder.release();

Upvotes: 4

rochdev
rochdev

Reputation: 3855

It's explained here

Audio capture from the device is a bit more complicated than audio/video playback, but still fairly simple:

  1. Create a new instance of android.media.MediaRecorder using new
  2. Set the audio source using MediaRecorder.setAudioSource(). You will probably want to use MediaRecorder.AudioSource.MIC
  3. Set output file format using MediaRecorder.setOutputFormat()
  4. Set output file name using MediaRecorder.setOutputFile()
  5. Set the audio encoder using MediaRecorder.setAudioEncoder()
  6. Call MediaRecorder.prepare() on the MediaRecorder instance.
  7. To start audio capture, call MediaRecorder.start().
  8. To stop audio capture, call MediaRecorder.stop().
  9. When you are done with the MediaRecorder instance, call MediaRecorder.release() on it. Calling MediaRecorder.release() is always recommended to free the resource immediately.

Upvotes: 10

Related Questions