BTW, I do know that it was developed with the Sonic Core SCOPE SDK, and I 
suspect it’s just using fairly routine DSP blocks, with a lot of care in 
tweaking the sound. (It runs in my mind that I might have seen some block 
diagrams on a forum back when he was developing it—the point is that I don’t 
think there is any cutting-edge tech involved.) But that’s all I know.

On Jun 18, 2014, at 10:40 AM, Nigel Redmon <earle...@earlevel.com> wrote:

> No, Marco, sorry. I wish I did. The result is very good, and a huge leap from 
> the sim in the CX-3. Very annoying that they don’t support MIDI switching of 
> the speed…
> 
> http://www.earlevel.com/main/2013/02/16/ventilator-adapter-in-a-mint-tin/
> 
> 
> On Jun 18, 2014, at 10:11 AM, Marco Lo Monaco <marco.lomon...@teletu.it> 
> wrote:
> 
>> Ciao Nigel, talking about the VENTILATOR, do you know something more about
>> its secrets/internals?
>> :)
>> 
>> M.
>> 
>>> -----Messaggio originale-----
>>> Da: music-dsp-boun...@music.columbia.edu [mailto:music-dsp-
>>> boun...@music.columbia.edu] Per conto di Nigel Redmon
>>> Inviato: mercoledì 18 giugno 2014 08:22
>>> A: A discussion list for music-related DSP
>>> Oggetto: Re: [music-dsp] Simulating Valve Amps
>>> 
>>> Well, some people think it’s close enough for rock n rock (amp sims),
>> others
>>> don’t. It’s the same with analog synths and virtual analog. But there’s
>> also
>>> the comfort of tube amps, and there’s the comfort of the limited sound
>>> palette of using the amp that you know and love. Amp sims are really about
>>> variety (can’t afford a Plexi, a Twin Reverb, SLO, AC-30, and a few
>> boutique
>>> amps? Now you can).
>>> 
>>> I appreciate the old stuff, but I appreciate the convenience and
>> flexibility of
>>> the new stuff—to me it *is* close enough for rock n roll (new stuff in
>>> general—I don’t play much guitar). I play a B3 clone because I hauled a
>>> Hammond decades ago, and I hauled and still have (needs work) a Leslie,
>> but
>>> I’d just as soon use my Ventilator pedal on the CX-3 (yes, with
>> programmable
>>> leakiness and aging of the tone wheels, etc.)—more convenient, and gets
>>> the sound I want. Others would shudder at the thought. Well, until their
>>> backs start giving out…I know a hardcore, old-time B3 blues player
>> (“Mule”—
>>> a nickname he earning for hauling around his B3 and Leslies) who picked up
>> a
>>> clone for his aging back after hearing my CX-3 though the Ventilator. Not
>> for
>>> all gigs, mind you, but as an option to go with for some gigs. The point
>> is that
>>> if the tradeoffs are attractive enough, it’s easier to let yourself try
>> new things
>>> even if you feel that it falls ever so slightly short of what you’re used
>> to, or
>>> strays from your comfort zone.
>>> 
>>> So while some might feel that amp sims haven’t arrived yet, other might
>> feel,
>>> “where the heck have you been the past decade?" ;-)
>>> 
>>> 
>>> On Jun 17, 2014, at 6:59 PM, robert bristow-johnson
>>> <r...@audioimagination.com> wrote:
>>> 
>>>> On 6/17/14 8:24 PM, Nigel Redmon wrote:
>>>>> (Thinking outside the nest…)
>>>>> 
>>>>>> (...maybe that means opening up the LPF as the gain knob setting is
>>>>>> reduced)
>>>>> Yes
>>>>> 
>>>>> And good discussion elsewhere in there, thanks Robert.
>>>>> 
>>>> yer welcome, i guess.
>>>> 
>>>> you may be thinking outside the nest; i'm just thinking out loud.
>>>> 
>>>> i think, like a multieffects box, we oughta be able to simulate all
>> these amps
>>> (don't forget the Mesa Boogie) and their different settings in a single
>> DSP
>>> box with enough MIPS and a lotta oversampling.  dunno if simulating the
>>> 50/60 Hz hum and shot noise would be good or not (i know of a B3 emulation
>>> that simulates the "din" of all 60-whatever keys leaking into the mix even
>>> when they're all key-up).  but they oughta be able to model each
>>> deterministic thing: the power supply sag, changing bias points,
>> hysteresis in
>>> transformers, capacitance in feedback around a non-linear element (might
>>> use Euler's forward differences in doing that), whatever.  whatever it is,
>> if
>>> you take out the hum and shot noise, it's a deterministic function of
>> solely
>>> the guitar input and the knob settings, and if we can land human beings on
>>> the moon, we oughta be able to figure out what that deterministic function
>>> is.  for each amp model.  it shouldn't be more mystical than that (but
>> there
>>> *is* a sorta mysticism with musicians about this old analog gear that we
>> just
>>> cannot adequately mimic).
>>>> 
>>>> and thanks to you, Nigel.
>>>> 
>>>> L8r,
>>>> 
>>>> r b-j
>>>> 
>>>> 
>>>>> On Jun 17, 2014, at 4:07 PM, robert bristow-
>>> johnson<r...@audioimagination.com>  wrote:
>>>>>> 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
>>> 
>>> --
>>> 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
>> 
>> --
>> 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
> 
> --
> 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

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