我正在创建一个类似于Talking Tom的应用程序。我使用AudioRecorder
进行记录。我只有基本版的安卓系统,没有声音触摸。我所面临的问题是,我只需要记录的音频是超过一定的音量。
if (recorder.getState() == AudioRecord.STATE_INITIALIZED)
{
return recorder;
}
即使音量很低,录音机也会初始化,即使我停止说话,背景声音很低,录音机也会继续录音。
您可以连续运行AudioRecord
,并以相对较近的间隔进行水平检查(RMS或您喜欢的任何测量)。一旦声音级别超过所需的阈值,保存缓冲数据,直到它在给定的时间内低于停止阈值,否则将数据丢弃。