I don't think a "one stop anti aliasing for any signal" method is technically possible,
because aliasing is closely related to the sampling frequency,
and once you have a signal that contains partials higher than the nyquist frequency,
you get aliasing, and there's no way I know to remove it once it's there (because the harmonics have been folded down into the frequency range that the sampling rate is able to represent).
Interpolated wavetable reading does indeed help, but it does not solve it completely.
Filtering a signal after aliasing has occured does not remove aliasing, but can of course make it less obvious (if the aliasing is not very prominent in the first place.)
The most common method to avoid aliasing is to know the highest frequency present in the wavetable (or other signal), and then not to transpose it up more than to the point where the highest frequency cross the nyquist threshold. If you want to transpose a (recorded audio) sample up without aliasing, you would want to filter the audio signal *before* writing it to a table. This is exactly what vco2 does. If you want to do this for an arbitrary waveform, you can use gen30 to extract the harmonic range you want and write it to a separate table, and then change the table to be read depending on transposition rate.
best
Oeyvind
2007/12/13, Mark Van Peteghem <Mark.Van.Peteghem@telenet.be>:
Tim Mortimer schreef:
> & I'm also vaguely aware that chebyshev filters are something to do with a
> potential solution to preventing aliasing? (as well as the assumedly related
> chebyshev polynomial as a way to add harmonics to a basic sine wave in a
> more classic waveshaping context...& it is this application to which the new
> chebyshevpoly is mostly geared if i am not mistaken...)
>
No, the Chebyshev filter is something different, although the
mathematics have to do with Chebyshev polynomials. See
<
http://en.wikipedia.org/wiki/Chebyshev_filter> for more info,
especially the graphs that compare Butterworth and Chebyshev filters are
interesting - it makes me feel more at ease with Butterworth filters,
although I don't know much about the theory behind all this.
> but is there anyway / a best way / a "new" way to prevent aliasing on ANY
> generic input signal - a "one stop anti aliasing shop" as it were?
>
I only know of the vco2 opcode, which only does some input signals, but
works well for me. For other input signals my best guess is butterlp at
around 10000 Hz, but there may be better ways to do it.
grtz,
--
Mark
_________________________________________
When you get lemons, you make lemonade.
When you get hardware, you make software.
Send bugs reports to this list.
To unsubscribe, send email
sympa@lists.bath.ac.uk with body "unsubscribe csound"