Class

de.sciss.fscape.graph

PitchesToViterbi

Related Doc: package graph

Permalink

final case class PitchesToViterbi(lags: GE, strengths: GE, numIn: GE = 14, peaks: GE, maxLag: GE, voicingThresh: GE = 0.45, silenceThresh: GE = 0.03, octaveCost: GE = 0.01, octaveJumpCost: GE = 0.35, voicedUnvoicedCost: GE = 0.03) extends SingleOut with Product with Serializable

A UGen that takes concurrent pitch tracker paths, and conditions them for the Viterbi algorithm. The inputs are typically taken from AutoCorrelationPitches, and from this a suitable add signal is produced to be used in the Viterbi UGen. The output are matrices of size (numIn + 1).squared.

Warning: This is still not thoroughly tested.

lags

pitches given as sample periods, such as returned by AutoCorrelationPitches.

strengths

strengths corresponding to the lags, such as returned by AutoCorrelationPitches.

numIn

number of paths / candidates. to this the unvoiced candidate is added

peaks

the peak amplitude of the underlying input signal, one sample per pitch frame, used for the unvoiced candidate.

maxLag

the maximum lag time, corresponding to the minimum pitch

voicingThresh

threshold for determining whether window is voiced or unvoiced.

silenceThresh

threshold for determining whether window is background or foreground.

octaveCost

weighting factor for low versus high frequency preference.

octaveJumpCost

costs for moving pitches up and down. to match the parameters in Praat, you should multiply the "literature" value by 0.01 * sampleRate / stepSize (typically in the order of 0.25)

voicedUnvoicedCost

cost for transitioning between voiced and unvoiced segments. to match the parameters in Praat, the "literature" value by 0.01 * sampleRate / stepSize (typically in the order of 0.25) see StrongestLocalMaxima see Viterbi

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

Instance Constructors

  1. new PitchesToViterbi(lags: GE, strengths: GE, numIn: GE = 14, peaks: GE, maxLag: GE, voicingThresh: GE = 0.45, silenceThresh: GE = 0.03, octaveCost: GE = 0.01, octaveJumpCost: GE = 0.35, voicedUnvoicedCost: GE = 0.03)

    Permalink

    lags

    pitches given as sample periods, such as returned by AutoCorrelationPitches.

    strengths

    strengths corresponding to the lags, such as returned by AutoCorrelationPitches.

    numIn

    number of paths / candidates. to this the unvoiced candidate is added

    peaks

    the peak amplitude of the underlying input signal, one sample per pitch frame, used for the unvoiced candidate.

    maxLag

    the maximum lag time, corresponding to the minimum pitch

    voicingThresh

    threshold for determining whether window is voiced or unvoiced.

    silenceThresh

    threshold for determining whether window is background or foreground.

    octaveCost

    weighting factor for low versus high frequency preference.

    octaveJumpCost

    costs for moving pitches up and down. to match the parameters in Praat, you should multiply the "literature" value by 0.01 * sampleRate / stepSize (typically in the order of 0.25)

    voicedUnvoicedCost

    cost for transitioning between voiced and unvoiced segments. to match the parameters in Praat, the "literature" value by 0.01 * sampleRate / stepSize (typically in the order of 0.25) see StrongestLocalMaxima see Viterbi

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. final def asInstanceOf[T0]: T0

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

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  6. final def eq(arg0: AnyRef): Boolean

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

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

    Permalink
    Definition Classes
    AnyRef → Any
  9. final def isInstanceOf[T0]: Boolean

    Permalink
    Definition Classes
    Any
  10. val lags: GE

    Permalink

    pitches given as sample periods, such as returned by AutoCorrelationPitches.

  11. def makeUGen(args: IndexedSeq[UGenIn])(implicit b: Builder): UGenInLike

    Permalink
    Attributes
    protected
    Definition Classes
    PitchesToViterbiUGenSource
  12. 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
    PitchesToViterbiExpander
  13. val maxLag: GE

    Permalink

    the maximum lag time, corresponding to the minimum pitch

  14. final def name: String

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

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

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

    Permalink
    Definition Classes
    AnyRef
  18. val numIn: GE

    Permalink

    number of paths / candidates.

    number of paths / candidates. to this the unvoiced candidate is added

  19. val octaveCost: GE

    Permalink

    weighting factor for low versus high frequency preference.

  20. val octaveJumpCost: GE

    Permalink

    costs for moving pitches up and down.

    costs for moving pitches up and down. to match the parameters in Praat, you should multiply the "literature" value by 0.01 * sampleRate / stepSize (typically in the order of 0.25)

  21. val peaks: GE

    Permalink

    the peak amplitude of the underlying input signal, one sample per pitch frame, used for the unvoiced candidate.

  22. val silenceThresh: GE

    Permalink

    threshold for determining whether window is background or foreground.

  23. val strengths: GE

    Permalink

    strengths corresponding to the lags, such as returned by AutoCorrelationPitches.

  24. final def synchronized[T0](arg0: ⇒ T0): T0

    Permalink
    Definition Classes
    AnyRef
  25. val voicedUnvoicedCost: GE

    Permalink

    cost for transitioning between voiced and unvoiced segments.

    cost for transitioning between voiced and unvoiced segments. to match the parameters in Praat, the "literature" value by 0.01 * sampleRate / stepSize (typically in the order of 0.25) see StrongestLocalMaxima see Viterbi

  26. val voicingThresh: GE

    Permalink

    threshold for determining whether window is voiced or unvoiced.

  27. final def wait(): Unit

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

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

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

Inherited from Serializable

Inherited from Serializable

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