Polyphase allpasses update

Options
2

Comments

  • Laureano Lopez
    Laureano Lopez Member Posts: 102 Advisor
    edited February 2022
    Options

    since you talk about bulding your oversampling library more or less for the purpose of level detection, does that mean you'd recommend the using the newer quasi-linear phase filters to this end?

    (It works now!)

    Yes. The other ones have more reduction, but they move high frequencies forward too much, so transients are smeared and the height of peaks is lessened.

    the updated one just looks more or less like a regular integrator

    It is. It's a simple crossfade between the input and the previous output, y = g*(x-y/z)+y/z = g*x+(1-g)*y/z. Vadim's book calls this a "naive" lowpass. If you apply the bilinear transform in reverse, it's like adding a lowpass with a scaled highpass, thus it doesn't reach 0 at Nyquist. I'm still using a zdf lowpass for attack:

    y = g*(x-s/z)+s/z and s = g*(x-s/z)+y, then y = g*(x+x/z)+(1-2g)*y/z. So in addition to the current input and the previous output, it also involves the previous input. That's the problem here:

    When a peak comes, the output is set to x, but s is set to x+g*(x-s/z). That s/z is leaking previous values into the future. That's not right -a peak should erase history, so s should be set to something that doesn't depend on the past. If we solve to get an exponential impulse response, the value happens to be x*(2+1/(g-1)). So

    This is too complicated, I don't think it's worth the hassle, and I'm not even sure it's right. It has the effect of raising the top end, which is the opposite of the expected. Thing is, this is not an LTI system, so we can't use LTI analysis to predict the response in frequency. Using a naive lowpass gives the desired impulse response, and doesn't seem to harm the response in frequency more than this. Then the attack filter is an LTI system, so we can make it zdf to get 0 at Nyquist.

  • Studiowaves
    Studiowaves Member Posts: 453 Advisor
    Options

    Lol, got your curiosity up huh. In reality side chaining is like giving priority to a certain instrument or vocal. When used with compressors the vocal part that normally gets masked by the music improves when the music gets turned down by the vocal part. That's a side chain; it typically takes the rms level of the vocal and uses it in a reverse manner to turn down the music. The music come back up when the vocals aren't going. It's generally used for constant energy mixes. It was a common thing to use for a radio announcer during a ball game. They had the crowd cranked up and the radio announcers voice temporarily turned it down while speaking. Pretty simple stuff, aha, mystery solved. lol We got a lot of snow here in St. Louis, you coping ok with the cold? It's the dead of winter right now and Laureano is laying out in the sunshine. lol I'm jealous.

  • ANDREW221231
    ANDREW221231 Member Posts: 299 Advisor
    Options


    Thing is, this is not an LTI system

    is that by nature of its function as the decay phase? or just by nature of trying to make the decay phase ZDF? i think i understood most of that, had to chew on it for a few days. think i even catch a few edits and clarifications in there lol.


    is using the previous input something common to all ZDF filters?

  • Laureano Lopez
    Laureano Lopez Member Posts: 102 Advisor
    edited February 2022
    Options

    is that by nature of its function as the decay phase?

    That. The jumps at peaks make the system nonlinear: the peak envelope of a sum is not necessarily the sum of the separate peak envelopes. This means we cannot describe the filter as having a fixed frequency response, like, x dB down at each frequency for any input. There's probably some way to describe it, but not the usual, LTI way. In any case, the main feature of the release phase is a certain response in time, an exponential decay. Because this filter in particular doesn't produce purely exponential sections (the output is continuously mixed with the input), I could care a bit about its frequency response, but as it resists analysis (?) and the zdf version doesn't seem to help with the top end, it makes more sense to use a simple crossfade.

    btw, I revised the release coefficient formula and replaced the file here, didn't want to make more noise about it 😁

    is using the previous input something common to all ZDF filters?

    Not sure, but I don't think so. I mean, zero-delay feedback is a way to describe an implementation of a digital filter converted from an analog model using the bilinear transform (which turns integration into summation using the trapezoidal rule, hence aka trapezoidal integration), as compared to other, "naive" implementations which are just wrong. So I guess it depends on the analog model -there may be filters for which the coeff of x[-1] is zero.

  • ANDREW221231
    ANDREW221231 Member Posts: 299 Advisor
    Options

    btw, I revised the release coefficient formula and replaced the file here, didn't want to make more noise about it 😁

    its too bad they got rid of edit receipts and download counters!! italics and bold type are also missed


    ok, i just have one more question: how did you know how to know that envelope counters need to be decoupled like that in the first place? πŸ€”

  • Laureano Lopez
    Laureano Lopez Member Posts: 102 Advisor
    edited February 2022
    Options

    I think italics (with single asterisks) and bold (with double) still work.

    how did you know how to know that envelope counters need to be decoupled like that in the first place?

    Well, I wouldn't say they need to be, given how many compressors use a coupled arrangement. I just tried all the versions proposed in the Giannoulis paper. The core envelope follower is what they call a branching, level-corrected, release-to-signal detector (formula 16). It's not the most basic one, that would be (12). I found that all branching forms scale the whole signal -like, their release trajectories are entirely below the actual signal envelope, not just locally at peaks. Here yellow is average (50 ms), red is 1/50, green 10/50, magenta 30/50.

    The branching ones are like intermediate steps from pure peak (zero attack) to pure average (attack = release). The decoupled ones keep the decay level, they just progressively smooth the peaks. None of them is "wrong", but I think the decoupled ones do more proper envelope extraction.

  • ANDREW221231
    ANDREW221231 Member Posts: 299 Advisor
    Options

    Well, I wouldn't say they need to be

    i would. or at least should

    I think italics (with single asterisks) and bold (with double) still work.

    huh. looks like i was mistaken about edit receipts too. guess that puts us at about 98% functionality


    btw, off topic but did you see this post? https://community.native-instruments.com/discussion/comment/6755#Comment_6755

    this guy took impulse responses with reaktors native oversampling, and it appears it has a linear phase impulse response, but the resulting phase response is not linear. i have no idea how that's even possible???

  • Laureano Lopez
    Laureano Lopez Member Posts: 102 Advisor
    Options

    tbh, I don't feel quite at home with this thing, I've been using Discourse in other places for some time and it's been much more usable. I also don't like that they've completely removed the possibility of deleting comments -some days ago I commented, then realized I misunderstood the whole thing, then found out I couldn't delete it, then replaced it with ten dots to fill the minimum length requirement -.-

  • ANDREW221231
    ANDREW221231 Member Posts: 299 Advisor
    Options

    truuuuu, not being able to delete comments is pretty annoying. when i needed a comment gone i went with the classic 'ignore me' to satisfy the length requirement. i miss the 'reason for deletion' prompt too, would always put something snarky in there haha


    what places use this Discourse? i never heard of it. thought you might have meant Discord, which, speaking of.. have you been to the reaktor community discord? it makes this place look like camelot cause its a total free for all, but there is some action over there, more like a back alley continuation of some of the discussion here

  • Laureano Lopez
    Laureano Lopez Member Posts: 102 Advisor
    Options

    what places use this Discourse?

    The JUCE forum, the SuperCollider forum, the Csound forum, for example.

    thought you might have meant Discord, which, speaking of.. have you been to the reaktor community discord?

    I'm a bit reticent with Discord because I have a number of gamers around, and it tends to be like let's be all together at the bar all day (?). I may give up eventually though 😁

  • colB
    colB Member Posts: 823 Guru
    Options

    Seems that this forum tech is designed with mobile devices in mind, where long posts and multiple nested quotes are problematic. But I tend to do my Reaktor discussion on the PC where I can run Reaktor. Really don't like doing in depth stuff on a smartphone. Maybe it makes sense in the context of some other NI forums, but for Reaktor it seems... meh

    It's very slow too

  • ANDREW221231
    ANDREW221231 Member Posts: 299 Advisor
    Options

    I'm a bit reticent with Discord

    its not good, there are 4 discussion areas which are basically a free for all, so if you want to have a focused discussion, well... good luck. i didn't log in since months, until i saw you mention discourse and was reminded of its existence


    Seems that this forum tech is designed with mobile devices in mind

    i haven't logged on here except for on desktop. there was discussion on the old forum about how it would be better here for mobile, but i can't imagine how it would be and definitely don't intend to find out. like you said it misses point


    also, i'm making a habit of always using the quote function for every reply , because it seems without that the default setting is to not give a notification for every new reply on a thread?? not terrible, but not ideal

  • colB
    colB Member Posts: 823 Guru
    Options

    also, i'm making a habit of always using the quote function for every reply , because it seems without that the default setting is to not give a notification for every new reply on a thread?? not terrible, but not ideal

    Heh, makes sense. Maybe when NI notice that everything is getting quoted twice, bumping up the traffic, and do something about it... or...

  • Laureano Lopez
    Laureano Lopez Member Posts: 102 Advisor
    edited February 2022
    Options

    Seems that this forum tech is designed with mobile devices in mind

    It's probably better on mobile than the old forum, but Discourse forums are good on mobile too. They're also rather slow, mainly because they have this Facebook-like infinite scrolling thing, but they're more... I don't know, usable. Like, here we can't make partial mentions, the "quote" thing doesn't count as a mention and doesn't keep a reference to the original comment. You load a file here, and there's no handle to it. If you want to replace it, you have to delete it with backspace. There are no options for the size of images. Notifications don't go away after you see them, you have to actually click them. It's all kind of... bare.

  • ANDREW221231
    ANDREW221231 Member Posts: 299 Advisor
    Options

    and do something about it... or...

    if they even can. i saw in a new forum discussion thread that rehauling the quote system to be more like the old forum is actually not possible


    It's all kind of... bare.

    agreed. it also makes the saving of my favorite emoji from the old forum less potent, that i can't use it inline with text! now im feeling the mild stink i raised in the thread announcing the move was not unjustified. everything works, and i guess it'll do, but this new 'slicked down' user experience coming at the expense of a non inconsequential amount of functionality is, again, not ideal


Back To Top