Old 04-24-2010, 04:10 AM   #1
Evan
Human being with feelings
 
Join Date: Oct 2006
Location: Greece
Posts: 3,554
Default Plugin oversampling

Allow (optional) oversampling functionality of selected plugin in the chain. Improves/changes the sound with some fx and instruments, and you don't have to run the whole project at high sample rates.

Thoughts:

- Oversampling is disabled if project runs at 88.2kHz or more.
- Add an optional undersampling mode for projects that run at 88.2kHz or more (for compatibility with some plugins?)

There are wrapper plugins made for this purpose:
http://www.kvraudio.com/forum/viewto...er=asc&start=0
http://sites.google.com/site/chrisrwalton/oversampler

but it would be cool to have it native in Reaper.


Thanks

in the tracker: http://forum.cockos.com/project.php?issueid=2366

Last edited by Evan; 05-04-2010 at 04:55 AM.
Evan is offline   Reply With Quote
Old 04-24-2010, 05:41 AM   #2
shakey.oberon
Human being with feelings
 
Join Date: Sep 2009
Posts: 996
Default

nice idea, but reading up on it on kvr it sounds like a bit of a compatibility nightmare
shakey.oberon is offline   Reply With Quote
Old 04-24-2010, 05:56 AM   #3
Evan
Human being with feelings
 
Join Date: Oct 2006
Location: Greece
Posts: 3,554
Default

It shouldn't be any different than running at high (88.2kHz+) sample rates. For the end user that is. If a plugin cannot handle high sample rates, then it's the plugin's fault anyway.

Besides, it would also be a better way to see how a particular plugin behaves at higher sample rates, by oversampling just that plugin.

No idea how complicated it is to implement though (which is what the KVR thread is about). But then again, these two developers there tried to make a plugin wrapper/shell. Cockos should have less trouble as they would be doing it from the sequencer, not an external wrapper.

Some VSTi benefit in terms of sound with oversampling, some older ones at least.
Evan is offline   Reply With Quote
Old 04-24-2010, 07:22 AM   #4
shakey.oberon
Human being with feelings
 
Join Date: Sep 2009
Posts: 996
Default

yeah I'm all for it if they can make it work
shakey.oberon is offline   Reply With Quote
Old 04-24-2010, 07:23 AM   #5
shakey.oberon
Human being with feelings
 
Join Date: Sep 2009
Posts: 996
Default

put it in the tracker
shakey.oberon is offline   Reply With Quote
Old 04-24-2010, 07:33 AM   #6
Evan
Human being with feelings
 
Join Date: Oct 2006
Location: Greece
Posts: 3,554
Default

done...

http://forum.cockos.com/project.php?issueid=2366
Evan is offline   Reply With Quote
Old 08-24-2011, 04:04 AM   #7
danger
Human being with feelings
 
Join Date: Aug 2011
Posts: 10
Default

+1 bump
danger is offline   Reply With Quote
Old 11-23-2011, 05:46 AM   #8
optical
Human being with feelings
 
optical's Avatar
 
Join Date: Jul 2010
Location: in hope
Posts: 320
Default

Should this work ok - running a mixed audio and midi project at 44.1 (or lower even) during the composition stage, THEN raising the sampling rate for stem rendering and mixing?

The audio can be recorded at whatever rate suits the source, and audio recorded at different rates mixed later without sonic penalty; right???

Is there ever a situation (cpu issues aside) when a well written plugin will perform sonically less well at sample rates higher than 44.1kHz?
optical is offline   Reply With Quote
Old 11-23-2011, 07:08 AM   #9
ramses
Human being with feelings
 
Join Date: Jul 2009
Posts: 1,231
Default

Some thoughts on this excellent idea:

1) some of the Voxengo plugins (maybe others as well) have optional oversampling with different downsampling filters/algorithms, minimal phase and linear phase if I remember correctly. The different methods tax the CPU quite differently, so that should maybe be taken into consideration. It's probably due to the algorithms of downsampling again, but I'm not certain about this. Any more ideas about the different options that are out there?

2) It should be possible to oversample more than 2x if needed, even if it's straining the cpu. Leave this option open to the end user. Up to 16x oversampling is found in some plugins, and why not if the cpu power is there?

3) Also, it would be nice to have one "live" oversampling value, and one optional for rendering. This way you could oversample 2x while working, and specify 4x or 16x oversampling for the rendering process.
ramses is offline   Reply With Quote
Old 07-04-2020, 08:22 PM   #10
nocturn
Human being with feelings
 
Join Date: Mar 2018
Posts: 46
Default

i was using mequalizer from melda https://www.meldaproduction.com/effects/free
on the righthand side clicking the 1x opens upsampling options
only goes up to 16 and has a lot of latency. so chain a bunch together! i think those plugins let you reconfigure the modules...but you know, that voice in the back of your mind is right and you need to learn how to stop introducing aliasing and look into interpolation while youre there.
nocturn is offline   Reply With Quote
Old 12-02-2020, 11:08 PM   #11
ertugrulgul
Human being with feelings
 
Join Date: Jul 2014
Location: Turkey
Posts: 233
Default

+1 bump
ertugrulgul is offline   Reply With Quote
Old 12-03-2020, 10:16 AM   #12
Lynx_TWO
Human being with feelings
 
Lynx_TWO's Avatar
 
Join Date: Dec 2019
Location: St Petersburg FL
Posts: 999
Default

In my admittedly-limited experience, the only plugins where oversampling might result in a non-desirable effect are plugins that are designed for distortion. Fabfilter Saturn 2 comes to mind-run the same effect through a file upsampled to 88.2 kHz and one sampled at 44.1 kHz and you’ll get two different results. It’s not like one is worse, it’ll just sound different, often drastically. This is why I mentioned in a past thread that we should be able to set the sample rate on a per-track basis for these specific occasions. For sure though, the default would have to be overall, then an option to change an individual track if needed-it would also be helpful to have a visual cue if a track is set at a different sample rate from the project sample rate.

I would also highly recommend implementing SSRC as it gives a cleaner result than Reaper’s highest quality SRC.

The best SRC I’ve seen for final downsampling is in FinalCD (“sharp” setting), but don’t know if that guy would be willing to give away his secrets or even if he’s still around. Shibatch might though, dBpoweramp uses his (her?) SRC algorithm.

Now, will you actually be able to hear a difference? Probably not, but anything worth doing is worth doing it once the best way possible (strictly mathematically speaking)

https://github.com/shibatch/SSRC
http://shibatch.sourceforge.net/
http://www.sonicillusions.co.uk/finalcd.htm
https://www.dbpoweramp.com/

SRC comparison:

https://src.infinitewave.ca/

Specifically, compare Reaper 6 Extreme Quality, and dBpoweramp Music Converter 15.1 (uses Shibatch SSRC). Also, be sure to compare the 1kHz test tone, Passband, and Transition to really see the differences.

-Dan

Last edited by Lynx_TWO; 04-11-2021 at 07:39 AM. Reason: Additional info and clarification
Lynx_TWO is offline   Reply With Quote
Old 04-09-2021, 01:28 PM   #13
kindafishy
Human being with feelings
 
kindafishy's Avatar
 
Join Date: Mar 2009
Posts: 4,028
Default

Bump!!!!!!!!!!!!!!!!

Oversampling is all the rage (for good reason). It would be great to be able to run REAPER at one sample rate and to be able to natively and individually select a plugin in an particular slot and oversample it (likewise for chains).

Justin? Can you have this done and release by next Tuesday please? Thanks!
kindafishy is offline   Reply With Quote
Old 04-10-2021, 09:59 AM   #14
12345678
Human being with feelings
 
Join Date: Mar 2019
Posts: 63
Default

this would be awesome! +1
12345678 is offline   Reply With Quote
Old 04-10-2021, 10:12 AM   #15
deeb
Human being with feelings
 
deeb's Avatar
 
Join Date: Feb 2017
Posts: 4,820
Default

This would be nice ! With a lot of freezing tracks

What would benefit more with this? Synths, samplers, fx?
__________________
🙏🏻
deeb is offline   Reply With Quote
Old 04-11-2021, 07:35 AM   #16
Lynx_TWO
Human being with feelings
 
Lynx_TWO's Avatar
 
Join Date: Dec 2019
Location: St Petersburg FL
Posts: 999
Default

Quote:
Originally Posted by deeb View Post
This would be nice ! With a lot of freezing tracks

What would benefit more with this? Synths, samplers, fx?
Theoretically, any process could potentially benefit except any FX which are sample-rate-dependent, such as distortion (Saturn 2 comes to mind) or any analog-modeling software that relies on specific sample rates.

It might also be useful to have an option of 60kHz or 64kHz (calculates nicely with FFT bins) project sample rate in order to save processing power over something like 96kHz which may be overkill in some situations and will certainly slow your system down.

Last edited by Lynx_TWO; 04-11-2021 at 07:58 AM.
Lynx_TWO is offline   Reply With Quote
Old 04-11-2021, 10:27 AM   #17
deeb
Human being with feelings
 
deeb's Avatar
 
Join Date: Feb 2017
Posts: 4,820
Default

@Lynx_TWO: Thank you !

Additionally maybe would be nice if we could set per plugin: "oversample selected plugin" and another input setting: "default oversampling rate value", which then any plugin set to oversample would default?
__________________
🙏🏻

Last edited by deeb; 04-11-2021 at 10:33 AM.
deeb is offline   Reply With Quote
Old 04-13-2021, 05:59 AM   #18
mschnell
Human being with feelings
 
mschnell's Avatar
 
Join Date: Jun 2013
Location: Krefeld, Germany
Posts: 14,784
Default

Quote:
Originally Posted by Lynx_TWO View Post
Theoretically, any process could potentially benefit
Not true. For any linear effect (like EQ or FFT based stuff), upsampling would only increase the CPU use, but not improve the audio. (see video "there are no steps" or similar)

-Michael
mschnell is offline   Reply With Quote
Old 04-15-2021, 09:12 AM   #19
Lynx_TWO
Human being with feelings
 
Lynx_TWO's Avatar
 
Join Date: Dec 2019
Location: St Petersburg FL
Posts: 999
Default

Quote:
Originally Posted by mschnell View Post
Not true. For any linear effect (like EQ or FFT based stuff), upsampling would only increase the CPU use, but not improve the audio. (see video "there are no steps" or similar)

-Michael
Actually, yes you are correct. For example, if I had an FFT window size of 8192 samples, the bin size, or smallest group of frequencies I can represent, are as follows:

44.1kHz - ~5.4Hz groups
48kHz - ~6Hz groups
60kHz - ~7.6Hz groups
64kHz - ~8Hz groups
88.2kHz - ~11Hz groups
96kHz - ~12Hz groups
132.3kHz - ~16Hz groups
144kHz - ~18Hz groups
176.4kHz - ~22Hz groups
192kHz - ~24Hz groups
264.4kHz - ~32Hz groups
288kHz - ~36Hz groups
352kHz - ~43Hz groups
384kHz - ~49Hz groups

To get down to a 1Hz resolution for each sample rate, you'd need the following FFT size in samples:

44.1kHz - 65536 samples
48kHz - 65536 samples
60kHz - 65536 samples
64kHz - 131072 samples
88.2kHz - 131072 samples
96kHz - 131072 samples
132.3kHz - 262144 samples
144kHz - 262144 samples
176.4kHz - 262144 samples
192kHz - 262144 samples
264.4kHz - 524288 samples
288kHz - 524288 samples
352kHz - 524288 samples
384kHz - 524288 samples

Now, if one were to oversample and increase the number of bins by a power of 2, 4, 8, etc, then theoretically the FFT size should increase by that same power and increase the resolution of the EQ or whatever you are using. However, that might depend of the design of whatever EQ you are using yes? If the FFT sample size doesn't increase, then oversampling would actually result in a LOSS of resolution, unless I am misunderstanding something...

Here's a spreadsheet that breaks things down a bit more - I might have made some errors so lemme know if you find any issues:

https://drive.google.com/file/d/1i2J...ew?usp=sharing
Lynx_TWO is offline   Reply With Quote
Old 04-15-2021, 09:41 AM   #20
mschnell
Human being with feelings
 
mschnell's Avatar
 
Join Date: Jun 2013
Location: Krefeld, Germany
Posts: 14,784
Default

Not just frequency "resolution".
You also need to note that the lowest frequency FFT can "handle" (i.e. not just pass through) is the sample frequency divided by the window size. (In fact this is the bin size.)

Hence for the same low frequency behavior, you need to increase the window size with the sample frequency, bumping up the CPU usage by a factor of n*log(n).
-Michael

Last edited by mschnell; 04-17-2021 at 10:23 PM.
mschnell is offline   Reply With Quote
Old 04-17-2021, 09:24 PM   #21
Lynx_TWO
Human being with feelings
 
Lynx_TWO's Avatar
 
Join Date: Dec 2019
Location: St Petersburg FL
Posts: 999
Default

Exactly. From what I see, As frequency goes down you need a higher sample size to get the bins small enough to impact individual notes, but hopefully not so much resolution, say, in a multi-band compressor that you start impacting different frequencies within the same note, yes?

Ideally, one could set it up where different frequency bands use different FFT sizes based on fundamental notes and this could save CPU and potentially optimize any potential issues with frequency vs time. I suspect this is what plugins such as DSM V3 use since the highs tend to be super-smooth whereas ultra-low frequencies (below say, 25 hz) may not get the same transparency in compression, and I’m not sure it handles anything below 20 hz (I’d have to test with some tones)
Lynx_TWO is offline   Reply With Quote
Old 04-17-2021, 10:29 PM   #22
mschnell
Human being with feelings
 
mschnell's Avatar
 
Join Date: Jun 2013
Location: Krefeld, Germany
Posts: 14,784
Default

Bin Zero contains DC to samplerate / Windowsize .

Hence to preserve DC level, anything below that frequency needs to stay unaffected.
-Michael
mschnell is offline   Reply With Quote
Old 06-06-2021, 03:38 PM   #23
Lynx_TWO
Human being with feelings
 
Lynx_TWO's Avatar
 
Join Date: Dec 2019
Location: St Petersburg FL
Posts: 999
Default Found a workaround for now

Hey just an update, I ran across a Meta Plugin that will oversample any other plugin up to 64x (as long as the plugin supports it). It will also decode LR to MS and a bunch of other useful things. It's literally called Metaplugin by DDMF.

The best part is? It's $49 and there's a demo:

https://ddmf.eu/metaplugin-chainer-v...s-aax-wrapper/

From the website:

---------------------------------------

Features?

Effect version supports up to eight individual channels for, e.g. surround or other multichannel purposes.

Instrument version featuring 16 stereo output buses for all conceivable routing purposes using multichannel instruments

Double precision audio processing when supported by DAW and plugin format (not for Audio Units)

Additional stereo sidechain input

Convenient plugin organizer: scan your plugins once, then just drag and drop them onto the graph area

Internal bridge from 32 to 64 bit, with seamless plugin window integration: load 32 bit plugins in ProTools or LogicPro X without the need for a 3rd party bridging solution

NEW since v3.4: internal bridge from 64 bit to 32 bit too!

Support for native Apple Audio Unit plugins

Dry/wet ratio can be adjusted for each loaded plugin.

Individual bypass for each loaded plugin

Full plugin delay compensation included.

Automate up to 100 parameters by mapping them on any parameter of a loaded plugin
Negligible additional CPU overhead.

Synths can also be loaded and played with any MIDI control, which means you can create custom synthesizers with existing building blocks.

Oversampling: to avoid antialiasing, oversampling is a necessity. Metaplugin offers up to 16x oversampling option of the whole signal chain in realtime mode, and up to 64x oversampling in offline mode (during rendering).

Included: mid-side matrix, multiband splitter and cross track send/receive helper plugins.

Define your own colour palette for the plugin: check!

Freely resizable plugin window for maximum convenience: check!

Can be used as a VST (2 or 3) to AU wrapper, a VST (2 or 3) to AAX wrapper or an AU to AAX wrapper.

---------------------------------------

Last edited by Lynx_TWO; 06-07-2021 at 02:05 PM. Reason: added information
Lynx_TWO is offline   Reply With Quote
Old 06-06-2021, 07:39 PM   #24
kindafishy
Human being with feelings
 
kindafishy's Avatar
 
Join Date: Mar 2009
Posts: 4,028
Default

Quote:
Originally Posted by Lynx_TWO View Post
Hey just an update, I ran across a Meta Plugin that will oversample any other plugin up to 64x (as long as the plugin supports it). It will also decode LR to MS and a bunch of other useful things. It's literally called Metaplugin by DDMF.

The best part is? It's $49 and there's a demo:

https://ddmf.eu/metaplugin-chainer-v...s-aax-wrapper/

From the website:

---------------------------------------

Features?

Effect version supports up to eight individual channels for, e.g. surround or other multichannel purposes.

Instrument version featuring 16 stereo output buses for all conceivable routing purposes using multichannel instruments

Double precision audio processing when supported by DAW and plugin format (not for Audio Units)

Additional stereo sidechain input

Convenient plugin organizer: scan your plugins once, then just drag and drop them onto the graph area

Internal bridge from 32 to 64 bit, with seamless plugin window integration: load 32 bit plugins in ProTools or LogicPro X without the need for a 3rd party bridging solution

NEW since v3.4: internal bridge from 64 bit to 32 bit too!

Support for native Apple Audio Unit plugins

Dry/wet ratio can be adjusted for each loaded plugin.

Individual bypass for each loaded plugin

Full plugin delay compensation included.

Automate up to 100 parameters by mapping them on any parameter of a loaded plugin
Negligible additional CPU overhead.

Synths can also be loaded and played with any MIDI control, which means you can create custom synthesizers with existing building blocks.

Oversampling: to avoid antialiasing, oversampling is a necessity. Metaplugin offers up to 16x oversampling option of the whole signal chain in realtime mode, and up to 64x oversampling in offline mode (during rendering).

Included: mid-side matrix, multiband splitter and cross track send/receive helper plugins.

Define your own colour palette for the plugin: check!

Freely resizable plugin window for maximum convenience: check!

Can be used as a VST (2 or 3) to AU wrapper, a VST (2 or 3) to AAX wrapper or an AU to AAX wrapper.

---------------------------------------
Not so much a solution as a workaround, but thanks for sharing on behalf of those who may not know about it. It's not a workaround that I want to use personally. I would much prefer a REAPER native solution. I don't like the idea of loading a plugin within a plugin and having to click anything extra to map parameters, enable sidechaining or ensure that lua scripts, etc will work on the 'inner plugin'. That being said, Metaplugin is very cool indeed, even if it's not for me.
kindafishy is offline   Reply With Quote
Old 06-07-2021, 02:04 PM   #25
Lynx_TWO
Human being with feelings
 
Lynx_TWO's Avatar
 
Join Date: Dec 2019
Location: St Petersburg FL
Posts: 999
Default

Quote:
Originally Posted by kindafishy View Post
Not so much a solution as a workaround, but thanks for sharing on behalf of those who may not know about it. It's not a workaround that I want to use personally. I would much prefer a REAPER native solution. I don't like the idea of loading a plugin within a plugin and having to click anything extra to map parameters, enable sidechaining or ensure that lua scripts, etc will work on the 'inner plugin'. That being said, Metaplugin is very cool indeed, even if it's not for me.
Good catch on the workaround. Changing it now. Yea I’m trying it now and while is does work, you have to load each plugin separately. It’s relatively easy to use but not the quickest, and a built-in solution would likely be faster
Lynx_TWO is offline   Reply With Quote
Old 06-07-2021, 10:21 PM   #26
mschnell
Human being with feelings
 
mschnell's Avatar
 
Join Date: Jun 2013
Location: Krefeld, Germany
Posts: 14,784
Default

IMHO, the plugin oversampling feature is best handled in "FX-Containers" (i.e. "virtual Metaplugin") together with multiple more features discussed for same. See the appropriate FR thread in this forum.

-Michael
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 05:48 PM.


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