我在代码中生成了一个AudioTrack。我从here检索到了代码。
我需要做的是得到音调的频带电平。因此,为了能够做到这一点,我初始化了一个Equalizer,并将音频会话设置为生成的音轨的会话id。
audioTrackSessionId = audioTrack.getAudioSessionId();
equalizer = new Equalizer(1, audioTrackSessionId);
equalizer.setEnabled(true); 我需要的是检索给定频率的频带电平,假设是freqOfTone = 1000; //Hz,所以我需要获取频带2的电平(频带2的范围是461 to到1800 to )。
如果我使用equalizer.getBandLevel(2),它默认返回均衡器的电平,而不是生成音调的电平(audioTrack)。
有谁知道如何检索生成的音调的频带电平?
发布于 2015-02-09 18:41:12
像这样的getBandLevel
short minEQLevel = equalizerWrapper.getBandLevelRange()[0];
short maxEQLevel = equalizerWrapper.getBandLevelRange()[1];https://stackoverflow.com/questions/18144350
复制相似问题