How To Use These Simple Upsampling/downsampling Macros?

Discussion in 'REAKTOR' started by mike_jm, Sep 7, 2017.

  1. mike_jm

    mike_jm Member

    Messages:
    130
    Following off the discussion we were having on guitar distortion, where the maker of "too-b" was talking about how much upsampling/downsampling apparently improved his results, I'd like to try instituting this concept into other Reaktor sims like the TT amp.

    I found this simple but comprehensive project of free macros for upsampling/downsampling, but I'm having trouble figuring out how to wire them:

    https://www.native-instruments.com/en/reaktor-community/reaktor-user-library/entry/show/10749/

    Let's take a simple application like this where I want to upsample for a built in overdrive effect:

    upsample.PNG

    How do I connect it? Do I need four copies of the Overdrive and run:
    S0 -> overdrive1 > S0
    S1 ->overdrive2 -> S1... etc?

    Does this work in this application or do I need to go into the overdrive and apply them before and after the main distortion core module of relevance?

    Thanks.
     
  2. salamanderanagram

    salamanderanagram NI Product Owner

    Messages:
    3,255
    as long as you are using a memory-less function, it works as you described. it depends on exactly what's in the 'overdrive' macro on how exactly you would set it up.

    in my experience, this is the most expensive and least successful way to anti-alias.
     
  3. mike_jm

    mike_jm Member

    Messages:
    130
    Thanks. Do you mean the method he suggests in the macros is expensive and unsuccessful?

    Or do you mean up sampling and down sampling the whole overdrive unit is expensive and unsuccessful?

    I think the only part this really matters for is the actual distortion component in which case I can just apply it inside the core/primary that's doing it...
     
  4. mike_jm

    mike_jm Member

    Messages:
    130
    Holy ****. I just tried this in TT Amp and it makes it a COMPLETELY different simulation. Same presets sound completely different on high gain.

    Much less "solid state" or "software" and more "3D tube".

    I just did this to the saturators in each of the 4 preamps:

    tt preamps.PNG

    I have to be honest, I never really "got" the hype about oversampling until just now. A lot of plugins to me sound the same whether oversampled or not and that's probably because they're very subtle/simple processes. But obviously when you're distorting the **** out of something, the oversampling helps.

    Gonna try 8x next...
     
    Last edited: Sep 7, 2017
  5. salamanderanagram

    salamanderanagram NI Product Owner

    Messages:
    3,255
    i mean, if you measure anti-aliasing efficiency as

    percentage of aliasing removed / CPU used

    then this technique does not fare very well vs. the infinite linear oversampling that colin mentioned or polyBLAMPs (for hard clipping) that i mentioned. it will, however, absolutely sound much better than a naive version.

    yeah, only anti-alias the components that actually cause aliasing, for sure.
     
    Last edited: Sep 7, 2017
  6. mike_jm

    mike_jm Member

    Messages:
    130
    Thanks Salamander. I downloaded the infinite linear oversampling project, but it's not drag and drop like this is. Using that seems like it would actually require understanding what you are doing and I'm limited in that regard. :)

    If I can drag and drop something from ILO or do something simple with ILO in place of the upsamplers and downsamplers above, I'm all ears for how!

    On the other hand, if it's going to be a complex process of customization or trial and error to get it to work, well maybe it would be best for me to tackle another time in the future ...
     
  7. salamanderanagram

    salamanderanagram NI Product Owner

    Messages:
    3,255
    it's not that simple, but if you know the equation, you just punch it into wolfram alpha and it does the calculus for you.

    i have a few tutorials on it somewhere. but yeah, you have to do math and stuff, certainly not as easy as this.
     
  8. mike_jm

    mike_jm Member

    Messages:
    130
    Wow. The 8x helps a lot too. Very noticeable up from 4x. But it's adding about 5% extra CPU load.

    But just one of these 8x TT amp is eating up 20% of my quad core CPU! And I don't mean one core - that's the meter in my DAW!

    I'll make another thread to inquire about beginner's application of ILO. Seems essential.
     
    Last edited: Sep 7, 2017
  9. colB

    colB NI Product Owner

    Messages:
    1,914
    Like Don said in his first reply, the approach discussed in this thread only works in a simple way if you are applying it to modules that have no internal state or other memory processes.
    As soon as there is a delay line, or even just a z-1 module (or equivalent), then it gets more complicated. At that point you won't be able to use it with monolithic primary modules, and any core modules will need to be modified to allow the memory based process to talk across the oversampling sections.