In

object In extends ProductReader[In]

A UGen that reads a signal from a bus. Whether an audio- or control-bus is used depends on the rate of the UGen.

In.ar and In.kr behave differently with respect to signals left on the bus in the previous calculation cycle (control block): In.ar can access audio signals that were generated in the current calculation cycle by synths appearing earlier in the node tree. It does not read signals produced by nodes in the previous calculation cycle (i.e. synths appearing later in the node tree), the input would instead be zero. To allow such "feedback", InFeedback can be used.

In contrast, In.kr does not distinguish between "new" and "old" data: It will always read the most recent value found on the bus, whether it was generated earlier in this calculation cycle, left over from the last one, or set before by the client.

'''Note''': The server uses the first NumOutputBuses channels to write to the sound card, followed by another NumInputBuses to read from the sound card. For convenience, the pseudo-UGens PhysicalOut and PhysicalIn can be used.

===Examples===

// cross-synth routing
// allocate an internal stereo audio-bus
val bus = Bus.audio(s, 2)

// writes to internal bus (initially inaudible)
val x = play {
 Out.ar(bus.index, Dust.ar(Seq(345, 345)))
}

// reads internal bus and makes it audible.
// must be after `x` to be able to read the bus signal
val y = play(target = x, addAction = addAfter) {
 val in = In.ar(bus.index, 2)
 Resonz.ar(in, 555, 0.1) * 10
}

// when done, do not forget to free the bus
y.free(); x.free(); bus.free()
See also
Companion
class
trait Product
trait Mirror
trait ProductReader[In]
class Object
trait Matchable
class Any

Type members

Inherited types

type MirroredElemLabels <: Tuple

The names of the product elements

The names of the product elements

Inherited from
Mirror
type MirroredLabel <: String

The name of the type

The name of the type

Inherited from
Mirror

Value members

Concrete methods

def ar(bus: GE, numChannels: Int): In
Value Params
bus

index of the bus to read from. When numChannels is greater than one, the other channels or read from the adjacent indices.

numChannels

number of channels to read

def ir(bus: GE, numChannels: Int): In
Value Params
bus

index of the bus to read from. When numChannels is greater than one, the other channels or read from the adjacent indices.

numChannels

number of channels to read

def kr(bus: GE, numChannels: Int): In
Value Params
bus

index of the bus to read from. When numChannels is greater than one, the other channels or read from the adjacent indices.

numChannels

number of channels to read

def read(in: RefMapIn, key: String, arity: Int): In