On 3/1/13 3:18 PM, Theo Verelst wrote:
...
>>  -  *All* filtering you can do, either analog or digital, will
>> inevitably have phase shifting as a consequence, no matter what people
>> will try to tell you about correcting networks (check out the theory and
>> preferably do your homework: ALWAYS is ALWAYS.
>
>wire?  (or does that not count as a filter?)

:) Sure. There are things like wavelets with some suitable windowing (various kinds, complicated, in most cases theory prefers infinite sums/integrals) which can even do some sort of "orthogonal" filtering, probably also adding up (within some given accuracy limits) to "pass through" when done right. It is always a question of when you change a little thing (like compression of one or more bands) whether the result, which then doesn't anymore add up to a "wire", or simple N-sample delay, is something sensible.

well, that's the question with a multiband compressor. when none of the bands are compressing, the output should add up to be just like the input, but maybe delayed or, if L-R is used, just like the input passed through an APF. it's only when one of the band compressors are kicking in that something not-like-a-wire happens.

Also, many FIR filters sound not very natural because they don't implement the equivalent to reasonable accuracy of actual poles and zeros, causing in that interpretation signal distortion.
okay, but for bandsplitting (for multiband whatever), you might not care that it implements actual poles and zeros. if you're emulating an L-R crossover, you *are* emulating an analog filter with poles and zeros. if you emulate by using the bilinear transform, the whole thing should add up to be an all-pass filter just like for the analog L-R, but the degree of phase shift happens at different frequencies for the bilinear digital filter compared to the analog model.

And they may well be abused in the signal path for other purposes than the main filter function. Of course all kinds of compromises and accuracy fixes may be possible and useful.

Also, like with some per sample batch or averages based FFT-based filtering, very soon when not simply "reverse FFT-ing the ceptrums", the "straight" delay idea is left very far behind. Meaning that the actual filter convolution does a whole lot of stuff besides for instance an intended frequency/amplitude equalization.

Also, I meant by distortion, that the power sequence generated by for instance "analog equivalent" z-function function in the digital domain (with the same form as the jW or "s" transfer function in the Fourier domain), when reconstructed into an analog signal (after convolution with an input signal, say a test impulse) by either a close to perfect reconstruction, a "normal" DA converter oversampling filter, or just simple anit-aliasing, isn't going to be a perfect match in relevant cases.

Also, some filters would require the equivalent of "upsampling", which theoretically is an infinitely long filter, and to be done accurate requires in practice a pretty long (sinc-like) filter.
yup, but the best-sounding sample rate converters have 64-tap FIR polyphase filters. i think that even as low as 16-taps is good enough for a synth. 32-tap should certainly be long enough. this means, when you design the sinc-like polyphase kernel, you decide how many phases (or fractional-sample delays) you need. let's say it's 512 different fractional delays (all equally spaced), that's like upsampling by a factor of 512. if you have a 32-tap FIR (that means you're looking at the 16 samples preceding your interpolated point and the 16 samples after), then your brickwall sinc-like kernel is a 32x512 = 16384 sample long FIR with cutoff at 1/512 Nyquist. that's a reasonably straight-forward design if you use the windowed sinc function. like a Kaiser window.

Of course simple solutions can work a little magic, but distortion in the sense of harmonic, inter modulation and transient distortion is inevitable and quite audible, just like "imperfect reconstruction" in all normal DA (not AD) convertors.

I have the strong impression that in machines like the Kurzweil there's a compelling logic starting from the sample preparation, and ending with an overall machinery acting on the output signal which when the proper DSP and effects are used can make for pretty perfect output signals, but I have the impression it's complicated and works good only when all the steps are done right.

well, i was down in the dirt with some of it when i was at K (2006-2008, i still have a condo 500 meters away that we haven't sold yet, it's rented out to an asshole at the moment). it was *not* perfect and really was not meant to be. there was a sense that no two notes (even by hitting the same key twice) would ever be sample-by-sample the same. but they accomplished that by cutting some corners in some clever ways, that were driven by the cost of sample ROM and the desire to pack as many sampled instruments as possible into the ROM. it's pretty much, extract the amplitude envelope and AGC the whole note. so, supposedly when you apply that envelope to the post-AGC waveform (now with flat amplitude, a big blue strip across your sample editor like a Ricki Martin CD), after multiplying the two, you should get something like the old waveform. so then there need be no bits to the wordsize committed to headroom because the headroom is nearly zero. then they pre-emphasized the waveform before quantizing it down to 8-bit words. the quantization noise is beaten down by the de-emphasis upon playback. they do some other tricks to get the harmonics that are a little off (like a little sharp in a sampled piano) to line up at both sides of a loop. and they layer and add a little DSP to phatten things up.

Interesting though.

Also the DSP machinery in audio equipment can take into consideration that the human-perceived or electronically measured audio power resulting from using all kinds of DSP is kept limited, and made human-friendly, and that there is a well working warning mechanism when the limits of blasting audio waves into a listening space are reached. Many modernistic approaches appear to search for the opposite, unfortunately.

there is a lot of crappy software and plugins sold by reputable companies that i will not identify. sometimes they just sorta kludge it together. take care of the NaN problem, and they think they're done.


--

r b-j                  r...@audioimagination.com

"Imagination is more important than knowledge."



--
dupswapdrop -- the music-dsp mailing list and website:
subscription info, FAQ, source code archive, list archive, book reviews, dsp 
links
http://music.columbia.edu/cmc/music-dsp
http://music.columbia.edu/mailman/listinfo/music-dsp

Reply via email to