[CM] removing harmonic content from sound (solutions for real-time use)

Orm Finnendahl orm.finnendahl at selma.hfmdk-frankfurt.de
Wed Aug 16 06:55:30 PDT 2023

Hi Anders,

 I made the Common Lisp version of ATS work last Christmas. It now
works with newest CLM. In addition I reimplemented the resynthesis
part as a realtime module in incudine. You can find it here:


The performance is comparable to the original non-realtime CLM version
(even slightly more efficient on my machine). I use sbcl on linux and
only tested this combination.

It might not be all that helpful for your purpose as ATS has an
analysis stage that is non realtime. In addition tweaking the analysis
params (especially in your case) is probably crucial in order to get
the residual signal you'd like to obtain and you'd probably want to
adjust the params dynamically, which is not feasible considering the
architecture of ATS.

I made a browser based gui to interactively scan across the sonagram
of the ATS analysis with a mouse. You can narrow down the bandwidth to
listen to, modulate the frequencies of the ATS tracks individually
and/or crossfade between the sine and residual component in
realtime. If you want to try it out let me know and I can give you
directions on installation. The interactive part is pre alpha, but it
works well and I'm already using it for compositions. Once the ATS
file has been calculated it's like an interactive realtime version of
Spear with modulation capabilities.

Prof. Orm Finnendahl
Hochschule für Musik und Darstellende Kunst
Eschersheimer Landstr. 29-39
60322 Frankfurt am Main


Am Dienstag, den 15. August 2023 um 10:20:38 Uhr (-0700) schrieb Juan Reyes:
> Hi Anders,
> If I recall Juan Pampin's ATS [1] would do what you are describing.
> Lisp version was good but I have not used it in fifteen years (CMUCL)
> and not so sure it will work on SBCL. Meaning that it would probably
> need some toggling, if someone has some free time.
> Juan and Pablo de Liscia also had some C++ binaries that worked
> 'realtime' but have not tried them recently. They might need
> recompilatation.
> If you get ATS working I'm positive you'll get what you want.
>  --* Juan Reyes
> [1]
> https://dxarts.washington.edu/wiki/analysis-transformation-and-synthesis-ats
> > I want to remove as much-as-possible harmonic content from sound
> > input, leaving only the noise part.  Think acoustic guitar, or
> > close-miked piano, leaving the 'mechanics' only.
> > 
> > Ultimately i'll need a real-time solution.
> > 
> > Perhaps something like a LPC-based approach which may be used in
> > real-time?
> > 
> > Or perhaps trying to subtract a certain part of the result of a
> > FFT-analysis?  Or some other approach?  Anyone tried?
> > 
> > All suggestions or refs are very welcome! :-)
> > 
> _______________________________________________
> Cmdist mailing list
> Cmdist at ccrma.stanford.edu
> https://cm-mail.stanford.edu/mailman/listinfo/cmdist

More information about the Cmdist mailing list