On 6/17/14 3:30 PM, Nigel Redmon wrote:
This is getting…nesty...
yah 'vell, vot 'r ya gonna do? :-)
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?
well, yeah, and it might better be described as a function that is
discontinuous with most of its derivatives, even the 1st.
so
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.
okay, you mean with it cranked up so that it virtually hard limits.
that's not exactly what comes to mind about "warm" tube distortion.
like those DevilDrive guys (or was it the Kemper guys) built a 12AX7
preamp to model (and i wonder how much that tells us about how a Fender
Twin Reverb cranked up to arcweld behaves like).
but this is hard clipping distortion, not zero-crossing distortion,
right? in between the nasty hard limits, you might be able to decently
model the tube curves with finite-order polynomials. specifically the
mapping curve from biased grid voltage to biased plate voltage given a
specific load line (which may be affected by power sag). maybe you can
cover that quite well with a finite-order polynomial and emulate that
with a finite sampling rate. but if it clips, might be nasty, regarding
aliases.
the only thing i know how to tame down a hard limit (and it may very
well not be compatible with the characteristic tube curve) is to set as
many derivatives as possible to zero and splice the hard limit to that
thing. continuity to the 2M-th derivative including the hard limit.
So anything at the low gain settings is pretty insignificant for something
designed to handle the high gain settings.
well, we gotta think sorta like the string theorists. we gotta imagine
how to seamlessly glue together two ostensibly incompatible systems.
like how do we crossfade from the low-gain behavior (the "warm tube
sound") to the behavior we like when it's cranked up to arc-weld?
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.)
well, i know there can be different specs. but for a 32-tap FIR LPF,
you can put the same brick-wall LPF on both guitar (that might not need
it as bad) and the grunge box. it's just that for clean amp setting,
you might hear the difference between your straight-grunge pedal and the
LPF'd one (and it's less necessary, maybe that means opening up the LPF
as the gain knob setting is reduced).
--
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