Как использовать функции AvAudiounit, такие как низкие частоты и временная задержка с узлом AvAudioPlayer - PullRequest
0 голосов
/ 04 апреля 2019

Я использую Apple AudioEngine и могу воспроизводить звук с помощью AvAudioPlayerNode. Проблема в том, что когда я пытаюсь добавить какую-либо функцию, например фильтр низких частот или даже задержку, она не влияет на мой плеер.Как сделать так, чтобы эти эффекты влияли на AvAudioPlayerNode.

Я создал разные модули и прикрепил их к движку, а затем к основному микшеру, но все еще безуспешно.Я также продолжал обходить false и все еще не нашел решения.

eqNode = AVAudioUnitEQ(numberOfBands: 1)
eqNode!.bands.first!.filterType = AVAudioUnitEQFilterType.lowPass
eqNode!.bands.first!.frequency = firstSlider.value
eqNode!.bands.first!.bandwidth = secondSlider.value
eqNode!.bands.first!.bypass = false
eqNode!.globalGain = 0
eqNode!.bypass = false

engine.attach(player!)
engine.attach(eqNode!)
engine.connect(player!, to: eqNode!)
engine.connect(eqNode!, to: engine.mainMixerNode)

Я тоже пробовал это, но без исправления.

engine.connect(eqNode!, to: engine.mainMixerNode)
engine.connect(player!, to: engine.mainMixerNode)

Я хочу, чтобы эффекты манипулировали звуком игроков.

...