Я пытаюсь сыграть короткую последовательность музыкальных нот с синусоидальной волной по умолчанию как звук внутри Swift Playground. В более позднем моменте я хотел бы заменить звук Soundfont, но на данный момент я был бы доволен просто произведением звука.
Я хочу, чтобы это была MIDI-последовательность, с прямым контролем над нотами, а не с чисто аудио. AudioToolbox
, кажется, обеспечивает то, что я ищу, но у меня проблемы с пониманием его использования. Вот что я сейчас пытаюсь
import AudioToolbox
// Creating the sequence
var sequence:MusicSequence = nil
var musicSequence = NewMusicSequence(&sequence)
// Creating a track
var track:MusicTrack = nil
var musicTrack = MusicSequenceNewTrack(sequence, &track)
// Adding notes
var time = MusicTimeStamp(1.0)
for index:UInt8 in 60...72 {
var note = MIDINoteMessage(channel: 0,
note: index,
velocity: 64,
releaseVelocity: 0,
duration: 1.0 )
musicTrack = MusicTrackNewMIDINoteEvent(track, time, ¬e)
time += 1
}
// Creating a player
var musicPlayer:MusicPlayer = nil
var player = NewMusicPlayer(&musicPlayer)
player = MusicPlayerSetSequence(musicPlayer, sequence)
player = MusicPlayerStart(musicPlayer)
Как вы можете себе представить, нет звука. Я ценю любые идеи о том, как воспроизводить звуковую последовательность вслух.