Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Saturation/limiter/clipper/rectifier option #134

Open
willis936 opened this issue Dec 24, 2019 · 4 comments
Open

Saturation/limiter/clipper/rectifier option #134

willis936 opened this issue Dec 24, 2019 · 4 comments

Comments

@willis936
Copy link

Could a saturation module be added? Something like a zener limiter with controllable current (controls rolloff) would be nice. Sorry if it’s already there and I missed it.

@marcussatellite
Copy link
Contributor

marcussatellite commented Dec 24, 2019 via email

@willis936
Copy link
Author

I’m not familiar with audiokit but an okay first pass approximation would be an “if input is above limit then set output to the limit”. This is the behavior of transistor guitar amplifiers or opamp zener limiters, and is not very pleasing to listen to. A lowpass filter on the output helps. This isn’t exactly how the nice sounding analog circuits behave.

Properly simulating a zener limiter (or a tube) involves a bit of math, which I don’t have time for at the moment, but may in the next week or two.

Here is the model of a zener:
https://www.onsemi.com/pub/Collateral/AND8250-D.PDF

Zener limiters are used because they sound warm. The zener limiter circuit needs to be distilled into a simple input/output with some fixed, typical parameters. A zener limiter circuit is two zener diodes in series with opposing polarity, all in parallel with the load. The current through the zener will be dependent on the source voltage, source resistance, and load resistance.

Tubes are often liked for their sound as well. I’m not as familiar with models for these, but I’m sure they exist and will look around.
https://en.wikipedia.org/wiki/Tube_sound

@marcussatellite
Copy link
Contributor

marcussatellite commented Dec 25, 2019 via email

@willis936
Copy link
Author

I can’t see any screenshots in the github issue page. I played with the settings you mentioned. I am not 100% certain, but I think they may be dynamic range compressors rather than clippers. I was unable to use them to force clipping.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants