final case class Real2FFT(in: GE, rows: GE, columns: GE = 0, mode: GE = 0) extends FFT2HalfUGen with Product with Serializable
Forward short-time Fourier transform UGen for a real-valued input signal.
The FFT size is equal to rows * columns. The output is a succession
of complex half-spectra, i.e. from DC to Nyquist.
XXX TODO: Depending on mode,
the output window size is either size + padding or size + padding + 2.
- in
the real signal to transform. If overlapping windows are desired, a
Slidingshould already have been applied to this signal, as well as multiplication with a window function.- rows
the input matrix number of rows
- columns
the input matrix number of columns
- mode
packing mode.
0(default) is standard "packed" mode, whereby the real part of the bin at Nyquist is stored in the imaginary slot of the DC. This mode allows perfect reconstruction with aReal2IFFTusing the same mode.1is "unpacked" mode, whereby the output windows are made two samples longer, so that the Nyquist bin is included in the very end. By definition, the imaginary parts of DC and Nyquist are zero. This mode allows perfect reconstruction with aReal2IFFTusing the same mode.2is "discarded" mode, whereby the Nyquist bin is omitted. While it doesn't allow a perfect reconstruction, this mode is useful for analysis, because the output window size is equal to the fft-size, and the imaginary part of DC is correctly zero'ed.
- Alphabetic
- By Inheritance
- Real2FFT
- Serializable
- Serializable
- FFT2HalfUGen
- SingleOut
- SomeOut
- Lazy
- GE
- UGenSource
- Expander
- Lazy
- Product
- Equals
- AnyRef
- Any
- Hide All
- Show All
- Public
- All
Instance Constructors
-
new
Real2FFT(in: GE, rows: GE, columns: GE = 0, mode: GE = 0)
- in
the real signal to transform. If overlapping windows are desired, a
Slidingshould already have been applied to this signal, as well as multiplication with a window function.- rows
the input matrix number of rows
- columns
the input matrix number of columns
- mode
packing mode.
0(default) is standard "packed" mode, whereby the real part of the bin at Nyquist is stored in the imaginary slot of the DC. This mode allows perfect reconstruction with aReal2IFFTusing the same mode.1is "unpacked" mode, whereby the output windows are made two samples longer, so that the Nyquist bin is included in the very end. By definition, the imaginary parts of DC and Nyquist are zero. This mode allows perfect reconstruction with aReal2IFFTusing the same mode.2is "discarded" mode, whereby the Nyquist bin is omitted. While it doesn't allow a perfect reconstruction, this mode is useful for analysis, because the output window size is equal to the fft-size, and the imaginary part of DC is correctly zero'ed.
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
-
def
apply(in: OutD, rows: OutI, columns: OutI, mode: OutI)(implicit b: Builder): OutD
- Attributes
- protected
- Definition Classes
- Real2FFT → FFT2HalfUGen
-
final
def
asInstanceOf[T0]: T0
- Definition Classes
- Any
-
def
clone(): AnyRef
- Attributes
- protected[java.lang]
- Definition Classes
- AnyRef
- Annotations
- @native() @throws( ... )
-
val
columns: GE
- Definition Classes
- Real2FFT → FFT2HalfUGen
-
final
def
eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
def
finalize(): Unit
- Attributes
- protected[java.lang]
- Definition Classes
- AnyRef
- Annotations
- @throws( classOf[java.lang.Throwable] )
-
final
def
getClass(): Class[_]
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
-
val
in: GE
- Definition Classes
- Real2FFT → FFT2HalfUGen
-
final
def
isInstanceOf[T0]: Boolean
- Definition Classes
- Any
-
final
def
makeUGen(args: IndexedSeq[UGenIn])(implicit b: Builder): UGenInLike
- Attributes
- protected
- Definition Classes
- FFT2HalfUGen → UGenSource
-
final
def
makeUGens(implicit b: Builder): UGenInLike
Abstract method which must be implemented by creating the actual
UGens during expansion.Abstract method which must be implemented by creating the actual
UGens 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
- FFT2HalfUGen → Expander
-
val
mode: GE
- Definition Classes
- Real2FFT → FFT2HalfUGen
-
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
rows: GE
- Definition Classes
- Real2FFT → FFT2HalfUGen
-
final
def
synchronized[T0](arg0: ⇒ T0): T0
- Definition Classes
- AnyRef
-
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( ... )