【问题标题】:Increase volume of recording Android AudioRecord增加录制 Android AudioRecord 的音量
【发布时间】:2014-12-06 16:57:25
【问题描述】:

我正在使用 AudioRecord 和 lame 将麦克风输入录制到 mp3 样本中 12 秒。音频如预期的那样是录音机,但我意识到音量太低了。

有没有办法提高录音的音量?

【问题讨论】:

标签: android android-audiomanager android-audiorecord


【解决方案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);
    

    在我的情况下,这是一个简单的修复方法,它适用于应用程序的其余部分。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-08-18
      • 2014-11-23
      • 2016-02-24
      • 1970-01-01
      • 2012-06-24
      • 1970-01-01
      相关资源
      最近更新 更多