Old 06-17-2019, 07:32 PM   #1
pipelineaudio
Mortal
 
pipelineaudio's Avatar
 
Join Date: Jan 2006
Location: Wickenburg, Arizona
Posts: 14,047
Default RME Totalmix help

Totalmix allows you to use F-Keys to control certain functions. In my case, it allows me to fire up the talkback with F8!

However, if totalmix is not the app of focus, it ignores those keystrokes. Is there some way to send F8 to totalmix no matter what is in focus?

I'm running windows 10
pipelineaudio is offline   Reply With Quote
Old 06-17-2019, 11:48 PM   #2
BlackScreen
Human being with feelings
 
Join Date: Dec 2016
Posts: 55
Default

Quote:
Originally Posted by pipelineaudio View Post
Totalmix allows you to use F-Keys to control certain functions. In my case, it allows me to fire up the talkback with F8!

However, if totalmix is not the app of focus, it ignores those keystrokes. Is there some way to send F8 to totalmix no matter what is in focus?

I'm running windows 10
You could write a little script with AutoHotkey or AutoIt - I would prefer the first one. I use AHK for small things and it works great. For that kind of thing, it works very well.
BlackScreen is offline   Reply With Quote
Old 06-18-2019, 09:31 AM   #3
pipelineaudio
Mortal
 
pipelineaudio's Avatar
 
Join Date: Jan 2006
Location: Wickenburg, Arizona
Posts: 14,047
Default

Man I kept thinking Art Evans when I was worried about this, he would have an AHK solution and there it is!

But I don't understand how it would do it exactly.

It sure would be nice to save the 200 dollars the RME ARC thing would be just for that one key for me

Where can I learn how to use AHK for this?
pipelineaudio is offline   Reply With Quote
Old 06-18-2019, 09:56 AM   #4
karbomusic
Human being with feelings
 
karbomusic's Avatar
 
Join Date: May 2009
Posts: 29,260
Default

There's a thread here somewhere by Endorka where they set up Reaper to toggle talkback in TotalMix from Reaper using either MIDI or OSC FYI. It won't cover non-reaper apps though. I'm 99% sure I could build an arduino with a button that did this over MIDI just as a geeky side discussion which would be global to the machine - then again I'd imagine any MIDI controller button could do this.
__________________
Music is what feelings sound like.
karbomusic is offline   Reply With Quote
Old 06-18-2019, 09:57 AM   #5
karbomusic
Human being with feelings
 
karbomusic's Avatar
 
Join Date: May 2009
Posts: 29,260
Default

https://forum.cockos.com/showthread.php?t=220675
__________________
Music is what feelings sound like.
karbomusic is offline   Reply With Quote
Old 06-18-2019, 12:57 PM   #6
pipelineaudio
Mortal
 
pipelineaudio's Avatar
 
Join Date: Jan 2006
Location: Wickenburg, Arizona
Posts: 14,047
Default

Oh man, that is killer!

I just want to do a manual one and have the toolbar reflect the current state of talkback, is that possible?
pipelineaudio is offline   Reply With Quote
Old 06-18-2019, 01:03 PM   #7
karbomusic
Human being with feelings
 
karbomusic's Avatar
 
Join Date: May 2009
Posts: 29,260
Default

Quote:
Originally Posted by pipelineaudio View Post
Oh man, that is killer!

I just want to do a manual one and have the toolbar reflect the current state of talkback, is that possible?
I don't know, I just help spitball in that thread.
__________________
Music is what feelings sound like.
karbomusic is offline   Reply With Quote
Old 06-18-2019, 11:07 PM   #8
pipelineaudio
Mortal
 
pipelineaudio's Avatar
 
Join Date: Jan 2006
Location: Wickenburg, Arizona
Posts: 14,047
Default

I cannot for the life of me, get autohotkey to work when totalmix isn't in focus


SetTitleMatchMode, 2 ; Allows for partial match on program name
#IfWinExist, Totalmix ; Only if Totalmix is running will the rest do anything
;~ Get the unique ID of each target window in the even there is more than 1
WinGet, ProgID, List, Totalmix ; Detect how many open already
;~ Send to the first of the detected windows whos name is a match
F12:: ControlSend,, {F8}, ahk_id %ProgID1%
return
pipelineaudio is offline   Reply With Quote
Old 06-19-2019, 07:08 AM   #9
Philbo King
Human being with feelings
 
Philbo King's Avatar
 
Join Date: May 2017
Posts: 3,202
Default

RME can be controlled by Midi, though I don't know if there's a Midi version of whatever the F8 key does.
__________________
Tangent Studio - Philbo King
www.soundclick.com/philboking - Audio streams
Philbo King is online now   Reply With Quote
Old 06-19-2019, 09:28 AM   #10
pipelineaudio
Mortal
 
pipelineaudio's Avatar
 
Join Date: Jan 2006
Location: Wickenburg, Arizona
Posts: 14,047
Default

It’s crazy, but even today, I’m having trouble finding a way of even sending a midi message from the keyboard. Rme made the midi input for this function a midi note, strangely, so that makes it all the more difficult. Otherwise I could use my Midas m32 to control it
pipelineaudio is offline   Reply With Quote
Old 06-19-2019, 10:32 AM   #11
pipelineaudio
Mortal
 
pipelineaudio's Avatar
 
Join Date: Jan 2006
Location: Wickenburg, Arizona
Posts: 14,047
Default

Man this is mind blowing how difficult this actually is! it seems purposely limited so they can sell those ARC things, maybe, but ARC would only be for that button for me, because of my setup, the rest of it would be useless

I might be able to control it from my M32, or even a note from my Korg Nanokey, but sheesh!
pipelineaudio is offline   Reply With Quote
Old 06-19-2019, 01:51 PM   #12
BlackScreen
Human being with feelings
 
Join Date: Dec 2016
Posts: 55
Default

I have written a little GUI for me to use with TotalMix. My functions and config is as follows:

Default Keys:
Ctrl+M: TotalMix-Fenster - Mixer View
Ctrl+X: TotalMix-Fenster - Matrix View

Function Keys (to configure in "ARC & Key Command Settings" in TotalMix):
F4: Snapshot 1 - Load
F5: Mute Group 1 - Toggle
F6: Mute Group 2 - Toggle
F7: Fader Group 1 - Toggle
F8: Fader Group 2 - Toggle

Here is the complete AHK code - it is in German, but it should work for you either way.
It is probably not fool proof, I had TotalMix open when testing and using it, but yeah... It worked for me. Have fun with it!

; Erzwinge nur eine laufende Instanz
#SingleInstance, Force

; Skript-Name definieren
script_name = TotalMix-Shortcuts

; GUI-Größe definieren
GUI_WIDTH = 350
GUI_HEIGHT = 230
GUI_X_POS := A_ScreenWidth - GUI_WIDTH
GUI_Y_POS := 0

; GUI definieren und anzeigen
Gui, Add, GroupBox, x10 y10 w330 h60, TotalMix-Fenster
Gui, Add, Button, gButtons vViewButton1 x20 y30 w150 h30, Mixer View
Gui, Add, Button, gButtons vViewButton2 x180 y30 w150 h30, Matrix View
Gui, Add, GroupBox, x10 y80 w330 h140, Shortcuts
Gui, Add, Button, gButtons vSnapshotButton x20 y100 w310 h30, Snapshot 1 laden
Gui, Add, Button, gButtons vMuteButton1 x20 y140 w150 h30, Mute-Gruppe 1 - ON / OFF
Gui, Add, Button, gButtons vMuteButton2 x20 y180 w150 h30, Mute-Gruppe 2 - ON / OFF
Gui, Add, Button, gButtons vFaderButton1 x180 y140 w150 h30, Fader-Gruppe 1 - ON / OFF
Gui, Add, Button, gButtons vFaderButton2 x180 y180 w150 h30, Fader-Gruppe 2 - ON / OFF
Gui, Show, x%GUI_X_POS% y%GUI_Y_POS% h%GUI_HEIGHT% w%GUI_WIDTH%, %script_name%
Return

; Button-Aktivierungen auswerten und Shortcuts senden
Buttons:
if (A_GuiControl == "ViewButton1") {
WinActivate, ahk_exe TotalMixFX.exe
SendInput, {Ctrl Down}m{Ctrl Up}
} else if (A_GuiControl == "ViewButton2") {
WinActivate, ahk_exe TotalMixFX.exe
SendInput, {Ctrl Down}x{Ctrl Up}
} else if (A_GuiControl == "SnapshotButton") {
WinActivate, ahk_exe TotalMixFX.exe
SendInput, {F4}
} else if (A_GuiControl == "MuteButton1") {
WinActivate, ahk_exe TotalMixFX.exe
SendInput, {F5}
} else if (A_GuiControl == "MuteButton2") {
WinActivate, ahk_exe TotalMixFX.exe
SendInput, {F6}
} else if (A_GuiControl == "FaderButton1") {
WinActivate, ahk_exe TotalMixFX.exe
SendInput, {F7}
} else if (A_GuiControl == "FaderButton2") {
WinActivate, ahk_exe TotalMixFX.exe
SendInput, {F8}
}
Return

; Anwendung schließen, wenn GUI geschlossen wird
GuiClose:
ExitApp

; Verlasse das Programm
ExitApp
BlackScreen is offline   Reply With Quote
Old 06-19-2019, 02:10 PM   #13
BlackScreen
Human being with feelings
 
Join Date: Dec 2016
Posts: 55
Default

I should add that I am not an expert on AHK.
I heard from it from a colleague at work and learned it from there by trying and googling.
So please don‘t ask too much. I use it for small scripts for me and it works really well. It is probably most of the time not programmed efficiently and elegantly, but it works. For me anyway.

The script above was to try the possibility of connecting AHK and TotalMix - with a GUI in this case, but it does not make 100% sense. It was just a test, but a succesfull one.

AHK is a very versatile tool - you can almost do anything you want with it. I read and saw crazy things. You can even send MIDI with AHK but I don‘t know how - my colleague did that, afaik.
BlackScreen is offline   Reply With Quote
Old 06-19-2019, 02:33 PM   #14
pipelineaudio
Mortal
 
pipelineaudio's Avatar
 
Join Date: Jan 2006
Location: Wickenburg, Arizona
Posts: 14,047
Default

That is very cool!

My biggest issue is that AHK is working fine with it, when Totalmix is the active window, but does not talk to it at all if it is in the background

When I get to work I will try your script, sounds awesome!
pipelineaudio is offline   Reply With Quote
Old 06-20-2019, 02:16 AM   #15
BlackScreen
Human being with feelings
 
Join Date: Dec 2016
Posts: 55
Default

I have written the script you could use.
I could not get the ControlSend to work either - I don't know why. It should work...
Anyway, with a little workaround, it works. Here is the script - comments again in german. But you will understand it, I guess.

; Erzwinge nur eine laufende Instanz
#SingleInstance, Force

; "F12" wurde gedrückt
F12::

; Speichere die ID des aktuell aktiven Fensters in einer Variable ab
WinActivate
ActiveWindow_ID := WinExist("A")

; Starte TotalMix FX, wenn das Programm noch nicht läuft
if (!WinExist("ahk_exe TotalMixFX.exe")) {
if (FileExist("C:\Windows\System32\TotalMixFX.exe")) {
Run, "C:\Windows\System32\TotalMixFX.exe"
} else if (FileExist("C:\Windows\SysWOW64\TotalMixFX.exe")) {
Run, "C:\Windows\SysWOW64\TotalMixFX.exe"
}
}

; Finde die ID des TotalMix FX Fensters und speichere die ID in einer Variable ab
WinGet, TotalMixFX_Program_List, List, ahk_exe TotalMixFX.exe
TotalMix_ID := TotalMixFX_Program_List%TotalMixFX_Program_List%

; Aktiviere das TotalMix FX Fenster
WinActivate, ahk_id %TotalMix_ID%

; Sende Tastatur-Input an das Fenster
SendInput, {F8}

; Aktiviere danach das zuvor geöffnete Fenster
WinActivate, ahk_id %ActiveWindow_ID%

return
BlackScreen is offline   Reply With Quote
Old 06-20-2019, 11:19 AM   #16
pipelineaudio
Mortal
 
pipelineaudio's Avatar
 
Join Date: Jan 2006
Location: Wickenburg, Arizona
Posts: 14,047
Default

Anyone know why two of my channels here have this orange color on them?

pipelineaudio is offline   Reply With Quote
Old 06-20-2019, 12:31 PM   #17
BlackScreen
Human being with feelings
 
Join Date: Dec 2016
Posts: 55
Default

Quote:
Originally Posted by pipelineaudio View Post
Anyone know why two of my channels here have this orange color on them?
That is probably because you activated controlling over Midi. You can see the symbol there also.
BlackScreen is offline   Reply With Quote
Old 06-20-2019, 02:25 PM   #18
pipelineaudio
Mortal
 
pipelineaudio's Avatar
 
Join Date: Jan 2006
Location: Wickenburg, Arizona
Posts: 14,047
Default

Does this show that I have midi control over only those two faders? Is there somewhere i can read about this? Its not in the totalmix manual for my particular interface (Digiface USB)
pipelineaudio is offline   Reply With Quote
Old 06-20-2019, 08:58 PM   #19
BlackScreen
Human being with feelings
 
Join Date: Dec 2016
Posts: 55
Default

Quote:
Originally Posted by pipelineaudio View Post
Does this show that I have midi control over only those two faders? Is there somewhere i can read about this? Its not in the totalmix manual for my particular interface (Digiface USB)
Check page 42 and 47 in the PDF from the RME page. Probably other channels are hidden (page 42).
BlackScreen is offline   Reply With Quote
Old 06-20-2019, 09:14 PM   #20
pipelineaudio
Mortal
 
pipelineaudio's Avatar
 
Join Date: Jan 2006
Location: Wickenburg, Arizona
Posts: 14,047
Default

I dont see anything on either page about saying which channels will be colored like that.

I am running MCU protocol, but I didnt say I wanted to control the first two faders or anything, still not exactly sure what's going on
pipelineaudio is offline   Reply With Quote
Old 06-20-2019, 10:44 PM   #21
pipelineaudio
Mortal
 
pipelineaudio's Avatar
 
Join Date: Jan 2006
Location: Wickenburg, Arizona
Posts: 14,047
Default

Quote:
Originally Posted by BlackScreen View Post
I have written the script you could use.
I could not get the ControlSend to work either - I don't know why. It should work...
Anyway, with a little workaround, it works. Here is the script - comments again in german. But you will understand it, I guess.

; Erzwinge nur eine laufende Instanz
#SingleInstance, Force

; "F12" wurde gedrückt
F12::

; Speichere die ID des aktuell aktiven Fensters in einer Variable ab
WinActivate
ActiveWindow_ID := WinExist("A")

; Starte TotalMix FX, wenn das Programm noch nicht läuft
if (!WinExist("ahk_exe TotalMixFX.exe")) {
if (FileExist("C:\Windows\System32\TotalMixFX.exe")) {
Run, "C:\Windows\System32\TotalMixFX.exe"
} else if (FileExist("C:\Windows\SysWOW64\TotalMixFX.exe")) {
Run, "C:\Windows\SysWOW64\TotalMixFX.exe"
}
}

; Finde die ID des TotalMix FX Fensters und speichere die ID in einer Variable ab
WinGet, TotalMixFX_Program_List, List, ahk_exe TotalMixFX.exe
TotalMix_ID := TotalMixFX_Program_List%TotalMixFX_Program_List%

; Aktiviere das TotalMix FX Fenster
WinActivate, ahk_id %TotalMix_ID%

; Sende Tastatur-Input an das Fenster
SendInput, {F8}

; Aktiviere danach das zuvor geöffnete Fenster
WinActivate, ahk_id %ActiveWindow_ID%

return
This works perfect! Now I just gotta figure a way to sync a reaper icon to it
pipelineaudio is offline   Reply With Quote
Old 06-21-2019, 08:19 AM   #22
BlackScreen
Human being with feelings
 
Join Date: Dec 2016
Posts: 55
Default

Quote:
Originally Posted by pipelineaudio View Post
This works perfect! Now I just gotta figure a way to sync a reaper icon to it
I think you have to compile the script to an EXE for that. At least I know that works.
BlackScreen is offline   Reply With Quote
Old 06-21-2019, 02:27 PM   #23
pipelineaudio
Mortal
 
pipelineaudio's Avatar
 
Join Date: Jan 2006
Location: Wickenburg, Arizona
Posts: 14,047
Default

According to the Totalmix FX manual, I should be able to control certain Totalmix FX functions with MIDI notes.

I have tried several midi interfaces and controllers with no luck.

Controlling it thru MCU mode does work however. Anyone able to get MIDI notes to work?

"22.5 MIDI Control
The hardware output set up as Main Out can be controlled by the standard Control Change
Volume via MIDI channel 1. With this, the main volume of the Digiface USB is controllable from
nearly any MIDI equipped hardware device.
Even if you don't want to control all faders and pans, some buttons are highly desirable to be
available in 'hardware'. These are mainly the Talkback and the Dim button, and the monitoring
options (listen to Phones submixes). Fortunately a Mackie Control compatible controller is not
required to control these buttons, as they are steered by simple Note On/Off commands on
MIDI channel 1.
The notes are (hex / decimal / keys):
Dim: 5D / 93 / A 6
Mono: 2A / 42 / #F 2
Talkback: 5E / 94 / #A 6
Recall: 5F / 95 / H 6
Speaker B: 32 / 50 / D3
Cue Main Out: 3E / 62 / D 4
Cue Phones 1: 3F / 63 / #D 4
Cue Phones 2: 40 / 64 / E 4
Snapshot 1: 36 / 54 / #F 3
Snapshot 2: 37 / 55 / G 3
Snapshot 3: 38 / 56 / #G 3
Snapshot 4: 39 / 57 / A 3
Snapshot 5: 3A / 58 / #A 3
Snapshot 6: 3B / 59 / B 3
Snapshot 7: 3C / 60 / C 4
Snapshot 8: 3D / 61 / #C 4
Trim Gains: 2D / 45 / A 2
Master Mute: 2C / 44 / #G2
Master Solo: 2B / 43 / G2"
pipelineaudio is offline   Reply With Quote
Old 06-21-2019, 03:24 PM   #24
dmartinyesyes
Human being with feelings
 
Join Date: Nov 2018
Posts: 43
Default The orange color on totalmix channels

The coloring on the channels show which channels are being displayed/controlled by your controller; in my case I use a Mackie control for totalmix,hence 8 channels are colored. the sends button selects the first 8 sends ; bank buttons moves the selection. The i/o button selects, well, the inputs or outputs. There is a box in the settings Midi section to allow or disable control in the background.
dmartinyesyes is offline   Reply With Quote
Old 06-21-2019, 03:26 PM   #25
pipelineaudio
Mortal
 
pipelineaudio's Avatar
 
Join Date: Jan 2006
Location: Wickenburg, Arizona
Posts: 14,047
Default

Quote:
Originally Posted by dmartinyesyes View Post
The coloring on the channels show which channels are being displayed/controlled by your controller; in my case I use a Mackie control for totalmix,hence 8 channels are colored. the sends button selects the first 8 sends ; bank buttons moves the selection. The i/o button selects, well, the inputs or outputs. There is a box in the settings Midi section to allow or disable control in the background.
Thank you!
pipelineaudio is offline   Reply With Quote
Old 06-21-2019, 03:40 PM   #26
BlackScreen
Human being with feelings
 
Join Date: Dec 2016
Posts: 55
Default

Quote:
Originally Posted by pipelineaudio View Post
According to the Totalmix FX manual, I should be able to control certain Totalmix FX functions with MIDI notes.
I have tried several midi interfaces and controllers with no luck.
Controlling it thru MCU mode does work however. Anyone able to get MIDI notes to work?
Well I did get that to work with a X-Touch Mini from Behringer - but not without a little help from Bome MIDI Translator Pro.
I tested it with a few key commands, you can see them in this screenshot.



Without Bome, I did not get it to work properly. With Bome I get 16 channels with fader movement from the potis (including reset to 0 dB when pressing it), solo and mute buttons. Nice and compact if one needs it.
With Bome and the X-Touch I also can control the ATEM switcher from Blackmagic or also REAPER. I also did build a nice setup for live mixing with REAPER and a 01V96 as the controller - also through Bome. But this is beyond this topic.
Hope my screenshot helps you a little bit. I had a hard time figuring out to get it to work...
BlackScreen is offline   Reply With Quote
Old 08-19-2022, 10:48 AM   #27
Miscreant
Human being with feelings
 
Miscreant's Avatar
 
Join Date: Mar 2012
Posts: 375
Default

I'm jumping into this thread as it's pretty relevant to what I'm trying to tackle right now:

I want a script where Reaper will send a midi message to TotalMix (via my Fireface 800 as the midi device) to change the current snapshot from 1 to 2. I am also using the ARC USB as a remote controller, and I am hoping that sending this midi message would not disable it.

Either way, here is a script I am currently using to change patches on my Axe FX:

/*
Send Program Change to AxeFX
*/
// EEL Script for Reaper

/*
8 = Note Off
9 = Note On
10 = AfterTouch (ie, key pressure)
11 = Control Change
12 = Program (patch) change
13 = Channel Pressure
14 = Pitch Wheel
*/


msg_type = 12; // Program Change
channel = 0;
function main ()
(
StuffMIDIMessage(29, msg_type*16 + channel, 100, 127);
);

main ();

I am wondering if this can be modified to control snapshot changes on TotalMix?
The first thing that is tripping me up is I don't know what type of midi message is to be sent, and I do not really understand how to interpret RME's code for snapshot changes:

Snapshot 1: 36 / 54 / #F 3
Snapshot 2: 37 / 55 / G 3

Can anyone help push me along?

*Edit:

So I've made some progress. I've managed to control TotalMix from my midi keyboard via Reaper. So I can confirm that I can send midi note on/off commands to switch snapshots on TotalMix.

Now I am looking to incorporate this into an .eel script, like the one I pasted above. It would appear I have to make the following changes:

msg type = 9; // Note On (do I also need to include 8, note off?)
channel = 0;

And this is where I get confused:

function main ()
(
StuffMIDIMessage(x, msg_type*16 + channel, x, x);
);

main ();

My Fireface 800 has ID 3 in my midi devices preferences. So since according to the reascript API 16 = midi device 0, 17 = midi device 1, etc., the first 'x' should be 19 (16 + 3).

But I am unsure how else to fill in the command?

Last edited by Miscreant; 08-19-2022 at 02:17 PM.
Miscreant is offline   Reply With Quote
Old 08-19-2022, 05:28 PM   #28
EcBaPr
Human being with feelings
 
Join Date: Aug 2009
Posts: 402
Default

I'm curious... what is the use case where you need this to be in a script ? for instance if you want to change the TM snapshot during Reaper playback you could just add a midi track in your project and put the note at the timeline location ? otherwise if you wanted to manually trigger the change, you could do that with a key shortcut or your midi controller etc ?
EcBaPr is offline   Reply With Quote
Old 08-19-2022, 06:57 PM   #29
Miscreant
Human being with feelings
 
Miscreant's Avatar
 
Join Date: Mar 2012
Posts: 375
Default

Hey--thanks for chiming in. Good q's. The reason is that I want to use the script as an action in a larger, custom action that runs whenever I use a foot pedal to begin recording on a track.

This foot pedal triggers a few different things, but I'd like it to trigger via midi to my FF800 also a change in snapshots in TotalMix, which are just submixes that I use to toggle between speakers A and B.

Basically, when I'm recording I like to hear my speakers B, as they're big FRFRs, and when I'm mixing/monitoring/auditioning I like to use speakers A, which are proper mixing speakers. If I can get this script working, I can then stick it in as part of this custom action, and I'm no longer forgetting to change speakers in TotalMix whenever I switch from playing to listening. They would automatically switch whenever I start/stop recording.
Miscreant is offline   Reply With Quote
Old 08-19-2022, 08:01 PM   #30
EcBaPr
Human being with feelings
 
Join Date: Aug 2009
Posts: 402
Default

ahhh gotcha.. sadly I cant help with the script... in case you need an alternative option though you may be able to use OSC with a small external exe..

https://forum.cockos.com/showthread.php?t=268374

just substitute the X Air address in that thread with TM snapshots address.. that's not as elegant as using midi like you are looking to do, but maybe useful as plan B if needed..
EcBaPr is offline   Reply With Quote
Old 08-19-2022, 08:20 PM   #31
Miscreant
Human being with feelings
 
Miscreant's Avatar
 
Join Date: Mar 2012
Posts: 375
Default

^Thanks for that.

Here's my most recent version, which still isn't working but I think I've figured a few things out. Also, when I run this script I do see my MIDI indicator blink on the Fireface. So it's getting the message, but still not changing the snapshot like I want:

/*
Send Program Change to FF800 Midi Port 1
*/
// EEL Script for Reaper

/*
8 = Note Off
9 = Note On
10 = AfterTouch (ie, key pressure)
11 = Control Change
12 = Program (patch) change
13 = Channel Pressure
14 = Pitch Wheel
*/

msg_type = 9; // Note On
channel = 0;
function main ()
(
StuffMIDIMessage(19, msg_type*16 + channel, 55, 1);
);

main ();

msg_type = 8; // Note Off
channel = 0;
function main ()
(
StuffMIDIMessage(19, msg_type*16 + channel, 55, 0);
);

main ();
Miscreant is offline   Reply With Quote
Old 08-21-2022, 11:02 AM   #32
pipelineaudio
Mortal
 
pipelineaudio's Avatar
 
Join Date: Jan 2006
Location: Wickenburg, Arizona
Posts: 14,047
Default

Awesome work everyone!
pipelineaudio is offline   Reply With Quote
Old 08-21-2022, 01:01 PM   #33
Miscreant
Human being with feelings
 
Miscreant's Avatar
 
Join Date: Mar 2012
Posts: 375
Default

Quote:
Originally Posted by Miscreant View Post
^Thanks for that.

Here's my most recent version, which still isn't working but I think I've figured a few things out. Also, when I run this script I do see my MIDI indicator blink on the Fireface. So it's getting the message, but still not changing the snapshot like I want:

/*
Send Program Change to FF800 Midi Port 1
*/
// EEL Script for Reaper

/*
8 = Note Off
9 = Note On
10 = AfterTouch (ie, key pressure)
11 = Control Change
12 = Program (patch) change
13 = Channel Pressure
14 = Pitch Wheel
*/

msg_type = 9; // Note On
channel = 0;
function main ()
(
StuffMIDIMessage(19, msg_type*16 + channel, 55, 1);
);

main ();

msg_type = 8; // Note Off
channel = 0;
function main ()
(
StuffMIDIMessage(19, msg_type*16 + channel, 55, 0);
);

main ();
I can confirm this script works, BUT:

I had to send it via USB from my DAW to my AxeFx, which then relayed the midi message via its midi thru to the FF800. Without this the FF800 wasn't getting any midi at all...

So now whenever I start recording Reaper automatically switches TotalMix to output audio from my wedge FRFR speakers, and right when I hit stop it switches right back to my monitoring speakers so I can listen back carefully.

Beauty!
Miscreant is offline   Reply With Quote
Old 08-21-2022, 04:38 PM   #34
EcBaPr
Human being with feelings
 
Join Date: Aug 2009
Posts: 402
Default

do you have a midi loopback driver installed (such as loopBe) to enable the communication between Reaper and TM ? for a direct connection between software you would need something like this otherwise you need to manually loop a midi cable out/in on the interface or send midi through another device like your FX unit.. the RME midi driver in Reaper only refers to the midi port on the interface it doesn't send midi to TM..
EcBaPr is offline   Reply With Quote
Old 08-22-2022, 06:04 AM   #35
Miscreant
Human being with feelings
 
Miscreant's Avatar
 
Join Date: Mar 2012
Posts: 375
Default

Quote:
Originally Posted by EcBaPr View Post
do you have a midi loopback driver installed (such as loopBe) to enable the communication between Reaper and TM ? for a direct connection between software you would need something like this otherwise you need to manually loop a midi cable out/in on the interface or send midi through another device like your FX unit.. the RME midi driver in Reaper only refers to the midi port on the interface it doesn't send midi to TM..
Interesting you bring this up. I just learned the other day about loopback functionality on my FF800 via TotalMix. I don't believe I need a separate driver for this. It is native to the latest version of TotalMix.

That being said, I don't yet fully understand the feature. So I need to do some more digging. But if what you say is right, it explains why I needed to run a midi cable from the midi thru/out of my AxeFx to the midi in of the FF800: TotalMix was not receiving the midi message I was trying to send to the FF800.

This doesn't quite explain why sending it via the Axe fixes anything. But, alas, this is exactly what happened. I don't fully understand why yet.
Miscreant is offline   Reply With Quote
Old 08-22-2022, 07:43 AM   #36
Miscreant
Human being with feelings
 
Miscreant's Avatar
 
Join Date: Mar 2012
Posts: 375
Default

So things aren't quite all setup after all...

It turns out whenever I hit play on the transport, a slew of midi data is sent out, I believe from Reaper to my Axe, and then from my Axe to the FF800.

Here's an image: https://drive.google.com/file/d/1gYH...ew?usp=sharing

Since the snapshots on in TotalMix are controlled via midi on/off messages, the result is that whenever I hit 'play' the levels in TotalMix 'jitter' a bit.

Does anyone know why Reaper is sending out all this midi information each time I hit play? And is there a way to stop it, without stopping the midi messages I've programmed into the .eel script running in my custom action?

Edit 1:

I had to turn off the auto-reset options in Prefs under Midi Devices.

Last edited by Miscreant; 08-22-2022 at 07:51 AM.
Miscreant is offline   Reply With Quote
Old 08-22-2022, 03:38 PM   #37
EcBaPr
Human being with feelings
 
Join Date: Aug 2009
Posts: 402
Default

the loopback in totalmix is an audio loopback not midi.. if you have audio channels routed from top and middle row to one of the outputs at the bottom, you can select loopback on that output and that mix will then be seen in software to record.. it doesn't do anything with midi though.

I don't have an Axe but its midi driver probably means you are sending commands to the Axe itself ?? which passes to the thru/output also ? RME midi driver is different and only sends midi to the DIN port on the back of the interface nothing goes to totalmix from their driver you see in Reaper.. hence you need midi loopback software or you have to manually run a cable from the out->in on the interface and then select it for the midi input in totalmix..

if you initially had the RME midi port selected in the script, then it was likely reaching the midi output port on your interface where you would still see midi lights blink but not going to Totalmix..

Last edited by EcBaPr; 08-22-2022 at 05:14 PM.
EcBaPr is offline   Reply With Quote
Old 08-23-2022, 08:31 AM   #38
Miscreant
Human being with feelings
 
Miscreant's Avatar
 
Join Date: Mar 2012
Posts: 375
Default

Yep, I'm sending commands to the Axe, which then relays it to the FF800. If the loopback function is audio only, then I don't see how it would help here?
Miscreant is offline   Reply With Quote
Old 08-23-2022, 09:36 AM   #39
EcBaPr
Human being with feelings
 
Join Date: Aug 2009
Posts: 402
Default

there are two "loopbacks".. the loopback you mentioned..

Quote:
Originally Posted by Miscreant View Post
I just learned the other day about loopback functionality on my FF800 via TotalMix. I don't believe I need a separate driver for this. It is native to the latest version of TotalMix.
this is an audio only loopback and its a different thing to a midi loopback.. the midi loopback using "loopBe" is another piece of software you can install which creates a "virtual midi cable" between Reaper and Totalmix (or any two midi programs).. RME don't offer any midi loopback in their drivers.. anyway if you have it working, no problem..
EcBaPr is offline   Reply With Quote
Old 08-24-2022, 07:13 AM   #40
Miscreant
Human being with feelings
 
Miscreant's Avatar
 
Join Date: Mar 2012
Posts: 375
Default

Quote:
Originally Posted by EcBaPr View Post
there are two "loopbacks".. the loopback you mentioned..



this is an audio only loopback and its a different thing to a midi loopback.. the midi loopback using "loopBe" is another piece of software you can install which creates a "virtual midi cable" between Reaper and Totalmix (or any two midi programs).. RME don't offer any midi loopback in their drivers.. anyway if you have it working, no problem..
Ahh, I see. Now I get what you're saying. Interesting point. Some time I'll look into this.
Miscreant is offline   Reply With Quote
Reply

Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT -7. The time now is 03:14 PM.


Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2024, vBulletin Solutions Inc.