 |
|
|
11-16-2022, 07:13 AM
|
#1
|
Human being with feelings
Join Date: Dec 2012
Posts: 13,320
|
v6.70+dev1116 - November 16 2022
v6.70+dev1116 - November 16 2022
- * Includes feature branch: razor edits on master track envelopes
- * Includes feature branch: selected media item appearance changes
- * Includes feature branch: track grouping manager dialog
- * Includes feature branch: CLAP plugin support
- * Includes feature branch: track media/razor edit grouping
- * Includes feature branch: improve experimental silent-track CPU reduction option to include FX tail length
- * Includes feature branch: media item fixed lanes
- * Includes feature branch: internal pin management overhaul for future extension
- + JSFX: support log-scaled sliders for controls, specify :log or :log=offset after step size
- + Localization: support localizing layout category names [p=2599980]
- + Localization: support localizing wiring diagram labels [p=2599980]
- + Localization: support longer action names in action dialog/custom actions editor
- + Media items: arrange overlapping items by the order the items were added to the track [p=2613674]
- + Metadata: fix possible mislabeling of generic metadata in source properties dialog and media explorer
- + Render: support rendering BW64 files
- + WAV: support importing BW64 files (ADM metadata is ignored)
- # ReaScript: change get_action_context() runcontext to contextstr
- # ReaScript: mark FX dirty when using TrackFX_GetNamedConfigParm param.X etc [t=272617]
- # ReaScript: update get_action_context lua docs
This thread is for pre-release features discussion. Use the Feature Requests forum for other requests.
Changelog - Pre-Releases
Generated by X-Raym's REAPER ChangeLog to BBCode
|
|
|
11-16-2022, 07:17 AM
|
#2
|
Human being with feelings
Join Date: Dec 2017
Location: Sunny Siberian Islands
Posts: 784
|
Quote:
Originally Posted by vitalker
v6.70+dev1116 - November 16 2022
- + JSFX: support log-scaled sliders for controls, specify :log or :log=offset after step size
|
Very good cool! This is a very useful feature.
Last edited by cool; 11-16-2022 at 07:58 AM.
|
|
|
11-16-2022, 07:18 AM
|
#3
|
Human being with feelings
Join Date: Dec 2012
Posts: 13,320
|
Quote:
Originally Posted by cool
Very good! This is a very useful feature.
|
No, you should say "cool".
|
|
|
11-16-2022, 07:20 AM
|
#4
|
Human being with feelings
Join Date: Dec 2012
Posts: 13,320
|
Quote:
Originally Posted by vitalker
[*] # ReaScript: mark FX dirty when using TrackFX_GetNamedConfigParm param.X etc [ t=272617]
|
Shouldn't it be for TrackFX_ SetNamedConfigParm?
|
|
|
11-16-2022, 07:59 AM
|
#5
|
Human being with feelings
Join Date: Dec 2017
Location: Sunny Siberian Islands
Posts: 784
|
Quote:
Originally Posted by vitalker
No, you should say "cool". 
|
Fixed
|
|
|
11-16-2022, 11:59 AM
|
#6
|
Human being with feelings
Join Date: Sep 2019
Location: france
Posts: 2,127
|
Quote:
Originally Posted by vitalker
v6.70+dev1116 - November 16 2022[*]+ JSFX: support log-scaled sliders for controls, specify :log or :log=offset after step size
|
does this mean that it would now be possible, for example, to design a JS volume on a logarithmic scale?
|
|
|
11-16-2022, 01:32 PM
|
#7
|
Human being with feelings
Join Date: Apr 2011
Location: Germany
Posts: 1,142
|
Quote:
+ JSFX: support log-scaled sliders for controls, specify :log or :log=offset after step size
|
Haha, works great!  It would be very nice if the scaling is also applied to envelope automations and parameter modulations. Thanks!
|
|
|
11-16-2022, 01:59 PM
|
#8
|
Human being with feelings
Join Date: Sep 2019
Location: france
Posts: 2,127
|
Quote:
Originally Posted by vitalker
v6.70+dev1116 - November 16 2022[*] + Localization: support localizing layout category names [ p=2599980]
[*] + Localization: support localizing wiring diagram labels [ p=2599980]
|
I can't check until the next version...
Quote:
Originally Posted by vitalker
v6.70+dev1116 - November 16 2022[*]+ Localization: support longer action names in action dialog/custom actions editor
|
that works. thank you
|
|
|
11-16-2022, 02:30 PM
|
#9
|
Human being with feelings
Join Date: Jun 2019
Posts: 2,752
|
Quote:
Originally Posted by vitalker
[*]+ JSFX: support log-scaled sliders for controls, specify :log or :log=offset after step size
|
Amazing, thanks!
Quote:
Originally Posted by mawi
It would be very nice if the scaling is also applied to envelope automations and parameter modulations.
|
Agree, that's actually a very important point!
|
|
|
11-16-2022, 02:33 PM
|
#10
|
Human being with feelings
Join Date: Apr 2011
Location: Germany
Posts: 1,142
|
Quote:
Agree, that's actually a very important point!
|
That's right! I have still forgotten the FX parameters in the TCP and MCP. There the scaling should be taken over also.
|
|
|
11-17-2022, 03:21 AM
|
#11
|
Human being with feelings
Join Date: Jul 2008
Location: The Netherlands
Posts: 3,579
|
Quote:
- + JSFX: support log-scaled sliders for controls, specify :log or :log=offset after step size
|
Nice, but while playing with this I noticed that this way we only shift the midway point to the right, but not to the left (unless I'm missing something). Now, I couldn't quickly reverse-engineer the exact formula used here, but if you use f(x) = (exp(a*x) - 1) / (exp(a) - 1), then you can have both concave up and down curves.
Here is a little JSFX plug that demonstrates what I mean:
Code:
desc:Log scale slider test
slider1:x=0.5<0,1,0.0001>x
slider2:y1=0.5<0,1,0.0001:log>y1
slider3:y2=0.5<0,1,0.0001>y2
slider4:a=0.7<-10,10,0.0001>a
@slider
y1 = x;
y2 = a != 0 ? log((exp(a) - 1)*x + 1) / a : x;
Just move the x slider, and the y1 slider will move with :log, but y2 will move according to the value of a, where a < 0 will shift the midway point to the left, and a > 0 will shift it to the right. A value of a = 0.7 gives you more or less the same curve as :log.
|
|
|
11-17-2022, 06:06 AM
|
#12
|
Administrator
Join Date: Jan 2005
Location: NYC
Posts: 15,344
|
Quote:
Originally Posted by Tale
Nice, but while playing with this I noticed that this way we only shift the midway point to the right, but not to the left (unless I'm missing something). Now, I couldn't quickly reverse-engineer the exact formula used here, but if you use f(x) = (exp(a*x) - 1) / (exp(a) - 1), then you can have both concave up and down curves.
|
What's a use case for the other shape?
The advantage of plain log()/exp() is that when we expose these as parameters for automation, they can exist in a non-normalized range, so e.g. if you increase the range of a JSFX parameter, those values will remain mapped to the correct values. Though perhaps we can do the same for these.
Last edited by Justin; 11-17-2022 at 06:17 AM.
|
|
|
11-17-2022, 06:34 AM
|
#13
|
Human being with feelings
Join Date: Jul 2008
Location: The Netherlands
Posts: 3,579
|
Quote:
Originally Posted by Justin
What's a use case for the other shape?
|
Mostly volume sliders, e.g. if the slider goes from e.g. -60 to 0 dB, then you might want more resolution near 0 instead of -60.
Quote:
Originally Posted by Justin
The advantage of plain log()/exp() is that when we expose these as parameters for automation, they can exist in a non-normalized range, so e.g. if you increase the range of a JSFX parameter, those values will remain mapped to the correct values. Though perhaps we can do the same for these.
|
I was assuming you would convert to normalized first, then apply the curve, and then go back to non-normalized. But yeah, then extending the range could be problematic.
|
|
|
11-17-2022, 06:46 AM
|
#14
|
Administrator
Join Date: Jan 2005
Location: NYC
Posts: 15,344
|
Perhaps we should add a volume-fader scaling mode too then (since that wouldn't be a log curve anyway).
Or a fader that is 0..1, and a separate dB readout
Hmm given it is EEL, we could allow the user to specify some code to convert to/from fader/envelope scaling...
Last edited by Justin; 11-17-2022 at 07:07 AM.
|
|
|
11-17-2022, 07:51 AM
|
#15
|
Human being with feelings
Join Date: Jun 2019
Posts: 2,752
|
Quote:
Originally Posted by Justin
Perhaps we should add a volume-fader scaling mode too then (since that wouldn't be a log curve anyway).
Or a fader that is 0..1, and a separate dB readout 
|
If we could have volume faders in jsfx that behave like volume faders in the mixer (in terms of scaling/resolution and range, ideally going down to -inf/silence) that would be super awesome! Probably a ton of jsfx would get updates.
Quote:
Originally Posted by Justin
Hmm given it is EEL, we could allow the user to specify some code to convert to/from fader/envelope scaling...
|
Wouldn’t it be simpler to just automatically switch the envelope to respond the same way as the fader (whether that’s linear, logarithmic, volume mode or whatever..)? I can’t think of cases where a mismatch between fader and envelope response would be desirable.
|
|
|
11-17-2022, 08:03 AM
|
#16
|
Human being with feelings
Join Date: Sep 2019
Location: france
Posts: 2,127
|
Quote:
Originally Posted by Phazma
If we could have volume faders in jsfx that behave like volume faders in the mixer (in terms of scaling/resolution and range, ideally going down to -inf/silence) that would be super awesome! Probably a ton of jsfx would get updates.
.
|
+1
|
|
|
11-17-2022, 08:29 AM
|
#17
|
Human being with feelings
Join Date: Apr 2011
Location: Germany
Posts: 1,142
|
Quote:
If we could have volume faders in jsfx that behave like volume faders in the mixer (in terms of scaling/resolution and range, ideally going down to -inf/silence) that would be super awesome! Probably a ton of jsfx would get updates.
|
+1
Quote:
Wouldn’t it be simpler to just automatically switch the envelope to respond the same way as the fader (whether that’s linear, logarithmic, volume mode or whatever..)? I can’t think of cases where a mismatch between fader and envelope response would be desirable.
|
+1 I also think that the envelope should have the same scaling as the jsfx slider (linear, logarithmic, exponential, volume etc.). Maybe you could still define a zoom range in the envelope panel to get even more resolution in a certain scaling range.
Edit:
Also the normal included Reaper plugins (ReaComp, ReaEQ etc.) have partly non-linear sliders (attack, release, frequency etc.), which are linearly controlled in track controls, track envelopes, parameter modulations. This would also need to be adjusted.
Last edited by mawi; 11-17-2022 at 12:17 PM.
|
|
|
11-17-2022, 09:31 AM
|
#18
|
Administrator
Join Date: Jan 2005
Location: NYC
Posts: 15,344
|
hmm simple pow() scaling might be good enough for volume faders, and a lot of other controls. Going to add :log and :sqr (optionally :sqr=4 for 4th power) as separate modes, I think
|
|
|
11-17-2022, 09:39 AM
|
#19
|
Human being with feelings
Join Date: Jan 2007
Location: mcr:uk
Posts: 3,842
|
Quote:
Originally Posted by vitalker
+ JSFX: support log-scaled sliders for controls, specify :log or :log=offset after step size
|
Cool! I assume changing existing sliders to use this won't break any saved projects?
|
|
|
11-17-2022, 11:37 AM
|
#20
|
Moderator
Join Date: Aug 2007
Location: Italy
Posts: 4,302
|
Quote:
Originally Posted by mawi
Haha, works great!  It would be very nice if the scaling is also applied to envelope automations and parameter modulations. Thanks!
|
Check this out
https://forum.cockos.com/showthread.php?t=251684
- Mario
|
|
|
11-17-2022, 11:43 AM
|
#21
|
Administrator
Join Date: Jan 2005
Location: NYC
Posts: 15,344
|
Quote:
Originally Posted by IXix
Cool! I assume changing existing sliders to use this won't break any saved projects?
|
If you are modifying an existing effect, you should use :log! which will keep it linearly-exported for envelopes/etc. for new FX (or new parameters) you can use :log without the ! which will use log scaling for envelopes.
|
|
|
11-17-2022, 12:20 PM
|
#22
|
Human being with feelings
Join Date: Apr 2011
Location: Germany
Posts: 1,142
|
Quote:
Originally Posted by mabian
|
Great idea, I will check this out! Thanks!
|
|
|
11-17-2022, 08:16 PM
|
#23
|
Human being with feelings
Join Date: Oct 2013
Posts: 91
|
Quote:
Originally Posted by vitalker
v6.70+dev1116 - November 16 2022
- # ReaScript: change get_action_context() runcontext to contextstr
- # ReaScript: update get_action_context lua docs
|
Really we can get the shortcut that triggered the action now?  
|
|
|
11-18-2022, 09:10 AM
|
#24
|
Human being with feelings
Join Date: Jan 2007
Location: mcr:uk
Posts: 3,842
|
Quote:
Originally Posted by Justin
If you are modifying an existing effect, you should use :log! which will keep it linearly-exported for envelopes/etc. for new FX (or new parameters) you can use :log without the ! which will use log scaling for envelopes.
|
Thanks Justin, good to know.
|
|
|
Thread Tools |
|
Display Modes |
Linear Mode
|
Posting Rules
|
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts
HTML code is Off
|
|
|
All times are GMT -7. The time now is 02:24 AM.
|