|
|
|
07-31-2021, 02:17 AM
|
#1
|
Human being with feelings
Join Date: Jun 2013
Location: Krefeld, Germany
Posts: 14,688
|
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.
|
|
|
07-31-2021, 04:57 AM
|
#2
|
Human being with feelings
Join Date: Mar 2007
Posts: 3,978
|
+1000
|
|
|
07-31-2021, 12:54 PM
|
#3
|
Human being with feelings
Join Date: Jan 2013
Posts: 648
|
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
|
|
|
07-31-2021, 09:58 PM
|
#4
|
Human being with feelings
Join Date: Apr 2020
Posts: 1,501
|
+1 for this!
|
|
|
07-31-2021, 10:03 PM
|
#5
|
Human being with feelings
Join Date: Jun 2013
Location: Krefeld, Germany
Posts: 14,688
|
Quote:
Originally Posted by strachupl
it would be interesting if developers will see this.
|
... to do a decent analysis and publish the results to stop our guessing.
-Michael
|
|
|
07-31-2021, 10:26 PM
|
#6
|
Human being with feelings
Join Date: Apr 2020
Posts: 1,501
|
Quote:
Originally Posted by mschnell
... to do a decent analysis and publish the results to stop our guessing.
-Michael
|
Yes this! Thanks for posting this FR
|
|
|
08-01-2021, 05:58 AM
|
#7
|
Human being with feelings
Join Date: Mar 2007
Posts: 3,978
|
I'll quote myself from the other thread, where this mschnell's idea started
Quote:
Originally Posted by akademie
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
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.
|
|
|
08-01-2021, 06:12 AM
|
#8
|
Human being with feelings
Join Date: Mar 2007
Posts: 3,978
|
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).
|
|
|
08-01-2021, 08:07 AM
|
#9
|
Human being with feelings
Join Date: Jan 2011
Posts: 1,167
|
+111!
|
|
|
08-01-2021, 03:06 PM
|
#10
|
Human being with feelings
Join Date: Jun 2013
Location: Krefeld, Germany
Posts: 14,688
|
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.
|
|
|
08-03-2021, 07:50 AM
|
#11
|
Human being with feelings
Join Date: Oct 2017
Location: Larisa, Greece
Posts: 3,797
|
+1000
|
|
|
08-05-2021, 10:36 AM
|
#12
|
Human being with feelings
Join Date: May 2021
Posts: 11
|
+9999
|
|
|
08-05-2021, 08:17 PM
|
#13
|
Human being with feelings
Join Date: Apr 2020
Posts: 1,501
|
Can we summon @Justin or @schwa ?
|
|
|
08-07-2021, 10:28 AM
|
#14
|
Human being with feelings
Join Date: Jul 2009
Posts: 3,294
|
Quote:
Originally Posted by Pink Wool
Can we summon @Justin or @schwa ?
|
Yeah! can we do that?
+ 10000
|
|
|
08-08-2021, 01:50 AM
|
#15
|
Human being with feelings
Join Date: Jun 2013
Location: Krefeld, Germany
Posts: 14,688
|
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
|
|
|
08-08-2021, 02:15 AM
|
#16
|
Human being with feelings
Join Date: Jul 2008
Location: The Netherlands
Posts: 3,645
|
Quote:
Originally Posted by mschnell
|
FWIW, you guys do know that Pro Tools doesn't support VST2, right? Just saying...
|
|
|
08-09-2021, 01:41 AM
|
#17
|
Human being with feelings
Join Date: May 2020
Posts: 434
|
Quote:
Originally Posted by mschnell
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.
|
|
|
08-09-2021, 10:37 AM
|
#18
|
Human being with feelings
Join Date: Jun 2013
Location: Krefeld, Germany
Posts: 14,688
|
Quote:
Originally Posted by Tale
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.
|
|
|
08-09-2021, 10:55 AM
|
#19
|
Human being with feelings
Join Date: Apr 2020
Posts: 1,501
|
Quote:
Originally Posted by Tale
FWIW, you guys do know that Pro Tools doesn't support VST2, right? Just saying...
|
Most unprofessional...🙄
|
|
|
08-09-2021, 11:06 AM
|
#20
|
Human being with feelings
Join Date: Jul 2009
Posts: 3,294
|
Quote:
Originally Posted by UknownSource
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.
|
|
|
12-15-2023, 05:49 AM
|
#21
|
Human being with feelings
Join Date: Sep 2015
Location: Paris
Posts: 544
|
+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.
|
|
|
12-15-2023, 06:08 AM
|
#22
|
Human being with feelings
Join Date: Sep 2015
Location: Paris
Posts: 544
|
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.
|
|
|
12-15-2023, 06:09 AM
|
#23
|
Human being with feelings
Join Date: Sep 2015
Location: Paris
Posts: 544
|
Beware reader, right now, a VST sweep is never trully a sweep. Sweeps are stairs !!!
|
|
|
12-15-2023, 08:16 AM
|
#24
|
Human being with feelings
Join Date: Jun 2013
Location: Krefeld, Germany
Posts: 14,688
|
@ Loulou92
What exactly are you trying to accomplish ?
|
|
|
12-15-2023, 03:12 PM
|
#25
|
Human being with feelings
Join Date: Sep 2015
Location: Paris
Posts: 544
|
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.
|
|
|
12-16-2023, 01:17 AM
|
#26
|
Human being with feelings
Join Date: Jun 2013
Location: Krefeld, Germany
Posts: 14,688
|
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.
|
|
|
12-16-2023, 07:10 AM
|
#27
|
Human being with feelings
Join Date: Sep 2015
Location: Paris
Posts: 544
|
Quote:
Originally Posted by mschnell
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.
|
|
|
12-16-2023, 12:49 PM
|
#28
|
Human being with feelings
Join Date: Jun 2013
Location: Krefeld, Germany
Posts: 14,688
|
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.
|
|
|
12-16-2023, 03:56 PM
|
#29
|
Human being with feelings
Join Date: Sep 2015
Location: Paris
Posts: 544
|
Quote:
Originally Posted by mschnell
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.
|
|
|
12-17-2023, 01:33 AM
|
#30
|
Human being with feelings
Join Date: Jun 2013
Location: Krefeld, Germany
Posts: 14,688
|
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.
|
|
|
12-17-2023, 08:13 AM
|
#31
|
Human being with feelings
Join Date: Sep 2015
Location: Paris
Posts: 544
|
Thanks !!! This will surely help !
|
|
|
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 12:25 AM.
|