2016-12-04 8 views
2

В приведенном ниже коде AudioKit.start() падает на моем iPhone SE с iOS 10.1.1. Он отлично работает на симуляторе.Аварийный сигнал AudioKit на устройстве, но не симулятор

private func play(note: Int) { 
    let pluckedString = AKPluckedString() 
    AudioKit.output = pluckedString 
    AudioKit.start() // <-- Crash here! 
    let frequency = note.midiNoteToFrequency() 
    pluckedString.trigger(frequency: frequency) 
} 

Журнал ошибок консоли

2016-12-04 10:51:45.765130 MyApp[1833:720319] [aurioc] 889: failed: -10851 (enable 2, outf< 2 ch,  0 Hz, Float32, non-inter> inf< 2 ch,  0 Hz, Float32, non-inter>) 
2016-12-04 10:51:45.766519 MyApp[1833:720319] [aurioc] 889: failed: -10851 (enable 2, outf< 2 ch, 44100 Hz, Float32, non-inter> inf< 2 ch,  0 Hz, Float32, non-inter>) 
2016-12-04 10:51:45.767008 MyApp[1833:720319] [aurioc] 889: failed: -10851 (enable 2, outf< 2 ch, 44100 Hz, Float32, non-inter> inf< 2 ch,  0 Hz, Float32, non-inter>) 
2016-12-04 10:51:45.767982 MyApp[1833:720319] [central] 54: ERROR: [0x1b42d7c40] >avae> AVAudioEngineGraph.mm:2515: PerformCommand: error -10851 

Что я пропустил? Я не могу найти никакой документации о какой-либо необходимой дополнительной настройке для устройств по сравнению с симулятором. Версия AudioKit - 3.5. Версия XCode - 8,1

ответ

2

Я нашел проблему. У меня была категория записи для аудио сессии. Убедитесь, что категория аудиосеансов не является AVAudioSessionCategoryRecord при воспроизведении; мое приложение больше не разбивается.