[英]Replace SimpleAdapter in android development to improve code quality
[英]How to improve the android recorded voice quality
我有以下用于在android中录制音频/语音的代码:
MediaRecorder recorder=new MediaRecorder();
recorder.setAudioSource(MediaRecorder.AudioSource.MIC);
recorder.setOutputFormat(MediaRecorder.OutputFormat.THREE_GPP);
recorder.setAudioEncoder(MediaRecorder.AudioEncoder.AMR_NB);
recorder.setAudioEncodingBitRate(16);
recorder.setAudioSamplingRate(44100);
recorder.setOutputFile(Environment.getExternalStorageDirectory() + File.separator
+ Environment.DIRECTORY_DCIM + File.separator + "WAVES.amr");
try {
recorder.prepare();
recorder.start();
} catch (IOException e) {
Toast.makeText(topic_player_list_layout.this,"Unable to record",Toast.LENGTH_SHORT).show();
return;
}
问题是,与默认的Android语音记录器应用程序或whatsApp/Telegram voice recorder
相比,记录的音频文件质量的输出效果不佳。
你有什么建议? 我该怎么做才能提高录音质量?
您必须增加audioEncodingBitRate
MediaRecorder recorder=new MediaRecorder();
recorder.setAudioSource(MediaRecorder.AudioSource.MIC);
recorder.setOutputFormat(MediaRecorder.OutputFormat.THREE_GPP);
recorder.setAudioEncoder(MediaRecorder.AudioEncoder.AMR_NB);
recorder.setAudioEncodingBitRate(128000);
recorder.setAudioSamplingRate(44100);
如果我们看一下文档: https : //developer.android.com/reference/android/media/MediaRecorder.OutputFormat ,我们可以看到有很多可用的音频格式。 据我所知,您使用的THREE_GPP
无法提供最佳质量。 我会考虑改用MPEG_4
。 也请尝试使用AAC
代替AMR
作为音频编码器。
还可以查看此答案以获取更多参考: https : //stackoverflow.com/a/14973295/5457878
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.