Old 11-11-2022, 01:53 PM   #1
bolgwrad
Human being with feelings
 
bolgwrad's Avatar
 
Join Date: Mar 2011
Location: On my arse in Glasgow, Scotland
Posts: 2,033
Default v6.69+dev1111 - November 11 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
+ API: get_action_context() returns more inforamtion when called via KBD_OnMainActionEx
+ API: hooks get processed for actions that are executed via WM_COMMAND or KBD_OnMainActionEx
+ CLAP: support "cockos.reaper_extension", which returns a reaper_plugin_info_t structure (see reaper_plugin.h)
+ JSFX: get_slider/set_slider now no-op and return 0
+ JSFX: per-sample performance optimizations
+ JSFX: reduce excess calls to @slider when automating parameters
+ JSFX: remove restriction of parameter name lengths
+ JSFX: support up to 256 sliders
+ ReaScript: add additional type information to get_action_context
+ Render: avoid creating paths for rendered files when dry-run rendering [t=272323]
# API: tweak/document return values for SetTrackUI*
# Fixed lanes: recalculate lanes when moving items up/down via action [p=2610888]
# Video: improve clear cache/re-render frames action leaving stale frames rendered during call

Full Changelog - Pre-Releases - Feature Requests - Generated by WhatsNew2
__________________
www.sachetsofrelish.com
bolgwrad is offline   Reply With Quote
Old 11-11-2022, 02:02 PM   #2
Edgemeal
Human being with feelings
 
Edgemeal's Avatar
 
Join Date: Apr 2016
Location: ASU`ogacihC
Posts: 3,913
Default

Quote:
+ ReaScript: add additional type information to get_action_context
In documentation Lua is missing info about new runcontext param.
Edgemeal is offline   Reply With Quote
Old 11-11-2022, 02:11 PM   #3
Zeno
Human being with feelings
 
Zeno's Avatar
 
Join Date: Sep 2018
Location: HH
Posts: 916
Default

Quote:
Originally Posted by bolgwrad View Post
+ JSFX: support up to 256 sliders
Zeno is offline   Reply With Quote
Old 11-11-2022, 02:13 PM   #4
Kabraxis
Human being with feelings
 
Kabraxis's Avatar
 
Join Date: Feb 2015
Location: Turkey
Posts: 200
Default

Quote:
Originally Posted by bolgwrad View Post
+ CLAP: support "cockos.reaper_extension", which returns a reaper_plugin_info_t structure (see reaper_plugin.h)
:thinkingface:
Kabraxis is offline   Reply With Quote
Old 11-12-2022, 12:14 AM   #5
mschnell
Human being with feelings
 
mschnell's Avatar
 
Join Date: Jun 2013
Location: Krefeld, Germany
Posts: 14,688
Default

Quote:
Originally Posted by bolgwrad View Post
+ ReaScript: add additional type information to get_action_context
I never was able to get parameter values of OSC messages from get_action_context, and never found out if this because I did something wrong or if it's not supported. Is this such a "type" ?

-Michael
mschnell is offline   Reply With Quote
Old 11-12-2022, 02:51 AM   #6
Kabraxis
Human being with feelings
 
Kabraxis's Avatar
 
Join Date: Feb 2015
Location: Turkey
Posts: 200
Default

Quote:
Originally Posted by mschnell View Post
I never was able to get parameter values of OSC messages from get_action_context, and never found out if this because I did something wrong or if it's not supported. Is this such a "type" ?

-Michael

How come? get_action_context() returns more than one results. Try this (LUA),
Code:
_, _, _, _, _, _, val = reaper.get_action_context()
Kabraxis is offline   Reply With Quote
Old 11-12-2022, 06:14 AM   #7
Justin
Administrator
 
Justin's Avatar
 
Join Date: Jan 2005
Location: NYC
Posts: 15,721
Default

Quote:
Originally Posted by mschnell View Post
I never was able to get parameter values of OSC messages from get_action_context, and never found out if this because I did something wrong or if it's not supported. Is this such a "type" ?

-Michael
Yeah, this was broken and should be fixed now!
Justin is offline   Reply With Quote
Old 11-12-2022, 08:57 AM   #8
Phazma
Human being with feelings
 
Join Date: Jun 2019
Posts: 2,872
Default

Nice to see JSFX sliders getting some updates!

I don't have a lot of experience programming JSFX but I remember what frustrated me was mapping a slider to a filter cutoff frequency (20Hz-20000KHz) and getting usable control. I am wondering, would it be possible to add functionality that allows sliders to be set to logarithmic or exponential response instead of linear? That would help a lot for these types of application.

Also a solution that makes it possible for sliders to go to -inf (for controlling volume) would be very useful.

Thanks and sorry if too off-topic.. but maybe now was the right moment to request it
Phazma is offline   Reply With Quote
Old 11-12-2022, 09:09 AM   #9
mawi
Human being with feelings
 
Join Date: Apr 2011
Location: Germany
Posts: 1,185
Default

Quote:
Originally Posted by Phazma View Post
Nice to see JSFX sliders getting some updates!

I don't have a lot of experience programming JSFX but I remember what frustrated me was mapping a slider to a filter cutoff frequency (20Hz-20000KHz) and getting usable control. I am wondering, would it be possible to add functionality that allows sliders to be set to logarithmic or exponential response instead of linear? That would help a lot for these types of application.

Also a solution that makes it possible for sliders to go to -inf (for controlling volume) would be very useful.

Thanks and sorry if too off-topic.. but maybe now was the right moment to request it
+1
mawi is offline   Reply With Quote
Old 11-12-2022, 09:53 AM   #10
mschnell
Human being with feelings
 
mschnell's Avatar
 
Join Date: Jun 2013
Location: Krefeld, Germany
Posts: 14,688
Default

Quote:
Originally Posted by Justin View Post
Yeah, this was broken and should be fixed now!
Great !
-Michael
mschnell is offline   Reply With Quote
Old 11-12-2022, 11:21 AM   #11
AZpercussion
Human being with feelings
 
Join Date: Oct 2019
Location: Moscow / Tbilisi
Posts: 909
Default

Quote:
Originally Posted by Phazma View Post
Nice to see JSFX sliders getting some updates!

I don't have a lot of experience programming JSFX but I remember what frustrated me was mapping a slider to a filter cutoff frequency (20Hz-20000KHz) and getting usable control. I am wondering, would it be possible to add functionality that allows sliders to be set to logarithmic or exponential response instead of linear? That would help a lot for these types of application.

Also a solution that makes it possible for sliders to go to -inf (for controlling volume) would be very useful.

Thanks and sorry if too off-topic.. but maybe now was the right moment to request it
Yeah! Would be nice)
AZpercussion is online now   Reply With Quote
Old 11-12-2022, 12:10 PM   #12
Reaktor:[Dave]
Human being with feelings
 
Reaktor:[Dave]'s Avatar
 
Join Date: Jun 2010
Location: Berlin
Posts: 563
Default

Quote:
Originally Posted by bolgwrad View Post
+ CLAP: support "cockos.reaper_extension", which returns a reaper_plugin_info_t structure (see reaper_plugin.h)
Thanks a lot for implementing this, it's working great over here!

Is there a way to set a CLAP plugin's state via the ReaScript API?
Reaktor:[Dave] is offline   Reply With Quote
Old 11-12-2022, 02:59 PM   #13
Reaktor:[Dave]
Human being with feelings
 
Reaktor:[Dave]'s Avatar
 
Join Date: Jun 2010
Location: Berlin
Posts: 563
Default

Maybe setting the state of a CLAP plugin is possible via "TrackFX_SetNamedConfigParm(MediaTrack* track, int fx, const char* parmname, const char* value)"? The docs say:
Quote:
vst_chunk[_program] : base64-encoded VST-specific chunk.

I tried:
Code:
bool result = TrackFX_SetNamedConfigParm(trackid, fxIndex, "vst_chunk[No preset]", "MyState");
bool result = TrackFX_SetNamedConfigParm(trackid, fxIndex, "vst_chunk[_program]", "MyState");
bool result = TrackFX_SetNamedConfigParm(trackid, fxIndex, "vst_chunk", "MyState");
... but none of these returned true. Is there something I missed or has it simply not yet been implemented for CLAP plugins?
Reaktor:[Dave] is offline   Reply With Quote
Old 11-12-2022, 07:32 PM   #14
Justin
Administrator
 
Justin's Avatar
 
Join Date: Jan 2005
Location: NYC
Posts: 15,721
Default

We may add that eventually but it would be with a clap_state or something
Justin is offline   Reply With Quote
Old 11-13-2022, 12:15 AM   #15
mschnell
Human being with feelings
 
mschnell's Avatar
 
Join Date: Jun 2013
Location: Krefeld, Germany
Posts: 14,688
Default

Quote:
Originally Posted by Justin View Post
Yeah, this was broken and should be fixed now!
(Action Context fix)
Does this affect as well scripts as the C++ API ?

-Michael

Last edited by mschnell; 11-13-2022 at 04:04 AM.
mschnell is offline   Reply With Quote
Old 11-13-2022, 03:18 PM   #16
X-Raym
Human being with feelings
 
X-Raym's Avatar
 
Join Date: Apr 2013
Location: France
Posts: 9,875
Default

Quote:
# Video: improve clear cache/re-render frames action leaving stale frames rendered during call

I confirm this works ! Many thx ! This open possibilities for sure.


--

Though this reveals a refresh issue while moving edit cursor with playstate = stop.






Sometimes just moving the edit cursor make one wrong image flashing on video window before refreshing on the correct one.



I left the text processor so that you can see the timing, but it happens without this text processor and any background script, and even in previous REAPER versions.


Win 10 x64, decoder vlc. tested on various video codec.
X-Raym is offline   Reply With Quote
Old 11-13-2022, 03:32 PM   #17
tack
Human being with feelings
 
tack's Avatar
 
Join Date: Jan 2014
Location: Ontario, Canada
Posts: 1,619
Default

Quote:
Originally Posted by bolgwrad View Post
+ API: get_action_context() returns more inforamtion when called via KBD_OnMainActionEx
This sounds great!

Now if only get_action_context() also returned information about the MIDI event that triggered it (if applicable).

(See https://forums.cockos.com/showthread.php?t=214846 for more details and use case.)

But I'll take any improvement on get_action_context() that can help improve the reusability of scripts in different contexts.
tack is offline   Reply With Quote
Old 11-14-2022, 05:51 AM   #18
Meo-Ada Mespotine
Human being with feelings
 
Meo-Ada Mespotine's Avatar
 
Join Date: May 2017
Location: Leipzig
Posts: 6,621
Default

Hmm, I think that the new runcontext-retval should also differentiate between keyboard AND mousewheel and maybe even gestures.
Mousewheel and keyboard are very different things, imho with one having just one state(keyboard) while the other one being multiple states(mousewheel)

So differentiating between them gives a good indicator, if I should read the value of the mousewheel as well or print a message "sorry, this script is mousewheel only..."

Edit: and maybe it should include flags for modifiers....
__________________
Use you/she/her.Ultraschall-Api Lua Api4Reaper - Donate, if you wish

On vacation for the time being...
Meo-Ada Mespotine is offline   Reply With Quote
Old 11-14-2022, 09:12 AM   #19
Justin
Administrator
 
Justin's Avatar
 
Join Date: Jan 2005
Location: NYC
Posts: 15,721
Default

Quote:
Originally Posted by Meo-Ada Mespotine View Post
Hmm, I think that the new runcontext-retval should also differentiate between keyboard AND mousewheel and maybe even gestures.
Mousewheel and keyboard are very different things, imho with one having just one state(keyboard) while the other one being multiple states(mousewheel)

So differentiating between them gives a good indicator, if I should read the value of the mousewheel as well or print a message "sorry, this script is mousewheel only..."

Edit: and maybe it should include flags for modifiers....
yeah, it should be a string, that would be more useful... doing that for the next +dev
Justin is offline   Reply With Quote
Old 11-14-2022, 09:13 AM   #20
Meo-Ada Mespotine
Human being with feelings
 
Meo-Ada Mespotine's Avatar
 
Join Date: May 2017
Location: Leipzig
Posts: 6,621
Default

@Justin
Nice, thnx
__________________
Use you/she/her.Ultraschall-Api Lua Api4Reaper - Donate, if you wish

On vacation for the time being...
Meo-Ada Mespotine is offline   Reply With Quote
Old 11-14-2022, 10:02 AM   #21
ovnis
Human being with feelings
 
ovnis's Avatar
 
Join Date: Oct 2011
Posts: 2,924
Default

Quote:
# Fixed lanes: recalculate lanes when moving items up/down via action [p=2610888]
I don't know if it's related, but if I copy/past the region the item can move to an another lane.

It seems a random issue, but the bug will happen in relation where we click to drop the region (snap enabled).

Project: https://stash.reaper.fm/v/45643/bug.rpp

When we drop the region at the right side of measure 16, bug:





When we drop the region at the left side of measure 16, no issue:


Last edited by ovnis; 11-14-2022 at 11:21 AM.
ovnis is offline   Reply With Quote
Old 11-14-2022, 02:26 PM   #22
ovnis
Human being with feelings
 
ovnis's Avatar
 
Join Date: Oct 2011
Posts: 2,924
Default

Edit 2: it's strange but with reaper670rc1_x64, I couldn't reproduce the bug with the reaper file left behind. We can reproduce the bug with this new file project:

https://stash.reaper.fm/v/45643/bug.rpp

How the bug should be with this new project:

And with this project, there is a bug even with the left side of the measure.


Last edited by ovnis; 11-14-2022 at 05:46 PM.
ovnis is offline   Reply With Quote
Reply

Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT -7. The time now is 10:41 PM.


Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2024, vBulletin Solutions Inc.