MIDI manipulating plug in. Im in need of a very specific plug in.

DSP, Plugin and Host development discussion.
Post Reply New Topic
RELATED
PRODUCTS

Post

So I posted about this in the effects subforum but considering I have been searching for this plug-in for ages now I'm going to assume it just doesn't exists since it really doesn't seem like something regular people with normally functioning controllers would need to do. Still, I have some slight programming background and it seems like a ridiculous simple program to make. Do any of you know of any vsts like this? If not, it shouldn't be too hard to make right? I studied programming until big data and then I dropped out, so I can program more than the absolute basic, it would take some effort but im willing to do it. This was a while ago, over half a decade.

Post

you didnt say what "this" is....
VST/AU Developer for Hire

Post

here this is->
viewtopic.php?f=6&t=535559
8D

Post

nix808 wrote: Mon Dec 02, 2019 3:35 am here this is->
viewtopic.php?f=6&t=535559
8D
So there seems to be a range of solutions already...
VST/AU Developer for Hire

Post

Lind0n wrote: Sun Dec 01, 2019 4:50 pm you didnt say what "this" is....
My use of 'this' was confusing, but I meant the need. Honestly, none of those solutions seem to do exactly what I want since pitch bend is not a regular message....or maybe I havent spent enough time trying to make it work. Either way, I would like to make it...any where you could guide me that would have an easy architecture for this type of stuff. Is Synthedit the easiest way or is there anything else out there?

Post

I had a quick look at using Flowstone for this, but yeah- it's kinda hard(not possible?) to send pitchbend with FS.
Maybe a Ruby code maestro could do it with Ruby language

I recommend using Reaktor, it can do it afaik

Post

Look into the keyboard manual. Those controls are assignable on many M-Audio devices...

Post

What TJShredder said in his message on the other thread. Pitch bend is potentially much higher rea than single meaaage controller messages.

However maybe your pitch bend knob is really only sending 128 discrete values. You could record wiggling the pitch wheel and look at it with a text midi monitor window.

If you see evidence that your kb is sending higher res than 128 values (7 bit) then converting pitch bend to mod wheel will lose resolution (14 bit to 7 bit) and mod wheel to pitch bend would output low res pitch bend.

I don't know how high res modern cheap controllers are nowadays. Maybe your pitch bend is already low res.

The mod wheel is three byte controller message, status byte, controller type byte (mod wheel), and data byte value between 0 and 127.

Pitch wheel is status byte, pitch most significant byte value 0 to 127, then pitch least significant byte value 0 to 127.

So to map mod to pitch bend you would write pitch bend status, then copy the third mod data byte as second pitch bend byte, then write zero to the third pitch bend byte. Now it is a pitch bend stream but can only have 128 values because the LSB is always zero.

Pitch bend to mod wheel, take the second pitch bend message byte (the MSB byte) and copy it to the third byte in your mod wheel controller message. You ignore the third LSB pitch bend byte, so if your controller is sending non-zero pitch bend LSB bytes then you lose resolution in the PB to Mod mapping

Now if you have a high res PB stream you could map it into a high res PAIR of mod controller messages. Send one controller message with mod wheel MSB ctrl type byte and the PB MSB data byte, then send a second controller message with mod wheel LSB ctrl type byte and the PB LSB data byte

OTOH some synths probably do not properly respond to a high res pair of MSB LSB controller messages. I don't know what the percentage of support would be nowadays.

Post

the pitch wheel has 16384 values by default I think, it sits in the middle on 8192

Post

Thank you all so much for these responses! I took studied computer science in college upto big data when I just dropped out, so I can handle stuff like JCJR is proposing. This is the product in question https://m-audio.com/products/view/keystation-61es

I think there are two important things to consider now that I think about it, first the most pertinent to something I can do.

First, I dont care if I can just disable both, that would be a good enough solution for me for now while I try to figure out if what I want to do is possible.

Second, it seems like they just soldered the pitch the mod wheel and vice versa from the factory, is that even possible?

The keyboard is in Colombia, im currently in the US but im going back in a week for a long time I think. What happens with most synths is that the pitch bend just shoots to w.e. the mod wheel is and is predictably hard to keep at zero. Spire, I found, doesnt update the pitch information often enough and it was my most used synth.

Does the physical encoder matter in this? I tried taking the keyboard apart because I do have the skills to fix it manually and solder them back together right, but its a mess taking a keyboard apart, and since its in Colombia it would be a huge hassle to get it to maudio. I just thought this information could help any solutions anybody proposes. I will be back in Colombia by next week the latest and I will start to try all these things out with that keyboard. Its not that bad of a keyboard, I like the action more than the weightless keys im using right now. I like to play keys like a regular keyboard, I dont use pitchbend or mod wheel that much so I will be more than fine just using it in that sense.

Post

nix808 wrote: Mon Dec 02, 2019 7:13 pm the pitch wheel has 16384 values by default I think, it sits in the middle on 8192
True so far as I recall. A person could Google the midi spec to verify every detail. I mean it sounds 100 percent right to my memory but haven't looked at it for many years.

So far as I recall not all pitch bend wheels will encode to an actual resolution of 16384 realizable values. Dunno what is common anymore.

For example a pitch bend wheel sensing only 128 resistor positions might transmit bytes 64 00 in the middle, 00 00 at the bottom and 127 00 at the top.

So the message can encode 16384 values from 00 * 128 + 00 up to 127 * 128 + 127, but that hypothetical keyboard only transmits values divisible by 128: 0, 128, 256, 384, etc up to a top value of 16256.

Or if the pitch wheel might be capable of sensing 512 discrete values then all the PB messages would be divisible by 32. Etc.

Easiest verified with a midi monitor window which shows the raw data bytes in addition to the computed PB value. With most sequencer event list editors you would only see the computed PB value and not the raw bytes.

I think it would be better to repair the keyboard wiring if that is what is messed up. Or maybe it is the keyboard settings as was suggested by someone else above.

Post

I can offer my Reaktor services if a hardware fix proves too elusive.
There is a module that will output the pitch bend in Primary

I think the mod wheel is cc channel 1?(this may not be, just had a quick look at an implementation I have done)

The pitch wheel values are as I read them coming in from a MIDI connection in Flowstone(nice to make ur acquaintance(once more?) JCJR)

Please keep us in the loop mgr90, strange/half curious issue

Post

Saw in the other thread that you're a Live user. Assuming you have access to Max For Live, you could probably whip this up pretty quickly given that you've already got some programming background. MIDI is SUPER easy to work with in Max when compared to audio. Naturally an evening or two of going through the first few tutorials will be necessary, but 'Hello World' level knowledge is almost enough to bang out simple MIDI effects in Max. Been a while since I've used it, but learning what an 'int' is and possibly how to unpack/repack a list should be the only tricky bits if I remember rightly.

The 14 bit vs 7 bit message thing might limit the achievable quality, but Max makes it simple enough to query what's actually being sent by each controller and the maths to rescale to the appropriate values shouldn't be too difficult. You might end up getting 7 bit pitchbend at the end of it, but it's better than nothing!

Post

no max

Post

edit see the other thread...
We are the KVR collective. Resistance is futile. You will be assimilated. Image
My MusicCalc is served over https!!

Post Reply

Return to “DSP and Plugin Development”