Programming for MIDI
controllers
@jordanorelli
Tuesday, August 20, 13
This is an EWI.
Tuesday, August 20, 13
An EWI does not make
sound.
Tuesday, August 20, 13
It only makes data.
Tuesday, August 20, 13
It is a data horn.
Tuesday, August 20, 13
The data that the EWI
makes is MIDI.
MIDI
Tuesday, August 20, 13
A MIDI message looks
like this:
144 60 80
Tuesday, August 20, 13
A MIDI message looks
like this:
144 60 80
type
Tuesday, August 20, 13
A MIDI message looks
like this:
144 60 80
type data1
Tuesday, August 20, 13
A MIDI message looks
like this:
144 60 80
type data1 data2
Tuesday, August 20, 13
MIDI
The EWI sends MIDI
messages to a synthesizer.
Tuesday, August 20, 13
MIDI
The synthesizer is just a
program. It was free.
(i.e., gratis)
Tuesday, August 20, 13
MIDI
The synthesizer sends
sound to the speakers.
SOUND
Tuesday, August 20, 13
(demo)
Tuesday, August 20, 13
You can send MIDI
messages anywhere you
like.
Tuesday, August 20, 13
That is your right as a
programmer.
Tuesday, August 20, 13
MIDI
I like to send MIDI
messages to
Processing...
Tuesday, August 20, 13
MIDI
... and have
Processing generates
graphics.
LIGHT
Tuesday, August 20, 13
You can use the synth and
Processing at the same
time.
Tuesday, August 20, 13
MIDI
MIDI
SOUND
LIGHT
Tuesday, August 20, 13
(demo)
Tuesday, August 20, 13
This is my Launchpad.
Tuesday, August 20, 13
It also sends MIDI
messages.
Tuesday, August 20, 13
It sends MIDI messages
when you push its
buttons.
Tuesday, August 20, 13
Additionally, it can receive
MIDI messages.
Tuesday, August 20, 13
Sending MIDI message to
the Launchpad can turn
lights on and off.
Tuesday, August 20, 13
MIDI
I like to send MIDI
messages to ChucK...
Tuesday, August 20, 13
MIDI
... and have ChucK
generate sound.
SOUND
Tuesday, August 20, 13
ChucK is a strongly timed
language. “one second” is
always the same amount
of time.
Tuesday, August 20, 13
Since rhythm is a function
of time, ChucK is an
excellent keeper of
rhythm.
Tuesday, August 20, 13
Programming rhythm
means programming time
itself.
Tuesday, August 20, 13
(demo)
Tuesday, August 20, 13
We can also send OSC
messages from ChucK to
Processing.
OSC
Tuesday, August 20, 13
...and have Processing
generate graphics.
OSC
LIGHT
Tuesday, August 20, 13
We can generate the sound
and the graphics at the same
time.
OSC
LIGHT
MIDI
SOUND
Tuesday, August 20, 13
(demo)
Tuesday, August 20, 13
Let’s bring the EWI back.
Tuesday, August 20, 13
MIDI
MIDI
MIDI
OSC
SOUND
SOUND
LIGHT
Tuesday, August 20, 13
(demo)
Tuesday, August 20, 13
Thanks!
@jordanorelli
github.com/jordanorelli
Tuesday, August 20, 13

Programming for MIDI controllers