Old 12-30-2021, 07:34 PM   #1
kytdkut
Human being with feelings
 
kytdkut's Avatar
 
Join Date: May 2017
Posts: 95
Default v6.43+dev1230 - December 30 2021

v6.43+dev1230 - December 30 2021
  • * Includes feature branch: FX chain oversampling
  • * Includes feature branch: render internals simplification/cleanup
  • * Includes feature branch: user-defined action overhaul
  • * Includes feature branch: media item normalization
  • * Includes feature branch: media explorer toolbar
  • * Includes feature branch: media item fixed lanes
  • * Includes feature branch: JSFX internals overhaul/cleanup/modernization
  • * Includes feature branch: Windows very long pathname support
  • + CPU metering: option (FX chain and performance meter menus) to view CPU utilization as 100% = one core
  • + FX: add per-FX chain oversampling option
  • + ReaInsert: do not allow processing if in an oversampled FX chain
  • + ReaScript: do not defer indefinitely when calling reaper.defer() with no parameters from Lua [t=261323]
  • # Color theme: add 150% and 200% toolbar icons for media explorer
  • # Preferences: correct help text for undo hints [t=261244]
  • # ReaScript: rename NormalizeItem function to CalculateNormalization
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
kytdkut is offline   Reply With Quote
Old 12-30-2021, 08:19 PM   #2
Funkybot
Human being with feelings
 
Funkybot's Avatar
 
Join Date: Jul 2007
Location: New Joisey
Posts: 6,022
Default

Quote:
Originally Posted by kytdkut View Post
  • + CPU metering: option (FX chain and performance meter menus) to view CPU utilization as 100% = one core
  • + FX: add per-FX chain oversampling option
These are both very welcome additions here.

The "Display CPU utilization as 100% = one core" option also impacts the CPU display in the performance monitor. Is this intended? I think there's enough room in that window to always show both the maxed stressed core's CPU utilization and the current avg across the board.

Also, with the "100%=One Core" option being in the FX Chain menu, it makes me think it's a "per FX chain" option, like the oversampling, but the 100=one core option appears to be acting globally.
Funkybot is online now   Reply With Quote
Old 12-30-2021, 08:26 PM   #3
Justin
Administrator
 
Justin's Avatar
 
Join Date: Jan 2005
Location: NYC
Posts: 15,737
Default

Quote:
Originally Posted by Funkybot View Post
These are both very welcome additions here.

The "Display CPU utilization as 100% = one core" option also impacts the CPU display in the performance monitor. Is this intended? I think there's enough room in that window to always show both the maxed stressed core's CPU utilization and the current avg across the board.

Also, with the "100%=One Core" option being in the FX Chain menu, it makes me think it's a "per FX chain" option, like the oversampling, but the 100=one core option appears to be acting globally.
It's a global option that affects both (in the FX menu for utility, I'll move it to the top of the menu with the other global options) -- btw in that mode it doesn't show "maxed stressed core's CPU utilization", it just shows the sum of all cores (so e.g. 400% if you have 4 CPU cores worth of CPU use).
Justin is offline   Reply With Quote
Old 12-30-2021, 08:49 PM   #4
wol
Human being with feelings
 
Join Date: Oct 2013
Posts: 93
Default

Quote:
Originally Posted by kytdkut View Post
v6.43+dev1230 - December 30 2021
  • + FX: add per-FX chain oversampling option

but now we want per-FX oversampling option
wol is offline   Reply With Quote
Old 12-30-2021, 08:55 PM   #5
Funkybot
Human being with feelings
 
Funkybot's Avatar
 
Join Date: Jul 2007
Location: New Joisey
Posts: 6,022
Default

Quote:
Originally Posted by Justin View Post
btw in that mode it doesn't show "maxed stressed core's CPU utilization", it just shows the sum of all cores (so e.g. 400% if you have 4 CPU cores worth of CPU use).
Justin, that sounds very confusing. What's the practical use for displaying it like that? I mean, I see the value in knowing when one core is maxed out because that will likely translate to glitches (e.g. show the max stressed core's CPU usage a la Studio One). I see the value in knowing a single FX chain's CPU usage in relation to a single core. I see the value in knowing how much CPU usage is happening across the entire project, so I I have a feel for how much headroom I have left on the project to keep adding things. But if I'm running a project that's not glitching out and the CPU usage was shown as 400%, I'd be very confused about how to interpret that number. Just my own take on it.

Last edited by Funkybot; 12-30-2021 at 09:01 PM.
Funkybot is online now   Reply With Quote
Old 12-30-2021, 09:00 PM   #6
Funkybot
Human being with feelings
 
Funkybot's Avatar
 
Join Date: Jul 2007
Location: New Joisey
Posts: 6,022
Default

Quote:
Originally Posted by wol View Post
but now we want per-FX oversampling option
Shhh...not so fast...you'll scare off the squirrel.

But yeah, this!

Particularly because some plugins in an FX Chain outright break at some oversampling settings, while others may still sound good. Don't get me wrong, I'd rather still have it than not - but if we could turn this on for individual FX, it would solve for "man this distortion FX sounds great at 8x but that amp sim I'm feeding it into just doesn't work at all at that rate."
Funkybot is online now   Reply With Quote
Old 12-30-2021, 09:01 PM   #7
Justin
Administrator
 
Justin's Avatar
 
Join Date: Jan 2005
Location: NYC
Posts: 15,737
Default

Quote:
Originally Posted by Funkybot View Post
Justin, that sounds very confusing. What's the practical use for displaying it like that? I mean, I see the value in knowing when one core is maxed out because that will likely translate to glitches (e.g. show the max stressed core's CPU usage a la Studio One).
The only number that matters is in that case is the RT CPU. CPU distribution between cores is dynamic, you can peg all of your cores and as long as the RT CPU doesn't get too high you'll be fine.

Quote:
if I'm running a project that's not glitching out and the CPU usage was shown as 400%, I'd be very confused about how to interpret that number. Just my own take on it.
Well you should've thought about that before you turned the option on. FYI e.g. Activity Monitor on macOS also shows CPU use in this way.

Last edited by Justin; 12-30-2021 at 09:09 PM.
Justin is offline   Reply With Quote
Old 12-30-2021, 09:09 PM   #8
Justin
Administrator
 
Justin's Avatar
 
Join Date: Jan 2005
Location: NYC
Posts: 15,737
Default

Quote:
Originally Posted by wol View Post
but now we want per-FX oversampling option
we'll see but test this as-is for now
Justin is offline   Reply With Quote
Old 12-30-2021, 09:10 PM   #9
Funkybot
Human being with feelings
 
Funkybot's Avatar
 
Join Date: Jul 2007
Location: New Joisey
Posts: 6,022
Default

Quote:
Originally Posted by Justin View Post
The only number that matters is in that case is the RT CPU. CPU distribution between cores is dynamic, you can peg all of your cores and as long as the RT CPU doesn't get too high you'll be fine.
Based on that, I think it makes sense to always show the RT CPU in the performance meter window. Maybe just add the core when that option is enabled. Or always show both. The FX Chain could respect the preference.

Just my two cents. I'll stop beating this horse now...
Funkybot is online now   Reply With Quote
Old 12-30-2021, 09:17 PM   #10
Justin
Administrator
 
Justin's Avatar
 
Join Date: Jan 2005
Location: NYC
Posts: 15,737
Default

Quote:
Originally Posted by Funkybot View Post
Based on that, I think it makes sense to always show the RT CPU in the performance meter window. Maybe just add the core when that option is enabled. Or always show both. The FX Chain could respect the preference.

Just my two cents. I'll stop beating this horse now...
The CPU meter does by default display the RT CPU. And the new mode is optional and off by default.
Justin is offline   Reply With Quote
Old 12-30-2021, 09:18 PM   #11
Funkybot
Human being with feelings
 
Funkybot's Avatar
 
Join Date: Jul 2007
Location: New Joisey
Posts: 6,022
Default

Quote:
Originally Posted by Justin View Post
we'll see but test this as-is for now
It's hard to tell what's a bug or not with this. It seems to work, but I've seen some weird stuff just in some quick testing:

Overloud TH-U gets louder with 4x oversampling on.

The Softube amps completely crap out at 8x. They also appear to run at a fixed rate internally, as FX Chain oversampling doesn't seem to impact some audible aliasing at all - so that's a Softube thing that this won't impact.

The Audiority Big Goat sounds good at 4x, but when I turned on HQ, completely changed the sound in a something's broken kind of way.

...Note: I'm fine with all of this. It feels like sometimes you can blow past the maximum sample rate of a given plugin, and this remains true for when the plugin has its own oversampling scheme. So if you're running the FX Chain at 4x and the plugin has 2x oversampling, the plugin can up running at 8x but not be designed for sample rates that high.

Running things at 2x seems fine. 4x seems pretty safe, but can get weird if the plugin has optional oversampling. 8x is where things start getting weird.
Funkybot is online now   Reply With Quote
Old 12-30-2021, 09:21 PM   #12
Justin
Administrator
 
Justin's Avatar
 
Join Date: Jan 2005
Location: NYC
Posts: 15,737
Default

Quote:
Originally Posted by Funkybot View Post
It's hard to tell what's a bug or not with this. It seems to work, but I've seen some weird stuff just in some quick testing:

Overloud TH-U gets louder with 4x oversampling on.

The Softube amps completely crap out at 8x. They also appear to run at a fixed rate internally, as FX Chain oversampling doesn't seem to impact some audible aliasing at all - so that's a Softube thing that this won't impact.

The Audiority Big Goat sounds good at 4x, but when I turned on HQ, completely changed the sound in a something's broken kind of way.

...Note: I'm fine with all of this. It feels like sometimes you can blow past the maximum sample rate of a given plugin, and this remains true for when the plugin has its own oversampling scheme. So if you're running the FX Chain at 4x and the plugin has 2x oversampling, the plugin can up running at 8x but not be designed for sample rates that high.

Running things at 2x seems fine. 4x seems pretty safe, but can get weird if the plugin has optional oversampling. 8x is where things start getting weird.
Yeah I'd imagine a lot of plug-ins aren't designed for rates more than 192k (8x gets you way past that)
Justin is offline   Reply With Quote
Old 12-30-2021, 09:22 PM   #13
Funkybot
Human being with feelings
 
Funkybot's Avatar
 
Join Date: Jul 2007
Location: New Joisey
Posts: 6,022
Default

Two suggestions:

1. I'd probably mention somewhere that enabling oversampling introduces latency. At least, I'm assuming that's intended.

2. I tend to float the plugin GUI's versus using the FX Chain window. Would be nice if there was a way to manage the oversampling on the FX chain or see the status of that on floated windows. For those, "wait, is it on" type of scenarios. Worst case, I could go back to the FX Chain window, but would be nice to save the trip.
Funkybot is online now   Reply With Quote
Old 12-30-2021, 09:22 PM   #14
Funkybot
Human being with feelings
 
Funkybot's Avatar
 
Join Date: Jul 2007
Location: New Joisey
Posts: 6,022
Default

Quote:
Originally Posted by Justin View Post
Yeah I'd imagine a lot of plug-ins aren't designed for rates more than 192k (8x gets you way past that)
Yeah, I was wonder if a max of 8x makes sense. Even 4x as the max would be a-ok with me.
Funkybot is online now   Reply With Quote
Old 12-30-2021, 09:31 PM   #15
Justin
Administrator
 
Justin's Avatar
 
Join Date: Jan 2005
Location: NYC
Posts: 15,737
Default

Quote:
Originally Posted by Funkybot View Post
Yeah, I was wonder if a max of 8x makes sense. Even 4x as the max would be a-ok with me.
Might be fun to run/write some JSFX at 8x...
Justin is offline   Reply With Quote
Old 12-31-2021, 01:18 AM   #16
mlprod
Human being with feelings
 
Join Date: Jul 2015
Location: Stockholm, Sweden
Posts: 1,343
Default

Quote:
Originally Posted by Funkybot View Post
It's hard to tell what's a bug or not with this. It seems to work, but I've seen some weird stuff just in some quick testing:

Overloud TH-U gets louder with 4x oversampling on.

The Softube amps completely crap out at 8x. They also appear to run at a fixed rate internally, as FX Chain oversampling doesn't seem to impact some audible aliasing at all - so that's a Softube thing that this won't impact.

The Audiority Big Goat sounds good at 4x, but when I turned on HQ, completely changed the sound in a something's broken kind of way.

...Note: I'm fine with all of this. It feels like sometimes you can blow past the maximum sample rate of a given plugin, and this remains true for when the plugin has its own oversampling scheme. So if you're running the FX Chain at 4x and the plugin has 2x oversampling, the plugin can up running at 8x but not be designed for sample rates that high.

Running things at 2x seems fine. 4x seems pretty safe, but can get weird if the plugin has optional oversampling. 8x is where things start getting weird.
Some plugins oversample them selves internally, Softube does that I believe, prolly not a good idea to oversample those.
__________________
Magnus Lindberg Productions - VRTKL Audio - Redmount Studios
magnuslindberg.com
mlprod is offline   Reply With Quote
Old 12-31-2021, 02:08 AM   #17
X-Raym
Human being with feelings
 
X-Raym's Avatar
 
Join Date: Apr 2013
Location: France
Posts: 9,900
Default

@mlprod
There is indeed some plugins that behaves weirdly at hugh sample rte like Ml SoundLab Roots guirar amp which has 6db boost at 96000 rather than 48000 (I reported this months ago, no fix).
So it seems that using plugin with oversampling parameter made by the plugin dev will always be better than using FX chain oversampling, cause if the FX we want oversampling for doesnt have it, high chance it behaves weirdly, unfortunately.
But maybe it can work nicely for some plugins (JS?)
X-Raym is offline   Reply With Quote
Old 12-31-2021, 02:57 AM   #18
Tale
Human being with feelings
 
Tale's Avatar
 
Join Date: Jul 2008
Location: The Netherlands
Posts: 3,652
Default

Just to sure: The FX chain oversampling uses the playback/render resample mode, right?
Tale is offline   Reply With Quote
Old 12-31-2021, 03:37 AM   #19
ilarios
Human being with feelings
 
Join Date: Apr 2020
Posts: 21
Default

Quote:
Originally Posted by kytdkut View Post
v6.43+dev1230 - December 30 2021
  • * Includes feature branch: FX chain oversampling
OH MY GOD, YES! This is why I love Reaper. This setting will be a godsend for those of us who run a mastering operation and are mostly ITB. We finally have a way to oversample Acustica plugins without third-party options.

Thank you devs!
ilarios is offline   Reply With Quote
Old 12-31-2021, 03:50 AM   #20
EvilDragon
Human being with feelings
 
EvilDragon's Avatar
 
Join Date: Jun 2009
Location: Croatia
Posts: 24,798
Default

Per FX chain oversampling? That's nice. Synth1 gets a new lease of life, maybe. Haha!


May I ask what's the oversampling algo used?
EvilDragon is offline   Reply With Quote
Old 12-31-2021, 04:28 AM   #21
sockmonkey72
Human being with feelings
 
sockmonkey72's Avatar
 
Join Date: Sep 2021
Location: Berlin
Posts: 1,957
Default

Quote:
Originally Posted by mlprod View Post
Some plugins oversample them selves internally, Softube does that I believe, prolly not a good idea to oversample those.
Is the behavior different than when running those plugins oversampled in Metaplugin or similar?

Last edited by sockmonkey72; 12-31-2021 at 04:51 AM.
sockmonkey72 is online now   Reply With Quote
Old 12-31-2021, 04:47 AM   #22
sockmonkey72
Human being with feelings
 
sockmonkey72's Avatar
 
Join Date: Sep 2021
Location: Berlin
Posts: 1,957
Default

Quote:
Originally Posted by Justin View Post
ah thanks, that means notarization failed (which usually means we have to login to apple's web site and agree to their updated terms and conditions, bleh)
Great, +dev1230 is notarized again.
sockmonkey72 is online now   Reply With Quote
Old 12-31-2021, 05:02 AM   #23
Zeno
Human being with feelings
 
Zeno's Avatar
 
Join Date: Sep 2018
Location: HH
Posts: 918
Default

Quote:
Originally Posted by Funkybot View Post
Yeah, I was wonder if a max of 8x makes sense. Even 4x as the max would be a-ok with me.
Ah, why not go completely crazy? Oversampling to MHz? x256, anyone?
Zeno is offline   Reply With Quote
Old 12-31-2021, 06:33 AM   #24
Justin
Administrator
 
Justin's Avatar
 
Join Date: Jan 2005
Location: NYC
Posts: 15,737
Default

Quote:
Originally Posted by EvilDragon View Post
Per FX chain oversampling? That's nice. Synth1 gets a new lease of life, maybe. Haha!


May I ask what's the oversampling algo used?
Current project setting, for now
Justin is offline   Reply With Quote
Old 12-31-2021, 06:34 AM   #25
Justin
Administrator
 
Justin's Avatar
 
Join Date: Jan 2005
Location: NYC
Posts: 15,737
Default

Quote:
Originally Posted by Tale View Post
Just to sure: The FX chain oversampling uses the playback/render resample mode, right?
Yes, it requires a playback stop/start to change
Justin is offline   Reply With Quote
Old 12-31-2021, 08:59 AM   #26
PhelixK
Human being with feelings
 
PhelixK's Avatar
 
Join Date: Mar 2019
Posts: 885
Default

Quote:
Originally Posted by kytdkut View Post
v6.43+dev1230 - December 30 2021
  • # Color theme: add 150% and 200% toolbar icons for media explorer
Great!

– A little nitpick:
At 100% the following icons do not include background fill (they do at 150% + 200%)
ex_autoplay
ex_start_on_bar
ex_preserve_pitch_tempo_matching


– More importantly (at least to me, trying to understand what is going on )

For the Explorer Toolbar, Reaper still doesn’t replace any custom icons when located inside a packed ThemeZip.
– Would be really nice to know if it’s not possible as with regular tb icons.

Here’s an example (portable install) showing factory icons in green color on the left, even though the exact same icons are customized in blue color and included with my theme. Replacement works as expected for regular toolbar icons, also when placed in explorer and no matter if the theme is packed or not.

Packed theme (@1x):


Unpacked (@1x):




Quote:
Originally Posted by kytdkut View Post
v6.43+dev1230 - December 30 2021
  • + FX: add per-FX chain oversampling option
very interesting, will check it out.

– Wishing everyone a happy New REAPER Year!
PhelixK is offline   Reply With Quote
Old 12-31-2021, 09:31 AM   #27
Phazma
Human being with feelings
 
Join Date: Jun 2019
Posts: 2,875
Default

Quote:
Originally Posted by kytdkut View Post
[*]+ CPU metering: option (FX chain and performance meter menus) to view CPU utilization as 100% = one core
Very interesting.

I am wondering if it would be possible to show CPU utilization for every core individually? Perhaps not in the FX chain window but in performance meter?

For FX chain window I agree that it would be more useful to see the CPU utilization of the Core that is most stressed out, rather than a sum of values. Don't know what to do with the sum value.. like if I have 4 cores and use 200%CPU I am still good to go as only half of my core power is used? Isn't the overall CPU utilization more useful for that way of reading anyway?

Also I am wondering, would it be possible to show CPU utilization on the transport panel or otherwise at least in the menu bar (where audio device information, recording format etc are shown)? This would be handy so we don't have to open FX chains or the performance meter to quickly see CPU utilization.

Also I am a bit confused with the values. I tried for example using EW Opus sample library player, which shows "CPU" and playing a heavier patch. While Opus shows me values between 30% and 60% (usually it peaks when I play notes and decays while I hold them), Reaper's RT cpu shows me only about 20% all the time. The Core CPU shows about 90% and the non-core about 10%.
How do I have to interpret this? Is it likely the Opus shows me RT CPU as it spikes so quickly and then decays? If so, why isn't Reaper's meter keeping up? Or is Opus meter calculating incorrectly?
Phazma is offline   Reply With Quote
Old 12-31-2021, 10:49 AM   #28
souk21
Human being with feelings
 
souk21's Avatar
 
Join Date: Mar 2021
Posts: 481
Default

* Includes feature branch: FX chain oversampling

Wow! Thanks! I look forward to try that with some jsfx
souk21 is online now   Reply With Quote
Old 12-31-2021, 06:59 PM   #29
dub3000
Human being with feelings
 
dub3000's Avatar
 
Join Date: Mar 2008
Location: Sydney, Australia
Posts: 3,955
Default

Quote:
Originally Posted by Funkybot View Post
It's hard to tell what's a bug or not with this. It seems to work, but I've seen some weird stuff just in some quick testing:

Overloud TH-U gets louder with 4x oversampling on.

The Softube amps completely crap out at 8x. They also appear to run at a fixed rate internally, as FX Chain oversampling doesn't seem to impact some audible aliasing at all - so that's a Softube thing that this won't impact.

The Audiority Big Goat sounds good at 4x, but when I turned on HQ, completely changed the sound in a something's broken kind of way.

...Note: I'm fine with all of this. It feels like sometimes you can blow past the maximum sample rate of a given plugin, and this remains true for when the plugin has its own oversampling scheme. So if you're running the FX Chain at 4x and the plugin has 2x oversampling, the plugin can up running at 8x but not be designed for sample rates that high.

Running things at 2x seems fine. 4x seems pretty safe, but can get weird if the plugin has optional oversampling. 8x is where things start getting weird.
...oops, i should probably fix my Floaty JS delay calc code at some point
dub3000 is offline   Reply With Quote
Old 01-01-2022, 08:05 AM   #30
nofish
Human being with feelings
 
nofish's Avatar
 
Join Date: Oct 2007
Location: home is where the heart is
Posts: 12,107
Default

Quote:
Originally Posted by kytdkut View Post
v6.43+dev1230 - December 30 2021[*]# ReaScript: rename NormalizeItem function to CalculateNormalization
Just as idea, how about a similar additional* function which takes a MediaItem_Take* as argument (instead of PCM_source*), then position of peak, LUFS-M max etc. within project (timeline) could also be returned which also might be useful at times.
That's what e.g. my NF_AnalyzeTakeLoudness2 SWS exported function does (and as previously said, wouldn't mind deprecating, as it's simply a fact that you (Cockos) can provide better support for it than SWS guys doing it in spare time. ).

*I know taking a PCM_source* is also useful because it can also be used for not in-project files (using PCM_Source_CreateFromFile()) so that should also be kept imo.

Last edited by nofish; 01-01-2022 at 08:14 AM.
nofish is offline   Reply With Quote
Old 01-01-2022, 03:34 PM   #31
AtmanActive
Human being with feelings
 
AtmanActive's Avatar
 
Join Date: Dec 2009
Location: United Kingdom
Posts: 668
Default

Quote:
Originally Posted by kytdkut View Post
v6.43+dev1230 - December 30 2021[*]+ FX: add per-FX chain oversampling option
That's great news!
While at it, can we get undersampling as well?
Like x0.5, x0.25 ...
This could be especially useful for network-streaming audio while mixing at high sampling rates, but still be able to stream at 48kHz via ReaStream, Audiomovers, Sonobus...
Thanks!
AtmanActive 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 04:36 AM.


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