Re: Subject: Albums under a label recorded and/or mixed with Linux

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Mon, Sep 27, 2010 at 04:34:22AM -0700, Patrick Shirkey wrote:

> Moved to LAD as this is getting outside the normal discussion on LAU.
> 
> > As explained above, the difference is in step (6) which for
> > cyclic convolution is allowed to wrap around (meaning that
> > part of the output ends up where it shouldn't be), while
> > in linear convolution this is avoided by limiting the size
> > of the inputs. Unless you want the detailed maths I don't
> > think I could explain it any more clearly.
> >
> 
> I have it on good authority that all linear convolution operations can be
> expressed in the transformed domain, and vice versa. There is no
> difference except for clarity of presentation and sometimes some specific
> implementation issues.

This is absolutely correct. I don't see any contradiction with 
what I wrote...
 
> So it might be a worthwhile exercise to present the math behind your
> reasoning. We should probably move that discussion to the LAD list though.

The difference between cyclic and linear convolution you'll find
explained in one the first chapters of any textbook dealing with
FFT-based DSP. It's really basic background knowledge and I'm not
going to repeat it here.

But it's easy to understand what happens even without maths. 

I'm sure you are familiar with aliasing when using sampled
signals. In particular, if you multiply two signals in the
T domain, you can get aliasing in the F domain. In other
words the product could generate frequencies that can't be
represented (above FS/2) and that will alias to lower ones.

Now there is a strong duality between T and F domains when
dealing with Fourier transorms. You can always swap the two
domains and all rules and maths remain valid. This is because
the Fourier transform and its inverse are quasi the same thing.

That means that multiplication in the F domain can generate
aliasing in the T domain. In this case, since the result of
the inverse FFT is too long, the samples that don't fit will
'alias' to positions in the 0...N-1 range.

The solution is to limit the inputs to length N/2, just as
in the case of the T domain multiplication you can avoid
aliasing by lowpassing the inputs to half FS/2.

Ciao,

-- 
FA

There are three of them, and Alleline.

_______________________________________________
Linux-audio-user mailing list
Linux-audio-user@xxxxxxxxxxxxxxxxxxxx
http://lists.linuxaudio.org/listinfo/linux-audio-user


[Index of Archives]     [Linux Sound]     [ALSA Users]     [Pulse Audio]     [ALSA Devel]     [Sox Users]     [Linux Media]     [Kernel]     [Photo Sharing]     [Gimp]     [Yosemite News]     [Linux Media]

  Powered by Linux