我需要在我的android应用中将来自麦克风的音频记录为未压缩的.wav格式。下面是我为此目的找到的代码。 import java.io.File; import java.io.IOException; import java.io.RandomAccessFile; import android.media.AudioFormat; import android.media.AudioRecord; import android.media.MediaRecorder; import android.media…

2020年8月29日 0条评论 15点热度 阅读全文

当我使用Android的AudioRecord从麦克风录制时,我得到了这个令人讨厌的 Artifact 有办法避免或消除这种情况吗?它是什么?还是我得到了,因为我在配置中做错了事(但其他一切工作正常)。 这是我的AudioRecord配置: sampleRateInHz = 44100; channelConfigRec = AudioFormat.CHANNEL_IN_MONO; audioFormat = AudioFormat.ENCODING_PCM_16BIT; bufferSizeInBytesRec …

2020年4月15日 0条评论 17点热度 阅读全文

我碰到了此链接,但不确定如何实现 split two channels of AudioRecord of CHANNEL_IN_STEREO 我想分离左右声道中接收到的数据 下面是我的代码 for(int i = 0; i < read/2; i = i + 2) { leftChannelAudioData[i] = data[2*i]; leftChannelAudioData[i+1] = data[2*i+1]; rightChannelAudioData[i] = data[2*i+2]; rig…

2020年2月4日 0条评论 22点热度 阅读全文

正如提到的Android 5.0L的更新(http://geeknizer.com/audio-improvements-in-android-5-0-l-audiophile/),Android开始支持96000Hz采样率。但是,当我尝试在Galaxy S6上执行此操作时: void checkAvailableSampleRate(){ for (int rate : new int[] {44100, 48000, 96000}) { // add the rates you wish to check ag…

2019年7月15日 0条评论 19点热度 阅读全文

我是否使用任何库或方法来实现此目的?我知道我必须一次读取块中文件中的字节,检查它们的值是否低于或高于特定阈值并检测静默状态。但是,我似乎找不到用于计算音频文件的rms或阈值的库 解决方案如下: 您可以手动计算RMS值。在此处查看三星的实现方案:android AudioRecord amplitude reading from MIC

2019年4月5日 0条评论 18点热度 阅读全文

我正在使用AudioRecord记录麦克风数据,同时使用SoundPool播放声音。我的问题是:当我在AudioRecord上调用startRecording()时,SoundPool变得断断续续或完全停止。当我调用stopRecording()时,所有提示的声音都立即进入。我应该使用更好的库吗?我注意到应用程序中的按钮仍然可以响应,并且仍然能够播放其默认声音。 即使调用AudioRecord.startRecording()的线程已经完成,SoundPool也会停止播放声音。在我调用AudioRecord.sto…

2019年3月3日 0条评论 16点热度 阅读全文