SynthMaker

Feedback killer

Archive · 2011 2 old posts

From the original SynthMaker forum (2004–2014), with its members’ names and dates.

abelbour ·

Hello, I´m new to synthmaker and I was wondering if it would be possible to make a Feedback Killer module using this model: http://www.clear.rice.edu/elec301/Proje ... urFSS.html. Thanks

Abel

trogluddite ·

Welcome to the forum Abelbour,

In principle, what you describe can certainly be done in SM, though the system outlined in the diagram would need changing a bit to get it to work properly - especially for musical performance, where low latency is essential. There are two main reasons for this, one theoretical, and the other SM specific.

The theoretical one is hinted at in your link - doing FFT and iFFT always incurs a delay which is at least as long as the window used to isolate a chunk of audio for analysis. For feedback detection, you want to affect the desired audio as little as possible, which means that those bandpass filters need to be incredibly accurate. When doing FFT, the accuracy of frequency detection gets better as the window size gets bigger - so there's a trade off between accuracy and latency. For detection of the feedback frequencies, this is not a problem - precisely when the feedback occurs is less important than getting the frequencies bang on - after all, you can't kill the feedback until it has already started happening. But you really want the reconstructed output signal to be delayed as little as possible - 20ms is more than enough to kill the timing of most musical performers, which would mean a lower frequency limit of 500Hz at best.

The problem in SM is kind of related - the FFT module uses the green trigger system, so it performs its analysis on a single window at the moment it is triggered by a 'green' event of your choice. However there's no way to generate the trigger events accurately so that you get a nice continuous stream of evenly spaced windows that overlap so that re-construction will work properly. Doing that is a bit of a 'Holy Grail' in SM, but no-one has succeeded yet!

That might all sound a bit negative - but still, I think you can do what you are after using a slightly different method. The bandpass filters don't have to be done as part of an FFT transformation, it could work just as well using discrete notch filters - although you would have to limit the number of filters to some arbitrary maximum. The detection process would then work like the side-chain on a compressor, and even if it reacted a little slowly in setting the filter parameters, the latency of the main audio path could remain low. I suppose a good analogy would be to see it as a kind of multi-band compressor with many (or movable) bands - or like a special form of vocoder.

This would still not be a trivial design to make, you will need to find good filter algorithms etc. - but it is within the bounds of what SM can do, and there are some very clever people here on the forum who I am sure would be glad to help you with the components needed.

Wrote something here? To have a post removed or your name hidden, write to [email protected].

Before your first post

A few rules keep this a friendly place. You agree to them once.

Shown next to what you post, here and in the app. It doesn’t have to be your real name: 3–24 lower-case letters, digits or _ (capitals become lower case, spaces become _).

    Then your post goes up straight away.

    Delete this reply?

    Open it in SynthMaker?

    It goes on the track you’re editing there, in place of that track’s sound, and into My sounds. Your other tracks stay as they are.

    Want to keep that track’s sound? Start a new song in SynthMaker first (Song › New song), then open this.

    Report this reply?

    Only the developer reads reports. The person isn’t told who reported them.

    What’s wrong with it?

    Block this person?

    You won’t see their posts and replies here any more. They aren’t told, and you can unblock them at any time.

    People you’ve blocked

    Their posts and replies are hidden from you. Unblock someone to see them again.

    The community rules

    A few rules keep this a friendly place. Everyone agrees to them once, before their first post.