de.sciss.fscape.lucre.graph

Type members

Classlikes

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

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

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

Value parameters:
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(key: String, default: Option[Default], fixed: Int) extends Lazy
Companion:
object
object AudioFileIn extends AudioFileInPlatform with ProductReader[AudioFileIn]
Companion:
class
final case class AudioFileIn(key: String) extends Lazy
Companion:
object
object AudioFileOut extends ProductReader[AudioFileOut]
Companion:
class
final case class AudioFileOut(key: String, in: GE, fileType: GE, sampleFormat: GE, sampleRate: GE) extends Lazy

A graph element that creates a UGen 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 UGen 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 parameters:
fileType

a file type id as given by AudioFileOut.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 or AudioCue

sampleFormat

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

sampleRate

the nominal sample-rate of the file. The default is 44100.

Companion:
object
object ImageFileIn extends ProductReader[ImageFileIn]
Companion:
class
final case class ImageFileIn(key: String) extends Lazy
Companion:
object
object ImageFileOut extends ProductReader[ImageFileOut]
Companion:
class
final case class ImageFileOut(key: String, in: GE, width: GE, height: GE, fileType: GE, sampleFormat: GE, quality: GE) extends Expander[Unit]

A graph element that creates a UGen 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 UGen 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 ".png", the PNG format will used, if the path ends in ".jpg", then JPEG will be used. The default is PNG.

Value parameters:
fileType

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

height

image's height in pixels

in

the signal to write

key

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

quality

the compression quality for a lossy format such as JPG. The default is 80.

sampleFormat

a sample format id as given by ImageFileOut.id(). The default is 0 (8-bit Int).

width

image's width in pixels

Companion:
object
object ImageFileSeqIn extends ProductReader[ImageFileSeqIn]
Companion:
class
final case class ImageFileSeqIn(key: String, indices: GE) extends Lazy

Reads a sequence of images, outputting them directly one after the other, determining their file names by formatting a template taken from an artifact stored in the object's attribute map at key, with a numeric argument given through indices.

Reads a sequence of images, outputting them directly one after the other, determining their file names by formatting a template taken from an artifact stored in the object's attribute map at key, with a numeric argument given through indices.

Value parameters:
key

key into the FScape object's attribute map, where an Artifact should be stored. The artifact's file name is taken as a ''template''. Either that file contains a single placeholder for java.util.Formatter syntax, such as %d to insert an integer number. Or alternatively, if the file name does not contain a % character but a digit or a sequence of digits, those digits will be replaced by %d to produce a valid template. Therefore, if the template is foo-123.jpg and the indices contain 4 and 5, then the UGen will read the images foo-4 and foo-5 (the placeholder 123 is irrelevant).

Companion:
object
object ImageFileSeqOut extends ProductReader[ImageFileSeqOut]
Companion:
class
final case class ImageFileSeqOut(key: String, in: GE, width: GE, height: GE, fileType: GE, sampleFormat: GE, quality: GE, indices: GE) extends Expander[Unit]

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

A graph element that creates a UGen writing to a file sequence 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 ".png", the PNG format will used, if the path ends in ".jpg", then JPEG will be used. The default is PNG.

Value parameters:
fileType

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

height

image's height in pixels

in

the signal to write

key

the key into the enclosing object's attribute map, pointing to an Artifact for the file template. The artifact's file name is taken as a ''template''. Either that file contains a single placeholder for java.util.Formatter syntax, such as %d to insert an integer number. Or alternatively, if the file name does not contain a % character but a digit or a sequence of digits, those digits will be replaced by %d to produce a valid template. Therefore, if the template is foo-123.jpg and the indices contain 4 and 5, then the UGen will write the images foo-4 and foo-5 (the placeholder 123 is irrelevant).

quality

the compression quality for a lossy format such as JPG. The default is 80.

sampleFormat

a sample format id as given by ImageFileSeqOut.id(). The default is 0 (8-bit Int).

width

image's width in pixels

Companion:
object
object MkAudioCue extends ProductReader[MkAudioCue]
Companion:
class
final case class MkAudioCue(key: String, in: GE, fileType: GE, sampleFormat: GE, sampleRate: GE) extends Lazy with Reader

A graph element that creates a UGen writing to an audio file designated by an FScape.Output with a given key and the value being an AudioCue.

A graph element that creates a UGen writing to an audio file designated by an FScape.Output with a given key and the value being an AudioCue.

Value parameters:
fileType

a file type id as given by MkAudioCue.id(). The default is 0 (AIFF). Must be resolvable at init time.

in

the signal to write

key

the key into the enclosing object's outputs map, producing an AudioCue

sampleFormat

a sample format id as given by MkAudioCue.id(). The default is 2 (32-bit Float). Must be resolvable at init time.

sampleRate

the nominal sample-rate of the file. The default is 44100. Must be resolvable at init time.

Companion:
object
object MkDouble extends ProductReader[MkDouble]
Companion:
class
final case class MkDouble(key: String, in: GE) extends Expander[Unit] with Reader
Companion:
object
object MkDoubleVector extends ProductReader[MkDoubleVector]
Companion:
class
final case class MkDoubleVector(key: String, in: GE) extends Expander[Unit] with Reader
Companion:
object
object MkInt extends ProductReader[MkInt]
Companion:
class
final case class MkInt(key: String, in: GE) extends Expander[Unit] with Reader
Companion:
object
object MkIntVector extends ProductReader[MkIntVector]
Companion:
class
final case class MkIntVector(key: String, in: GE) extends Expander[Unit] with Reader
Companion:
object
object MkLong extends ProductReader[MkLong]
Companion:
class
final case class MkLong(key: String, in: GE) extends Expander[Unit] with Reader
Companion:
object
object OnComplete extends ProductReader[OnComplete]
Companion:
class
final case class OnComplete(key: String) extends Expander[Unit]

A UGen that invokes an action once the surrounding graph has completed. The action is called with a Try[Unit] as its universe value.

A UGen that invokes an action once the surrounding graph has completed. The action is called with a Try[Unit] as its universe value.

Value parameters:
key

key to the hosting object's attribute map, at which an action is expected to be found.

Companion:
object
object Ops extends Ops
object PhysicalIn extends ProductReader[PhysicalIn]
Companion:
class
final case class PhysicalIn(indices: GE, numChannels: Int) extends Lazy

An unusual UGen that couples FScape to a real-time audio interface input. It is similar to the standard (ScalaCollider) PhysicalIn UGen, and it was added to be able to work-around limitations of SuperCollider on WebAssembly (such as missing audio file output). It is also useful for testing FScape processes by directly feeding in signals, possibly playing them back in real-time with the corresponding PhysicalOut UGen.

An unusual UGen that couples FScape to a real-time audio interface input. It is similar to the standard (ScalaCollider) PhysicalIn UGen, and it was added to be able to work-around limitations of SuperCollider on WebAssembly (such as missing audio file output). It is also useful for testing FScape processes by directly feeding in signals, possibly playing them back in real-time with the corresponding PhysicalOut UGen.

This UGen should be considered experimental, and it is probably not suited to run in permanently a sound installation. It is important to know that the implementation is different between the JVM (desktop) platform and the JS (browser) platform. On the desktop, the input signal comes from SuperCollider (transferring buffer data between SuperCollider and FScape), whereas in the browser, the Web Audio API is used directly. This also leads to different behaviour in terms of latency and drop-out stability.

For drop-out free combined use of PhysicalIn and PhysicalOut, consider inserting a delay by prepending a DC(0.0) of 0.5 to 1.0 seconds duration to the output.

Value parameters:
indices

the zero-based channel offset. '''Note:''' this is currently not implemented, therefore leave it at the default of zero.

numChannels

the number of channels to stream. The UGen has been tested with mono and stereo signals, and bandwidth seems to be sufficient in these cases. Higher values have not been battle-tested.

See also:
Companion:
object
object PhysicalOut extends ProductReader[PhysicalOut]
Companion:
class
final case class PhysicalOut(indices: GE, in: GE) extends Expander[Unit]

An unusual UGen that couples FScape to a real-time audio interface output. It is similar to the standard (ScalaCollider) PhysicalOut UGen, and it was added to be able to work-around limitations of SuperCollider on WebAssembly (such as missing audio file input). It is also useful for testing FScape processes by directly listening to signals, possibly coming from real-time input as well with the corresponding PhysicalIn UGen.

An unusual UGen that couples FScape to a real-time audio interface output. It is similar to the standard (ScalaCollider) PhysicalOut UGen, and it was added to be able to work-around limitations of SuperCollider on WebAssembly (such as missing audio file input). It is also useful for testing FScape processes by directly listening to signals, possibly coming from real-time input as well with the corresponding PhysicalIn UGen.

This UGen should be considered experimental, and it is probably not suited to run in permanently a sound installation. It is important to know that the implementation is different between the JVM (desktop) platform and the JS (browser) platform. On the desktop, the output signal is sent to SuperCollider (transferring buffer data between FScape and SuperCollider), whereas in the browser, the Web Audio API is used directly. This also leads to different behaviour in terms of latency and drop-out stability.

For drop-out free combined use of PhysicalIn and PhysicalOut, consider inserting a delay by prepending a DC(0.0) of 0.5 to 1.0 seconds duration to the output.

Value parameters:
in

the signal stream. The UGen has been tested with mono and stereo signals, and bandwidth seems to be sufficient in these cases. Higher values have not been battle-tested.

indices

the zero-based channel offset. '''Note:''' this is currently not implemented, therefore leave it at the default of zero.

See also:
Companion:
object