Apologies for the possibly dumb question, but is it possible to do math in AWE? I come from a Max/MSP background and I'm used to using numerical operations (Max) on audio data (MSP). I don't see an equivalent in Audioweaver Designer. Is there a way to do it? Maybe I'm just thinking about it wrong.
Every version of Audio Weaver includes a library of Math modules, ranging from basic arithmetic modules to more advanced modules like convolution and nonlinear functions. These modules operate on numerical data (audio signals or otherwise) and are accessible from the Module browser on the left side of the Designer window, under the "Math" folder.
If there is a particular process you are having difficulty implementing, I may be able to assist. I have a background in Max/MSP as well so feel free to reference those terms if you find it easier to communicate that way :)
Thanks Michael. I suppose I'm confused because the operators seem to rely on signal input rather than numerical. In Max, If I wanted to use a multiplier on a signal I might do * .25, which would be a flonum. But AWE I do not see where/how to modify the object to do something like this. I've looked in the variables/properties but it's not clear to me.
You're right that the AWE Multiplier module can't be used to scale a signal by a constant value. The Scaler modules under the "Gain" folder can be used to achieve this result when the "isDB" variable is set to false, giving you linear control of the scale constant.
Thanks Michael. I think I have the hang of controls now. But I am wondering - is there the equivalent of a gswitch object in AWE? I have found the multiplexor which seems to do what I want, and I am using DC Source sending to Param Set to change the index from 0-1, but from an auditioning standpoint this feels very cumbersome in that I have to drag the floating point slider from 0-1 to change the multiplexor index, as opposed to just using some kind of boolean toggle like in Max. Is there a way to simply click on a 'button' in AWE to instantaneously change the value from 0-1 etc?
Double-clicking on a module will open its inspector GUI (you can also right-click -> Show Inspector). When the Multiplexor's numInPins argument is configured to 2, its inspector will appear as a check box. For more than 2 input pins, the inspector will appear as a drop down menu. The Multiplexor's output channel can also be changed using an optional control input pin. Set the Multiplexor's isControl argument to "true", connect a DC Source module directly to the control pin, and use the DC Source to change the output channel (no need for the Param Set module).
If desired, you can adjust the Multiplexor's smoothingTime and fadeTime variables. The smoothingTime controls the time it takes to ramp between input channels when a switch has been made, and the fadeTime adds in an optional period of silence between when the previous input channel turns off and the newly selected input channel turns on. Setting both variables to 0ms will allow for instantaneous changes, but will also yield a noticeable pop when changing the selected input channel. This is why the Multiplexor's smoothingTime is set to 10ms by default.
hmm - I must be doing something wrong. I get the an error when I try to run this as you describe, without Param Set. It seems the control pin is expecting an int but I am sending it a float from the DC source. I don't see a way to convert the latter into an int. As I mentioned, I suppose I am looking for a toggle, not a slider - or at least a UI way to control 2 multiplexors' index values with one click. I can of course open the inspectors of the multiplexors individually and click the checkboxes, but I have to click each individually. Perhaps best to provide an example in Max of what I'm trying to replicate.
By setting the "isControl" paramter in the multiplexor properties to "false", assuming there are just two inputs like Michael mentioned, you'll see a toggle appear when double clicking the multiplexor module. Otherwise, I'd suggest using the "DC Source Int" module which outputs integers, or for other conversion issues using the "Type Convert" module. I've attached a screen shot with the 3 examples I've described.