final case class StereoConvolution2L(rate: Rate, in: GE, kernelL: GE, kernelR: GE, trig: GE = 1, frameSize: GE, fadePeriods: GE = 1) extends MultiOut with IsIndividual with Product with Serializable
A frequency domain stereo convolution UGen, capable of performing linear
cross-fades between kernel updates. When receiving a trigger, there is a linear
cross-fade between the old kernel the new buffer contents. It operates similar
to Convolution2L
, however uses two buffers and outputs a stereo signal,
resulting in better CPU usage than two discrete instances of Convolution2L
as
this way one FFT transformation per period is saved.
Warning: This UGen seems currently broken (SC 3.6.3)
- in
the realtime input to be convolved
- kernelL
buffer identifier for the left channel's fixed kernel, which may be modulated in combination with the trigger
- kernelR
buffer identifier for the right channel's fixed kernel, which may be modulated in combination with the trigger
- trig
updates the kernel on a change from non-positive to positive (<= 0 to >0), and starts a new cross-fade from the previous kernel to the new one over the given amount of periods.
- frameSize
size of the kernel. this must be a power of two. the FFT calculated internally by the UGen has a size of twice this value. The maximum allowed
frameSize
is 16384. (init-time only)- fadePeriods
fade duration expressed as number of convolved blocks. If the desired duration in seconds is
dur
, then the number of periods can be calculated asfadePeriods = dur * SampleRate.ir / frameSize
. (init-time only)
- Alphabetic
- By Inheritance
- StereoConvolution2L
- Serializable
- Serializable
- IsIndividual
- MultiOut
- SomeOut
- Lazy
- GE
- UGenSource
- Expander
- Lazy
- Product
- Equals
- AnyRef
- Any
- Hide All
- Show All
- Public
- All
Instance Constructors
-
new
StereoConvolution2L(rate: Rate, in: GE, kernelL: GE, kernelR: GE, trig: GE = 1, frameSize: GE, fadePeriods: GE = 1)
- in
the realtime input to be convolved
- kernelL
buffer identifier for the left channel's fixed kernel, which may be modulated in combination with the trigger
- kernelR
buffer identifier for the right channel's fixed kernel, which may be modulated in combination with the trigger
- trig
updates the kernel on a change from non-positive to positive (<= 0 to >0), and starts a new cross-fade from the previous kernel to the new one over the given amount of periods.
- frameSize
size of the kernel. this must be a power of two. the FFT calculated internally by the UGen has a size of twice this value. The maximum allowed
frameSize
is 16384. (init-time only)- fadePeriods
fade duration expressed as number of convolved blocks. If the desired duration in seconds is
dur
, then the number of periods can be calculated asfadePeriods = dur * SampleRate.ir / frameSize
. (init-time only)
Value Members
-
final
def
!=(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
final
def
##(): Int
- Definition Classes
- AnyRef → Any
-
final
def
==(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
final
def
asInstanceOf[T0]: T0
- Definition Classes
- Any
-
def
clone(): AnyRef
- Attributes
- protected[java.lang]
- Definition Classes
- AnyRef
- Annotations
- @native() @throws( ... )
-
final
def
eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- val fadePeriods: GE
-
def
finalize(): Unit
- Attributes
- protected[java.lang]
- Definition Classes
- AnyRef
- Annotations
- @throws( classOf[java.lang.Throwable] )
- val frameSize: GE
-
final
def
getClass(): Class[_]
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
-
lazy val
hashCode: Int
- Definition Classes
- UGenSource → AnyRef → Any
- val in: GE
-
final
def
isInstanceOf[T0]: Boolean
- Definition Classes
- Any
- val kernelL: GE
- val kernelR: GE
- def left: GE
-
def
makeUGen(_args: Vec[UGenIn]): UGenInLike
- Attributes
- protected
- Definition Classes
- StereoConvolution2L → UGenSource
-
def
makeUGens: UGenInLike
Abstract method which must be implemented by creating the actual
UGen
s during expansion.Abstract method which must be implemented by creating the actual
UGen
s during expansion. This method is at most called once during graph expansion- returns
the expanded object (depending on the type parameter
U
)
- Attributes
- protected
- Definition Classes
- StereoConvolution2L → Expander
-
final
def
name: String
- Definition Classes
- UGenSource
-
final
def
ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
final
def
notify(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
-
final
def
notifyAll(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
-
val
rate: Rate
- Definition Classes
- StereoConvolution2L → GE
- def right: GE
-
final
def
synchronized[T0](arg0: ⇒ T0): T0
- Definition Classes
- AnyRef
- val trig: GE
-
final
def
wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
final
def
wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
final
def
wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @native() @throws( ... )