Почему фильтр низких частот применяется к AKAppleSampler при запуске / остановке Audiokit - PullRequest
0 голосов
/ 30 августа 2018

У меня проблема при использовании AKAppleSampler, запуске и остановке audioKit. Каждый раз, когда он останавливается и запускается фильтр нижних частот.

class ViewController: UIViewController {

    var sampler: AKAppleSampler? = nil

    @IBAction func onButtonSetup(_ sender: Any) {
        do {
            self.sampler = AKAppleSampler()
            if let url = Bundle.main.url(forResource: "piano", withExtension: "aupreset") {
                let presetPath: String = url.path
                try sampler?.loadPath(presetPath)
                AudioKit.output = sampler
            }

        } catch let error as NSError {
            print(error)
        }
    }

    @IBAction func onStop(_ sender: Any) {
        do {
            try AudioKit.stop()
        } catch let error as NSError {
            print(error)
        }
    }

    @IBAction func onStart(_ sender: Any) {
        do {
            try AudioKit.start()
        } catch let error as NSError {
            print(error)
        }
    }

    @IBAction func onPlay(_ sender: Any) {
        do {
            try sampler?.play(noteNumber: 60, velocity: 100)
        } catch let error as NSError {
            print(error)
        }
    }
}

Вот репро-репо

https://github.com/mlostekk/AudioKitIssue

Чтобы воспроизвести это, сделайте следующее

  1. Нажмите Настройка
  2. Нажмите кнопку запуска Audiokit
  3. Нажмите Play (звучит нормально)
  4. Нажмите AudioKit stop
  5. Нажмите кнопку запуска AudioKit
  6. Нажмите Play (фильтр низких частот применяется немного)
  7. Теперь повторите 4, 5 и 6 и убедитесь, что фильтр LP применяется больше с каждым циклом запуска-остановки

Есть какое-нибудь решение для этого?

...