2017-01-23 108 views
2

我试图用AudioRecord从麦克风录制一些音频。 录音工作,但音量是方式大声,我得到可怕的剪辑。 我试过使用AutomaticGainControl,但它在我的设备上不可用。 是否有其他方法可以自动或手动降低音量?Android AudioRecord剪辑

这是我使用的代码:

sampleRate = 44100 
channel = AudioFormat.CHANNEL_IN_MONO 
encoding = AudioFormat.ENCODING_PCM_16BIT 

audioRecord =new AudioRecord(MediaRecorder.AudioSource.DEFAULT, //also tried VOICE_RECOGNITION 
      sampleRate, channel, encoding, 
      bufferSize) 

audioRecord.startRecording() 

回答

1

原来我所听到的是没有限体积造成的,而是错误的字节顺序。剪辑是用小尾音录制的,我用大尾声重播。由于较低的音量值只是被放大并且不受影响,因为最重要的位全部为0,但是当音量较高时,MSB不是0,并且整体值被损坏为白噪声。