jcsteh / osara

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

Consider remembering the last parameter (depending on context) in the OSARA Parameters dialog #1049

Open cj-neti opened 2 months ago

cj-neti commented 2 months ago

To alter or read various parameters of tracks, items or effects we can currently use: 1 Mapped keyboard shortcuts to actions- These are often not focus dependent. User has to be aware of what action to use, e.g. changing track volume vs. take volume. Additionally, this exhausts valuable key combinations. The current value of a parameter can be uncomfortably retrieved by change and undo. 2 OSARA Parameters dialog - Although context-sensitive, it does not remember the last used parameter and for effects, you always have to additionally select the effect to work with. Even so, it is the safest way to read parameter values in many cases. 3 Native REAPER dialogs - Parameters can be changed in dialogs like Media item properties or FX Window, but there are so many controls.

I propose an alternative to OSARA parameters dialog based on the rotor concept that Apple's VoiceOver uses to navigate and interact with controls. The following actions would be required: • Previous/Next parameter rotor - Selects the previous or next rotor depending on the focus. Its name and value are reported, e.g. "Take volume: +3 dB", "Track pan: Center". The rotors will be switched cyclically. • Report the current rotor value - The rotor name and parameter value are reported. • Two actions Decrease/increase the rotor value a bit - Decreases/increases the parameter value for the current rotor by a bit (1% for pan, 0.05 dB for volume, etc.). • Two actions Decrease/increase the rotor value more - Decreases/increases the parameter value for the current rotor more (10 times more than a bit, 10% for pan, 0.5 dB for volume, etc.). • Two Actions Move the rotor value up/down to the edge - Sets the parameter value for the current rotor up/down to the edge (toggles between minimum, middle and maximum).

Furthermore, the behavior should be set as follows: • Each context (track, item, envelope point, effect) should remember the last rotor used. • It should be possible to change the parameters of multiple tracks, takes or envelope points at once. Then report of the parameter value should contain information about number of other objects. The parameter value is only reported for the first one, e.g. "Take volume: +3 dB and 4 more takes". • It would be useful if the rotor operations were also communicated visually in proper way, e.g. by the reaper.Help_Set() function. I can't judge this somehow. • It's up for consideration whether there should be an option to specify the parameter value directly as the OSARA parameters dialog does. It is also up for consideration whether there should be an option to filter the rotor menu by the text entered as the OSARA parameters dialog does. Both functions should be able to serve with minimal overhead - pressing the action shortcut, entering the value/filter and confirming with Enter.

If functions for parameter value entry and rotor filtering would not be accepted, the OSARA parameters dialog should be changed as follows: • The default control focused in the dialog should be value field. • The parameter selectbox and its filtering field should remember their value even after closing and reopening, and specifically for each context - track, item, envelope point, effect.

Tracks and items should have a list of rotors as now. But in addition, rotors would be added to the following objects: • Envelope point - Value, shape, curve • Fade in, fade out - Length, shape, curve (only if a logical focus for items would be introduced) • Crossfade - Length, shape, curve (only if a logical focus for items was introduced) • Effect - Param1, param2, param3, etc.

ScottChesworth commented 2 months ago

the OSARA parameters dialog should be changed as follows: The default control focused in the dialog should be value field.

Why?

cj-neti commented 2 months ago

the OSARA parameters dialog should be changed as follows: The default control focused in the dialog should be value field.

Why?

Because, as I observe my work flow, I alter the same parameter more times on the same item or on different items. Now I must select the same parameter again after opening the dialog.

8. 4. 2024 v 23:12, ScottChesworth @.***>:

the OSARA parameters dialog should be changed as follows: The default control focused in the dialog should be value field.

Why?

— Reply to this email directly, view it on GitHub https://github.com/jcsteh/osara/issues/1049#issuecomment-2043650188, or unsubscribe https://github.com/notifications/unsubscribe-auth/BHPXCMT5YEH35F7MK6UGH63Y4MB5DAVCNFSM6AAAAABF5MKOXOVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDANBTGY2TAMJYHA. You are receiving this because you authored the thread.

Timtam commented 2 months ago

Although sounding nice, this sounds more like a reason to question your workflow instead of OSARA. I can see the situation that you want to alter the same kind of parameter on multiple independent items, but several times on the same item usually shouldn't happen too often. You know that you can preview within the parameter dialog by pressing Ctrl + Space right? That should allow you to preview without having to leave the parameter dialog at all.

cj-neti commented 2 months ago

You know that you can preview within the parameter dialog by pressing Ctrl + Space right? Yes, I Do, but after preview, I want to press Space to stop and resume position. For me on MacOS, it works only at slider control. Moreover, OSARA reports „Play/stop“ although I’ve disabled reporting transport states.

9. 4. 2024 v 11:00, Toni Barth @.***>:

Although sounding nice, this sounds more like a reason to question your workflow instead of OSARA. I can see the situation that you want to alter the same kind of parameter on multiple independent items, but several times on the same item usually shouldn't happen too often. You know that you can preview within the parameter dialog by pressing Ctrl + Space right? That should allow you to preview without having to leave the parameter dialog at all.

— Reply to this email directly, view it on GitHub https://github.com/jcsteh/osara/issues/1049#issuecomment-2044494003, or unsubscribe https://github.com/notifications/unsubscribe-auth/BHPXCMTBNMZRKNRFPXNBMU3Y4OUZDAVCNFSM6AAAAABF5MKOXOVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDANBUGQ4TIMBQGM. You are receiving this because you authored the thread.

ranetto commented 2 months ago

Good morning, I don't agree, the Osara parameters window in my opinion is fine as it is, also because many of the parameters of the various effects and plugins, being inside a list, can be recalled with a letter when they are labeled well and they can also be renamed from the default properties to have them as we would like them. I add to this that some parameters can be inserted in the main track list. What I would find very convenient, as I have already written several times, is to be able to choose, as happens in the reaper actions window, whether to memorize the last searched parameter, so when you open the parameters window for example on a release or on a frequency of filter, you could find it already with only that filtered parameter appearing. In this regard, I would also like it if instead in the track parameters window, it was possible to exclude the numbers belonging to the track sends in accordance with what was chosen in the osara options which are used to say the track number. I usually find that track numbers are only useful on occasion, but normally they are a thing of the past, from when sequencers had 16 or 24 tracks. Today where we can have hundreds of tracks, their numbers make no sense. If they could be removed from the creation of sends and also from the display of parameters, I could call the track to which I want to send a send with its initial and this would speed up the workflow. I don't think the adoption of a rotor is practical and convenient when the parameters become tens or hundreds, as in the case of having many sends or many effect parameters, it would become a very inconvenient thing which would have the only advantage of already finding ourselves on the parameter with which we want interact, which can be achieved simply by storing the last search phrase in the filter like reaper does in the action list.

pitermach commented 2 months ago

I think the Properties Ribbon script might be able to do some of what you want after you set up the actions. Full disclosure I haven't yet tried this myself but keep meaning to look at it, but from the documentation it should allow you to control the properties of most things including FX parameters with global rotor-like hotkeys.

jcsteh commented 1 month ago

Thanks for your feedback.

Switching to a completely different interface is not going to happen. As suggested, you could try the Properties Ribbon script if you want that, but it isn't going to happen in OSARA itself.

I'm leaving this open to cover the suggestion to remember the last parameter. I'm not saying for certain it will be implemented - that needs to be discussed - but it is something we might consider, whereas switching to a completely different interface is not.