final case class SpecFlatness(chain: GE) extends SingleOut with ControlRated with IsIndividual with Product with Serializable
A UGen to measure spectral flatness. Given an FFT chain this calculates the Spectral Flatness measure, defined as a power spectrum's geometric mean divided by its arithmetic mean. This gives a measure which ranges from approx 0 for a pure sinusoid, to approx 1 for white noise.
The measure is calculated linearly. For some applications you may wish to
convert the value to a decibel scale. Note that this UGen may output NaN
when the input is zero (probably due to division by zero). In that case,
CheckBadValues can be used to prevent further problems.
Note that despite running at control-rate, the output remains constant for each FFT frame. E.g. with an FFT size of 1024 and 50% overlap, a new measure is generated every 512 audio frames, or (at control block size 64) every 8 control blocks.
- chain
the fft signal (buffer) to analyze
- See also
- Alphabetic
- By Inheritance
- SpecFlatness
- Serializable
- Serializable
- IsIndividual
- ControlRated
- SingleOut
- SomeOut
- Lazy
- GE
- UGenSource
- Expander
- Lazy
- Product
- Equals
- AnyRef
- Any
- Hide All
- Show All
- Public
- All
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
- val chain: GE
-
def
clone(): AnyRef
- Attributes
- protected[java.lang]
- Definition Classes
- AnyRef
- Annotations
- @native() @throws( ... )
-
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()
-
lazy val
hashCode: Int
- Definition Classes
- UGenSource → AnyRef → Any
-
final
def
isInstanceOf[T0]: Boolean
- Definition Classes
- Any
-
def
makeUGen(_args: Vec[UGenIn]): UGenInLike
- Attributes
- protected
- Definition Classes
- SpecFlatness → UGenSource
-
def
makeUGens: 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
- SpecFlatness → 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()
-
final
def
rate: Rate
- Definition Classes
- ControlRated
-
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( ... )