From: Ron N. on 29 Jul 2010 14:26 On Jul 29, 6:57 am, Dirk Bruere at NeoPax <dirk.bru...(a)gmail.com> wrote: > So interpolating to 96kHz will not preserve any extra information > during subsequent arithmetic? Depending on how you noise shape your quantization errors, spreading the quantization out among more LSB bits might make the signal more robust against further quantization noise/errors in the processing chain. It's sort of a form of data redundancy. IMHO. YMMV. -- rhn A.T nicholson d.0.t C-o-M
From: Jerry Avins on 29 Jul 2010 15:29 On 7/29/2010 1:17 PM, Tim Wescott wrote: > On 07/29/2010 10:05 AM, Vladimir Vassilevsky wrote: >> >> >> robert bristow-johnson wrote: >> >> >>> if you're planning on some emulation of vacuum tube pre-amps or amps >>> (just to get that "warm sound"), 96 kHz might not be enough. >> >> You don't have to. >> >> 0. Approximate nonlinearity by polynomial. >> 1. Approximate signal by polynomial. >> 2. Apply nonlinearity and get a polynomial. >> 3. Compute Fourier from polynomial in closed form. >> 4. Drop would-be aliased components. >> 5. Compute inverse Fourier, also closed form. >> 6. Generate signal back. > > Yes, but will it sound like the tubes have been dipped in LN2? > > http://www.cryoset.com/catalog/product_reviews_info.php?products_id=32&reviews_id=6. And can I sell you a pair of $200/ft speaker cables? Jerry -- Engineering is the art of making what you want from things you can get. �����������������������������������������������������������������������
From: Vladimir Vassilevsky on 29 Jul 2010 20:29 robert bristow-johnson wrote: > On Jul 29, 1:05 pm, Vladimir Vassilevsky <nos...(a)nowhere.com> wrote: > >>robert bristow-johnson wrote: >> >>>if you're planning on some emulation of vacuum tube pre-amps or amps >>>(just to get that "warm sound"), 96 kHz might not be enough. >> >>You don't have to. >> >>0. Approximate nonlinearity by polynomial. >>1. Approximate signal by polynomial. > > this assumption is not necessary. we just need to view the signal as > bandlimited to the original Nyquist before upsampling. > >>2. Apply nonlinearity and get a polynomial. > > > what you get is the signal with images (of some form) going up to N > times the original bandlimit, where N is the polynomial order, and > some of those images may be folded over, depending on the upsampling > ratio. > >>3. Compute Fourier from polynomial in closed form. > > > why bother? filtering in the time domain is cheap enough and good > enough. > > >>4. Drop would-be aliased components. > > > and hope that none of them aliases made it back into your original > baseband. if they do, you might be fucked. > > >>5. Compute inverse Fourier, also closed form. > > > i never left the time domain. > > >>6. Generate signal back. > > > Vlad, i've been here. No, you didn't get the idea. If the signal can be approximated as polynomial x = P(t), and nonlinearity is also polynomial F(x) static, then you can find Nyquist bandlimited Q(t) = F(P(t)) as the closed form solution. No filtering, no upsampling, only algebra. Vladimir Vassilevsky DSP and Mixed Signal Design Consultant http://www.abvolt.com
From: Fred Marshall on 29 Jul 2010 22:22 Dirk Bruere at NeoPax wrote: > > So interpolating to 96kHz will not preserve any extra information > during subsequent arithmetic? It might. Let's see: Assume that the sampling is done such that the bandwidth is pretty much used up. i.e. there's no guard band of little energy around fs/2. Now, what happens when you interpolate? You stuff zeros in time to double the sample rate. You lowpass filter at double the sample rate to remove the components from fs/2 to 3fs/2. Because of the initial assumption about lack of guard band, you may lose some of the high frequencies in doing this. Depends on the filter. Either that or you may retain some of the "new" stuff above fs/2 and below 3fs/2. Assuming that this can be done perfectly though, then you have more guard band to play with. The question is, can you take advantage of it somehow? Let's take a wild leap and say that you can. This suggests that there is energy above the original fs/2. Maybe it's in quantization noise coming out of computations and subsequent rounding. And, maybe you can filter that out..... But you already have 24 bits so I can't begin to predict. Then, presumably you want to get back down to 48kHz, right? This means you have to lowpass again to fs/4 or the original fs/2. It might be useful (as above) but it's too complicated to comment on ... for me! Anyone done this to advantage? Fred
From: glen herrmannsfeldt on 29 Jul 2010 23:41
Fred Marshall <fmarshall_xremove_the_xs(a)xacm.org> wrote: > Dirk Bruere at NeoPax wrote: >> So interpolating to 96kHz will not preserve any extra information >> during subsequent arithmetic? > It might. Let's see: > Assume that the sampling is done such that the bandwidth is pretty much > used up. i.e. there's no guard band of little energy around fs/2. > Now, what happens when you interpolate? > You stuff zeros in time to double the sample rate. > You lowpass filter at double the sample rate to remove the components > from fs/2 to 3fs/2. Because of the initial assumption about lack of > guard band, you may lose some of the high frequencies in doing this. > Depends on the filter. Either that or you may retain some of the "new" > stuff above fs/2 and below 3fs/2. For comparison, say instead of doing that you increase the samples to 48 bits each. For some operations that will take the same amount of hardware or computation as doubling Fs. > Assuming that this can be done perfectly though, then you have more > guard band to play with. The question is, can you take advantage of it > somehow? It was previously suggested how to determine the number of bits required for different filters. Now you can compare the bits required at double the original rate, or double the original bit depth. > Let's take a wild leap and say that you can. This suggests that there > is energy above the original fs/2. Maybe it's in quantization noise > coming out of computations and subsequent rounding. And, maybe you can > filter that out..... But you already have 24 bits so I can't begin to > predict. > Then, presumably you want to get back down to 48kHz, right? > This means you have to lowpass again to fs/4 or the original fs/2. > It might be useful (as above) but it's too complicated to comment on ... > for me! -- glen |