de.sciss.synth.proc.graph

Type members

Classlikes

object Action extends ProductReader[Action]
Companion
class
final case
class Action(trig: GE, key: String) extends Expander[Unit] with HasSideEffect

A graph element that executes an action upon receiving a trigger.

A graph element that executes an action upon receiving a trigger.

Value Params
key

a key into the process' attribute map. the value peer stored at that location should be of type proc.Action

trig

the trigger input signal

Companion
object
object Attribute extends ProductReader[Attribute]
Companion
class
final case
class Attribute(rate: Rate, key: String, default: Option[IndexedSeq[Float]], fixed: Int) extends Lazy
Companion
object
object BufChannels extends ProductReader[BufChannels]
Companion
class
final case
class BufChannels(rate: Rate, key: String) extends Info
Companion
object
object BufRateScale extends ProductReader[BufRateScale]
Companion
class
final case
class BufRateScale(rate: Rate, key: String) extends Info
Companion
object
object BufSampleRate extends ProductReader[BufSampleRate]
Companion
class
final case
class BufSampleRate(rate: Rate, key: String) extends Info
Companion
object
object Buffer extends ProductReader[Buffer]

An element referring to a random access buffer provided through an attribute. The attribute will typically be an audio grapheme.

An element referring to a random access buffer provided through an attribute. The attribute will typically be an audio grapheme.

Companion
class
final case
class Buffer(rate: Rate, key: String) extends Lazy

An element referring to a random access buffer provided through an attribute. The attribute will typically be an audio grapheme.

An element referring to a random access buffer provided through an attribute. The attribute will typically be an audio grapheme.

Value Params
key

the attribute key.

Companion
object
object BufferGen extends ProductReader[BufferGen]
Companion
class
final case
class BufferGen(cmd: Command, numFrames: GE, numChannels: GE) extends Lazy with ScalarRated

Creates a buffer filled by a special buffer-generation (/b_gen) function, for example to create a wave-shaper table.

Creates a buffer filled by a special buffer-generation (/b_gen) function, for example to create a wave-shaper table.

Value Params
cmd

the buffer generator command

numChannels

the number of channels for the buffer (defaults to 1). Must be resolvable at graph expansion time.

numFrames

the number of frames for the buffer. Must be resolvable at graph expansion time.

Companion
object
object BufferOut extends ProductReader[BufferOut]
Companion
class
final case
class BufferOut(rate: Rate, artifact: String, action: String, numFrames: GE, numChannels: GE) extends Lazy

A graph element that creates an empty buffer for the synth graph to write to. Upon completion of the encompassing proc, the buffer contents is written to an artifact referred to by its attribute-map key. When the file has been written, the action referred to by its attribute-map key is called. The element outputs the buffer-id.

A graph element that creates an empty buffer for the synth graph to write to. Upon completion of the encompassing proc, the buffer contents is written to an artifact referred to by its attribute-map key. When the file has been written, the action referred to by its attribute-map key is called. The element outputs the buffer-id.

An alternative is Action.WriteBuf which is slightly more flexible. It writes the buffer contents when a trigger is received, and outputs another trigger when writing finishes.

Value Params
action

a key into the encompassing object's attribute map, leading to an Action.

artifact

a key into the encompassing object's attribute map, leading to an Artifact.

numChannels

the number of channels to allocate

numFrames

the number of frames to allocate

rate

the rate at which the buffer-id is presented

See also
Companion
object
object DiskIn extends ProductReader[DiskIn]
Companion
class
final case
class DiskIn(rate: Rate, key: String, loop: GE) extends Stream with IsIndividual
Companion
object
object DiskOut extends ProductReader[DiskOut]
Companion
class
final case
class DiskOut(rate: Rate, key: String, in: GE, fileType: GE, sampleFormat: GE) extends Lazy with WritesBuffer

A graph element that creates a DiskOut writing to a file designated by an object attribute with a given key and the value being an Artifact.

A graph element that creates a DiskOut writing to a file designated by an object attribute with a given key and the value being an Artifact.

If the given file-type GE is -1, the type is determined by this artifact. For example, if the artifact's path ends in ".aif", the AIFF format will used, if the path ends in ".w64", then Wave64 will be used. The default is AIFF.

If an AudioCue is found at the key, its spec will override file type, sample-format and rate.

Value Params
fileType

a file type id as given by DeskOut.id(). The default is -1 (auto-detect).

in

the signal to write

key

the key into the enclosing object's attribute map, pointing to an Artifact

sampleFormat

a sample format id as given by DeskOut.id(). The default is 2 (32-bit Float).

Companion
object
object DoneSelf extends ProductReader[DoneSelf]
Companion
class
final case
class DoneSelf(trig: GE, pause: GE) extends Expander[Unit]

A UGen that when triggers stops the encompassing synth, marking the runner as done. As opposed to FreeSelf, this triggers a disposal action on the client side, possibly synchronising the disposal of associated resources.

A UGen that when triggers stops the encompassing synth, marking the runner as done. As opposed to FreeSelf, this triggers a disposal action on the client side, possibly synchronising the disposal of associated resources.

Value Params
pause

if non-zero, immediately pauses the synth when the trigger is received. This can be useful because the client may take a moment to actually dispose the synth.

trig

the trigger signal that invokes the disposal

See also
Companion
object
object Duration extends ProductReader[Duration]
Companion
class
final case
class Duration() extends Lazy with ScalarRated

Total duration of proc in seconds. If proc was started midway through, this is still its total length. To gather for how long it's going to play, use Duration() - Offset().

Total duration of proc in seconds. If proc was started midway through, this is still its total length. To gather for how long it's going to play, use Duration() - Offset().

Reports infinity if no durational information is available.

Companion
object
object FadeIn extends ProductReader[FadeIn]
Companion
class
final case
class FadeIn(rate: Rate, key: String) extends SingleBase

A graph element that produces an amplitude factor corresponding with the process' fade-in segment. If no segment is provided, produces a constant signal of one.

A graph element that produces an amplitude factor corresponding with the process' fade-in segment. If no segment is provided, produces a constant signal of one.

Companion
object
object FadeInOut extends ProductReader[FadeInOut]
Companion
class
final case
class FadeInOut(rate: Rate, inKey: String, outKey: String) extends Base
Companion
object
object FadeOut extends ProductReader[FadeOut]
Companion
class
final case
class FadeOut(rate: Rate, key: String) extends SingleBase
Companion
object
object MkValue extends ProductReader[MkValue]
Companion
class
final case
class MkValue(key: String, trig: GE, in: GE) extends Expander[Unit] with HasSideEffect

A graph element that writes values to a caller variable upon receiving a trigger, sampling the values at that moment. If the variable is absent, the element is simply a no-op. The variable type should be Double or Seq[Double].

A graph element that writes values to a caller variable upon receiving a trigger, sampling the values at that moment. If the variable is absent, the element is simply a no-op. The variable type should be Double or Seq[Double].

Value Params
in

the input signal to sample and write into the variable

key

a key into the process' attribute map. the value peer stored at that location should be of type expr.Var

trig

the trigger input signal

Companion
object
object Offset extends ProductReader[Offset]
Companion
class
final case
class Offset() extends Lazy with ScalarRated

Start time offset within the proc, in seconds. Will be zero if proc is started from the beginning.

Start time offset within the proc, in seconds. Will be zero if proc is started from the beginning.

Reports zero if no time information is available.

Companion
object
object Ops
object Param extends ProductReader[Param]
Companion
class
final case
class Param(rate: Rate, key: String, default: Option[IndexedSeq[Float]], fixed: Int) extends Lazy
Companion
object
object PartConv extends ProductReader[PartConv]
Companion
class
final case
class PartConv(rate: Rate, key: String, in: GE, fftSize: GE) extends Lazy

A SoundProcesses aware variant of PartConv, a UGen for partitioned convolution. It takes its buffer input from an attribute with the given key. Partitioned convolution breaks up a long impulse response into piece, allowing them to very large. CPU load increases with IR size, and there are tradeoffs based on fftSize choice, due to rarer but larger FFTs. Amortisation to used to spread processing and avoid spikes.

A SoundProcesses aware variant of PartConv, a UGen for partitioned convolution. It takes its buffer input from an attribute with the given key. Partitioned convolution breaks up a long impulse response into piece, allowing them to very large. CPU load increases with IR size, and there are tradeoffs based on fftSize choice, due to rarer but larger FFTs. Amortisation to used to spread processing and avoid spikes.

The buffer contents must be monophonic. If multiple channels are desired, they must be individually provided to separate PartConv instances.

Value Params
fftSize

the size of the internal fft used during partitioned convolution. the default is 2048, but 1024 and higher powers-of-two should be possible. Must be resolvable at graph expansion time.

key

key into the containing object's attribute map, where an AudioCue is to be found.

Companion
object
object Reaction extends ProductReader[Reaction]
Companion
class
final case
class Reaction(trig: GE, in: GE, key: String) extends Expander[Unit] with HasSideEffect

A graph element that executes an action upon receiving a trigger, sampling the values at that moment and making them available in the action through the values method.

A graph element that executes an action upon receiving a trigger, sampling the values at that moment and making them available in the action through the values method.

Value Params
in

the input signal to sample and pass on to the action

key

a key into the process' attribute map. the value peer stored at that location should be of type proc.Action

trig

the trigger input signal

Companion
object
object ScanIn extends ProductReader[ScanIn]
Companion
class
final case
class ScanIn(key: String) extends Like
Companion
object
object ScanInFix extends ProductReader[ScanInFix]
Companion
class
final case
class ScanInFix(key: String, numChannels: Int) extends Like

Like ScanIn but with a predetermined number of channels.

Like ScanIn but with a predetermined number of channels.

Companion
object
object ScanOut extends ProductReader[ScanOut]
Companion
class
final case
class ScanOut(key: String, in: GE) extends ZeroOut with WritesBus
Companion
object
object StopSelf extends ProductReader[StopSelf]
Companion
class
final case
class StopSelf(trig: GE, pause: GE) extends Expander[Unit]

A UGen that when triggers stops the encompassing synth, marking the runner as stopped. As opposed to FreeSelf, this triggers a disposal action on the client side, possibly synchronising the disposal of associated resources.

A UGen that when triggers stops the encompassing synth, marking the runner as stopped. As opposed to FreeSelf, this triggers a disposal action on the client side, possibly synchronising the disposal of associated resources.

When there is a need to distinguish a runner's stop from done, the DoneSelf UGen can be used.

Value Params
pause

if non-zero, immediately pauses the synth when the trigger is received. This can be useful because the client may take a moment to actually dispose the synth.

trig

the trigger signal that invokes the disposal

See also
Companion
object
object Time extends ProductReader[Time]
Companion
class
final case
class Time() extends Lazy with ScalarRated

Absolute time on the canvas, in seconds.

Absolute time on the canvas, in seconds.

Reports zero if no time information is available.

Companion
object
object TrigAttribute extends ProductReader[TrigAttribute]
Companion
class
final case
class TrigAttribute(key: String) extends Lazy with ControlRated
Companion
object
object VDiskIn extends ProductReader[VDiskIn]
Companion
class
final case
class VDiskIn(rate: Rate, key: String, speed: GE, loop: GE, interp: Int, maxSpeed: Double) extends Stream with IsIndividual

A SoundProcesses aware variant of VDiskIn. It takes its streaming buffer input from an attribute with the given key. Default values provide automatic sample-rate-conversion to match the audio server.

A SoundProcesses aware variant of VDiskIn. It takes its streaming buffer input from an attribute with the given key. Default values provide automatic sample-rate-conversion to match the audio server.

Value Params
interp

same as in ugen.VDiskIn. Additionally, a value of -1 indicates that interpolation should be chosen according to speed. This is useful in conjunction with negative speed values where interpolation might depend on actual SRC.

key

key into the containing object's attribute map, where an AudioCue is to be found.

maxSpeed

maximum expected speed, which will be used in consideration of the buffer size needed. if zero (default), and speed is a constant, this will be aligned with speed.

speed

speed factor as in ugen.VDiskIn. If a negative constant value is given, the actual factor is BufRateScale.kr * -speed, thus -1 indicates playback at correct sample rate.

Companion
object