Я пытаюсь воспроизвести базовый c MIDI-файл, используя устаревший секвенсор AudioKits, AKAppleSequencer. Я получил его для воспроизведения первой ноты файла, но ничего после. (Я не смог получить никакого вывода от нового AKSequencer.) Вот мой код, который по существу идентичен коду воспроизведения MIDI из AudioKits Playgrounds.
class MIDIPlayer {
var piano: AKMIDISampler?
var sequencer: AKAppleSequencer?
var mixer: AKMixer?
var reverb: AKCostelloReverb?
var dryWetMixer: AKDryWetMixer?
func playMidiFile() {
piano = AKMIDISampler()
try? piano!.loadWav("FM Piano")
mixer = AKMixer(piano)
reverb = AKCostelloReverb(mixer)
dryWetMixer = AKDryWetMixer(mixer!, reverb!, balance: 0.2)
AudioKit.output = dryWetMixer
sequencer = AKAppleSequencer(filename: "Score")
sequencer!.setGlobalMIDIOutput(piano!.midiIn)
sequencer!.setLength(AKDuration(beats: 16))
try? AudioKit.start()
sequencer!.play()
print("MIDIPlayer playing...")
}
}
Я слышу Сначала запишите файл MIDI и получите следующие ошибки / предупреждения.
2020-04-24 16:30:19.653852-0400 TauMusicTest[20668:3188919] [seq] SequenceTrack.cpp:918:Clear: Invalid beat range or track is empty
2020-04-24 16:30:19.654171-0400 TauMusicTest[20668:3188919] [seq] SequenceTrack.cpp:1028:Merge: Invalid beat range
2020-04-24 16:30:20.349048-0400 TauMusicTest[20668:3189067] HALC_ProxyIOContext::IOWorkLoop: failed to send the final message to the server, Error: 0x10000003
2020-04-24 16:30:20.450640-0400 TauMusicTest[20668:3189034] [ddagg] AggregateDevice.mm:331 Output: index 1 >= allChannelDescs size 1
2020-04-24 16:30:20.532394-0400 TauMusicTest[20668:3189251] [aqme] AQMEIO_HAL.cpp:1526:IOProc: AQDefaultDevice: Abandoning I/O cycle because reconfig pending (1).
MDIDPlayer playing...
2020-04-24 16:30:20.542721-0400 TauMusicTest[20668:3188919] [general] AKAppleSequencer.swift:deinit:41:deinit: (AKAppleSequencer.swift:deinit:41)
2020-04-24 16:30:20.542882-0400 TauMusicTest[20668:3188919] [general] AKAppleSequencer.swift:deinit:41:deinit: (AKAppleSequencer.swift:deinit:41)
2020-04-24 16:30:20.543023-0400 TauMusicTest[20668:3188919] [general] AKAppleSequencer.swift:deinit:41:deinit: (AKAppleSequencer.swift:deinit:41)
2020-04-24 16:30:20.543149-0400 TauMusicTest[20668:3188919] [general] AKAppleSequencer.swift:deinit:41:deinit: (AKAppleSequencer.swift:deinit:41)
2020-04-24 16:30:20.543264-0400 TauMusicTest[20668:3188919] [general] AKAppleSequencer.swift:deinit:41:deinit: (AKAppleSequencer.swift:deinit:41)
2020-04-24 16:30:20.698072-0400 TauMusicTest[20668:3188919] [general] AKAppleSequencer.swift:deinit:41:deinit: (AKAppleSequencer.swift:deinit:41)
2020-04-24 16:30:20.698443-0400 TauMusicTest[20668:3188919] [general] AKAppleSequencer.swift:deinit:41:deinit: (AKAppleSequencer.swift:deinit:41)
2020-04-24 16:30:20.698718-0400 TauMusicTest[20668:3188919] [general] AKAppleSequencer.swift:deinit:41:deinit: (AKAppleSequencer.swift:deinit:41)```