Sonnox Oxford Inflator - What is technically behind the splitband option?

Discussion in 'Reaper' started by Sinus Well, Aug 16, 2021.

  1. Sinus Well

    Sinus Well Audiosexual

    Joined:
    Jul 24, 2019
    Messages:
    2,006
    Likes Received:
    1,537
    Location:
    Sanatorium
    Okay, what's this about? The users sai'ke, RCJacH and SamueleP are working on a JSFX clone of Sonnox Oxford Inflator: RCInflator.
    So far the singleband action is ready and nulls against Sonnox.
    Here is the latest script revision by sai'ke:
    Code:
    desc:RCInflator
    
    slider1:0<-6, 12, 0.01>Input (dB)
    slider2:0<0, 100, 0.1>Effect (%)
    slider3:curve=0<-50, 50, 0.1>Curve
    slider4:clip=1<0,1,1{Off,On}>Clip
    slider5:0<-12, 0, 0.01>Output (dB)
    
    @init
    
    @slider
    in_db = exp(0.11512925464970229 * slider1);
    wet = slider2 * 0.01;
    dry = 1.0 - wet;
    out_db = exp(0.11512925464970229 * slider5);
    
    curvepct = 0.01 * curve;
    // 1 + (curve + 50) / 100
    curveA = 1.5 + curvepct;
    // - curve / 50
    curveB = -(curvepct + curvepct);
    // (curve - 50) / 100
    curveC = curvepct - 0.5;
    // 1 / 16 - curve / 400 + curve ^ 2 / (4 * 10 ^ 4)
    curveD = 0.0625 - curve * 0.0025 + (curve * curve) * 0.000025;
    
    
    @sample
    function apply_waveshaper(in)
    local(s0, s0_2, s0_3, out)
    global(curveA, curveB, curveC, curveD,
           clip, dry, in_db, out_db, wet)
    (
      in *= in_db;
      s0 = abs(in);
      clip ? (
        s0 = s0 > 1.0 ? 1.0 : s0;
      );
      s0_2 = s0 * s0;
      s0_3 = s0_2 * s0;
      s0 = (s0 >= 2.0) ? (
        0.0
      ) : (s0 > 1.0) ? (
        2.0 * s0 - s0_2
      ) : (
        curveA * s0 + curveB * s0_2 + curveC * s0_3 - curveD * (s0_2 - 2.0 * s0_3 + s0_2 * s0_2)
      );
     
      out = sign(in) * s0 * wet + min(max(in * dry, -2 * dry), 2 * dry);
      out = clip ? max(-1, min(out, 1)) : out;
      out * out_db
    );
    
    spl0 = apply_waveshaper(spl0);
    spl1 = apply_waveshaper(spl1);

    Now it's about the splitband action. And we are completely at a loss. What exactly does Splitband do? The manual states that the signal is divided into 3 bands, but the plugin has 0 spls PDC. So a linear phase filter is probably out of the question. However, we could not detect any phase distortion either, which again makes minimum phase filter very unlikely. Sai'ke says the following:

    So we are completely lost. Does anyone here have any information or ideas about what exactly the splitband action actually does?


    Knowledge desired!

    :bow:
     
    Last edited: Aug 16, 2021
    • Interesting Interesting x 7
    • List
  2.  
  3. MetaCastle

    MetaCastle Guest

    Nice plugin
     
  4. BEAT16

    BEAT16 Audiosexual

    Joined:
    May 24, 2012
    Messages:
    9,082
    Likes Received:
    6,997
    Inflator tutorial


    Show And Tell Of Sonnox Oxford Inflator
     
  5. hammond231

    hammond231 Member

    Joined:
    Nov 8, 2011
    Messages:
    28
    Likes Received:
    18
    I'm not a coder; but if it's not actually splitting the signal and processing separately regions like a multiband, perhaps they are using either a simple tilt or a fixed frequency emphasis-deemphasis curve that is weighting the processing into 3 basic areas (that they are presenting as "bands".)

    Just a guess, if you're not seeing any add'l latency or phase rotation.
     
  6. Sinus Well

    Sinus Well Audiosexual

    Joined:
    Jul 24, 2019
    Messages:
    2,006
    Likes Received:
    1,537
    Location:
    Sanatorium
    hmm... that would - to my knowledge - induce either phase distortion or delay. A tilt filter is just that: a filter.
     
  7. No Avenger

    No Avenger Moderator Staff Member

    Joined:
    Jul 19, 2017
    Messages:
    8,974
    Likes Received:
    6,186
    Location:
    Europe
    There's defo a band splitting in Band Split mode.
    When switched off, all freqs in Plugin Doctor have the same output. When switched on, this is no longer the case.
    Also, you can easily hear the different shaping between off and on.
     
    • Like Like x 1
    • Interesting Interesting x 1
    • Useful Useful x 1
    • List
  8. Obineg

    Obineg Platinum Record

    Joined:
    Dec 7, 2020
    Messages:
    688
    Likes Received:
    242
    inflator uses 3 bands with fixed frequencies and if the limiting and/or its gain up do hardly work, you won´t see much distortion of the phase spectrum around the split frequencies.

    i bet that that it is a 6 db butterworth (and not a bessel or something), which noticeably works on the phase spectrum when it is not symetrical, and you should see some minor effect when you try more extreme input material, so that the limiter has something to do.

    note that white noise or sinewaves not neccessarily the best test tones to find out about transfer functions - and or course not even a spike might show something, when there is no VCAs working behind the bands.
     
    Last edited: Aug 16, 2021
  9. Obineg

    Obineg Platinum Record

    Joined:
    Dec 7, 2020
    Messages:
    688
    Likes Received:
    242
    now i forgot the most important thing.

    of course you can always measure the phase spectrum of a filter even when it does not do anything, so my last sentence was nonsense.

    but the frequency dependent processing here most likely is implemented parallel, like in some EQs. so when there is no processing...
     
  10. Sinus Well

    Sinus Well Audiosexual

    Joined:
    Jul 24, 2019
    Messages:
    2,006
    Likes Received:
    1,537
    Location:
    Sanatorium
    Of course there is bandsplitting. the question is how is this implemented?
    Limiter? Which limiter? Do you mean the Clipper?
     
  11. Obineg

    Obineg Platinum Record

    Joined:
    Dec 7, 2020
    Messages:
    688
    Likes Received:
    242
    no i mean the gainup in the plug-in´s main function itself.

    if the bandsplit happens parallel, which i assume, you will only notice the change of the phase spectrum by the filters if the bandsplitted signal comes through somewhere. and the filter topology used might still be hard to track when comparing in against out :)
     
    • Interesting Interesting x 1
    • List
Loading...
Similar Threads - Sonnox Oxford Inflator Forum Date
Beat the system - Get Sonnox Oxford Inflator for free legally Mixing and Mastering Jan 5, 2022
Sonnox Oxford Dynamic EQ or Kirchhoff EQ Software May 17, 2023
Sonnox "Oxford EQ Native" ($68) "Oxford Drum Gate" ($58) "Oxford Limiter Native" ($66) Software News Dec 25, 2021
Anyone tried Sonnox Oxford Limiter v3? Software Mar 29, 2020
SONNOX OXFORD 64BIT Software Dec 24, 2017
Loading...