将AUPreset加载到AVAudioUnitSamplet时,为什么偶尔会发生崩溃?

时间:2018-12-27 17:50:47

标签: swift avfoundation audiotoolbox

我的iOS游戏使用AVAudioUnitSampler播放包含各种声音效果的AUPreset。该代码基于Gene De Lisa的项目: https://github.com/genedelisa/AVAudioUnitSamplerFrobs加载预设时,我收到有关偶尔崩溃的崩溃报告。实际的崩溃发生在一些内部AudioToolbox代码中(CreateInterstitialPathString(__ CFURL const *)。安装大约20,000次,而我有177次因此问题而崩溃。因此,它相当少见,但很容易修复。发生了吗?

  func loadPreset() {
     guard let presetURL = Bundle.main.url(forResource: "Sounds/zound", withExtension: "aupreset") else {
     fatalError("Failed to load preset.")
     }
     print("loaded preset \(presetURL)")
     do {
     try sampler.loadInstrument(at: presetURL)
     } catch {
      print("error loading preset \(error)")
     }
  }

它在sampler.loadInstrument行上崩溃。请参阅下文,了解AudioToolbox中发生崩溃的位置。我不确定这是否是AudioToolbox本身的错误,我对此无能为力,或者是否可以做一些避免的事情。

enter image description here

0 个答案:

没有答案