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

Use logarithmic scale on LADSPA inputs that request it #6

Open
wants to merge 3 commits into
base: master
Choose a base branch
from

Conversation

bennigraf
Copy link

Hi raedwulf,

I'm not sure what the current state of this repo is, but you seem to be at least inofficially the maintainer of this plugin for now, so I'd like to suggest an improvement to it. I tried to use this with the parametric EQ from the CAPS collection; however, I had the problem that the frequency control was mapped linearly from 20Hz to 14kHz over 0-100%, which is not very useful, especially in the low end range. LADSPA plugins do have a way of suggesting to use a logarithmic scale for input controls, though. This PR tries to detect such inputs and then apply control values after scaling them logarithmically over the min/max range. For me, this allows way better control of i.e. the Eq4p freqency.

The code might be a bit rough since I'm not a full time C developer; let me know if you have improvements to suggest.

Best,
Benjamin.

@pyInter
Copy link

pyInter commented Jan 28, 2023

It seems the log scaling is still not applied when the bin file needs creating with the default value. See LADSPADefault() in ladspa_utils.c for details. The log hint bit of HintDescriptor should not be masked off by LADSPA_HINT_DEFAULT_MASK when judging it with LADSPA_IS_HINT_LOGARITHMIC().

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

Successfully merging this pull request may close these issues.

2 participants