我试过AVFoundation,AudioKit和EZAudio。但我不能。 我想要一些方法来获得整首歌的所有幅度(不播放音乐),以获得平均幅度。有谁知道怎么样? 我不需要整个算法。欢迎提供实例和前进方法。
do {
let file = try AKAudioFile(forReading: URL.init(string: Bundle.main.path(forResource: "TFB9", ofType: "mp3")!)!)
self.analyzedPlayer = try AKAudioPlayer(file: file)
self.player = try AKAudioPlayer(file: file)
}
catch {
print(error)
}
let equalizerFilter = AKEqualizerFilter(analyzedPlayer, centerFrequency: 9000, bandwidth: 1000, gain: 9)
let lowPassFilter = AKLowPassFilter.init(equalizerFilter, cutoffFrequency: 10000, resonance: 0)
hightPassFilter = AKHighPassFilter.init(lowPassFilter, cutoffFrequency: 8000, resonance: 0)
AKAmplitudeTracker.init(hightPassFilter, threshold: 0.42, thresholdCallback: {_ in
self.delegate?.signal()
})