Forward Midi events to your redis server and your OSC server.
Go to file
Sam dcaa716d29 midicontrol example 2021-09-23 04:03:08 +02:00
libs midicontrol example 2021-09-23 04:03:08 +02:00
.gitignore Third commit 2020-10-05 13:54:25 +02:00
OSC3.py first commit 2020-10-02 23:33:24 +02:00
README.md midicontrol example 2021-09-23 04:03:08 +02:00
midicontrol.py midicontrol example 2021-09-23 04:03:08 +02:00
miredis.json Doc update 2021-04-09 22:00:14 +02:00
miredis.py midicontrol example 2021-09-23 04:03:08 +02:00

README.md

Forward Midi events to redis/OSC

Miredis hooks to all midi devices connected and listen for events. Miredis can optionnaly hook to opensourced Link protocol (200+ music & videos apps) -> "/beat" & "/bpm" All events are forwarded to your redis server and your OSC server.

Clitools

Run (not with python 3.9)

python3 miredis.py

See options :

python3 miredis.py -h

To enable Link :

python3 miredis.py -link

(for cheap midi interface midisport/midiman from audio on Linux : apt-get install midisport-firmware)

New Features

  • Client example : midicontrol.py
  • Added verbose mode -v
  • Added redis subscribe events
  • Added Clitools program selection mode for Launchpads
  • Added custom redis 'key event', to be more semantic/hardware agnostic with Configuration file : miredis.json. i.e "/feedback/1/114/value" is generated each time a CC message on channel 1, CC 114 is recevied.

OSC

Following messages will be sent to an outside OSC server :

/midi/noteon midichannel note velocity

/midi/noteoff midichannel note

/midi/cc midichannel ccnumber value

/midi/clock

/midi/start

/midi/stop

/beat beatnumber

/bpm bpm

/Your custom (see configuration file). Ex : /feedback midichannel ccnumber value

Redis keys

"/midi/noteon/midichannel" value : "note/velocity"

"/midi/noteoff/midichannel" value : "note"

"/midi/cc/midichannel/ccnumber" value : "ccvalue"

"/beat" value : "beatnumber"

"/bpm" value : "currentbpm"

custom ones

Redis : midi events published to "/midi/last_event"

"/midi/noteon/midichannel/note/velocity"

"/midi/noteoff/midichannel/note

"/midi/cc/midichannel/ccnumber/ccvalue"

customs one like "/feedback/1/114/value"