Тон не воспроизводится в Audikit 4.2, но в версии 4.1 работает нормально

Я использую Audiokit в своем проекте и недавно обновил свой Xcode 9.3. Он говорит, что мне также нужно обновить Audiokit. Но когда я обновился, кажется, мне нужно использовать try catch для запуска и остановки аудиокомплекта. это отлично.

    oscillator = AKFMOscillator()
    oscillator!.amplitude = 0.0
    oscillator!.baseFrequency = Double(calibration.frequency)
    oscillator!.carrierMultiplier = 1.0
    oscillator!.modulatingMultiplier = HolmesMethod.warbleModulationFrequency / Double(calibration.frequency)
    oscillator!.modulationIndex = HolmesMethod.warbleModulationIndex
    oscillator!.rampTime = HolmesMethod.clickMillis / 1000.0


    AudioKit.output = panner
    do {
        try AudioKit.start()
    } catch  {
    }

    oscillator!.start()

    panner = AKPanner(oscillator, pan: calibration.channel == .Right ? 1.0 : -1.0)
    panner?.start()

может ли кто-нибудь сказать мне, что не так с моим кодом? потому что он работает в старой версии, но не в последней версии.


person Maulik Vekariya    schedule 03.05.2018    source источник


Ответы (2)


Мне кажется, что вы установили амплитуду генератора на ноль, поэтому я не уверен, что вы ожидаете услышать.

person Aurelius Prochazka    schedule 03.05.2018

После слишком больших усилий я обнаружил, что нам нужно запустить осциллятор после запуска AudioKit.

oscillator = AKFMOscillator()
oscillator!.baseFrequency = Double(calibration.frequency)
    oscillator!.carrierMultiplier = 1.0
    oscillator!.modulatingMultiplier = HolmesMethod.warbleModulationFrequency / Double(calibration.frequency)
    oscillator!.modulationIndex = HolmesMethod.warbleModulationIndex
    oscillator!.rampDuration = HolmesMethod.clickMillis / 1000.0


    panner = AKPanner(oscillator, pan: calibration.channel == .Right ? 1.0 : -1.0)
    AudioKit.output = panner
    do {
        try AudioKit.start()
        } catch  {
    }

    oscillator!.start()
    panner?.start()

Но тут у меня появился какой-то странный звук на одну секунду во время запуска AudioKit.

person Maulik Vekariya    schedule 04.06.2018