lmms icon indicating copy to clipboard operation
lmms copied to clipboard

Recording logarithmic automation hotfix

Open regulus79 opened this issue 1 year ago • 1 comments

When you record an automation clip with a logarithmic knob (for example, a freq knob in the equalizer) the recorded values in the automation editor are correct.....

....But, for whatever reason, lmms tries to scale the recorded values back to linear when playing the automation, which causes the recorded frequency to be much lower.

This pr does not fix the underlying issue, but instead just scales the recorded values so that everything works.

Imo, the whole automation system needs some reorganizing, but that will have to wait. Just one example of the choas caused by swithcing between scaled/unscaled values: The automation editor conflicts with itself when showing scaled parameters. The tooltip shows the scaled value, while the actual stored value which you can edit when double-clicking on a node is unscaled. But again, that's for another day.

Fixes #6954 and #6209 and maybe #6490

regulus79 avatar Dec 16 '24 20:12 regulus79

I believe this is ready to merge

regulus79 avatar May 09 '25 01:05 regulus79

The better solution would to give the automation editor a logarithmic Y axis when working with logarithmic models (possibly even an letting the user choose linear/log when drawing) and updating the draw code in AutomationClipView the same way. And then we'd need to do a update routine for older files...

But until then let's merge this.

allejok96 avatar Jul 04 '25 15:07 allejok96

Why isn't this merged yet?

I can't merge it until someone with write access approves.

regulus79 avatar Jul 04 '25 15:07 regulus79

Pretty sure you have write access @allejok96? I haven't been able to test this, but if it fixed the issue it should be fine for now.

sakertooth avatar Jul 04 '25 15:07 sakertooth

Oh wait you aren't a member? Hm..

sakertooth avatar Jul 04 '25 15:07 sakertooth

@bratpeki can you help quickly test this for me? The PR code wise is fine, it isn't too invasive, but testing it never hurts. I think the TODO comment also explains the situation quite well.

sakertooth avatar Jul 04 '25 15:07 sakertooth