Need help with oversampling feature

This forum is for discussing Rack Extensions. Devs are all welcome to show off their goods.
Post Reply
User avatar
orthodox
RE Developer
Posts: 2286
Joined: 22 Jan 2015
Location: 55°09'24.5"N 37°27'41.4"E

31 Mar 2020

I just added an oversampling feature to my compressor RE and I need your suggestions on the oversampling switch, how to make it better. Now it has five options:
0) OFF
1) 1x: 44.1/48 (it's a test option and it's gonna be removed)
2) 2x: 88.2/96
3) 4x: 176.4/192
4) 8x: 352.8/384

The oversampling rate set is always the same regardless of the current Reason sample rate, ie the 1x-8x multiples are always based on 44.1 or 48, not on the current rate. For example, when the current sample rate is 96k, the option list would be: off, 96>48, 96>96, 96>192, 96>384. The resampling is always done whenever the switch is not off, even if the target rate matches the original one. It has some sense though, because the resampling process also involves filtering out all ultrasonic content. It is done twice, when resampling to the new rate and when going back to the original rate.

Now I need your opinion on what the GUI switch should say: the oversampling ratio(1x-8x), the target sample rate, or both the current rate and the target rate, like it is now. I gave up on the ratio option, because it seemed confusing and people might think they're going 8x when their current rate was 192k.

You can send me your RS account name and I'll give you a beta license so you could see how it's done now. Though there's nothing to beta test actually as I believe it's working good. This is the device: https://www.reasonstudios.com/shop/rack ... -dynamics/

The other thing is that my desktop has burnt and now I'm developing on a 15 year old laptop with 1280x800 display and shitty colors. I'd like to know how much load the oversampling feature puts on the Reason DSP, since my laptop is about to crack at the highest setting.

Could anybody help please?

User avatar
selig
RE Developer
Posts: 11739
Joined: 15 Jan 2015
Location: The NorthWoods, CT, USA

31 Mar 2020

Not sure I have a good answer to your question, except to say you'll be using your ears with any setting so it COULD be called "A", "B", "C", and "D" for all it matters to me.

I AM curious about your example which implies you can have "negative" oversampling. At 96k, the first option is 96>48 right? What is actually going on with this setting?

What would make the MOST sense from a user perspective, is to only give the options that apply to each situation. So if you're already at 192, then you'll only "see" 2x oversampling because the other options are not valid. The design concept here is to not allow a user to make a bad choice or create an error in the first place, rather than allowing it or throwing an error message. Make sense?

Also curious what YOU think of the sonic changes when using oversampling - is it a big difference, a subtle difference, only audible in certain cases, or other? Most of the time I don't hear a huge difference with oversampling unless there is a ton of high frequency information in the source. Will be very interested in seeing what you come up with either way, happy to give a more helpful response if this one isn't clear/useful. :)
Selig Audio, LLC

User avatar
orthodox
RE Developer
Posts: 2286
Joined: 22 Jan 2015
Location: 55°09'24.5"N 37°27'41.4"E

31 Mar 2020

selig wrote:
31 Mar 2020
I AM curious about your example which implies you can have "negative" oversampling. At 96k, the first option is 96>48 right? What is actually going on with this setting?
Well, the resampling to 44/48 will be removed, but something like 96>96 and 192>96 would be possible. It will actually resample 96 to 48 and then back to 96, applying brick wall LP filter at 24kHz twice in order to avoid intermodulation between ultrasonic partials appearing in the audible range.
selig wrote:
31 Mar 2020
What would make the MOST sense from a user perspective, is to only give the options that apply to each situation. So if you're already at 192, then you'll only "see" 2x oversampling because the other options are not valid. The design concept here is to not allow a user to make a bad choice or create an error in the first place, rather than allowing it or throwing an error message. Make sense?
There is a problem with this, what if the user changes the Reason sample rate? The switch will get into a state that could not be selected if the sample rate was that from the start. That's why I'm also sticking to the target rate and not to the relative ratio, because the device should behave (almost) the same when the system sample rate changes.
selig wrote:
31 Mar 2020
Also curious what YOU think of the sonic changes when using oversampling - is it a big difference, a subtle difference, only audible in certain cases, or other? Most of the time I don't hear a huge difference with oversampling unless there is a ton of high frequency information in the source. Will be very interested in seeing what you come up with either way, happy to give a more helpful response if this one isn't clear/useful. :)
It can be actually heard (and seen on the analyzer) when applying saturation to a harmonically clean material. The aliasing visually goes away and there's a difference. I tested it on 2000-4000 Hz sine waves.

User avatar
orthodox
RE Developer
Posts: 2286
Joined: 22 Jan 2015
Location: 55°09'24.5"N 37°27'41.4"E

01 Apr 2020

By the way, just as that guy in the video said, 44.1k sampling rate is worse for oversampling than 48k. I was actually inspired by that video to add the oversampling feature.

In my case, I made 44.1 and 48 require the same DSP power, but the noise ("ripple") added by the resampling process is -100 dB for 44.1k and -140 dB for 48k. In order to make them noises equal, 44.1k would require twice as more DSP resources than 48k.

Post Reply
  • Information
  • Who is online

    Users browsing this forum: No registered users and 32 guests