This is getting…nesty...

On Jun 17, 2014, at 10:42 AM, robert bristow-johnson 
<r...@audioimagination.com> wrote:

> On 6/17/14 12:57 PM, Nigel Redmon wrote:
>> On Jun 17, 2014, at 9:09 AM, robert 
>> bristow-johnson<r...@audioimagination.com>  wrote:
>> 
>>> On 6/17/14 5:30 AM, Nigel Redmon wrote:
>>> 
> ...
>>>> Anyway, just keep in mind that the particular classic amps don’t sound 
>>>> "better" simply because they are analog. They sound better because over 
>>>> the decades they’ve been around, they survived—because they do sound good. 
>>>> There are plenty of awful sounding analog guitar amps (and compressors, 
>>>> and preamps, and…) that didn’t last because they didn’t sound particularly 
>>>> good. Then, the modeling amp has the disadvantage that they are usually 
>>>> employed to recreate a classic amp exactly. So the best they can do is 
>>>> break even in sound, then win in versatility. And an AC-30 or Matchless 
>>>> preset on a modeler that doesn’t sound exactly like the amp it models 
>>>> loses automatically—even if it sounds better— because it failed to hit the 
>>>> target. (And it doesn’t helped that amps of the same model don’t 
>>>> necessarily sound the same. At Line 6, we would borrow a coveted amp—one 
>>>> that belonged to a major artist and was highly regarded, for instance, or 
>>>> one that was rented out for sessions because it was known to sound 
>>>> awesome.)
>>> what did you guys do with the amps when you borrowed/rented them?  was your 
>>> analysis jig just input/output, or did you put a few high-impedance taps 
>>> inside at strategic places and record those signals simultaneously?
>> Yes. For instance, sweeping the EQ with incremental settings changes.
>> 
> 
> yes, another issue (which i didn't really touch on) is mapping the settings 
> of the knob to the internal (to the DSP) coefficients and threshold values 
> and such.  that is "coefficient cooking" and is the same issue as defining Q 
> in EQs so that the knob behaves like the ol' Pultec or whatever.  your 
> digital implementation might work very well, but if the position of the knob 
> in the emulation is not nearly the same as it was for the venerable old gear 
> (to get the same sound), someone might complain.

Oh yes, they *will* complain ;-)

>>>> On Tue, Jun 17, 2014 at 6:58 PM, Nigel Redmon<earle...@earlevel.com>  
>>>> wrote:
>>>>> On Jun 16, 2014, at 7:51 PM, robert bristow-johnson<
>>>>> r...@audioimagination.com>   wrote:
>>>>>>> one thing that is hard to replicate is a sample rate that is infinity
>>>>>>> (which is how i understand continuous-time signals to be).  but i don't
>>>>>>> think you should need to have such a high sample rate.  one thing we 
>>>>>>> know
>>>>>>> is that for *polynomial curves* (which are mathematical abstractions and
>>>>>>> maybe have nothing to do with tube curves), that for a bandwidth of B in
>>>>>>> the input and a polynomial curve of order N, the highest generated
>>>>>>> frequency is N*B so the sample rate should be at least (N+1)*B to 
>>>>>>> prevent
>>>>>>> any of these generated images from aliasing down to below the original 
>>>>>>> B.
>>>>>>> if you can prevent that, you can filter out any of the aliased 
>>>>>>> components
>>>>>>> and downsample to a sample rate sufficient for B (which is at least 
>>>>>>> 2*B).
>>>>>>> 
>>>>>> This really goes out the window when you’re modeling amps, though. The
>>>>>> order of the polynomial is too high to implement practically (that is, 
>>>>>> you
>>>>>> won’t end up utilizing the oversampling rate necessary to follow it),
>>> this is a curious statement *outside* of the case of hard clipping.  
>>> oversample by 4x and you can do a 7th-order polynomial curve and later 
>>> eliminate all of the aliasing.  oversample by 8x and it's 15th-order.  do 
>>> *no* oversampling and you can still make use of the fact that there's not a 
>>> lot above 5 kHz in a guitar and amp (so 48 kHz is sorta oversampled to 
>>> begin with).  you can fit a quite curvy curve with a 7th-order polynomial.
>>> 
>>>>>>  so
>>>>>> you still be dealing with aliasing. Modern high gain amps have huge gain
>>>>>> *after* saturation. In practical terms, you round into it (with a
>>>>>> polynomial, for instance), then just hard clip from there on out, and 
>>>>>> there
>>>>>> goes your polynomial (it can be replaced by an approximation that's very
>>>>>> high order, but what’s the point).
>>> yes, we splice a constant function against a curve.  if at the splice as 
>>> many possible derivatives are zero as possible, that splice appears pretty 
>>> seamless.  this is why i had earlier (on this list) been plugging these 
>>> curves:
>>> 
>>>                        x
>>>    f(x)  =  C * integral{ (1 - u^2)^M du }
>>>                        0
>>> 
>>> (C gets adjusted so that f(1) = 1 and f(-1) = -1.)
>>> 
>>> you can splice that to flat values at +/- 1 and the nature of the function 
>>> will not change appreciably from the polynomial in the region of the splice.
>>> 
>>> anyway, the whole point is to give the guys with golden ears no cause to 
>>> complain about hearing aliases.  same with emulating sawtooths and 
>>> hard-sync synthesis.
>>> 
>>>>>> Anyway, you pay your money, you make your choices. Obviously some really
>>>>>> good musicians making really interesting music use modeling amps. They
>>>>>> don’t have to be better than tubes, in order to be a win, just good 
>>>>>> enough
>>>>>> to be worth all the benefits. If you’re a session music, you can bring in
>>>>>> the truck with all of the kinds of amps that might be called on, or you 
>>>>>> can
>>>>>> bring a modeling amp, for instance. And going direct into the PA or your
>>>>>> recoding equipment…etc. I’m not going to make judgments on what people
>>>>>> should like, so I’ll leave it at that.
>>>>>> 
>>>>>> One happy thing about the aliasing is that, given a decent level of
>>>>>> oversampling, it won’t be bad at lower overdrive levels. At the higher 
>>>>>> the
>>>>>> overdrive levels, the harder it is to hear aliasing through all that
>>>>>> harmonic distortion you’re generating. So it could be worse...
>>> i really agree with this, Nigel.  with *some* oversampling (but 
>>> theoretically not sufficient oversampling), you can get away with a lot 
>>> (like hard limits or whatever stuff goes on inside a transformer with core 
>>> loss).  i would not say that you have to oversample to a ridiculously high 
>>> degree just because there is a hard-limit saturation in there or that your 
>>> tube model is not a polynomial approximation (but i wonder why you wouldn't 
>>> try to fit the grid-to-plate tube curve to a finite-order polynomial).
>> What I mean is... for a modern high-gain amp, the gain is on the order of 
>> 2^16 (and the curve starts it’s significant bend up near 1). So most of the 
>> signal, when you’re playing maxed out, is simply clipping hard. If your goal 
>> is to not alias in the audio band at all, by figuring the max harmonic 
>> component based on the order of the equivalent polynomial and the highest 
>> freq of the guitar input coming in…well, your oversampling factor is going 
>> to be a lot higher that you’re willing to implement.
> 
> i understand.  hard-hard-limit and you got harmonics going up to infinity 
> anyway.
> 
>>  There’s really no point in calculating a continuous polynomial over that 
>> range that I can see.
> 
> well, if it splices *well* to the clip region, it might *still* have a point.
> 
>> It’s no big deal—I just brought it up because I often see people, here and 
>> elsewhere, go down the thought path of... "OK, I want to make a guitar 
>> distortion unit…if I keep my polynomial to order N, I only need to 
>> oversample by (N+1)/2...", completely forgetting that when, in their code, 
>> they branch to limit the output to +/- 1, their polynomial order just went 
>> out the window.
> 
> yes, that's true (sorta).  at least *if* the splice to the limited constant 
> value is not smooth.
> 
> but you can make a polynomial match as many derivatives (equal to zero) of 
> the hard limit as possible (but that might be at cross-purposes to getting 
> the polynomial to follow a tube curve) and for levels that hit that limit (so 
> the code branches to the limit), if the overflow or spike isn't so bad, the 
> behavior isn't so far away from the "ideal" polynomial and the total 
> behavioral issue remains inside the window, i would think.

Yes, Robert…but, with the kind of gain necessary…OK, so you have the y-xis as 
you output level, x-axis as input. To view the entire curve for a Soldano Super 
Lead Overdrive, for instance, you draw the curve of your choice to rise from 
y=0 and give you a soft bend into y=1 (full output). The bend will be somewhere 
around x=1, ballpark (maybe it’s x=2 or 3, to allow for lower input levels, but 
the point is that it’s a small number compared to what’s coming next)…then you 
allow for x=30000 or so (a flatline from the x=1..3 area). Is that not a pretty 
high order polynomial?

The point being, yes the polynomial would be handy at low gain settings, but 
you still need to build this thing to work at extreme gain settings at the same 
time. So anything at the low gain settings is pretty insignificant for 
something designed to handle the high gain settings. Hence my feeling that 
there not much point to calculating how much headroom you have—you can pretty 
much count on infinity. There may be some reasons to do it—I’m not demanding 
that I have the right idea, just simply explaining what I meant by my comments. 
In reality, it’s not so clear cut, because as I mention before, the more you 
get into a situation where aliasing will be big, at the same time you are in a 
situation where you’ll have more generated harmonics to mask the aliasing. In 
the end, aliasing is *mainly* a problem if you bend a guitar note and you heard 
harmonics going in the wrong direction. For some reason guitarists just can’t 
get around that (lol).

>> BTW, the more the overdrive, the less the weaker upper harmonics of your 
>> guitar matter, so you can cheat by rolling them off as you increase drive.
> 
> a useful idea.  more pre-LPF as the grunge gets cranked up.
> 
>>  But you can’t rely on that too much, because guitar players like to hang 
>> analog distortion stomp boxes in front of your modeling amp, giving you 
>> powerful higher harmonics. :-)
> 
> yeah, but can't you *still* pre-LPF that signal (the output of the distortion 
> stomp box) as the amp drive is cranked up?  i dunno.

Yes, it’s definitely one place where you can win, and help yourself make the 
best of a practical amount of frequency headroom. Probably the biggest 
difference (between assuming direct, clean guitar strings as input, and one 
that’s be pre-crunchified with a stompbox) is that for the former you might get 
by with a lower-order filter, because guitar string harmonics drops of  pretty 
quickly by themselves. (So, you might design an amp sim that seems relatively 
alias-free, then get a customer or beta tester complaining about the aliasing, 
and that's were you find out that guitarists will still want to run their stuff 
into your sim, even if you give them those functions in DSP.)

> 
> -- 
> 
> 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