I’m surprised that the input and output audio blocks in GP3 are not available for control using widgets.
For both the Fireface UFX and the X-USB (Behringer X-32) that I use, the ‘plugin view’ shows both the input as the output side as a bank of faders.
For the outputs that’s fine, I’d connect a master fader in the rackspace and leave the RME TotalMix parameter untouched at 0 dB. However, on the input side, I’d like to control the pre-amp gain and state of the phantom power for the microphone channels. Is that possible, or do I need the TotalMix or X32-Mix Apps active at the same time as GP3?
Thanks @pianopaul, @David-san,
I’m new to OSC, but pretty technically inclined, so I’ll figure it out. I read the article about Robert Frazza using GP live for Stickmen in this post. That sounded straightforward so I was expecting an in-the-box solution. Is there a technical reason why this can’t be done as easily as assigning a widget to a plugin parameter (e.g. the audio interface doesn’t let GP know which parameters can be externally controlled as a plugin does), or is it a feature for a next release?
That is correct. Every plugin certainly provides a list of parameters that can be controlled via host automation (i.e, accessible by the GP widget system).
The plugins that represent Audio I/O communicates with the standard audio driver provided by the OS. On OS X, it’s Core Audio. On Windows it’s typically ASIO. But those drivers do not expose audio interface specific controls (such as the RME firmware mixer stuff) and so there there is no way for Gig Performer to be aware of device specific functionality.
If there was, there would be no need for device manufacturers (such as RME) to release mechanisms such as OSC as a way to communicate with their hardware (via their own propietary software applications).
Now, some hardware synth manufacturers sometimes release a plugin (VST or AU, etc) that knows specifically about the hardware synth and those plugins will expose a set of parameters that can be controlled via host automation and then the plugin communicates with the synth hardware using whatever proprietary format they want (usually some channel or sysex messages).
It would be awesome if RME (for example) would release a plugin that knows how to communicate with RME interfaces. If they did that, then Gig Performer would be able to control that interface directly.
Thanks @dhj,
I was afraid of that. It means that there is no easy solution. It would be great if there was a generic driver protocol for audio interfaces such as is used by the test and measurement community to simplify control from tools like LabVIEW.
Since I am on iOS, I didn’t use OSCAR, but I got your remote control to work with TouchOSC.
Then I downloaded the official RME TotalMix template for TouchOSC and got that to work too. And it’s really helpful to see the way the template is constructed and all the OSC names associated with the controls that I am after.
Now my last hurdle is how to get GP to control the TotalMix FX App. I’ve changed the address of the remote client in GP to be the address of TotalMix, but that didn’t work. Since they are running on the same machine, I also tried to change it to 127.0.0.1 but to no avail. What am I missing?
I am at a loss for how to send the setting of a switch or fader. In TouchOSC Editor I need to change the OSC field to /masterfader/SetValue, but that is not how the RME template shows it. There it is just the name of the control, same as in GP. Leaving the ‘auto’ box checked doesn’t work in the remote control I’ve made for the TouchOSC App.
But I don’t get it. It seems I’m missing a manual or something.
The knob is controlling the fader of SW output 1, as I would expect from this list. But its OSC name is Volume1 (OSC is case sensitive, so I was actually expecting ‘volume1’) and the OSC checkbox is left off (switching it on has the same functionality). Copying the widget and changing the OSC name to Volume2, has no effect in TotalMix.
Is this functionality perhaps done by GPScripting? I’m new to that . Where do I find the handles for it in the rackspace?
//$<AutoDeclare>
// DO NOT EDIT THIS SECTION MANUALLY
Var
Volume1 : Widget
Mastervolume : Widget
mV1 : OSCMessage
mMV : OSCMessage
//$</AutoDeclare>
initialization
OSC_SetAddress(mV1, "/1/volume1")
OSC_SetAddress(mMV, "/1/mastervolume")
end
// Called when a widget value has changed
On WidgetValueChanged(newValue : double) from Volume1
OSC_ClearArgs(mV1)
OSC_AppendDoubleArg(mV1, newValue)
OSC_Send(mV1)
End
On WidgetValueChanged(newValue : double) from Mastervolume
OSC_ClearArgs(mMV)
OSC_AppendDoubleArg(mMV, newValue)
OSC_Send(mMV)
End
Please load again, I uploaded an update.
For each widget you have to add some code in the script.
Right now it is not possible without scripting because Gig Performer generates some own OSC messages which are not recognized by Totalmix.
Are you on Mac?
On Mac there is a software called OSCULATOR
With this you can reassign the OSC messages generated from Gig Performer and translate it to the
format Totalmix uses.
No need for scripting.