< Back to IRCAM Forum

Foldover and spectral inversion in extreme cases

Dear AS-users,
I apologise if my question sounds a little “strange”, but I noticed that, when using a negative frequency shift so that the resulting spectrum is negative (ex. -1500Hz for a sine tone at 1KHz), AS produces only a low click at the beginning and end of the sound, and silence in between (it should generate a 500Hz tone with inverted phase).
Also, when shifting the same tone by, say 23500Hz, AS generates a high glitch (around the Nyquist frequency) at the beginning and end, and, again, silence in between.
With signal-based (not spectrum-based) frequency shift the result is “normal”.
I also noticed that there is no foldover when transposing a sound beyond the Nyquist frequency.
Is this a specialty of spectral-based processing or of AS?
Why is it producing this result?
Thank you very much in advance.
Marco

Hello Marco,

I also noticed that there is no foldover when transposing a sound beyond the Nyquist frequency.

This is intended - the fshift filter implementation is such that it avoids all the aliasing effects that you describe. It could indeed be interesting to preserve those as artistic effects, but I currently don’t have any plans to implement this.

With signal-based (not spectrum-based) frequency shift the result is “normal”.

I don’t understand this - What do you mean by “signal-based frequency shift” ?

Best
Axel

A further comment: The fshift filter in AS performs the signal modulation using the analytic signal. The analytic signal of a real signal has zero energy in the negative frequency of the spectrum. Throughout the processing the fshift filter deals only with the real part of the analytic signal. So when the signal disappears (as you observe) it has in fact been transformed from a real signal into an imaginary one. So one could say this is a ring modulator working with an analytic signal representation (both the modulator and the signal are represented as analytic signals). As a result you don’t have all the effects of the positive and the negative spectra that you have with the classical ring modulator.

If you think in the world of analytic signals the fshift filter does the right thing. To create the effect you would like to have one would have to create separately the analytic signals of the real and imaginary components of the signal and the modulator, and apply the real part of the modulator to the real part of the signal and the imaginary part of the modulator to the imaginary part of the signal. With this setup whenever the real part becomes imaginary the imaginary part will become real.

Best
Axel

Dear Axel,

Thank you again so much for your cristallo clear explanations. I see that reproducing all the effects of a classical rind modulator (this is what I meant for the world of “signal”) is not so easy in the world of the analytic signal.
One final point, if I may regarding the automatic corrections (like prevention of foldover or spectral inversion, amount several others).
From my experience, each time I came across this kind of corrections (in several softwares), I met a “crazy” composer who found interesting and creative ways not to use them, with surprisingly good results.
Normally, however, it would seem to me better to activate or disactivate these corrections in a flag in the preferences (perhaps activated by default), but I perfectly understand that there are pragmatical (and theoretical) limitations from this perspective.
Thanks again!
Marco

Dear Marco

One final point, if I may regarding the automatic corrections (like prevention of foldover or spectral inversion, amount several others). From my experience, each time I came across this kind of corrections (in several softwares), I met a “crazy” composer who found interesting and creative ways not to use them, with surprisingly good results.

We know crazy composers here at IRCAM and we are very well aware of that kind of work. But with all due respect - your starting point is wrong! There are no corrections here. There was never the intention to produce an improved ring modulator. Being a crazy researcher myself about 15 years ago I felt the desire to experiment with a new type of transposition that is a transposition created by means of modulation of analytical signals. Feedback has been limited!

There is a reason to that. Given that AS uses a spectral domain signal representation, and given further that for whatever modulation you want to do you need to go back to time domain (this applies to both the analytic and classical ring modulators) this effect does not integrate well into the overall processing strategy. You cannot combine it with transposition or time stretching.

By the way there is something called tremolo modulation in SuperVP command line. The option is “-gtremolo” that probably does everything a modulator program should do. There you have modulation with sinusoids, saw-tooths, square waves, and triangles, and because it is used as a post effect (after resynthesis) you can combine it more freely with the other effects. This effect has been developed 25 years ago - (before I started with SuperVP) and there has never been much interest for this. Therefore it never made it into the GUI.

Best
Axel

Dear Axel,
Sorry if I reply so late, the last days were just to hectic. Thank you for pointing the “tremolo” option to me. I appreciate it. I will certainly play with it to see if I can find interesting ways of using it.
I did not expect to raise such an extended discussion with my question about “spectral mirroring”, the idea came from a module used by Boulez in 1958 called “Klangumwandler”, which was a sort of analog frequency shifter and was used, according to some articles, to invert spectra around 0Hz. So, I tried it in AS.
But I realise that this is more complicated to do when working an the analytic signal.
All my very best,
Marco