1

Topic: Global OSC – TotalMix FX Alpha available

OSC in TotalMix FX has been designed based on what already existed with the Mackie protocol. For many years users have asked for a Global OSC approach, that addresses all and everything, plus does that at the same time and directly – without changing channel and input/playback/output banks.

Here we go: TotalMix FX 2.1 alpha 6 is based on the current 2.01 release, but adds Global OSC control!

How to use
Download the Windows or Mac version from the below links. The zip includes the Global OSC table for TM FX, but it can also be downloaded separately. Exit TotalMix FX, then start the alpha 6. Opening the OSC tab in Settings the entry Compatibility (Mode) now has the option Global OSC available in the drop-down menu.

Selecting this enables the Details button to the right. In the Detailed Settings window several options are available, to configure Send and Receive behavior and Faders. As Global OSC sends quite big data packets you’ll also find a bandwidth limiting feature. We did not encounter issues with 500 kByte/s, so that may be a good starting point.

Finally set up the basic parameters correctly (upper part of that OSC page), then Enable OSC Control in the TM FX Options menu.

Tip 1: we used Clean OSC to check our implementation. This extraordinary tool is free, but only available for Mac.

Tip 2: Global OSC is NOT intended to replace the existing TM FX Remote, and we do NOT recommend to use  TM FX this way, but the following gives a nice demo on ‘TotalGlobalRemote’: start TM FX alpha on a ‘remote’ computer, and set up an offline device matching your existing one on the host. Enable Global OSC on both, and set incoming and outgoing port crossed, so that both TM FX send and receive vice versa. If set up correctly both TM FX will be in total sync.

Tip 3: This alpha is not for ordinary users. It is especially for users already familiar with OSC, wanting/needing this exact feature set. We will not explain OSC basics here nor give ‘OSC for dummies’ tutorials – at least not for now.

Downloads
Windows: https://www.rme-audio.de/downloads/tmfx … alpha6.zip

Mac: https://www.rme-audio.de/downloads/tmfx … alpha6.zip

Protocol: https://www.rme-audio.de/downloads/glob … alpha6.zip

Thanks all for your patience. Let’s hear if the wait time was worth it!

Regards
Matthias Carstens
RME

Re: Global OSC – TotalMix FX Alpha available

This is awesome.

Re: Global OSC – TotalMix FX Alpha available

Oh wow awesome!

Re: Global OSC – TotalMix FX Alpha available

Thanks a million! I can't wait to try it out once I’m home.

Fireface UFX+ | Fireface UFX | Babyface Pro | 12Mic

5 (edited by batmad 2026-03-11 01:40:09)

Re: Global OSC – TotalMix FX Alpha available

is it possible to have the ability to choose network host interface? to be able to do stuff with 127.0.0.1
As soon as i turn wifi on, the host binds to my ipv6 adress
(on a mac)

Re: Global OSC – TotalMix FX Alpha available

127.0.0.1 is a local loopback address. Not a useable addressable ip address.

Babyface Pro Fs, Behringer ADA8200, win 11 PCs, Cubase/Wavelab, Adam A7X monitors.

Re: Global OSC – TotalMix FX Alpha available

mkok wrote:

127.0.0.1 is a local loopback address. Not a useable addressable ip address.

Yes! That's the point of using it! Being able to send osc between different softwares on the same computer!

8 (edited by maggie33 2026-03-12 00:00:06)

Re: Global OSC – TotalMix FX Alpha available

batmad wrote:

to be able to do stuff with 127.0.0.1
As soon as i turn wifi on, the host binds to my ipv6 adress

How should this work, as 127.0.0.1 is an ipv4 address?
You cannot send/receive between ipv6/ipv4 addresses (at least without (complicated) v6tov4 translation stuff).
Thats the reason for your issue. Fix it in your router/network settings.
So, its rather a network misconfiguration on your side than a Totalmix(or OSC) issue in general.
Tip: Use network priority order in macOS‘ network settings…

batmad wrote:

Being able to send osc between different softwares on the same computer!

...and exactly this works here:
Sending from 3rd party sw to TM's 127.0.0.1:PortX
Receiving from TM's Remote Controller Address 127.0.0.1:PortY on 3rd party sw.

“Do It For Her”
My Gear: Bontempi Magic light Keyboard

Re: Global OSC – TotalMix FX Alpha available

yep, i was fooled by the fact on macos, total mix seems to only show one adress as host, and only the name of the computer when all network cards are disabled.
my osc syntax was also wrong, testing it on windows and then back on mac os allowed me to spot my errors.
thanks

Re: Global OSC – TotalMix FX Alpha available

Just did a quick query test. Looks quite solid and looking forward to building some fun interfaces on top.

Re: Global OSC – TotalMix FX Alpha available

Is there an off-by-one error somewhere related to hidden channels?

I don't seem get any /mix/*/fader or /mix/*/balpan packets if the current submix is the last one, or if the next one after it is hidden from OSC.

Re: Global OSC – TotalMix FX Alpha available

Hello! i know this thread is not a tutorial, but i struggle to control channels related stuff.
No problem for exemple to control /controlroom/dim
but for channels and mix i think i don't understand the syntax well.
If someone could be kind enough to provide the syntax, for exemple, to juste mute input 1 or output 1/2, that would be awesome!
thanks!

13

Re: Global OSC – TotalMix FX Alpha available

prspn wrote:

Is there an off-by-one error somewhere related to hidden channels?

I don't seem get any /mix/*/fader or /mix/*/balpan packets if the current submix is the last one, or if the next one after it is hidden from OSC.

Fixed in Alpha 3, see link above.

Regards
Matthias Carstens
RME

Re: Global OSC – TotalMix FX Alpha available

batmad wrote:

Hello! i know this thread is not a tutorial, but i struggle to control channels related stuff.
No problem for exemple to control /controlroom/dim
but for channels and mix i think i don't understand the syntax well.
If someone could be kind enough to provide the syntax, for exemple, to juste mute input 1 or output 1/2, that would be awesome!
thanks!

The protocol is largely symmetrical. So you can simply analyse receive data from TotalMix. But:

/input/11/mute (1.0f) mutes input 11 (Mic 12 on UFXIII)
/input/11/mute (0.0f) to turn off mute
/mix/in/11/0/fader (-37.0f) means node input 11 (Mic 12 on UFXIII) and submix 0 (output channel AN1/2) set to -37dB.

Sometimes I struggle myself with turned-off Global OSC after starting an older version of TotalMix between...

15 (edited by maggie33 2026-03-21 22:30:21)

Re: Global OSC – TotalMix FX Alpha available

@Ralf

/reverb/type values seem to have a bug (Ex: Type "Envelope" sends a float 4; Type "Space" a 6...)

and

/status/* messages seem to be sent ~every 15 secs (instead of every ~1 sec, according doc) in a bundle. While each bundle contains ca. 5x the same 3 paths. Seems a TM routine waits to collect "enough" /status/* messages first before sending them in a bundle. What principally makes sense. However, as the information arrives after 15 secs on client, the information of the first 4x /status/* paths is quite useless...

“Do It For Her”
My Gear: Bontempi Magic light Keyboard

Re: Global OSC – TotalMix FX Alpha available

Sounds like a fix to the infuriating channel counting problems that made it a pain to control anything with OSC. Very Good smile

Re: Global OSC – TotalMix FX Alpha available

MC wrote:

Fixed in Alpha 3, see link above.

Perfect, works now.

maggie33 wrote:

/status/* messages seem to be sent ~every 15 secs (instead of every ~1 sec, according doc) in a bundle [...]

I see something similar here, status is sent every 3 seconds but if no other messages are sent then 4 status messages are buffered and sent every 12-ish seconds.

Also, perhaps "Send Status" should default to being enabled?
It's very useful to be able to check for a heartbeat, though I guess if it can be turned off it kind of defeats the purpose.

18 (edited by maggie33 2026-03-22 23:20:59)

Re: Global OSC – TotalMix FX Alpha available

prspn wrote:
maggie33 wrote:

/status/* messages seem to be sent ~every 15 secs (instead of every ~1 sec, according doc) in a bundle [...]

I see something similar here, status is sent every 3 seconds but if no other messages are sent then 4 status messages are buffered and sent every 12-ish seconds.

Maybe I was quite unclear.
From my personal point of view...
- The /status/* messages are sent almost immediately (at least ~1 sec max - according the docs) after/or if sth changes in TM. And thats absolutely ok(!)
- Only when nothing happens, the information inside the ~every 12-15 secs bundle seems redundant/useless
- I would even say, it is sufficient if TM would only send a new /status/* message if sth related changes inside the /status/* path (like /status/dsp, /status/connection, etc) as the client knows the initial state (by sending a /sendall or if configured in the TM settings on startup...)


prspn wrote:

Also, perhaps "Send Status" should default to being enabled?

In my opinion and use case its irrelevant if its enabled or not by default, as long as I can configure it at all.



prspn wrote:

It's very useful to be able to check for a heartbeat, though I guess if it can be turned off it kind of defeats the purpose.

I think with "heartbeat" you mean that a client has the possibility to determine/know if a certain controller on the host's (=TM) side is currently active/alive/listening, right? Afaik, "sending pings via OSC" is a quite legacy technique (although still used by several professional studio consoles).

The actual common way is described in the osc 1.1 spec (from 2009). Which, although it has never been officiallly released, its used by de facto more modern standard DAWs/Apps like TouchOSC, Logic, Ableton, Reaper, etc.. Basically, the principle is to serve an DNS-SD _osc._udp entry as long as the hosts endpoint (or TMs controller) is alive. It would make sense if it could contain the active Controller Number 1-4, the Unit name (incl its unique serial), etc. in the TXT records. See: https://ccrma.stanford.edu/groups/osc/f … SC-1.1.pdf
To mention, TM seems to implement this already basically. But the dns-sd entry is only active as long as the Mixer Settings Dialog is opened (if you hit OK, the entry disappears - which is not according the common DNS-SD principle/philosophy at all). 

PS: I made a workaround script/LaunchAgent which polls for open UDP Ports towards a TM process on mac and if found, it manages this all... But, of course it would be much more elegant if this would be handled by the host (=TM) at all..
However, let me know if you're interested. Then I'll open a github repo...

“Do It For Her”
My Gear: Bontempi Magic light Keyboard

19 (edited by maggie33 2026-03-22 23:28:59)

Re: Global OSC – TotalMix FX Alpha available

Sergejs wrote:

Sounds like a fix to the infuriating channel counting problems that made it a pain to control anything with OSC. Very Good smile

Unclear what you mean... However, if it would really be a "pain" from your side - I wonder why you didn't mention this here yourself before?

“Do It For Her”
My Gear: Bontempi Magic light Keyboard

20

Re: Global OSC – TotalMix FX Alpha available

maggie33 wrote:

@Ralf

/reverb/type values seem to have a bug (Ex: Type "Envelope" sends a float 4; Type "Space" a 6...)

and

/status/* messages seem to be sent ~every 15 secs (instead of every ~1 sec, according doc) in a bundle

Fixed in Alpha 4, link see first post. Also added: status and time messages for DURec.

Regards
Matthias Carstens
RME

Re: Global OSC – TotalMix FX Alpha available

Can confirm the fix.
DURec status and time are working here too.

“Do It For Her”
My Gear: Bontempi Magic light Keyboard

22 (edited by paulnajar 2026-04-17 07:10:19)

Re: Global OSC – TotalMix FX Alpha available

A little thing I've just noticed regarding Mackie Control support.

Using record arm buttons on MCU (SSL Nucleus) we can select an output bus to send signals to. I have UFX 3 MADI connected to ADI 648. I have 32 analog channels connected in either 1x or 2x sample rates.

When I use this in 1x sample rate I can select any output bus all the way up to my last 8 channels (MADI 48-56) (4 stereo pairs). If I do the same thing when in 2x sample rate I can't select the last 4 output pairs at all (MADI 25-32) from Mackie control. If I press one of those when in 2x the channel selected is always MADI 23/24. If I select with a mouse the correct select then lights up on the control surface also.

I tried this on TMFX 1.99, 2.0 and 2.1 Alpha. The behaviour is the same for all.

Kind regards

__________________________
Paul Najar
Jaminajar Music Production
www.jaminajar.com

23 (edited by Thermaltake 2026-04-17 19:50:38)

Re: Global OSC – TotalMix FX Alpha available

I was talking about in the topic of 2.0 about refresh rate of TM. I have 240Hz OLED monitor, and when working in Cubase 15 and Totalmix is open black background of Cubase is flickering because of refresh rate is lowered to 60Hz. As soon as I click outside of the TM, there is no more flickering.

24

Re: Global OSC – TotalMix FX Alpha available

paulnajar wrote:

A little thing I've just noticed regarding Mackie Control support.

Using record arm buttons on MCU (SSL Nucleus) we can select an output bus to send signals to. I have UFX 3 MADI connected to ADI 648. I have 32 analog channels connected in either 1x or 2x sample rates.

When I use this in 1x sample rate I can select any output bus all the way up to my last 8 channels (MADI 48-56) (4 stereo pairs). If I do the same thing when in 2x sample rate I can't select the last 4 output pairs at all (MADI 25-32) from Mackie control. If I press one of those when in 2x the channel selected is always MADI 23/24. If I select with a mouse the correct select then lights up on the control surface also.

I tried this on TMFX 1.99, 2.0 and 2.1 Alpha. The behaviour is the same for all.

Kind regards

Fixed in the just released v 2.01. Please try.

Regards
Matthias Carstens
RME

Re: Global OSC – TotalMix FX Alpha available

Awsome!!!
An OSC-string to recall the presets of the channel-fx eq and dynamics would be great.

Greetings,

Robin

Re: Global OSC – TotalMix FX Alpha available

MC wrote:
paulnajar wrote:

A little thing I've just noticed regarding Mackie Control support.

Using record arm buttons on MCU (SSL Nucleus) we can select an output bus to send signals to. I have UFX 3 MADI connected to ADI 648. I have 32 analog channels connected in either 1x or 2x sample rates.

When I use this in 1x sample rate I can select any output bus all the way up to my last 8 channels (MADI 48-56) (4 stereo pairs). If I do the same thing when in 2x sample rate I can't select the last 4 output pairs at all (MADI 25-32) from Mackie control. If I press one of those when in 2x the channel selected is always MADI 23/24. If I select with a mouse the correct select then lights up on the control surface also.

I tried this on TMFX 1.99, 2.0 and 2.1 Alpha. The behaviour is the same for all.

Kind regards

Fixed in the just released v 2.01. Please try.

Yes I saw this earlier Mathias. You guys are amazing! Thank you very much. I’ll install tomorrow….

__________________________
Paul Najar
Jaminajar Music Production
www.jaminajar.com

Re: Global OSC – TotalMix FX Alpha available

MC wrote:
paulnajar wrote:

A little thing I've just noticed regarding Mackie Control support.

Using record arm buttons on MCU (SSL Nucleus) we can select an output bus to send signals to. I have UFX 3 MADI connected to ADI 648. I have 32 analog channels connected in either 1x or 2x sample rates.

When I use this in 1x sample rate I can select any output bus all the way up to my last 8 channels (MADI 48-56) (4 stereo pairs). If I do the same thing when in 2x sample rate I can't select the last 4 output pairs at all (MADI 25-32) from Mackie control. If I press one of those when in 2x the channel selected is always MADI 23/24. If I select with a mouse the correct select then lights up on the control surface also.

I tried this on TMFX 1.99, 2.0 and 2.1 Alpha. The behaviour is the same for all.

Kind regards

Fixed in the just released v 2.01. Please try.

And just to confirm the MCU implementation issue I mentioned now works perfectly in 2.0.1. Thanks again

__________________________
Paul Najar
Jaminajar Music Production
www.jaminajar.com

28 (edited by Thermaltake 2026-05-03 10:33:06)

Re: Global OSC – TotalMix FX Alpha available

Any chance of fixing TM problem with refresh rate ?

When TM window is active if you have black background it flickers all the time when you move the mouse in TM on OLED screen. It's really annoying watching it messing with my eyes.

29

Re: Global OSC – TotalMix FX Alpha available

Mail sent.

Regards
Matthias Carstens
RME

30

Re: Global OSC – TotalMix FX Alpha available

First post has been updated with Alpha 5. It includes all the fixes and improvements of current release 2.01, but also improves on GlobalOSC. Please use the updated protocol document and note the change of the input names - see bottom on page 1:

- sendchan bus names changed to (fully written out) input, playback, output       
- added loadpreset, sendsettings

Regards
Matthias Carstens
RME

Re: Global OSC – TotalMix FX Alpha available

MC wrote:

Mail sent.

Saw it, reply to it. Thank You for your involvement in this matter.

Re: Global OSC – TotalMix FX Alpha available

Global OSC is truly fantastic — thank you so much for implementing it!

The snapshot load command (/snapshot/load/N) works perfectly and has been incredibly helpful.

I would love to also have a load command for Mixer Layout Presets. Is this feature not yet implemented in the current Alpha, or is there a workaround I may have missed?

Thank you in advance for your time and consideration.

Re: Global OSC – TotalMix FX Alpha available

Thank you very much for implementing Global OSC. Absolute addressing is a massive improvement. However, while testing it, I ran into a few inconsistencies that complicate state synchronization:

  • Inconsistent echo: When transmitting and receiving on the same controller, readbacks are inconsistent. Modifying /output/0/volume acknowledges the change back to the sender, but /input/0/mute does not. (I would strongly prefer all changes to be echoed to allow synchronization of multiple clients on the same controller, or for this to be an available setting).

  • Bulk state dumps did not work for me: Requests like /sendchan/output/0 (with or without a value) did not trigger any reply.

  • Attempting to poll a path by sending it without a value (e.g., /input/0/mute) overwrites the parameter to 1.0 and seems to hang the TotalMix OSC server for a second or so. I know this is incorrect usage according to the documentation, but I was hoping it would query the status without changing the parameter.

  • The "Send status cyclic" option is always greyed out in the settings.

Listening on a different OSC controller is a workaround for the suppressed mute state echo, but so far, I have not found a working way to query a status on demand without setting the value.

Thanks again for looking into this and for your continued work on the software.

Re: Global OSC – TotalMix FX Alpha available

Karl_I wrote:

I would strongly prefer all changes to be echoed to allow synchronization of multiple clients on the same controller, or for this to be an available setting

+1

35

Re: Global OSC – TotalMix FX Alpha available

Post 1 has links for the latest 2.1 Alpha 6 and the respective, updated protocol document. Alpha 6 is based oin the just released v2.02, and adds GlobalOSC with respective fixes:

- sendchan did not work correctly   
- "gain" for dynamics was missing in the protocol table   
- "pan" corrected in "balpan" in the protocol table

- Windows only: Send Status was blocked

Regards
Matthias Carstens
RME

Re: Global OSC – TotalMix FX Alpha available

Thanks!

“Do It For Her”
My Gear: Bontempi Magic light Keyboard

37 (edited by jomoja 2026-05-31 23:28:33)

Re: Global OSC – TotalMix FX Alpha available

MC wrote:
prspn wrote:

Is there an off-by-one error somewhere related to hidden channels?

I don't seem get any /mix/*/fader or /mix/*/balpan packets if the current submix is the last one, or if the next one after it is hidden from OSC.

Fixed in Alpha 3, see link above.

The last submix (18 => ADAT 7/8) won't respond, so if the "last submix" bug was fixed, maybe there's another edge case like submix > 16?
OSC /mix/in/12/16/fader -> fader moves
OSC /mix/in/12/18/fader -> fader does not move
Tested in alpha 5 and 6
Thanks for the awesome work here!

*EDIT* Enabling "receive to hidden channels" mentioned by gigisteph below solved the issue. A bit unclear as these channels were not hidden.

Re: Global OSC – TotalMix FX Alpha available

Hi!
I'm so happy for that global osc mode! I'm using touchosc and it's working fine!

I'm not sure if it's expected behaviour but for me it was painful to find the solution to my problem:
sending from touchosc mix/in/8/18/faderlin
was not working for channel input AD 9 to channel DA19/20. Moving the fader from Totalmix was received by touchosc.
I had to change and tick the option "receive to hidden channels" to solve the issue.

Re: Global OSC – TotalMix FX Alpha available

Thanks for the update!
Unfortunately, for me the behavior seems unchanged: sendchan does nothing and state changes are not reported on the same controller they were set.
Below is the test code I am using to test communication in case I am doing something wrong.

import time
import threading
from pythonosc.udp_client import SimpleUDPClient
from pythonosc.dispatcher import Dispatcher
from pythonosc.osc_server import BlockingOSCUDPServer

# Network Configuration
TOTALMIX_IP = "127.0.0.1"
TOTALMIX_RX_PORT = 7004
LISTEN_IP = "0.0.0.0"
LISTEN_PORT = 9004


class TotalMixOSCManager:
    def __init__(self, target_ip, tx_port, listen_ip, rx_port):
        self.target_ip = target_ip
        self.tx_port = tx_port
        self.listen_ip = listen_ip
        self.rx_port = rx_port
        
        self.dispatcher = Dispatcher()
        self.dispatcher.set_default_handler(self._default_handler)
        
        self.server = None
        self.server_thread = None
        self.client = None
        self._stop_event = threading.Event()

    def _default_handler(self, address, *args):
        print(f"RX | ADDR: {address:<30} | VALS: {args}")

    def start_listener(self):
        """Start blocking OSC server in background thread."""
        try:
            self.server = BlockingOSCUDPServer((self.listen_ip, self.rx_port), self.dispatcher)
            self.server_thread = threading.Thread(target=self.server.serve_forever)
            self.server_thread.daemon = True
            self.server_thread.start()
            print(f"[*] Listener started on {self.listen_ip}:{self.rx_port}")
        except Exception as e:
            print(f"[!] Failed to start OSC server on port {self.rx_port}: {e}")
            raise

    def init_client(self):
        """Initialize UDP client"""
        self.client = SimpleUDPClient(self.target_ip, self.tx_port)
        print(f"[*] Client target set to {self.target_ip}:{self.tx_port}")

    def send_message(self, path, value):
        """transmit OSC packet."""
        if self.client:
            print(f"TX | ADDR: {path:<30} | VAL: {value}")
            self.client.send_message(path, value)

    def close(self):
        """Clean shutdown of the server thread and sockets."""
        print("\n[*] Shutdown...")
        
        if self.server:
            self.server.shutdown()
            self.server.server_close()
            print("[*] OSC Server socket closed.")
            
        if self.server_thread and self.server_thread.is_alive():
            self.server_thread.join(timeout=2.0)
            print("[*] Background thread joined.")


if __name__ == "__main__":
    manager = TotalMixOSCManager(
        target_ip=TOTALMIX_IP,
        tx_port=TOTALMIX_RX_PORT,
        listen_ip=LISTEN_IP,
        rx_port=LISTEN_PORT
    )

    try:
        # Start the listening server
        manager.start_listener()
        
        # Initialize the client path
        manager.init_client()
        time.sleep(1.0)

        # Mute Test
        test_path = "/input/0/mute" 
        
        print("\n--- Mute test ---")
        manager.send_message(test_path, 1.0)  # Mute ON
        time.sleep(1.0)
        
        manager.send_message(test_path, 0.0)  # Mute OFF
        time.sleep(1.0)

        # Volume Test
        vol_path = "/input/0/volume"
        print("\n--- Volume Test ---")
        volume_levels = [-65.0, 3.0, 0.0, -30.0]
        for vol in volume_levels:
            manager.send_message(vol_path, float(vol))
            time.sleep(0.8)

        # Sendchan Readback Test
        print("\n--- Readback tests ---")
        routing_commands = [
            "/sendchan/input/1",
            "/sendchan/playback/1",
            "/sendchan/output/1"
        ]
        
        for path in routing_commands:
            manager.send_message(path, 1.0)
            time.sleep(1.0)

        print("\n--- Listening for feedback (Ctrl+C to exit) ---")
        # print feedback until user interrupt
        while True:
            time.sleep(0.5)

    except KeyboardInterrupt:
        print("\n[!] Execution interrupted by user.")
    finally:
        #  cleanup
        manager.close()
        print("[*] Cleanup complete.")

Re: Global OSC – TotalMix FX Alpha available

Yes, it seems that current implementation has number as second, like /sendchan/0/output. Will be fixed (changed) in next version. Same shifts/limits in output-numbering (gigisteph).

But 2 remarks:
- channel numbering starts at 0, so sending request to channel 1makes only sense for mono channels or to get differences (gain, phase invert) from stereo base
- volume on input channel makes no sense

Re: Global OSC – TotalMix FX Alpha available

Thanks!
I now receive a reply with the address formatted as /sendchan/0/output. (I didn't manage to guess that from the documentation.)

Regarding your remarks: thanks as well, you are right. I was at the stage, where I just wanted to verify that I had all the building blocks I needed. I picked addresses mostly at random, to see if the sliders moved and if I could read the status, without thinking too much about what I was actually addressing. In my current setup, setting /input/0/volume actually sets the volume of /output/0, as well as the grouped channels /output/2 and /output/4. Of these, 2 and 4 are reported back on the same OSC controller, while 0, 2, and 4 are reported back on other OSC controllers. Currently, it seems that /input/0/volume is equivalent to /output/0/volume.

Now that I know how to read back without modifying, the controller interface seems complete enough to be usable, thanks again!

As a feature suggestion, however, I would still prefer all changes to be echoed on the same controller, and it would be good to have the option to query individual settings, e.g. by addressing them without a value.

Re: Global OSC – TotalMix FX Alpha available

MC wrote:

Mail sent.

Any info. MC on this ? I'm Struggling every day with flicker.

Re: Global OSC – TotalMix FX Alpha available

Thermaltake wrote:
MC wrote:

Mail sent.

Any info. MC on this ? I'm Struggling every day with flicker.

If you are on PC, try to change settings from your graphic card. Turn off NVIDIA G-Sync for example.
https://forum.rme-audio.de/viewtopic.php?id=34840

Regards,
Audio AG Support

44 (edited by Thermaltake 2026-06-04 10:07:38)

Re: Global OSC – TotalMix FX Alpha available

Audio AG Support wrote:
Thermaltake wrote:
MC wrote:

Mail sent.

Any info. MC on this ? I'm Struggling every day with flicker.

If you are on PC, try to change settings from your graphic card. Turn off NVIDIA G-Sync for example.
https://forum.rme-audio.de/viewtopic.php?id=34840

I am on PC, but that is old topic from 2022. I changed like 4 PCs from then and monitor.

But you were right, it was problem in g-sync, now when I turn it off it doesn't flicker anymore and mouse is smooth when hovering over TM.
But I am using G-sync on this PC because it's also benchmarking PC for various games.
So I would now need to turn off and on g-sync all the time, that doesn't make sense.

Can it be fixed so I don't need to do that anymore ?

45 (edited by ramses 2026-06-04 10:27:38)

Re: Global OSC – TotalMix FX Alpha available

Can't you make an exclusion for TM FX in nVidia driver settings
In the Global Settings, GSync "on" and for TotalMix FX in application specific settings "off".

It might work following the theory:
a) if the game has the focus on screen, the nVidia driver will use the global settings
b) if TotalMix FX is opened on screen, it might use the TM FX specific settings with GSync off.

If this "logic" doesn't work, then try the other way around.
In global settings, G-Sync "off", and for each of the games, apply game specific settings with G-Sync on.

One-time config activity, but after that it should run fine without any further effort.

BR Ramses - HDSPe MADI FX, M-1620 Pro D, 12Mic, UFX III, ADI-2 Pro FS R BE, Nuendo 15, Win10 IoT Ent

46 (edited by Thermaltake 2026-06-05 16:07:42)

Re: Global OSC – TotalMix FX Alpha available

ramses wrote:

Can't you make an exclusion for TM FX in nVidia driver settings
In the Global Settings, GSync "on" and for TotalMix FX in application specific settings "off".

It might work following the theory:
a) if the game has the focus on screen, the nVidia driver will use the global settings
b) if TotalMix FX is opened on screen, it might use the TM FX specific settings with GSync off.

If this "logic" doesn't work, then try the other way around.
In global settings, G-Sync "off", and for each of the games, apply game specific settings with G-Sync on.

One-time config activity, but after that it should run fine without any further effort.

I did made an exclusion, fixed the monitor refresh rate because there is no option to turn off g-sync completely for specific program. But still same, like I never add TM in it.



EDIT:
For some reason today everything is working normal. I have no idea what happend I restart PC yesterday when I apply this settings up and didn't touch anything else. That time when PC restarted everything was same, today everything is working like it should TM open mouse is going smooth without flickering.

I also tried to make TM run on my Intel gpu to avoid g-sync somehow, because I have igpu and nvidia enabled, because I need Quick Sync from time to time from my igpu, that also didn't help.

47 (edited by Arsene Today 14:45:30)

Re: Global OSC – TotalMix FX Alpha available

Hi Karl_I, hi MC,

+1 on Karl_I's post #33 — the echo inconsistency is a real pain for multi-client setups. I'd like to add a concrete example that falls under the same family: /snapshot/load/N is currently Rec only, with no Send back to clients.

The behaviour mirrors what Karl_I described for /input/0/mute: the address can be modified by an OSC client, but no client (the sender or any other) can know the resulting active snapshot. Adding a corresponding Send on /snapshot/load/N (or a dedicated broadcast like /snapshot/current N fired on each load) would let any OSC controller keep its UI in sync with the actual snapshot, exactly the way faders, DIM, Mono and Speaker B already do.

Use case on my end: I'm putting together a small Stream Deck setup for my personal workflow with the Babyface Pro. Most state reflects external changes nicely via Global OSC — snapshot is the one parameter that goes silent after a change made outside the Stream Deck, which makes the keys show stale info.

Thanks for the great work on Global OSC so far — really useful improvement.


Setup:
RME Babyface Pro Fs · macOS 26.5.1 (Tahoe) · TotalMix FX 2.10 Alpha 6
Stream Deck XL - Stream Deck+ - ARC USB · TotalMix Remote iPad