Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This is a rework of softclip functionality. I've been playing with it for a while and figured how to better organize it and make it nicer and (hopefully) less confusing/annoying.
This should go after #171
Changes
Some things got a little dirty, I don't know how to make it any better at this point, so feedback is welcome! Also there's some weirdness with formatting, not sure what's going on
Reasoning
Mainly there are three things that feel confusing/clunky:
These changes should address all of these issues:
Signal flow explanations
Pre-gain (boost/cut)
→Saturation
→Auto-gain (boost)
→Hard clip
→Master (cut)
This shouldn't affect old projects too much, only pre-gain will be reset to 100, which doesn't seem too bad.
Pre-gain is previous master, can cut or boost volume and does so across all 8 tracks; it'll be reset to 100 for old projects because of the internal name changes.
Saturation is the same control as before, I decided to rename it because it looked better this way :-)
Auto-gain is a switch for gain compensation algorithm, which was hidden before.
By default Auto-gain is set to normal, so there's no gain added when switching between saturation modes -- this should be generally a safer volume-wise and easier to A/B between modes. Another value, boosted, is the current behaviour.
Auto-gain control goes after Saturation control and shifted to the right, so when scrolling down normally Auto-gain control never gets active. That makes it difficult to accidentally change Auto-gain, it has to be an intentional change, which seems good because it could result in a sudden volume jump.
Hard clip is always on -- it can be used as effect when Saturation is Bypass/Subtle/Medium. When using Heavy/Insane samples should never exceed -1/1, there should be no hard clipping even if auto-gain is set to boosted.
Master is a cut-only volume fader. It is meant to be used to balance tracks against each other for playing live, etc. Because of this it goes after hard clip, so the sound of the track doesn't change (when it was hard clipped for effect). It uses x^4 curve, which feels more natural than linear, and it can go down to 0, which allows it to be used a a simple fade-in/fade-out control. 100 is unity gain as before.
Looking forward to hear your thoughts!