csound-expression-5.2.2: library to make electronic music

Safe HaskellNone
LanguageHaskell98

Csound.Air.Spec

Description

Spectral functions

Synopsis

Documentation

toSpec :: Sig -> Spec Source #

Converts signal to spectrum.

fromSpec :: Spec -> Sig Source #

Converts spectrum to signal.

mapSpec :: (Spec -> Spec) -> Sig -> Sig Source #

Applies a transformation to the spectrum of the signal.

scaleSpec :: Sig -> Sig -> Sig Source #

Scales all frequencies. Usefull for transposition. For example, we can transpose a signal by the given amount of semitones:

scaleSpec (semitone 1) asig

addSpec :: Sig -> Sig -> Sig Source #

Adds given amount of Hz to all frequencies.

addSpec hz asig

scalePitch :: Sig -> Sig -> Sig Source #

Scales frequency in semitones.

data CrossSpec Source #

Settings for cross filtering algorithm.

They are the defaults for opvodes: pvsifd, tradsyn, trcross and partials.

  • Fft size degree -- it's the power of 2. The default is 12.
  • Hop size degree -- it's the power of 2. The default is 9
  • scale --amplitude scaling factor. default is 1
  • pitch -- the pitch scaling factor. default is 1
  • maxTracks -- max number of tracks in resynthesis (tradsyn) and analysis (partials).
  • winType -- O: Hamming, 1: Hanning (default)
  • Search -- search interval length. The default is 1.05
  • Depth -- depth of the effect
  • Thresh -- analysis threshold. Tracks below ktresh*max_magnitude will be discarded (1 > ktresh >= 0).The default is 0.01
  • MinPoints -- minimum number of time points for a detected peak to make a track (1 is the minimum).
  • MaxGap -- maximum gap between time-points for track continuation (> 0). Tracks that have no continuation after kmaxgap will be discarded.

Instances

crossSpecFilter :: CrossSpec -> Sig2 -> Sig2 -> Sig2 Source #

Filters the partials of the second signal with partials of the first signal.

crossSpecVocoder :: CrossSpec -> Sig2 -> Sig2 -> Sig2 Source #

Substitutes the partials of the second signal with partials of the first signal.

crossSpecFilter1 :: CrossSpec -> Sig -> Sig -> Sig Source #

crossSpecFilter for mono signals.

crossSpecVocoder1 :: CrossSpec -> Sig -> Sig -> Sig Source #

crossSpecVocoder for mono signals.