63 lines
1.3 KiB
Text
63 lines
1.3 KiB
Text
class:: XOut
|
|
summary:: Send signal to a bus, crossfading with previous contents.
|
|
related:: Classes/OffsetOut, Classes/Out, Classes/ReplaceOut
|
|
categories:: UGens>InOut
|
|
|
|
|
|
Description::
|
|
|
|
Send signal to a bus, crossfading with previous contents.
|
|
code::xfade:: is a level for the crossfade between what
|
|
is on the bus and what you are sending. The algorithm is equivalent to this:
|
|
|
|
code::
|
|
bus_signal = (input_signal * xfade) + (bus_signal * (1 - xfade));
|
|
::
|
|
|
|
|
|
See the link::Reference/Server-Architecture:: and link::Classes/Bus:: helpfiles for more information on
|
|
buses and how they are used.
|
|
|
|
|
|
classmethods::
|
|
|
|
method::ar, kr
|
|
|
|
argument::bus
|
|
The index of the bus to write out to. The lowest numbers are written to the audio hardware.
|
|
|
|
argument::xfade
|
|
Crossfade level.
|
|
|
|
argument::channelsArray
|
|
An Array of channels or single output to write out. You cannot change the size of this once a SynthDef has been built.
|
|
|
|
Examples::
|
|
|
|
code::
|
|
|
|
(
|
|
SynthDef("help-SinOsc", { arg freq=440, out;
|
|
Out.ar(out, SinOsc.ar(freq, 0, 0.1))
|
|
}).add;
|
|
|
|
SynthDef("help-XOut", { arg out=0, xFade=1;
|
|
var source;
|
|
source = PinkNoise.ar(0.05);
|
|
|
|
// write to the bus, crossfading with previous contents
|
|
XOut.ar(out, xFade, source);
|
|
|
|
}).add;
|
|
)
|
|
|
|
Synth("help-SinOsc", [\freq, 500]);
|
|
a = Synth.tail(s, "help-XOut");
|
|
|
|
|
|
a.set(\xFade, 0.7);
|
|
a.set(\xFade, 0.4);
|
|
a.set(\xFade, 0.0);
|
|
|
|
::
|
|
|