Reputation: 22076
I am using the MediaRecorder
for audio recording in android. I receive very poor audio quality when I record. I checked iPhone recording, and it is very good, but in android I receive horrible sound.
For sound recording I use:
recorder = new MediaRecorder();
recorder.setAudioSource(MediaRecorder.AudioSource.MIC);
recorder.setOutputFormat(MediaRecorder.OutputFormat.DEFAULT);
recorder.setAudioEncoder(MediaRecorder.AudioSource.DEFAULT);
recorder.setOutputFile(path);
recorder.prepare();
recorder.start();
How do I improve Audio Recording quality?
Upvotes: 3
Views: 9261
Reputation: 24506
Try this one -
recorder = new MediaRecorder();
recorder.setAudioSource(MediaRecorder.AudioSource.MIC);
recorder.setOutputFormat(MediaRecorder.OutputFormat.MPEG_4);
recorder.setAudioEncoder(MediaRecorder.AudioEncoder.AMR_NB);
recorder.setAudioEncoder(MediaRecorder.getAudioSourceMax());
recorder.setAudioEncodingBitRate(16);
recorder.setAudioSamplingRate(44100);
recorder.setOutputFile(path);
recorder.prepare();
recorder.start();
Upvotes: 7
Reputation: 843
Android has mainly supported 3 sound formats (i mean from creation point of view) : 3gp, mp4 and amr. Actually all there quality is very poor, so nothing to do about that.
Anyway you can use external mp3 codecs or save it as wave file. Sounds will be more clear but such codec(wav) will require large voice file in comporations of three formats mentioned above.
Upvotes: 0