[PD] The (not) doppler distortion (was: overdriven speaker)

Mathieu Bouchard matju at artengine.ca
Sat Nov 20 05:25:40 CET 2010


On Sat, 20 Nov 2010, Martin Schied wrote:

> no, sorry, I can't on the quick. but I know for sure that frequency 
> modulation only produces harmonics if the carrier and modulator are in 
> "simple" relations like 1:5 or your example 200 to 1000.

I think that my reasoning is mostly correct and that our difference is 
that while I'm insisting that periodic signals remain periodic, you are 
insisting that nonperiodic signals remain nonperiodic, or something like 
that.

> If you use not-harmonic related frequencies like 320 and 1000 Hz

gcd(320,1000)=40.

320 is the 8th harmonic of 40 Hz, while 1000 is the 25th harmonic of 40 
Hz.

> will have new frequencies which aren't multiples of 320 and 1000, but 
> inbetween. (580 and 1320, ...),

You mean 680 and 1320. Note that those are both multiples of 40.

> and attached) that there occur very similar (if not identical) effects 
> if you modulate a mix of 1000 + 320 Hz with itself

You will get harmonics of 40 Hz, or if you do it real strong, you will get 
harmonics of 20 Hz if your sampling rate is 44100 Hz, due to reflection at 
Nyquist rate.

> The vd~ sounds always "richer" possibly artifacts. (the spectrum looks 
> very dirty too)

Probably due to the use of Lagrange interpolation instead of something 
suitable for splines, such as Natural Spline interpolation. I still want 
to make my own version of vd~ using the latter... not now.

>> But there is no difference between a moving listener and a moving 
>> source

I was wrong. IIRC, that statement is only true for light, not sound. (?)

> (a moving sound source at the speed of sound produces infinite 
> frequency, a moving listener at speed of sound hears only doubled 
> frequency).

Why are you not taking the direction of the motion into account ?

If you go at speed v towards a static sound source, you hear everything at 
speed 1+v/c, whereas if you move away from it, you hear everything at 
speed 1-v/c.

> exactly and this is why I'd like to move the write head. How did your correction using vd~ work?

The correction I made just uses a [delread~].

For example if you have [+~ 1]-[*~ 5]-[+~ 2], you need a [delread~ a 7], 
because 1*5+2 = 7.

> it's only because of the slight delay I'd be interested to eliminate. 
> But as you also said I don't expect any big difference between the delay 
> free case and the vd~ case as the modulations occuring with a slight off 
> phase will not sound any different. (however 2ms can be quite different 
> for short percussive signals)

Well, it does sound different in some way, but the changes I get by 
changing that delay, are less special than what I get by making that 
effect happen in the first place, instead of not. It makes me think of 
other delay tricks such as comb filters.

> yep, that's also one of the effects I wanted to eliminate by the moving 
> write head.

If you make a "moving write head" thing, though, it needs to be additive, 
and the energy has to get stretched like the derivative of the motion (the 
speed of the head). The data may have to be spread into a not-very-bounded 
amount of array elements.

  _______________________________________________________________________
| Mathieu Bouchard ---- tél: +1.514.383.3801 ---- Villeray, Montréal, QC


More information about the Pd-list mailing list