FoldCepstrum

final case class FoldCepstrum(in: D, size: I, crr: D, cri: D, clr: D, cli: D, ccr: D, cci: D, car: D, cai: D) extends SingleOut[Double]

We operate on a complex cepstrum (size is the number of complex frames). We distinguish a left L (causal) and right R (anti-causal) half. The formulas then are

reL_out = crr * reL + ccr * reR
reR_out = clr * reR + car * reL
imL_out = cri * imL + cci * imR
imR_out = cli * imR + cai * imL

Note that causal and anti-causal are misnamed in the coefficient.

For example, to make the signal causal for minimum phase reconstruction: We add the conjugate anti-causal (right) part to the causal (left) part: crr = 1, ccr = 1, cri = 1, cci = -1 and clear the anti-causal (right) part: clr = 0, car = 0, cli = 0, cai = 0 (you can just call FoldCepstrum.minPhase for this case)

Companion:
object
trait Serializable
trait SingleOut[Double]
trait Lazy[Double]
trait GE[Double]
trait Expander[UGenInLike[Double]]
trait Lazy
trait Product
trait Equals
class Object
trait Matchable
class Any

Value members

Inherited methods

final def name: String
Inherited from:
UGenSource
def productElementNames: Iterator[String]
Inherited from:
Product
def productIterator: Iterator[Any]
Inherited from:
Product