Bome's Mouse Keyboard has a chord editor, which lets you define your own chords. IMO, it makes it very easy to turn keys into any chord. However, this solution lacks flexibility, since every key will use the same chord definition.
Using Midi Translator Pro, you can use the translation Keystroke to MIDI for defining arbitrary chords. As you expected, it's more complicated to define the chords in MT Pro, but you have much more flexibility. For example, you can define different chords for different keys. An example:
Code: Select all
Translator 1: Key to Major Chord On
Incoming: Key down: X
Outgoing: MIDI 90 pp 7F qq 7F rr 7F
Translator 2: Key to Major Chord Off
Incoming: Key up: X
Outgoing: MIDI 90 pp 00 qq 00 rr 00
This example will play a major chord when pressing the X key. The rules will first initialize the variable pp with the base key to play (64). Then, the other keys to be played are defined: qq with the third, and rr with the fifth. The Outgoing will send 3 MIDI Note On commands (using running status). For key release, the same is done, but with velocity 0 to stop the playing note.
You can easily use copy/paste for defining other keys. Just change the keystroke and the first rule (pp=...) to different values. If you want to define other chords, change the "qq=..." and "rr=..." rules. You can also add notes to be played in the chord (just continue with variables ss, tt, ...) and append that to the outgoing MIDI string.
A different way is to use a combination of Mouse Keyboard and Midi Translator:
use mouse keyboard for playing the notes, and use Midi Translator's MIDI to MIDI translation to generate the custom chords, e.g. to play a minor chord whenever you play a note C:
Code: Select all
Translator 1: MIDI note C to minor chord
Incoming: MIDI 90 pp vv
if xx!=0 then exit rules, skip Outgoing Action
Outgoing: MIDI 90 pp vv qq vv rr vv
This translator will react on any Note On and Note Off command. The first 4 rules will calculate the relative note number from 0..11 in xx, i.e. the note independent of the octave. Then, if the note is not 0 (which is the note C), then this Translator will not be executed. The remaining 2 rules are as above, they construct the minor chord. The outgoing action will send the minor chord to the MIDI device. Of course, for this setup to work, you need to use a virtual MIDI driver to connect Mouse Keyboard's MIDI out with Midi Translator's MIDI IN.
This way, you can define different chords for all the keys more easily.