editing midi in a softsynth

Programming applications for making music on Linux.

Moderators: MattKingUSA, khz

Post Reply
User avatar
nae
Established Member
Posts: 14
Joined: Wed Mar 07, 2012 6:55 pm

editing midi in a softsynth

Post by nae »

I have an old synth that I am using as a midi controller for AVLinux. While I like the feel of the keys, this synth does not provide a transpose feature. I know that there are some midi applications that can do the transposing, but I got thinking. If I wanted to change the midi keymapping in the soft synth code itself (in this instance AZR3) how would I get started? What programs would I use? Where in the code would I look?
I am not necessarilly looking to be spoon fed, but would appreciate any links to tutorials, guides, etc...... and any real-world-experience suggestions.

Thanks in advance

Neal
ssj71
Established Member
Posts: 1294
Joined: Tue Sep 25, 2012 6:36 pm
Has thanked: 1 time

Re: editing midi in a softsynth

Post by ssj71 »

Looks like you can download the code here: http://ll-plugins.nongnu.org/azr3/

Without doing the research for you, I think you have 2 places where you could apply this in the synth code. You can either adjust the midi data that comes in, or you can change how the synth responds to a midi note on command (issuing a different frequency note). I would think the first would be the easiest. Look in the code to see which function does the port connections and which handles the main processing. Identify which variable the midi in will come as (look for stuff regarding events) and where they are processed. You can then either make a new variable called something like transpose and assign it a midi CC to it so you can change it with your controller, or you could hard code a value in. Add transpose to the midi note before it gets processed and that should work for you.

Like I say, I haven't looked at the code, but hopefully that gives you some clues on what to look for and do. Good luck and have fun.
_ssj71

music: https://soundcloud.com/ssj71
My plugins are Infamous! http://ssj71.github.io/infamousPlugins
I just want to get back to making music!
Post Reply