PureData CEAMMC library web documentation
available since version: 0.4
Based on SoundTouch library for changing the Tempo, Pitch and Playback Rates of arrays. Copies time-stretched data from source to destination array
SRC
source array
type: symbol
DEST
destination array
type: symbol
@src
Get/set source array
type: symbol
@dest
Get/set destination array
type: symbol
@tempo
Get/set relative tempo change without affecting the sound pitch
type: float
units: %
range: -50..100
default: 0
@pitch
Get/set relative pitch change while keeping the original tempo
type: float
units: semitone
default: 0
@rate
Get/set playback rate - changes both tempo and pitch together as if a vinyl disc was
played at different RPM rate
type: float
range: 0.1..2
default: 1
@speech
Get/set optimize for speech sound source
type: bool
default: 0
@antialias
Get/set use of anti-alias filter. Anti-alias filter is used to prevent folding of high
frequencies when transposing the sample rate with interpolation.
type: bool
default: 0
@aalength
Get/set pitch transposer anti-alias filter length
type: int
range: 8..128
default: 64
@sequence
Get/set Default length of a single processing sequence, in milliseconds. This
determines to how long sequences the original sound is chopped in the time-
stretch algorithm. The larger this value is, the lesser sequences are used in
processing. In principle a bigger value sounds better when slowing down tempo,
but worse when increasing tempo and vice versa. Increasing this value reduces
computational burden & vice versa. Giving 0 value for the sequence length
sets automatic parameter value according to tempo setting (recommended).
type: int
units: ms
range: 0..100
default: 0
@seekwindow
Get/set Seeking window default length in milliseconds for algorithm that finds the best
possible overlapping location. This determines from how wide window the
algorithm may look for an optimal joining location when mixing the sound
sequences back together. The bigger this window setting is, the higher the
possibility to find a better mixing position will become, but at the same time
large values may cause a "drifting" artifact because consequent sequences will
be taken at more uneven intervals. If there's a disturbing artifact that sounds
as if a constant frequency was drifting around, try reducing this setting.
Increasing this value increases computational burden & vice versa. Giving 0
value for the seek window length sets automatic parameter value according to
tempo setting (recommended)
type: int
units: ms
range: 0..100
default: 0
@overlap
Get/set Overlap length in milliseconds. When the chopped sound sequences are mixed back
together, to form a continuous sound stream, this parameter defines over how
long period the two consecutive sequences are let to overlap each other.
Increasing this value increases computational burden & vice versa.
type: int
units: ms
range: 0..100
default: 8
Authors: Olli Parviainen, Serge Poltavsky
License: GPL3 or later