Сбой при настройке узла вывода AudioKit на iPhone 5s

Я получаю постоянный сбой всякий раз, когда устанавливаю вывод AudioKit на узел микшера. Сбой происходит на iPhone 5s с iOS 10.3.3, но НЕ на iPhone 7 с iOS 11.3.

Код, который я запускаю (настройка просмотра записи):

mic = AKMicrophone()
mic.stop()
fft = AKFFTTap.init(mic)
micMixer = AKMixer(mic)
micBooster = AKBooster(micMixer)
micBooster.gain = 0
do {
            recorder = try AKNodeRecorder(node: micMixer)

            if let file = recorder.audioFile {
                player = try AKAudioPlayer(file: file)
                player.looping = false
                player.completionHandler = playingEnded
            }
            mainMixer = AKMixer(player, micBooster)
            AudioKit.output = mainMixer //THIS IS WHERE IT CRASHES!
        }
        catch {
            //debug prints here don't get printed
            throw error
        }

Блок catch никогда не вызывается, ошибка не выдается.

Подробная информация о сбоях в журналах:

ОШИБКА: [0x1b12c0b40]> avae> AVAudioIONodeImpl.mm:466: EnableBus_block_invoke: error -10849 *** Завершение работы приложения из-за неперехваченного исключения 'com.apple.coreaudio.avfaudio', причина: 'error -10849'

Любая помощь или информация будут оценены!


person Yariv Adam    schedule 10.04.2018    source источник


Ответы (2)


Вы не можете создать проигрыватель с записываемым файлом.

person dave234    schedule 10.04.2018
comment
Это не так, так как это работает на другом устройстве. Кроме того, инициализация плеера такая же, как и в демонстрации записывающего устройства здесь: audiokit.io/examples/RecorderDemo - person Yariv Adam; 10.04.2018
comment
Плеер играет на другом устройстве? - person dave234; 10.04.2018

Я не уверен, что это причина, но я запускал движок AudioKit в другом фрагменте кода, который я пропустил. Когда я переместил вызов AudioKit.start () после вызова AudioKit.output = ...., он не вылетел.

person Yariv Adam    schedule 10.04.2018