Как установить значения усиления пресетов AVAudioUnitEQ для 10 частотных диапазонов в iOS Swift - PullRequest
0 голосов
/ 19 ноября 2018

Я мог бы добавить настройки звука для изменения эквалайзера, изменив значения ползунка на

let FREQUENCY: [Float] = [31, 62, 125, 250, 500, 1000, 2000, 4000, 8000, 16000]
//let FREQUENCY: [Float] = [60, 230, 910, 3600, 14000]

self.audioEngine = AVAudioEngine.init()
self.audioPlayerNode = AVAudioPlayerNode.init()
self.audioUnitEQ = AVAudioUnitEQ(numberOfBands: 10)
self.audioEngine.attach(self.audioPlayerNode)
self.audioEngine.attach(self.audioUnitEQ)        

for i in 0...9 {
    self.audioUnitEQ.bands[i].filterType = .parametric
    self.audioUnitEQ.bands[i].frequency = FREQUENCY[i]
    self.audioUnitEQ.bands[i].bandwidth = 0.5 // half an octave
    let eq = self.value(forKey: String(format: "eq%d", i)) as! UISlider
    self.audioUnitEQ.bands[i].gain = eq.value
    self.audioUnitEQ.bands[i].bypass = false
}

Но есть ли способ изменить значения усиления или установить предварительные настройки эквалайзера, такие как Accoustics, Rock и т. Д. Как установить их значения усиления для этих предварительных настроек

...