Class

de.sciss.fscape.graph

Real2FFT

Related Doc: package graph

Permalink

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 Sliding should 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 a Real2IFFT using the same mode. 1 is "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 a Real2IFFT using the same mode. 2 is "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.

Linear Supertypes
Serializable, Serializable, FFT2HalfUGen, SingleOut, SomeOut[StreamOut], GE.Lazy, GE, UGenSource[UGenInLike, StreamOut], Expander[UGenInLike], Lazy, Product, Equals, AnyRef, Any
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. Real2FFT
  2. Serializable
  3. Serializable
  4. FFT2HalfUGen
  5. SingleOut
  6. SomeOut
  7. Lazy
  8. GE
  9. UGenSource
  10. Expander
  11. Lazy
  12. Product
  13. Equals
  14. AnyRef
  15. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Instance Constructors

  1. new Real2FFT(in: GE, rows: GE, columns: GE = 0, mode: GE = 0)

    Permalink

    in

    the real signal to transform. If overlapping windows are desired, a Sliding should 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 a Real2IFFT using the same mode. 1 is "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 a Real2IFFT using the same mode. 2 is "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

  1. final def !=(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  2. final def ##(): Int

    Permalink
    Definition Classes
    AnyRef → Any
  3. final def ==(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  4. def apply(in: OutD, rows: OutI, columns: OutI, mode: OutI)(implicit b: Builder): OutD

    Permalink
    Attributes
    protected
    Definition Classes
    Real2FFTFFT2HalfUGen
  5. final def asInstanceOf[T0]: T0

    Permalink
    Definition Classes
    Any
  6. def clone(): AnyRef

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  7. val columns: GE

    Permalink

    the input matrix number of columns

    the input matrix number of columns

    Definition Classes
    Real2FFTFFT2HalfUGen
  8. final def eq(arg0: AnyRef): Boolean

    Permalink
    Definition Classes
    AnyRef
  9. def finalize(): Unit

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  10. final def getClass(): Class[_]

    Permalink
    Definition Classes
    AnyRef → Any
  11. val in: GE

    Permalink

    the real signal to transform.

    the real signal to transform. If overlapping windows are desired, a Sliding should already have been applied to this signal, as well as multiplication with a window function.

    Definition Classes
    Real2FFTFFT2HalfUGen
  12. final def isInstanceOf[T0]: Boolean

    Permalink
    Definition Classes
    Any
  13. final def makeUGen(args: IndexedSeq[UGenIn])(implicit b: Builder): UGenInLike

    Permalink
    Attributes
    protected
    Definition Classes
    FFT2HalfUGenUGenSource
  14. final def makeUGens(implicit b: Builder): UGenInLike

    Permalink

    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
    FFT2HalfUGenExpander
  15. val mode: GE

    Permalink

    packing 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 a Real2IFFT using the same mode. 1 is "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 a Real2IFFT using the same mode. 2 is "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.

    Definition Classes
    Real2FFTFFT2HalfUGen
  16. final def name: String

    Permalink
    Definition Classes
    UGenSource
  17. final def ne(arg0: AnyRef): Boolean

    Permalink
    Definition Classes
    AnyRef
  18. final def notify(): Unit

    Permalink
    Definition Classes
    AnyRef
  19. final def notifyAll(): Unit

    Permalink
    Definition Classes
    AnyRef
  20. val rows: GE

    Permalink

    the input matrix number of rows

    the input matrix number of rows

    Definition Classes
    Real2FFTFFT2HalfUGen
  21. final def synchronized[T0](arg0: ⇒ T0): T0

    Permalink
    Definition Classes
    AnyRef
  22. final def wait(): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  23. final def wait(arg0: Long, arg1: Int): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  24. final def wait(arg0: Long): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )

Inherited from Serializable

Inherited from Serializable

Inherited from FFT2HalfUGen

Inherited from SingleOut

Inherited from SomeOut[StreamOut]

Inherited from GE.Lazy

Inherited from GE

Inherited from UGenSource[UGenInLike, StreamOut]

Inherited from Expander[UGenInLike]

Inherited from Lazy

Inherited from Product

Inherited from Equals

Inherited from AnyRef

Inherited from Any

Ungrouped