Using mouse emulation to control audio plugins with a MIDI controller

Hi,

I’m hoping to use MIDI Translator Pro in order to control the knobs and sliders of audio plugins with the knobs on my MIDI controller.

Basically, I’d like to click on an audio plugin’s knob or slider and use ‘mouse emulation’ so that a knob on my MIDI controller moves the plugin as if it were being moved by a mouse.

Is something like this possible to accomplish in MIDI Translator Pro without too much of a learning curve? I’m a bit intimidated by the depth of MT Pro.

Thank you for your help!

Hi and welcome to the forum!

The attached example is doen with a MIDI FIghter Twister in Enc 3F/41 mode.

There are four translators. You first position your mouse at the knob you want to control (with your mouse).

  • The first translator will perfom a click down mouse action action
  • The second translator sets a 250 ms timer. As long as you are turning the knob it will never fire but when you stop turning it for more than 250 ms, the a click up will be performed.
  • The third translator positions the knob up or down depending on the direction you are turning the knob (direction is determined in the rules)
  • Finally the 4th translator fires after 250ms of non knob movement to perform the mouse click up.

Of course your controller may be a different CC number and different relative values for calculating the knob movement but this should get you started.

MFT-Mouse-Move-Pointed-Knob-2020-12-17.bmtp (1.5 KB)

Of course if you know your screen position of the knob, and it is consistent, you cna also position the mouse prior to the click.

Steve Caldwell
Bome Customer Care


Also available for paid consulting services: bome@sniz.biz
1 Like

Hi Steve,

I really appreciate the reply!

I opened your project and I’m getting ‘MIDI In’ and ‘Mouse Out’ but my the cursor is moving around wildly. Not as expected.

I’m using a Komplete Kontrol M32. My first knob is ‘CC 14’
I’m sure this is a dumb question, but when I edit the translator CC# why don’t I see numbers? E.g. 14
I only see oo, pp, qq etc.

If your mouse is moving wildly it is likey a different encoder type so the rules, would need to be modified. I would need to see a log of what your M32 sends for that knob to be sure? Is this knob programmable? If so, it is better to select it as a relative encoder type for this purpose.

You can overwrite the oo,pp qq etc (which are local variables) by just typing in the number into the field.
Alternatively you can capture the incoming message and then by clicking it, it will paste into the incoming field and then you can edit any changes you want from there.

Steve Caldwell
Bome Customer Care


Also available for paid consulting services: bome@sniz.biz
1 Like

Hi Steve,

Here is the M32 log:

1: MIDI IN [KOMPLETE KONTROL M32]: B0 0E 70
2: MIDI IN [KOMPLETE KONTROL M32]: B0 0E 71
3: MIDI IN [KOMPLETE KONTROL M32]: B0 0E 72
4: MIDI IN [KOMPLETE KONTROL M32]: B0 0E 73
5: MIDI IN [KOMPLETE KONTROL M32]: B0 0E 74
6: MIDI IN [KOMPLETE KONTROL M32]: B0 0E 75
7: MIDI IN [KOMPLETE KONTROL M32]: B0 0E 76
8: MIDI IN [KOMPLETE KONTROL M32]: B0 0E 77
9: MIDI IN [KOMPLETE KONTROL M32]: B0 0E 78
10: MIDI IN [KOMPLETE KONTROL M32]: B0 0E 79
11: MIDI IN [KOMPLETE KONTROL M32]: B0 0E 7A
12: MIDI IN [KOMPLETE KONTROL M32]: B0 0E 7B
13: MIDI IN [KOMPLETE KONTROL M32]: B0 0E 7C
14: MIDI IN [KOMPLETE KONTROL M32]: B0 0E 7D
15: MIDI IN [KOMPLETE KONTROL M32]: B0 0E 7E
16: MIDI IN [KOMPLETE KONTROL M32]: B0 0E 7F

Thank you again!

OK, do you know if the encoder is programmable. Right now it is sending absolute values.
If you continue turning right after it displays B0 0E 7F, does it continue to send more B0 0E 7F?
If you continue turning left after it dsiplays B0 0E 00, does it continue to send more B0 0E 00?

Steve Caldwell
Bome Customer Care


Also available for paid consulting services: bome@sniz.biz
1 Like

The Komplete Control M32 Manual says that knobs can be assigned. See section 9.7.2. Assign the knob for one of the relative types and then show me another log capture.

Steve Caldwell
Bome Customer Care


Also available for paid consulting services: bome@sniz.biz
1 Like

Hi Steve,

I set the knobs to ‘relative’ and now I get this log:

1: MIDI IN [KOMPLETE KONTROL M32]: B0 0E 01
2: MIDI IN [KOMPLETE KONTROL M32]: B0 0E 7F

Thanks again for your help!

Hi,

This project should work. I modified the calculations for your new encoder programming.

M32-Mouse-Move-Pointed-Knob-2020-12-17.bmtp (1.9 KB)

Steve Caldwell
Bome Customer Care


Also available for paid consulting services: bome@sniz.biz
1 Like

Wow! Thank you so much. This seems to be working great except that it is reversed. The plugin knobs are turning in the opposite direction that they should.

Could you point me to where I’d need to go in order to reverse the control?

Thank you again!

Hi Just a few rule changes on translator 0.2

Old Rules

if qq<64 then tt=qq
if qq>64 then tt=128-qq
if qq>64 then tt=tt*-1

New Rules

if qq<64 then tt=qq*-1
if qq>64 then tt=128-qq

Here is the updated file
M32-Mouse-Move-Pointed-Knob-2020-12-17a.bmtp (1.9 KB)

Steve Caldwell
Bome Customer Care


Also available for paid consulting services: bome@sniz.biz
1 Like

Thank you so much! I’ve just testing several plugins and it seems to work great.

The only thing that isn’t working are sliders or any controls that move from left to right.
Would it be difficult to make MIDI CC 15 work from left to right?

My thinking is that I could use knob 1 (MIDI CC 14) on the M32 for Up/Down and knob 2 (MIDI CC 15) for Left/Right control. That would cover every base I think.

Does that make sense / sound possible?

Thank you again for your help and wizardry!

Sure,

Copy the mouse movement translators and then change from CC14 to CC15.
On the new one called drag mouse, change the outgoing action tt from Down/Up to Right/Left and then put 0 in Down/Up field.

mouse-movement

Steve Caldwell
Bome Customer Care


Also available for paid consulting services: bome@sniz.biz
1 Like

I think I did it right. Am I correct that I needed to duplicate every translator except for ‘Timer - Up Click’ ?

I did that and everything is working great except that the left/right movement is backwards. Is that a simple fix?

Thanks!

Change the rules back to the old rules that I had for up/down movement. Then it should work.

1 Like

Perfect! You are the best.

Glad to have been of help!

1 Like

I have been testing this out for a while, and MT Pro is doing everything I’d hoped. The only issue I’ve come across is that occasionally some plugins respond very slowly to the knob movement. Most are working great at the current settings.

If you don’t mind me annoying you with one more question: What is the simplest way to change the speed of movement?

Thank you again for all of your patience with me today. I really appreciate it!

My pleasure!

1 Like

Put a multiplier on the mouse movement before sending it out.

like tt=tt*3

1 Like