AudioKit / Midisequencer
Licence: mit
MIDI Sequencer that sends MIDI events to other apps.
Stars: ✭ 75
Programming Languages
swift
15916 projects
Projects that are alternatives of or similar to Midisequencer
Helio Workstation
One music sequencer for all major platforms, desktop and mobile
Stars: ✭ 2,257 (+2909.33%)
Mutual labels: midi, sequencer
seq66
Seq66: Seq24-based live MIDI looper/editor. V. 0.99.1 2022-11-27. NSM support; Linux/Windows; PDF user manual. Help access to tutorial and PDF.
Stars: ✭ 95 (+26.67%)
Mutual labels: sequencer, midi
Mixxx
Mixxx is Free DJ software that gives you everything you need to perform live mixes.
Stars: ✭ 2,510 (+3246.67%)
Mutual labels: midi, mac
recurse
re<urse is a declarative language for generating musical patterns
Stars: ✭ 32 (-57.33%)
Mutual labels: sequencer, midi
MIDISequencerAUv3
A great start point for making AUv3 MIDI sequencer apps.
Stars: ✭ 24 (-68%)
Mutual labels: sequencer, midi
Miti
miti is a musical instrument textual interface. Basically, its MIDI, but with human-readable text. 🎵
Stars: ✭ 103 (+37.33%)
Mutual labels: midi, sequencer
braid
Polyrhythms in Python: a sequencer and musical notation system for monophonic MIDI synths
Stars: ✭ 34 (-54.67%)
Mutual labels: sequencer, midi
Audiokitsynthone
AudioKit Synth One: Open-Source iOS Synthesizer App
Stars: ✭ 1,258 (+1577.33%)
Mutual labels: midi, sequencer
Textbeat
🎹 plaintext music sequencer and midi shell, with vim playback 🥁
Stars: ✭ 274 (+265.33%)
Mutual labels: midi, sequencer
Iannix
IanniX is a graphical open-source sequencer, based on Iannis Xenakis works, for digital art. IanniX syncs via Open Sound Control (OSC) events and curves to your real-time environment.
Stars: ✭ 238 (+217.33%)
Mutual labels: midi, sequencer
digitakt-song-mode
Song mode for Elektron Digitakt
Stars: ✭ 29 (-61.33%)
Mutual labels: sequencer, midi
cl-patterns
Library for writing patterns to generate or process (a)musical sequences of mathematically (un)related (non-)compound values in Lisp.
Stars: ✭ 62 (-17.33%)
Mutual labels: sequencer, midi
Score
ossia score, an interactive sequencer for the intermedia arts.
Stars: ✭ 808 (+977.33%)
Mutual labels: midi, sequencer
Midichlorian
A Visual Studio extension that allows you to write code and automate the IDE using MIDI musical instruments.
Stars: ✭ 65 (-13.33%)
Mutual labels: midi
Libremidi
A modern C++ MIDI real-time & file I/O library. Supports Windows, macOS, Linux and WebMIDI.
Stars: ✭ 69 (-8%)
Mutual labels: midi
Micropython Stm Lib
A collection of modules and examples for MicroPython running on an STM32F4DISCOVERY board
Stars: ✭ 64 (-14.67%)
Mutual labels: midi
MIDISequencer
MIDI Sequencer that sends MIDI events to other apps.
Built top on AKSequencer
of AudioKit for iOS and macOS.
Create smart MIDI sequencer instruments with just focus on notes.
Requirements
- Swift 5.0+
- iOS 9.0+
- macOS 10.11+
Install
pod 'MIDISequencer'
Usage
MIDISequencer built top on AudioKit
's AKSequencer
with MusicTheory
library to create sequences just focusing on notes with multiple track support.
- Create a
MIDISequencer
instance.
let sequencer = MIDISequencer(name: "Awesome Sequencer")
- Create a
MIDISequencerTrack
and add it to sequencer's tracks.
let track = MIDISequencerTrack(
name: "Track 1",
midiChannel: 1)
sequencer.tracks.append(track)
- Set tempo and time signature
sequencer.tempo = Tempo(
timeSignature: TimeSignature(
beats: 4,
noteValue: .quarter),
bpm: 80)
- Add some
MIDISequencerStep
s to track'ssteps
track.steps = [
MIDISequencerStep(
note: Note(type: .c, octave: 4),
noteValue: NoteValue(type: .quarter),
velocity: .standard(100)),
MIDISequencerStep(
note: Note(type: .d, octave: 4),
noteValue: NoteValue(type: .quarter),
velocity: .standard(100)),
MIDISequencerStep(
note: Note(type: .e, octave: 4),
noteValue: NoteValue(type: .quarter),
velocity: .standard(100)),
MIDISequencerStep(
note: Note(type: .f, octave: 4),
noteValue: NoteValue(type: .quarter),
velocity: .standard(100)),
]
sequencer.addTrack(track: track1)
- You can even add chords or multiple notes or even both to any step.
MIDISequencerStep(
chord: Chord(type: .maj, key: .c),
octave: 4,
noteValue: NoteValue(type: .quarter),
velocity: .standard(60))
MIDISequencerStep(
notes: [Note(type: .c, octave: 4), Note(type: .d, octave: 4)],
octave: 4,
noteValue: NoteValue(type: .quarter),
velocity: .standard(60))
MIDISequencerStep(
notes: Chord(type: .maj, key: .c).notes(octave: 4) + [Note(type: .c, octave: 4), Note(type: .d, octave: 4)],
noteValue: NoteValue(type: .quarter),
velocity: .standard(60))
- Create arpeggiated steps with any notes from chords, scales in any octave range with
MIDISequencerArpeggiator
.
let arpeggiator = MIDISequencerArpeggiator(
scale: Scale(type: .blues, key: .a),
arpeggio: .random,
octaves: [4, 5])
let melody = MIDISequencerTrack(
name: "Melody",
midiChannel: 3,
steps: arpeggiator.steps(noteValue: NoteValue(type: .quarter), velocity: .random(min: 80, max: 120)))
sequencer.addTrack(track: melody)
-
Set
isMuted
property totrue
to mute anyMIDISequencerStep
. -
Call one of
play()
orplayAsync()
functions to play sequance.
state = .loading
sequencer.playAsync(completion: {
self.state = .playing
})
- Call
stop()
to stop playing.
sequencer.stop()
Documentation
See full documentation
AppStore
This library used in my app ChordBud, check it out!
Note that the project description data, including the texts, logos, images, and/or trademarks,
for each open source project belongs to its rightful owner.
If you wish to add or remove any projects, please contact us at [email protected].