增加录制 Android AudioRecord 的音量
Posted
技术标签:
【中文标题】增加录制 Android AudioRecord 的音量【英文标题】:Increase volume of recording Android AudioRecord 【发布时间】:2014-12-06 16:57:25 【问题描述】:我正在使用 AudioRecord 和 lame 将麦克风输入录制到 mp3 样本中 12 秒。音频如预期的那样是录音机,但我意识到音量太低了。
有没有办法提高录音的音量?
【问题讨论】:
How to adjust microphone sensitivity while recording audio in android - Solved 的可能重复项 【参考方案1】:audioRecord
类中没有增益设置可供播放,因此您无法控制正在录制的音频的音量。音频的低音量与硬件有关,并且因设备而异。您可以尝试以下几个选项。
1) 尝试以不同的模式打开录音,看看哪种效果最好。 检查 - http://developer.android.com/reference/android/media/MediaRecorder.Audiosource.html
2) 在音频记录中,您可以获得原始 PCM 缓冲区。您可以编写一个简单的代码/函数来将位(每个通道 8/16 位)向左或向右移动以使增益加倍或减半。 (把它想象成一个非常粗糙的音量控制)
3) 尝试在网上搜索更复杂的数字增益技术以获得更平滑的控制。 有很多实现。 (也有专有技术)
检查: How to adjust microphone sensitivity while recording audio in android
【讨论】:
【参考方案2】:您也可以简单地增加设备的音量:
AudioManager am = (AudioManager)mContext.getSystemService(Context.AUDIO_SERVICE);
int previousVolume = am.getStreamVolume(AudioManager.STREAM_MUSIC);
am.setStreamVolume(AudioManager.STREAM_MUSIC, 10, 0);
... do your things ...
am.setStreamVolume(AudioManager.STREAM_MUSIC, previousVolume, 0);
在我的情况下,这是一个简单的修复方法,它适用于应用程序的其余部分。
【讨论】:
以上是关于增加录制 Android AudioRecord 的音量的主要内容,如果未能解决你的问题,请参考以下文章
Android:使用 audiorecord 类录制音频播放快进
Android 检测 AudioRecord/在不阻塞其他应用程序的情况下录制音频的方式