|
|
|
10-17-2010, 01:04 PM
|
#1
|
Human being with feelings
Join Date: Jul 2009
Posts: 162
|
MIDI routing matrix
A simple JS plugin, allows arbitrary routing of MIDI channels.
Of course, in Reaper any kind of routing can be achieved with multiple sends, but in some cases this plugin allows you to get by with a single MIDI send - e.g. if you need to filter out certain MIDI channels, or send a single input channel to multiple outputs. Also, for me it was an excuse to learn gfx programming in JSFX language ))
Features:
- channel activity indicator
- hanging note prevention (keep track of notes playing, send note-off when a connection is removed)
Stash page here: https://stash.reaper.fm/v/7304/midi_routing_matrix
Direct download: https://stash.reaper.fm/7304/midi_routing_matrix
Hope you find this useful.
Last edited by boreg; 01-28-2021 at 07:22 AM.
Reason: updated description, added Stash links
|
|
|
12-10-2010, 11:57 AM
|
#2
|
Human being with feelings
Join Date: Jul 2009
Posts: 162
|
bump
- Fixed a couple of bugs (not that anybody noticed them.. heh ))
- Added hanging note prevention (optional, can be turned off to create drones)
- Uploaded to stash: https://stash.reaper.fm/7304/midi_routing_matrix
|
|
|
12-10-2010, 12:07 PM
|
#3
|
Human being with feelings
Join Date: Sep 2008
Location: Location
Posts: 5,559
|
Great Boreg!
At least we can already have now what's part of my FR linked in my sig.
-Data
|
|
|
12-10-2010, 12:10 PM
|
#4
|
Human being with feelings
Join Date: Jun 2009
Location: Croatia
Posts: 24,790
|
Awesome, thanks!
|
|
|
12-31-2010, 06:47 AM
|
#5
|
Human being with feelings
Join Date: Apr 2010
Location: Turkey/Istanbul
Posts: 1,820
|
thank you so much
i need to ask
is it possible adding an option "One click block all CC "
like S-Midi Matrix ( pic.)
or is there anything exist for doing this?
its was my nr1 .. but sadly doesnt work in w7 64 bit.
Help appreciated
Yıldırım
Last edited by timbralzoom; 08-18-2017 at 03:13 PM.
|
|
|
01-02-2011, 04:20 AM
|
#6
|
Human being with feelings
Join Date: Jul 2009
Posts: 162
|
If you want to filter all MIDI CC messages, this is trivial to do in a few lines of JS code.
If you want to filter CC from specific input to specific output, this would take quite a bit more work (which I don't have the time for ATM)...
|
|
|
01-02-2011, 12:08 PM
|
#7
|
Human being with feelings
Join Date: Apr 2010
Location: Turkey/Istanbul
Posts: 1,820
|
Quote:
Originally Posted by boreg
If you want to filter all MIDI CC messages, this is trivial to do in a few lines of JS code.
...
|
nr1 = i only need filter all midi CC messages at once !
|
|
|
01-02-2011, 06:00 PM
|
#9
|
Human being with feelings
Join Date: Apr 2010
Location: Turkey/Istanbul
Posts: 1,820
|
i was looking for ... one click solution
and also i was miss this one
Program Change plus 4 configurable filter seems like will do the job.
Thank you so much
Yıldırım
|
|
|
01-04-2011, 02:40 PM
|
#10
|
Human being with feelings
Join Date: Jul 2009
Posts: 162
|
Didn't see your last post timbralzoom, so here is the MIDI CC blocker I made for you
Code:
desc:MIDI CC blocker
in_pin:none
out_pin:none
@init
ext_noinit = 1;
CC = $xB0;
@block
while (
midirecv(offset, msg1, msg23) ?
(
(msg1 & $xF0) == CC ? 1 : midisend(offset, msg1, msg23);
);
);
|
|
|
01-04-2011, 03:12 PM
|
#11
|
Human being with feelings
Join Date: Apr 2010
Location: Turkey/Istanbul
Posts: 1,820
|
Quote:
Originally Posted by boreg
Didn't see your last post timbralzoom, so here is the MIDI CC blocker I made for you
Code:
desc:MIDI CC blocker
in_pin:none
out_pin:none
@init
ext_noinit = 1;
CC = $xB0;
@block
while (
midirecv(offset, msg1, msg23) ?
(
(msg1 & $xF0) == CC ? 1 : midisend(offset, msg1, msg23);
);
);
|
yay!!
midi toys always welcome !!
you made my day ( actually night ..00:11 here)
Thank
You
So
Much !
Yıldırım
|
|
|
08-10-2011, 06:12 PM
|
#12
|
Human being with feelings
Join Date: Sep 2009
Location: Toronto
Posts: 308
|
This thing is amazing. I can know trigger all 8 engines in Geist from one track. thanks again. Exactly what I was looking for.
|
|
|
08-11-2011, 03:33 AM
|
#13
|
Human being with feelings
Join Date: Jul 2009
Posts: 162
|
My pleasure! Glad you find it useful.
|
|
|
04-28-2012, 07:27 AM
|
#14
|
Human being with feelings
Join Date: Apr 2010
Location: Turkey/Istanbul
Posts: 1,820
|
i have a strange question / regıest about the matrix
is it possible to put some kind of activity meters "just on inputs" to see
which channel active ?
would be really helpful addition.
Thank you again ..and..again.
Yıldırım
|
|
|
04-29-2012, 01:14 AM
|
#15
|
Human being with feelings
Join Date: Jul 2009
Posts: 162
|
That seems doable, I'll try to implement it.
|
|
|
04-30-2012, 02:18 PM
|
#16
|
Human being with feelings
Join Date: Jul 2009
Posts: 162
|
Done! Grab the updated version at the usual place
|
|
|
04-30-2012, 02:45 PM
|
#17
|
Human being with feelings
Join Date: Apr 2010
Location: Turkey/Istanbul
Posts: 1,820
|
hey
this is second time that you made my day!
i can't say enough ...
Thank You So Much !
|
|
|
05-01-2012, 12:03 AM
|
#18
|
Human being with feelings
Join Date: Jul 2009
Posts: 162
|
U R welcome ;D
|
|
|
02-26-2013, 11:13 PM
|
#19
|
Human being with feelings
Join Date: Apr 2010
Location: Turkey/Istanbul
Posts: 1,820
|
Hi its me again
i was dreaming about something like this recently.
2 matrix in one window with output midi bus selector for each..
and i realized this is very extreme wish and specific to my workflow,
but i couldn't resist to ask anyway
is it possible to add output midi bus selector
to this incredibly useful Matrix ?
then i can use two instances as i dreamed.
in any case,
thank you so much!
Yıldırım
Last edited by timbralzoom; 08-18-2017 at 03:14 PM.
|
|
|
02-27-2013, 05:00 AM
|
#20
|
Human being with feelings
Join Date: Jul 2009
Posts: 162
|
Hi,
Unfortunately, I don't have experience working with MIDI buses in Reaper, and in JS plugins specifically. Besides, this would require a significant rewrite of the whole plugin - all processing and drawing logic would have to be moved to objects (using the new JS features) so it can be called for each buss independently. And since I have no personal interest in this feature, I'm afraid it ain't gonna happen )) ...sorry mate!
|
|
|
02-27-2013, 11:48 AM
|
#21
|
Human being with feelings
Join Date: Apr 2010
Location: Turkey/Istanbul
Posts: 1,820
|
Hi
i was thinking , this might be need huge work to done
so yes quite understandable reasons
i just couldn't resist to do my "nice try"
anyway...
thanks for your time really!
|
|
|
10-27-2017, 04:40 AM
|
#22
|
Human being with feelings
Join Date: Apr 2010
Location: Turkey/Istanbul
Posts: 1,820
|
Hi there!
almost 5 years after its me again
is it possible to make this wonder all automatable? maybe a separate version?
it would amazing to use in the LBX-Stripper & Stripper's Snapshot function!
just in case.. LBX-Stripper:
https://forum.cockos.com/showthread.php?t=182233
Thank you in advance!
|
|
|
10-27-2017, 05:34 AM
|
#23
|
Human being with feelings
Join Date: Jul 2009
Posts: 162
|
Hi!
I've re-read my reply from 5 years ago, and still holds true. Learning the new JS language features and rewriting this plugin is quite a task, and I have even less free time than I did back then (two kids, full-time job and a freelance project )
Sorry timbralzoom, I'm not up to it...
|
|
|
10-27-2017, 05:55 AM
|
#24
|
Human being with feelings
Join Date: Apr 2010
Location: Turkey/Istanbul
Posts: 1,820
|
Quote:
Originally Posted by boreg
Hi!
I've re-read my reply from 5 years ago, and still holds true. Learning the new JS language features and rewriting this plugin is quite a task, and I have even less free time than I did back then (two kids, full-time job and a freelance project )
Sorry timbralzoom, I'm not up to it...
|
absolutely no problem, good luck with the job & project but especially with the kids
Thank you for the reply!
|
|
|
05-22-2020, 03:27 AM
|
#25
|
Human being with feelings
Join Date: Feb 2014
Posts: 240
|
Quote:
Originally Posted by timbralzoom
is it possible to make this wonder all automatable?
|
It's probably possible, if we study the paradigm of zplane retune, notice that 1 point gets mapped to only 1 other point, that way it's easy to comprehend the automation. See pic.
The main DSP loop is quite small. But you may need to completely rewrite the GUI.
BTW do you have a use-case for automating the routing?
|
|
|
05-22-2020, 06:06 AM
|
#26
|
Human being with feelings
Join Date: Apr 2010
Location: Turkey/Istanbul
Posts: 1,820
|
an old usage example of a poor man's matrix
https://www.youtube.com/watch?v=eecrs7OepVc
with the vst version i made in the Synth Maker (32bit)
|
|
|
11-14-2020, 12:48 PM
|
#27
|
Human being with feelings
Join Date: Mar 2008
Location: Oakland, CA
Posts: 10,478
|
This is terrific, thanks!
|
|
|
11-16-2020, 05:07 AM
|
#28
|
Human being with feelings
Join Date: Jul 2009
Posts: 162
|
Thank you!
|
|
|
01-24-2021, 03:47 PM
|
#29
|
Human being with feelings
Join Date: Aug 2015
Posts: 2,969
|
Very handy. Nice one.
boreg, Is there any chance you might edit the original announcement post to refer to the bug-fixed version?
It's a bit confusing. At least it confused me.
Cheers
__________________
it's meant to sound like that...
|
|
|
01-28-2021, 07:23 AM
|
#30
|
Human being with feelings
Join Date: Jul 2009
Posts: 162
|
@jrk - thanks!
Updated the original post.
|
|
|
01-28-2021, 07:41 AM
|
#31
|
Human being with feelings
Join Date: Aug 2015
Posts: 2,969
|
Good stuff. It's been a real problem solver for quite a few people recently.
__________________
it's meant to sound like that...
|
|
|
02-09-2022, 07:12 PM
|
#32
|
Human being with feelings
Join Date: Mar 2021
Posts: 54
|
Cool. Just what I needed. Any chance to get this included into the ReaPack repository?
|
|
|
02-10-2022, 02:21 PM
|
#33
|
Human being with feelings
Join Date: Jul 2009
Posts: 162
|
Glad you find it useful @Gruust!
Ask the ReaPack developers if they want to include it. Of course, I will be delighted if it does get included.
|
|
|
Thread Tools |
|
Display Modes |
Linear Mode
|
Posting Rules
|
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts
HTML code is Off
|
|
|
All times are GMT -7. The time now is 04:12 PM.
|