Go Back   Cockos Incorporated Forums > REAPER Forums > REAPER Feature Requests

Reply
 
Thread Tools Display Modes
Old 07-31-2021, 02:17 AM   #1
mschnell
Human being with feelings
 
mschnell's Avatar
 
Join Date: Jun 2013
Location: Krefeld, Germany
Posts: 14,688
Default Run plugins optionally on modified or variable block size (automation accuracy)

In this thread:
https://forum.cockos.com/showthread....11#post2468211
at least two users claim that Protools provides a better timing with automation of VST2s than Reaper does.
As the VST2 specification does not allow for better than block accuracy with DAW parameter automation, the only way I see that claim might be valid, is, that Protools might provide VSTs (if automated) with an audio stream with reduced block size, trading accuracy for CPU performance.

A user in this thread asked me to file a FR here, proposing that Reaper might offer an option to run a plugin slot on an audio stream with a modified block size.

This of course makes even more sense when combined with the already standing FR for an option to run a plugin slot on an audio stream with a modified sample rate for those plugins that sound better (due to lower aliasing) on a higher sample rate.

-Michael

Last edited by mschnell; 08-01-2021 at 10:15 PM.
mschnell is offline   Reply With Quote
Old 07-31-2021, 04:57 AM   #2
akademie
Human being with feelings
 
Join Date: Mar 2007
Posts: 3,978
Default

+1000
akademie is offline   Reply With Quote
Old 07-31-2021, 12:54 PM   #3
strachupl
Human being with feelings
 
strachupl's Avatar
 
Join Date: Jan 2013
Posts: 648
Default

I seen discussion in other thread. Seem to be normal thing in other DAWs and strange in Reaper so it would be interesting if developers will see this. +
__________________
Love is patient and kind; love does not envy or boast; it is not arrogant or rude.
It does not insist on its own way; it is not irritable or resentful;
it does not rejoice at wrongdoing, but rejoices with the truth. Corinthians 13:4-6
strachupl is offline   Reply With Quote
Old 07-31-2021, 09:58 PM   #4
Pink Wool
Human being with feelings
 
Pink Wool's Avatar
 
Join Date: Apr 2020
Posts: 1,501
Default

+1 for this!
Pink Wool is offline   Reply With Quote
Old 07-31-2021, 10:03 PM   #5
mschnell
Human being with feelings
 
mschnell's Avatar
 
Join Date: Jun 2013
Location: Krefeld, Germany
Posts: 14,688
Default

Quote:
Originally Posted by strachupl View Post
it would be interesting if developers will see this.
... to do a decent analysis and publish the results to stop our guessing.
-Michael
mschnell is offline   Reply With Quote
Old 07-31-2021, 10:26 PM   #6
Pink Wool
Human being with feelings
 
Pink Wool's Avatar
 
Join Date: Apr 2020
Posts: 1,501
Default

Quote:
Originally Posted by mschnell View Post
... to do a decent analysis and publish the results to stop our guessing.
-Michael
Yes this! Thanks for posting this FR
Pink Wool is offline   Reply With Quote
Old 08-01-2021, 05:58 AM   #7
akademie
Human being with feelings
 
Join Date: Mar 2007
Posts: 3,978
Default

I'll quote myself from the other thread, where this mschnell's idea started

Quote:
Originally Posted by akademie View Post
Hi Michael,
that would be really interesting approach and actually could solve also the problem with PM parameter modulations of JSFX, VSTs for sound design (synth envelopes etc.) maybe, which needs smaller blocks than actual audio card's buffersize (= they directly rely on buffersize value).

As I already described in my FR *, if you design your synth patch using PM at 128 samples buffersize, then you open the project when the buffersize is set to 512 or more (e.g. for mixing), then nothing sounds as it should or as was meant to sound.
You either have to set that small buffersize (it may not be possible using actual CPU and/or audiodevice used, and you also have to remember the right original buffersize) or to have all parts rendered/frozen immediately.

* the link to mentioned Feature Request of mine:
Save & load Buffer settings to/from RPP
and also quotting from my other related Feature Request - Save & load project's buffer setting to/from RPP:
Quote:
Originally Posted by akademie View Post
Save & load project's buffer setting to/from RPP.

Add similar checkbox (and size) like already existing "Project sample rate" parameter in Project settings window.

If we use Reaper for synth/sound design, using a lot of parameter modulations, then the result is heavily affected by specific audio buffer settings (512 spls will not sound the same as 128 or 64, etc. and vice versa of course).

So it would be nice to have some kind of warning if we try to open project under different current audio buffer size setting (you know - different machine, soundcard, previously set for recording etc.)

Sure there would need to be ability to override such project's settings on loading.

Moreover, making the buffer settings number/text displayed in the top-right corner colored in red colour if buffer size of the project does not match would be huge help.

Last edited by akademie; 08-01-2021 at 06:14 AM.
akademie is offline   Reply With Quote
Old 08-01-2021, 06:12 AM   #8
akademie
Human being with feelings
 
Join Date: Mar 2007
Posts: 3,978
Default

Also I have to note that in Linux (ALSA) it is possible to use very small values of buffersize even that the audiocard or CPU is not capable of, because you can increase so called "Periods" parameter which will help with that.

It means that the project made on 128 samples buffersize can be still run at 128 samples, but with much more periods to be playable. Latency would be higher of course, but processing time-constants would be the same as original, because blocksize is actually 128 and not 512 samples, even that the total number buffersize x periods (or whatever math is done there) may get the 512 samples or even more of latency in the end.

This would be something interesting for WASAPI and/or ASIO to have also (some clever internal buffersize slicing. manipulating or whatever).


(Note: It is not to solve the latency, which cannot be done, but to keep the exact sound relying on buffersize when continuously calculating time variant modifications to the sound - be it parameter modulation, e.g.filter sweep, or mixing automation).
akademie is offline   Reply With Quote
Old 08-01-2021, 08:07 AM   #9
Daodan
Human being with feelings
 
Join Date: Jan 2011
Posts: 1,167
Default

+111!
Daodan is online now   Reply With Quote
Old 08-01-2021, 03:06 PM   #10
mschnell
Human being with feelings
 
mschnell's Avatar
 
Join Date: Jun 2013
Location: Krefeld, Germany
Posts: 14,688
Default

I just learned that VST2 allows for dynamically variable buffer size. With modulating the buffer size you maybe can nicely approximate the point in the data stream where automation "jumps" by shifting the buffer boundaries to there.

-Michael

Last edited by mschnell; 08-02-2021 at 06:19 AM.
mschnell is offline   Reply With Quote
Old 08-03-2021, 07:50 AM   #11
Vagelis
Human being with feelings
 
Vagelis's Avatar
 
Join Date: Oct 2017
Location: Larisa, Greece
Posts: 3,797
Default

+1000
Vagelis is offline   Reply With Quote
Old 08-05-2021, 10:36 AM   #12
rupendarv
Human being with feelings
 
Join Date: May 2021
Posts: 11
Default

+9999
rupendarv is offline   Reply With Quote
Old 08-05-2021, 08:17 PM   #13
Pink Wool
Human being with feelings
 
Pink Wool's Avatar
 
Join Date: Apr 2020
Posts: 1,501
Default

Can we summon @Justin or @schwa ?
Pink Wool is offline   Reply With Quote
Old 08-07-2021, 10:28 AM   #14
Reflected
Human being with feelings
 
Reflected's Avatar
 
Join Date: Jul 2009
Posts: 3,294
Default

Quote:
Originally Posted by Pink Wool View Post
Can we summon @Justin or @schwa ?
Yeah! can we do that?


+ 10000
Reflected is offline   Reply With Quote
Old 08-08-2021, 01:50 AM   #15
mschnell
Human being with feelings
 
mschnell's Avatar
 
Join Date: Jun 2013
Location: Krefeld, Germany
Posts: 14,688
Default

12 years ago, Justin stated that using dynamically variable buffer size might break compatibility with some VSTs.

I don't know if this still the case, or if those "inferior" VSTs are not distributed any more, (as other DAWs seem to assume).

Nonetheless it suggests that such a feature should be optionally activated for aby plugin slot.
-Michael
mschnell is offline   Reply With Quote
Old 08-08-2021, 02:15 AM   #16
Tale
Human being with feelings
 
Tale's Avatar
 
Join Date: Jul 2008
Location: The Netherlands
Posts: 3,645
Default

Quote:
Originally Posted by mschnell View Post
In this thread:
https://forum.cockos.com/showthread....11#post2468211
at least two users claim that Protools provides a better timing with automation of VST2s than Reaper does.
FWIW, you guys do know that Pro Tools doesn't support VST2, right? Just saying...
Tale is online now   Reply With Quote
Old 08-09-2021, 01:41 AM   #17
UknownSource
Human being with feelings
 
UknownSource's Avatar
 
Join Date: May 2020
Posts: 434
Default

Quote:
Originally Posted by mschnell View Post
12 years ago, Justin stated that using dynamically variable buffer size might break compatibility with some VSTs.

I don't know if this still the case, or if those "inferior" VSTs are not distributed any more, (as other DAWs seem to assume).

Nonetheless it suggests that such a feature should be optionally activated for aby plugin slot.
-Michael
12 years ago!
12 years!
12 years without accurate automation...that sucks!

I didn't bought a monster pc to get inaccurate results, I got accurate results in every other daw that I used, why not in reaper?
I want accurate results.

this is something that should be optional from the user's side.
__________________
"FX-Container"
UknownSource is offline   Reply With Quote
Old 08-09-2021, 10:37 AM   #18
mschnell
Human being with feelings
 
mschnell's Avatar
 
Join Date: Jun 2013
Location: Krefeld, Germany
Posts: 14,688
Default

Quote:
Originally Posted by Tale View Post
FWIW, you guys do know that Pro Tools doesn't support VST2, right? Just saying...
That is a funny insight

Maybe Wrapper plugins modify the block size !??!?

-Michael

Last edited by mschnell; 08-09-2021 at 01:32 PM.
mschnell is offline   Reply With Quote
Old 08-09-2021, 10:55 AM   #19
Pink Wool
Human being with feelings
 
Pink Wool's Avatar
 
Join Date: Apr 2020
Posts: 1,501
Default

Quote:
Originally Posted by Tale View Post
FWIW, you guys do know that Pro Tools doesn't support VST2, right? Just saying...
Most unprofessional...🙄
Pink Wool is offline   Reply With Quote
Old 08-09-2021, 11:06 AM   #20
Reflected
Human being with feelings
 
Reflected's Avatar
 
Join Date: Jul 2009
Posts: 3,294
Default

Quote:
Originally Posted by UknownSource View Post
12 years ago!
12 years!
12 years without accurate automation...that sucks!

I didn't bought a monster pc to get inaccurate results, I got accurate results in every other daw that I used, why not in reaper?
I want accurate results.

this is something that should be optional from the user's side.
exactly.
Reflected is offline   Reply With Quote
Old 12-15-2023, 05:49 AM   #21
Loulou92
Human being with feelings
 
Loulou92's Avatar
 
Join Date: Sep 2015
Location: Paris
Posts: 544
Default

+99999999

NEEDS A FIX !

I discovered the ugly block limitation using parameter modulations in 2020. Since then it has depressed me to realize anll the beautiful automaton curves you do tanslate in very audible stepped audio response.

The solution discussed above would be a tremendous breakthrough. Tremendous.
Loulou92 is offline   Reply With Quote
Old 12-15-2023, 06:08 AM   #22
Loulou92
Human being with feelings
 
Loulou92's Avatar
 
Join Date: Sep 2015
Location: Paris
Posts: 544
Default

Anything that suppresses the ugly stepped response is welcome to be honest.You can't oppose buffers and block sizes vs automation accuracy. You just can't do that in real life scenarios.
Loulou92 is offline   Reply With Quote
Old 12-15-2023, 06:09 AM   #23
Loulou92
Human being with feelings
 
Loulou92's Avatar
 
Join Date: Sep 2015
Location: Paris
Posts: 544
Default

Beware reader, right now, a VST sweep is never trully a sweep. Sweeps are stairs !!!
Loulou92 is offline   Reply With Quote
Old 12-15-2023, 08:16 AM   #24
mschnell
Human being with feelings
 
mschnell's Avatar
 
Join Date: Jun 2013
Location: Krefeld, Germany
Posts: 14,688
Default

@ Loulou92
What exactly are you trying to accomplish ?
mschnell is offline   Reply With Quote
Old 12-15-2023, 03:12 PM   #25
Loulou92
Human being with feelings
 
Loulou92's Avatar
 
Join Date: Sep 2015
Location: Paris
Posts: 544
Default

I just want to have a good smooth response from my VST when working and automating in 1024 buffer or more, and this is not possible. I thought we were blocked with VST2 implementation, but someone mentioned innovative solution used by FL studio for example. So if there's a solution, we should have it in Reaper.
Loulou92 is offline   Reply With Quote
Old 12-16-2023, 01:17 AM   #26
mschnell
Human being with feelings
 
mschnell's Avatar
 
Join Date: Jun 2013
Location: Krefeld, Germany
Posts: 14,688
Default

As said: IMHO "automation" is the wrong way. What you seemingly want should (and supposedly can) be done by what is intended for such purpose: Midi. This is "sample accurate" by design. (Unfortunately some plugins don't allow midi CC control for some important parameters -> been there .)

Some DAWs under the hood automatically run VST2s with lower buffer size. Helps on that behalf but asks for lots of other issues.

With VST3, automation and Midi CC input is more or less the same. But not all VST3 plugins take advantage of that. E.g. last time I checked the "JUCE" Framework, on which many plugins are based, does not provide such "sample accurate automation" to the user code, even if compiled to a VST3.

Last edited by mschnell; 12-16-2023 at 01:25 AM.
mschnell is offline   Reply With Quote
Old 12-16-2023, 07:10 AM   #27
Loulou92
Human being with feelings
 
Loulou92's Avatar
 
Join Date: Sep 2015
Location: Paris
Posts: 544
Default

Quote:
Originally Posted by mschnell View Post
As said: IMHO "automation" is the wrong way. What you seemingly want should (and supposedly can) be done by what is intended for such purpose: Midi. This is "sample accurate" by design. (Unfortunately some plugins don't allow midi CC control for some important parameters -> been there .)

Some DAWs under the hood automatically run VST2s with lower buffer size. Helps on that behalf but asks for lots of other issues.

With VST3, automation and Midi CC input is more or less the same. But not all VST3 plugins take advantage of that. E.g. last time I checked the "JUCE" Framework, on which many plugins are based, does not provide such "sample accurate automation" to the user code, even if compiled to a VST3.
The same problem rises with parameter modulations inside Reaper, you know this too right ? So this becomes a Reaper problem too, somehow. I'd love a dynamic buffer solution. You could turn it on/off on a plugin per plugin basis, modulaiton per modulation basis... This would be the holy grail. No more ugly stepping in mixing land.

CCs are nice, but as you said, it doesn't apply to everything. Furthermore, CCs are ugly to use and cumbersome, to some extent. Hardware synths use vst editors for a reason : interfaces. And now it becomes quite ridiculous really : your hardare synth vst editor is capable of sending CCs, but if you automate the VST editor with automation, then you midi stream becomes stepped too. This is just ridiculous. Honestly it's awful.
Loulou92 is offline   Reply With Quote
Old 12-16-2023, 12:49 PM   #28
mschnell
Human being with feelings
 
mschnell's Avatar
 
Join Date: Jun 2013
Location: Krefeld, Germany
Posts: 14,688
Default

I don't understand what do you mean by "parameter modulations inside Reaper" ?

I understood "parameter" as "Plugin Parameter"...

I don't understand "use vst editors", either.

I also don't understand the picture you draw with hardware synth. Those obviously don't "see" automation, but just Midi (via 5-Pin or USB).

I don't see what is "cumbersome" regarding CCs.

Last edited by mschnell; 12-16-2023 at 12:55 PM.
mschnell is offline   Reply With Quote
Old 12-16-2023, 03:56 PM   #29
Loulou92
Human being with feelings
 
Loulou92's Avatar
 
Join Date: Sep 2015
Location: Paris
Posts: 544
Default

Quote:
Originally Posted by mschnell View Post
I don't understand what do you mean by "parameter modulations inside Reaper" ?

I understood "parameter" as "Plugin Parameter"...

I don't understand "use vst editors", either.

I also don't understand the picture you draw with hardware synth. Those obviously don't "see" automation, but just Midi (via 5-Pin or USB).

I don't see what is "cumbersome" regarding CCs.
Reaper parameter modulation. But I mean, it's all stepped according to the session buffer. Parameter modulation, Reaper automations, Reaper LFO, everything.

Vst editor, should output smooth datas (mine are equiped with 14bit LSB/MSB couples) yet if you automate the editors in Reaper, it seems that the midi flowing out of the editors are stepped, according to the Reaper buffer.

cumbersome CCs : no interface, no names, lots of screen estate, lots of clicks & drags, lots of scrolls. I design CTRLR hardware vst editors to not have to use CCs in Reaper.
Loulou92 is offline   Reply With Quote
Old 12-17-2023, 01:33 AM   #30
mschnell
Human being with feelings
 
mschnell's Avatar
 
Join Date: Jun 2013
Location: Krefeld, Germany
Posts: 14,688
Default

Let's do a strict FR based on the discussion here and in the other thread ( -> https://forum.cockos.com/showthread.php?t=255894 ):

1) It would be nice if Reaper would offer optional block slicing per track / per container / per plugin in the same way (and maybe with the same dialog) as oversampling.

2) I seem to remember that I found that in Reaper sample accurate parameter modulation seems to work for envelopes but not for Midi-to-parameter link modulation. I did not check Parameter->Parameter link modulation. (I tested using JSFX.) This of course should be mended (if still true).

3) To me it's not appropriate that ctrl-shift drag up/down in a time selection on an envelope creates rectangular shapes instead of slopes. Such harsh parameter or volume modulation likely results in unwanted artifacts (see -> https://forum.cockos.com/showpost.ph...&postcount=145 )

(Would it be better to do a new topic here ? )

Last edited by mschnell; 12-17-2023 at 01:45 AM.
mschnell is offline   Reply With Quote
Old 12-17-2023, 08:13 AM   #31
Loulou92
Human being with feelings
 
Loulou92's Avatar
 
Join Date: Sep 2015
Location: Paris
Posts: 544
Default

Thanks !!! This will surely help !
Loulou92 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 12:25 AM.


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