Old 11-15-2018, 08:09 AM   #1
Shufflehound
Human being with feelings
 
Shufflehound's Avatar
 
Join Date: Nov 2018
Location: UK
Posts: 42
Default ReaVerb ZL Question

I love ReaVerb (and REAPER) to bits, but so far I haven't touched the zero-latency checkbox.

I was wondering, since we're given an OPTION to have zero-latency or not, does that mean there's some disadvantage to having ZL on? Especially since it's default set to off?
If not, why not have it on permanently?

Cheers!
Shufflehound is offline   Reply With Quote
Old 11-16-2018, 08:06 AM   #2
Shufflehound
Human being with feelings
 
Shufflehound's Avatar
 
Join Date: Nov 2018
Location: UK
Posts: 42
Default

Bumpity
Shufflehound is offline   Reply With Quote
Old 11-16-2018, 08:17 AM   #3
Tod
Human being with feelings
 
Tod's Avatar
 
Join Date: Jan 2010
Location: Kalispell
Posts: 14,759
Default

Quote:
Originally Posted by Shufflehound View Post
I love ReaVerb (and REAPER) to bits, but so far I haven't touched the zero-latency checkbox.

I was wondering, since we're given an OPTION to have zero-latency or not, does that mean there's some disadvantage to having ZL on? Especially since it's default set to off?
If not, why not have it on permanently?

Cheers!
I've never really checked or tested it, but I use it quite a bit too.

However, I only check the ZL box when I'm getting latency while playing my midi keyboard.
Tod is offline   Reply With Quote
Old 11-16-2018, 08:38 AM   #4
Xenakios
Human being with feelings
 
Xenakios's Avatar
 
Join Date: Feb 2007
Location: Oulu, Finland
Posts: 8,062
Default

The ZL mode uses more CPU but it might not be obvious with a reasonable length IR. Try an IR of 30 seconds or more to better see the CPU load difference. On my Windows system a 30 second IR uses about 0.2% maximum in non-ZL mode and about 0.5% maximum in ZL mode. Both tested with max FFT size of 16384.
__________________
I am no longer part of the REAPER community. Please don't contact me with any REAPER-related issues.
Xenakios is offline   Reply With Quote
Old 11-16-2018, 09:24 AM   #5
Bri1
Banned
 
Join Date: Dec 2016
Location: England
Posts: 2,432
Default

Quote:
Both tested with max FFT size of 16384.

^ try the minimum 32 fft size-- seems to be reversed in what hit it makes..?
basically locks up here.. :/

rt cpu =over 1000% and counting... !! plz fix this devs!!
Bri1 is offline   Reply With Quote
Old 11-16-2018, 09:29 AM   #6
Xenakios
Human being with feelings
 
Xenakios's Avatar
 
Join Date: Feb 2007
Location: Oulu, Finland
Posts: 8,062
Default

Quote:
Originally Posted by Bri1 View Post
^ try the minimum 32 fft size-- seems to be reversed in what hit it makes..?
basically locks up here.. :/
Yeah both modes are completely unusable here with that FFT size with a 30 second IR.
__________________
I am no longer part of the REAPER community. Please don't contact me with any REAPER-related issues.
Xenakios is offline   Reply With Quote
Old 11-16-2018, 09:39 AM   #7
Bri1
Banned
 
Join Date: Dec 2016
Location: England
Posts: 2,432
Default

yes-sorry to be pointing errors anywhere --certainly do not like to complain or report anything--but regularly find holes-- great ship!! but it has many 'holes'.
stabilize-- then-- energize!!!
Bri1 is offline   Reply With Quote
Old 11-16-2018, 09:47 AM   #8
EvilDragon
Human being with feelings
 
EvilDragon's Avatar
 
Join Date: Jun 2009
Location: Croatia
Posts: 24,798
Default

That's not an error really. The smaller the FFT size the more of a burden it is for CPU, AFAIK. So if you have a really long IR and a very small FFT size, brace for impact. These are FFT basics.
EvilDragon is offline   Reply With Quote
Old 11-16-2018, 10:07 AM   #9
Dr Bob
Human being with feelings
 
Dr Bob's Avatar
 
Join Date: Apr 2007
Location: Yorkshire, UK
Posts: 2,074
Default

… and I expect Justin uses FFTW ??? Or even his own even FFTW :-)

dB
Dr Bob is offline   Reply With Quote
Old 11-16-2018, 10:12 AM   #10
Xenakios
Human being with feelings
 
Xenakios's Avatar
 
Join Date: Feb 2007
Location: Oulu, Finland
Posts: 8,062
Default

Quote:
Originally Posted by Dr Bob View Post
… and I expect Justin uses FFTW ??? Or even his own even FFTW :-)
It's not FFTW, but some old code from the 1990's. FFTW would be nice but it's expensive (as in $$$$) to use for proprietary projects. Changing to that might also require rewriting things in WDL, Reaper, ReaPlugs and JesuSonic...So I am not seeing that happening anytime soon.
__________________
I am no longer part of the REAPER community. Please don't contact me with any REAPER-related issues.
Xenakios is offline   Reply With Quote
Old 11-16-2018, 10:17 AM   #11
Bri1
Banned
 
Join Date: Dec 2016
Location: England
Posts: 2,432
Default

users could try this 2 chain- report bugs to devs if any..

STY 2verbolutionz.RfxChain
even using a single echo generator seems to 'output' 1 channel according to text..
changing fft sizes in other fx seems to not suffer the same performance strains..dunno..

check by changing to much lower fft on each instance--it depends on how long it runs for i think...

Last edited by Bri1; 12-22-2018 at 11:56 AM.
Bri1 is offline   Reply With Quote
Old 11-16-2018, 10:57 AM   #12
Shufflehound
Human being with feelings
 
Shufflehound's Avatar
 
Join Date: Nov 2018
Location: UK
Posts: 42
Default

Yeah a small FTT size means more analysis to do I'm pretty sure. Thanks for the answers guys, really cleared things up!
Shufflehound is offline   Reply With Quote
Old 11-16-2018, 11:47 AM   #13
Bri1
Banned
 
Join Date: Dec 2016
Location: England
Posts: 2,432
Default

Quote:
Yeah a small FTT size means more analysis to do I'm pretty sure. Thanks for the answers guys, really cleared things up!

^ really?

hmm-to me_ all this appears as clear as mississippi mud.
i not actually sure some days,wether i actually share the same physical reality as others are... strange =) lol
it's just...we would not want cockos being 'responsible' for damaging peoples chips--would we?

some settings and functions in reaper are very very usefull-some can actually damage. so crak on m8!
Bri1 is offline   Reply With Quote
Old 11-16-2018, 11:58 AM   #14
Justin
Administrator
 
Justin's Avatar
 
Join Date: Jan 2005
Location: NYC
Posts: 15,740
Default

In ReaVerb the smaller FFT size means more CPU use, not so much because of the FFT itself, but because of the (many) additional complex multiplications involved... anybody want to optimize WDL_CONVO_CplxMul2() and WDL_CONVO_CplxMul3(), be my guest.
Justin is online now   Reply With Quote
Old 11-16-2018, 12:07 PM   #15
Shufflehound
Human being with feelings
 
Shufflehound's Avatar
 
Join Date: Nov 2018
Location: UK
Posts: 42
Default

Quote:
Originally Posted by Justin View Post
In ReaVerb the smaller FFT size means more CPU use, not so much because of the FFT itself, but because of the (many) additional complex multiplications involved
I assumed it was more 'cause a smaller FFT size would mean having more frequency components packed together? I guess it doesn't mean what I thought it did.
Shufflehound is offline   Reply With Quote
Old 11-16-2018, 12:11 PM   #16
EvilDragon
Human being with feelings
 
EvilDragon's Avatar
 
Join Date: Jun 2009
Location: Croatia
Posts: 24,798
Default

Quote:
Originally Posted by Shufflehound View Post
I assumed it was more 'cause a smaller FFT size would mean having more frequency components packed together? I guess it doesn't mean what I thought it did.
That's exactly the reason (instead of processing a few big chunks across frequency spectrum, you have a lot smaller ones - which is also why the spectrum meters get more precise as you choose lower FFT sizes - they're simply focusing on many smaller freq bands, rather than fewer large ones), and this pulls the additional complex multiplications that Justin is talking about, with it. So yeah, smaller FFT size = /much/ more CPU.

Let that sink in, Bri.
EvilDragon is offline   Reply With Quote
Old 11-16-2018, 12:13 PM   #17
Shufflehound
Human being with feelings
 
Shufflehound's Avatar
 
Join Date: Nov 2018
Location: UK
Posts: 42
Default

Quote:
Originally Posted by EvilDragon View Post
That's exactly the reason, and this pulls the additional complex multiplications that Justin is talking about, with it. So yeah, smaller FFT size = /much/ more CPU.

Let that sink in, Bri.
That spells it out quite nicely.

Curious what the difference between ZL and not with different FFT settings in terms of CPU usage would be.
Shufflehound is offline   Reply With Quote
Old 11-16-2018, 12:22 PM   #18
Jeffsounds
Human being with feelings
 
Jeffsounds's Avatar
 
Join Date: Feb 2013
Location: Northeast Michigan
Posts: 3,460
Default

So, what would happen if you mixed with max FFT and rendered with lowest FFT? Any difference in sound at the end?
__________________
"TV has become nothing more than a Petri dish where this country grows its idiots." -Dr. John Becker
My First CD On Spotify - Side O' The Highway
Jeffsounds is offline   Reply With Quote
Old 11-16-2018, 12:22 PM   #19
Bri1
Banned
 
Join Date: Dec 2016
Location: England
Posts: 2,432
Default

Quote:
So yeah, smaller FFT size = /much/ more CPU.

Let that sink in, Bri.

lolz--it already sunk ages ago-- having that option can sink this ship--so is it not just better to remove it? or,optimize-as suggested.

what actual realworld advantages is there crippling a daw with a simple single setting?

seeing none at this moment,other than greater resolution at render time...
oh +the width... sighz-- needs some tlc plz devs-- this is a core plug.
being a fan sometimes just is not enough!
Bri1 is offline   Reply With Quote
Old 11-16-2018, 12:24 PM   #20
Xenakios
Human being with feelings
 
Xenakios's Avatar
 
Join Date: Feb 2007
Location: Oulu, Finland
Posts: 8,062
Default

Quote:
Originally Posted by Jeffsounds View Post
So, what would happen if you mixed with max FFT and rendered with lowest FFT? Any difference in sound at the end?
With convolution, the FFT size doesn't affect the sound. (It's a very particular FFT based algorithm, pretty much all other FFT algorithms will have huge differences in the sound when the FFT size is changed.)
__________________
I am no longer part of the REAPER community. Please don't contact me with any REAPER-related issues.
Xenakios is offline   Reply With Quote
Old 11-16-2018, 12:28 PM   #21
mschnell
Human being with feelings
 
mschnell's Avatar
 
Join Date: Jun 2013
Location: Krefeld, Germany
Posts: 14,776
Default

In fact the FFT size puts a low limit to the processed frequency range (= fftsite * samplerate).

E.g. a filter done by FFT just passes through any frequency below, as for the FFT algorithm this is considered DC.

Hence I suppose a convolution algorithm also will not process these low frequencies but pass them trough multiplied with the power of the appropriate low frequencies in the (static) impulse file (using the DC bins [0] of both signals). I recon this does affect the sound.

-Michael
mschnell is offline   Reply With Quote
Old 11-16-2018, 12:31 PM   #22
Xenakios
Human being with feelings
 
Xenakios's Avatar
 
Join Date: Feb 2007
Location: Oulu, Finland
Posts: 8,062
Default

Quote:
Originally Posted by mschnell View Post
In fact the FFT size puts a low limit to the processed frequency range (= fftsite * samplerate).
No, no, no, for the millionth time : no. Convolution does not work that way. The FFT is just used as a way to do the same calculations faster that could also be done in the time domain with brute force.
__________________
I am no longer part of the REAPER community. Please don't contact me with any REAPER-related issues.
Xenakios is offline   Reply With Quote
Old 11-16-2018, 12:33 PM   #23
Justin
Administrator
 
Justin's Avatar
 
Join Date: Jan 2005
Location: NYC
Posts: 15,740
Default

Quote:
Originally Posted by Xenakios View Post
No, no, no, for the millionth time : no. Convolution does not work that way.
Correct. The parameters for FFT size and ZL etc *only* affect PDC and performance characteristics— the resulting audio will be exactly the same.
Justin is online now   Reply With Quote
Old 11-16-2018, 12:39 PM   #24
Bri1
Banned
 
Join Date: Dec 2016
Location: England
Posts: 2,432
Default

Quote:
Correct. The parameters for FFT size and ZL etc *only* affect PDC and performance characteristics— the resulting audio will be exactly the same.

feature request Justin !! - please write a manual! - you seem to be 1 of the few that ACTUALLY understands what goes on+why.
thanks!!
Bri1 is offline   Reply With Quote
Old 11-16-2018, 01:01 PM   #25
Shufflehound
Human being with feelings
 
Shufflehound's Avatar
 
Join Date: Nov 2018
Location: UK
Posts: 42
Default

Quote:
Originally Posted by Jeffsounds View Post
So, what would happen if you mixed with max FFT and rendered with lowest FFT? Any difference in sound at the end?
Could always try a null test. Have the same sound and the same ReaVerb on separate tracks with different FFT settings and invert the phase of one of them.
Shufflehound is offline   Reply With Quote
Old 11-16-2018, 01:35 PM   #26
Bri1
Banned
 
Join Date: Dec 2016
Location: England
Posts: 2,432
Default

Quote:
With convolution, the FFT size doesn't affect the sound.

hmm-this seems a contradiction-when clearly it does alter the sound in other reaplugs--no? they are not convolving though_eh?
try the eq with reafir set at lowest fft -try to draw precision shapes with it.. please explain the differences so people can get a better understanding of everything!!


@ Justin- soz--bit of a poor joke__ but technically_ you do go into much more detail here on the forum than the actual user guide does sometimes-- which is fully appreciated! there's many options that needs a little extra defining imo..


it's the space between the details where we sometimes miss the clarities..plz+ty.
Bri1 is offline   Reply With Quote
Old 11-16-2018, 01:44 PM   #27
Xenakios
Human being with feelings
 
Xenakios's Avatar
 
Join Date: Feb 2007
Location: Oulu, Finland
Posts: 8,062
Default

Quote:
Originally Posted by Bri1 View Post
hmm-this seems a contradiction-when clearly it does alter the sound in other reaplugs--no? they are not convolving though_eh?
Like I already wrote above, convolution done with the aid of FFT is a special algorithm that doesn't work like most other FFT processing algorithms work, where the FFT size has a huge impact on the sound.

And no, convolution is not the only spectral processing algorithm, it's useful only for applying impulse responses into sounds. (It's not even really a spectral processing algorithm as such because the same results could be achieved in the time domain, it's just dramatically slower to calculate that way.) Spectral EQ, pitch shift, time stretch, even spectral visualizers and so on, use completely different algorithms where the FFT size, the amount of window overlaps and the used windowing shape affect the sound (or analysis results) a lot.
__________________
I am no longer part of the REAPER community. Please don't contact me with any REAPER-related issues.
Xenakios is offline   Reply With Quote
Old 11-16-2018, 01:58 PM   #28
Bri1
Banned
 
Join Date: Dec 2016
Location: England
Posts: 2,432
Default

each new thought counts-! really just extra glad people are thinking..more!
cheerz.
Bri1 is offline   Reply With Quote
Old 11-16-2018, 02:03 PM   #29
mschnell
Human being with feelings
 
mschnell's Avatar
 
Join Date: Jun 2013
Location: Krefeld, Germany
Posts: 14,776
Default

Quote:
Originally Posted by Justin View Post
Correct. The parameters for FFT size and ZL etc *only* affect PDC and performance characteristics— the resulting audio will be exactly the same.
(Obvious for "ZL".)

OK, As you both state this it's necessarily correct regarding FFT-size. Seemingly it does not do "convolution in overlapping chunks" (AKA "FIR") (as the basic FFT does), but something resulting in the same output as a straight forward convolution would do ("IIR").

I did a "spectral subtract" JSFX (Crosstalk canceller), that works really nice and with this the "lowest frequency by FFT size is as well theoretically as practically obvious.

So I need to null over why exactly this is different with convolution....

Thanks for education...
-Michael
mschnell is offline   Reply With Quote
Old 11-17-2018, 12:43 PM   #30
mschnell
Human being with feelings
 
mschnell's Avatar
 
Join Date: Jun 2013
Location: Krefeld, Germany
Posts: 14,776
Default

Quote:
Originally Posted by Justin View Post
Correct. The parameters for FFT size and ZL etc *only* affect PDC and performance characteristics— the resulting audio will be exactly the same.
I see:
- the bigger the FFT size the greater the PDC and the lower the CPU demand
- the smaller the FFT size the smaller the PDC and the higher the CPU demand
- "ZL" set : PDC = 0, high CPU Demand.

So why can the FFT size be selected with "ZL" set ?

And what exactly is "LL" ?

-Michael
mschnell is offline   Reply With Quote
Old 11-17-2018, 01:42 PM   #31
Justin
Administrator
 
Justin's Avatar
 
Join Date: Jan 2005
Location: NYC
Posts: 15,740
Default

Quote:
Originally Posted by mschnell View Post
So why can the FFT size be selected with "ZL" set ?

And what exactly is "LL" ?
If ZL is set, then it uses a system where it uses a FIR for the lowest latency part of the impulse, then smaller FFTs for medium, and large FFTs for the longer latency stuff. If you use a smaller FFT size in ZL mode, it will increase the overall CPU use but make the CPU use more consistently spread across blocks.

If LL mode is set, it offloads work to another thread, allowing lower CPU use and less a more consistent spread of CPU across blocks.
Justin is online now   Reply With Quote
Old 11-17-2018, 02:56 PM   #32
mschnell
Human being with feelings
 
mschnell's Avatar
 
Join Date: Jun 2013
Location: Krefeld, Germany
Posts: 14,776
Default

OK, Great stuff !
Seemingly the FFT size setting is obsolete with "ZL" being set.

And the name "LL" ("low latency" ???) seems like completely misleading.

Anyway, I had been right switching on as well "ZL" as "LL" for my Live setup .

Thanks again,
-Michael

Last edited by mschnell; 11-17-2018 at 11:45 PM.
mschnell 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 03:49 PM.


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