Manipulate midi and create music with a simple and high level interface.
Project description
INFMIDI is a MIDI editing library written in Python,with a lot of advanced syntax to help you quickly edit and generate MIDI files. You can also use it to assist in arranging and composing music with code.
Documentation
🔌 Installation - Here are the detailed installation instructions (pip install infmidi).
🚀 Quick start - Here are a few examples to get you started quickly.
🎹 Fundation - Introduction to core objects (Event, Note, Clip, Track and Midi).
🎸 Generator - Functions to generate Clip object quickly.
🎨 Effects - Functions to process Clip object.
📻 Devices - Objects to play MIDI and to interact with DAWs.
🎼 Examples - Examples to learn INFMIDI.
📑 Cheat sheet - Cheat sheets of core obejcts, music theory and MIDI protocol.
Features
Absolute time - Esaily insert note and event at any time point.
# Add C4 on beat 8.
clip += Note('C4', location=8)
Time slicing - Modify notes for a specific time period.
# Raise notes from beats 8 to 16 by 4 semitones.
clip[8:16] += 4
Generator - Functions to generate music clip quickly.
# Generate chord progression with sheet.
progression = sheet('C4:M7 A4:m9 | F4:M7 G4:7')
Effects - Functions to process MIDI.
# Add delay effect to clip.
delay(clip, n=3, length=0.5, decay=0.9)
Licence
MIT License © 2022 gongyibei.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.