Ich versuche einen Sequenzer zu bauen, der die Note aus Midi-Datei rendert.
Momentan verwende ich AudioKit für die Musikdatenverarbeitung. Möchte wissen, wie ich die Notendaten / Event aus der Midi-Datei mit AudioKit bekommen kann.
Ich habe versucht, AKSequencer zu verwenden und zu AKMIDINode auszugeben, um das MIDI-Ereignis zu hören, aber scheint nichts davon zu bekommen.
%Vor%Haben Sie sich eines der Beispiel-Audio-Kit-Projekte angesehen, die Sie herunterladen können? Sie sind sehr nützlich für die Fehlerbehebung bei AK. Ich finde die Beispiele tatsächlich besser als die Dokumentation (da die Implementierung nicht sehr gut erklärt wird).
Wie bei Ihrer Frage können Sie einem Ereignis einen Midi-Listener hinzufügen. Ein Beispiel für diesen Code finden Sie im Analog Synth X Projekt hier verfügbar .
%Vor%Wenn Sie ein bisschen mehr Code verwenden möchten, können Sie hierauf verweisen , obwohl der Code wahrscheinlich ist veraltet in Teilen.
Tony, erhalten Sie keine MIDI-Events oder nur die Print-Anweisungen?
Ich stimme der Antwort von Axemasta zu, dass AKMidiListener
zur Klasse hinzugefügt wurde und dass ich die MIDI-Code-Beispiele von AudioKit gelesen habe. Dieses ROM-Player-Beispiel zeigt, wie Sie externe MIDI-Dateien mit dem AKMidiSsmpler
-Knoten abspielen können:
Damit der Ausdruck angezeigt wird, versuchen Sie, ihn in DispatchQueue.main.async
einzufügen, sodass er im Hauptthread enthalten ist. Hier ist eine AudioKit MIDI-Implementierungsfrage mit einem Codebeispiel, das ich hier gepostet habe:
AudioKit iOS - Funktion receivedMIDINoteOn
Ich hoffe, das hilft.