C3 Utility Racks

… and here is the same thing with the Sylphyo re-configured to produce Velocity based on the breath pressure in the first 20 msec.

It’s interesting (to me, anyway) to look at the MIDI stream and see the breath pressure fall to zero and then climb back up before the note is emitted.

MIDI: https://www.dropbox.com/scl/fi/t3ml634qgkbbl9scttsyk/Able-0101-2023-12-09.mid?rlkey=840fse2lix8zd0cpygycc7jcc&dl=0

MP3: https://www.dropbox.com/scl/fi/z9xcwsj0qthus1c56v1nw/Able-0101-2023-12-09.mp3?rlkey=6k5b4u2p1i4joa8objr2logv0&dl=0

The audio uses some dramatic level changes (probably too much …) but produces a substantially more interesting rhythm …

Hi Clint,

As the others have said, it is not easy to do but I came up with a prototype for you to play with. The rack accepts notes that are specified in the bindings of the rack. Also the notes must be set on the output of each embedded rack used in the main rack. I can edit the rack if you need but don’t know the specific notes you use.

Velo Maker.cantabileRack (63.7 KB)

So here’s how it works and where you set things. There are 3 bindings for each note used in the rack and the note numbers are set on all 3 of them. The first binding is the note on event and it has a delay of 20ms before firing. The second binding detects the note off and has a 50ms delay on it. The last binding sends a CC edge button to the embedded rack used for that note and is used to invoke a “Resend Bound Values” binding for that embedded rack.

In the routes area of the rack there are 4 embedded racks, one for each trigger note. You’ll notice that there are named routes on each sub rack and that allows them to be enabled and disabled by the bindings shown earlier. The output route of each sub rack also has a MIDI filter that is used to convert CC2 to Note data and the note numbers of the filters must match the bindings in the main rack shown above.

Inside a sub rack you have 3 bindings. The first takes the CC2 data from the controller and stores it’s value on the input gain slider of the rack. It provides a way to have a bound value to send later. The second binding takes the value of that input gain slider and converts it to MIDI CC2 and becomes the bound value that is sent when the “resend bound values” binding is invoked. The third binding is the ‘resend bound values’ switch and is invoked when it receives the CC19 message sent by the bindings a level above in the main rack.

So, the flow goes like this

  • you play a note on the controller and as soon as you do it starts the 20ms delay of the binding

  • meanwhile the CC2 data from the instrument controller is being sent to the sub rack via a direct route with a filter on it to pass only CC2 and stored on the sub rack’s input gain slider for recall

  • when the delay is done the output route of the associated sub rack is enabled and also the “resend bound values” message is sent to the same sub rack

  • when the route is enabled and the resend binding is received the sub rack outputs the stored value on the input gain slider inside the sub rack

  • the stored value is processed by the output route’s CC to Note MIDI filter and sent the rack out to be used by the drum VSTi

Hopefully it will work but until it is real life tested I wouldn’t know for sure. It passes the bench tests here. I am pretty sure it will be a game of delay times but we’ll see.

Cheers,

Dave

1 Like

Wow @dave_dore … Wow.

I’ll be digging into this early in the A.M. tomorrow and will report …

Uh … @dave_dore … I don’t see any bindings in the linked rack or its embedded sub-racks … I’m still on v4062 … guessing I need to upgrade to the latest?

(I’m on the road and performing, so I’ve been holding off on the upgrade …)

Well, I am on the new train but I can produce the same in the old format, I’ll see about it later.

1 Like

OK Clint, here is a version using 4064 so it has the old bindings and should be OK. It checks out here. All the bindings are in the same order as the explanation above so it still applies to this rack as well.

Velo Maker 40XX.cantabileRack (68.9 KB)

Have a good gig & Cheers,

Dave

1 Like

Tried to board the new train but … v4150 upgrade failed for me (reported here), so I tried Velo Maker 40XX.

Activated the route out of the [Hat] embedded rack, brought up monitors on the [Hat] inbound and outbound routes, and played several short notes …

You can see the post-filter input - only CC2 input. Not sure if that is correct. No MIDI on the output side - probably not correct.

However … since I am still on v4062 and a lot has changed since then in the binding area, I suspect we may need to wait till I am able to upgrade to continue with this work

(I use a version of clamp() in expressions in my Background Rack, which is not yet implemented in v4150).

Hi Clint,

The CC2 will only be seen at the input of the sub racks and the output MIDI only appears when you play a note.

This is because even though you play a note the sub rack is where the CC2 data is reassembled into a MIDI note that has the same velocity as the CC2 at the point you triggered the note event. So, to check it out you place the MIDI monitor on the sub rack output or the main Velo rack MIDI out and you should see a single note on / note off event.

Also bear in mind that the notes that are output are specific ( not any Note) so you would only see MIDI output from the rack when you play one of the notes I have programmed into it. Currently it is set for Notes numbers 48, 50, 52, 53 or C2, D2, E2 & F2. The rack can be re-tooled to be what ever numbers you want but these are what I started with.

Hope this helps,

Dave

1 Like

Just gave it another try … Monitored the inputs an outputs to the [Velo Maker 40XX] rack. I see the route inside of Velo Maker from the HiHat for F3 / MIDI 53 turn on and off when I play an F3 on the Sylphyo … however …

Nothing appears on the MIDI monitor on the output side of [Velo Maker 40XX]. Nothing at all.

Here is a link to the actual MIDI coming out of my Sylphyo for this test … three short notes. Maybe this is useful?

Still thinking it’s best to wait till I can board the 41XX train (which will require a bug fix …)

Not laughing.

The creative process is what makes us truly human.

Have you tried playing drums with the physical wind synth controller as a drumstick?

…not laughing…

1 Like

Hi Clint,

I was out today and just saw your post. I tried the file and it worked here so we’re close. But I saw in the MIDI monitor that my scheme isn’t quick enough for the Wind instrument data stream and more than one note with velocity slips though and the velocities go down in value till 0. Anyway, I’d say it’s back to the drawing board to see if I can get the desired result. I’ll post if I have any success.

Cheers,

Dave

1 Like

Hi Clint,

I had a whale of a wrestle with this unique case use but I feel like I have a reliable version working. The downside for you is that in order to do it I had to build it up in the latest build 4153. This is because it offers the new expressions option on the bindings system. Let me know if you want to try it when you decide to upgrade. For you an upgrade is no trivial matter considering your rig requirements so if you have a test machine to try it on first that might be a good idea. I used your MIDI file as the test conditions. At 20ms delay time it was double triggering hence the increase to 30 mS on the delay time. Here is the rack and a logic flow of what was done.

Velo Maker_415X.zip (4.4 KB)

Dave

2 Likes

Thanks Dave … I tried v4150, which was a no go (a missing function that I use in my Background Rack). On v1453 now and am working through some issues … Will dive back into this once I’m stable … THANK YOU for all your work on this!