Skip to content

Text-controlled MIDI device and sequencer.

Notifications You must be signed in to change notification settings

cfankhauser1/midibot

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

15 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

midibot

Text-controlled MIDI device and sequencer.

This takes text commands and makes a MIDI device to output the messages to your DAW or MIDI-compatible software.

Initially intended to function with a twitch/IRC bot for multi-user interactivity.

To run, install requirements.txt and run midibot/midibot.py.

The function 'recieve_message' will take a command string, and if valid, send the relevant MIDI message. It will also return a string with relevant information to pass back to the user.

Commands and Track Names are defined in the .ini files within /settings - this is where you define your MIDI mappings for CCs and tracks.

Pre-defined Commands:

Sequencer:

!add [track name] [sequence]

!replace [track name] [sequence]

!choice [track name] [sequence]

!rand [track name] [sequence]

!apend [track name] [sequence]

!clear or !reset

!bpm [value]

!help

Macros:

!macro [macro name] [sequence]

$[macroname] (this will recall the macro

Example commands:

!add synth a4[4] c3[4] f2[0.5] c#4[1]

    (Specify track, note names and durations)

!add synth c3 d3 e3 f4

    (Duration defaults to 1 if not specified)

!add synth a2-c3-e3[4] g2-b2-d3-f3[8]

    (Chords use dashes to combine notes)

!res 0 100 40 45
    (CC durations also default to 1)

!cutoff loop 30[4] 100[4] 127[8]

    (Looped CC commands)

!macro macro1 c3-c4[4]

    (Create a macro named 'macro1')

!add synth $macro1

    (Reference the macro)

About

Text-controlled MIDI device and sequencer.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Python 100.0%