ml

class BeatTrack(*, calculation_rate: CalculationRate | SupportsInt | str | None, pv_chain: SupportsFloat | UGenScalar, lock: SupportsFloat | UGenScalar = 0.0, **kwargs)

Bases: UGen

Autocorrelation beat tracker.

>>> source = supriya.ugens.In.ar(bus=0)
>>> pv_chain = supriya.ugens.FFT.kr(source=source)
>>> beat_track = supriya.ugens.BeatTrack.kr(
...     pv_chain=pv_chain,
...     lock=0,
... )
>>> beat_track
<BeatTrack.kr()>
classmethod kr(*, pv_chain: SupportsFloat | UGenOperable | UGenSerializable | Sequence[SupportsFloat | UGenOperable | UGenSerializable | Sequence[UGenRecursiveInput]], lock: SupportsFloat | UGenOperable | UGenSerializable | Sequence[SupportsFloat | UGenOperable | UGenSerializable | Sequence[UGenRecursiveInput]] = 0.0) UGenOperable
property lock : UGenScalar
property pv_chain : UGenScalar
class BeatTrack2(*, calculation_rate: CalculationRate | SupportsInt | str | None, bus_index: SupportsFloat | UGenScalar = 0.0, feature_count: SupportsFloat | UGenScalar, window_size: SupportsFloat | UGenScalar = 2, phase_accuracy: SupportsFloat | UGenScalar = 0.02, lock: SupportsFloat | UGenScalar = 0.0, weighting_scheme: SupportsFloat | UGenScalar = -2.1, **kwargs)

Bases: UGen

A template-matching beat-tracker.

>>> beat_track_2 = supriya.ugens.BeatTrack2.kr(
...     bus_index=0,
...     lock=False,
...     feature_count=4,
...     phase_accuracy=0.02,
...     weighting_scheme=-2.1,
...     window_size=2,
... )
>>> beat_track_2
<BeatTrack2.kr()>
classmethod kr(*, bus_index: SupportsFloat | UGenOperable | UGenSerializable | Sequence[SupportsFloat | UGenOperable | UGenSerializable | Sequence[UGenRecursiveInput]] = 0.0, feature_count: SupportsFloat | UGenOperable | UGenSerializable | Sequence[SupportsFloat | UGenOperable | UGenSerializable | Sequence[UGenRecursiveInput]], window_size: SupportsFloat | UGenOperable | UGenSerializable | Sequence[SupportsFloat | UGenOperable | UGenSerializable | Sequence[UGenRecursiveInput]] = 2, phase_accuracy: SupportsFloat | UGenOperable | UGenSerializable | Sequence[SupportsFloat | UGenOperable | UGenSerializable | Sequence[UGenRecursiveInput]] = 0.02, lock: SupportsFloat | UGenOperable | UGenSerializable | Sequence[SupportsFloat | UGenOperable | UGenSerializable | Sequence[UGenRecursiveInput]] = 0.0, weighting_scheme: SupportsFloat | UGenOperable | UGenSerializable | Sequence[SupportsFloat | UGenOperable | UGenSerializable | Sequence[UGenRecursiveInput]] = -2.1) UGenOperable
property bus_index : UGenScalar
property feature_count : UGenScalar
property lock : UGenScalar
property phase_accuracy : UGenScalar
property weighting_scheme : UGenScalar
property window_size : UGenScalar
class KeyTrack(*, calculation_rate: CalculationRate | SupportsInt | str | None, pv_chain: SupportsFloat | UGenScalar, key_decay: SupportsFloat | UGenScalar = 2, chroma_leak: SupportsFloat | UGenScalar = 0.5, **kwargs)

Bases: UGen

A key tracker.

>>> source = supriya.ugens.In.ar(bus=0)
>>> pv_chain = supriya.ugens.FFT.kr(source=source)
>>> key_track = supriya.ugens.KeyTrack.kr(
...     pv_chain=pv_chain,
...     chroma_leak=0.5,
...     key_decay=2,
... )
>>> key_track
<KeyTrack.kr()[0]>
classmethod kr(*, pv_chain: SupportsFloat | UGenOperable | UGenSerializable | Sequence[SupportsFloat | UGenOperable | UGenSerializable | Sequence[UGenRecursiveInput]], key_decay: SupportsFloat | UGenOperable | UGenSerializable | Sequence[SupportsFloat | UGenOperable | UGenSerializable | Sequence[UGenRecursiveInput]] = 2, chroma_leak: SupportsFloat | UGenOperable | UGenSerializable | Sequence[SupportsFloat | UGenOperable | UGenSerializable | Sequence[UGenRecursiveInput]] = 0.5) UGenOperable
property chroma_leak : UGenScalar
property key_decay : UGenScalar
property pv_chain : UGenScalar
class Loudness(*, calculation_rate: CalculationRate | SupportsInt | str | None, pv_chain: SupportsFloat | UGenScalar, smask: SupportsFloat | UGenScalar = 0.25, tmask: SupportsFloat | UGenScalar = 1, **kwargs)

Bases: UGen

Extraction of instantaneous loudness in sones.

>>> source = supriya.ugens.In.ar(bus=0)
>>> pv_chain = supriya.ugens.FFT.kr(source=source)
>>> loudness = supriya.ugens.Loudness.kr(
...     pv_chain=pv_chain,
...     smask=0.25,
...     tmask=1,
... )
>>> loudness
<Loudness.kr()[0]>
classmethod kr(*, pv_chain: SupportsFloat | UGenOperable | UGenSerializable | Sequence[SupportsFloat | UGenOperable | UGenSerializable | Sequence[UGenRecursiveInput]], smask: SupportsFloat | UGenOperable | UGenSerializable | Sequence[SupportsFloat | UGenOperable | UGenSerializable | Sequence[UGenRecursiveInput]] = 0.25, tmask: SupportsFloat | UGenOperable | UGenSerializable | Sequence[SupportsFloat | UGenOperable | UGenSerializable | Sequence[UGenRecursiveInput]] = 1) UGenOperable
property pv_chain : UGenScalar
property smask : UGenScalar
property tmask : UGenScalar
class MFCC(*, calculation_rate: CalculationRate | SupportsInt | str | None, pv_chain: SupportsFloat | UGenScalar, coeff_count: SupportsFloat | UGenScalar = 13, **kwargs)

Bases: UGen

Mel frequency cepstral coefficients.

>>> source = supriya.ugens.In.ar(bus=0)
>>> pv_chain = supriya.ugens.FFT.kr(source=source)
>>> mfcc = supriya.ugens.MFCC.kr(
...     pv_chain=pv_chain,
... )
>>> mfcc
<MFCC.kr()>
classmethod kr(*, pv_chain: SupportsFloat | UGenOperable | UGenSerializable | Sequence[SupportsFloat | UGenOperable | UGenSerializable | Sequence[UGenRecursiveInput]], coeff_count: SupportsFloat | UGenOperable | UGenSerializable | Sequence[SupportsFloat | UGenOperable | UGenSerializable | Sequence[UGenRecursiveInput]] = 13) UGenOperable
property coeff_count : UGenScalar
property pv_chain : UGenScalar
class Onsets(*, calculation_rate: CalculationRate | SupportsInt | str | None, pv_chain: SupportsFloat | UGenScalar, threshold: SupportsFloat | UGenScalar = 0.5, odftype: SupportsFloat | UGenScalar = 3, relaxtime: SupportsFloat | UGenScalar = 1, floor_: SupportsFloat | UGenScalar = 0.1, mingap: SupportsFloat | UGenScalar = 10, medianspan: SupportsFloat | UGenScalar = 11, whtype: SupportsFloat | UGenScalar = 1, rawodf: SupportsFloat | UGenScalar = 0, **kwargs)

Bases: UGen

An onset detector.

>>> source = supriya.ugens.In.ar(bus=0)
>>> pv_chain = supriya.ugens.FFT.kr(source=source)
>>> onsets = supriya.ugens.Onsets.kr(
...     pv_chain=pv_chain,
...     floor_=0.1,
...     medianspan=11,
...     mingap=10,
...     odftype=supriya.ugens.Onsets.ODFType.RCOMPLEX,
...     rawodf=0,
...     relaxtime=1,
...     threshold=0.5,
...     whtype=1,
... )
>>> onsets
<Onsets.kr()[0]>
class ODFType(*values)
classmethod kr(*, pv_chain: SupportsFloat | UGenOperable | UGenSerializable | Sequence[SupportsFloat | UGenOperable | UGenSerializable | Sequence[UGenRecursiveInput]], threshold: SupportsFloat | UGenOperable | UGenSerializable | Sequence[SupportsFloat | UGenOperable | UGenSerializable | Sequence[UGenRecursiveInput]] = 0.5, odftype: SupportsFloat | UGenOperable | UGenSerializable | Sequence[SupportsFloat | UGenOperable | UGenSerializable | Sequence[UGenRecursiveInput]] = 3, relaxtime: SupportsFloat | UGenOperable | UGenSerializable | Sequence[SupportsFloat | UGenOperable | UGenSerializable | Sequence[UGenRecursiveInput]] = 1, floor_: SupportsFloat | UGenOperable | UGenSerializable | Sequence[SupportsFloat | UGenOperable | UGenSerializable | Sequence[UGenRecursiveInput]] = 0.1, mingap: SupportsFloat | UGenOperable | UGenSerializable | Sequence[SupportsFloat | UGenOperable | UGenSerializable | Sequence[UGenRecursiveInput]] = 10, medianspan: SupportsFloat | UGenOperable | UGenSerializable | Sequence[SupportsFloat | UGenOperable | UGenSerializable | Sequence[UGenRecursiveInput]] = 11, whtype: SupportsFloat | UGenOperable | UGenSerializable | Sequence[SupportsFloat | UGenOperable | UGenSerializable | Sequence[UGenRecursiveInput]] = 1, rawodf: SupportsFloat | UGenOperable | UGenSerializable | Sequence[SupportsFloat | UGenOperable | UGenSerializable | Sequence[UGenRecursiveInput]] = 0) UGenOperable
property floor_ : UGenScalar
property medianspan : UGenScalar
property mingap : UGenScalar
property odftype : UGenScalar
property pv_chain : UGenScalar
property rawodf : UGenScalar
property relaxtime : UGenScalar
property threshold : UGenScalar
property whtype : UGenScalar
class Pitch(*, calculation_rate: CalculationRate | SupportsInt | str | None, source: SupportsFloat | UGenScalar, initial_frequency: SupportsFloat | UGenScalar = 440, min_frequency: SupportsFloat | UGenScalar = 60, max_frequency: SupportsFloat | UGenScalar = 4000, exec_frequency: SupportsFloat | UGenScalar = 100, max_bins_per_octave: SupportsFloat | UGenScalar = 16, median: SupportsFloat | UGenScalar = 1, amplitude_threshold: SupportsFloat | UGenScalar = 0.01, peak_threshold: SupportsFloat | UGenScalar = 0.5, down_sample_factor: SupportsFloat | UGenScalar = 1, clarity: SupportsFloat | UGenScalar = 0, **kwargs)

Bases: UGen

An autocorrelation pitch follower.

>>> source = supriya.ugens.In.ar(bus=0)
>>> pitch = supriya.ugens.Pitch.kr(source=source)
>>> pitch
<Pitch.kr()>
classmethod kr(*, source: SupportsFloat | UGenOperable | UGenSerializable | Sequence[SupportsFloat | UGenOperable | UGenSerializable | Sequence[UGenRecursiveInput]], initial_frequency: SupportsFloat | UGenOperable | UGenSerializable | Sequence[SupportsFloat | UGenOperable | UGenSerializable | Sequence[UGenRecursiveInput]] = 440, min_frequency: SupportsFloat | UGenOperable | UGenSerializable | Sequence[SupportsFloat | UGenOperable | UGenSerializable | Sequence[UGenRecursiveInput]] = 60, max_frequency: SupportsFloat | UGenOperable | UGenSerializable | Sequence[SupportsFloat | UGenOperable | UGenSerializable | Sequence[UGenRecursiveInput]] = 4000, exec_frequency: SupportsFloat | UGenOperable | UGenSerializable | Sequence[SupportsFloat | UGenOperable | UGenSerializable | Sequence[UGenRecursiveInput]] = 100, max_bins_per_octave: SupportsFloat | UGenOperable | UGenSerializable | Sequence[SupportsFloat | UGenOperable | UGenSerializable | Sequence[UGenRecursiveInput]] = 16, median: SupportsFloat | UGenOperable | UGenSerializable | Sequence[SupportsFloat | UGenOperable | UGenSerializable | Sequence[UGenRecursiveInput]] = 1, amplitude_threshold: SupportsFloat | UGenOperable | UGenSerializable | Sequence[SupportsFloat | UGenOperable | UGenSerializable | Sequence[UGenRecursiveInput]] = 0.01, peak_threshold: SupportsFloat | UGenOperable | UGenSerializable | Sequence[SupportsFloat | UGenOperable | UGenSerializable | Sequence[UGenRecursiveInput]] = 0.5, down_sample_factor: SupportsFloat | UGenOperable | UGenSerializable | Sequence[SupportsFloat | UGenOperable | UGenSerializable | Sequence[UGenRecursiveInput]] = 1, clarity: SupportsFloat | UGenOperable | UGenSerializable | Sequence[SupportsFloat | UGenOperable | UGenSerializable | Sequence[UGenRecursiveInput]] = 0) UGenOperable
property amplitude_threshold : UGenScalar
property clarity : UGenScalar
property down_sample_factor : UGenScalar
property exec_frequency : UGenScalar
property initial_frequency : UGenScalar
property max_bins_per_octave : UGenScalar
property max_frequency : UGenScalar
property median : UGenScalar
property min_frequency : UGenScalar
property peak_threshold : UGenScalar
property source : UGenScalar
class SpecCentroid(*, calculation_rate: CalculationRate | SupportsInt | str | None, pv_chain: SupportsFloat | UGenScalar, **kwargs)

Bases: UGen

A spectral centroid measure.

>>> source = supriya.ugens.In.ar(bus=0)
>>> pv_chain = supriya.ugens.FFT.kr(source=source)
>>> spec_centroid = supriya.ugens.SpecCentroid.kr(
...     pv_chain=pv_chain,
... )
>>> spec_centroid
<SpecCentroid.kr()[0]>
classmethod kr(*, pv_chain: SupportsFloat | UGenOperable | UGenSerializable | Sequence[SupportsFloat | UGenOperable | UGenSerializable | Sequence[UGenRecursiveInput]]) UGenOperable
property pv_chain : UGenScalar
class SpecFlatness(*, calculation_rate: CalculationRate | SupportsInt | str | None, pv_chain: SupportsFloat | UGenScalar, **kwargs)

Bases: UGen

A spectral flatness measure.

>>> source = supriya.ugens.In.ar(bus=0)
>>> pv_chain = supriya.ugens.FFT.kr(source=source)
>>> spec_flatness = supriya.ugens.SpecFlatness.kr(
...     pv_chain=pv_chain,
... )
>>> spec_flatness
<SpecFlatness.kr()[0]>
classmethod kr(*, pv_chain: SupportsFloat | UGenOperable | UGenSerializable | Sequence[SupportsFloat | UGenOperable | UGenSerializable | Sequence[UGenRecursiveInput]]) UGenOperable
property pv_chain : UGenScalar
class SpecPcile(*, calculation_rate: CalculationRate | SupportsInt | str | None, pv_chain: SupportsFloat | UGenScalar, fraction: SupportsFloat | UGenScalar = 0.5, interpolate: SupportsFloat | UGenScalar = 0, **kwargs)

Bases: UGen

Find a percentile of FFT magnitude spectrum.

>>> source = supriya.ugens.In.ar(bus=0)
>>> pv_chain = supriya.ugens.FFT.kr(source=source)
>>> spec_pcile = supriya.ugens.SpecPcile.kr(
...     pv_chain=pv_chain,
...     fraction=0.5,
...     interpolate=0,
... )
>>> spec_pcile
<SpecPcile.kr()[0]>
classmethod kr(*, pv_chain: SupportsFloat | UGenOperable | UGenSerializable | Sequence[SupportsFloat | UGenOperable | UGenSerializable | Sequence[UGenRecursiveInput]], fraction: SupportsFloat | UGenOperable | UGenSerializable | Sequence[SupportsFloat | UGenOperable | UGenSerializable | Sequence[UGenRecursiveInput]] = 0.5, interpolate: SupportsFloat | UGenOperable | UGenSerializable | Sequence[SupportsFloat | UGenOperable | UGenSerializable | Sequence[UGenRecursiveInput]] = 0) UGenOperable
property fraction : UGenScalar
property interpolate : UGenScalar
property pv_chain : UGenScalar