jcsteh / osara

OSARA: Open Source Accessibility for the REAPER Application
GNU General Public License v2.0
128 stars 46 forks source link

Typed values in FX parameter list not being honored #757

Closed ptorpey closed 2 years ago

ptorpey commented 2 years ago

Problem: Fractional values entered into FX parameter list are being rounded to the nearest integer. Steps to reproduce:

  1. I have the JS Volume Adjust FX on a track
  2. I bring up the parameter list by hitting “P”
  3. In the edit field for the Volume (first parameter in the list), I enter 6.2.
  4. If I then shift tab to the slider for the volume the parameter shows as 6.0. Alternately if I change the value in the edit field to 6.2 and hit enter, I will see that the Volume has switched back to 6.0
  5. If I try the experiment by typing 6.8 into the edit field, the Volume parameter changes to 7.0. Thus it seems like the value is being rounded to the nearest integer.
  6. Also, changing the slider value for the Volume parameter only changes the value by integral values. Thus I can change it to 6, 7, 8, etc. but not to, for example, 6.5.
  7. As a final note, if I get into the FX dialog by hitting “F”, I can change the Volume parameter to anything I want by using either the slider or entering a value into the edit field. Is Osara somehow rounding these values in the Osara parameter list?

Summary: It is possible to enter any desired parameter value from within the FX dialog, but when parameter values are entered via Osara's parameter list on a track, they are rounded to the nearest integer.

Tested with JAWS as well as NVDA. I noticed this issue with Reaper 6.57 and don't think this was a problem in earlier versions.

Running Osara build: osara_2022.1pre-961,04fb6f9c.exe

--Pete

ScottChesworth commented 2 years ago

I have a portable Reaper 6.55 here and can reproduce it. Don't think this is a recent Reaper change, hence I sent Pete here.

jcsteh commented 2 years ago

This appears to be something in REAPER specific to JSFX. It reports the step size is 1.0, which is why the slider moves by 1.0. Furthermore, trying to set the value to anything else using the API just rounds the value. There is nothing OSARA can do to fix this.

ptorpey commented 2 years ago

Could this possibly have been due to a recent change in how Osara is interacting with the parameters dialog? I thought I saw a thread here not too long ago about some UI modifications being made to the parameters dialog.

I seem to think that I was able to enter any value into the parameter’s edit box some time ago and thought that the this apparently new behavior might be a change in Reaper, but it could also have been that I was using an older build of Osara. Of course, it could also be that my recollection is wrong.

Also, as I indicated, one is able to enter any value using the edit box in the FX dialog, so I’m surprised that Osara can’t grab that.

--Pete

From: James Teh @.> Sent: Sunday, May 15, 2022 3:51 PM To: jcsteh/osara @.> Cc: ptorpey @.>; Author @.> Subject: Re: [jcsteh/osara] Typed values in FX parameter list not being honored (Issue #757)

This appears to be something in REAPER specific to JSFX. It reports the step size is 1.0, which is why the slider moves by 1.0. Furthermore, trying to set the value to anything else using the API just rounds the value. There is nothing OSARA can do to fix this.

— Reply to this email directly, view it on GitHub https://github.com/jcsteh/osara/issues/757#issuecomment-1127055004 , or unsubscribe https://github.com/notifications/unsubscribe-auth/ADEPTJOC2UTJTYYL4YCG3ULVKFWS7ANCNFSM5V7QKFSA . You are receiving this because you authored the thread. https://github.com/notifications/beacon/ADEPTJMGJQ5YR6Q5Y6CK2C3VKFWS7A5CNFSM5V7QKFSKYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOIMWX5HA.gif Message ID: @. @.> >

jcsteh commented 2 years ago

I don't think so. Also, I just went back to an OSARA commit from June 2021 and still saw the same behaviour.

OSARA does seem to be able to read parameter values between whole numbers. For example, fi you set 6.5 in the FX chain dialog and then open the Parameters dialog, OSARA reports 6.5. It's only when you try to set the value that things fail. I guess the API setting function doesn't allow this for some reason.

ptorpey commented 2 years ago

Yes, Osara does properly read fractional values that were entered via the edit field in the FX dialog. Just strange that one can’t put in a fractional value into Osara’s edit field and have it stick.

Thanks for checking with an old version of Osara. I didn’t know how to grab that and don’t save many versions back on my system.

Fortunately not the end of the world, just surprising.

I was looking for other FX where the parameter in the edit field showed “real” values (as opposed to the strange internal values) to test further, but couldn’t come up with any quickly. Just curious how ubiquitous this behavior is.

--Pete

ScottChesworth commented 2 years ago

trying to set the value to anything else using the API just rounds the value.

I'll take that to Cockos.

jcsteh commented 2 years ago

FWIW, I suspect the API setter rounds the value to the step size reported via the API. If that's correct, the question is why the API reports the step size as 1.0.

ScottChesworth commented 2 years ago

Justin says step size is configured per js plug-in. He's happy to reduce the step size of this one to 0.1, and in the interim, the newer volume pan smoother already has a step size of 0.1.

ptorpey commented 2 years ago

Good going Scott, and thanks to Justin.

--Pete

ptorpey commented 2 years ago

Looks like Justin fixed this issue in the latest build of Reaper. Unfortunately 6.58 didn’t seem to scan my plug-ins properly and a number of plug-ins that I use weren’t picked up. So I reverted to 6.57. I’m hopefully that will be fixed before official release of 6.58!

--Pete