Support

If you have a problem or need to report a bug please email : support@dsprobotics.com

There are 3 sections to this support area:

DOWNLOADS: access to product manuals, support files and drivers

HELP & INFORMATION: tutorials and example files for learning or finding pre-made modules for your projects

USER FORUMS: meet with other users and exchange ideas, you can also get help and assistance here

NEW REGISTRATIONS - please contact us if you wish to register on the forum

Users are reminded of the forum rules they sign up to which prohibits any activity that violates any laws including posting material covered by copyright

Combining two Midi events into one (Ruby midi)

For general discussion related FlowStone

Combining two Midi events into one (Ruby midi)

Postby kortezzzz » Sun Jan 24, 2016 11:42 am

I'm still looking for a decent solution for combining midi notes events with pitch-band in ruby. Eventually, The summed midi signal should be streamed from my FS exported .exe standalone application to a DAW (or any other outer midi input target) via virtual midi cable, so in this case, it would be impossible to use FS's pitch-band primitive, since its good for manipulating poly signals in synths and cannot send independent pitch manipulation command to other outer midi input targets. So far I had no success with it. Any solution caused crashes. But, here is a conceptual idea that I came to my mind and I need help with it: lets say that 2 different ruby modules generate 2 different signals: the first generates only notes and the second only reads the pitch-band that comes from the midi keyboard's pitchwheel. Their next "station" would be then a new ruby module with 2 midi inputs and a single output and it would combine them both to a single stream and would actually function as a kinda "midi mixer" (maybe by creating a new midi array based on both inputs? I have no idea...). Any chance it could be done?
Last edited by kortezzzz on Tue Jan 26, 2016 4:28 am, edited 1 time in total.
User avatar
kortezzzz
 
Posts: 763
Joined: Tue Mar 19, 2013 4:21 pm

Re: Combining to Midi events into one (Ruby midi)

Postby tulamide » Mon Jan 25, 2016 5:52 am

I probably just don't understand the real issue, because what I understood from your explanations doesn't make sense to me.

There are midi messages. Those are 2 or 3 byte blocks that are coded following the midi specifications. Anything that changes the specifications can't be send as midi. One specification is that each midi event has its own event block (for example note on, note off, balance, pan, or pitchbend).

One problem seems to be that Flowstone filters the bitchbend-event? I was already wondering why this prim exists, when you could just as well read it from the midi stream. If Flowstone completely filters it out from the midi stream (has someone tested?), then it is not so easy to work it back in because there's only the green integer for the pitchbend position, while the midi message also contains channel information and such. Also, because of green conversion, it would probably be delayed when put back to the midi-stream somehow.

Maybe something switchable via Flowstone's options, wether to receive midi as now implemented, or prohibiting the bitchbend-prim for getting an unfiltered midi stream?

Without help from Flowstone it will be an insecure implementation at least, trying to use just the green bending info.
"There lies the dog buried" (German saying translated literally)
tulamide
 
Posts: 2714
Joined: Sat Jun 21, 2014 2:48 pm
Location: Germany

Re: Combining to Midi events into one (Ruby midi)

Postby Nubeat7 » Mon Jan 25, 2016 10:11 am

this was explained already here:
viewtopic.php?f=3&t=3294&p=17614#p17614

note messages and pitchbend messages are 2 different midimessages you cannot modify the notevalues (which are ints) with pitchbendmessages inside the "midi - world"
just send the pitchbend through when it comes from the outside, or feed it into the midi signalpath when its created inside the FS app...
User avatar
Nubeat7
 
Posts: 1347
Joined: Sat Apr 14, 2012 9:59 am
Location: Vienna

Re: Combining to Midi events into one (Ruby midi)

Postby kortezzzz » Mon Jan 25, 2016 10:30 am

One problem seems to be that Flowstone filters the bitchbend-event? I was already wondering why this prim exists, when you could just as well read it from the midi stream. If Flowstone completely filters it out from the midi stream (has someone tested?), then it is not so easy to work it back in because there's only the green integer for the pitchbend position, while the midi message also contains channel information and such. Also, because of green conversion, it would probably be delayed when put back to the midi-stream somehow.


Yep, you nailed the problem. Whenever you use "midi event"+"midi split" combination and\or manipulating midi stream by using ruby (for instance, to virtually split the midi keyboard into high\low zones), it seems that the pitchband message is filtered out. That's really annoying since you can send out pure midi stream correctly to other midi-in target.
Moreover, you can't for instance add a pitch-wheel control knob into your project and make it work correctly since right now, it must be based on that "pitchband" primitive and only allow internal green integers manipulations on poly frequency and nothing else. Was hoping that ruby has a solution for that, but after following your post, I see it probably hasn't. The only way I could see is extracting the pitch-band messages from a separate "midi split" primitive and then adding it back into the general midi stream somehow (maybe by ruby?) just before the midi is sent out through. So far, no luck. Once you connect the pitchband data with the general midi stream (that contains the notes data), the whole thing just freaks out. That's why I've pondered the ruby midi mixer solution.
User avatar
kortezzzz
 
Posts: 763
Joined: Tue Mar 19, 2013 4:21 pm

Re: Combining two Midi events into one (Ruby midi)

Postby kortezzzz » Tue Jan 26, 2016 7:36 am

just send the pitchbend through when it comes from the outside, or feed it into the midi signalpath when its created inside the FS app...


@Nubeat7,

Somehow missed your reply and mentioned it only now...

Already tried the methods you've suggested and they haven't worked for me. Not sure why. Maybe it's more related to the virtual midi cable limitations and not directly to FS itself. What I've actually did is isolating the pitch-band message (status=224) by using "midi split" and "midi event" and connecting it's midi output additionally, straight to the general breaking out midi output path (which contains the notes-channel-velocity data). Maybe it's something I'm doing wrong?
User avatar
kortezzzz
 
Posts: 763
Joined: Tue Mar 19, 2013 4:21 pm


Return to General

Who is online

Users browsing this forum: No registered users and 44 guests