bases¶
-
class BinaryOpUGen(calculation_rate=
None
, special_index=None
, left=None
, right=None
)¶ Bases:
UGen
A binary operator ugen, created by applying a binary operator to two ugens.
>>> left_operand = supriya.ugens.SinOsc.ar() >>> right_operand = supriya.ugens.WhiteNoise.kr() >>> binary_op_ugen = left_operand * right_operand >>> binary_op_ugen BinaryOpUGen.ar()
>>> binary_op_ugen.operator BinaryOperator.MULTIPLICATION
- property left : SupportsFloat | UGenMethodMixin¶
- property operator¶
Gets operator of BinaryOpUgen.
>>> left = supriya.ugens.SinOsc.ar() >>> right = supriya.ugens.WhiteNoise.kr() >>> binary_op_ugen = left / right >>> binary_op_ugen.operator BinaryOperator.FLOAT_DIVISION
Returns binary operator.
- property right : SupportsFloat | UGenMethodMixin¶
-
class MultiOutUGen(channel_count=
1
, **kwargs)¶ Bases:
UGen
Abstract base class for ugens with multiple outputs.
-
class OutputProxy(source=
None
, output_index=None
)¶ Bases:
UGenMethodMixin
- __iter__()¶
- __len__()¶
- property calculation_rate¶
- property has_done_flag¶
- property output_index¶
- property signal_range¶
- property source¶
- class Param(default, check, unexpanded)¶
Bases:
NamedTuple
-
class UGen(calculation_rate=
None
, special_index=0
, **kwargs)¶ Bases:
UGenMethodMixin
A UGen.
- __getitem__(i)¶
Gets output proxy at index i.
>>> ugen = supriya.ugens.SinOsc.ar() >>> ugen[0] SinOsc.ar()[0]
Returns output proxy.
- __len__()¶
Gets number of ugen outputs.
Returns integer.
- property calculation_rate¶
Gets calculation-rate of ugen.
>>> ugen = supriya.ugens.SinOsc.ar( ... frequency=supriya.ugens.WhiteNoise.kr(), ... phase=0.5, ... ) >>> ugen.calculation_rate CalculationRate.AUDIO
Returns calculation-rate.
- property has_done_flag¶
- property inputs¶
Gets inputs of ugen.
>>> ugen = supriya.ugens.SinOsc.ar( ... frequency=supriya.ugens.WhiteNoise.kr(), ... phase=0.5, ... ) >>> for input_ in ugen.inputs: ... input_ ... WhiteNoise.kr()[0] 0.5
Returns tuple.
- property is_input_ugen¶
- property is_output_ugen¶
- property outputs¶
Gets outputs of ugen.
>>> ugen = supriya.ugens.SinOsc.ar( ... frequency=supriya.ugens.WhiteNoise.kr(), ... phase=0.5, ... ) >>> ugen.outputs (CalculationRate.AUDIO,)
Returns tuple.
- property signal_range¶
Gets signal range of ugen.
>>> ugen = supriya.ugens.SinOsc.ar() >>> ugen.signal_range SignalRange.BIPOLAR
A bipolar signal range indicates that the ugen generates signals above and below zero.
A unipolar signal range indicates that the ugen only generates signals of 0 or greater.
Returns signal range.
- property special_index¶
Gets special index of ugen.
>>> ugen = supriya.ugens.SinOsc.ar( ... frequency=supriya.ugens.WhiteNoise.kr(), ... phase=0.5, ... ) >>> ugen.special_index 0
The special index of most ugens will be 0. SuperColliders’s synth definition file format uses the special index to store the operator id for binary and unary operator ugens, and the parameter index of controls.
Returns integer.
- class UGenArray(ugens)¶
Bases:
UGenMethodMixin
,Sequence
- __getitem__(i)¶
- __len__()¶
- property signal_range¶
- property ugens¶
- class UGenMethodMixin¶
Bases:
object
- __abs__() UGenMethodMixin ¶
Gets absolute value of ugen graph.
Example 1:
>>> ugen_graph = supriya.ugens.WhiteNoise.ar() >>> result = abs(ugen_graph) >>> result UnaryOpUGen.ar()
>>> supriya.graph(result)
>>> print(result) synthdef: name: f21696d155a2686700992f0e9a04a79c ugens: - WhiteNoise.ar: null - UnaryOpUGen(ABSOLUTE_VALUE).ar: source: WhiteNoise.ar[0]
Example 2:
>>> ugen_graph = supriya.ugens.SinOsc.ar( ... frequency=(440, 442, 443), ... ) >>> result = abs(ugen_graph) >>> result UGenArray({3})
>>> supriya.graph(result)
>>> print(result) synthdef: name: 1d45df2f3d33d1b0641d2c464498f6c4 ugens: - SinOsc.ar/0: frequency: 440.0 phase: 0.0 - UnaryOpUGen(ABSOLUTE_VALUE).ar/0: source: SinOsc.ar/0[0] - SinOsc.ar/1: frequency: 442.0 phase: 0.0 - UnaryOpUGen(ABSOLUTE_VALUE).ar/1: source: SinOsc.ar/1[0] - SinOsc.ar/2: frequency: 443.0 phase: 0.0 - UnaryOpUGen(ABSOLUTE_VALUE).ar/2: source: SinOsc.ar/2[0]
Returns ugen graph.
- __add__(expr: SupportsFloat | UGenMethodMixin) UGenMethodMixin ¶
Adds expr to ugen graph.
Example 1:
>>> ugen_graph = supriya.ugens.WhiteNoise.kr() >>> expr = supriya.ugens.SinOsc.ar() >>> result = ugen_graph + expr >>> result BinaryOpUGen.ar()
>>> supriya.graph(result)
>>> print(result) synthdef: name: 6bf4339326d015532b7604cd7af9ad3b ugens: - WhiteNoise.kr: null - SinOsc.ar: frequency: 440.0 phase: 0.0 - BinaryOpUGen(ADDITION).ar: left: WhiteNoise.kr[0] right: SinOsc.ar[0]
Example 2:
>>> ugen_graph = supriya.ugens.WhiteNoise.kr() >>> expr = supriya.ugens.SinOsc.ar( ... frequency=[440, 442, 443], ... ) >>> result = ugen_graph + expr >>> result UGenArray({3})
>>> supriya.graph(result)
>>> print(result) synthdef: name: f4a3c1ed35cc5f6fe66b70a3bc520b10 ugens: - WhiteNoise.kr: null - SinOsc.ar/0: frequency: 440.0 phase: 0.0 - BinaryOpUGen(ADDITION).ar/0: left: WhiteNoise.kr[0] right: SinOsc.ar/0[0] - SinOsc.ar/1: frequency: 442.0 phase: 0.0 - BinaryOpUGen(ADDITION).ar/1: left: WhiteNoise.kr[0] right: SinOsc.ar/1[0] - SinOsc.ar/2: frequency: 443.0 phase: 0.0 - BinaryOpUGen(ADDITION).ar/2: left: WhiteNoise.kr[0] right: SinOsc.ar/2[0]
Example 3:
>>> ugen_graph = supriya.ugens.Dust.ar( ... density=11.5, ... ) >>> expr = 4 >>> result = ugen_graph + expr >>> result BinaryOpUGen.ar()
>>> supriya.graph(result)
>>> print(result) synthdef: name: f79088cc154ef2b65c72a0f8de8336ce ugens: - Dust.ar: density: 11.5 - BinaryOpUGen(ADDITION).ar: left: Dust.ar[0] right: 4.0
Returns ugen graph.
- __div__(expr: SupportsFloat | UGenMethodMixin) UGenMethodMixin ¶
Divides ugen graph by expr.
Example 1:
>>> ugen_graph = supriya.ugens.WhiteNoise.kr() >>> expr = supriya.ugens.SinOsc.ar() >>> result = ugen_graph / expr >>> result BinaryOpUGen.ar()
>>> supriya.graph(result)
>>> print(result) synthdef: name: 6da024a346859242c441fe03326d2adc ugens: - WhiteNoise.kr: null - SinOsc.ar: frequency: 440.0 phase: 0.0 - BinaryOpUGen(FLOAT_DIVISION).ar: left: WhiteNoise.kr[0] right: SinOsc.ar[0]
Example 2:
>>> ugen_graph = supriya.ugens.WhiteNoise.kr() >>> expr = supriya.ugens.SinOsc.ar( ... frequency=[440, 442, 443], ... ) >>> result = ugen_graph / expr >>> result UGenArray({3})
>>> supriya.graph(result)
>>> print(result) synthdef: name: be20d589dfccb721f56da8b002d86763 ugens: - WhiteNoise.kr: null - SinOsc.ar/0: frequency: 440.0 phase: 0.0 - BinaryOpUGen(FLOAT_DIVISION).ar/0: left: WhiteNoise.kr[0] right: SinOsc.ar/0[0] - SinOsc.ar/1: frequency: 442.0 phase: 0.0 - BinaryOpUGen(FLOAT_DIVISION).ar/1: left: WhiteNoise.kr[0] right: SinOsc.ar/1[0] - SinOsc.ar/2: frequency: 443.0 phase: 0.0 - BinaryOpUGen(FLOAT_DIVISION).ar/2: left: WhiteNoise.kr[0] right: SinOsc.ar/2[0]
Example 3:
>>> ugen_graph = supriya.ugens.Dust.ar( ... density=11.5, ... ) >>> expr = 4 >>> result = ugen_graph / expr >>> result BinaryOpUGen.ar()
>>> supriya.graph(result)
>>> print(result) synthdef: name: 672765c596fcaa083186b2f2b996ba1d ugens: - Dust.ar: density: 11.5 - BinaryOpUGen(FLOAT_DIVISION).ar: left: Dust.ar[0] right: 4.0
Returns ugen graph.
- __ge__(expr: SupportsFloat | UGenMethodMixin) UGenMethodMixin ¶
Tests if ugen graph if greater than or equal to expr.
Example 1:
>>> ugen_graph = supriya.ugens.WhiteNoise.kr() >>> expr = supriya.ugens.SinOsc.ar() >>> result = ugen_graph >= expr >>> result BinaryOpUGen.ar()
>>> supriya.graph(result)
>>> print(result) synthdef: name: 9db96233abf1f610d027ff285691482d ugens: - WhiteNoise.kr: null - SinOsc.ar: frequency: 440.0 phase: 0.0 - BinaryOpUGen(GREATER_THAN_OR_EQUAL).ar: left: WhiteNoise.kr[0] right: SinOsc.ar[0]
Example 2:
>>> ugen_graph = supriya.ugens.WhiteNoise.kr() >>> expr = supriya.ugens.SinOsc.ar( ... frequency=[440, 442, 443], ... ) >>> result = ugen_graph >= expr >>> result UGenArray({3})
>>> supriya.graph(result)
>>> print(result) synthdef: name: 6d43342b3787aa11a46cea54412407e1 ugens: - WhiteNoise.kr: null - SinOsc.ar/0: frequency: 440.0 phase: 0.0 - BinaryOpUGen(GREATER_THAN_OR_EQUAL).ar/0: left: WhiteNoise.kr[0] right: SinOsc.ar/0[0] - SinOsc.ar/1: frequency: 442.0 phase: 0.0 - BinaryOpUGen(GREATER_THAN_OR_EQUAL).ar/1: left: WhiteNoise.kr[0] right: SinOsc.ar/1[0] - SinOsc.ar/2: frequency: 443.0 phase: 0.0 - BinaryOpUGen(GREATER_THAN_OR_EQUAL).ar/2: left: WhiteNoise.kr[0] right: SinOsc.ar/2[0]
Example 3:
>>> ugen_graph = supriya.ugens.Dust.ar( ... density=11.5, ... ) >>> expr = 4 >>> result = ugen_graph >= expr >>> result BinaryOpUGen.ar()
>>> supriya.graph(result)
>>> print(result) synthdef: name: b06931195bab8e6f6ca2e3a857e71a95 ugens: - Dust.ar: density: 11.5 - BinaryOpUGen(GREATER_THAN_OR_EQUAL).ar: left: Dust.ar[0] right: 4.0
Returns ugen graph.
- __graph__()¶
Gets Graphviz representation of ugen graph.
Returns GraphvizGraph instance.
- __gt__(expr: SupportsFloat | UGenMethodMixin) UGenMethodMixin ¶
Tests if ugen graph if greater than expr.
Example 1:
>>> ugen_graph = supriya.ugens.WhiteNoise.kr() >>> expr = supriya.ugens.SinOsc.ar() >>> result = ugen_graph > expr >>> result BinaryOpUGen.ar()
>>> supriya.graph(result)
>>> print(result) synthdef: name: 01bebf935112af62ffdd282a99581904 ugens: - WhiteNoise.kr: null - SinOsc.ar: frequency: 440.0 phase: 0.0 - BinaryOpUGen(GREATER_THAN).ar: left: WhiteNoise.kr[0] right: SinOsc.ar[0]
Example 2:
>>> ugen_graph = supriya.ugens.WhiteNoise.kr() >>> expr = supriya.ugens.SinOsc.ar( ... frequency=[440, 442, 443], ... ) >>> result = ugen_graph > expr >>> result UGenArray({3})
>>> supriya.graph(result)
>>> print(result) synthdef: name: 55642179864ad927e9d5cf6358367677 ugens: - WhiteNoise.kr: null - SinOsc.ar/0: frequency: 440.0 phase: 0.0 - BinaryOpUGen(GREATER_THAN).ar/0: left: WhiteNoise.kr[0] right: SinOsc.ar/0[0] - SinOsc.ar/1: frequency: 442.0 phase: 0.0 - BinaryOpUGen(GREATER_THAN).ar/1: left: WhiteNoise.kr[0] right: SinOsc.ar/1[0] - SinOsc.ar/2: frequency: 443.0 phase: 0.0 - BinaryOpUGen(GREATER_THAN).ar/2: left: WhiteNoise.kr[0] right: SinOsc.ar/2[0]
Example 3:
>>> ugen_graph = supriya.ugens.Dust.ar( ... density=11.5, ... ) >>> expr = 4 >>> result = ugen_graph > expr >>> result BinaryOpUGen.ar()
>>> supriya.graph(result)
>>> print(result) synthdef: name: 5177e03443ad31ee2664aae2201fb979 ugens: - Dust.ar: density: 11.5 - BinaryOpUGen(GREATER_THAN).ar: left: Dust.ar[0] right: 4.0
Returns ugen graph.
- __le__(expr: SupportsFloat | UGenMethodMixin) UGenMethodMixin ¶
Tests if ugen graph if less than or equal to expr.
Example 1:
>>> ugen_graph = supriya.ugens.WhiteNoise.kr() >>> expr = supriya.ugens.SinOsc.ar() >>> result = ugen_graph <= expr >>> result BinaryOpUGen.ar()
>>> supriya.graph(result)
>>> print(result) synthdef: name: fefc06cbbc3babb35046306c6d41e3c5 ugens: - WhiteNoise.kr: null - SinOsc.ar: frequency: 440.0 phase: 0.0 - BinaryOpUGen(LESS_THAN_OR_EQUAL).ar: left: WhiteNoise.kr[0] right: SinOsc.ar[0]
Example 2:
>>> ugen_graph = supriya.ugens.WhiteNoise.kr() >>> expr = supriya.ugens.SinOsc.ar( ... frequency=[440, 442, 443], ... ) >>> result = ugen_graph <= expr >>> result UGenArray({3})
>>> supriya.graph(result)
>>> print(result) synthdef: name: 53f29d793fd676fbca1d541e938b66ca ugens: - WhiteNoise.kr: null - SinOsc.ar/0: frequency: 440.0 phase: 0.0 - BinaryOpUGen(LESS_THAN_OR_EQUAL).ar/0: left: WhiteNoise.kr[0] right: SinOsc.ar/0[0] - SinOsc.ar/1: frequency: 442.0 phase: 0.0 - BinaryOpUGen(LESS_THAN_OR_EQUAL).ar/1: left: WhiteNoise.kr[0] right: SinOsc.ar/1[0] - SinOsc.ar/2: frequency: 443.0 phase: 0.0 - BinaryOpUGen(LESS_THAN_OR_EQUAL).ar/2: left: WhiteNoise.kr[0] right: SinOsc.ar/2[0]
Example 3:
>>> ugen_graph = supriya.ugens.Dust.ar( ... density=11.5, ... ) >>> expr = 4 >>> result = ugen_graph <= expr >>> result BinaryOpUGen.ar()
>>> supriya.graph(result)
>>> print(result) synthdef: name: 3cf0414af96d130edf2e1b839f73036c ugens: - Dust.ar: density: 11.5 - BinaryOpUGen(LESS_THAN_OR_EQUAL).ar: left: Dust.ar[0] right: 4.0
Returns ugen graph.
- __lt__(expr: SupportsFloat | UGenMethodMixin) UGenMethodMixin ¶
Tests if ugen graph if less than expr.
Example 1:
>>> ugen_graph = supriya.ugens.WhiteNoise.kr() >>> expr = supriya.ugens.SinOsc.ar() >>> result = ugen_graph < expr >>> result BinaryOpUGen.ar()
>>> supriya.graph(result)
>>> print(result) synthdef: name: 844f34c0ffb28ecc24bd5cf0bae20b43 ugens: - WhiteNoise.kr: null - SinOsc.ar: frequency: 440.0 phase: 0.0 - BinaryOpUGen(LESS_THAN).ar: left: WhiteNoise.kr[0] right: SinOsc.ar[0]
Example 2:
>>> ugen_graph = supriya.ugens.WhiteNoise.kr() >>> expr = supriya.ugens.SinOsc.ar( ... frequency=[440, 442, 443], ... ) >>> result = ugen_graph < expr >>> result UGenArray({3})
>>> supriya.graph(result)
>>> print(result) synthdef: name: 14c1494fe4e153e690a8ef0a42e5834f ugens: - WhiteNoise.kr: null - SinOsc.ar/0: frequency: 440.0 phase: 0.0 - BinaryOpUGen(LESS_THAN).ar/0: left: WhiteNoise.kr[0] right: SinOsc.ar/0[0] - SinOsc.ar/1: frequency: 442.0 phase: 0.0 - BinaryOpUGen(LESS_THAN).ar/1: left: WhiteNoise.kr[0] right: SinOsc.ar/1[0] - SinOsc.ar/2: frequency: 443.0 phase: 0.0 - BinaryOpUGen(LESS_THAN).ar/2: left: WhiteNoise.kr[0] right: SinOsc.ar/2[0]
Example 3:
>>> ugen_graph = supriya.ugens.Dust.ar( ... density=11.5, ... ) >>> expr = 4 >>> result = ugen_graph < expr >>> result BinaryOpUGen.ar()
>>> supriya.graph(result)
>>> print(result) synthdef: name: e87d41791847aa80d8a3e56318e506e4 ugens: - Dust.ar: density: 11.5 - BinaryOpUGen(LESS_THAN).ar: left: Dust.ar[0] right: 4.0
Returns ugen graph.
- __mod__(expr: SupportsFloat | UGenMethodMixin) UGenMethodMixin ¶
Gets modulo of ugen graph and expr.
Example 1:
>>> ugen_graph = supriya.ugens.WhiteNoise.kr() >>> expr = supriya.ugens.SinOsc.ar() >>> result = ugen_graph % expr >>> result BinaryOpUGen.ar()
>>> supriya.graph(result)
>>> print(result) synthdef: name: e4a06e157474f8d1ae213916f3cf585a ugens: - WhiteNoise.kr: null - SinOsc.ar: frequency: 440.0 phase: 0.0 - BinaryOpUGen(MODULO).ar: left: WhiteNoise.kr[0] right: SinOsc.ar[0]
Example 2:
>>> ugen_graph = supriya.ugens.WhiteNoise.kr() >>> expr = supriya.ugens.SinOsc.ar( ... frequency=[440, 442, 443], ... ) >>> result = ugen_graph % expr >>> result UGenArray({3})
>>> supriya.graph(result)
>>> print(result) synthdef: name: 90badce1cf8fc1752b5eb99b29122a14 ugens: - WhiteNoise.kr: null - SinOsc.ar/0: frequency: 440.0 phase: 0.0 - BinaryOpUGen(MODULO).ar/0: left: WhiteNoise.kr[0] right: SinOsc.ar/0[0] - SinOsc.ar/1: frequency: 442.0 phase: 0.0 - BinaryOpUGen(MODULO).ar/1: left: WhiteNoise.kr[0] right: SinOsc.ar/1[0] - SinOsc.ar/2: frequency: 443.0 phase: 0.0 - BinaryOpUGen(MODULO).ar/2: left: WhiteNoise.kr[0] right: SinOsc.ar/2[0]
Example 3:
>>> ugen_graph = supriya.ugens.Dust.ar( ... density=11.5, ... ) >>> expr = 4 >>> result = ugen_graph % expr >>> result BinaryOpUGen.ar()
>>> supriya.graph(result)
>>> print(result) synthdef: name: bfa60877061daf112516cc3ec8c7ff69 ugens: - Dust.ar: density: 11.5 - BinaryOpUGen(MODULO).ar: left: Dust.ar[0] right: 4.0
Returns ugen graph.
- __mul__(expr: SupportsFloat | UGenMethodMixin) UGenMethodMixin ¶
Multiplies ugen graph by expr.
Example 1:
>>> ugen_graph = supriya.ugens.WhiteNoise.kr() >>> expr = supriya.ugens.SinOsc.ar() >>> result = ugen_graph * expr >>> result BinaryOpUGen.ar()
>>> supriya.graph(result)
>>> print(result) synthdef: name: ea2b5e5cec4e2d5a1bef0a8dda522bd3 ugens: - WhiteNoise.kr: null - SinOsc.ar: frequency: 440.0 phase: 0.0 - BinaryOpUGen(MULTIPLICATION).ar: left: WhiteNoise.kr[0] right: SinOsc.ar[0]
Example 2:
>>> ugen_graph = supriya.ugens.WhiteNoise.kr() >>> expr = supriya.ugens.SinOsc.ar( ... frequency=[440, 442, 443], ... ) >>> result = ugen_graph * expr >>> result UGenArray({3})
>>> supriya.graph(result)
>>> print(result) synthdef: name: 9d353c198344b6be3635244197bc2a4b ugens: - WhiteNoise.kr: null - SinOsc.ar/0: frequency: 440.0 phase: 0.0 - BinaryOpUGen(MULTIPLICATION).ar/0: left: WhiteNoise.kr[0] right: SinOsc.ar/0[0] - SinOsc.ar/1: frequency: 442.0 phase: 0.0 - BinaryOpUGen(MULTIPLICATION).ar/1: left: WhiteNoise.kr[0] right: SinOsc.ar/1[0] - SinOsc.ar/2: frequency: 443.0 phase: 0.0 - BinaryOpUGen(MULTIPLICATION).ar/2: left: WhiteNoise.kr[0] right: SinOsc.ar/2[0]
Example 3:
>>> ugen_graph = supriya.ugens.Dust.ar( ... density=11.5, ... ) >>> expr = 4 >>> result = ugen_graph * expr >>> result BinaryOpUGen.ar()
>>> supriya.graph(result)
>>> print(result) synthdef: name: 1735acd4add428d8ab317d00236b0fe7 ugens: - Dust.ar: density: 11.5 - BinaryOpUGen(MULTIPLICATION).ar: left: Dust.ar[0] right: 4.0
Returns ugen graph.
- __neg__() UGenMethodMixin ¶
Negates ugen graph.
Example 1:
>>> ugen_graph = supriya.ugens.WhiteNoise.ar() >>> result = -ugen_graph >>> result UnaryOpUGen.ar()
>>> supriya.graph(result)
>>> print(result) synthdef: name: a987a13f0593e4e4e070acffb11d5c3e ugens: - WhiteNoise.ar: null - UnaryOpUGen(NEGATIVE).ar: source: WhiteNoise.ar[0]
Example 2:
>>> ugen_graph = supriya.ugens.SinOsc.ar( ... frequency=(440, 442, 443), ... ) >>> result = -ugen_graph >>> result UGenArray({3})
>>> supriya.graph(result)
>>> print(result) synthdef: name: e5dfc1d4ecb11ed8170aaf11469a6443 ugens: - SinOsc.ar/0: frequency: 440.0 phase: 0.0 - UnaryOpUGen(NEGATIVE).ar/0: source: SinOsc.ar/0[0] - SinOsc.ar/1: frequency: 442.0 phase: 0.0 - UnaryOpUGen(NEGATIVE).ar/1: source: SinOsc.ar/1[0] - SinOsc.ar/2: frequency: 443.0 phase: 0.0 - UnaryOpUGen(NEGATIVE).ar/2: source: SinOsc.ar/2[0]
Returns ugen graph.
- __pow__(expr: SupportsFloat | UGenMethodMixin) UGenMethodMixin ¶
Raises ugen graph to the power of expr.
Example 1:
>>> ugen_graph = supriya.ugens.WhiteNoise.kr() >>> expr = supriya.ugens.SinOsc.ar() >>> result = ugen_graph**expr >>> result BinaryOpUGen.ar()
>>> supriya.graph(result)
>>> print(result) synthdef: name: 3498b370c0575fb2c2ed45143ba2da4f ugens: - WhiteNoise.kr: null - SinOsc.ar: frequency: 440.0 phase: 0.0 - BinaryOpUGen(POWER).ar: left: WhiteNoise.kr[0] right: SinOsc.ar[0]
Example 2:
>>> ugen_graph = supriya.ugens.WhiteNoise.kr() >>> expr = supriya.ugens.SinOsc.ar( ... frequency=[440, 442, 443], ... ) >>> result = ugen_graph**expr >>> result UGenArray({3})
>>> supriya.graph(result)
>>> print(result) synthdef: name: 04e78034682f9ffd6628fbfd09a28c13 ugens: - WhiteNoise.kr: null - SinOsc.ar/0: frequency: 440.0 phase: 0.0 - BinaryOpUGen(POWER).ar/0: left: WhiteNoise.kr[0] right: SinOsc.ar/0[0] - SinOsc.ar/1: frequency: 442.0 phase: 0.0 - BinaryOpUGen(POWER).ar/1: left: WhiteNoise.kr[0] right: SinOsc.ar/1[0] - SinOsc.ar/2: frequency: 443.0 phase: 0.0 - BinaryOpUGen(POWER).ar/2: left: WhiteNoise.kr[0] right: SinOsc.ar/2[0]
Example 3:
>>> ugen_graph = supriya.ugens.Dust.ar( ... density=11.5, ... ) >>> expr = 4 >>> result = ugen_graph**expr >>> result BinaryOpUGen.ar()
>>> supriya.graph(result)
>>> print(result) synthdef: name: 50b8e3b154bc85c98d76ced493a32731 ugens: - Dust.ar: density: 11.5 - BinaryOpUGen(POWER).ar: left: Dust.ar[0] right: 4.0
Returns ugen graph.
- __radd__(expr: SupportsFloat | UGenMethodMixin) UGenMethodMixin ¶
Adds ugen graph to expr.
Example 1:
>>> expr = 1.5 >>> ugen_graph = supriya.ugens.SinOsc.ar() >>> result = expr + ugen_graph >>> result BinaryOpUGen.ar()
>>> supriya.graph(result)
>>> print(result) synthdef: name: bb0592fad58b0bfa1a403c7ff6a400f3 ugens: - SinOsc.ar: frequency: 440.0 phase: 0.0 - BinaryOpUGen(ADDITION).ar: left: 1.5 right: SinOsc.ar[0]
Example 2:
>>> expr = [220, 330] >>> ugen_graph = supriya.ugens.SinOsc.ar( ... frequency=[440, 442, 443], ... ) >>> result = expr + ugen_graph >>> result UGenArray({3})
>>> supriya.graph(result)
>>> print(result) synthdef: name: 0ad0a3d4b7ddf8bb56807813efc62202 ugens: - SinOsc.ar/0: frequency: 440.0 phase: 0.0 - BinaryOpUGen(ADDITION).ar/0: left: 220.0 right: SinOsc.ar/0[0] - SinOsc.ar/1: frequency: 442.0 phase: 0.0 - BinaryOpUGen(ADDITION).ar/1: left: 330.0 right: SinOsc.ar/1[0] - SinOsc.ar/2: frequency: 443.0 phase: 0.0 - BinaryOpUGen(ADDITION).ar/2: left: 220.0 right: SinOsc.ar/2[0]
Returns ugen graph.
- __rdiv__(expr: SupportsFloat | UGenMethodMixin) UGenMethodMixin ¶
Divides expr by ugen graph.
Example 1:
>>> expr = 1.5 >>> ugen_graph = supriya.ugens.SinOsc.ar() >>> result = expr / ugen_graph >>> result BinaryOpUGen.ar()
>>> supriya.graph(result)
>>> print(result) synthdef: name: d79490206a430281b186b188d617f679 ugens: - SinOsc.ar: frequency: 440.0 phase: 0.0 - BinaryOpUGen(FLOAT_DIVISION).ar: left: 1.5 right: SinOsc.ar[0]
Example 2:
>>> expr = [220, 330] >>> ugen_graph = supriya.ugens.SinOsc.ar( ... frequency=[440, 442, 443], ... ) >>> result = expr / ugen_graph >>> result UGenArray({3})
>>> supriya.graph(result)
>>> print(result) synthdef: name: d71b3081490f800d5136c87f5fef46d1 ugens: - SinOsc.ar/0: frequency: 440.0 phase: 0.0 - BinaryOpUGen(FLOAT_DIVISION).ar/0: left: 220.0 right: SinOsc.ar/0[0] - SinOsc.ar/1: frequency: 442.0 phase: 0.0 - BinaryOpUGen(FLOAT_DIVISION).ar/1: left: 330.0 right: SinOsc.ar/1[0] - SinOsc.ar/2: frequency: 443.0 phase: 0.0 - BinaryOpUGen(FLOAT_DIVISION).ar/2: left: 220.0 right: SinOsc.ar/2[0]
Returns ugen graph.
- __rmod__(expr: SupportsFloat | UGenMethodMixin) UGenMethodMixin ¶
Gets modulo of expr and ugen graph.
Example 1:
>>> expr = 1.5 >>> ugen_graph = supriya.ugens.SinOsc.ar() >>> result = expr % ugen_graph >>> result BinaryOpUGen.ar()
>>> supriya.graph(result)
>>> print(result) synthdef: name: d79490206a430281b186b188d617f679 ugens: - SinOsc.ar: frequency: 440.0 phase: 0.0 - BinaryOpUGen(FLOAT_DIVISION).ar: left: 1.5 right: SinOsc.ar[0]
Example 2:
>>> expr = [220, 330] >>> ugen_graph = supriya.ugens.SinOsc.ar( ... frequency=[440, 442, 443], ... ) >>> result = expr % ugen_graph >>> result UGenArray({3})
>>> supriya.graph(result)
>>> print(result) synthdef: name: d71b3081490f800d5136c87f5fef46d1 ugens: - SinOsc.ar/0: frequency: 440.0 phase: 0.0 - BinaryOpUGen(FLOAT_DIVISION).ar/0: left: 220.0 right: SinOsc.ar/0[0] - SinOsc.ar/1: frequency: 442.0 phase: 0.0 - BinaryOpUGen(FLOAT_DIVISION).ar/1: left: 330.0 right: SinOsc.ar/1[0] - SinOsc.ar/2: frequency: 443.0 phase: 0.0 - BinaryOpUGen(FLOAT_DIVISION).ar/2: left: 220.0 right: SinOsc.ar/2[0]
Returns ugen graph.
- __rmul__(expr: SupportsFloat | UGenMethodMixin) UGenMethodMixin ¶
Multiplies expr by ugen graph.
Example 1:
>>> expr = 1.5 >>> ugen_graph = supriya.ugens.SinOsc.ar() >>> result = expr * ugen_graph >>> result BinaryOpUGen.ar()
>>> supriya.graph(result)
>>> print(result) synthdef: name: f60bbe0480298a7ae8b54de5a4c0260f ugens: - SinOsc.ar: frequency: 440.0 phase: 0.0 - BinaryOpUGen(MULTIPLICATION).ar: left: 1.5 right: SinOsc.ar[0]
Example 2:
>>> expr = [220, 330] >>> ugen_graph = supriya.ugens.SinOsc.ar( ... frequency=[440, 442, 443], ... ) >>> result = expr * ugen_graph >>> result UGenArray({3})
>>> supriya.graph(result)
>>> print(result) synthdef: name: 0295153106bff55a2bf6db3b7184d301 ugens: - SinOsc.ar/0: frequency: 440.0 phase: 0.0 - BinaryOpUGen(MULTIPLICATION).ar/0: left: 220.0 right: SinOsc.ar/0[0] - SinOsc.ar/1: frequency: 442.0 phase: 0.0 - BinaryOpUGen(MULTIPLICATION).ar/1: left: 330.0 right: SinOsc.ar/1[0] - SinOsc.ar/2: frequency: 443.0 phase: 0.0 - BinaryOpUGen(MULTIPLICATION).ar/2: left: 220.0 right: SinOsc.ar/2[0]
Returns ugen graph.
- __rpow__(expr: SupportsFloat | UGenMethodMixin) UGenMethodMixin ¶
Raises expr to the power of ugen graph.
Example 1:
>>> expr = 1.5 >>> ugen_graph = supriya.ugens.SinOsc.ar() >>> result = expr**ugen_graph >>> result BinaryOpUGen.ar()
>>> supriya.graph(result)
>>> print(result) synthdef: name: c450618c9e0fe5213629275da4e5e354 ugens: - SinOsc.ar: frequency: 440.0 phase: 0.0 - BinaryOpUGen(POWER).ar: left: 1.5 right: SinOsc.ar[0]
Example 2:
>>> expr = [220, 330] >>> ugen_graph = supriya.ugens.SinOsc.ar( ... frequency=[440, 442, 443], ... ) >>> result = expr**ugen_graph >>> result UGenArray({3})
>>> supriya.graph(result)
>>> print(result) synthdef: name: a614dc68313ee7ca2677e63fd499de0d ugens: - SinOsc.ar/0: frequency: 440.0 phase: 0.0 - BinaryOpUGen(POWER).ar/0: left: 220.0 right: SinOsc.ar/0[0] - SinOsc.ar/1: frequency: 442.0 phase: 0.0 - BinaryOpUGen(POWER).ar/1: left: 330.0 right: SinOsc.ar/1[0] - SinOsc.ar/2: frequency: 443.0 phase: 0.0 - BinaryOpUGen(POWER).ar/2: left: 220.0 right: SinOsc.ar/2[0]
Returns ugen graph.
- __rsub__(expr: SupportsFloat | UGenMethodMixin) UGenMethodMixin ¶
Subtracts ugen graph from expr.
Example 1:
>>> expr = 1.5 >>> ugen_graph = supriya.ugens.SinOsc.ar() >>> result = expr - ugen_graph >>> result BinaryOpUGen.ar()
>>> supriya.graph(result)
>>> print(result) synthdef: name: 74e331121aa41f4d49a6d38a38ca4a9a ugens: - SinOsc.ar: frequency: 440.0 phase: 0.0 - BinaryOpUGen(SUBTRACTION).ar: left: 1.5 right: SinOsc.ar[0]
Example 2:
>>> expr = [220, 330] >>> ugen_graph = supriya.ugens.SinOsc.ar( ... frequency=[440, 442, 443], ... ) >>> result = expr - ugen_graph >>> result UGenArray({3})
>>> supriya.graph(result)
>>> print(result) synthdef: name: 1ca2e8f3f541b9365413a0dbf9028e95 ugens: - SinOsc.ar/0: frequency: 440.0 phase: 0.0 - BinaryOpUGen(SUBTRACTION).ar/0: left: 220.0 right: SinOsc.ar/0[0] - SinOsc.ar/1: frequency: 442.0 phase: 0.0 - BinaryOpUGen(SUBTRACTION).ar/1: left: 330.0 right: SinOsc.ar/1[0] - SinOsc.ar/2: frequency: 443.0 phase: 0.0 - BinaryOpUGen(SUBTRACTION).ar/2: left: 220.0 right: SinOsc.ar/2[0]
Returns ugen graph.
- __rtruediv__(expr: SupportsFloat | UGenMethodMixin) UGenMethodMixin ¶
Divides expr by ugen graph.
Example 1:
>>> expr = 1.5 >>> ugen_graph = supriya.ugens.SinOsc.ar() >>> result = expr / ugen_graph >>> result BinaryOpUGen.ar()
>>> supriya.graph(result)
>>> print(result) synthdef: name: d79490206a430281b186b188d617f679 ugens: - SinOsc.ar: frequency: 440.0 phase: 0.0 - BinaryOpUGen(FLOAT_DIVISION).ar: left: 1.5 right: SinOsc.ar[0]
Example 2:
>>> expr = [220, 330] >>> ugen_graph = supriya.ugens.SinOsc.ar( ... frequency=[440, 442, 443], ... ) >>> result = expr / ugen_graph >>> result UGenArray({3})
>>> supriya.graph(result)
>>> print(result) synthdef: name: d71b3081490f800d5136c87f5fef46d1 ugens: - SinOsc.ar/0: frequency: 440.0 phase: 0.0 - BinaryOpUGen(FLOAT_DIVISION).ar/0: left: 220.0 right: SinOsc.ar/0[0] - SinOsc.ar/1: frequency: 442.0 phase: 0.0 - BinaryOpUGen(FLOAT_DIVISION).ar/1: left: 330.0 right: SinOsc.ar/1[0] - SinOsc.ar/2: frequency: 443.0 phase: 0.0 - BinaryOpUGen(FLOAT_DIVISION).ar/2: left: 220.0 right: SinOsc.ar/2[0]
Returns ugen graph.
- __sub__(expr: SupportsFloat | UGenMethodMixin) UGenMethodMixin ¶
Subtracts expr from ugen graph.
Example 1:
>>> ugen_graph = supriya.ugens.WhiteNoise.kr() >>> expr = supriya.ugens.SinOsc.ar() >>> result = ugen_graph - expr >>> result BinaryOpUGen.ar()
>>> supriya.graph(result)
>>> print(result) synthdef: name: cd62fff8ff3ad7758d0f7ad82f39c7ce ugens: - WhiteNoise.kr: null - SinOsc.ar: frequency: 440.0 phase: 0.0 - BinaryOpUGen(SUBTRACTION).ar: left: WhiteNoise.kr[0] right: SinOsc.ar[0]
Example 2:
>>> ugen_graph = supriya.ugens.WhiteNoise.kr() >>> expr = supriya.ugens.SinOsc.ar( ... frequency=[440, 442, 443], ... ) >>> result = ugen_graph - expr >>> result UGenArray({3})
>>> supriya.graph(result)
>>> print(result) synthdef: name: 9a8355f84507908cadf3cc63187ddab4 ugens: - WhiteNoise.kr: null - SinOsc.ar/0: frequency: 440.0 phase: 0.0 - BinaryOpUGen(SUBTRACTION).ar/0: left: WhiteNoise.kr[0] right: SinOsc.ar/0[0] - SinOsc.ar/1: frequency: 442.0 phase: 0.0 - BinaryOpUGen(SUBTRACTION).ar/1: left: WhiteNoise.kr[0] right: SinOsc.ar/1[0] - SinOsc.ar/2: frequency: 443.0 phase: 0.0 - BinaryOpUGen(SUBTRACTION).ar/2: left: WhiteNoise.kr[0] right: SinOsc.ar/2[0]
Example 3:
>>> ugen_graph = supriya.ugens.Dust.ar( ... density=11.5, ... ) >>> expr = 4 >>> result = ugen_graph - expr >>> result BinaryOpUGen.ar()
>>> supriya.graph(result)
>>> print(result) synthdef: name: 48ca704043ed00a2b6a55fd4b6b72cf1 ugens: - Dust.ar: density: 11.5 - BinaryOpUGen(SUBTRACTION).ar: left: Dust.ar[0] right: 4.0
Returns ugen graph.
- __truediv__(expr: SupportsFloat | UGenMethodMixin) UGenMethodMixin ¶
Divides ugen graph by expr.
Example 1:
>>> ugen_graph = supriya.ugens.WhiteNoise.kr() >>> expr = supriya.ugens.SinOsc.ar() >>> result = ugen_graph / expr >>> result BinaryOpUGen.ar()
>>> supriya.graph(result)
>>> print(result) synthdef: name: 6da024a346859242c441fe03326d2adc ugens: - WhiteNoise.kr: null - SinOsc.ar: frequency: 440.0 phase: 0.0 - BinaryOpUGen(FLOAT_DIVISION).ar: left: WhiteNoise.kr[0] right: SinOsc.ar[0]
Example 2:
>>> ugen_graph = supriya.ugens.WhiteNoise.kr() >>> expr = supriya.ugens.SinOsc.ar( ... frequency=[440, 442, 443], ... ) >>> result = ugen_graph / expr >>> result UGenArray({3})
>>> supriya.graph(result)
>>> print(result) synthdef: name: be20d589dfccb721f56da8b002d86763 ugens: - WhiteNoise.kr: null - SinOsc.ar/0: frequency: 440.0 phase: 0.0 - BinaryOpUGen(FLOAT_DIVISION).ar/0: left: WhiteNoise.kr[0] right: SinOsc.ar/0[0] - SinOsc.ar/1: frequency: 442.0 phase: 0.0 - BinaryOpUGen(FLOAT_DIVISION).ar/1: left: WhiteNoise.kr[0] right: SinOsc.ar/1[0] - SinOsc.ar/2: frequency: 443.0 phase: 0.0 - BinaryOpUGen(FLOAT_DIVISION).ar/2: left: WhiteNoise.kr[0] right: SinOsc.ar/2[0]
Example 3:
>>> ugen_graph = supriya.ugens.Dust.ar( ... density=11.5, ... ) >>> expr = 4 >>> result = ugen_graph / expr >>> result BinaryOpUGen.ar()
>>> supriya.graph(result)
>>> print(result) synthdef: name: 672765c596fcaa083186b2f2b996ba1d ugens: - Dust.ar: density: 11.5 - BinaryOpUGen(FLOAT_DIVISION).ar: left: Dust.ar[0] right: 4.0
Returns ugen graph.
- absolute_difference(expr: SupportsFloat | UGenMethodMixin) UGenMethodMixin ¶
Calculates absolute difference between ugen graph and expr.
>>> ugen_graph = supriya.ugens.SinOsc.ar() >>> expr = supriya.ugens.WhiteNoise.kr() >>> result = ugen_graph.absolute_difference(expr)
>>> supriya.graph(result)
>>> print(result) synthdef: name: a6b274b5f30e1dfa86ac1d00ef1c169b ugens: - SinOsc.ar: frequency: 440.0 phase: 0.0 - WhiteNoise.kr: null - BinaryOpUGen(ABSOLUTE_DIFFERENCE).ar: left: SinOsc.ar[0] right: WhiteNoise.kr[0]
Returns ugen graph.
- amplitude_to_db() UGenMethodMixin ¶
Converts ugen graph from amplitude to decibels.
>>> ugen_graph = supriya.ugens.WhiteNoise.ar() >>> result = ugen_graph.amplitude_to_db()
>>> supriya.graph(result)
>>> print(result) synthdef: name: 73daa5fd8db0d28c03c3872c845fd3ed ugens: - WhiteNoise.ar: null - UnaryOpUGen(AMPLITUDE_TO_DB).ar: source: WhiteNoise.ar[0]
Returns ugen graph.
- as_int() UGenMethodMixin ¶
- as_maximum(expr: SupportsFloat | UGenMethodMixin) UGenMethodMixin ¶
Calculates maximum between ugen graph and expr.
>>> left = supriya.ugens.SinOsc.ar() >>> right = supriya.ugens.WhiteNoise.kr() >>> operation = left.as_maximum(right) >>> print(operation) synthdef: name: dcdca07fb0439c8b4321f42803d18c32 ugens: - SinOsc.ar: frequency: 440.0 phase: 0.0 - WhiteNoise.kr: null - BinaryOpUGen(MAXIMUM).ar: left: SinOsc.ar[0] right: WhiteNoise.kr[0]
Returns ugen graph.
- as_minimum(expr: SupportsFloat | UGenMethodMixin) UGenMethodMixin ¶
Calculates minimum between ugen graph and expr.
>>> left = supriya.ugens.SinOsc.ar() >>> right = supriya.ugens.WhiteNoise.kr() >>> operation = left.as_minimum(right) >>> print(operation) synthdef: name: f80c0a7b300911e9eff0e8760f5fab18 ugens: - SinOsc.ar: frequency: 440.0 phase: 0.0 - WhiteNoise.kr: null - BinaryOpUGen(MINIMUM).ar: left: SinOsc.ar[0] right: WhiteNoise.kr[0]
Returns ugen graph.
- ceiling() UGenMethodMixin ¶
Calculates the ceiling of ugen graph.
>>> source = supriya.ugens.DC.ar(source=0.5) >>> operation = source.ceiling() >>> print(operation) synthdef: name: c7b1855219f3364f731bdd2e4599b1d1 ugens: - DC.ar: source: 0.5 - UnaryOpUGen(CEILING).ar: source: DC.ar[0]
Returns ugen graph.
- clip(minimum: SupportsFloat | UGenMethodMixin, maximum: SupportsFloat | UGenMethodMixin) UGenMethodMixin ¶
Clips ugen graph.
Example 1:
>>> ugen_graph = supriya.ugens.WhiteNoise.ar() >>> result = ugen_graph.clip(-0.25, 0.25)
>>> supriya.graph(result)
>>> print(result) synthdef: name: e710843b0e0fbc5e6185afc6cdf90149 ugens: - WhiteNoise.ar: null - Clip.ar: source: WhiteNoise.ar[0] minimum: -0.25 maximum: 0.25
Example 2:
>>> ugen_graph = supriya.ugens.SinOsc.ar( ... frequency=[440, 442, 443], ... ) >>> result = ugen_graph.clip(-0.25, 0.25)
>>> supriya.graph(result)
>>> print(result) synthdef: name: 000e997ea0d7e8637c9f9040547baa50 ugens: - SinOsc.ar/0: frequency: 440.0 phase: 0.0 - Clip.ar/0: source: SinOsc.ar/0[0] minimum: -0.25 maximum: 0.25 - SinOsc.ar/1: frequency: 442.0 phase: 0.0 - Clip.ar/1: source: SinOsc.ar/1[0] minimum: -0.25 maximum: 0.25 - SinOsc.ar/2: frequency: 443.0 phase: 0.0 - Clip.ar/2: source: SinOsc.ar/2[0] minimum: -0.25 maximum: 0.25
- cubed() UGenMethodMixin ¶
Calculates the cube of ugen graph.
>>> source = supriya.ugens.DC.ar(source=0.5) >>> operation = source.cubed() >>> print(operation) synthdef: name: ad344666e7f3f60edac95b1ea40c412d ugens: - DC.ar: source: 0.5 - UnaryOpUGen(CUBED).ar: source: DC.ar[0]
Returns ugen graph.
- db_to_amplitude() UGenMethodMixin ¶
Converts ugen graph from decibels to amplitude.
>>> ugen_graph = supriya.ugens.WhiteNoise.ar() >>> result = ugen_graph.db_to_amplitude()
>>> supriya.graph(result)
>>> print(result) synthdef: name: fe82aae42b01b2b43d427cafd77c1c22 ugens: - WhiteNoise.ar: null - UnaryOpUGen(DB_TO_AMPLITUDE).ar: source: WhiteNoise.ar[0]
Returns ugen graph.
- distort() UGenMethodMixin ¶
Distorts ugen graph non-linearly.
>>> source = supriya.ugens.DC.ar(source=0.5) >>> operation = source.distort() >>> print(operation) synthdef: name: bb632e15f448820d93b3880ad943617b ugens: - DC.ar: source: 0.5 - UnaryOpUGen(DISTORT).ar: source: DC.ar[0]
Returns ugen graph.
- exponential() UGenMethodMixin ¶
Calculates the natural exponential function of ugen graph.
>>> source = supriya.ugens.DC.ar(source=0.5) >>> operation = source.exponential() >>> print(operation) synthdef: name: f3b8b1036b3cceddf116c3f6a3c5a9a0 ugens: - DC.ar: source: 0.5 - UnaryOpUGen(EXPONENTIAL).ar: source: DC.ar[0]
Returns ugen graph.
-
exponential_range(minimum=
0.01
, maximum=1.0
) UGenMethodMixin ¶
- floor() UGenMethodMixin ¶
Calculates the floor of ugen graph.
>>> source = supriya.ugens.DC.ar(source=0.5) >>> operation = source.floor() >>> print(operation) synthdef: name: 407228cfdb74bdd79b51c425fb8a7f77 ugens: - DC.ar: source: 0.5 - UnaryOpUGen(FLOOR).ar: source: DC.ar[0]
Returns ugen graph.
- fractional_part() UGenMethodMixin ¶
Calculates the fraction part of ugen graph.
>>> source = supriya.ugens.DC.ar(source=0.5) >>> operation = source.fractional_part() >>> print(operation) synthdef: name: c663d5ee6c7c5347c043727c628af658 ugens: - DC.ar: source: 0.5 - UnaryOpUGen(FRACTIONAL_PART).ar: source: DC.ar[0]
Returns ugen graph.
- hanning_window() UGenMethodMixin ¶
Calculates Hanning-window of ugen graph.
>>> ugen_graph = supriya.ugens.LFNoise2.ar() >>> result = ugen_graph.hanning_window()
>>> supriya.graph(result)
>>> print(result) synthdef: name: 18cb43db42ae3499f2c233e83df877fd ugens: - LFNoise2.ar: frequency: 500.0 - UnaryOpUGen(HANNING_WINDOW).ar: source: LFNoise2.ar[0]
Returns ugen graph.
- hz_to_midi() UGenMethodMixin ¶
Converts ugen graph from Hertz to midi note number.
>>> ugen_graph = supriya.ugens.WhiteNoise.ar() >>> result = ugen_graph.hz_to_midi()
>>> supriya.graph(result)
>>> print(result) synthdef: name: 227a6ae85bc89b3af939cff32f54e36a ugens: - WhiteNoise.ar: null - UnaryOpUGen(HZ_TO_MIDI).ar: source: WhiteNoise.ar[0]
Returns ugen graph.
- hz_to_octave() UGenMethodMixin ¶
Converts ugen graph from Hertz to octave number.
>>> ugen_graph = supriya.ugens.WhiteNoise.ar() >>> result = ugen_graph.hz_to_octave()
>>> supriya.graph(result)
>>> print(result) synthdef: name: e4fd4ca786d453fc5dfb955c63b6fbf6 ugens: - WhiteNoise.ar: null - UnaryOpUGen(HZ_TO_OCTAVE).ar: source: WhiteNoise.ar[0]
Returns ugen graph.
- is_equal_to(expr: SupportsFloat | UGenMethodMixin) UGenMethodMixin ¶
Calculates equality between ugen graph and expr.
>>> left = supriya.ugens.SinOsc.ar() >>> right = supriya.ugens.WhiteNoise.kr() >>> operation = left.is_equal_to(right) >>> print(operation) synthdef: name: 8287d890708ce26adff4968d63d494a0 ugens: - SinOsc.ar: frequency: 440.0 phase: 0.0 - WhiteNoise.kr: null - BinaryOpUGen(EQUAL).ar: left: SinOsc.ar[0] right: WhiteNoise.kr[0]
Returns ugen graph.
- is_not_equal_to(expr: SupportsFloat | UGenMethodMixin) UGenMethodMixin ¶
Calculates inequality between ugen graph and expr.
>>> left = supriya.ugens.SinOsc.ar() >>> right = supriya.ugens.WhiteNoise.kr() >>> operation = left.is_not_equal_to(right) >>> print(operation) synthdef: name: b9f77aa86bc08a3b023d8f664afef05d ugens: - SinOsc.ar: frequency: 440.0 phase: 0.0 - WhiteNoise.kr: null - BinaryOpUGen(NOT_EQUAL).ar: left: SinOsc.ar[0] right: WhiteNoise.kr[0]
Returns ugen graph.
-
lagged(lag_time=
0.5
) UGenMethodMixin ¶ Lags ugen graph.
>>> ugen_graph = supriya.ugens.WhiteNoise.ar() >>> result = ugen_graph.lagged(0.5)
>>> supriya.graph(result)
>>> print(result) synthdef: name: 6c3e2cc1a3d54ecfaa49d567a84eae77 ugens: - WhiteNoise.ar: null - Lag.ar: source: WhiteNoise.ar[0] lag_time: 0.5
>>> ugen_graph = supriya.ugens.SinOsc.ar( ... frequency=[440, 442, 443], ... ) >>> result = ugen_graph.lagged(0.5)
>>> supriya.graph(result)
>>> print(result) synthdef: name: 67098a4ddab35f6e1333a80a226bf559 ugens: - SinOsc.ar/0: frequency: 440.0 phase: 0.0 - Lag.ar/0: source: SinOsc.ar/0[0] lag_time: 0.5 - SinOsc.ar/1: frequency: 442.0 phase: 0.0 - Lag.ar/1: source: SinOsc.ar/1[0] lag_time: 0.5 - SinOsc.ar/2: frequency: 443.0 phase: 0.0 - Lag.ar/2: source: SinOsc.ar/2[0] lag_time: 0.5
- log() UGenMethodMixin ¶
Calculates the natural logarithm of ugen graph.
>>> source = supriya.ugens.DC.ar(source=0.5) >>> operation = source.log() >>> print(operation) synthdef: name: 4da44dab9d935efd1cf098b4d7cec420 ugens: - DC.ar: source: 0.5 - UnaryOpUGen(LOG).ar: source: DC.ar[0]
Returns ugen graph.
- log10() UGenMethodMixin ¶
Calculates the base-10 logarithm of ugen graph.
>>> source = supriya.ugens.DC.ar(source=0.5) >>> operation = source.log10() >>> print(operation) synthdef: name: 122d9333b8ac76164782d00707d3386a ugens: - DC.ar: source: 0.5 - UnaryOpUGen(LOG10).ar: source: DC.ar[0]
Returns ugen graph.
- log2() UGenMethodMixin ¶
Calculates the base-2 logarithm of ugen graph.
>>> source = supriya.ugens.DC.ar(source=0.5) >>> operation = source.log2() >>> print(operation) synthdef: name: f956f79a387ffbeb409326046397b4dd ugens: - DC.ar: source: 0.5 - UnaryOpUGen(LOG2).ar: source: DC.ar[0]
Returns ugen graph.
- midi_to_hz() UGenMethodMixin ¶
Converts ugen graph from midi note number to Hertz.
>>> ugen_graph = supriya.ugens.WhiteNoise.ar() >>> result = ugen_graph.midi_to_hz()
>>> supriya.graph(result)
>>> print(result) synthdef: name: 5faaa2c74715175625d774b20952f263 ugens: - WhiteNoise.ar: null - UnaryOpUGen(MIDI_TO_HZ).ar: source: WhiteNoise.ar[0]
Returns ugen graph.
- octave_to_hz() UGenMethodMixin ¶
Converts ugen graph from octave number to Hertz.
>>> ugen_graph = supriya.ugens.WhiteNoise.ar() >>> result = ugen_graph.octave_to_hz()
>>> supriya.graph(result)
>>> print(result) synthdef: name: 04c00b0f32088eb5e4cef0549aed6d96 ugens: - WhiteNoise.ar: null - UnaryOpUGen(OCTAVE_TO_HZ).ar: source: WhiteNoise.ar[0]
Returns ugen graph.
- power(expr: SupportsFloat | UGenMethodMixin) UGenMethodMixin ¶
Raises ugen graph to the power of expr.
>>> left = supriya.ugens.SinOsc.ar() >>> right = supriya.ugens.WhiteNoise.kr() >>> operation = left.power(right) >>> print(operation) synthdef: name: 06d6d3fe992bff8fce9ef55db6863c2a ugens: - SinOsc.ar: frequency: 440.0 phase: 0.0 - WhiteNoise.kr: null - BinaryOpUGen(POWER).ar: left: SinOsc.ar[0] right: WhiteNoise.kr[0]
Returns ugen graph.
-
range(minimum=
0.0
, maximum=1.0
) UGenMethodMixin ¶
- ratio_to_semitones() UGenMethodMixin ¶
Converts ugen graph from frequency ratio to semitone distance.
>>> ugen_graph = supriya.ugens.WhiteNoise.ar() >>> result = ugen_graph.ratio_to_semitones()
>>> supriya.graph(result)
>>> print(result) synthdef: name: 2e23630ade4fab35fc821c190b7f33db ugens: - WhiteNoise.ar: null - UnaryOpUGen(RATIO_TO_SEMITONES).ar: source: WhiteNoise.ar[0]
Returns ugen graph.
- reciprocal() UGenMethodMixin ¶
Calculates reciprocal of ugen graph.
>>> ugen_graph = supriya.ugens.LFNoise2.ar() >>> result = ugen_graph.reciprocal()
>>> supriya.graph(result)
>>> print(result) synthdef: name: 2e1c714d0def9d5c310197861d725559 ugens: - LFNoise2.ar: frequency: 500.0 - UnaryOpUGen(RECIPROCAL).ar: source: LFNoise2.ar[0]
Returns ugen graph.
- rectangle_window() UGenMethodMixin ¶
Calculates rectangle-window of ugen graph.
>>> ugen_graph = supriya.ugens.LFNoise2.ar() >>> result = ugen_graph.rectangle_window()
>>> supriya.graph(result)
>>> print(result) synthdef: name: 0d296187bbdb205f3a283f301a5fad61 ugens: - LFNoise2.ar: frequency: 500.0 - UnaryOpUGen(RECTANGLE_WINDOW).ar: source: LFNoise2.ar[0]
Returns ugen graph.
- s_curve() UGenMethodMixin ¶
Calculates S-curve of ugen graph.
>>> ugen_graph = supriya.ugens.LFNoise2.ar() >>> result = ugen_graph.s_curve()
>>> supriya.graph(result)
>>> print(result) synthdef: name: 21bcaf49922e2c4124d4cadba85c00ac ugens: - LFNoise2.ar: frequency: 500.0 - UnaryOpUGen(S_CURVE).ar: source: LFNoise2.ar[0]
Returns ugen graph.
-
scale(input_minimum, input_maximum, output_minimum, output_maximum, exponential=
False
) UGenMethodMixin ¶ Scales ugen graph from input_minimum and input_maximum to output_minimum and output_maximum.
>>> ugen_graph = supriya.ugens.WhiteNoise.ar() >>> result = ugen_graph.scale(-1, 1, 0.5, 0.75)
>>> supriya.graph(result)
>>> print(result) synthdef: name: e2295e64ed7b9c949ec22ccdc82520e3 ugens: - WhiteNoise.ar: null - MulAdd.ar: source: WhiteNoise.ar[0] multiplier: 0.125 addend: 0.625
>>> ugen_graph = supriya.ugens.SinOsc.ar( ... frequency=[440, 442, 443], ... ) >>> result = ugen_graph.scale(-1, 1, 0.5, 0.75, exponential=True)
>>> supriya.graph(result)
>>> print(result) synthdef: name: 88dca305143542bd40a82d8a6a337306 ugens: - SinOsc.ar/0: frequency: 440.0 phase: 0.0 - LinExp.ar/0: source: SinOsc.ar/0[0] input_minimum: -1.0 input_maximum: 1.0 output_minimum: 0.5 output_maximum: 0.75 - SinOsc.ar/1: frequency: 442.0 phase: 0.0 - LinExp.ar/1: source: SinOsc.ar/1[0] input_minimum: -1.0 input_maximum: 1.0 output_minimum: 0.5 output_maximum: 0.75 - SinOsc.ar/2: frequency: 443.0 phase: 0.0 - LinExp.ar/2: source: SinOsc.ar/2[0] input_minimum: -1.0 input_maximum: 1.0 output_minimum: 0.5 output_maximum: 0.75
- semitones_to_ratio() UGenMethodMixin ¶
Converts ugen graph from semitone distance to frequency ratio.
>>> ugen_graph = supriya.ugens.WhiteNoise.ar() >>> result = ugen_graph.semitones_to_ratio()
>>> supriya.graph(result)
>>> print(result) synthdef: name: f77ac2c24b06f8e620817f14285c2877 ugens: - WhiteNoise.ar: null - UnaryOpUGen(SEMITONES_TO_RATIO).ar: source: WhiteNoise.ar[0]
Returns ugen graph.
- sign() UGenMethodMixin ¶
Calculates sign of ugen graph.
>>> ugen_graph = supriya.ugens.LFNoise2.ar() >>> result = ugen_graph.sign()
>>> supriya.graph(result)
>>> print(result) synthdef: name: 6f62abd8306dbf1aae66c09dd98203b5 ugens: - LFNoise2.ar: frequency: 500.0 - UnaryOpUGen(SIGN).ar: source: LFNoise2.ar[0]
Returns ugen graph.
- softclip() UGenMethodMixin ¶
Distorts ugen graph non-linearly.
- square_root() UGenMethodMixin ¶
Calculates square root of ugen graph.
- squared() UGenMethodMixin ¶
Calculates square of ugen graph.
- sum() UGenMethodMixin ¶
Sums ugen graph.
Example 1:
>>> ugen_graph = supriya.ugens.LFNoise2.ar() >>> result = ugen_graph.sum()
>>> supriya.graph(result)
>>> print(result) synthdef: name: 350f2065d4edc69244399dcaff5a1ceb ugens: - LFNoise2.ar: frequency: 500.0
Example 2:
>>> ugen_graph = supriya.ugens.SinOsc.ar(frequency=[440, 442, 443]) >>> result = ugen_graph.sum()
>>> supriya.graph(result)
>>> print(result) synthdef: name: a1d26283f87b8b445db982ff0e831fb7 ugens: - SinOsc.ar/0: frequency: 440.0 phase: 0.0 - SinOsc.ar/1: frequency: 442.0 phase: 0.0 - SinOsc.ar/2: frequency: 443.0 phase: 0.0 - Sum3.ar: input_one: SinOsc.ar/0[0] input_two: SinOsc.ar/1[0] input_three: SinOsc.ar/2[0]
Returns ugen graph.
- tanh() UGenMethodMixin ¶
Calculates hyperbolic tangent of ugen graph.
>>> ugen_graph = supriya.ugens.LFNoise2.ar() >>> result = ugen_graph.tanh()
>>> supriya.graph(result)
>>> print(result) synthdef: name: e74aa9abf6e389d8ca39d2c9828d81be ugens: - LFNoise2.ar: frequency: 500.0 - UnaryOpUGen(TANH).ar: source: LFNoise2.ar[0]
Returns ugen graph.
- transpose(semitones) UGenMethodMixin ¶
Transposes ugen graph by semitones.
>>> ugen_graph = supriya.ugens.LFNoise2.ar() >>> result = ugen_graph.transpose([0, 3, 7])
>>> supriya.graph(result)
>>> print(result) synthdef: name: c481c3d42e3cfcee0267250247dab51f ugens: - LFNoise2.ar: frequency: 500.0 - UnaryOpUGen(HZ_TO_MIDI).ar: source: LFNoise2.ar[0] - UnaryOpUGen(MIDI_TO_HZ).ar/0: source: UnaryOpUGen(HZ_TO_MIDI).ar[0] - BinaryOpUGen(ADDITION).ar/0: left: UnaryOpUGen(HZ_TO_MIDI).ar[0] right: 3.0 - UnaryOpUGen(MIDI_TO_HZ).ar/1: source: BinaryOpUGen(ADDITION).ar/0[0] - BinaryOpUGen(ADDITION).ar/1: left: UnaryOpUGen(HZ_TO_MIDI).ar[0] right: 7.0 - UnaryOpUGen(MIDI_TO_HZ).ar/2: source: BinaryOpUGen(ADDITION).ar/1[0]
Returns ugen graph.
- triangle_window() UGenMethodMixin ¶
Calculates triangle-window of ugen graph.
>>> ugen_graph = supriya.ugens.LFNoise2.ar() >>> result = ugen_graph.triangle_window()
>>> supriya.graph(result)
>>> print(result) synthdef: name: ebb1820b9d08a639565b5090b53681db ugens: - LFNoise2.ar: frequency: 500.0 - UnaryOpUGen(TRIANGLE_WINDOW).ar: source: LFNoise2.ar[0]
Returns ugen graph.
- welch_window() UGenMethodMixin ¶
Calculates Welch-window of ugen graph.
>>> ugen_graph = supriya.ugens.LFNoise2.ar() >>> result = ugen_graph.welch_window()
>>> supriya.graph(result)
>>> print(result) synthdef: name: a0a01a549a5606d9eb0026bf458e4559 ugens: - LFNoise2.ar: frequency: 500.0 - UnaryOpUGen(WELCH_WINDOW).ar: source: LFNoise2.ar[0]
Returns ugen graph.
- property signal_range¶
-
class UnaryOpUGen(calculation_rate=
None
, source=None
, special_index=None
)¶ Bases:
UGen
A unary operator ugen, created by applying a unary operator to a ugen.
>>> ugen = supriya.ugens.SinOsc.ar() >>> unary_op_ugen = abs(ugen) >>> unary_op_ugen UnaryOpUGen.ar()
>>> unary_op_ugen.operator UnaryOperator.ABSOLUTE_VALUE
- property operator¶
Gets operator of UnaryOpUgen.
>>> source = supriya.ugens.SinOsc.ar() >>> unary_op_ugen = -source >>> unary_op_ugen.operator UnaryOperator.NEGATIVE
Returns unary operator.
- property source : SupportsFloat | UGenMethodMixin¶
-
param(default: float | None =
None
, *, check: Check =Check.NONE
, unexpanded: bool =False
) Param ¶ Define a UGen parameter.
Akin to dataclasses.field.
-
ugen(cls: type | None =
None
, *, ar: bool =False
, kr: bool =False
, ir: bool =False
, dr: bool =False
, new: bool =False
, has_done_flag: bool =False
, is_input: bool =False
, is_multichannel: bool =False
, is_output: bool =False
, is_pure: bool =False
, is_width_first: bool =False
, channel_count: int =1
, fixed_channel_count: bool =False
, signal_range: int | None =None
) type | Callable[[type], type] ¶ Decorate a UGen class.
Akin to dataclasses.dataclass.