Hi! I'm planning on building a controller with a multi touch tablet that I have.
I will need to write a program to handle the finger inputs and map them to tones ect.
But, I don't want to write my own synthesizer, this software should only output finger push 1 = C, finger push 2 =  A# ect rather than generating the actual sound waves.

I'd prefer to hook it up with FL studio or any other (free) suitable program, as a plugin, so that I can use that software for mixing sounds/instruments.

Can anyone point me in the right direction here, perhaps suggest a software, and where to find tutorials?
Hope I've come to the right forum!

Thanks in advance! smile

Sounds like you want to use something like TouchOSC to create a custom layout.
https://hexler.net/software/touchosc-android

Hi veclock,

If you want to use your tablet as a midi controller, so it will allow you to send 'note on', 'note off' and 'cc' message, you should read a bit about midi protocol and then try to send midi message from your tablet.

Unfortunately I don't know a free one, maybe touchdaw free on android do the tricks, you just need to send basic note on note off to start. Then receive the midi message with for example midiox on windows.

It will help you to understand the midi protocol better.
And the average latency you can expect from your tablet.

Then you can write native code or java code, it depend on your way to work software.

Hi Toasterpastries and yoyz2k, thanks for your answers!

The tablet that I have is not an Android one (sorry for the confusion), it's a freestanding touch tablet for the PC, it's called a Sensel Morph.
TouchOSC would've been a good choice if I used Android! But I don't think it will work in my case.

Hmm yeah perhaps I should read more about the Midi protocol. It could work. At least initially, because I'd like to send at least 2 different pitch bends for each note (along with velocity). I know that Midi can send velocity, but I'm not sure if the protocol can handle two more values.

Seems like what I'm trying to do is a VST plugin. (Yeah, I'm very noob)
Apart from figuring out how to make the actual VST plugin, I also need to figure out which software to plug it into. It should be a software that can receive signals with notes, velocity and pitch bends, and then convert it to sound.

Do you have any suggestions?

Thanks again!

VSTs talk to each other with MIDI, so MIDI "has" to be good enough for you if you want to make a VST

creating a vst plugin is honestly a very very complicated thing to do if you haven't done programming before

but it looks like the sensel has MIDI functionality built right into it http://www.sensel.com/music

smile

wait, why would you be sending two simultaneous pitch bends? if they're on the same midi channel, i don't think that's even possible, not sure what/how you're expecting to do with that.. a chord where youre bending the pitch up for one of the notes and down for another at the same time?

right pitch bend is global for all notes per channel. a way around this is having each finger send on a different channel (midi guitars work this way) and then your synth will have to respond to omni or those channels, and maybe ignore the older bends?

this is a pretty ambitious project.  good luck

sandneil:
Good info! I've done alot of programming, for 15 years I think. But just getting started with audio programming. I think it will work out.
So then MIDI is the way to go! (That, or writing the program as a stand alone rather than a VST)

e.s.c: Two pitch bends would allow me to have one ordinary pitch bend for a tone, the other bend would allow me to have some other effect, perhaps mixing between instruments or something like that. Is it possible to have two signals of this sort in a MIDI signal?


herr_prof: I see! Thanks for that info, I will keep that in mind. Good to find a place where I learn valuable stuff! smile

infradead: Thank you! smile

veclock wrote:

Is it possible to have two signals of this sort in a MIDI signal?

Yes. Look up continuous controller or 'MIDI CC' messages. You can have many more than 2 per channel.

Knife Crimes wrote:

Yes. Look up continuous controller or 'MIDI CC' messages. You can have many more than 2 per channel.

Awesome! Thank you. smile

Do you have any suggestions on softwares that I can plug the VST into? Perhaps FL Studio works, but it would be nice to know about other options. Options that are free and simple/user friendly.

BTW: I found a nice framework called JUCE, which I will use smile

Last edited by veclock (Mar 16, 2017 12:04 pm)

yeah, knife crimes is correct. midi cc is what's typically used for effects (and things like volume control, adjusting oscillator settings, etc), midi allows for up to 128 different midi cc's per channel
edit: it may be easier if you stop thinking of this as a VST, since what you're describing is a software based midi controller, not really a VST (vsts are pretty much only either a software instrument or effect unit)

e.s.c.:
Yeah, not sure about what word to use. It depends, right? The software should handle the finger pushes and output MIDI-signals. Then the software should be plugged into FL studio or any other software which can take the MIDI signals and turn them into sound. Alternatively, my software could generate the sound itself and not output any signals to a second program.

I'd prefer to output signals because generating my own sounds (building a synthesizer) will take a long time.
From what I understand, a VST is a software that plugs into another software, that you can connect to other controllers?

But yeah, what I'm trying to create is a software instrument.

You might want to look at the Reaper DAW too.  It has a scripting language built-in specifically for making your own plug-ins, with midi, sample, timing and UI commands.   Have a look at the syntax.   I've used it myself for writing a few work things and you can edit them real-time within the DAW, though obviously your plug-in is then tied to Reaper.  Reaper can be downloaded for free evaluation.

veclock wrote:

e.s.c.:
Yeah, not sure about what word to use. It depends, right? The software should handle the finger pushes and output MIDI-signals. Then the software should be plugged into FL studio or any other software which can take the MIDI signals and turn them into sound. Alternatively, my software could generate the sound itself and not output any signals to a second program.

I'd prefer to output signals because generating my own sounds (building a synthesizer) will take a long time.
From what I understand, a VST is a software that plugs into another software, that you can connect to other controllers?

But yeah, what I'm trying to create is a software instrument.

from wikipedia: "Virtual Studio Technology (VST) is a software interface that integrates software audio synthesizer and effect plugins with audio editors and recording systems.", so not all software that interacts with other audio software is a vst. i'm only bringing this up because using the correct terminology while searching for help is incredibly important. for example, midi ox is software that allows you to help route and manage midi signals, but is not a VST. that's part of why people thought you were biting off more than you can chew, since coding a vst from scratch is pretty complex compared to what it turns out you actually want to do.. if you made it so it generated the sounds itself, but still was a plugin (not a standalone like your second example), then it would be a VST

4mat: Thanks for the info! However, I want a free program!

e.s.c.: Sorry, I think I was confusing VST with VST plugin. I meant a VST plugin. If my software generates the sounds itself it wont have to be a plugin I guess. If it only outputs signals then it will have to be a plugin so that the main software (the VST I guess?) in turn can generate the sounds.

Did I get everything correct this time? big_smile