-
-
Notifications
You must be signed in to change notification settings - Fork 57
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
Implementation of "hint_min_samplerate" and semi-piecewise interpolation #566
Conversation
Some quick remarks
|
Perhaps, this has to do with this method you are implementing? |
It does, yes, and it is the same premise. Basically, my method of interpolation is meant to get close to the desired sound of the imaging frequencies, while controlling the obvious aliasing that happens when said frequencies exceed the Nyquist. |
Do you mind if I extract the part about the cutoff curves in separate PRs? |
Not at all. I should've updated this pull request anyway to say that "hint_min_samplerate" was eventually dropped in my fork due to the complexity of updating with the newer commits. Feel free to borrow and refine my code for the attack/decay/release_shape opcodes as well if you wish. |
The previous removal was due to the code as such risking buffer overruns. Found an alternate way to do it: by combining multiple properly-sized buffers together into one before downsampling.
This pull request implements optional voice oversampling via the ARIA-specific opcode "hint_min_samplerate".
Also implemented a custom interpolation mode that, when combined with said oversampling, can sound convincing to alias-free piecewise interpolation. To activate this interpolation, one needs to set the "sample_quality" to 0.
Third significant change was allowing the resonance to go as low as "-3" as I felt 0 sounded a little too sudden of a cutoff to me. This much can be ommitted from the main repo if necessary.