MIDI Solutions Event Processor
When MIDI data needs to be
processed in very specific ways the MIDI
Solutions Event Processor can often provide the perfect solution. The Event
Processor offers 10 settings, each of which can be programmed with a unique
MIDI processing function (for 32 settings see the
Event Processor Plus). By combining these settings the Event
Processor becomes an extremely powerful tool capable of processing MIDI
events in almost any way imaginable. The Event Processor can map MIDI events or ranges of MIDI events to other MIDI
events, filter MIDI events or ranges of MIDI events, trigger MIDI events,
toggle between MIDI events, sequence through MIDI events, scale or crossfade MIDI
messages, transpose notes, scale velocities, map to and from
NRPN, Bank Select messages, store incoming values in variables
for later use... the Event Processor is like
a swiss army knife of MIDI processing products, an indispensable tool in any
MIDI musician's arsenal.
Processor works by comparing each incoming MIDI event with each of its 10
settings. When an incoming MIDI event matches a setting, the event is
processed according to that setting. By combining different settings for
different incoming events, the Event Processor becomes an extremely powerful
tool capable of achieving a wide range of MIDI-processing functions.
The Event Processor
can perform the following functions:
Filter MIDI Events
The Event Processor can be programmed to
filter MIDI events and ranges of MIDI events. Ranges of MIDI events are
filtered by selecting minimum and maximum values. For example, to filter
all notes above middle C select Note #61 as the minimum value and Note #127
as the maximum value.
There is also a Filter All MIDI Events setting that can be used in
combination with other settings to allow filtering of all except a few MIDI
event types. For example, to filter all MIDI events except Program Change
events on MIDI channel 1, combine the Filter All MIDI Events setting with a
setting that maps Program Change events on MIDI channel 1 to itself. Since
each setting is processed, the combination of these two settings allows
only Program Change events on MIDI channel 1 to pass through.
The Event Processor can be programmed to map
any MIDI event to any other MIDI event. Multiple settings of the same MIDI
event are accepted, enabling a particular incoming MIDI event to be mapped
to multiple outgoing MIDI events, or multiple incoming MIDI events to be
mapped to a single outgoing MIDI event.
Ranges of MIDI events can be mapped by selecting minimum and maximum values
to be mapped. Incoming and outgoing ranges can be different, allowing
incoming MIDI ranges to be scaled to different outgoing ranges. For
example, the incoming Control Change range 0 - 127 could be mapped to the
outgoing range 0 - 100. Ranges can also be split into multiple settings,
allowing custom scaling curves to be created. For example one setting could
map the lower range 0 - 63 to 0 - 100, and another setting map the upper
range 64 - 127 to 101 - 127.
The Event Processor will also accept negative outgoing ranges, allowing
values to be inverted and crossfades to be performed. For example to use an
incoming Control Change message to control a crossfade between two other
Control Change messages, map the range 0 - 127 of the incoming message to
the range 0 - 127 of one outgoing message and to the negative range 127 - 0
of another outgoing message.
Trigger MIDI Events
The Event Processor can be programmed to
trigger an outgoing MIDI event when the value of an incoming MIDI event
falls within a specified range. Events are triggered by assigning a range
of incoming values within which the outgoing MIDI event will be triggered.
For example, to trigger a middle C Note-on event when a Control Change
value passes below a threshold value of 64, select 0 - 63 as the range, and
Note-on middle C as the outgoing MIDI event. When the Control Change value
moves below 64 (i.e. into the range 0 - 63), the outgoing middle C is
triggered. The middle C is triggered only when the Control Change first
moves into the range - in order for the middle C to be retriggered, the
Control Change value must first move out of range.
Step Through a Sequence of MIDI Events
The Event Processor can be programmed to step
through sequences of MIDI events. Sequences can be as short as two settings
causing the Event Processor to toggle back and forth between the two
settings, or as long as 9 of the 10 total settings (at least one setting is
required to define the sequence).
Setting up a sequence of two settings is an easy way to turn a momentary
function into a toggle function, even if the sending device does not offer
it. For example, to convert a momentary footswitch that sends a value of
127 on depression and a value of 0 on release into a footswitch that
toggles back and forth between the values 127 and 0 with each depression,
set up a sequence of two MIDI events, one with a value of 127 and the other
with a value of 0. Then use the incoming Control Change event of value 127
to cause the Event Processor to increment through the sequence of the two
events. Only the depression of the footswitch (incoming value 127) causes
the Event Processor to advance through the sequence, causing it to toggle
between the values of 0 and 127 in response to each depression of the
Turn Settings On and Off
Any setting of the Event Processor can be
turned on or off on the fly in response to selected MIDI events. This
allows settings to be activated and deactivated in a live application when
time is critical and it is not possible to reprogram the Event Processor.
Settings can be turned on or off when a specific MIDI event is received, or
when a value of an incoming MIDI event falls within a specified range.
Another application for turning settings on and off is mapping NRPN
messages to Control Change messages. When a specific NRPN is received, the
Event Processor can be programmed to turn on only the setting that maps the
data value to the specific Control Change message. Then when a different
NRPN is received, a different setting is turned on, mapping the data value
to that Control Change message.
Incoming Values in Variables
The Event Processor can store the value of
any incoming MIDI parameter in one of two variable locations, and use these
values at a later time in any outgoing MIDI event.
This is useful for keeping track of something that has happened previously
and accessing it at a later time. For example, the Event Processor could
store the current volume level, and apply that level to all incoming
Note-on velocities. Even after the volume pedal has stopped moving the
volume level still needs to be applied to the velocities, so the only way
to accomplish this is to store the incoming volume level in a variable and
then later apply the value stored in this variable to the velocities of
incoming Note-on events.
One of the best ways to learn about these functions
is by downloading the
MIDI Solutions Programming Tools software,
it's quick to install and easy to navigate, and it's free for download, even if you haven't yet purchased the Event
Processor. Spending a few minutes clicking on the different options is an excellent way
familiarize yourself with the Event Processor. The Programming Tools
software also contains lots of example files that demonstrate the many
applications of the Event Processor. For a more in depth look of everything
the Event Processor has to offer read the Guide to
the Event Processor and Event Processor Plus by Bruce Wahler of Ashby
Solutions, this comprehensive guide explores in detail the amazing tasks
these products are capable of!
The Event Processor is programmed by
sending it MIDI System Exclusive messages (read the
for more details). This is easily done with the MIDI Solutions Programming Tools
software. Once programmed, the Event Processor's settings are retained even after power is
removed. The Event Processor can be reprogrammed with new settings as
often as needed.
The Event Processor is MIDI-powered, and
requires no batteries or power supply to operate with most MIDI products (for more information read
the Power FAQs). A MIDI indicator LED lights up when the
product is powered and flashes when MIDI data passes through it.
Weight: 103 g (3.6 oz.)
Dimensions: 112 x 62 x 31 mm (4.4" x 2.4" x 1.2")
Learn more about the MIDI Solutions Event Processor
Copyright © 2023 MIDI Solutions Inc.